zigbee-herdsman 0.29.0 → 0.29.1
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 +7 -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.js +2357 -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
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.29.1](https://github.com/Koenkk/zigbee-herdsman/compare/v0.29.0...v0.29.1) (2023-12-27)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* **ignore:** Revert module to commonjs ([7d14fff](https://github.com/Koenkk/zigbee-herdsman/commit/7d14fff1e45f7ccd99369fe606c57563b641e06c))
|
|
9
|
+
|
|
3
10
|
## [0.29.0](https://github.com/Koenkk/zigbee-herdsman/compare/v0.28.0...v0.29.0) (2023-12-27)
|
|
4
11
|
|
|
5
12
|
|
package/dist/adapter/adapter.js
CHANGED
|
@@ -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 events_1 = __importDefault(require("events"));
|
|
30
|
+
const debug_1 = __importDefault(require("debug"));
|
|
31
|
+
const bonjour_service_1 = __importDefault(require("bonjour-service"));
|
|
32
|
+
const debug = (0, debug_1.default)("zigbee-herdsman:adapter");
|
|
33
|
+
class Adapter extends events_1.default.EventEmitter {
|
|
6
34
|
greenPowerGroup = 0x0b84;
|
|
7
35
|
networkOptions;
|
|
8
36
|
adapterOptions;
|
|
@@ -21,10 +49,10 @@ class Adapter extends events.EventEmitter {
|
|
|
21
49
|
* Utility
|
|
22
50
|
*/
|
|
23
51
|
static async create(networkOptions, serialPortOptions, backupPath, adapterOptions, logger) {
|
|
24
|
-
const { ZStackAdapter } = await
|
|
25
|
-
const { DeconzAdapter } = await
|
|
26
|
-
const { ZiGateAdapter } = await
|
|
27
|
-
const { EZSPAdapter } = await
|
|
52
|
+
const { ZStackAdapter } = await Promise.resolve().then(() => __importStar(require('./z-stack/adapter')));
|
|
53
|
+
const { DeconzAdapter } = await Promise.resolve().then(() => __importStar(require('./deconz/adapter')));
|
|
54
|
+
const { ZiGateAdapter } = await Promise.resolve().then(() => __importStar(require('./zigate/adapter')));
|
|
55
|
+
const { EZSPAdapter } = await Promise.resolve().then(() => __importStar(require('./ezsp/adapter')));
|
|
28
56
|
let adapters;
|
|
29
57
|
const adapterLookup = { zstack: ZStackAdapter, deconz: DeconzAdapter, zigate: ZiGateAdapter,
|
|
30
58
|
ezsp: EZSPAdapter };
|
|
@@ -63,7 +91,7 @@ class Adapter extends events.EventEmitter {
|
|
|
63
91
|
throw new Error(`No mdns device specified. ` +
|
|
64
92
|
`You must specify the coordinator mdns service type after mdns://, e.g. mdns://my-adapter`);
|
|
65
93
|
}
|
|
66
|
-
const bj = new
|
|
94
|
+
const bj = new bonjour_service_1.default();
|
|
67
95
|
const mdnsTimeout = 2000; // timeout for mdns scan
|
|
68
96
|
logger.info(`Starting mdns discovery for coordinator: ${mdnsDevice}`);
|
|
69
97
|
await new Promise((resolve, reject) => {
|
|
@@ -126,5 +154,5 @@ class Adapter extends events.EventEmitter {
|
|
|
126
154
|
return new adapter(networkOptions, serialPortOptions, backupPath, adapterOptions, logger);
|
|
127
155
|
}
|
|
128
156
|
}
|
|
129
|
-
|
|
157
|
+
exports.default = Adapter;
|
|
130
158
|
//# sourceMappingURL=adapter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter/adapter.ts"],"names":[],"mappings":"AAEA,
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,43 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
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 debug_1 = __importDefault(require("debug"));
|
|
30
|
+
const adapter_1 = __importDefault(require("../../adapter"));
|
|
31
|
+
const debug = (0, debug_1.default)("zigbee-herdsman:deconz:adapter");
|
|
32
|
+
const driver_1 = __importDefault(require("../driver/driver"));
|
|
33
|
+
const zcl_1 = require("../../../zcl");
|
|
34
|
+
const Events = __importStar(require("../../events"));
|
|
35
|
+
const frameParser_1 = __importDefault(require("../driver/frameParser"));
|
|
36
|
+
const utils_1 = require("../../../utils");
|
|
37
|
+
const constants_1 = __importDefault(require("../driver/constants"));
|
|
10
38
|
var frameParser = require('../driver/frameParser');
|
|
11
39
|
;
|
|
12
|
-
class DeconzAdapter extends
|
|
40
|
+
class DeconzAdapter extends adapter_1.default {
|
|
13
41
|
driver;
|
|
14
42
|
queue;
|
|
15
43
|
openRequestsQueue;
|
|
@@ -26,14 +54,14 @@ class DeconzAdapter extends Adapter {
|
|
|
26
54
|
// TODO: https://github.com/Koenkk/zigbee2mqtt/issues/4884#issuecomment-728903121
|
|
27
55
|
const delay = this.adapterOptions && typeof this.adapterOptions.delay === 'number' ?
|
|
28
56
|
this.adapterOptions.delay : 0;
|
|
29
|
-
this.waitress = new Waitress(this.waitressValidator, this.waitressTimeoutFormatter);
|
|
30
|
-
this.driver = new
|
|
57
|
+
this.waitress = new utils_1.Waitress(this.waitressValidator, this.waitressTimeoutFormatter);
|
|
58
|
+
this.driver = new driver_1.default(serialPortOptions.path);
|
|
31
59
|
this.driver.setDelay(delay);
|
|
32
60
|
if (delay >= 200) {
|
|
33
61
|
this.TX_OPTIONS = 0x04; // activate APS ACKS
|
|
34
62
|
}
|
|
35
|
-
this.driver.on('rxFrame', (frame) => {
|
|
36
|
-
this.queue = new Queue(concurrent);
|
|
63
|
+
this.driver.on('rxFrame', (frame) => { (0, frameParser_1.default)(frame); });
|
|
64
|
+
this.queue = new utils_1.Queue(concurrent);
|
|
37
65
|
this.transactionID = 0;
|
|
38
66
|
this.openRequestsQueue = [];
|
|
39
67
|
this.joinPermitted = false;
|
|
@@ -45,10 +73,10 @@ class DeconzAdapter extends Adapter {
|
|
|
45
73
|
setTimeout(() => { that.checkCoordinatorSimpleDescriptor(false); }, 3000);
|
|
46
74
|
}
|
|
47
75
|
static async isValidPath(path) {
|
|
48
|
-
return
|
|
76
|
+
return driver_1.default.isValidPath(path);
|
|
49
77
|
}
|
|
50
78
|
static async autoDetectPath() {
|
|
51
|
-
return
|
|
79
|
+
return driver_1.default.autoDetectPath();
|
|
52
80
|
}
|
|
53
81
|
/**
|
|
54
82
|
* Adapter methods
|
|
@@ -62,8 +90,8 @@ class DeconzAdapter extends Adapter {
|
|
|
62
90
|
await this.driver.close();
|
|
63
91
|
}
|
|
64
92
|
async getCoordinator() {
|
|
65
|
-
const ieeeAddr = await this.driver.readParameterRequest(
|
|
66
|
-
const nwkAddr = await this.driver.readParameterRequest(
|
|
93
|
+
const ieeeAddr = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.MAC);
|
|
94
|
+
const nwkAddr = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.NWK_ADDRESS);
|
|
67
95
|
const endpoints = [{
|
|
68
96
|
ID: 0x01,
|
|
69
97
|
profileID: 0x0104,
|
|
@@ -90,7 +118,7 @@ class DeconzAdapter extends Adapter {
|
|
|
90
118
|
const request = {};
|
|
91
119
|
const zdpFrame = [transactionID, seconds, 0]; // tc_significance 1 or 0 ?
|
|
92
120
|
request.requestId = transactionID;
|
|
93
|
-
request.destAddrMode =
|
|
121
|
+
request.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
|
|
94
122
|
request.destAddr16 = networkAddress || 0xFFFC;
|
|
95
123
|
request.destEndpoint = 0;
|
|
96
124
|
request.profileId = 0;
|
|
@@ -99,7 +127,7 @@ class DeconzAdapter extends Adapter {
|
|
|
99
127
|
request.asduLength = 3;
|
|
100
128
|
request.asduPayload = zdpFrame;
|
|
101
129
|
request.txOptions = 0;
|
|
102
|
-
request.radius =
|
|
130
|
+
request.radius = constants_1.default.PARAM.txRadius.DEFAULT_RADIUS;
|
|
103
131
|
request.timeout = 5;
|
|
104
132
|
try {
|
|
105
133
|
await this.driver.enqueueSendDataRequest(request);
|
|
@@ -109,7 +137,7 @@ class DeconzAdapter extends Adapter {
|
|
|
109
137
|
else {
|
|
110
138
|
this.joinPermitted = true;
|
|
111
139
|
}
|
|
112
|
-
this.driver.writeParameterRequest(
|
|
140
|
+
this.driver.writeParameterRequest(constants_1.default.PARAM.Network.PERMIT_JOIN, seconds);
|
|
113
141
|
debug("PERMIT_JOIN - " + seconds + " seconds");
|
|
114
142
|
}
|
|
115
143
|
catch (error) {
|
|
@@ -177,7 +205,7 @@ class DeconzAdapter extends Adapter {
|
|
|
177
205
|
const transactionID = this.nextTransactionID();
|
|
178
206
|
const req = {};
|
|
179
207
|
req.requestId = transactionID;
|
|
180
|
-
req.destAddrMode =
|
|
208
|
+
req.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
|
|
181
209
|
req.destAddr16 = networkAddress;
|
|
182
210
|
req.destEndpoint = 0;
|
|
183
211
|
req.profileId = 0;
|
|
@@ -186,7 +214,7 @@ class DeconzAdapter extends Adapter {
|
|
|
186
214
|
req.asduLength = 2;
|
|
187
215
|
req.asduPayload = [transactionID, startIndex];
|
|
188
216
|
req.txOptions = 0;
|
|
189
|
-
req.radius =
|
|
217
|
+
req.radius = constants_1.default.PARAM.txRadius.DEFAULT_RADIUS;
|
|
190
218
|
this.driver.enqueueSendDataRequest(req)
|
|
191
219
|
.then(result => { })
|
|
192
220
|
.catch(error => { });
|
|
@@ -260,7 +288,7 @@ class DeconzAdapter extends Adapter {
|
|
|
260
288
|
const transactionID = this.nextTransactionID();
|
|
261
289
|
const req = {};
|
|
262
290
|
req.requestId = transactionID;
|
|
263
|
-
req.destAddrMode =
|
|
291
|
+
req.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
|
|
264
292
|
req.destAddr16 = networkAddress;
|
|
265
293
|
req.destEndpoint = 0;
|
|
266
294
|
req.profileId = 0;
|
|
@@ -269,7 +297,7 @@ class DeconzAdapter extends Adapter {
|
|
|
269
297
|
req.asduLength = 2;
|
|
270
298
|
req.asduPayload = [transactionID, startIndex];
|
|
271
299
|
req.txOptions = 0;
|
|
272
|
-
req.radius =
|
|
300
|
+
req.radius = constants_1.default.PARAM.txRadius.DEFAULT_RADIUS;
|
|
273
301
|
req.timeout = 30;
|
|
274
302
|
this.driver.enqueueSendDataRequest(req)
|
|
275
303
|
.then(result => { })
|
|
@@ -325,7 +353,7 @@ class DeconzAdapter extends Adapter {
|
|
|
325
353
|
const request = {};
|
|
326
354
|
const zdpFrame = [transactionID, nwk1, nwk2];
|
|
327
355
|
request.requestId = transactionID;
|
|
328
|
-
request.destAddrMode =
|
|
356
|
+
request.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
|
|
329
357
|
request.destAddr16 = networkAddress;
|
|
330
358
|
request.destEndpoint = 0;
|
|
331
359
|
request.profileId = 0;
|
|
@@ -334,7 +362,7 @@ class DeconzAdapter extends Adapter {
|
|
|
334
362
|
request.asduLength = 3;
|
|
335
363
|
request.asduPayload = zdpFrame;
|
|
336
364
|
request.txOptions = 0;
|
|
337
|
-
request.radius =
|
|
365
|
+
request.radius = constants_1.default.PARAM.txRadius.DEFAULT_RADIUS;
|
|
338
366
|
request.timeout = 30;
|
|
339
367
|
this.driver.enqueueSendDataRequest(request)
|
|
340
368
|
.then(result => { })
|
|
@@ -362,7 +390,7 @@ class DeconzAdapter extends Adapter {
|
|
|
362
390
|
const request = {};
|
|
363
391
|
const zdpFrame = [transactionID, nwk1, nwk2];
|
|
364
392
|
request.requestId = transactionID;
|
|
365
|
-
request.destAddrMode =
|
|
393
|
+
request.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
|
|
366
394
|
request.destAddr16 = networkAddress;
|
|
367
395
|
request.destEndpoint = 0;
|
|
368
396
|
request.profileId = 0;
|
|
@@ -371,7 +399,7 @@ class DeconzAdapter extends Adapter {
|
|
|
371
399
|
request.asduLength = 3;
|
|
372
400
|
request.asduPayload = zdpFrame;
|
|
373
401
|
request.txOptions = 0;
|
|
374
|
-
request.radius =
|
|
402
|
+
request.radius = constants_1.default.PARAM.txRadius.DEFAULT_RADIUS;
|
|
375
403
|
request.timeout = 30;
|
|
376
404
|
this.driver.enqueueSendDataRequest(request)
|
|
377
405
|
.then(result => { })
|
|
@@ -401,7 +429,7 @@ class DeconzAdapter extends Adapter {
|
|
|
401
429
|
const request = {};
|
|
402
430
|
const zdpFrame = [transactionID, nwk1, nwk2, endpointID];
|
|
403
431
|
request.requestId = transactionID;
|
|
404
|
-
request.destAddrMode =
|
|
432
|
+
request.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
|
|
405
433
|
request.destAddr16 = networkAddress;
|
|
406
434
|
request.destEndpoint = 0;
|
|
407
435
|
request.profileId = 0;
|
|
@@ -410,7 +438,7 @@ class DeconzAdapter extends Adapter {
|
|
|
410
438
|
request.asduLength = 4;
|
|
411
439
|
request.asduPayload = zdpFrame;
|
|
412
440
|
request.txOptions = 0;
|
|
413
|
-
request.radius =
|
|
441
|
+
request.radius = constants_1.default.PARAM.txRadius.DEFAULT_RADIUS;
|
|
414
442
|
request.timeout = 30;
|
|
415
443
|
this.driver.enqueueSendDataRequest(request)
|
|
416
444
|
.then(result => { })
|
|
@@ -489,7 +517,7 @@ class DeconzAdapter extends Adapter {
|
|
|
489
517
|
try { //[ sd1 ep proId devId vers #inCl iCl1 iCl2 iCl3 iCl4 iCl5 #outC oCl1 oCl2 oCl3 oCl4 ]
|
|
490
518
|
const sd = [0x00, 0x01, 0x04, 0x01, 0x05, 0x00, 0x01, 0x05, 0x00, 0x00, 0x00, 0x06, 0x0A, 0x00, 0x19, 0x00, 0x01, 0x05, 0x04, 0x01, 0x00, 0x20, 0x00, 0x00, 0x05, 0x02, 0x05];
|
|
491
519
|
const sd1 = sd.reverse();
|
|
492
|
-
await this.driver.writeParameterRequest(
|
|
520
|
+
await this.driver.writeParameterRequest(constants_1.default.PARAM.STK.Endpoint, sd1);
|
|
493
521
|
}
|
|
494
522
|
catch (error) {
|
|
495
523
|
debug("error setting simple descriptor - try again");
|
|
@@ -514,7 +542,7 @@ class DeconzAdapter extends Adapter {
|
|
|
514
542
|
//console.log("zclFramte.toBuffer:");
|
|
515
543
|
//console.log(pay);
|
|
516
544
|
request.requestId = transactionID;
|
|
517
|
-
request.destAddrMode =
|
|
545
|
+
request.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
|
|
518
546
|
request.destAddr16 = networkAddress;
|
|
519
547
|
request.destEndpoint = endpoint;
|
|
520
548
|
request.profileId = sourceEndpoint === 242 && endpoint === 242 ? 0xa1e0 : 0x104;
|
|
@@ -523,7 +551,7 @@ class DeconzAdapter extends Adapter {
|
|
|
523
551
|
request.asduLength = pay.length;
|
|
524
552
|
request.asduPayload = [...pay];
|
|
525
553
|
request.txOptions = this.TX_OPTIONS; // 0x00 normal; 0x04 APS ACK
|
|
526
|
-
request.radius =
|
|
554
|
+
request.radius = constants_1.default.PARAM.txRadius.DEFAULT_RADIUS;
|
|
527
555
|
request.timeout = timeout;
|
|
528
556
|
const command = zclFrame.getCommand();
|
|
529
557
|
this.driver.enqueueSendDataRequest(request)
|
|
@@ -548,7 +576,7 @@ class DeconzAdapter extends Adapter {
|
|
|
548
576
|
if (data !== null) {
|
|
549
577
|
const asdu = data.asduPayload;
|
|
550
578
|
const buffer = Buffer.from(asdu);
|
|
551
|
-
const frame = ZclFrame.fromBuffer(zclFrame.Cluster.ID, buffer);
|
|
579
|
+
const frame = zcl_1.ZclFrame.fromBuffer(zclFrame.Cluster.ID, buffer);
|
|
552
580
|
const response = {
|
|
553
581
|
address: (data.srcAddrMode === 0x02) ? data.srcAddr16 : null,
|
|
554
582
|
frame: frame,
|
|
@@ -579,7 +607,7 @@ class DeconzAdapter extends Adapter {
|
|
|
579
607
|
//console.log("zclFramte.toBuffer:");
|
|
580
608
|
//console.log(pay);
|
|
581
609
|
request.requestId = transactionID;
|
|
582
|
-
request.destAddrMode =
|
|
610
|
+
request.destAddrMode = constants_1.default.PARAM.addressMode.GROUP_ADDR;
|
|
583
611
|
request.destAddr16 = groupID;
|
|
584
612
|
request.profileId = 0x104;
|
|
585
613
|
request.clusterId = zclFrame.Cluster.ID;
|
|
@@ -587,7 +615,7 @@ class DeconzAdapter extends Adapter {
|
|
|
587
615
|
request.asduLength = pay.length;
|
|
588
616
|
request.asduPayload = [...pay];
|
|
589
617
|
request.txOptions = 0;
|
|
590
|
-
request.radius =
|
|
618
|
+
request.radius = constants_1.default.PARAM.txRadius.UNLIMITED;
|
|
591
619
|
try {
|
|
592
620
|
debug(`sendZclFrameToGroup - message send`);
|
|
593
621
|
return this.driver.enqueueSendDataRequest(request);
|
|
@@ -604,7 +632,7 @@ class DeconzAdapter extends Adapter {
|
|
|
604
632
|
debug("zclFrame to all - zclFrame.payload:");
|
|
605
633
|
debug(zclFrame.Payload);
|
|
606
634
|
request.requestId = transactionID;
|
|
607
|
-
request.destAddrMode =
|
|
635
|
+
request.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
|
|
608
636
|
request.destAddr16 = 0xFFFD;
|
|
609
637
|
request.destEndpoint = endpoint;
|
|
610
638
|
request.profileId = sourceEndpoint === 242 && endpoint === 242 ? 0xa1e0 : 0x104;
|
|
@@ -613,7 +641,7 @@ class DeconzAdapter extends Adapter {
|
|
|
613
641
|
request.asduLength = pay.length;
|
|
614
642
|
request.asduPayload = [...pay];
|
|
615
643
|
request.txOptions = 0;
|
|
616
|
-
request.radius =
|
|
644
|
+
request.radius = constants_1.default.PARAM.txRadius.UNLIMITED;
|
|
617
645
|
try {
|
|
618
646
|
debug(`sendZclFrameToAll - message send`);
|
|
619
647
|
return this.driver.enqueueSendDataRequest(request);
|
|
@@ -627,7 +655,7 @@ class DeconzAdapter extends Adapter {
|
|
|
627
655
|
const transactionID = this.nextTransactionID();
|
|
628
656
|
const clid1 = clusterID & 0xff;
|
|
629
657
|
const clid2 = (clusterID >> 8) & 0xff;
|
|
630
|
-
const destAddrMode = (type === 'group') ?
|
|
658
|
+
const destAddrMode = (type === 'group') ? constants_1.default.PARAM.addressMode.GROUP_ADDR : constants_1.default.PARAM.addressMode.IEEE_ADDR;
|
|
631
659
|
let destArray;
|
|
632
660
|
if (type === 'endpoint') {
|
|
633
661
|
destArray = this.driver.macAddrStringToArray(destinationAddressOrGroup);
|
|
@@ -639,7 +667,7 @@ class DeconzAdapter extends Adapter {
|
|
|
639
667
|
const request = {};
|
|
640
668
|
const zdpFrame = [transactionID].concat(this.driver.macAddrStringToArray(sourceIeeeAddress)).concat([sourceEndpoint, clid1, clid2, destAddrMode]).concat(destArray);
|
|
641
669
|
request.requestId = transactionID;
|
|
642
|
-
request.destAddrMode =
|
|
670
|
+
request.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
|
|
643
671
|
request.destAddr16 = destinationNetworkAddress;
|
|
644
672
|
request.destEndpoint = 0;
|
|
645
673
|
request.profileId = 0;
|
|
@@ -648,7 +676,7 @@ class DeconzAdapter extends Adapter {
|
|
|
648
676
|
request.asduLength = zdpFrame.length;
|
|
649
677
|
request.asduPayload = zdpFrame;
|
|
650
678
|
request.txOptions = 0x04; // 0x04 use APS ACKS
|
|
651
|
-
request.radius =
|
|
679
|
+
request.radius = constants_1.default.PARAM.txRadius.DEFAULT_RADIUS;
|
|
652
680
|
request.timeout = 30;
|
|
653
681
|
this.driver.enqueueSendDataRequest(request)
|
|
654
682
|
.then(result => { })
|
|
@@ -670,7 +698,7 @@ class DeconzAdapter extends Adapter {
|
|
|
670
698
|
const transactionID = this.nextTransactionID();
|
|
671
699
|
const clid1 = clusterID & 0xff;
|
|
672
700
|
const clid2 = (clusterID >> 8) & 0xff;
|
|
673
|
-
const destAddrMode = (type === 'group') ?
|
|
701
|
+
const destAddrMode = (type === 'group') ? constants_1.default.PARAM.addressMode.GROUP_ADDR : constants_1.default.PARAM.addressMode.IEEE_ADDR;
|
|
674
702
|
let destArray;
|
|
675
703
|
if (type === 'endpoint') {
|
|
676
704
|
destArray = this.driver.macAddrStringToArray(destinationAddressOrGroup);
|
|
@@ -682,7 +710,7 @@ class DeconzAdapter extends Adapter {
|
|
|
682
710
|
const request = {};
|
|
683
711
|
const zdpFrame = [transactionID].concat(this.driver.macAddrStringToArray(sourceIeeeAddress)).concat([sourceEndpoint, clid1, clid2, destAddrMode]).concat(destArray);
|
|
684
712
|
request.requestId = transactionID;
|
|
685
|
-
request.destAddrMode =
|
|
713
|
+
request.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
|
|
686
714
|
request.destAddr16 = destinationNetworkAddress;
|
|
687
715
|
request.destEndpoint = 0;
|
|
688
716
|
request.profileId = 0;
|
|
@@ -691,7 +719,7 @@ class DeconzAdapter extends Adapter {
|
|
|
691
719
|
request.asduLength = zdpFrame.length;
|
|
692
720
|
request.asduPayload = zdpFrame;
|
|
693
721
|
request.txOptions = 0x04; // 0x04 use APS ACKS
|
|
694
|
-
request.radius =
|
|
722
|
+
request.radius = constants_1.default.PARAM.txRadius.DEFAULT_RADIUS;
|
|
695
723
|
request.timeout = 30;
|
|
696
724
|
this.driver.enqueueSendDataRequest(request)
|
|
697
725
|
.then(result => { })
|
|
@@ -717,7 +745,7 @@ class DeconzAdapter extends Adapter {
|
|
|
717
745
|
//const zdpFrame = [transactionID].concat(this.driver.macAddrStringToArray(ieeeAddr)).concat([0]);
|
|
718
746
|
const zdpFrame = [transactionID].concat([0, 0, 0, 0, 0, 0, 0, 0]).concat([0]);
|
|
719
747
|
request.requestId = transactionID;
|
|
720
|
-
request.destAddrMode =
|
|
748
|
+
request.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
|
|
721
749
|
request.destAddr16 = networkAddress;
|
|
722
750
|
request.destEndpoint = 0;
|
|
723
751
|
request.profileId = 0;
|
|
@@ -726,7 +754,7 @@ class DeconzAdapter extends Adapter {
|
|
|
726
754
|
request.asduLength = 10;
|
|
727
755
|
request.asduPayload = zdpFrame;
|
|
728
756
|
request.txOptions = 0;
|
|
729
|
-
request.radius =
|
|
757
|
+
request.radius = constants_1.default.PARAM.txRadius.DEFAULT_RADIUS;
|
|
730
758
|
this.driver.enqueueSendDataRequest(request)
|
|
731
759
|
.then(result => { })
|
|
732
760
|
.catch(error => { });
|
|
@@ -757,10 +785,10 @@ class DeconzAdapter extends Adapter {
|
|
|
757
785
|
async getNetworkParameters() {
|
|
758
786
|
try {
|
|
759
787
|
let changed = false;
|
|
760
|
-
let panid = await this.driver.readParameterRequest(
|
|
761
|
-
let expanid = await this.driver.readParameterRequest(
|
|
762
|
-
let channel = await this.driver.readParameterRequest(
|
|
763
|
-
let networkKey = await this.driver.readParameterRequest(
|
|
788
|
+
let panid = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.PAN_ID);
|
|
789
|
+
let expanid = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.APS_EXT_PAN_ID);
|
|
790
|
+
let channel = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.CHANNEL);
|
|
791
|
+
let networkKey = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.NETWORK_KEY);
|
|
764
792
|
// check current channel against configuration.yaml
|
|
765
793
|
if (this.networkOptions.channelList[0] !== channel) {
|
|
766
794
|
debug("Channel in configuration.yaml (" + this.networkOptions.channelList[0] + ") differs from current channel (" + channel + "). Changing channel.");
|
|
@@ -818,7 +846,7 @@ class DeconzAdapter extends Adapter {
|
|
|
818
846
|
break;
|
|
819
847
|
}
|
|
820
848
|
try {
|
|
821
|
-
await this.driver.writeParameterRequest(
|
|
849
|
+
await this.driver.writeParameterRequest(constants_1.default.PARAM.Network.CHANNEL_MASK, setChannelMask);
|
|
822
850
|
await this.sleep(500);
|
|
823
851
|
changed = true;
|
|
824
852
|
}
|
|
@@ -830,7 +858,7 @@ class DeconzAdapter extends Adapter {
|
|
|
830
858
|
if (this.networkOptions.panID !== panid) {
|
|
831
859
|
debug("panid in configuration.yaml (" + this.networkOptions.panID + ") differs from current panid (" + panid + "). Changing panid.");
|
|
832
860
|
try {
|
|
833
|
-
await this.driver.writeParameterRequest(
|
|
861
|
+
await this.driver.writeParameterRequest(constants_1.default.PARAM.Network.PAN_ID, this.networkOptions.panID);
|
|
834
862
|
await this.sleep(500);
|
|
835
863
|
changed = true;
|
|
836
864
|
}
|
|
@@ -842,7 +870,7 @@ class DeconzAdapter extends Adapter {
|
|
|
842
870
|
if (this.driver.generalArrayToString(this.networkOptions.extendedPanID, 8) !== expanid) {
|
|
843
871
|
debug("extended panid in configuration.yaml (" + this.driver.macAddrArrayToString(this.networkOptions.extendedPanID) + ") differs from current extended panid (" + expanid + "). Changing extended panid.");
|
|
844
872
|
try {
|
|
845
|
-
await this.driver.writeParameterRequest(
|
|
873
|
+
await this.driver.writeParameterRequest(constants_1.default.PARAM.Network.APS_EXT_PAN_ID, this.networkOptions.extendedPanID);
|
|
846
874
|
await this.sleep(500);
|
|
847
875
|
changed = true;
|
|
848
876
|
}
|
|
@@ -854,7 +882,7 @@ class DeconzAdapter extends Adapter {
|
|
|
854
882
|
if (this.driver.generalArrayToString(this.networkOptions.networkKey, 16) !== networkKey) {
|
|
855
883
|
debug("network key in configuration.yaml (hidden) differs from current network key (" + networkKey + "). Changing network key.");
|
|
856
884
|
try {
|
|
857
|
-
await this.driver.writeParameterRequest(
|
|
885
|
+
await this.driver.writeParameterRequest(constants_1.default.PARAM.Network.NETWORK_KEY, this.networkOptions.networkKey);
|
|
858
886
|
await this.sleep(500);
|
|
859
887
|
changed = true;
|
|
860
888
|
}
|
|
@@ -863,14 +891,14 @@ class DeconzAdapter extends Adapter {
|
|
|
863
891
|
}
|
|
864
892
|
}
|
|
865
893
|
if (changed) {
|
|
866
|
-
await this.driver.changeNetworkStateRequest(
|
|
894
|
+
await this.driver.changeNetworkStateRequest(constants_1.default.PARAM.Network.NET_OFFLINE);
|
|
867
895
|
await this.sleep(2000);
|
|
868
|
-
await this.driver.changeNetworkStateRequest(
|
|
896
|
+
await this.driver.changeNetworkStateRequest(constants_1.default.PARAM.Network.NET_CONNECTED);
|
|
869
897
|
await this.sleep(2000);
|
|
870
|
-
let panid = await this.driver.readParameterRequest(
|
|
871
|
-
let expanid = await this.driver.readParameterRequest(
|
|
872
|
-
let channel = await this.driver.readParameterRequest(
|
|
873
|
-
let networkKey = await this.driver.readParameterRequest(
|
|
898
|
+
let panid = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.PAN_ID);
|
|
899
|
+
let expanid = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.APS_EXT_PAN_ID);
|
|
900
|
+
let channel = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.CHANNEL);
|
|
901
|
+
let networkKey = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.NETWORK_KEY);
|
|
874
902
|
}
|
|
875
903
|
return {
|
|
876
904
|
panID: panid,
|
|
@@ -914,7 +942,7 @@ class DeconzAdapter extends Adapter {
|
|
|
914
942
|
waitForData(addr, profileId, clusterId, transactionSequenceNumber, timeout) {
|
|
915
943
|
return new Promise((resolve, reject) => {
|
|
916
944
|
const ts = Date.now();
|
|
917
|
-
const commandId =
|
|
945
|
+
const commandId = constants_1.default.PARAM.APS.DATA_INDICATION;
|
|
918
946
|
const req = { addr, profileId, clusterId, transactionSequenceNumber, resolve, reject, ts, timeout };
|
|
919
947
|
this.openRequestsQueue.push(req);
|
|
920
948
|
});
|
|
@@ -929,7 +957,7 @@ class DeconzAdapter extends Adapter {
|
|
|
929
957
|
ind.commandId, ind.commandFrameSize].concat(ind.commandFrame);
|
|
930
958
|
const payBuf = Buffer.from(gpFrame);
|
|
931
959
|
const payload = {
|
|
932
|
-
frame: ZclFrame.fromBuffer(ind.clusterId, payBuf),
|
|
960
|
+
frame: zcl_1.ZclFrame.fromBuffer(ind.clusterId, payBuf),
|
|
933
961
|
address: ind.srcId,
|
|
934
962
|
endpoint: 242, // GP endpoint
|
|
935
963
|
linkquality: 127,
|
|
@@ -947,7 +975,7 @@ class DeconzAdapter extends Adapter {
|
|
|
947
975
|
srcAddr = (resp.srcAddr16 != null) ? resp.srcAddr16 : resp.srcAddr64;
|
|
948
976
|
if (resp.profileId != 0x00) {
|
|
949
977
|
try {
|
|
950
|
-
frame = ZclFrame.fromBuffer(resp.clusterId, Buffer.from(resp.asduPayload));
|
|
978
|
+
frame = zcl_1.ZclFrame.fromBuffer(resp.clusterId, Buffer.from(resp.asduPayload));
|
|
951
979
|
}
|
|
952
980
|
catch (error) {
|
|
953
981
|
debug("could not parse zclFrame: " + error);
|
|
@@ -1001,7 +1029,7 @@ class DeconzAdapter extends Adapter {
|
|
|
1001
1029
|
const payBuf = Buffer.from(resp.asduPayload);
|
|
1002
1030
|
try {
|
|
1003
1031
|
const payload = {
|
|
1004
|
-
frame: ZclFrame.fromBuffer(resp.clusterId, payBuf),
|
|
1032
|
+
frame: zcl_1.ZclFrame.fromBuffer(resp.clusterId, payBuf),
|
|
1005
1033
|
address: (resp.destAddrMode === 0x03) ? resp.srcAddr64 : resp.srcAddr16,
|
|
1006
1034
|
endpoint: resp.srcEndpoint,
|
|
1007
1035
|
linkquality: resp.lqi,
|
|
@@ -1050,5 +1078,5 @@ class DeconzAdapter extends Adapter {
|
|
|
1050
1078
|
matcher.direction === payload.frame.Header.frameControl.direction;
|
|
1051
1079
|
}
|
|
1052
1080
|
}
|
|
1053
|
-
|
|
1081
|
+
exports.default = DeconzAdapter;
|
|
1054
1082
|
//# sourceMappingURL=deconzAdapter.js.map
|