zigbee-herdsman 0.28.0 → 0.29.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/.babelrc.js +0 -4
- package/.release-please-manifest.json +1 -1
- package/CHANGELOG.md +16 -0
- package/dist/adapter/adapter.js +21 -45
- package/dist/adapter/adapter.js.map +1 -1
- package/dist/adapter/deconz/adapter/deconzAdapter.js +76 -98
- package/dist/adapter/deconz/adapter/deconzAdapter.js.map +1 -1
- package/dist/adapter/deconz/adapter/index.js +2 -8
- package/dist/adapter/deconz/adapter/index.js.map +1 -1
- package/dist/adapter/deconz/driver/constants.js +1 -3
- package/dist/adapter/deconz/driver/constants.js.map +1 -1
- package/dist/adapter/deconz/driver/driver.js +77 -72
- package/dist/adapter/deconz/driver/driver.js.map +1 -1
- package/dist/adapter/deconz/driver/frame.js +1 -3
- package/dist/adapter/deconz/driver/frame.js.map +1 -1
- package/dist/adapter/deconz/driver/frameParser.js +36 -41
- package/dist/adapter/deconz/driver/frameParser.js.map +1 -1
- package/dist/adapter/deconz/driver/parser.js +8 -34
- package/dist/adapter/deconz/driver/parser.js.map +1 -1
- package/dist/adapter/deconz/driver/writer.js +6 -34
- package/dist/adapter/deconz/driver/writer.js.map +1 -1
- package/dist/adapter/events.js +2 -4
- package/dist/adapter/events.js.map +1 -1
- package/dist/adapter/ezsp/adapter/backup.js +10 -15
- package/dist/adapter/ezsp/adapter/backup.js.map +1 -1
- package/dist/adapter/ezsp/adapter/ezspAdapter.js +59 -81
- package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -1
- package/dist/adapter/ezsp/adapter/index.js +2 -8
- package/dist/adapter/ezsp/adapter/index.js.map +1 -1
- package/dist/adapter/ezsp/driver/commands.js +629 -628
- package/dist/adapter/ezsp/driver/commands.js.map +1 -1
- package/dist/adapter/ezsp/driver/consts.js +10 -13
- package/dist/adapter/ezsp/driver/consts.js.map +1 -1
- package/dist/adapter/ezsp/driver/driver.js +100 -96
- package/dist/adapter/ezsp/driver/driver.js.map +1 -1
- package/dist/adapter/ezsp/driver/ezsp.js +85 -104
- package/dist/adapter/ezsp/driver/ezsp.js.map +1 -1
- package/dist/adapter/ezsp/driver/index.js +3 -7
- package/dist/adapter/ezsp/driver/index.js.map +1 -1
- package/dist/adapter/ezsp/driver/multicast.js +17 -19
- package/dist/adapter/ezsp/driver/multicast.js.map +1 -1
- package/dist/adapter/ezsp/driver/parser.js +6 -35
- package/dist/adapter/ezsp/driver/parser.js.map +1 -1
- package/dist/adapter/ezsp/driver/types/basic.js +35 -57
- package/dist/adapter/ezsp/driver/types/basic.js.map +1 -1
- package/dist/adapter/ezsp/driver/types/index.js +12 -119
- package/dist/adapter/ezsp/driver/types/index.js.map +1 -1
- package/dist/adapter/ezsp/driver/types/named.js +1548 -1627
- package/dist/adapter/ezsp/driver/types/named.js.map +1 -1
- package/dist/adapter/ezsp/driver/types/struct.js +649 -668
- package/dist/adapter/ezsp/driver/types/struct.js.map +1 -1
- package/dist/adapter/ezsp/driver/uart.js +35 -57
- package/dist/adapter/ezsp/driver/uart.js.map +1 -1
- package/dist/adapter/ezsp/driver/utils/crc16ccitt.js +1 -3
- package/dist/adapter/ezsp/driver/utils/crc16ccitt.js.map +1 -1
- package/dist/adapter/ezsp/driver/utils/index.js +23 -27
- package/dist/adapter/ezsp/driver/utils/index.js.map +1 -1
- package/dist/adapter/ezsp/driver/writer.js +7 -37
- package/dist/adapter/ezsp/driver/writer.js.map +1 -1
- package/dist/adapter/index.js +4 -35
- package/dist/adapter/index.js.map +1 -1
- package/dist/adapter/serialPort.js +6 -10
- package/dist/adapter/serialPort.js.map +1 -1
- package/dist/adapter/serialPortUtils.js +7 -9
- package/dist/adapter/serialPortUtils.js.map +1 -1
- package/dist/adapter/socketPortUtils.js +1 -3
- package/dist/adapter/socketPortUtils.js.map +1 -1
- package/dist/adapter/tstype.js +1 -2
- package/dist/adapter/z-stack/adapter/adapter-backup.js +79 -108
- package/dist/adapter/z-stack/adapter/adapter-backup.js.map +1 -1
- package/dist/adapter/z-stack/adapter/adapter-nv-memory.js +23 -27
- package/dist/adapter/z-stack/adapter/adapter-nv-memory.js.map +1 -1
- package/dist/adapter/z-stack/adapter/endpoints.js +3 -29
- package/dist/adapter/z-stack/adapter/endpoints.js.map +1 -1
- package/dist/adapter/z-stack/adapter/index.js +2 -8
- package/dist/adapter/z-stack/adapter/index.js.map +1 -1
- package/dist/adapter/z-stack/adapter/manager.js +77 -102
- package/dist/adapter/z-stack/adapter/manager.js.map +1 -1
- package/dist/adapter/z-stack/adapter/tstype.js +2 -4
- package/dist/adapter/z-stack/adapter/tstype.js.map +1 -1
- package/dist/adapter/z-stack/adapter/zStackAdapter.js +62 -79
- package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +1 -1
- package/dist/adapter/z-stack/constants/af.js +1 -3
- package/dist/adapter/z-stack/constants/af.js.map +1 -1
- package/dist/adapter/z-stack/constants/common.js +16 -19
- package/dist/adapter/z-stack/constants/common.js.map +1 -1
- package/dist/adapter/z-stack/constants/dbg.js +1 -3
- package/dist/adapter/z-stack/constants/dbg.js.map +1 -1
- package/dist/adapter/z-stack/constants/index.js +10 -47
- package/dist/adapter/z-stack/constants/index.js.map +1 -1
- package/dist/adapter/z-stack/constants/mac.js +1 -3
- package/dist/adapter/z-stack/constants/mac.js.map +1 -1
- package/dist/adapter/z-stack/constants/sapi.js +1 -3
- package/dist/adapter/z-stack/constants/sapi.js.map +1 -1
- package/dist/adapter/z-stack/constants/sys.js +1 -3
- package/dist/adapter/z-stack/constants/sys.js.map +1 -1
- package/dist/adapter/z-stack/constants/util.js +1 -3
- package/dist/adapter/z-stack/constants/util.js.map +1 -1
- package/dist/adapter/z-stack/constants/utils.js +3 -7
- package/dist/adapter/z-stack/constants/utils.js.map +1 -1
- package/dist/adapter/z-stack/constants/zdo.js +1 -3
- package/dist/adapter/z-stack/constants/zdo.js.map +1 -1
- package/dist/adapter/z-stack/models/index.js +1 -17
- package/dist/adapter/z-stack/models/index.js.map +1 -1
- package/dist/adapter/z-stack/models/startup-options.js +1 -2
- package/dist/adapter/z-stack/structs/entries/address-manager-entry.js +5 -9
- 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 +5 -9
- 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 +3 -7
- 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 +5 -9
- 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 +3 -7
- 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 +5 -9
- 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 +2 -6
- package/dist/adapter/z-stack/structs/entries/channel-list.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/has-configured.js +2 -6
- package/dist/adapter/z-stack/structs/entries/has-configured.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/index.js +16 -32
- package/dist/adapter/z-stack/structs/entries/index.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nib.js +6 -10
- package/dist/adapter/z-stack/structs/entries/nib.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js +2 -6
- package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-key.js +2 -6
- package/dist/adapter/z-stack/structs/entries/nwk-key.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js +2 -6
- 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 +2 -6
- 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 +5 -9
- 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 +5 -9
- 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 +6 -10
- package/dist/adapter/z-stack/structs/entries/security-manager-table.js.map +1 -1
- package/dist/adapter/z-stack/structs/index.js +4 -20
- package/dist/adapter/z-stack/structs/index.js.map +1 -1
- package/dist/adapter/z-stack/structs/serializable-memory-object.js +1 -2
- package/dist/adapter/z-stack/structs/struct.js +8 -11
- package/dist/adapter/z-stack/structs/struct.js.map +1 -1
- package/dist/adapter/z-stack/structs/table.js +7 -9
- package/dist/adapter/z-stack/structs/table.js.map +1 -1
- package/dist/adapter/z-stack/unpi/constants.js +3 -12
- package/dist/adapter/z-stack/unpi/constants.js.map +1 -1
- package/dist/adapter/z-stack/unpi/frame.js +13 -9
- package/dist/adapter/z-stack/unpi/frame.js.map +1 -1
- package/dist/adapter/z-stack/unpi/index.js +5 -37
- package/dist/adapter/z-stack/unpi/index.js.map +1 -1
- package/dist/adapter/z-stack/unpi/parser.js +13 -40
- package/dist/adapter/z-stack/unpi/parser.js.map +1 -1
- package/dist/adapter/z-stack/unpi/writer.js +4 -32
- package/dist/adapter/z-stack/unpi/writer.js.map +1 -1
- package/dist/adapter/z-stack/utils/channel-list.js +5 -11
- package/dist/adapter/z-stack/utils/channel-list.js.map +1 -1
- package/dist/adapter/z-stack/utils/index.js +2 -18
- package/dist/adapter/z-stack/utils/index.js.map +1 -1
- package/dist/adapter/z-stack/utils/network-options.js +3 -7
- package/dist/adapter/z-stack/utils/network-options.js.map +1 -1
- package/dist/adapter/z-stack/znp/buffaloZnp.js +3 -5
- package/dist/adapter/z-stack/znp/buffaloZnp.js.map +1 -1
- package/dist/adapter/z-stack/znp/definition.js +1280 -1285
- package/dist/adapter/z-stack/znp/definition.js.map +1 -1
- package/dist/adapter/z-stack/znp/index.js +3 -10
- package/dist/adapter/z-stack/znp/index.js.map +1 -1
- package/dist/adapter/z-stack/znp/parameterType.js +1 -3
- package/dist/adapter/z-stack/znp/parameterType.js.map +1 -1
- package/dist/adapter/z-stack/znp/tstype.js +1 -2
- package/dist/adapter/z-stack/znp/znp.js +64 -81
- package/dist/adapter/z-stack/znp/znp.js.map +1 -1
- package/dist/adapter/z-stack/znp/zpiObject.js +30 -29
- package/dist/adapter/z-stack/znp/zpiObject.js.map +1 -1
- package/dist/adapter/zigate/adapter/index.js +2 -8
- package/dist/adapter/zigate/adapter/index.js.map +1 -1
- package/dist/adapter/zigate/adapter/zigateAdapter.js +64 -87
- package/dist/adapter/zigate/adapter/zigateAdapter.js.map +1 -1
- package/dist/adapter/zigate/debug.js +3 -9
- package/dist/adapter/zigate/debug.js.map +1 -1
- package/dist/adapter/zigate/driver/buffaloZiGate.js +7 -9
- package/dist/adapter/zigate/driver/buffaloZiGate.js.map +1 -1
- package/dist/adapter/zigate/driver/commandType.js +45 -50
- package/dist/adapter/zigate/driver/commandType.js.map +1 -1
- package/dist/adapter/zigate/driver/constants.js +31 -34
- package/dist/adapter/zigate/driver/constants.js.map +1 -1
- package/dist/adapter/zigate/driver/frame.js +11 -14
- package/dist/adapter/zigate/driver/frame.js.map +1 -1
- package/dist/adapter/zigate/driver/messageType.js +27 -30
- package/dist/adapter/zigate/driver/messageType.js.map +1 -1
- package/dist/adapter/zigate/driver/parameterType.js +1 -3
- package/dist/adapter/zigate/driver/parameterType.js.map +1 -1
- package/dist/adapter/zigate/driver/ziGateObject.js +17 -18
- package/dist/adapter/zigate/driver/ziGateObject.js.map +1 -1
- package/dist/adapter/zigate/driver/zigate.js +55 -47
- package/dist/adapter/zigate/driver/zigate.js.map +1 -1
- package/dist/buffalo/buffalo.js +5 -5
- package/dist/buffalo/buffalo.js.map +1 -1
- package/dist/buffalo/index.js +3 -33
- package/dist/buffalo/index.js.map +1 -1
- package/dist/buffalo/tstype.js +1 -2
- package/dist/controller/controller.js +99 -110
- package/dist/controller/controller.js.map +1 -1
- package/dist/controller/database.js +13 -16
- package/dist/controller/database.js.map +1 -1
- package/dist/controller/events.js +2 -5
- package/dist/controller/events.js.map +1 -1
- package/dist/controller/greenPower.js +17 -44
- package/dist/controller/greenPower.js.map +1 -1
- package/dist/controller/helpers/index.js +2 -28
- package/dist/controller/helpers/index.js.map +1 -1
- package/dist/controller/helpers/request.js +38 -32
- package/dist/controller/helpers/request.js.map +1 -1
- package/dist/controller/helpers/requestQueue.js +8 -11
- package/dist/controller/helpers/requestQueue.js.map +1 -1
- package/dist/controller/helpers/zclFrameConverter.js +5 -13
- package/dist/controller/helpers/zclFrameConverter.js.map +1 -1
- package/dist/controller/helpers/zclTransactionSequenceNumber.js +2 -4
- package/dist/controller/helpers/zclTransactionSequenceNumber.js.map +1 -1
- package/dist/controller/index.js +5 -8
- package/dist/controller/index.js.map +1 -1
- package/dist/controller/logger-stub.js +1 -2
- package/dist/controller/model/device.js +86 -90
- package/dist/controller/model/device.js.map +1 -1
- package/dist/controller/model/endpoint.d.ts.map +1 -1
- package/dist/controller/model/endpoint.js +60 -79
- package/dist/controller/model/endpoint.js.map +1 -1
- package/dist/controller/model/entity.js +5 -10
- package/dist/controller/model/entity.js.map +1 -1
- package/dist/controller/model/group.js +32 -57
- package/dist/controller/model/group.js.map +1 -1
- package/dist/controller/model/index.js +5 -14
- package/dist/controller/model/index.js.map +1 -1
- package/dist/controller/touchlink.js +11 -37
- package/dist/controller/touchlink.js.map +1 -1
- package/dist/controller/tstype.js +2 -4
- package/dist/controller/tstype.js.map +1 -1
- package/dist/index.js +3 -33
- package/dist/index.js.map +1 -1
- package/dist/models/backup-storage-legacy.js +1 -2
- package/dist/models/backup-storage-unified.js +1 -2
- package/dist/models/backup.js +1 -2
- package/dist/models/index.js +4 -20
- package/dist/models/index.js.map +1 -1
- package/dist/models/network-options.js +1 -2
- package/dist/utils/assertString.js +1 -3
- package/dist/utils/assertString.js.map +1 -1
- package/dist/utils/backup.js +15 -46
- package/dist/utils/backup.js.map +1 -1
- package/dist/utils/equalsPartial.js +3 -8
- package/dist/utils/equalsPartial.js.map +1 -1
- package/dist/utils/index.js +9 -45
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/isNumberArray.js +1 -3
- package/dist/utils/isNumberArray.js.map +1 -1
- package/dist/utils/queue.js +3 -3
- package/dist/utils/queue.js.map +1 -1
- package/dist/utils/realpathSync.js +3 -8
- package/dist/utils/realpathSync.js.map +1 -1
- package/dist/utils/wait.js +1 -3
- package/dist/utils/wait.js.map +1 -1
- package/dist/utils/waitress.js +5 -3
- package/dist/utils/waitress.js.map +1 -1
- package/dist/zcl/buffaloZcl.js +17 -45
- package/dist/zcl/buffaloZcl.js.map +1 -1
- package/dist/zcl/definition/buffaloZclDataType.js +1 -3
- 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 +2364 -2336
- package/dist/zcl/definition/cluster.js.map +1 -1
- package/dist/zcl/definition/dataType.js +1 -3
- package/dist/zcl/definition/dataType.js.map +1 -1
- package/dist/zcl/definition/direction.js +1 -3
- package/dist/zcl/definition/direction.js.map +1 -1
- package/dist/zcl/definition/endpointDeviceType.js +1 -3
- package/dist/zcl/definition/endpointDeviceType.js.map +1 -1
- package/dist/zcl/definition/foundation.js +53 -58
- package/dist/zcl/definition/foundation.js.map +1 -1
- package/dist/zcl/definition/frameControl.js +1 -2
- package/dist/zcl/definition/frameType.js +1 -3
- package/dist/zcl/definition/frameType.js.map +1 -1
- package/dist/zcl/definition/index.js +12 -51
- package/dist/zcl/definition/index.js.map +1 -1
- package/dist/zcl/definition/manufacturerCode.js +1 -3
- package/dist/zcl/definition/manufacturerCode.js.map +1 -1
- package/dist/zcl/definition/powerSource.js +1 -3
- package/dist/zcl/definition/powerSource.js.map +1 -1
- package/dist/zcl/definition/status.js +1 -3
- package/dist/zcl/definition/status.js.map +1 -1
- package/dist/zcl/definition/tstype.js +1 -2
- package/dist/zcl/index.js +14 -55
- package/dist/zcl/index.js.map +1 -1
- package/dist/zcl/tstype.js +2 -4
- package/dist/zcl/tstype.js.map +1 -1
- package/dist/zcl/utils.js +23 -29
- package/dist/zcl/utils.js.map +1 -1
- package/dist/zcl/zclFrame.js +46 -70
- package/dist/zcl/zclFrame.js.map +1 -1
- package/dist/zcl/zclHeader.js +1 -2
- package/dist/zcl/zclStatusError.js +4 -8
- package/dist/zcl/zclStatusError.js.map +1 -1
- package/package.json +1 -4
- package/tsconfig.json +4 -3
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ZiGateMessage = void 0;
|
|
4
1
|
/* istanbul ignore file */
|
|
5
2
|
/* eslint-disable */
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
[
|
|
3
|
+
import { ZiGateMessageCode } from "./constants";
|
|
4
|
+
export const ZiGateMessage = {
|
|
5
|
+
[ZiGateMessageCode.GetTimeServer]: {
|
|
9
6
|
response: [
|
|
10
7
|
{ name: 'timestampUTC', parameterType: 'UINT32' }, // <Timestamp UTC: uint32_t> from 2000-01-01 00:00:00
|
|
11
8
|
]
|
|
12
9
|
},
|
|
13
|
-
[
|
|
10
|
+
[ZiGateMessageCode.DeviceAnnounce]: {
|
|
14
11
|
response: [
|
|
15
12
|
{ name: 'shortAddress', parameterType: 'UINT16BE' },
|
|
16
13
|
{ name: 'ieee', parameterType: 'IEEEADDR' },
|
|
@@ -26,7 +23,7 @@ exports.ZiGateMessage = {
|
|
|
26
23
|
// {name: 'rejoin', parameterType: 'UINT8'},
|
|
27
24
|
]
|
|
28
25
|
},
|
|
29
|
-
[
|
|
26
|
+
[ZiGateMessageCode.Status]: {
|
|
30
27
|
response: [
|
|
31
28
|
{ name: 'status', parameterType: 'UINT8' }, // <status:uint8_t>
|
|
32
29
|
// 0 = Success
|
|
@@ -55,12 +52,12 @@ exports.ZiGateMessage = {
|
|
|
55
52
|
// {name: 'u8GetMaxApduUse', parameterType: 'MAYBE_UINT8'},
|
|
56
53
|
]
|
|
57
54
|
},
|
|
58
|
-
[
|
|
55
|
+
[ZiGateMessageCode.PermitJoinStatus]: {
|
|
59
56
|
response: [
|
|
60
57
|
{ name: 'status', parameterType: 'UINT8' }, // <status:uint8_t>
|
|
61
58
|
]
|
|
62
59
|
},
|
|
63
|
-
[
|
|
60
|
+
[ZiGateMessageCode.DataIndication]: {
|
|
64
61
|
response: [
|
|
65
62
|
{ name: 'status', parameterType: 'UINT8' }, // <status: uint8_t>
|
|
66
63
|
{ name: 'profileID', parameterType: 'UINT16BE' }, // <Profile ID: uint16_t>
|
|
@@ -79,7 +76,7 @@ exports.ZiGateMessage = {
|
|
|
79
76
|
// uint8_t>
|
|
80
77
|
]
|
|
81
78
|
},
|
|
82
|
-
[
|
|
79
|
+
[ZiGateMessageCode.NodeClusterList]: {
|
|
83
80
|
response: [
|
|
84
81
|
{ name: 'sourceEndpoint', parameterType: 'UINT8' }, //<source endpoint: uint8_t t>
|
|
85
82
|
{ name: 'profileID', parameterType: 'UINT16' }, // <profile ID: uint16_t>
|
|
@@ -87,7 +84,7 @@ exports.ZiGateMessage = {
|
|
|
87
84
|
{ name: 'clusterList', parameterType: 'LIST_UINT16' }, // <cluster list: data each entry is uint16_t>
|
|
88
85
|
]
|
|
89
86
|
},
|
|
90
|
-
[
|
|
87
|
+
[ZiGateMessageCode.NodeAttributeList]: {
|
|
91
88
|
response: [
|
|
92
89
|
{ name: 'sourceEndpoint', parameterType: 'UINT8' }, //<source endpoint: uint8_t t>
|
|
93
90
|
{ name: 'profileID', parameterType: 'UINT16' }, // <profile ID: uint16_t>
|
|
@@ -96,7 +93,7 @@ exports.ZiGateMessage = {
|
|
|
96
93
|
{ name: 'attributeList', parameterType: 'LIST_UINT16' }, // <attribute list: data each entry is uint16_t>
|
|
97
94
|
]
|
|
98
95
|
},
|
|
99
|
-
[
|
|
96
|
+
[ZiGateMessageCode.NodeCommandIDList]: {
|
|
100
97
|
response: [
|
|
101
98
|
{ name: 'sourceEndpoint', parameterType: 'UINT8' }, //<source endpoint: uint8_t t>
|
|
102
99
|
{ name: 'profileID', parameterType: 'UINT16' }, // <profile ID: uint16_t>
|
|
@@ -105,7 +102,7 @@ exports.ZiGateMessage = {
|
|
|
105
102
|
{ name: 'commandIDList', parameterType: 'LIST_UINT8' }, // <command ID list:data each entry is uint8_t>
|
|
106
103
|
]
|
|
107
104
|
},
|
|
108
|
-
[
|
|
105
|
+
[ZiGateMessageCode.APSDataACK]: {
|
|
109
106
|
response: [
|
|
110
107
|
{ name: 'status', parameterType: 'UINT8' }, // <status: uint8_t>
|
|
111
108
|
// {name: 'sourceEndpoint', parameterType:'UINT8'}, // <source endpoint: uint8_t>
|
|
@@ -118,7 +115,7 @@ exports.ZiGateMessage = {
|
|
|
118
115
|
{ name: 'seqNumber', parameterType: 'UINT8' }, // <seq number: uint8_t>
|
|
119
116
|
]
|
|
120
117
|
},
|
|
121
|
-
[
|
|
118
|
+
[ZiGateMessageCode.APSDataConfirm]: {
|
|
122
119
|
response: [
|
|
123
120
|
{ name: 'status', parameterType: 'UINT8' }, // <status: uint8_t>
|
|
124
121
|
{ name: 'sourceEndpoint', parameterType: 'UINT8' }, // <source endpoint: uint8_t>
|
|
@@ -133,7 +130,7 @@ exports.ZiGateMessage = {
|
|
|
133
130
|
{ name: 'u8GetApduUse', parameterType: 'MAYBE_UINT8' },
|
|
134
131
|
]
|
|
135
132
|
},
|
|
136
|
-
[
|
|
133
|
+
[ZiGateMessageCode.APSDataConfirmFailed]: {
|
|
137
134
|
response: [
|
|
138
135
|
{ name: 'status', parameterType: 'UINT8' }, // <status: uint8_t>
|
|
139
136
|
{ name: 'sourceEndpoint', parameterType: 'UINT8' }, // <src endpoint: uint8_t>
|
|
@@ -147,7 +144,7 @@ exports.ZiGateMessage = {
|
|
|
147
144
|
{ name: 'u8GetApduUse', parameterType: 'MAYBE_UINT8' },
|
|
148
145
|
]
|
|
149
146
|
},
|
|
150
|
-
[
|
|
147
|
+
[ZiGateMessageCode.NetworkState]: {
|
|
151
148
|
response: [
|
|
152
149
|
{ name: 'shortAddress', parameterType: 'UINT16BE' }, // <Short Address: uint16_t>
|
|
153
150
|
{ name: 'extendedAddress', parameterType: 'IEEEADDR' }, // <Extended Address: uint64_t>
|
|
@@ -156,14 +153,14 @@ exports.ZiGateMessage = {
|
|
|
156
153
|
{ name: 'Channel', parameterType: 'UINT8' }, // <Channel: uint8_t>
|
|
157
154
|
]
|
|
158
155
|
},
|
|
159
|
-
[
|
|
156
|
+
[ZiGateMessageCode.VersionList]: {
|
|
160
157
|
response: [
|
|
161
158
|
{ name: 'major', parameterType: 'UINT8' },
|
|
162
159
|
{ name: 'minor', parameterType: 'UINT8' },
|
|
163
160
|
{ name: 'revision', parameterType: 'UINT16' },
|
|
164
161
|
]
|
|
165
162
|
},
|
|
166
|
-
[
|
|
163
|
+
[ZiGateMessageCode.NetworkJoined]: {
|
|
167
164
|
response: [
|
|
168
165
|
{ name: 'status', parameterType: 'UINT8' }, // <status: uint8_t>
|
|
169
166
|
// Status:
|
|
@@ -175,26 +172,26 @@ exports.ZiGateMessage = {
|
|
|
175
172
|
// {name: 'channel', parameterType: 'UINT8'}, // <channel: uint8_t>
|
|
176
173
|
]
|
|
177
174
|
},
|
|
178
|
-
[
|
|
175
|
+
[ZiGateMessageCode.LeaveIndication]: {
|
|
179
176
|
response: [
|
|
180
177
|
{ name: 'extendedAddress', parameterType: 'IEEEADDR' }, // <extended address: uint64_t>
|
|
181
178
|
{ name: 'rejoin', parameterType: 'UINT8' }, // <rejoin status: uint8_t>
|
|
182
179
|
]
|
|
183
180
|
},
|
|
184
|
-
[
|
|
181
|
+
[ZiGateMessageCode.ManagementLeaveResponse]: {
|
|
185
182
|
response: [
|
|
186
183
|
{ name: 'sqn', parameterType: 'UINT8' },
|
|
187
184
|
{ name: 'status', parameterType: 'UINT8' }, // <status: uint8_t>
|
|
188
185
|
]
|
|
189
186
|
},
|
|
190
|
-
[
|
|
187
|
+
[ZiGateMessageCode.RouterDiscoveryConfirm]: {
|
|
191
188
|
response: [
|
|
192
189
|
{ name: 'status', parameterType: 'UINT8' }, // <status: uint8_t>
|
|
193
190
|
// {name: 'nwkStatus', parameterType: 'UINT8'}, // <nwk status: uint8_t>
|
|
194
191
|
// {name: 'dstAddress', parameterType: 'UINT16BE'}, // <nwk status: uint16_t>
|
|
195
192
|
]
|
|
196
193
|
},
|
|
197
|
-
[
|
|
194
|
+
[ZiGateMessageCode.SimpleDescriptorResponse]: {
|
|
198
195
|
response: [
|
|
199
196
|
{ name: 'sourceEndpoint', parameterType: 'UINT8' }, //<source endpoint: uint8_t>
|
|
200
197
|
{ name: 'profile ID', parameterType: 'UINT16BE' }, // <profile ID: uint16_t>
|
|
@@ -202,7 +199,7 @@ exports.ZiGateMessage = {
|
|
|
202
199
|
{ name: 'attributeList', parameterType: 'LIST_UINT16BE' }, // <attribute list: data each entry is uint16_t>
|
|
203
200
|
]
|
|
204
201
|
},
|
|
205
|
-
[
|
|
202
|
+
[ZiGateMessageCode.ManagementLQIResponse]: {
|
|
206
203
|
response: [
|
|
207
204
|
{ name: 'sequence', parameterType: 'UINT8' }, // <Sequence number: uint8_t>
|
|
208
205
|
{ name: 'status', parameterType: 'UINT8' }, // <status: uint8_t>
|
|
@@ -229,18 +226,18 @@ exports.ZiGateMessage = {
|
|
|
229
226
|
{ name: 'srcAddress', parameterType: 'UINT16BE' }, // <Src Address : uint16_t> ( only from v3.1a)
|
|
230
227
|
]
|
|
231
228
|
},
|
|
232
|
-
[
|
|
229
|
+
[ZiGateMessageCode.PDMEvent]: {
|
|
233
230
|
response: [
|
|
234
231
|
{ name: 'eventStatus', parameterType: 'UINT8' }, // <event status: uint8_t>
|
|
235
232
|
{ name: 'recordID', parameterType: 'UINT32BE' }, // <record ID: uint32_t>
|
|
236
233
|
]
|
|
237
234
|
},
|
|
238
|
-
[
|
|
235
|
+
[ZiGateMessageCode.PDMLoaded]: {
|
|
239
236
|
response: [
|
|
240
237
|
{ name: 'length', parameterType: 'UINT8' },
|
|
241
238
|
]
|
|
242
239
|
},
|
|
243
|
-
[
|
|
240
|
+
[ZiGateMessageCode.RestartNonFactoryNew]: {
|
|
244
241
|
response: [
|
|
245
242
|
{ name: 'status', parameterType: 'UINT8' }, // <status: uint8_t>
|
|
246
243
|
// 0 – STARTUP
|
|
@@ -248,7 +245,7 @@ exports.ZiGateMessage = {
|
|
|
248
245
|
// 2 – NFN_START
|
|
249
246
|
]
|
|
250
247
|
},
|
|
251
|
-
[
|
|
248
|
+
[ZiGateMessageCode.RestartFactoryNew]: {
|
|
252
249
|
response: [
|
|
253
250
|
{ name: 'status', parameterType: 'UINT8' }, // <status: uint8_t>
|
|
254
251
|
// 0 – STARTUP
|
|
@@ -257,7 +254,7 @@ exports.ZiGateMessage = {
|
|
|
257
254
|
// The node is not yet provisioned.
|
|
258
255
|
]
|
|
259
256
|
},
|
|
260
|
-
[
|
|
257
|
+
[ZiGateMessageCode.ExtendedStatusCallBack]: {
|
|
261
258
|
response: [
|
|
262
259
|
{ name: 'status', parameterType: 'UINT8' },
|
|
263
260
|
// https://github.com/fairecasoimeme/ZiGate/blob/aac14153db332eb5b898cba0f57f5999e5cf11eb/Module%20Radio/Firmware/src/sdk/JN-SW-4170/Components/ZPSNWK/Include/zps_nwk_pub.h#L89
|
|
@@ -269,7 +266,7 @@ exports.ZiGateMessage = {
|
|
|
269
266
|
{ name: 'log', parameterType: 'STRING' },
|
|
270
267
|
]
|
|
271
268
|
},
|
|
272
|
-
[
|
|
269
|
+
[ZiGateMessageCode.AddGroupResponse]: {
|
|
273
270
|
response: [
|
|
274
271
|
{ name: 'status', parameterType: 'UINT16BE' },
|
|
275
272
|
{ name: 'groupAddress', parameterType: 'UINT16BE' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messageType.js","sourceRoot":"","sources":["../../../../src/adapter/zigate/driver/messageType.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"messageType.js","sourceRoot":"","sources":["../../../../src/adapter/zigate/driver/messageType.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
1
|
var ParameterType;
|
|
4
2
|
(function (ParameterType) {
|
|
5
3
|
ParameterType[ParameterType["UINT8"] = 0] = "UINT8";
|
|
@@ -20,5 +18,5 @@ var ParameterType;
|
|
|
20
18
|
ParameterType[ParameterType["ADDRESS_WITH_TYPE_DEPENDENCY"] = 101] = "ADDRESS_WITH_TYPE_DEPENDENCY";
|
|
21
19
|
ParameterType[ParameterType["RAW"] = 102] = "RAW";
|
|
22
20
|
})(ParameterType || (ParameterType = {}));
|
|
23
|
-
|
|
21
|
+
export default ParameterType;
|
|
24
22
|
//# sourceMappingURL=parameterType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parameterType.js","sourceRoot":"","sources":["../../../../src/adapter/zigate/driver/parameterType.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parameterType.js","sourceRoot":"","sources":["../../../../src/adapter/zigate/driver/parameterType.ts"],"names":[],"mappings":"AAAA,IAAK,aAqBJ;AArBD,WAAK,aAAa;IACd,mDAAU,CAAA;IACV,qDAAW,CAAA;IACX,qDAAW,CAAA;IACX,yDAAa,CAAA;IAEb,qDAAW,CAAA;IACX,uDAAW,CAAA;IACX,yDAAY,CAAA;IACZ,yDAAY,CAAA;IACZ,yDAAY,CAAA;IACZ,yDAAY,CAAA;IACZ,4DAAc,CAAA;IAEd,8DAAe,CAAA;IACf,gEAAgB,CAAA;IAEhB,kDAAS,CAAA;IACT,qEAAmB,CAAA;IACnB,mGAAkC,CAAA;IAClC,iDAAS,CAAA;AACb,CAAC,EArBI,aAAa,KAAb,aAAa,QAqBjB;AAED,eAAe,aAAa,CAAC"}
|
|
@@ -1,16 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
1
|
/* istanbul ignore file */
|
|
7
2
|
/* eslint-disable */
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const debug =
|
|
3
|
+
import ZiGateFrame from './frame';
|
|
4
|
+
import BuffaloZiGate from './buffaloZiGate';
|
|
5
|
+
import { ZiGateMessage } from "./messageType";
|
|
6
|
+
import { ZiGateCommand } from "./commandType";
|
|
7
|
+
import { Debug } from '../debug';
|
|
8
|
+
const debug = Debug('driver:ziGateObject');
|
|
14
9
|
const BufferAndListTypes = [
|
|
15
10
|
'BUFFER', 'BUFFER8', 'BUFFER16',
|
|
16
11
|
'BUFFER18', 'BUFFER32', 'BUFFER42',
|
|
@@ -19,6 +14,10 @@ const BufferAndListTypes = [
|
|
|
19
14
|
'LIST_ASSOC_DEV', 'LIST_UINT8',
|
|
20
15
|
];
|
|
21
16
|
class ZiGateObject {
|
|
17
|
+
_code;
|
|
18
|
+
_payload;
|
|
19
|
+
_parameters;
|
|
20
|
+
_frame;
|
|
22
21
|
constructor(code, payload, parameters, frame) {
|
|
23
22
|
this._code = code;
|
|
24
23
|
this._payload = payload;
|
|
@@ -35,10 +34,10 @@ class ZiGateObject {
|
|
|
35
34
|
return this._payload;
|
|
36
35
|
}
|
|
37
36
|
get command() {
|
|
38
|
-
return
|
|
37
|
+
return ZiGateCommand[this._code];
|
|
39
38
|
}
|
|
40
39
|
static createRequest(commandCode, payload) {
|
|
41
|
-
const cmd =
|
|
40
|
+
const cmd = ZiGateCommand[commandCode];
|
|
42
41
|
if (!cmd) {
|
|
43
42
|
throw new Error(`Command '${commandCode}' not found`);
|
|
44
43
|
}
|
|
@@ -49,7 +48,7 @@ class ZiGateObject {
|
|
|
49
48
|
return ZiGateObject.fromBufer(code, frame.msgPayloadBytes, frame);
|
|
50
49
|
}
|
|
51
50
|
static fromBufer(code, buffer, frame) {
|
|
52
|
-
const msg =
|
|
51
|
+
const msg = ZiGateMessage[code];
|
|
53
52
|
if (!msg) {
|
|
54
53
|
throw new Error(`Message '${code.toString(16)}' not found`);
|
|
55
54
|
}
|
|
@@ -61,7 +60,7 @@ class ZiGateObject {
|
|
|
61
60
|
return new ZiGateObject(code, payload, parameters, frame);
|
|
62
61
|
}
|
|
63
62
|
static readParameters(buffer, parameters) {
|
|
64
|
-
const buffalo = new
|
|
63
|
+
const buffalo = new BuffaloZiGate(buffer);
|
|
65
64
|
const result = {};
|
|
66
65
|
for (const parameter of parameters) {
|
|
67
66
|
const options = {};
|
|
@@ -89,13 +88,13 @@ class ZiGateObject {
|
|
|
89
88
|
}
|
|
90
89
|
toZiGateFrame() {
|
|
91
90
|
const buffer = this.createPayloadBuffer();
|
|
92
|
-
const frame = new
|
|
91
|
+
const frame = new ZiGateFrame();
|
|
93
92
|
frame.writeMsgCode(this._code);
|
|
94
93
|
frame.writeMsgPayload(buffer);
|
|
95
94
|
return frame;
|
|
96
95
|
}
|
|
97
96
|
createPayloadBuffer() {
|
|
98
|
-
const buffalo = new
|
|
97
|
+
const buffalo = new BuffaloZiGate(Buffer.alloc(256)); // hardcode @todo
|
|
99
98
|
for (const parameter of this._parameters) {
|
|
100
99
|
const value = this._payload[parameter.name];
|
|
101
100
|
buffalo.write(parameter.parameterType, value, {});
|
|
@@ -103,5 +102,5 @@ class ZiGateObject {
|
|
|
103
102
|
return buffalo.getWritten();
|
|
104
103
|
}
|
|
105
104
|
}
|
|
106
|
-
|
|
105
|
+
export default ZiGateObject;
|
|
107
106
|
//# sourceMappingURL=ziGateObject.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ziGateObject.js","sourceRoot":"","sources":["../../../../src/adapter/zigate/driver/ziGateObject.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ziGateObject.js","sourceRoot":"","sources":["../../../../src/adapter/zigate/driver/ziGateObject.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +1,21 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/* istanbul ignore file */
|
|
3
2
|
/* eslint-disable */
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
};
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
const
|
|
20
|
-
const commandType_1 = require("./commandType");
|
|
21
|
-
const frame_1 = __importDefault(require("./frame"));
|
|
22
|
-
const buffalo_1 = require("../../../buffalo");
|
|
23
|
-
const debug = (0, debug_1.Debug)('driver');
|
|
3
|
+
import { DelimiterParser } from '@serialport/parser-delimiter';
|
|
4
|
+
import { EventEmitter } from 'events';
|
|
5
|
+
import { Debug } from '../debug';
|
|
6
|
+
import { SerialPort } from '../../serialPort';
|
|
7
|
+
import SerialPortUtils from "../../serialPortUtils";
|
|
8
|
+
import SocketPortUtils from "../../socketPortUtils";
|
|
9
|
+
import net from "net";
|
|
10
|
+
import { Queue } from "../../../utils";
|
|
11
|
+
import { STATUS, ZiGateCommandCode, ZiGateMessageCode } from "./constants";
|
|
12
|
+
import ZiGateObject from "./ziGateObject";
|
|
13
|
+
import { ZclFrame } from "../../../zcl";
|
|
14
|
+
import Waitress from "../../../utils/waitress";
|
|
15
|
+
import { equal } from "./commandType";
|
|
16
|
+
import ZiGateFrame from "./frame";
|
|
17
|
+
import { Buffalo } from "../../../buffalo";
|
|
18
|
+
const debug = Debug('driver');
|
|
24
19
|
const autoDetectDefinitions = [
|
|
25
20
|
{ manufacturer: 'zigate_PL2303', vendorId: '067b', productId: '2303' },
|
|
26
21
|
{ manufacturer: 'zigate_cp2102', vendorId: '10c4', productId: 'ea60' },
|
|
@@ -36,16 +31,30 @@ function resolve(path, obj, separator = '.') {
|
|
|
36
31
|
const properties = Array.isArray(path) ? path : path.split(separator);
|
|
37
32
|
return properties.reduce((prev, curr) => prev && prev[curr], obj);
|
|
38
33
|
}
|
|
39
|
-
class ZiGate extends
|
|
34
|
+
export default class ZiGate extends EventEmitter {
|
|
35
|
+
path;
|
|
36
|
+
baudRate;
|
|
37
|
+
rtscts;
|
|
38
|
+
initialized;
|
|
39
|
+
// private timeoutResetTimeout: any;
|
|
40
|
+
// private apsRequestFreeSlots: number;
|
|
41
|
+
parser;
|
|
42
|
+
serialPort;
|
|
43
|
+
seqNumber;
|
|
44
|
+
portType;
|
|
45
|
+
socketPort;
|
|
46
|
+
queue;
|
|
47
|
+
portWrite;
|
|
48
|
+
waitress;
|
|
40
49
|
constructor(path, serialPortOptions) {
|
|
41
50
|
super();
|
|
42
51
|
this.path = path;
|
|
43
52
|
this.baudRate = typeof serialPortOptions.baudRate === 'number' ? serialPortOptions.baudRate : 115200;
|
|
44
53
|
this.rtscts = typeof serialPortOptions.rtscts === 'boolean' ? serialPortOptions.rtscts : false;
|
|
45
|
-
this.portType =
|
|
54
|
+
this.portType = SocketPortUtils.isTcpPath(path) ? 'socket' : 'serial';
|
|
46
55
|
this.initialized = false;
|
|
47
|
-
this.queue = new
|
|
48
|
-
this.waitress = new
|
|
56
|
+
this.queue = new Queue(1);
|
|
57
|
+
this.waitress = new Waitress(this.waitressValidator, this.waitressTimeoutFormatter);
|
|
49
58
|
}
|
|
50
59
|
async sendCommand(code, payload, timeout, extraParameters, disableResponse = false) {
|
|
51
60
|
const waiters = [];
|
|
@@ -53,10 +62,10 @@ class ZiGate extends events_1.EventEmitter {
|
|
|
53
62
|
return await this.queue.execute(async () => {
|
|
54
63
|
try {
|
|
55
64
|
debug.log('Send command \x1b[32m>>>> '
|
|
56
|
-
+
|
|
65
|
+
+ ZiGateCommandCode[code]
|
|
57
66
|
+ ' 0x' + zeroPad(code)
|
|
58
67
|
+ ' <<<<\x1b[0m \nPayload: %o', payload);
|
|
59
|
-
const ziGateObject =
|
|
68
|
+
const ziGateObject = ZiGateObject.createRequest(code, payload);
|
|
60
69
|
const frame = ziGateObject.toZiGateFrame();
|
|
61
70
|
debug.log('%o', frame);
|
|
62
71
|
const sendBuffer = frame.toBuffer();
|
|
@@ -72,8 +81,8 @@ class ZiGate extends events_1.EventEmitter {
|
|
|
72
81
|
let resultPromise;
|
|
73
82
|
if (ziGateObject.command.waitStatus !== false) {
|
|
74
83
|
const ruleStatus = [
|
|
75
|
-
{ receivedProperty: 'code', matcher:
|
|
76
|
-
{ receivedProperty: 'payload.packetType', matcher:
|
|
84
|
+
{ receivedProperty: 'code', matcher: equal, value: ZiGateMessageCode.Status },
|
|
85
|
+
{ receivedProperty: 'payload.packetType', matcher: equal, value: ziGateObject.code },
|
|
77
86
|
];
|
|
78
87
|
const statusWaiter = this.waitress.waitFor({ ziGateObject, rules: ruleStatus }, timeout || timeouts.default).start();
|
|
79
88
|
resultPromise = statusWaiter.promise;
|
|
@@ -82,7 +91,7 @@ class ZiGate extends events_1.EventEmitter {
|
|
|
82
91
|
this.portWrite.write(sendBuffer);
|
|
83
92
|
if (ziGateObject.command.waitStatus !== false) {
|
|
84
93
|
let statusResponse = await resultPromise;
|
|
85
|
-
if (statusResponse.payload.status !==
|
|
94
|
+
if (statusResponse.payload.status !== STATUS.E_SL_MSG_STATUS_SUCCESS) {
|
|
86
95
|
waitersId.map((id) => this.waitress.remove(id));
|
|
87
96
|
return Promise.reject(statusResponse);
|
|
88
97
|
}
|
|
@@ -99,10 +108,10 @@ class ZiGate extends events_1.EventEmitter {
|
|
|
99
108
|
});
|
|
100
109
|
}
|
|
101
110
|
static async isValidPath(path) {
|
|
102
|
-
return
|
|
111
|
+
return SerialPortUtils.is(path, autoDetectDefinitions);
|
|
103
112
|
}
|
|
104
113
|
static async autoDetectPath() {
|
|
105
|
-
const paths = await
|
|
114
|
+
const paths = await SerialPortUtils.find(autoDetectDefinitions);
|
|
106
115
|
return paths.length > 0 ? paths[0] : null;
|
|
107
116
|
}
|
|
108
117
|
open() {
|
|
@@ -146,7 +155,7 @@ class ZiGate extends events_1.EventEmitter {
|
|
|
146
155
|
return this.waitress.waitFor(matcher, timeout);
|
|
147
156
|
}
|
|
148
157
|
async openSerialPort() {
|
|
149
|
-
this.serialPort = new
|
|
158
|
+
this.serialPort = new SerialPort({
|
|
150
159
|
path: this.path,
|
|
151
160
|
baudRate: this.baudRate,
|
|
152
161
|
dataBits: 8,
|
|
@@ -155,7 +164,7 @@ class ZiGate extends events_1.EventEmitter {
|
|
|
155
164
|
lock: false,
|
|
156
165
|
autoOpen: false
|
|
157
166
|
});
|
|
158
|
-
this.parser = this.serialPort.pipe(new
|
|
167
|
+
this.parser = this.serialPort.pipe(new DelimiterParser({ delimiter: [ZiGateFrame.STOP_BYTE], includeDelimiter: true }));
|
|
159
168
|
this.parser.on('data', this.onSerialData.bind(this));
|
|
160
169
|
this.portWrite = this.serialPort;
|
|
161
170
|
return new Promise((resolve, reject) => {
|
|
@@ -182,12 +191,12 @@ class ZiGate extends events_1.EventEmitter {
|
|
|
182
191
|
});
|
|
183
192
|
}
|
|
184
193
|
async openSocketPort() {
|
|
185
|
-
const info =
|
|
194
|
+
const info = SocketPortUtils.parseTcpPath(this.path);
|
|
186
195
|
debug.log(`Opening TCP socket with ${info.host}:${info.port}`);
|
|
187
|
-
this.socketPort = new
|
|
196
|
+
this.socketPort = new net.Socket();
|
|
188
197
|
this.socketPort.setNoDelay(true);
|
|
189
198
|
this.socketPort.setKeepAlive(true, 15000);
|
|
190
|
-
this.parser = this.socketPort.pipe(new
|
|
199
|
+
this.parser = this.socketPort.pipe(new DelimiterParser({ delimiter: [ZiGateFrame.STOP_BYTE], includeDelimiter: true }));
|
|
191
200
|
this.parser.on('data', this.onSerialData.bind(this));
|
|
192
201
|
this.portWrite = this.socketPort;
|
|
193
202
|
return new Promise((resolve, reject) => {
|
|
@@ -222,31 +231,31 @@ class ZiGate extends events_1.EventEmitter {
|
|
|
222
231
|
onSerialData(buffer) {
|
|
223
232
|
try {
|
|
224
233
|
// debug.log(`--- parseNext `, buffer);
|
|
225
|
-
const frame = new
|
|
226
|
-
if (!(frame instanceof
|
|
234
|
+
const frame = new ZiGateFrame(buffer);
|
|
235
|
+
if (!(frame instanceof ZiGateFrame))
|
|
227
236
|
return; // @Todo fix
|
|
228
237
|
const code = frame.readMsgCode();
|
|
229
|
-
const msgName = (
|
|
238
|
+
const msgName = (ZiGateMessageCode[code] ? ZiGateMessageCode[code] : '') + ' 0x' + zeroPad(code);
|
|
230
239
|
debug.log(`--> parsed frame \x1b[1;34m>>>> ${msgName} <<<<\x1b[0m `);
|
|
231
240
|
try {
|
|
232
|
-
const ziGateObject =
|
|
241
|
+
const ziGateObject = ZiGateObject.fromZiGateFrame(frame);
|
|
233
242
|
debug.log('%o', ziGateObject.payload);
|
|
234
243
|
this.waitress.resolve(ziGateObject);
|
|
235
244
|
switch (code) {
|
|
236
|
-
case
|
|
245
|
+
case ZiGateMessageCode.DataIndication:
|
|
237
246
|
switch (ziGateObject.payload.profileID) {
|
|
238
247
|
case 0x0000:
|
|
239
248
|
switch (ziGateObject.payload.clusterID) {
|
|
240
249
|
case 0x0013:
|
|
241
250
|
let networkAddress = ziGateObject.payload.payload.readUInt16LE(1);
|
|
242
|
-
let ieeeAddr = new
|
|
251
|
+
let ieeeAddr = new Buffalo(ziGateObject.payload.payload.slice(3, 11)).readIeeeAddr();
|
|
243
252
|
this.emit('DeviceAnnounce', networkAddress, ieeeAddr);
|
|
244
253
|
break;
|
|
245
254
|
}
|
|
246
255
|
break;
|
|
247
256
|
case 0x0104:
|
|
248
257
|
try {
|
|
249
|
-
const zclFrame =
|
|
258
|
+
const zclFrame = ZclFrame.fromBuffer(ziGateObject.payload.clusterID, ziGateObject.payload.payload);
|
|
250
259
|
this.emit('received', { ziGateObject, zclFrame });
|
|
251
260
|
}
|
|
252
261
|
catch (error) {
|
|
@@ -258,10 +267,10 @@ class ZiGate extends events_1.EventEmitter {
|
|
|
258
267
|
debug.error("not implemented profile: " + ziGateObject.payload.profileID);
|
|
259
268
|
}
|
|
260
269
|
break;
|
|
261
|
-
case
|
|
270
|
+
case ZiGateMessageCode.LeaveIndication:
|
|
262
271
|
this.emit('LeaveIndication', { ziGateObject });
|
|
263
272
|
break;
|
|
264
|
-
case
|
|
273
|
+
case ZiGateMessageCode.DeviceAnnounce:
|
|
265
274
|
this.emit('DeviceAnnounce', ziGateObject.payload.shortAddress, ziGateObject.payload.ieee);
|
|
266
275
|
break;
|
|
267
276
|
}
|
|
@@ -300,5 +309,4 @@ class ZiGate extends events_1.EventEmitter {
|
|
|
300
309
|
return matcher.rules.every(validator);
|
|
301
310
|
}
|
|
302
311
|
}
|
|
303
|
-
exports.default = ZiGate;
|
|
304
312
|
//# sourceMappingURL=zigate.js.map
|