zigbee-herdsman 0.29.0 → 0.30.0
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/.release-please-manifest.json +1 -1
- package/CHANGELOG.md +19 -0
- package/dist/adapter/adapter.js +39 -11
- package/dist/adapter/adapter.js.map +1 -1
- package/dist/adapter/deconz/adapter/deconzAdapter.js +94 -66
- package/dist/adapter/deconz/adapter/deconzAdapter.js.map +1 -1
- package/dist/adapter/deconz/adapter/index.js +8 -2
- package/dist/adapter/deconz/adapter/index.js.map +1 -1
- package/dist/adapter/deconz/driver/constants.js +3 -1
- package/dist/adapter/deconz/driver/constants.js.map +1 -1
- package/dist/adapter/deconz/driver/driver.js +68 -57
- package/dist/adapter/deconz/driver/driver.js.map +1 -1
- package/dist/adapter/deconz/driver/frame.js +3 -1
- package/dist/adapter/deconz/driver/frame.js.map +1 -1
- package/dist/adapter/deconz/driver/frameParser.js +41 -36
- package/dist/adapter/deconz/driver/frameParser.js.map +1 -1
- package/dist/adapter/deconz/driver/parser.js +34 -6
- package/dist/adapter/deconz/driver/parser.js.map +1 -1
- package/dist/adapter/deconz/driver/writer.js +34 -6
- package/dist/adapter/deconz/driver/writer.js.map +1 -1
- package/dist/adapter/events.js +4 -2
- package/dist/adapter/events.js.map +1 -1
- package/dist/adapter/ezsp/adapter/backup.js +15 -8
- package/dist/adapter/ezsp/adapter/backup.js.map +1 -1
- package/dist/adapter/ezsp/adapter/ezspAdapter.js +81 -53
- package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -1
- package/dist/adapter/ezsp/adapter/index.js +8 -2
- package/dist/adapter/ezsp/adapter/index.js.map +1 -1
- package/dist/adapter/ezsp/driver/commands.js +628 -629
- package/dist/adapter/ezsp/driver/commands.js.map +1 -1
- package/dist/adapter/ezsp/driver/consts.js +13 -10
- package/dist/adapter/ezsp/driver/consts.js.map +1 -1
- package/dist/adapter/ezsp/driver/driver.js +93 -86
- package/dist/adapter/ezsp/driver/driver.js.map +1 -1
- package/dist/adapter/ezsp/driver/ezsp.js +100 -67
- package/dist/adapter/ezsp/driver/ezsp.js.map +1 -1
- package/dist/adapter/ezsp/driver/index.js +7 -3
- package/dist/adapter/ezsp/driver/index.js.map +1 -1
- package/dist/adapter/ezsp/driver/multicast.js +18 -11
- package/dist/adapter/ezsp/driver/multicast.js.map +1 -1
- package/dist/adapter/ezsp/driver/parser.js +35 -5
- package/dist/adapter/ezsp/driver/parser.js.map +1 -1
- package/dist/adapter/ezsp/driver/types/basic.js +41 -19
- package/dist/adapter/ezsp/driver/types/basic.js.map +1 -1
- package/dist/adapter/ezsp/driver/types/index.js +119 -12
- package/dist/adapter/ezsp/driver/types/index.js.map +1 -1
- package/dist/adapter/ezsp/driver/types/named.js +135 -55
- package/dist/adapter/ezsp/driver/types/named.js.map +1 -1
- package/dist/adapter/ezsp/driver/types/struct.js +118 -47
- package/dist/adapter/ezsp/driver/types/struct.js.map +1 -1
- package/dist/adapter/ezsp/driver/uart.js +54 -24
- package/dist/adapter/ezsp/driver/uart.js.map +1 -1
- package/dist/adapter/ezsp/driver/utils/crc16ccitt.js +3 -1
- package/dist/adapter/ezsp/driver/utils/crc16ccitt.js.map +1 -1
- package/dist/adapter/ezsp/driver/utils/index.js +25 -16
- package/dist/adapter/ezsp/driver/utils/index.js.map +1 -1
- package/dist/adapter/ezsp/driver/writer.js +37 -7
- package/dist/adapter/ezsp/driver/writer.js.map +1 -1
- package/dist/adapter/index.js +35 -4
- package/dist/adapter/index.js.map +1 -1
- package/dist/adapter/serialPort.js +8 -4
- package/dist/adapter/serialPort.js.map +1 -1
- package/dist/adapter/serialPortUtils.js +9 -7
- package/dist/adapter/serialPortUtils.js.map +1 -1
- package/dist/adapter/socketPortUtils.js +3 -1
- package/dist/adapter/socketPortUtils.js.map +1 -1
- package/dist/adapter/tstype.js +2 -1
- package/dist/adapter/z-stack/adapter/adapter-backup.js +95 -65
- package/dist/adapter/z-stack/adapter/adapter-backup.js.map +1 -1
- package/dist/adapter/z-stack/adapter/adapter-nv-memory.js +23 -19
- package/dist/adapter/z-stack/adapter/adapter-nv-memory.js.map +1 -1
- package/dist/adapter/z-stack/adapter/endpoints.js +29 -3
- package/dist/adapter/z-stack/adapter/endpoints.js.map +1 -1
- package/dist/adapter/z-stack/adapter/index.js +8 -2
- package/dist/adapter/z-stack/adapter/index.js.map +1 -1
- package/dist/adapter/z-stack/adapter/manager.js +99 -69
- package/dist/adapter/z-stack/adapter/manager.js.map +1 -1
- package/dist/adapter/z-stack/adapter/tstype.js +4 -2
- package/dist/adapter/z-stack/adapter/tstype.js.map +1 -1
- package/dist/adapter/z-stack/adapter/zStackAdapter.js +76 -48
- package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +1 -1
- package/dist/adapter/z-stack/constants/af.js +3 -1
- package/dist/adapter/z-stack/constants/af.js.map +1 -1
- package/dist/adapter/z-stack/constants/common.js +19 -16
- package/dist/adapter/z-stack/constants/common.js.map +1 -1
- package/dist/adapter/z-stack/constants/dbg.js +3 -1
- package/dist/adapter/z-stack/constants/dbg.js.map +1 -1
- package/dist/adapter/z-stack/constants/index.js +47 -10
- package/dist/adapter/z-stack/constants/index.js.map +1 -1
- package/dist/adapter/z-stack/constants/mac.js +3 -1
- package/dist/adapter/z-stack/constants/mac.js.map +1 -1
- package/dist/adapter/z-stack/constants/sapi.js +3 -1
- package/dist/adapter/z-stack/constants/sapi.js.map +1 -1
- package/dist/adapter/z-stack/constants/sys.js +3 -1
- package/dist/adapter/z-stack/constants/sys.js.map +1 -1
- package/dist/adapter/z-stack/constants/util.js +3 -1
- package/dist/adapter/z-stack/constants/util.js.map +1 -1
- package/dist/adapter/z-stack/constants/utils.js +7 -3
- package/dist/adapter/z-stack/constants/utils.js.map +1 -1
- package/dist/adapter/z-stack/constants/zdo.js +3 -1
- package/dist/adapter/z-stack/constants/zdo.js.map +1 -1
- package/dist/adapter/z-stack/models/index.js +17 -1
- package/dist/adapter/z-stack/models/index.js.map +1 -1
- package/dist/adapter/z-stack/models/startup-options.js +2 -1
- package/dist/adapter/z-stack/structs/entries/address-manager-entry.js +9 -5
- package/dist/adapter/z-stack/structs/entries/address-manager-entry.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/address-manager-table.js +9 -5
- package/dist/adapter/z-stack/structs/entries/address-manager-table.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js +7 -3
- package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js +9 -5
- package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js +7 -3
- package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js +9 -5
- package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/channel-list.js +6 -2
- package/dist/adapter/z-stack/structs/entries/channel-list.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/has-configured.js +6 -2
- package/dist/adapter/z-stack/structs/entries/has-configured.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/index.js +32 -16
- package/dist/adapter/z-stack/structs/entries/index.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nib.js +10 -6
- package/dist/adapter/z-stack/structs/entries/nib.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js +6 -2
- package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-key.js +6 -2
- package/dist/adapter/z-stack/structs/entries/nwk-key.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js +6 -2
- package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js +6 -2
- package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js +9 -5
- package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/security-manager-entry.js +9 -5
- package/dist/adapter/z-stack/structs/entries/security-manager-entry.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/security-manager-table.js +10 -6
- package/dist/adapter/z-stack/structs/entries/security-manager-table.js.map +1 -1
- package/dist/adapter/z-stack/structs/index.js +20 -4
- package/dist/adapter/z-stack/structs/index.js.map +1 -1
- package/dist/adapter/z-stack/structs/serializable-memory-object.js +2 -1
- package/dist/adapter/z-stack/structs/struct.js +5 -1
- package/dist/adapter/z-stack/structs/struct.js.map +1 -1
- package/dist/adapter/z-stack/structs/table.js +5 -1
- package/dist/adapter/z-stack/structs/table.js.map +1 -1
- package/dist/adapter/z-stack/unpi/constants.js +12 -3
- package/dist/adapter/z-stack/unpi/constants.js.map +1 -1
- package/dist/adapter/z-stack/unpi/frame.js +9 -7
- package/dist/adapter/z-stack/unpi/frame.js.map +1 -1
- package/dist/adapter/z-stack/unpi/index.js +37 -5
- package/dist/adapter/z-stack/unpi/index.js.map +1 -1
- package/dist/adapter/z-stack/unpi/parser.js +40 -12
- package/dist/adapter/z-stack/unpi/parser.js.map +1 -1
- package/dist/adapter/z-stack/unpi/writer.js +32 -4
- package/dist/adapter/z-stack/unpi/writer.js.map +1 -1
- package/dist/adapter/z-stack/utils/channel-list.js +11 -5
- package/dist/adapter/z-stack/utils/channel-list.js.map +1 -1
- package/dist/adapter/z-stack/utils/index.js +18 -2
- package/dist/adapter/z-stack/utils/index.js.map +1 -1
- package/dist/adapter/z-stack/utils/network-options.js +7 -3
- package/dist/adapter/z-stack/utils/network-options.js.map +1 -1
- package/dist/adapter/z-stack/znp/buffaloZnp.js +5 -3
- package/dist/adapter/z-stack/znp/buffaloZnp.js.map +1 -1
- package/dist/adapter/z-stack/znp/definition.js +1285 -1280
- package/dist/adapter/z-stack/znp/definition.js.map +1 -1
- package/dist/adapter/z-stack/znp/index.js +10 -3
- package/dist/adapter/z-stack/znp/index.js.map +1 -1
- package/dist/adapter/z-stack/znp/parameterType.js +3 -1
- package/dist/adapter/z-stack/znp/parameterType.js.map +1 -1
- package/dist/adapter/z-stack/znp/tstype.js +2 -1
- package/dist/adapter/z-stack/znp/znp.js +81 -53
- package/dist/adapter/z-stack/znp/znp.js.map +1 -1
- package/dist/adapter/z-stack/znp/zpiObject.js +29 -24
- package/dist/adapter/z-stack/znp/zpiObject.js.map +1 -1
- package/dist/adapter/zigate/adapter/index.js +8 -2
- package/dist/adapter/zigate/adapter/index.js.map +1 -1
- package/dist/adapter/zigate/adapter/zigateAdapter.js +87 -59
- package/dist/adapter/zigate/adapter/zigateAdapter.js.map +1 -1
- package/dist/adapter/zigate/debug.js +9 -3
- package/dist/adapter/zigate/debug.js.map +1 -1
- package/dist/adapter/zigate/driver/buffaloZiGate.js +9 -7
- package/dist/adapter/zigate/driver/buffaloZiGate.js.map +1 -1
- package/dist/adapter/zigate/driver/commandType.js +50 -45
- package/dist/adapter/zigate/driver/commandType.js.map +1 -1
- package/dist/adapter/zigate/driver/constants.js +34 -31
- package/dist/adapter/zigate/driver/constants.js.map +1 -1
- package/dist/adapter/zigate/driver/frame.js +6 -3
- package/dist/adapter/zigate/driver/frame.js.map +1 -1
- package/dist/adapter/zigate/driver/messageType.js +30 -27
- package/dist/adapter/zigate/driver/messageType.js.map +1 -1
- package/dist/adapter/zigate/driver/parameterType.js +3 -1
- package/dist/adapter/zigate/driver/parameterType.js.map +1 -1
- package/dist/adapter/zigate/driver/ziGateObject.js +18 -13
- package/dist/adapter/zigate/driver/ziGateObject.js.map +1 -1
- package/dist/adapter/zigate/driver/zigate.js +47 -41
- package/dist/adapter/zigate/driver/zigate.js.map +1 -1
- package/dist/buffalo/buffalo.js +5 -3
- package/dist/buffalo/buffalo.js.map +1 -1
- package/dist/buffalo/index.js +33 -3
- package/dist/buffalo/index.js.map +1 -1
- package/dist/buffalo/tstype.js +2 -1
- package/dist/controller/controller.js +108 -80
- package/dist/controller/controller.js.map +1 -1
- package/dist/controller/database.js +16 -11
- package/dist/controller/database.js.map +1 -1
- package/dist/controller/events.js +5 -2
- package/dist/controller/events.js.map +1 -1
- package/dist/controller/greenPower.js +44 -16
- package/dist/controller/greenPower.js.map +1 -1
- package/dist/controller/helpers/index.js +28 -2
- package/dist/controller/helpers/index.js.map +1 -1
- package/dist/controller/helpers/request.js +3 -1
- package/dist/controller/helpers/request.js.map +1 -1
- package/dist/controller/helpers/requestQueue.js +9 -4
- package/dist/controller/helpers/requestQueue.js.map +1 -1
- package/dist/controller/helpers/zclFrameConverter.js +12 -5
- package/dist/controller/helpers/zclFrameConverter.js.map +1 -1
- package/dist/controller/helpers/zclTransactionSequenceNumber.js +3 -1
- package/dist/controller/helpers/zclTransactionSequenceNumber.js.map +1 -1
- package/dist/controller/index.js +8 -5
- package/dist/controller/index.js.map +1 -1
- package/dist/controller/logger-stub.js +2 -1
- package/dist/controller/model/device.js +67 -39
- package/dist/controller/model/device.js.map +1 -1
- package/dist/controller/model/endpoint.js +73 -45
- package/dist/controller/model/endpoint.js.map +1 -1
- package/dist/controller/model/entity.js +8 -3
- package/dist/controller/model/entity.js.map +1 -1
- package/dist/controller/model/group.js +52 -24
- package/dist/controller/model/group.js.map +1 -1
- package/dist/controller/model/index.js +14 -5
- package/dist/controller/model/index.js.map +1 -1
- package/dist/controller/touchlink.js +37 -9
- package/dist/controller/touchlink.js.map +1 -1
- package/dist/controller/tstype.js +4 -2
- package/dist/controller/tstype.js.map +1 -1
- package/dist/index.js +33 -3
- package/dist/index.js.map +1 -1
- package/dist/models/backup-storage-legacy.js +2 -1
- package/dist/models/backup-storage-unified.js +2 -1
- package/dist/models/backup.js +2 -1
- package/dist/models/index.js +20 -4
- package/dist/models/index.js.map +1 -1
- package/dist/models/network-options.js +2 -1
- package/dist/utils/assertString.js +3 -1
- package/dist/utils/assertString.js.map +1 -1
- package/dist/utils/backup.js +37 -8
- package/dist/utils/backup.js.map +1 -1
- package/dist/utils/equalsPartial.js +8 -3
- package/dist/utils/equalsPartial.js.map +1 -1
- package/dist/utils/index.js +45 -9
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/isNumberArray.js +3 -1
- package/dist/utils/isNumberArray.js.map +1 -1
- package/dist/utils/queue.js +3 -1
- package/dist/utils/queue.js.map +1 -1
- package/dist/utils/realpathSync.js +8 -3
- package/dist/utils/realpathSync.js.map +1 -1
- package/dist/utils/wait.js +3 -1
- package/dist/utils/wait.js.map +1 -1
- package/dist/utils/waitress.js +3 -1
- package/dist/utils/waitress.js.map +1 -1
- package/dist/zcl/buffaloZcl.js +44 -16
- package/dist/zcl/buffaloZcl.js.map +1 -1
- package/dist/zcl/definition/buffaloZclDataType.js +3 -1
- package/dist/zcl/definition/buffaloZclDataType.js.map +1 -1
- package/dist/zcl/definition/cluster.d.ts.map +1 -1
- package/dist/zcl/definition/cluster.js +2371 -2352
- package/dist/zcl/definition/cluster.js.map +1 -1
- package/dist/zcl/definition/dataType.js +3 -1
- package/dist/zcl/definition/dataType.js.map +1 -1
- package/dist/zcl/definition/direction.js +3 -1
- package/dist/zcl/definition/direction.js.map +1 -1
- package/dist/zcl/definition/endpointDeviceType.js +3 -1
- package/dist/zcl/definition/endpointDeviceType.js.map +1 -1
- package/dist/zcl/definition/foundation.js +58 -53
- package/dist/zcl/definition/foundation.js.map +1 -1
- package/dist/zcl/definition/frameControl.js +2 -1
- package/dist/zcl/definition/frameType.js +3 -1
- package/dist/zcl/definition/frameType.js.map +1 -1
- package/dist/zcl/definition/index.js +51 -12
- package/dist/zcl/definition/index.js.map +1 -1
- package/dist/zcl/definition/manufacturerCode.js +3 -1
- package/dist/zcl/definition/manufacturerCode.js.map +1 -1
- package/dist/zcl/definition/powerSource.js +3 -1
- package/dist/zcl/definition/powerSource.js.map +1 -1
- package/dist/zcl/definition/status.js +3 -1
- package/dist/zcl/definition/status.js.map +1 -1
- package/dist/zcl/definition/tstype.js +2 -1
- package/dist/zcl/index.js +55 -14
- package/dist/zcl/index.js.map +1 -1
- package/dist/zcl/tstype.js +4 -2
- package/dist/zcl/tstype.js.map +1 -1
- package/dist/zcl/utils.js +27 -22
- package/dist/zcl/utils.js.map +1 -1
- package/dist/zcl/zclFrame.js +70 -42
- package/dist/zcl/zclFrame.js.map +1 -1
- package/dist/zcl/zclHeader.js +2 -1
- package/dist/zcl/zclStatusError.js +8 -3
- package/dist/zcl/zclStatusError.js.map +1 -1
- package/package.json +1 -1
- package/tsconfig.json +1 -1
|
@@ -1,8 +1,36 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
const stream = __importStar(require("stream"));
|
|
30
|
+
const constants_1 = require("./constants");
|
|
31
|
+
const frame_1 = __importDefault(require("./frame"));
|
|
32
|
+
const debug_1 = __importDefault(require("debug"));
|
|
33
|
+
const debug = (0, debug_1.default)('zigbee-herdsman:adapter:zStack:unpi:parser');
|
|
6
34
|
class Parser extends stream.Transform {
|
|
7
35
|
buffer;
|
|
8
36
|
constructor() {
|
|
@@ -17,21 +45,21 @@ class Parser extends stream.Transform {
|
|
|
17
45
|
}
|
|
18
46
|
parseNext() {
|
|
19
47
|
debug(`--- parseNext [${[...this.buffer]}]`);
|
|
20
|
-
if (this.buffer.length !== 0 && this.buffer.readUInt8(0) !== SOF) {
|
|
48
|
+
if (this.buffer.length !== 0 && this.buffer.readUInt8(0) !== constants_1.SOF) {
|
|
21
49
|
// Buffer doesn't start with SOF, skip till SOF.
|
|
22
|
-
const index = this.buffer.indexOf(SOF);
|
|
50
|
+
const index = this.buffer.indexOf(constants_1.SOF);
|
|
23
51
|
if (index !== -1) {
|
|
24
52
|
this.buffer = this.buffer.slice(index, this.buffer.length);
|
|
25
53
|
}
|
|
26
54
|
}
|
|
27
|
-
if (this.buffer.length >= MinMessageLength && this.buffer.readUInt8(0) == SOF) {
|
|
28
|
-
const dataLength = this.buffer[PositionDataLength];
|
|
29
|
-
const fcsPosition = DataStart + dataLength;
|
|
55
|
+
if (this.buffer.length >= constants_1.MinMessageLength && this.buffer.readUInt8(0) == constants_1.SOF) {
|
|
56
|
+
const dataLength = this.buffer[constants_1.PositionDataLength];
|
|
57
|
+
const fcsPosition = constants_1.DataStart + dataLength;
|
|
30
58
|
const frameLength = fcsPosition + 1;
|
|
31
59
|
if (this.buffer.length >= frameLength) {
|
|
32
60
|
const frameBuffer = this.buffer.slice(0, frameLength);
|
|
33
61
|
try {
|
|
34
|
-
const frame =
|
|
62
|
+
const frame = frame_1.default.fromBuffer(dataLength, fcsPosition, frameBuffer);
|
|
35
63
|
debug(`--> parsed ${frame}`);
|
|
36
64
|
this.emit('parsed', frame);
|
|
37
65
|
}
|
|
@@ -44,5 +72,5 @@ class Parser extends stream.Transform {
|
|
|
44
72
|
}
|
|
45
73
|
}
|
|
46
74
|
}
|
|
47
|
-
|
|
75
|
+
exports.default = Parser;
|
|
48
76
|
//# sourceMappingURL=parser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../../src/adapter/z-stack/unpi/parser.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../../src/adapter/z-stack/unpi/parser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AACjC,2CAAiF;AACjF,oDAA4B;AAC5B,kDAA0B;AAE1B,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,4CAA4C,CAAC,CAAC;AAElE,MAAM,MAAO,SAAQ,MAAM,CAAC,SAAS;IACzB,MAAM,CAAS;IAEvB;QACI,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;IAEM,UAAU,CAAC,KAAa,EAAE,CAAS,EAAE,EAAc;QACtD,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;QAClD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,EAAE,EAAE,CAAC;IACT,CAAC;IAEO,SAAS;QACb,KAAK,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE7C,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,eAAG,EAAE,CAAC;YAC/D,gDAAgD;YAChD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,eAAG,CAAC,CAAC;YACvC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC/D,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,4BAAgB,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,eAAG,EAAE,CAAC;YAC5E,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,8BAAkB,CAAC,CAAC;YACnD,MAAM,WAAW,GAAG,qBAAS,GAAG,UAAU,CAAC;YAC3C,MAAM,WAAW,GAAG,WAAW,GAAG,CAAC,CAAC;YAEpC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,WAAW,EAAE,CAAC;gBACpC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;gBAEtD,IAAI,CAAC;oBACD,MAAM,KAAK,GAAG,eAAK,CAAC,UAAU,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;oBACrE,KAAK,CAAC,cAAc,KAAK,EAAE,CAAC,CAAC;oBAC7B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,KAAK,CAAC,aAAa,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;gBACtC,CAAC;gBAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACjE,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AAED,kBAAe,MAAM,CAAC"}
|
|
@@ -1,6 +1,34 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
const stream = __importStar(require("stream"));
|
|
30
|
+
const debug_1 = __importDefault(require("debug"));
|
|
31
|
+
const debug = (0, debug_1.default)('zigbee-herdsman:adapter:zStack:unpi:writer');
|
|
4
32
|
class Writer extends stream.Readable {
|
|
5
33
|
writeFrame(frame) {
|
|
6
34
|
const buffer = frame.toBuffer();
|
|
@@ -13,5 +41,5 @@ class Writer extends stream.Readable {
|
|
|
13
41
|
}
|
|
14
42
|
_read() { }
|
|
15
43
|
}
|
|
16
|
-
|
|
44
|
+
exports.default = Writer;
|
|
17
45
|
//# sourceMappingURL=writer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writer.js","sourceRoot":"","sources":["../../../../src/adapter/z-stack/unpi/writer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"writer.js","sourceRoot":"","sources":["../../../../src/adapter/z-stack/unpi/writer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AAEjC,kDAA0B;AAE1B,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,4CAA4C,CAAC,CAAC;AAElE,MAAM,MAAO,SAAQ,MAAM,CAAC,QAAQ;IACzB,UAAU,CAAC,KAAY;QAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAChC,KAAK,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAEM,WAAW,CAAC,MAAc;QAC7B,KAAK,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAEM,KAAK,KAAU,CAAC;CAC1B;AAED,kBAAe,MAAM,CAAC"}
|
|
@@ -1,18 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.compareChannelLists = exports.packChannelList = exports.unpackChannelList = void 0;
|
|
1
4
|
/**
|
|
2
5
|
* Converts packed `uint32` channel list to array of channel numbers.
|
|
3
6
|
*
|
|
4
7
|
* @param packedList Packed channel list value.
|
|
5
8
|
*/
|
|
6
|
-
|
|
9
|
+
const unpackChannelList = (packedList) => {
|
|
7
10
|
return Array(26 - 11 + 1).fill(0).map((_, i) => 11 + i).filter(c => ((1 << c) & packedList) > 0);
|
|
8
11
|
};
|
|
12
|
+
exports.unpackChannelList = unpackChannelList;
|
|
9
13
|
/**
|
|
10
14
|
* Converts array of channel numbers to packed `uint32` structure represented as number.
|
|
11
15
|
* Supported channel range is 11 - 29.
|
|
12
16
|
*
|
|
13
17
|
* @param channelList List of channels to be packed.
|
|
14
18
|
*/
|
|
15
|
-
|
|
19
|
+
const packChannelList = (channelList) => {
|
|
16
20
|
const invalidChannel = channelList.find(c => c < 11 || c > 26);
|
|
17
21
|
/* istanbul ignore next */
|
|
18
22
|
if (invalidChannel !== undefined) {
|
|
@@ -20,16 +24,18 @@ export const packChannelList = (channelList) => {
|
|
|
20
24
|
}
|
|
21
25
|
return channelList.reduce((a, c) => a + (1 << c), 0);
|
|
22
26
|
};
|
|
27
|
+
exports.packChannelList = packChannelList;
|
|
23
28
|
/**
|
|
24
29
|
* Compares two channel lists. Either number arrays or packed `uint32` numbers may be provided.
|
|
25
30
|
*
|
|
26
31
|
* @param list1 First list to compare.
|
|
27
32
|
* @param list2 Second list to compare.
|
|
28
33
|
*/
|
|
29
|
-
|
|
34
|
+
const compareChannelLists = (list1, list2) => {
|
|
30
35
|
/* istanbul ignore next */
|
|
31
|
-
list1 = Array.isArray(list1) ? packChannelList(list1) : list1;
|
|
32
|
-
list2 = Array.isArray(list2) ? packChannelList(list2) : list2;
|
|
36
|
+
list1 = Array.isArray(list1) ? (0, exports.packChannelList)(list1) : list1;
|
|
37
|
+
list2 = Array.isArray(list2) ? (0, exports.packChannelList)(list2) : list2;
|
|
33
38
|
return list1 === list2;
|
|
34
39
|
};
|
|
40
|
+
exports.compareChannelLists = compareChannelLists;
|
|
35
41
|
//# sourceMappingURL=channel-list.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel-list.js","sourceRoot":"","sources":["../../../../src/adapter/z-stack/utils/channel-list.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"channel-list.js","sourceRoot":"","sources":["../../../../src/adapter/z-stack/utils/channel-list.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACI,MAAM,iBAAiB,GAAG,CAAC,UAAkB,EAAY,EAAE;IAC9D,OAAO,KAAK,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AACrG,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AAEF;;;;;GAKG;AACI,MAAM,eAAe,GAAG,CAAC,WAAqB,EAAU,EAAE;IAC7D,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/D,0BAA0B;IAC1B,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,kDAAkD,cAAc,EAAE,CAAC,CAAC;IACxF,CAAC;IACD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AAPW,QAAA,eAAe,mBAO1B;AAEF;;;;;GAKG;AACI,MAAM,mBAAmB,GAAG,CAAC,KAAwB,EAAE,KAAwB,EAAW,EAAE;IAC/F,0BAA0B;IAC1B,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC9D,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC9D,OAAO,KAAK,KAAK,KAAK,CAAC;AAC3B,CAAC,CAAC;AALW,QAAA,mBAAmB,uBAK9B"}
|
|
@@ -1,3 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./channel-list"), exports);
|
|
18
|
+
__exportStar(require("./network-options"), exports);
|
|
3
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/adapter/z-stack/utils/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/adapter/z-stack/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,oDAAkC"}
|
|
@@ -1,19 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
/* eslint-disable max-len */
|
|
2
3
|
/* istanbul ignore file */
|
|
3
|
-
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.compareNetworkOptions = void 0;
|
|
6
|
+
const channel_list_1 = require("./channel-list");
|
|
4
7
|
/**
|
|
5
8
|
* Checks if two network options models match.
|
|
6
9
|
*
|
|
7
10
|
* @param opts1 First network options struct to check.
|
|
8
11
|
* @param opts2 Second network options struct to check.
|
|
9
12
|
*/
|
|
10
|
-
|
|
13
|
+
const compareNetworkOptions = (opts1, opts2, lenientExtendedPanIdMatching) => {
|
|
11
14
|
return (opts1.panId === opts2.panId &&
|
|
12
15
|
(opts1.extendedPanId.equals(opts2.extendedPanId) ||
|
|
13
16
|
(lenientExtendedPanIdMatching && (opts1.hasDefaultExtendedPanId || opts2.hasDefaultExtendedPanId)) ||
|
|
14
17
|
(lenientExtendedPanIdMatching && (opts1.extendedPanId.equals(Buffer.from(opts2.extendedPanId).reverse())))) &&
|
|
15
18
|
opts1.networkKey.equals(opts2.networkKey) &&
|
|
16
|
-
compareChannelLists(opts1.channelList, opts2.channelList) &&
|
|
19
|
+
(0, channel_list_1.compareChannelLists)(opts1.channelList, opts2.channelList) &&
|
|
17
20
|
opts1.networkKeyDistribute === opts2.networkKeyDistribute);
|
|
18
21
|
};
|
|
22
|
+
exports.compareNetworkOptions = compareNetworkOptions;
|
|
19
23
|
//# sourceMappingURL=network-options.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network-options.js","sourceRoot":"","sources":["../../../../src/adapter/z-stack/utils/network-options.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,0BAA0B
|
|
1
|
+
{"version":3,"file":"network-options.js","sourceRoot":"","sources":["../../../../src/adapter/z-stack/utils/network-options.ts"],"names":[],"mappings":";AAAA,4BAA4B;AAC5B,0BAA0B;;;AAG1B,iDAAmD;AAEnD;;;;;GAKG;AACI,MAAM,qBAAqB,GAAG,CAAC,KAA4B,EAAE,KAA4B,EAAE,4BAAsC,EAAW,EAAE;IACjJ,OAAO,CACH,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK;QAC3B,CACI,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC;YAC/C,CAAC,4BAA4B,IAAI,CAAC,KAAK,CAAC,uBAAuB,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;YAClG,CAAC,4BAA4B,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAC7G;QACD,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;QACzC,IAAA,kCAAmB,EAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC;QACzD,KAAK,CAAC,oBAAoB,KAAK,KAAK,CAAC,oBAAoB,CAC5D,CAAC;AACN,CAAC,CAAC;AAZW,QAAA,qBAAqB,yBAYhC"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const buffalo_1 = require("../../../buffalo");
|
|
2
4
|
const routingTableStatusLookup = {
|
|
3
5
|
0: 'ACTIVE',
|
|
4
6
|
1: 'DISCOVERY_UNDERWAY',
|
|
5
7
|
2: 'DISCOVERY_FAILED',
|
|
6
8
|
3: 'INACTIVE',
|
|
7
9
|
};
|
|
8
|
-
class BuffaloZnp extends Buffalo {
|
|
10
|
+
class BuffaloZnp extends buffalo_1.Buffalo {
|
|
9
11
|
readListRoutingTable(options) {
|
|
10
12
|
const value = [];
|
|
11
13
|
for (let i = 0; i < options.length; i++) {
|
|
@@ -108,5 +110,5 @@ class BuffaloZnp extends Buffalo {
|
|
|
108
110
|
}
|
|
109
111
|
}
|
|
110
112
|
}
|
|
111
|
-
|
|
113
|
+
exports.default = BuffaloZnp;
|
|
112
114
|
//# sourceMappingURL=buffaloZnp.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buffaloZnp.js","sourceRoot":"","sources":["../../../../src/adapter/z-stack/znp/buffaloZnp.ts"],"names":[],"mappings":"AACA,
|
|
1
|
+
{"version":3,"file":"buffaloZnp.js","sourceRoot":"","sources":["../../../../src/adapter/z-stack/znp/buffaloZnp.ts"],"names":[],"mappings":"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"}
|