@matter/nodejs-ble 0.16.0-alpha.0-20250814-484abe647 → 0.16.0-alpha.0-20250816-d22ad240d
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/BleScanner.js.map +1 -1
- package/dist/cjs/BlenoBleServer.d.ts +5 -5
- package/dist/cjs/BlenoBleServer.d.ts.map +1 -1
- package/dist/cjs/BlenoBleServer.js +5 -5
- package/dist/cjs/BlenoBleServer.js.map +1 -1
- package/dist/cjs/BlenoPeripheralInterface.d.ts +3 -3
- package/dist/cjs/BlenoPeripheralInterface.d.ts.map +1 -1
- package/dist/cjs/BlenoPeripheralInterface.js.map +1 -1
- package/dist/cjs/NobleBleChannel.d.ts +6 -6
- package/dist/cjs/NobleBleChannel.d.ts.map +1 -1
- package/dist/cjs/NobleBleChannel.js +3 -3
- package/dist/cjs/NobleBleChannel.js.map +1 -1
- package/dist/cjs/NobleBleClient.d.ts +2 -1
- package/dist/cjs/NobleBleClient.d.ts.map +1 -1
- package/dist/cjs/NobleBleClient.js +3 -2
- package/dist/cjs/NobleBleClient.js.map +1 -1
- package/dist/esm/BleScanner.js.map +1 -1
- package/dist/esm/BlenoBleServer.d.ts +5 -5
- package/dist/esm/BlenoBleServer.d.ts.map +1 -1
- package/dist/esm/BlenoBleServer.js +6 -6
- package/dist/esm/BlenoBleServer.js.map +1 -1
- package/dist/esm/BlenoPeripheralInterface.d.ts +3 -3
- package/dist/esm/BlenoPeripheralInterface.d.ts.map +1 -1
- package/dist/esm/BlenoPeripheralInterface.js.map +1 -1
- package/dist/esm/NobleBleChannel.d.ts +6 -6
- package/dist/esm/NobleBleChannel.d.ts.map +1 -1
- package/dist/esm/NobleBleChannel.js +4 -3
- package/dist/esm/NobleBleChannel.js.map +1 -1
- package/dist/esm/NobleBleClient.d.ts +2 -1
- package/dist/esm/NobleBleClient.d.ts.map +1 -1
- package/dist/esm/NobleBleClient.js +4 -3
- package/dist/esm/NobleBleClient.js.map +1 -1
- package/package.json +5 -5
- package/src/BleScanner.ts +1 -1
- package/src/BlenoBleServer.ts +13 -13
- package/src/BlenoPeripheralInterface.ts +3 -3
- package/src/NobleBleChannel.ts +15 -14
- package/src/NobleBleClient.ts +7 -9
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/BleScanner.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAmF;AACnF,sBAAmG;AACnG,mBAAyB;AARzB;AAAA;AAAA;AAAA;AAAA;AAYA,MAAM,SAAS,sBAAO,IAAI,YAAY;AAY/B,MAAM,WAA8B;AAAA,EAC9B,OAAO,2BAAY;AAAA,EAEnB;AAAA,EACA,iBAAiB,oBAAI,IAQ5B;AAAA,EACO,2BAA2B,oBAAI,IAAiC;AAAA,EAEzE,YAAY,aAA6B;AACrC,SAAK,eAAe;AACpB,SAAK,aAAa;AAAA,MAAqB,CAAC,SAAS,qBAC7C,KAAK,wBAAwB,SAAS,gBAAgB;AAAA,IAC1D;AAAA,EACJ;AAAA,EAEO,oBAAoB,SAAsC;AAC7D,UAAM,SAAS,KAAK,yBAAyB,IAAI,OAAO;AACxD,QAAI,WAAW,QAAW;AACtB,YAAM,IAAI,yBAAS,+BAA+B,OAAO,EAAE;AAAA,IAC/D;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,uBACF,SACA,gBACA,0BAA0B,MAC1B,gBACF;AACE,UAAM,EAAE,SAAS,SAAS,QAAI,8BAAoB;AAClD,QAAI;AACJ,QAAI,mBAAmB,QAAW;AAC9B,cAAQ,oBAAK,SAAS,qBAAqB,iBAAiB,KAAM,MAAM;AACpE,yBAAiB;AACjB,aAAK,cAAc,SAAS,IAAI;AAAA,MACpC,CAAC,EAAE,MAAM;AAAA,IACb;AACA,SAAK,eAAe,IAAI,SAAS,EAAE,UAAU,OAAO,yBAAyB,eAAe,CAAC;AAC7F,WAAO;AAAA,MACH,+BAA+B,OAAO,iBAAiB,cAAc,WACjE,0BAA0B,KAAK,qCACnC;AAAA,IACJ;AACA,UAAM;AAAA,EACV;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,cAAc,SAAiB,gBAAyB,kBAAkB,OAAO;AAC7E,UAAM,SAAS,KAAK,eAAe,IAAI,OAAO;AAC9C,QAAI,WAAW,OAAW;AAC1B,UAAM,EAAE,OAAO,UAAU,wBAAwB,IAAI;AACrD,QAAI,mBAAmB,CAAC,wBAAyB;AACjD,WAAO,MAAM,8BAA8B,OAAO,gBAAgB,cAAc,EAAE;AAClF,WAAO,KAAK;AACZ,QAAI,gBAAgB;AAChB,eAAS;AAAA,IACb;AACA,SAAK,eAAe,OAAO,OAAO;AAAA,EACtC;AAAA,EAEA,oCAAoC,YAA6C,iBAAiB,MAAM;AACpG,UAAM,WAAW,KAAK,oCAAoC,UAAU;AACpE,UAAM,EAAE,eAAe,IAAI,KAAK,eAAe,IAAI,QAAQ,KAAK,CAAC;AAEjE,qBAAiB;AACjB,SAAK,cAAc,UAAU,cAAc;AAAA,EAC/C;AAAA,EAEA,wBAAwB,YAAwB,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Channel } from "#general";
|
|
6
|
+
import { Bytes, Channel } from "#general";
|
|
7
7
|
import { BleChannel } from "#protocol";
|
|
8
8
|
import { BleOptions } from "./NodeJsBle.js";
|
|
9
9
|
/**
|
|
@@ -12,7 +12,7 @@ import { BleOptions } from "./NodeJsBle.js";
|
|
|
12
12
|
* Note: Bleno is only supporting a single connection at a time right now - mainly because it also only can announce
|
|
13
13
|
* one BLE device at a time!
|
|
14
14
|
*/
|
|
15
|
-
export declare class BlenoBleServer extends BleChannel<
|
|
15
|
+
export declare class BlenoBleServer extends BleChannel<Bytes> {
|
|
16
16
|
#private;
|
|
17
17
|
private state;
|
|
18
18
|
isAdvertising: boolean;
|
|
@@ -54,9 +54,9 @@ export declare class BlenoBleServer extends BleChannel<Uint8Array> {
|
|
|
54
54
|
* @param offset
|
|
55
55
|
*/
|
|
56
56
|
handleC3ReadRequest(offset: number): Buffer<ArrayBufferLike>;
|
|
57
|
-
advertise(advertiseData:
|
|
57
|
+
advertise(advertiseData: Bytes, additionalAdvertisementData?: Bytes, intervalMs?: number): Promise<void>;
|
|
58
58
|
stopAdvertising(): Promise<void>;
|
|
59
|
-
setMatterMessageListener(listener: (socket: Channel<
|
|
59
|
+
setMatterMessageListener(listener: (socket: Channel<Bytes>, data: Bytes) => void): void;
|
|
60
60
|
btpHandshakeTimeoutTriggered(): Promise<void>;
|
|
61
61
|
close(): Promise<void>;
|
|
62
62
|
disconnect(): Promise<void>;
|
|
@@ -65,7 +65,7 @@ export declare class BlenoBleServer extends BleChannel<Uint8Array> {
|
|
|
65
65
|
*
|
|
66
66
|
* @param data
|
|
67
67
|
*/
|
|
68
|
-
send(data:
|
|
68
|
+
send(data: Bytes): Promise<void>;
|
|
69
69
|
get name(): string;
|
|
70
70
|
}
|
|
71
71
|
//# sourceMappingURL=BlenoBleServer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlenoBleServer.d.ts","sourceRoot":"","sources":["../../src/BlenoBleServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAA8C,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"BlenoBleServer.d.ts","sourceRoot":"","sources":["../../src/BlenoBleServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,OAAO,EAA8C,MAAM,UAAU,CAAC;AACtF,OAAO,EAMH,UAAU,EAKb,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AA4G5C;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,UAAU,CAAC,KAAK,CAAC;;IACjD,OAAO,CAAC,KAAK,CAAa;IAC1B,aAAa,UAAS;IACtB,OAAO,CAAC,yBAAyB,CAA2B;IAC5D,OAAO,CAAC,eAAe,CAAqB;IAE5C,OAAO,CAAC,sBAAsB,CAAqB;IACnD,OAAO,CAAC,UAAU,CAAgC;IAElD,OAAO,CAAC,uBAAuB,CAA8D;IAC7F,OAAO,CAAC,yBAAyB,CAAsC;IAEhE,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,OAAO,CAAC,mBAAmB,CAEzB;IAIF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAEtB,OAAO,CAAC,EAAE,UAAU;IAwEhC;;;;;;;;OAQG;IACH,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO;IA0B5F;;;;;;;;OAQG;IACG,wBAAwB,CAAC,YAAY,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI;IAsChG,gBAAgB;IAShB;;;;;OAKG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM;IAQ5B,SAAS,CAAC,aAAa,EAAE,KAAK,EAAE,2BAA2B,CAAC,EAAE,KAAK,EAAE,UAAU,SAAM;IA2BrF,eAAe;IAYrB,wBAAwB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI;IAO1E,4BAA4B;IAK5B,KAAK;IAcL,UAAU;IAqBhB;;;;OAIG;IACG,IAAI,CAAC,IAAI,EAAE,KAAK;IAQtB,IAAI,IAAI,WAEP;CACJ"}
|
|
@@ -235,7 +235,7 @@ class BlenoBleServer extends import_protocol.BleChannel {
|
|
|
235
235
|
new Uint8Array(this.latestHandshakePayload),
|
|
236
236
|
// callback to write data to characteristic C2
|
|
237
237
|
async (data) => {
|
|
238
|
-
updateValueCallback(Buffer.from(data
|
|
238
|
+
updateValueCallback(Buffer.from(import_general.Bytes.of(data)));
|
|
239
239
|
const { promise, resolver } = (0, import_general.createPromise)();
|
|
240
240
|
this.writeConformationResolver = resolver;
|
|
241
241
|
return promise;
|
|
@@ -275,9 +275,9 @@ class BlenoBleServer extends import_protocol.BleChannel {
|
|
|
275
275
|
}
|
|
276
276
|
async advertise(advertiseData, additionalAdvertisementData, intervalMs = 100) {
|
|
277
277
|
process.env["BLENO_ADVERTISING_INTERVAL"] = intervalMs.toString();
|
|
278
|
-
this.advertisingData = Buffer.from(advertiseData
|
|
278
|
+
this.advertisingData = Buffer.from(import_general.Bytes.of(advertiseData));
|
|
279
279
|
if (additionalAdvertisementData) {
|
|
280
|
-
this.additionalAdvertisingData = Buffer.from(additionalAdvertisementData
|
|
280
|
+
this.additionalAdvertisingData = Buffer.from(import_general.Bytes.of(additionalAdvertisementData));
|
|
281
281
|
} else {
|
|
282
282
|
this.additionalAdvertisingData = Buffer.alloc(0);
|
|
283
283
|
}
|
|
@@ -340,7 +340,7 @@ class BlenoBleServer extends import_protocol.BleChannel {
|
|
|
340
340
|
logger.debug(`Stopping Bleno`);
|
|
341
341
|
Bleno.stop();
|
|
342
342
|
}
|
|
343
|
-
// Channel<
|
|
343
|
+
// Channel<Bytes>
|
|
344
344
|
/**
|
|
345
345
|
* Send a Matter message to the connected device - need to do BTP assembly first.
|
|
346
346
|
*
|
|
@@ -352,7 +352,7 @@ class BlenoBleServer extends import_protocol.BleChannel {
|
|
|
352
352
|
}
|
|
353
353
|
await this.btpSession.sendMatterMessage(data);
|
|
354
354
|
}
|
|
355
|
-
// Channel<
|
|
355
|
+
// Channel<Bytes>
|
|
356
356
|
get name() {
|
|
357
357
|
return `${this.type}://${this.clientAddress}`;
|
|
358
358
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/BlenoBleServer.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAA2E;AAC3E,sBAWO;AACP,qBAAwB;AAnBxB;AAAA;AAAA;AAAA;AAAA;AAuBA,MAAM,SAAS,sBAAO,IAAI,gBAAgB;AAC1C,IAAI;AAEJ,SAAS,gBAAgB,QAAwB,OAAgB;AAE7D,MAAI,UAAU,QAAW;AACrB,YAAQ,IAAI,sBAAsB,MAAM,SAAS;AAAA,EACrD;AACA,cAAQ,wBAAQ,mBAAmB;AAAA,EAEnC,MAAM,iCAAiC,MAAM,eAAe;AAAA,IACxD,cAAc;AACV,YAAM;AAAA,QACF,MAAM;AAAA,QACN,YAAY,CAAC,OAAO;AAAA,QACpB,gBAAgB,CAAC,SAAS,MAAM,QAAQ,iBAAiB,aACrD,KAAK,gBAAgB,MAAM,QAAQ,iBAAiB,QAAQ;AAAA,MACpE,CAAC;AAAA,IACL;AAAA,IAEA,gBACI,MACA,QACA,iBACA,UACF;AACE,aAAO,MAAM,qBAAqB,KAAK,SAAS,KAAK,CAAC,IAAI,MAAM,IAAI,eAAe,EAAE;AAErF,UAAI;AACA,eAAO,qBAAqB,MAAM,QAAQ,eAAe;AACzD,iBAAS,KAAK,cAAc;AAAA,MAChC,SAAS,GAAG;AACR,eAAO,MAAM,4BAA4B,CAAC,EAAE;AAC5C,iBAAS,KAAK,qBAAqB;AAAA,MACvC;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,MAAM,oCAAoC,MAAM,eAAe;AAAA,IAC3D,cAAc;AACV,YAAM;AAAA,QACF,MAAM;AAAA,QACN,YAAY,CAAC,UAAU;AAAA,QACvB,aAAa,CAAC,SAAS,cAAc,wBACjC,KAAK,aAAa,cAAc,mBAAmB;AAAA,QACvD,eAAe,MAAM,KAAK,eAAe;AAAA,QACzC,YAAY,MAAM,KAAK,YAAY;AAAA,MACvC,CAAC;AAAA,IACL;AAAA,IAEA,aAAa,cAAsB,qBAA6C;AAC5E,aAAO,MAAM,gBAAgB,YAAY,EAAE;AAE3C,aACK,yBAAyB,cAAc,mBAAmB,EAC1D,MAAM,OAAK,OAAO,KAAK,gDAAgD,CAAC,CAAC;AAAA,IAClF;AAAA,IAEA,iBAAiB;AACb,aAAO,MAAM,gBAAgB;AAC7B,aAAO,MAAM,EAAE,MAAM,OAAK,OAAO,KAAK,yDAAyD,CAAC,CAAC;AAAA,IACrG;AAAA,IAEA,cAAc;AACV,aAAO,MAAM,aAAa;AAC1B,aAAO,iBAAiB;AAAA,IAC5B;AAAA,EACJ;AAAA,EAEA,MAAM,gCAAgC,MAAM,eAAe;AAAA,IACvD,cAAc;AACV,YAAM;AAAA,QACF,MAAM;AAAA,QACN,YAAY,CAAC,MAAM;AAAA,QACnB,eAAe,CAAC,SAAS,QAAQ,aAAa,KAAK,eAAe,QAAQ,QAAQ;AAAA,MACtF,CAAC;AAAA,IACL;AAAA,IAEA,eAAe,QAAgB,UAAmD;AAC9E,UAAI;AACA,cAAM,OAAO,OAAO,oBAAoB,MAAM;AAC9C,eAAO,MAAM,oBAAoB,KAAK,SAAS,KAAK,CAAC,IAAI,MAAM,EAAE;AACjE,iBAAS,KAAK,gBAAgB,IAAI;AAAA,MACtC,SAAS,GAAG;AACR,eAAO,MAAM,4BAA4B,CAAC,IAAI,MAAM,EAAE;AACtD,iBAAS,KAAK,qBAAqB;AAAA,MACvC;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,MAAM,mBAAmB,MAAM,eAAe;AAAA,IAC1C,cAAc;AACV,YAAM;AAAA,QACF,MAAM;AAAA,QACN,iBAAiB;AAAA,UACb,IAAI,yBAAyB;AAAA,UAC7B,IAAI,4BAA4B;AAAA,UAChC,IAAI,wBAAwB;AAAA,QAChC;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,EACJ;AAEA,SAAO,IAAI,WAAW;AAC1B;AAQO,MAAM,uBAAuB,2BAAkB;AAAA,EAC1C,QAAQ;AAAA,EAChB,gBAAgB;AAAA,EACR,4BAAoC,OAAO,MAAM,CAAC;AAAA,EAClD;AAAA,EAEA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EAED;AAAA,EACC,sBAAsB,oBAAK;AAAA,IAAS;AAAA,IAAyB;AAAA,IAAyB,MAC1F,KAAK,6BAA6B;AAAA,EACtC;AAAA,EACA,gBAAgB;AAAA,EAChB,WAAW;AAAA,EAEM;AAAA,EAEjB,YAAY,SAAsB;AAC9B,UAAM;AAEN,UAAM,EAAE,YAAY,IAAI,WAAW,CAAC;AACpC,iBAAa,QAAQ,IAAI,IAAI;AAE7B,SAAK,mBAAmB,gBAAgB,MAAM,SAAS,KAAK;AAG5D,UAAM,GAAG,eAAe,WAAS;AAC7B,UAAI,UAAU,KAAK,MAAO;AAC1B,WAAK,QAAQ;AACb,aAAO,MAAM,gBAAgB,KAAK,eAAe,MAAM,OAAO,EAAE;AAChE,UAAI,UAAU,aAAa;AAEvB,YAAI,KAAK,iBAAiB,KAAK,SAAU;AACzC,cAAM,gBAAgB;AAAA,MAC1B,WAAW,KAAK,iBAAiB;AAC7B,cAAM,4BAA4B,KAAK,eAAe;AACtD,aAAK,gBAAgB;AAAA,MACzB;AAAA,IACJ,CAAC;AAGD,UAAM,GAAG,UAAU,mBAAiB;AAChC,aAAO,MAAM,kCAAkC,aAAa,EAAE;AAC9D,WAAK,gBAAgB;AACrB,YAAM,WAAW;AAAA,IACrB,CAAC;AAED,UAAM,GAAG,cAAc,mBAAiB;AACpC,aAAO,MAAM,uBAAuB,aAAa,EAAE;AACnD,WAAK,gBAAgB;AACrB,UAAI,KAAK,eAAe,QAAW;AAC/B,aAAK,WACA,MAAM,EACN,KAAK,MAAM;AACR,eAAK,aAAa;AAAA,QACtB,CAAC,EACA,MAAM,MAAM;AACT,eAAK,aAAa;AAAA,QACtB,CAAC;AAAA,MACT;AAAA,IACJ,CAAC;AAED,UAAM,GAAG,cAAc,UAAQ;AAC3B,aAAO,MAAM,eAAe,IAAI,EAAE;AAAA,IACtC,CAAC;AAGD,UAAM,GAAG,aAAa,SAAO;AACzB,aAAO,MAAM,cAAc,GAAG,EAAE;AAAA,IACpC,CAAC;AAED,UAAM,GAAG,oBAAoB,WAAS;AAClC,aAAO,MAAM,qBAAqB,QAAQ,SAAS,KAAK,KAAK,SAAS,EAAE;AAExE,UAAI,CAAC,OAAO;AACR,cAAM,YAAY,CAAC,KAAK,gBAAgB,CAAC;AAAA,MAC7C;AAAA,IAEJ,CAAC;AAED,UAAM,GAAG,mBAAmB,MAAM;AAC9B,aAAO,MAAM,iBAAiB;AAAA,IAClC,CAAC;AAED,UAAM,GAAG,eAAe,WAAS;AAC7B,aAAO,MAAM,gBAAgB,QAAQ,SAAS,KAAK,KAAK,SAAS,EAAE;AAAA,IACvE,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,qBAAqB,MAA+B,QAAgB,iBAA0B;AAC1F,QAAI,WAAW,KAAK,iBAAiB;AACjC,YAAM,IAAI,yBAAS,UAAU,MAAM,uBAAuB,eAAe,gBAAgB;AAAA,IAC7F;AAEA,QAAI,KAAK,CAAC,MAAM,OAAQ,KAAK,CAAC,MAAM,OAAQ,KAAK,WAAW,GAAG;AAE3D,WAAK,oBAAoB,MAAM;AAE/B,aAAO;AAAA,QACH,sCAAsC,KAAK,SAAS,KAAK,CAAC;AAAA,MAC9D;AACA,WAAK,yBAAyB;AAAA,IAElC,OAAO;AACH,UAAI,KAAK,eAAe,QAAW;AAC/B,eAAO,MAAM,yCAAyC,KAAK,SAAS,KAAK,CAAC,EAAE;AAC5E,aAAK,KAAK,WAAW,sBAAsB,IAAI,WAAW,IAAI,CAAC;AAAA,MACnE,OAAO;AACH,cAAM,IAAI;AAAA,UACN,4DAA4D,KAAK,SAAS,KAAK,CAAC;AAAA,QACpF;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,MAAM,yBAAyB,cAAsB,qBAA6C;AAC9F,QAAI,KAAK,2BAA2B,QAAW;AAC3C,YAAM,IAAI,6BAAa,wDAAwD;AAAA,IACnF;AACA,QAAI,KAAK,eAAe,QAAW;AAC/B,YAAM,IAAI;AAAA,QACN;AAAA,MACJ;AAAA,IACJ;AACA,SAAK,oBAAoB,KAAK;AAE9B,SAAK,aAAa,MAAM,kCAAkB;AAAA,MACtC,KAAK,IAAI,MAAM,MAAM,GAAG,YAAY;AAAA,MACpC,IAAI,WAAW,KAAK,sBAAsB;AAAA;AAAA,MAG1C,OAAO,SAAgB;AACnB,4BAAoB,OAAO,KAAK,qBAAM,GAAG,IAAI,CAAC,CAAC;AAC/C,cAAM,EAAE,SAAS,SAAS,QAAI,8BAAoB;AAClD,aAAK,4BAA4B;AAEjC,eAAO;AAAA,MACX;AAAA;AAAA,MAGA,YAAY,KAAK,MAAM;AAAA;AAAA,MAGvB,OAAO,SAAgB;AACnB,YAAI,KAAK,4BAA4B,QAAW;AAC5C,gBAAM,IAAI,6BAAc,4CAA4C;AAAA,QACxE;AACA,aAAK,wBAAwB,MAAM,IAAI;AAAA,MAC3C;AAAA,IACJ;AACA,SAAK,yBAAyB;AAAA,EAClC;AAAA,EAEA,mBAAmB;AACf,QAAI,KAAK,8BAA8B,QAAW;AAC9C,WAAK,0BAA0B;AAC/B,WAAK,4BAA4B;AAAA,IACrC,OAAO;AACH,aAAO,KAAK,oEAAoE;AAAA,IACpF;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,oBAAoB,QAAgB;AAChC,QAAI,SAAS,KAAK,0BAA0B,QAAQ;AAChD,YAAM,IAAI,yBAAS,UAAU,MAAM,wBAAwB,KAAK,0BAA0B,MAAM,EAAE;AAAA,IACtG,OAAO;AACH,aAAO,KAAK,0BAA0B,SAAS,MAAM;AAAA,IACzD;AAAA,EACJ;AAAA,EAEA,MAAM,UAAU,eAAsB,6BAAqC,aAAa,KAAK;AACzF,YAAQ,IAAI,4BAA4B,IAAI,WAAW,SAAS;AAEhE,SAAK,kBAAkB,OAAO,KAAK,qBAAM,GAAG,aAAa,CAAC;AAE1D,QAAI,6BAA6B;AAC7B,WAAK,4BAA4B,OAAO,KAAK,qBAAM,GAAG,2BAA2B,CAAC;AAAA,IACtF,OAAO;AACH,WAAK,4BAA4B,OAAO,MAAM,CAAC;AAAA,IACnD;AAEA,QAAI,KAAK,eAAe;AACpB,YAAM,KAAK,gBAAgB;AAC3B,WAAK,gBAAgB;AAAA,IACzB;AAEA,QAAI,KAAK,UAAU,aAAa;AAC5B,YAAM,4BAA4B,KAAK,eAAe;AACtD,WAAK,gBAAgB;AAAA,IACzB,OAAO;AACH,aAAO,MAAM,YAAY,KAAK,KAAK,6BAA6B;AAAA,IACpE;AACA,WAAO,IAAI,QAAc,aAAW;AAChC,YAAM,KAAK,oBAAoB,MAAM,QAAQ,CAAC;AAAA,IAClD,CAAC;AAAA,EACL;AAAA,EAEA,MAAM,kBAAkB;AACpB,QAAI,KAAK,eAAe;AACpB,aAAO,IAAI,QAAc,aAAW;AAChC,cAAM,gBAAgB;AACtB,cAAM,KAAK,mBAAmB,MAAM;AAChC,eAAK,gBAAgB;AACrB,kBAAQ;AAAA,QACZ,CAAC;AAAA,MACL,CAAC;AAAA,IACL;AAAA,EACJ;AAAA,EAEA,yBAAyB,UAAyD;AAC9E,QAAI,KAAK,4BAA4B,QAAW;AAC5C,YAAM,IAAI,6BAAc,6BAA6B;AAAA,IACzD;AACA,SAAK,0BAA0B;AAAA,EACnC;AAAA,EAEA,MAAM,+BAA+B;AACjC,UAAM,KAAK,WAAW;AACtB,WAAO,MAAM,uEAAuE;AAAA,EACxF;AAAA,EAEA,MAAM,QAAQ;AACV,QAAI,KAAK,UAAU;AACf;AAAA,IACJ;AACA,SAAK,WAAW;AAChB,SAAK,oBAAoB,KAAK;AAC9B,UAAM,KAAK,WAAW;AACtB,QAAI,KAAK,eAAe,QAAW;AAC/B,YAAM,KAAK,WAAW,MAAM;AAC5B,WAAK,aAAa;AAAA,IACtB;AACA,SAAK,0BAA0B;AAAA,EACnC;AAAA,EAEA,MAAM,aAAa;AACf,SAAK,gBAAgB;AACrB,QAAI,KAAK,eAAe;AACpB;AAAA,IACJ;AACA,SAAK,gBAAgB;AACrB,WAAO,MAAM,qBAAqB;AAClC,UAAM,WAAW;AACjB,WAAO,MAAM,gBAAgB;AAC7B,UAAM,KAAK;AAAA,EASf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,KAAK,MAAa;AACpB,QAAI,KAAK,eAAe,QAAW;AAC/B,YAAM,IAAI,yCAAyB,8CAA8C;AAAA,IACrF;AACA,UAAM,KAAK,WAAW,kBAAkB,IAAI;AAAA,EAChD;AAAA;AAAA,EAGA,IAAI,OAAO;AACP,WAAO,GAAG,KAAK,IAAI,MAAM,KAAK,aAAa;AAAA,EAC/C;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -3,16 +3,16 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Channel, ChannelType, TransportInterface } from "#general";
|
|
6
|
+
import { Bytes, Channel, ChannelType, TransportInterface } from "#general";
|
|
7
7
|
import { BlePeripheralInterface } from "@matter/protocol";
|
|
8
8
|
import { BlenoBleServer } from "./BlenoBleServer.js";
|
|
9
9
|
export declare class BlenoPeripheralInterface implements BlePeripheralInterface {
|
|
10
10
|
private readonly blenoServer;
|
|
11
11
|
constructor(blenoServer: BlenoBleServer);
|
|
12
|
-
onData(listener: (socket: Channel<
|
|
12
|
+
onData(listener: (socket: Channel<Bytes>, data: Bytes) => void): TransportInterface.Listener;
|
|
13
13
|
close(): Promise<void>;
|
|
14
14
|
supports(type: ChannelType, address?: string): boolean;
|
|
15
|
-
advertise(advertiseData:
|
|
15
|
+
advertise(advertiseData: Bytes, additionalAdvertisementData?: Bytes, intervalMs?: number): Promise<void>;
|
|
16
16
|
stopAdvertising(): Promise<void>;
|
|
17
17
|
}
|
|
18
18
|
//# sourceMappingURL=BlenoPeripheralInterface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlenoPeripheralInterface.d.ts","sourceRoot":"","sources":["../../src/BlenoPeripheralInterface.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"BlenoPeripheralInterface.d.ts","sourceRoot":"","sources":["../../src/BlenoPeripheralInterface.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,qBAAa,wBAAyB,YAAW,sBAAsB;IACvD,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,EAAE,cAAc;IAGxD,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,GAAG,kBAAkB,CAAC,QAAQ;IAOtF,KAAK;IAIX,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM;IAY5C,SAAS,CAAC,aAAa,EAAE,KAAK,EAAE,2BAA2B,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,MAAM;IAIxF,eAAe;CAGlB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/BlenoPeripheralInterface.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAgE;AANhE;AAAA;AAAA;AAAA;AAAA;AAUO,MAAM,yBAA2D;AAAA,EACpE,YAA6B,aAA6B;AAA7B;AAAA,EAA8B;AAAA;AAAA,EAG3D,OAAO,UAAsF;AACzF,SAAK,YAAY,yBAAyB,QAAQ;AAClD,WAAO;AAAA,MACH,OAAO,YAAY,MAAM,KAAK,MAAM;AAAA,IACxC;AAAA,EACJ;AAAA,EAEA,MAAM,QAAQ;AACV,UAAM,KAAK,YAAY,MAAM;AAAA,EACjC;AAAA,EAEA,SAAS,MAAmB,SAAkB;AAC1C,QAAI,SAAS,2BAAY,KAAK;AAC1B,aAAO;AAAA,IACX;AAEA,QAAI,YAAY,QAAW;AACvB,aAAO;AAAA,IACX;AAEA,WAAO,KAAK,YAAY,kBAAkB;AAAA,EAC9C;AAAA,EAEA,UAAU,eAAsB,6BAAqC,YAAqB;AACtF,WAAO,KAAK,YAAY,UAAU,eAAe,6BAA6B,UAAU;AAAA,EAC5F;AAAA,EAEA,kBAAkB;AACd,WAAO,KAAK,YAAY,gBAAgB;AAAA,EAC5C;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -3,23 +3,23 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Channel, ChannelType, NetInterface, ServerAddress, TransportInterface } from "#general";
|
|
6
|
+
import { Bytes, Channel, ChannelType, NetInterface, ServerAddress, TransportInterface } from "#general";
|
|
7
7
|
import { BleChannel, BtpSessionHandler } from "#protocol";
|
|
8
8
|
import type { Characteristic, Peripheral } from "@stoprocent/noble";
|
|
9
9
|
import { BleScanner } from "./BleScanner.js";
|
|
10
10
|
export declare class NobleBleCentralInterface implements NetInterface {
|
|
11
11
|
#private;
|
|
12
12
|
constructor(bleScanner: BleScanner);
|
|
13
|
-
openChannel(address: ServerAddress, tryCount?: number): Promise<Channel<
|
|
14
|
-
onData(listener: (socket: Channel<
|
|
13
|
+
openChannel(address: ServerAddress, tryCount?: number): Promise<Channel<Bytes>>;
|
|
14
|
+
onData(listener: (socket: Channel<Bytes>, data: Bytes) => void): TransportInterface.Listener;
|
|
15
15
|
close(): Promise<void>;
|
|
16
16
|
supports(type: ChannelType, _address?: string): boolean;
|
|
17
17
|
}
|
|
18
|
-
export declare class NobleBleChannel extends BleChannel<
|
|
18
|
+
export declare class NobleBleChannel extends BleChannel<Bytes> {
|
|
19
19
|
#private;
|
|
20
20
|
private readonly peripheral;
|
|
21
21
|
private readonly btpSession;
|
|
22
|
-
static create(peripheral: Peripheral, characteristicC1ForWrite: Characteristic, characteristicC2ForSubscribe: Characteristic, onMatterMessageListener: (socket: Channel<
|
|
22
|
+
static create(peripheral: Peripheral, characteristicC1ForWrite: Characteristic, characteristicC2ForSubscribe: Characteristic, onMatterMessageListener: (socket: Channel<Bytes>, data: Bytes) => void, _additionalCommissioningRelatedData?: Bytes): Promise<NobleBleChannel>;
|
|
23
23
|
constructor(peripheral: Peripheral, btpSession: BtpSessionHandler);
|
|
24
24
|
get connected(): boolean;
|
|
25
25
|
/**
|
|
@@ -27,7 +27,7 @@ export declare class NobleBleChannel extends BleChannel<Uint8Array> {
|
|
|
27
27
|
*
|
|
28
28
|
* @param data
|
|
29
29
|
*/
|
|
30
|
-
send(data:
|
|
30
|
+
send(data: Bytes): Promise<void>;
|
|
31
31
|
get name(): string;
|
|
32
32
|
close(): Promise<void>;
|
|
33
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NobleBleChannel.d.ts","sourceRoot":"","sources":["../../src/NobleBleChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,OAAO,EACP,WAAW,EAIX,YAAY,EAEZ,aAAa,EAGb,kBAAkB,EAGrB,MAAM,UAAU,CAAC;AAClB,OAAO,EASH,UAAU,EAIV,iBAAiB,EACpB,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAkC7C,qBAAa,wBAAyB,YAAW,YAAY;;gBAQ7C,UAAU,EAAE,UAAU;IAIlC,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,SAAI,GAAG,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"NobleBleChannel.d.ts","sourceRoot":"","sources":["../../src/NobleBleChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EACL,OAAO,EACP,WAAW,EAIX,YAAY,EAEZ,aAAa,EAGb,kBAAkB,EAGrB,MAAM,UAAU,CAAC;AAClB,OAAO,EASH,UAAU,EAIV,iBAAiB,EACpB,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAkC7C,qBAAa,wBAAyB,YAAW,YAAY;;gBAQ7C,UAAU,EAAE,UAAU;IAIlC,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,SAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IA6S1E,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,GAAG,kBAAkB,CAAC,QAAQ;IAOtF,KAAK;IAaX,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,MAAM;CAMhD;AAED,qBAAa,eAAgB,SAAQ,UAAU,CAAC,KAAK,CAAC;;IAkH9C,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU;WAlHlB,MAAM,CACf,UAAU,EAAE,UAAU,EACtB,wBAAwB,EAAE,cAAc,EACxC,4BAA4B,EAAE,cAAc,EAC5C,uBAAuB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,EACtE,mCAAmC,CAAC,EAAE,KAAK,GAC5C,OAAO,CAAC,eAAe,CAAC;gBA2GN,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,iBAAiB;IAUlD,IAAI,SAAS,YAEZ;IAED;;;;OAIG;IACG,IAAI,CAAC,IAAI,EAAE,KAAK;IAgBtB,IAAI,IAAI,WAEP;IAEK,KAAK;CAUd"}
|
|
@@ -381,7 +381,7 @@ class NobleBleChannel extends import_protocol.BleChannel {
|
|
|
381
381
|
logger.debug(
|
|
382
382
|
`Peripheral ${peripheralAddress}: Sending BTP handshake request: ${import_general.Diagnostic.json(btpHandshakeRequest)}`
|
|
383
383
|
);
|
|
384
|
-
await characteristicC1ForWrite.writeAsync(Buffer.from(btpHandshakeRequest
|
|
384
|
+
await characteristicC1ForWrite.writeAsync(Buffer.from(import_general.Bytes.of(btpHandshakeRequest)), false);
|
|
385
385
|
characteristicC2ForSubscribe.once("data", handshakeHandler);
|
|
386
386
|
logger.debug(`Peripheral ${peripheralAddress}: Subscribing to C2 characteristic`);
|
|
387
387
|
await characteristicC2ForSubscribe.subscribeAsync();
|
|
@@ -390,7 +390,7 @@ class NobleBleChannel extends import_protocol.BleChannel {
|
|
|
390
390
|
new Uint8Array(handshakeResponse),
|
|
391
391
|
// callback to write data to characteristic C1
|
|
392
392
|
async (data) => {
|
|
393
|
-
return await characteristicC1ForWrite.writeAsync(Buffer.from(data
|
|
393
|
+
return await characteristicC1ForWrite.writeAsync(Buffer.from(import_general.Bytes.of(data)), false);
|
|
394
394
|
},
|
|
395
395
|
// callback to disconnect the BLE connection
|
|
396
396
|
async () => {
|
|
@@ -444,7 +444,7 @@ class NobleBleChannel extends import_protocol.BleChannel {
|
|
|
444
444
|
}
|
|
445
445
|
await this.btpSession.sendMatterMessage(data);
|
|
446
446
|
}
|
|
447
|
-
// Channel<
|
|
447
|
+
// Channel<Bytes>
|
|
448
448
|
get name() {
|
|
449
449
|
return `${this.type}://${this.peripheral.address}`;
|
|
450
450
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/NobleBleChannel.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["error"]
|
|
6
6
|
}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { Bytes } from "#general";
|
|
6
7
|
import type { Peripheral } from "@stoprocent/noble";
|
|
7
8
|
import { BleOptions } from "./NodeJsBle.js";
|
|
8
9
|
export declare class NobleBleClient {
|
|
@@ -13,7 +14,7 @@ export declare class NobleBleClient {
|
|
|
13
14
|
private nobleState;
|
|
14
15
|
private deviceDiscoveredCallback;
|
|
15
16
|
constructor(options?: BleOptions);
|
|
16
|
-
setDiscoveryCallback(callback: (peripheral: Peripheral, manufacturerData:
|
|
17
|
+
setDiscoveryCallback(callback: (peripheral: Peripheral, manufacturerData: Bytes) => void): void;
|
|
17
18
|
startScanning(): Promise<void>;
|
|
18
19
|
stopScanning(): Promise<void>;
|
|
19
20
|
private handleDiscoveredDevice;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NobleBleClient.d.ts","sourceRoot":"","sources":["../../src/NobleBleClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"NobleBleClient.d.ts","sourceRoot":"","sources":["../../src/NobleBleClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAsB,MAAM,UAAU,CAAC;AAGrD,OAAO,KAAK,EAAS,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAkB5C,qBAAa,cAAc;;IACvB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA2E;IACjH,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,wBAAwB,CAA0E;gBAG9F,OAAO,CAAC,EAAE,UAAU;IAqCzB,oBAAoB,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,KAAK,IAAI;IAOlF,aAAa;IAcb,YAAY;IASzB,OAAO,CAAC,sBAAsB;IAuC9B,KAAK;CAgBR"}
|
|
@@ -119,8 +119,9 @@ class NobleBleClient {
|
|
|
119
119
|
logger.info(`Peripheral ${address} does not advertise Matter Service ... ignoring`);
|
|
120
120
|
return;
|
|
121
121
|
}
|
|
122
|
-
|
|
123
|
-
this.
|
|
122
|
+
const serviceDataBytes = import_general.Bytes.of(matterServiceData.data);
|
|
123
|
+
this.discoveredPeripherals.set(address, { peripheral, matterServiceData: serviceDataBytes });
|
|
124
|
+
this.deviceDiscoveredCallback?.(peripheral, serviceDataBytes);
|
|
124
125
|
}
|
|
125
126
|
close() {
|
|
126
127
|
if (this.#closing) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/NobleBleClient.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/BleScanner.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,OAAO,aAAa,eAAe,YAAY,QAAQ,YAAmB;AACnF,SAAS,UAAU,gBAAgF;AACnG,SAAS,gBAAgB;AAIzB,MAAM,SAAS,OAAO,IAAI,YAAY;AAY/B,MAAM,WAA8B;AAAA,EAC9B,OAAO,YAAY;AAAA,EAEnB;AAAA,EACA,iBAAiB,oBAAI,IAQ5B;AAAA,EACO,2BAA2B,oBAAI,IAAiC;AAAA,EAEzE,YAAY,aAA6B;AACrC,SAAK,eAAe;AACpB,SAAK,aAAa;AAAA,MAAqB,CAAC,SAAS,qBAC7C,KAAK,wBAAwB,SAAS,gBAAgB;AAAA,IAC1D;AAAA,EACJ;AAAA,EAEO,oBAAoB,SAAsC;AAC7D,UAAM,SAAS,KAAK,yBAAyB,IAAI,OAAO;AACxD,QAAI,WAAW,QAAW;AACtB,YAAM,IAAI,SAAS,+BAA+B,OAAO,EAAE;AAAA,IAC/D;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,uBACF,SACA,gBACA,0BAA0B,MAC1B,gBACF;AACE,UAAM,EAAE,SAAS,SAAS,IAAI,cAAoB;AAClD,QAAI;AACJ,QAAI,mBAAmB,QAAW;AAC9B,cAAQ,KAAK,SAAS,qBAAqB,iBAAiB,KAAM,MAAM;AACpE,yBAAiB;AACjB,aAAK,cAAc,SAAS,IAAI;AAAA,MACpC,CAAC,EAAE,MAAM;AAAA,IACb;AACA,SAAK,eAAe,IAAI,SAAS,EAAE,UAAU,OAAO,yBAAyB,eAAe,CAAC;AAC7F,WAAO;AAAA,MACH,+BAA+B,OAAO,iBAAiB,cAAc,WACjE,0BAA0B,KAAK,qCACnC;AAAA,IACJ;AACA,UAAM;AAAA,EACV;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,cAAc,SAAiB,gBAAyB,kBAAkB,OAAO;AAC7E,UAAM,SAAS,KAAK,eAAe,IAAI,OAAO;AAC9C,QAAI,WAAW,OAAW;AAC1B,UAAM,EAAE,OAAO,UAAU,wBAAwB,IAAI;AACrD,QAAI,mBAAmB,CAAC,wBAAyB;AACjD,WAAO,MAAM,8BAA8B,OAAO,gBAAgB,cAAc,EAAE;AAClF,WAAO,KAAK;AACZ,QAAI,gBAAgB;AAChB,eAAS;AAAA,IACb;AACA,SAAK,eAAe,OAAO,OAAO;AAAA,EACtC;AAAA,EAEA,oCAAoC,YAA6C,iBAAiB,MAAM;AACpG,UAAM,WAAW,KAAK,oCAAoC,UAAU;AACpE,UAAM,EAAE,eAAe,IAAI,KAAK,eAAe,IAAI,QAAQ,KAAK,CAAC;AAEjE,qBAAiB;AACjB,SAAK,cAAc,UAAU,cAAc;AAAA,EAC/C;AAAA,EAEA,wBAAwB,YAAwB,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,OAAO,aAAa,eAAe,YAAY,QAAQ,YAAmB;AACnF,SAAS,UAAU,gBAAgF;AACnG,SAAS,gBAAgB;AAIzB,MAAM,SAAS,OAAO,IAAI,YAAY;AAY/B,MAAM,WAA8B;AAAA,EAC9B,OAAO,YAAY;AAAA,EAEnB;AAAA,EACA,iBAAiB,oBAAI,IAQ5B;AAAA,EACO,2BAA2B,oBAAI,IAAiC;AAAA,EAEzE,YAAY,aAA6B;AACrC,SAAK,eAAe;AACpB,SAAK,aAAa;AAAA,MAAqB,CAAC,SAAS,qBAC7C,KAAK,wBAAwB,SAAS,gBAAgB;AAAA,IAC1D;AAAA,EACJ;AAAA,EAEO,oBAAoB,SAAsC;AAC7D,UAAM,SAAS,KAAK,yBAAyB,IAAI,OAAO;AACxD,QAAI,WAAW,QAAW;AACtB,YAAM,IAAI,SAAS,+BAA+B,OAAO,EAAE;AAAA,IAC/D;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,uBACF,SACA,gBACA,0BAA0B,MAC1B,gBACF;AACE,UAAM,EAAE,SAAS,SAAS,IAAI,cAAoB;AAClD,QAAI;AACJ,QAAI,mBAAmB,QAAW;AAC9B,cAAQ,KAAK,SAAS,qBAAqB,iBAAiB,KAAM,MAAM;AACpE,yBAAiB;AACjB,aAAK,cAAc,SAAS,IAAI;AAAA,MACpC,CAAC,EAAE,MAAM;AAAA,IACb;AACA,SAAK,eAAe,IAAI,SAAS,EAAE,UAAU,OAAO,yBAAyB,eAAe,CAAC;AAC7F,WAAO;AAAA,MACH,+BAA+B,OAAO,iBAAiB,cAAc,WACjE,0BAA0B,KAAK,qCACnC;AAAA,IACJ;AACA,UAAM;AAAA,EACV;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,cAAc,SAAiB,gBAAyB,kBAAkB,OAAO;AAC7E,UAAM,SAAS,KAAK,eAAe,IAAI,OAAO;AAC9C,QAAI,WAAW,OAAW;AAC1B,UAAM,EAAE,OAAO,UAAU,wBAAwB,IAAI;AACrD,QAAI,mBAAmB,CAAC,wBAAyB;AACjD,WAAO,MAAM,8BAA8B,OAAO,gBAAgB,cAAc,EAAE;AAClF,WAAO,KAAK;AACZ,QAAI,gBAAgB;AAChB,eAAS;AAAA,IACb;AACA,SAAK,eAAe,OAAO,OAAO;AAAA,EACtC;AAAA,EAEA,oCAAoC,YAA6C,iBAAiB,MAAM;AACpG,UAAM,WAAW,KAAK,oCAAoC,UAAU;AACpE,UAAM,EAAE,eAAe,IAAI,KAAK,eAAe,IAAI,QAAQ,KAAK,CAAC;AAEjE,qBAAiB;AACjB,SAAK,cAAc,UAAU,cAAc;AAAA,EAC/C;AAAA,EAEA,wBAAwB,YAAwB,yBAAgC;AAC5E,UAAM,UAAU,WAAW;AAE3B,QAAI;AACA,YAAM,EAAE,eAAe,UAAU,WAAW,+BAA+B,IACvE,SAAS,kCAAkC,uBAAuB;AAEtE,YAAM,aAAuC;AAAA,QACzC,kBAAkB;AAAA,QAClB,GAAG;AAAA,QACH,IAAK,iBAAiB,IAAK;AAAA,QAC3B,IAAI,GAAG,QAAQ,IAAI,SAAS;AAAA,QAC5B,IAAI;AAAA;AAAA,QACJ,WAAW,CAAC,EAAE,MAAM,OAAO,mBAAmB,QAAQ,CAAC;AAAA,MAC3D;AACA,YAAM,iBAAiB,KAAK,yBAAyB,IAAI,OAAO;AAEhE,aAAO;AAAA,QACH,GAAG,iBAAiB,QAAQ,EAAE,qBAAqB,OAAO,UAAU,WAAW,KAAK,UAAU,CAAC;AAAA,MACnG;AAEA,WAAK,yBAAyB,IAAI,SAAS;AAAA,QACvC;AAAA,QACA;AAAA,QACA;AAAA,MACJ,CAAC;AAED,YAAM,WAAW,KAAK,mCAAmC,UAAU;AACnE,UAAI,aAAa,QAAW;AACxB,aAAK,cAAc,UAAU,MAAM,cAAc;AAAA,MACrD;AAAA,IACJ,SAAS,OAAO;AACZ,aAAO;AAAA,QACH,qBAAqB,OAAO,IAAI,4BAA4B,SAAY,SAAY,MAAM,MAAM,uBAAuB,CAAC,+CAA+C,KAAK;AAAA,MAChL;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,mCAAmC,QAAkC;AACjE,UAAM,2BAA2B,KAAK,oCAAoC,EAAE,mBAAmB,OAAO,EAAE,CAAC;AACzG,QAAI,KAAK,eAAe,IAAI,wBAAwB,GAAG;AACnD,aAAO;AAAA,IACX;AAEA,UAAM,4BAA4B,KAAK,oCAAoC,EAAE,oBAAoB,OAAO,GAAG,CAAC;AAC5G,QAAI,KAAK,eAAe,IAAI,yBAAyB,GAAG;AACpD,aAAO;AAAA,IACX;AAEA,QAAI,OAAO,OAAO,QAAW;AACzB,YAAM,kBAAkB,KAAK,oCAAoC;AAAA,QAC7D,UAAU,SAAS,SAAS,OAAO,GAAG,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC;AAAA,MACxD,CAAC;AACD,UAAI,KAAK,eAAe,IAAI,eAAe,GAAG;AAC1C,eAAO;AAAA,MACX;AACA,UAAI,OAAO,GAAG,SAAS,GAAG,GAAG;AACzB,cAAM,mBAAmB,KAAK,oCAAoC;AAAA,UAC9D,UAAU,SAAS,SAAS,OAAO,GAAG,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC;AAAA,QACxD,CAAC;AACD,YAAI,KAAK,eAAe,IAAI,gBAAgB,GAAG;AAC3C,iBAAO;AAAA,QACX;AAAA,MACJ;AAAA,IACJ;AAEA,QAAI,KAAK,eAAe,IAAI,GAAG,GAAG;AAC9B,aAAO;AAAA,IACX;AAEA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,oCAAoC,YAA6C;AAC7E,QAAI,uBAAuB,YAAY;AACnC,aAAO,KAAK,WAAW,iBAAiB;AAAA,IAC5C,WAAW,wBAAwB,YAAY;AAC3C,aAAO,MAAM,WAAW,kBAAkB;AAAA,IAC9C,WAAW,cAAc,YAAY;AACjC,aAAO,KAAK,WAAW,QAAQ;AAAA,IACnC,WAAW,eAAe,YAAY;AAElC,aAAO,KAAK,WAAW,SAAS;AAAA,IACpC,MAAO,QAAO;AAAA,EAClB;AAAA,EAEA,0BAA0B,YAA6C;AACnE,UAAM,gBAAgB,MAAM,KAAK,KAAK,yBAAyB,OAAO,CAAC;AAEvE,UAAM,eAAe,IAAI,MAA2B;AACpD,QAAI,uBAAuB,YAAY;AACnC,mBAAa,KAAK,GAAG,cAAc,OAAO,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,MAAM,WAAW,iBAAiB,CAAC;AAAA,IAC5G,WAAW,wBAAwB,YAAY;AAC3C,mBAAa;AAAA,QACT,GAAG,cAAc,OAAO,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,OAAO,WAAW,kBAAkB;AAAA,MAC5F;AAAA,IACJ,WAAW,cAAc,YAAY;AACjC,mBAAa;AAAA,QACT,GAAG,cAAc;AAAA,UACb,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,MAClB,OAAO,GAAG,WAAW,QAAQ,MAAM,IAAI,WAAW,GAAG,WAAW,QAAQ,GAAG;AAAA,QACnF;AAAA,MACJ;AAAA,IACJ,WAAW,eAAe,YAAY;AAClC,mBAAa;AAAA,QACT,GAAG,cAAc,OAAO,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,IAAI,SAAS,IAAI,WAAW,SAAS,EAAE,CAAC;AAAA,MAChG;AAAA,IACJ,OAAO;AACH,mBAAa,KAAK,GAAG,cAAc,OAAO,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,OAAO,KAAK,OAAO,CAAC,CAAC;AAAA,IAC/F;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,MAAM,wBAA4C;AAC9C,WAAO,KAAK,yEAAyE;AACrF,WAAO;AAAA,EACX;AAAA,EAEA,iCAA4C;AACxC,WAAO,KAAK,yEAAyE;AACrF,WAAO;AAAA,EACX;AAAA,EAEA,MAAM,0BACF,YACA,iBAAiB,IACjB,wBAAwB,OACO;AAC/B,QAAI,gBAAgB,KAAK,0BAA0B,UAAU;AAC7D,QAAI,uBAAuB;AAEvB,iBAAW,UAAU,eAAe;AAChC,aAAK,yBAAyB,OAAO,OAAO,WAAW,OAAO;AAAA,MAClE;AACA,sBAAgB,CAAC;AAAA,IACrB;AACA,QAAI,cAAc,WAAW,GAAG;AAC5B,YAAM,WAAW,KAAK,oCAAoC,UAAU;AAEpE,YAAM,KAAK,aAAa,cAAc;AACtC,YAAM,KAAK,uBAAuB,UAAU,cAAc;AAE1D,sBAAgB,KAAK,0BAA0B,UAAU;AACzD,YAAM,KAAK,aAAa,aAAa;AAAA,IACzC;AACA,WAAO,cAAc,IAAI,CAAC,EAAE,WAAW,MAAM,UAAU;AAAA,EAC3D;AAAA,EAEA,MAAM,sCACF,YACA,UACA,gBACA,cAC+B;AAC/B,UAAM,oBAAoB,oBAAI,IAAY;AAE1C,UAAM,mBAAmB,iBAAiB,KAAK,MAAM,IAAI,iBAAiB,MAAO;AACjF,UAAM,WAAW,KAAK,oCAAoC,UAAU;AACpE,UAAM,KAAK,aAAa,cAAc;AAEtC,QAAI;AACJ,QAAI,iBAAiB,QAAW;AAC5B,YAAM,EAAE,SAAS,SAAS,IAAI,cAAoB;AAClD,qBAAe;AACf,sBAAgB;AAAA,IACpB;AAEA,QAAI,WAAW;AACf,kBAAc;AAAA,MACV,MAAM;AACF,mBAAW;AACX,YAAI,kBAAkB,QAAW;AAE7B,eAAK,cAAc,UAAU,IAAI;AAAA,QACrC;AAAA,MACJ;AAAA,MACA,WAAS;AACL,eAAO,MAAM,4CAA4C,KAAK;AAAA,MAClE;AAAA,IACJ;AAEA,WAAO,CAAC,UAAU;AACd,WAAK,0BAA0B,UAAU,EAAE,QAAQ,CAAC,EAAE,WAAW,MAAM;AACnE,cAAM,EAAE,iBAAiB,IAAI;AAC7B,YAAI,CAAC,kBAAkB,IAAI,gBAAgB,GAAG;AAC1C,4BAAkB,IAAI,gBAAgB;AACtC,mBAAS,UAAU;AAAA,QACvB;AAAA,MACJ,CAAC;AAED,UAAI;AACJ,UAAI,qBAAqB,QAAW;AAChC,wBAAgB,KAAK,MAAM,mBAAmB,KAAK,MAAM,KAAK,GAAI;AAClE,YAAI,iBAAiB,GAAG;AACpB;AAAA,QACJ;AAAA,MACJ;AAEA,YAAM,KAAK,uBAAuB,UAAU,eAAe,OAAO,aAAa;AAAA,IACnF;AACA,UAAM,KAAK,aAAa,aAAa;AACrC,WAAO,KAAK,0BAA0B,UAAU,EAAE,IAAI,CAAC,EAAE,WAAW,MAAM,UAAU;AAAA,EACxF;AAAA,EAEA,mCAAmC,YAAqE;AACpG,WAAO,KAAK,0BAA0B,UAAU,EAAE,IAAI,CAAC,EAAE,WAAW,MAAM,UAAU;AAAA,EACxF;AAAA,EAEA,MAAM,QAAQ;AACV,SAAK,aAAa,MAAM;AACxB,KAAC,GAAG,KAAK,eAAe,KAAK,CAAC,EAAE;AAAA,MAAQ,aACpC,KAAK,cAAc,SAAS,CAAC,CAAC,KAAK,eAAe,IAAI,OAAO,GAAG,KAAK;AAAA,IACzE;AAAA,EACJ;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Channel } from "#general";
|
|
6
|
+
import { Bytes, Channel } from "#general";
|
|
7
7
|
import { BleChannel } from "#protocol";
|
|
8
8
|
import { BleOptions } from "./NodeJsBle.js";
|
|
9
9
|
/**
|
|
@@ -12,7 +12,7 @@ import { BleOptions } from "./NodeJsBle.js";
|
|
|
12
12
|
* Note: Bleno is only supporting a single connection at a time right now - mainly because it also only can announce
|
|
13
13
|
* one BLE device at a time!
|
|
14
14
|
*/
|
|
15
|
-
export declare class BlenoBleServer extends BleChannel<
|
|
15
|
+
export declare class BlenoBleServer extends BleChannel<Bytes> {
|
|
16
16
|
#private;
|
|
17
17
|
private state;
|
|
18
18
|
isAdvertising: boolean;
|
|
@@ -54,9 +54,9 @@ export declare class BlenoBleServer extends BleChannel<Uint8Array> {
|
|
|
54
54
|
* @param offset
|
|
55
55
|
*/
|
|
56
56
|
handleC3ReadRequest(offset: number): Buffer<ArrayBufferLike>;
|
|
57
|
-
advertise(advertiseData:
|
|
57
|
+
advertise(advertiseData: Bytes, additionalAdvertisementData?: Bytes, intervalMs?: number): Promise<void>;
|
|
58
58
|
stopAdvertising(): Promise<void>;
|
|
59
|
-
setMatterMessageListener(listener: (socket: Channel<
|
|
59
|
+
setMatterMessageListener(listener: (socket: Channel<Bytes>, data: Bytes) => void): void;
|
|
60
60
|
btpHandshakeTimeoutTriggered(): Promise<void>;
|
|
61
61
|
close(): Promise<void>;
|
|
62
62
|
disconnect(): Promise<void>;
|
|
@@ -65,7 +65,7 @@ export declare class BlenoBleServer extends BleChannel<Uint8Array> {
|
|
|
65
65
|
*
|
|
66
66
|
* @param data
|
|
67
67
|
*/
|
|
68
|
-
send(data:
|
|
68
|
+
send(data: Bytes): Promise<void>;
|
|
69
69
|
get name(): string;
|
|
70
70
|
}
|
|
71
71
|
//# sourceMappingURL=BlenoBleServer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlenoBleServer.d.ts","sourceRoot":"","sources":["../../src/BlenoBleServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAA8C,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"BlenoBleServer.d.ts","sourceRoot":"","sources":["../../src/BlenoBleServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,OAAO,EAA8C,MAAM,UAAU,CAAC;AACtF,OAAO,EAMH,UAAU,EAKb,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AA4G5C;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,UAAU,CAAC,KAAK,CAAC;;IACjD,OAAO,CAAC,KAAK,CAAa;IAC1B,aAAa,UAAS;IACtB,OAAO,CAAC,yBAAyB,CAA2B;IAC5D,OAAO,CAAC,eAAe,CAAqB;IAE5C,OAAO,CAAC,sBAAsB,CAAqB;IACnD,OAAO,CAAC,UAAU,CAAgC;IAElD,OAAO,CAAC,uBAAuB,CAA8D;IAC7F,OAAO,CAAC,yBAAyB,CAAsC;IAEhE,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,OAAO,CAAC,mBAAmB,CAEzB;IAIF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAEtB,OAAO,CAAC,EAAE,UAAU;IAwEhC;;;;;;;;OAQG;IACH,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO;IA0B5F;;;;;;;;OAQG;IACG,wBAAwB,CAAC,YAAY,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI;IAsChG,gBAAgB;IAShB;;;;;OAKG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM;IAQ5B,SAAS,CAAC,aAAa,EAAE,KAAK,EAAE,2BAA2B,CAAC,EAAE,KAAK,EAAE,UAAU,SAAM;IA2BrF,eAAe;IAYrB,wBAAwB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI;IAO1E,4BAA4B;IAK5B,KAAK;IAcL,UAAU;IAqBhB;;;;OAIG;IACG,IAAI,CAAC,IAAI,EAAE,KAAK;IAQtB,IAAI,IAAI,WAEP;CACJ"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { InternalError, Logger, Time, createPromise } from "#general";
|
|
6
|
+
import { Bytes, InternalError, Logger, Time, createPromise } from "#general";
|
|
7
7
|
import {
|
|
8
8
|
BLE_MATTER_C1_CHARACTERISTIC_UUID,
|
|
9
9
|
BLE_MATTER_C2_CHARACTERISTIC_UUID,
|
|
@@ -223,7 +223,7 @@ class BlenoBleServer extends BleChannel {
|
|
|
223
223
|
new Uint8Array(this.latestHandshakePayload),
|
|
224
224
|
// callback to write data to characteristic C2
|
|
225
225
|
async (data) => {
|
|
226
|
-
updateValueCallback(Buffer.from(data
|
|
226
|
+
updateValueCallback(Buffer.from(Bytes.of(data)));
|
|
227
227
|
const { promise, resolver } = createPromise();
|
|
228
228
|
this.writeConformationResolver = resolver;
|
|
229
229
|
return promise;
|
|
@@ -263,9 +263,9 @@ class BlenoBleServer extends BleChannel {
|
|
|
263
263
|
}
|
|
264
264
|
async advertise(advertiseData, additionalAdvertisementData, intervalMs = 100) {
|
|
265
265
|
process.env["BLENO_ADVERTISING_INTERVAL"] = intervalMs.toString();
|
|
266
|
-
this.advertisingData = Buffer.from(advertiseData
|
|
266
|
+
this.advertisingData = Buffer.from(Bytes.of(advertiseData));
|
|
267
267
|
if (additionalAdvertisementData) {
|
|
268
|
-
this.additionalAdvertisingData = Buffer.from(additionalAdvertisementData
|
|
268
|
+
this.additionalAdvertisingData = Buffer.from(Bytes.of(additionalAdvertisementData));
|
|
269
269
|
} else {
|
|
270
270
|
this.additionalAdvertisingData = Buffer.alloc(0);
|
|
271
271
|
}
|
|
@@ -328,7 +328,7 @@ class BlenoBleServer extends BleChannel {
|
|
|
328
328
|
logger.debug(`Stopping Bleno`);
|
|
329
329
|
Bleno.stop();
|
|
330
330
|
}
|
|
331
|
-
// Channel<
|
|
331
|
+
// Channel<Bytes>
|
|
332
332
|
/**
|
|
333
333
|
* Send a Matter message to the connected device - need to do BTP assembly first.
|
|
334
334
|
*
|
|
@@ -340,7 +340,7 @@ class BlenoBleServer extends BleChannel {
|
|
|
340
340
|
}
|
|
341
341
|
await this.btpSession.sendMatterMessage(data);
|
|
342
342
|
}
|
|
343
|
-
// Channel<
|
|
343
|
+
// Channel<Bytes>
|
|
344
344
|
get name() {
|
|
345
345
|
return `${this.type}://${this.clientAddress}`;
|
|
346
346
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/BlenoBleServer.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["require"]
|
|
6
6
|
}
|
|
@@ -3,16 +3,16 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Channel, ChannelType, TransportInterface } from "#general";
|
|
6
|
+
import { Bytes, Channel, ChannelType, TransportInterface } from "#general";
|
|
7
7
|
import { BlePeripheralInterface } from "@matter/protocol";
|
|
8
8
|
import { BlenoBleServer } from "./BlenoBleServer.js";
|
|
9
9
|
export declare class BlenoPeripheralInterface implements BlePeripheralInterface {
|
|
10
10
|
private readonly blenoServer;
|
|
11
11
|
constructor(blenoServer: BlenoBleServer);
|
|
12
|
-
onData(listener: (socket: Channel<
|
|
12
|
+
onData(listener: (socket: Channel<Bytes>, data: Bytes) => void): TransportInterface.Listener;
|
|
13
13
|
close(): Promise<void>;
|
|
14
14
|
supports(type: ChannelType, address?: string): boolean;
|
|
15
|
-
advertise(advertiseData:
|
|
15
|
+
advertise(advertiseData: Bytes, additionalAdvertisementData?: Bytes, intervalMs?: number): Promise<void>;
|
|
16
16
|
stopAdvertising(): Promise<void>;
|
|
17
17
|
}
|
|
18
18
|
//# sourceMappingURL=BlenoPeripheralInterface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlenoPeripheralInterface.d.ts","sourceRoot":"","sources":["../../src/BlenoPeripheralInterface.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"BlenoPeripheralInterface.d.ts","sourceRoot":"","sources":["../../src/BlenoPeripheralInterface.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,qBAAa,wBAAyB,YAAW,sBAAsB;IACvD,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,EAAE,cAAc;IAGxD,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,GAAG,kBAAkB,CAAC,QAAQ;IAOtF,KAAK;IAIX,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM;IAY5C,SAAS,CAAC,aAAa,EAAE,KAAK,EAAE,2BAA2B,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,MAAM;IAIxF,eAAe;CAGlB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/BlenoPeripheralInterface.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAyB,mBAAuC;AAIzD,MAAM,yBAA2D;AAAA,EACpE,YAA6B,aAA6B;AAA7B;AAAA,EAA8B;AAAA;AAAA,EAG3D,OAAO,UAAsF;AACzF,SAAK,YAAY,yBAAyB,QAAQ;AAClD,WAAO;AAAA,MACH,OAAO,YAAY,MAAM,KAAK,MAAM;AAAA,IACxC;AAAA,EACJ;AAAA,EAEA,MAAM,QAAQ;AACV,UAAM,KAAK,YAAY,MAAM;AAAA,EACjC;AAAA,EAEA,SAAS,MAAmB,SAAkB;AAC1C,QAAI,SAAS,YAAY,KAAK;AAC1B,aAAO;AAAA,IACX;AAEA,QAAI,YAAY,QAAW;AACvB,aAAO;AAAA,IACX;AAEA,WAAO,KAAK,YAAY,kBAAkB;AAAA,EAC9C;AAAA,EAEA,UAAU,eAAsB,6BAAqC,YAAqB;AACtF,WAAO,KAAK,YAAY,UAAU,eAAe,6BAA6B,UAAU;AAAA,EAC5F;AAAA,EAEA,kBAAkB;AACd,WAAO,KAAK,YAAY,gBAAgB;AAAA,EAC5C;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -3,23 +3,23 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Channel, ChannelType, NetInterface, ServerAddress, TransportInterface } from "#general";
|
|
6
|
+
import { Bytes, Channel, ChannelType, NetInterface, ServerAddress, TransportInterface } from "#general";
|
|
7
7
|
import { BleChannel, BtpSessionHandler } from "#protocol";
|
|
8
8
|
import type { Characteristic, Peripheral } from "@stoprocent/noble";
|
|
9
9
|
import { BleScanner } from "./BleScanner.js";
|
|
10
10
|
export declare class NobleBleCentralInterface implements NetInterface {
|
|
11
11
|
#private;
|
|
12
12
|
constructor(bleScanner: BleScanner);
|
|
13
|
-
openChannel(address: ServerAddress, tryCount?: number): Promise<Channel<
|
|
14
|
-
onData(listener: (socket: Channel<
|
|
13
|
+
openChannel(address: ServerAddress, tryCount?: number): Promise<Channel<Bytes>>;
|
|
14
|
+
onData(listener: (socket: Channel<Bytes>, data: Bytes) => void): TransportInterface.Listener;
|
|
15
15
|
close(): Promise<void>;
|
|
16
16
|
supports(type: ChannelType, _address?: string): boolean;
|
|
17
17
|
}
|
|
18
|
-
export declare class NobleBleChannel extends BleChannel<
|
|
18
|
+
export declare class NobleBleChannel extends BleChannel<Bytes> {
|
|
19
19
|
#private;
|
|
20
20
|
private readonly peripheral;
|
|
21
21
|
private readonly btpSession;
|
|
22
|
-
static create(peripheral: Peripheral, characteristicC1ForWrite: Characteristic, characteristicC2ForSubscribe: Characteristic, onMatterMessageListener: (socket: Channel<
|
|
22
|
+
static create(peripheral: Peripheral, characteristicC1ForWrite: Characteristic, characteristicC2ForSubscribe: Characteristic, onMatterMessageListener: (socket: Channel<Bytes>, data: Bytes) => void, _additionalCommissioningRelatedData?: Bytes): Promise<NobleBleChannel>;
|
|
23
23
|
constructor(peripheral: Peripheral, btpSession: BtpSessionHandler);
|
|
24
24
|
get connected(): boolean;
|
|
25
25
|
/**
|
|
@@ -27,7 +27,7 @@ export declare class NobleBleChannel extends BleChannel<Uint8Array> {
|
|
|
27
27
|
*
|
|
28
28
|
* @param data
|
|
29
29
|
*/
|
|
30
|
-
send(data:
|
|
30
|
+
send(data: Bytes): Promise<void>;
|
|
31
31
|
get name(): string;
|
|
32
32
|
close(): Promise<void>;
|
|
33
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NobleBleChannel.d.ts","sourceRoot":"","sources":["../../src/NobleBleChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,OAAO,EACP,WAAW,EAIX,YAAY,EAEZ,aAAa,EAGb,kBAAkB,EAGrB,MAAM,UAAU,CAAC;AAClB,OAAO,EASH,UAAU,EAIV,iBAAiB,EACpB,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAkC7C,qBAAa,wBAAyB,YAAW,YAAY;;gBAQ7C,UAAU,EAAE,UAAU;IAIlC,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,SAAI,GAAG,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"NobleBleChannel.d.ts","sourceRoot":"","sources":["../../src/NobleBleChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EACL,OAAO,EACP,WAAW,EAIX,YAAY,EAEZ,aAAa,EAGb,kBAAkB,EAGrB,MAAM,UAAU,CAAC;AAClB,OAAO,EASH,UAAU,EAIV,iBAAiB,EACpB,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAkC7C,qBAAa,wBAAyB,YAAW,YAAY;;gBAQ7C,UAAU,EAAE,UAAU;IAIlC,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,SAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IA6S1E,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,GAAG,kBAAkB,CAAC,QAAQ;IAOtF,KAAK;IAaX,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,MAAM;CAMhD;AAED,qBAAa,eAAgB,SAAQ,UAAU,CAAC,KAAK,CAAC;;IAkH9C,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU;WAlHlB,MAAM,CACf,UAAU,EAAE,UAAU,EACtB,wBAAwB,EAAE,cAAc,EACxC,4BAA4B,EAAE,cAAc,EAC5C,uBAAuB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,EACtE,mCAAmC,CAAC,EAAE,KAAK,GAC5C,OAAO,CAAC,eAAe,CAAC;gBA2GN,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,iBAAiB;IAUlD,IAAI,SAAS,YAEZ;IAED;;;;OAIG;IACG,IAAI,CAAC,IAAI,EAAE,KAAK;IAgBtB,IAAI,IAAI,WAEP;IAEK,KAAK;CAUd"}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import {
|
|
7
|
+
Bytes,
|
|
7
8
|
ChannelType,
|
|
8
9
|
Diagnostic,
|
|
9
10
|
InternalError,
|
|
@@ -380,7 +381,7 @@ class NobleBleChannel extends BleChannel {
|
|
|
380
381
|
logger.debug(
|
|
381
382
|
`Peripheral ${peripheralAddress}: Sending BTP handshake request: ${Diagnostic.json(btpHandshakeRequest)}`
|
|
382
383
|
);
|
|
383
|
-
await characteristicC1ForWrite.writeAsync(Buffer.from(btpHandshakeRequest
|
|
384
|
+
await characteristicC1ForWrite.writeAsync(Buffer.from(Bytes.of(btpHandshakeRequest)), false);
|
|
384
385
|
characteristicC2ForSubscribe.once("data", handshakeHandler);
|
|
385
386
|
logger.debug(`Peripheral ${peripheralAddress}: Subscribing to C2 characteristic`);
|
|
386
387
|
await characteristicC2ForSubscribe.subscribeAsync();
|
|
@@ -389,7 +390,7 @@ class NobleBleChannel extends BleChannel {
|
|
|
389
390
|
new Uint8Array(handshakeResponse),
|
|
390
391
|
// callback to write data to characteristic C1
|
|
391
392
|
async (data) => {
|
|
392
|
-
return await characteristicC1ForWrite.writeAsync(Buffer.from(data
|
|
393
|
+
return await characteristicC1ForWrite.writeAsync(Buffer.from(Bytes.of(data)), false);
|
|
393
394
|
},
|
|
394
395
|
// callback to disconnect the BLE connection
|
|
395
396
|
async () => {
|
|
@@ -443,7 +444,7 @@ class NobleBleChannel extends BleChannel {
|
|
|
443
444
|
}
|
|
444
445
|
await this.btpSession.sendMatterMessage(data);
|
|
445
446
|
}
|
|
446
|
-
// Channel<
|
|
447
|
+
// Channel<Bytes>
|
|
447
448
|
get name() {
|
|
448
449
|
return `${this.type}://${this.peripheral.address}`;
|
|
449
450
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/NobleBleChannel.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["error"]
|
|
6
6
|
}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { Bytes } from "#general";
|
|
6
7
|
import type { Peripheral } from "@stoprocent/noble";
|
|
7
8
|
import { BleOptions } from "./NodeJsBle.js";
|
|
8
9
|
export declare class NobleBleClient {
|
|
@@ -13,7 +14,7 @@ export declare class NobleBleClient {
|
|
|
13
14
|
private nobleState;
|
|
14
15
|
private deviceDiscoveredCallback;
|
|
15
16
|
constructor(options?: BleOptions);
|
|
16
|
-
setDiscoveryCallback(callback: (peripheral: Peripheral, manufacturerData:
|
|
17
|
+
setDiscoveryCallback(callback: (peripheral: Peripheral, manufacturerData: Bytes) => void): void;
|
|
17
18
|
startScanning(): Promise<void>;
|
|
18
19
|
stopScanning(): Promise<void>;
|
|
19
20
|
private handleDiscoveredDevice;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NobleBleClient.d.ts","sourceRoot":"","sources":["../../src/NobleBleClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"NobleBleClient.d.ts","sourceRoot":"","sources":["../../src/NobleBleClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAsB,MAAM,UAAU,CAAC;AAGrD,OAAO,KAAK,EAAS,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAkB5C,qBAAa,cAAc;;IACvB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA2E;IACjH,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,wBAAwB,CAA0E;gBAG9F,OAAO,CAAC,EAAE,UAAU;IAqCzB,oBAAoB,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,KAAK,IAAI;IAOlF,aAAa;IAcb,YAAY;IASzB,OAAO,CAAC,sBAAsB;IAuC9B,KAAK;CAgBR"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Diagnostic, Logger } from "#general";
|
|
6
|
+
import { Bytes, Diagnostic, Logger } from "#general";
|
|
7
7
|
import { BLE_MATTER_SERVICE_UUID_SHORT } from "#protocol";
|
|
8
8
|
import { require as require2 } from "@matter/nodejs-ble/require";
|
|
9
9
|
import { platform } from "node:process";
|
|
@@ -96,8 +96,9 @@ class NobleBleClient {
|
|
|
96
96
|
logger.info(`Peripheral ${address} does not advertise Matter Service ... ignoring`);
|
|
97
97
|
return;
|
|
98
98
|
}
|
|
99
|
-
|
|
100
|
-
this.
|
|
99
|
+
const serviceDataBytes = Bytes.of(matterServiceData.data);
|
|
100
|
+
this.discoveredPeripherals.set(address, { peripheral, matterServiceData: serviceDataBytes });
|
|
101
|
+
this.deviceDiscoveredCallback?.(peripheral, serviceDataBytes);
|
|
101
102
|
}
|
|
102
103
|
close() {
|
|
103
104
|
if (this.#closing) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/NobleBleClient.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,YAAY,cAAc;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["require"]
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@matter/nodejs-ble",
|
|
3
|
-
"version": "0.16.0-alpha.0-
|
|
3
|
+
"version": "0.16.0-alpha.0-20250816-d22ad240d",
|
|
4
4
|
"description": "Matter BLE support for node.js",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"iot",
|
|
@@ -28,12 +28,12 @@
|
|
|
28
28
|
"build-clean": "matter-build --clean"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@matter/general": "0.16.0-alpha.0-
|
|
32
|
-
"@matter/protocol": "0.16.0-alpha.0-
|
|
33
|
-
"@matter/types": "0.16.0-alpha.0-
|
|
31
|
+
"@matter/general": "0.16.0-alpha.0-20250816-d22ad240d",
|
|
32
|
+
"@matter/protocol": "0.16.0-alpha.0-20250816-d22ad240d",
|
|
33
|
+
"@matter/types": "0.16.0-alpha.0-20250816-d22ad240d"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
|
-
"@matter/tools": "0.16.0-alpha.0-
|
|
36
|
+
"@matter/tools": "0.16.0-alpha.0-20250816-d22ad240d"
|
|
37
37
|
},
|
|
38
38
|
"optionalDependencies": {
|
|
39
39
|
"@stoprocent/bleno": "^0.11.4",
|
package/src/BleScanner.ts
CHANGED
|
@@ -104,7 +104,7 @@ export class BleScanner implements Scanner {
|
|
|
104
104
|
this.#finishWaiter(queryKey, resolvePromise);
|
|
105
105
|
}
|
|
106
106
|
|
|
107
|
-
#handleDiscoveredDevice(peripheral: Peripheral, manufacturerServiceData:
|
|
107
|
+
#handleDiscoveredDevice(peripheral: Peripheral, manufacturerServiceData: Bytes) {
|
|
108
108
|
const address = peripheral.address;
|
|
109
109
|
|
|
110
110
|
try {
|
package/src/BlenoBleServer.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { Channel, InternalError, Logger, Time, createPromise } from "#general";
|
|
7
|
+
import { Bytes, Channel, InternalError, Logger, Time, createPromise } from "#general";
|
|
8
8
|
import {
|
|
9
9
|
BLE_MATTER_C1_CHARACTERISTIC_UUID,
|
|
10
10
|
BLE_MATTER_C2_CHARACTERISTIC_UUID,
|
|
@@ -133,7 +133,7 @@ function initializeBleno(server: BlenoBleServer, hciId?: number) {
|
|
|
133
133
|
* Note: Bleno is only supporting a single connection at a time right now - mainly because it also only can announce
|
|
134
134
|
* one BLE device at a time!
|
|
135
135
|
*/
|
|
136
|
-
export class BlenoBleServer extends BleChannel<
|
|
136
|
+
export class BlenoBleServer extends BleChannel<Bytes> {
|
|
137
137
|
private state = "unknown";
|
|
138
138
|
isAdvertising = false;
|
|
139
139
|
private additionalAdvertisingData: Buffer = Buffer.alloc(0);
|
|
@@ -142,7 +142,7 @@ export class BlenoBleServer extends BleChannel<Uint8Array> {
|
|
|
142
142
|
private latestHandshakePayload: Buffer | undefined;
|
|
143
143
|
private btpSession: BtpSessionHandler | undefined;
|
|
144
144
|
|
|
145
|
-
private onMatterMessageListener: ((socket: Channel<
|
|
145
|
+
private onMatterMessageListener: ((socket: Channel<Bytes>, data: Bytes) => void) | undefined;
|
|
146
146
|
private writeConformationResolver: ((value: void) => void) | undefined;
|
|
147
147
|
|
|
148
148
|
public clientAddress: string | undefined;
|
|
@@ -286,8 +286,8 @@ export class BlenoBleServer extends BleChannel<Uint8Array> {
|
|
|
286
286
|
new Uint8Array(this.latestHandshakePayload),
|
|
287
287
|
|
|
288
288
|
// callback to write data to characteristic C2
|
|
289
|
-
async (data:
|
|
290
|
-
updateValueCallback(Buffer.from(data
|
|
289
|
+
async (data: Bytes) => {
|
|
290
|
+
updateValueCallback(Buffer.from(Bytes.of(data)));
|
|
291
291
|
const { promise, resolver } = createPromise<void>();
|
|
292
292
|
this.writeConformationResolver = resolver;
|
|
293
293
|
|
|
@@ -298,7 +298,7 @@ export class BlenoBleServer extends BleChannel<Uint8Array> {
|
|
|
298
298
|
async () => this.close(),
|
|
299
299
|
|
|
300
300
|
// callback to forward decoded and de-assembled Matter messages to ExchangeManager
|
|
301
|
-
async (data:
|
|
301
|
+
async (data: Bytes) => {
|
|
302
302
|
if (this.onMatterMessageListener === undefined) {
|
|
303
303
|
throw new InternalError(`No listener registered for Matter messages`);
|
|
304
304
|
}
|
|
@@ -331,13 +331,13 @@ export class BlenoBleServer extends BleChannel<Uint8Array> {
|
|
|
331
331
|
}
|
|
332
332
|
}
|
|
333
333
|
|
|
334
|
-
async advertise(advertiseData:
|
|
334
|
+
async advertise(advertiseData: Bytes, additionalAdvertisementData?: Bytes, intervalMs = 100) {
|
|
335
335
|
process.env["BLENO_ADVERTISING_INTERVAL"] = intervalMs.toString();
|
|
336
336
|
|
|
337
|
-
this.advertisingData = Buffer.from(advertiseData
|
|
337
|
+
this.advertisingData = Buffer.from(Bytes.of(advertiseData));
|
|
338
338
|
|
|
339
339
|
if (additionalAdvertisementData) {
|
|
340
|
-
this.additionalAdvertisingData = Buffer.from(additionalAdvertisementData
|
|
340
|
+
this.additionalAdvertisingData = Buffer.from(Bytes.of(additionalAdvertisementData));
|
|
341
341
|
} else {
|
|
342
342
|
this.additionalAdvertisingData = Buffer.alloc(0);
|
|
343
343
|
}
|
|
@@ -370,7 +370,7 @@ export class BlenoBleServer extends BleChannel<Uint8Array> {
|
|
|
370
370
|
}
|
|
371
371
|
}
|
|
372
372
|
|
|
373
|
-
setMatterMessageListener(listener: (socket: Channel<
|
|
373
|
+
setMatterMessageListener(listener: (socket: Channel<Bytes>, data: Bytes) => void) {
|
|
374
374
|
if (this.onMatterMessageListener !== undefined) {
|
|
375
375
|
throw new InternalError(`onData listener already set`);
|
|
376
376
|
}
|
|
@@ -416,20 +416,20 @@ export class BlenoBleServer extends BleChannel<Uint8Array> {
|
|
|
416
416
|
});*/
|
|
417
417
|
}
|
|
418
418
|
|
|
419
|
-
// Channel<
|
|
419
|
+
// Channel<Bytes>
|
|
420
420
|
/**
|
|
421
421
|
* Send a Matter message to the connected device - need to do BTP assembly first.
|
|
422
422
|
*
|
|
423
423
|
* @param data
|
|
424
424
|
*/
|
|
425
|
-
async send(data:
|
|
425
|
+
async send(data: Bytes) {
|
|
426
426
|
if (this.btpSession === undefined) {
|
|
427
427
|
throw new ChannelNotConnectedError(`Cannot send data, no BTP session initialized`);
|
|
428
428
|
}
|
|
429
429
|
await this.btpSession.sendMatterMessage(data);
|
|
430
430
|
}
|
|
431
431
|
|
|
432
|
-
// Channel<
|
|
432
|
+
// Channel<Bytes>
|
|
433
433
|
get name() {
|
|
434
434
|
return `${this.type}://${this.clientAddress}`;
|
|
435
435
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { Channel, ChannelType, TransportInterface } from "#general";
|
|
7
|
+
import { Bytes, Channel, ChannelType, TransportInterface } from "#general";
|
|
8
8
|
import { BlePeripheralInterface } from "@matter/protocol";
|
|
9
9
|
import { BlenoBleServer } from "./BlenoBleServer.js";
|
|
10
10
|
|
|
@@ -12,7 +12,7 @@ export class BlenoPeripheralInterface implements BlePeripheralInterface {
|
|
|
12
12
|
constructor(private readonly blenoServer: BlenoBleServer) {}
|
|
13
13
|
|
|
14
14
|
// TransportInterface
|
|
15
|
-
onData(listener: (socket: Channel<
|
|
15
|
+
onData(listener: (socket: Channel<Bytes>, data: Bytes) => void): TransportInterface.Listener {
|
|
16
16
|
this.blenoServer.setMatterMessageListener(listener);
|
|
17
17
|
return {
|
|
18
18
|
close: async () => await this.close(),
|
|
@@ -35,7 +35,7 @@ export class BlenoPeripheralInterface implements BlePeripheralInterface {
|
|
|
35
35
|
return this.blenoServer.clientAddress === address;
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
advertise(advertiseData:
|
|
38
|
+
advertise(advertiseData: Bytes, additionalAdvertisementData?: Bytes, intervalMs?: number) {
|
|
39
39
|
return this.blenoServer.advertise(advertiseData, additionalAdvertisementData, intervalMs);
|
|
40
40
|
}
|
|
41
41
|
|
package/src/NobleBleChannel.ts
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import {
|
|
8
|
+
Bytes,
|
|
8
9
|
Channel,
|
|
9
10
|
ChannelType,
|
|
10
11
|
Diagnostic,
|
|
@@ -74,14 +75,14 @@ export class NobleBleCentralInterface implements NetInterface {
|
|
|
74
75
|
#connectionsInProgress = new Set<ServerAddress>();
|
|
75
76
|
#connectionGuards = new Set<BleConnectionGuard>();
|
|
76
77
|
#openChannels = new Map<ServerAddress, Peripheral>();
|
|
77
|
-
#onMatterMessageListener: ((socket: Channel<
|
|
78
|
+
#onMatterMessageListener: ((socket: Channel<Bytes>, data: Bytes) => void) | undefined;
|
|
78
79
|
#closed = false;
|
|
79
80
|
|
|
80
81
|
constructor(bleScanner: BleScanner) {
|
|
81
82
|
this.#bleScanner = bleScanner;
|
|
82
83
|
}
|
|
83
84
|
|
|
84
|
-
openChannel(address: ServerAddress, tryCount = 1): Promise<Channel<
|
|
85
|
+
openChannel(address: ServerAddress, tryCount = 1): Promise<Channel<Bytes>> {
|
|
85
86
|
if (this.#closed) {
|
|
86
87
|
throw new NetworkError("Network interface is closed");
|
|
87
88
|
}
|
|
@@ -95,7 +96,7 @@ export class NobleBleCentralInterface implements NetInterface {
|
|
|
95
96
|
logger.debug(`Already resolved or rejected, ignore error:`, error);
|
|
96
97
|
}
|
|
97
98
|
}
|
|
98
|
-
function resolveOnce(value: Channel<
|
|
99
|
+
function resolveOnce(value: Channel<Bytes>) {
|
|
99
100
|
if (!resolvedOrRejected) {
|
|
100
101
|
resolvedOrRejected = true;
|
|
101
102
|
resolve(value);
|
|
@@ -263,7 +264,7 @@ export class NobleBleCentralInterface implements NetInterface {
|
|
|
263
264
|
|
|
264
265
|
let characteristicC1ForWrite: Characteristic | undefined;
|
|
265
266
|
let characteristicC2ForSubscribe: Characteristic | undefined;
|
|
266
|
-
let additionalCommissioningRelatedData:
|
|
267
|
+
let additionalCommissioningRelatedData: Bytes | undefined;
|
|
267
268
|
|
|
268
269
|
for (const characteristic of characteristics) {
|
|
269
270
|
// Loop through each characteristic and match them to the UUIDs that we know about.
|
|
@@ -382,7 +383,7 @@ export class NobleBleCentralInterface implements NetInterface {
|
|
|
382
383
|
});
|
|
383
384
|
}
|
|
384
385
|
|
|
385
|
-
onData(listener: (socket: Channel<
|
|
386
|
+
onData(listener: (socket: Channel<Bytes>, data: Bytes) => void): TransportInterface.Listener {
|
|
386
387
|
this.#onMatterMessageListener = listener;
|
|
387
388
|
return {
|
|
388
389
|
close: async () => await this.close(),
|
|
@@ -410,13 +411,13 @@ export class NobleBleCentralInterface implements NetInterface {
|
|
|
410
411
|
}
|
|
411
412
|
}
|
|
412
413
|
|
|
413
|
-
export class NobleBleChannel extends BleChannel<
|
|
414
|
+
export class NobleBleChannel extends BleChannel<Bytes> {
|
|
414
415
|
static async create(
|
|
415
416
|
peripheral: Peripheral,
|
|
416
417
|
characteristicC1ForWrite: Characteristic,
|
|
417
418
|
characteristicC2ForSubscribe: Characteristic,
|
|
418
|
-
onMatterMessageListener: (socket: Channel<
|
|
419
|
-
_additionalCommissioningRelatedData?:
|
|
419
|
+
onMatterMessageListener: (socket: Channel<Bytes>, data: Bytes) => void,
|
|
420
|
+
_additionalCommissioningRelatedData?: Bytes,
|
|
420
421
|
): Promise<NobleBleChannel> {
|
|
421
422
|
const { address: peripheralAddress } = peripheral;
|
|
422
423
|
let mtu = peripheral.mtu ?? 0;
|
|
@@ -471,7 +472,7 @@ export class NobleBleChannel extends BleChannel<Uint8Array> {
|
|
|
471
472
|
logger.debug(
|
|
472
473
|
`Peripheral ${peripheralAddress}: Sending BTP handshake request: ${Diagnostic.json(btpHandshakeRequest)}`,
|
|
473
474
|
);
|
|
474
|
-
await characteristicC1ForWrite.writeAsync(Buffer.from(btpHandshakeRequest
|
|
475
|
+
await characteristicC1ForWrite.writeAsync(Buffer.from(Bytes.of(btpHandshakeRequest)), false);
|
|
475
476
|
|
|
476
477
|
characteristicC2ForSubscribe.once("data", handshakeHandler);
|
|
477
478
|
|
|
@@ -483,8 +484,8 @@ export class NobleBleChannel extends BleChannel<Uint8Array> {
|
|
|
483
484
|
const btpSession = await BtpSessionHandler.createAsCentral(
|
|
484
485
|
new Uint8Array(handshakeResponse),
|
|
485
486
|
// callback to write data to characteristic C1
|
|
486
|
-
async (data:
|
|
487
|
-
return await characteristicC1ForWrite.writeAsync(Buffer.from(data
|
|
487
|
+
async (data: Bytes) => {
|
|
488
|
+
return await characteristicC1ForWrite.writeAsync(Buffer.from(Bytes.of(data)), false);
|
|
488
489
|
},
|
|
489
490
|
// callback to disconnect the BLE connection
|
|
490
491
|
async () => {
|
|
@@ -501,7 +502,7 @@ export class NobleBleChannel extends BleChannel<Uint8Array> {
|
|
|
501
502
|
},
|
|
502
503
|
|
|
503
504
|
// callback to forward decoded and de-assembled Matter messages to ExchangeManager
|
|
504
|
-
async (data:
|
|
505
|
+
async (data: Bytes) => {
|
|
505
506
|
if (onMatterMessageListener === undefined) {
|
|
506
507
|
throw new InternalError(`No listener registered for Matter messages`);
|
|
507
508
|
}
|
|
@@ -544,7 +545,7 @@ export class NobleBleChannel extends BleChannel<Uint8Array> {
|
|
|
544
545
|
*
|
|
545
546
|
* @param data
|
|
546
547
|
*/
|
|
547
|
-
async send(data:
|
|
548
|
+
async send(data: Bytes) {
|
|
548
549
|
if (!this.connected) {
|
|
549
550
|
logger.debug(
|
|
550
551
|
`Peripheral ${this.peripheral.address}: Cannot send data because not connected to peripheral.`,
|
|
@@ -559,7 +560,7 @@ export class NobleBleChannel extends BleChannel<Uint8Array> {
|
|
|
559
560
|
await this.btpSession.sendMatterMessage(data);
|
|
560
561
|
}
|
|
561
562
|
|
|
562
|
-
// Channel<
|
|
563
|
+
// Channel<Bytes>
|
|
563
564
|
get name() {
|
|
564
565
|
return `${this.type}://${this.peripheral.address}`;
|
|
565
566
|
}
|
package/src/NobleBleClient.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { Diagnostic, Logger } from "#general";
|
|
7
|
+
import { Bytes, Diagnostic, Logger } from "#general";
|
|
8
8
|
import { BLE_MATTER_SERVICE_UUID_SHORT } from "#protocol";
|
|
9
9
|
import { require } from "@matter/nodejs-ble/require";
|
|
10
10
|
import type { Noble, Peripheral } from "@stoprocent/noble";
|
|
@@ -28,14 +28,11 @@ function loadNoble(hciId?: number) {
|
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
export class NobleBleClient {
|
|
31
|
-
private readonly discoveredPeripherals = new Map<
|
|
32
|
-
string,
|
|
33
|
-
{ peripheral: Peripheral; matterServiceData: Uint8Array }
|
|
34
|
-
>();
|
|
31
|
+
private readonly discoveredPeripherals = new Map<string, { peripheral: Peripheral; matterServiceData: Bytes }>();
|
|
35
32
|
private shouldScan = false;
|
|
36
33
|
private isScanning = false;
|
|
37
34
|
private nobleState = "unknown";
|
|
38
|
-
private deviceDiscoveredCallback: ((peripheral: Peripheral, manufacturerData:
|
|
35
|
+
private deviceDiscoveredCallback: ((peripheral: Peripheral, manufacturerData: Bytes) => void) | undefined;
|
|
39
36
|
#closing = false;
|
|
40
37
|
|
|
41
38
|
constructor(options?: BleOptions) {
|
|
@@ -75,7 +72,7 @@ export class NobleBleClient {
|
|
|
75
72
|
noble.on("scanStop", () => (this.isScanning = false));
|
|
76
73
|
}
|
|
77
74
|
|
|
78
|
-
public setDiscoveryCallback(callback: (peripheral: Peripheral, manufacturerData:
|
|
75
|
+
public setDiscoveryCallback(callback: (peripheral: Peripheral, manufacturerData: Bytes) => void) {
|
|
79
76
|
this.deviceDiscoveredCallback = callback;
|
|
80
77
|
for (const { peripheral, matterServiceData } of this.discoveredPeripherals.values()) {
|
|
81
78
|
this.deviceDiscoveredCallback(peripheral, matterServiceData);
|
|
@@ -138,9 +135,10 @@ export class NobleBleClient {
|
|
|
138
135
|
return;
|
|
139
136
|
}
|
|
140
137
|
|
|
141
|
-
|
|
138
|
+
const serviceDataBytes = Bytes.of(matterServiceData.data);
|
|
139
|
+
this.discoveredPeripherals.set(address, { peripheral, matterServiceData: serviceDataBytes });
|
|
142
140
|
|
|
143
|
-
this.deviceDiscoveredCallback?.(peripheral,
|
|
141
|
+
this.deviceDiscoveredCallback?.(peripheral, serviceDataBytes);
|
|
144
142
|
}
|
|
145
143
|
|
|
146
144
|
close() {
|