zigbee-herdsman 0.51.0 → 0.53.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/.github/workflows/ci.yml +4 -2
- package/.prettierrc +9 -0
- package/.release-please-manifest.json +1 -1
- package/CHANGELOG.md +25 -0
- package/dist/adapter/adapter.d.ts +4 -4
- package/dist/adapter/adapter.d.ts.map +1 -1
- package/dist/adapter/adapter.js +8 -13
- package/dist/adapter/adapter.js.map +1 -1
- package/dist/adapter/deconz/adapter/deconzAdapter.d.ts +1 -1
- package/dist/adapter/deconz/adapter/deconzAdapter.d.ts.map +1 -1
- package/dist/adapter/deconz/adapter/deconzAdapter.js +249 -155
- package/dist/adapter/deconz/adapter/deconzAdapter.js.map +1 -1
- package/dist/adapter/deconz/adapter/index.d.ts +1 -1
- package/dist/adapter/deconz/adapter/index.d.ts.map +1 -1
- package/dist/adapter/deconz/adapter/index.js.map +1 -1
- package/dist/adapter/deconz/driver/constants.d.ts +1 -1
- package/dist/adapter/deconz/driver/constants.d.ts.map +1 -1
- package/dist/adapter/deconz/driver/constants.js +7 -7
- package/dist/adapter/deconz/driver/constants.js.map +1 -1
- package/dist/adapter/deconz/driver/driver.d.ts.map +1 -1
- package/dist/adapter/deconz/driver/driver.js +92 -60
- package/dist/adapter/deconz/driver/driver.js.map +1 -1
- package/dist/adapter/deconz/driver/frameParser.d.ts.map +1 -1
- package/dist/adapter/deconz/driver/frameParser.js +55 -46
- package/dist/adapter/deconz/driver/frameParser.js.map +1 -1
- package/dist/adapter/deconz/driver/parser.js +1 -1
- package/dist/adapter/ember/adapter/emberAdapter.d.ts +5 -5
- package/dist/adapter/ember/adapter/emberAdapter.d.ts.map +1 -1
- package/dist/adapter/ember/adapter/emberAdapter.js +803 -955
- package/dist/adapter/ember/adapter/emberAdapter.js.map +1 -1
- package/dist/adapter/ember/adapter/endpoints.d.ts.map +1 -1
- package/dist/adapter/ember/adapter/endpoints.js +4 -2
- package/dist/adapter/ember/adapter/endpoints.js.map +1 -1
- package/dist/adapter/ember/adapter/oneWaitress.d.ts +2 -2
- package/dist/adapter/ember/adapter/oneWaitress.d.ts.map +1 -1
- package/dist/adapter/ember/adapter/oneWaitress.js +16 -16
- package/dist/adapter/ember/adapter/oneWaitress.js.map +1 -1
- package/dist/adapter/ember/adapter/tokensManager.d.ts +3 -3
- package/dist/adapter/ember/adapter/tokensManager.d.ts.map +1 -1
- package/dist/adapter/ember/adapter/tokensManager.js +86 -85
- package/dist/adapter/ember/adapter/tokensManager.js.map +1 -1
- package/dist/adapter/ember/consts.d.ts.map +1 -1
- package/dist/adapter/ember/consts.js +27 -27
- package/dist/adapter/ember/consts.js.map +1 -1
- package/dist/adapter/ember/enums.d.ts +2 -2
- package/dist/adapter/ember/enums.d.ts.map +1 -1
- package/dist/adapter/ember/enums.js +8 -50
- package/dist/adapter/ember/enums.js.map +1 -1
- package/dist/adapter/ember/ezsp/buffalo.d.ts +4 -4
- package/dist/adapter/ember/ezsp/buffalo.d.ts.map +1 -1
- package/dist/adapter/ember/ezsp/buffalo.js +35 -34
- package/dist/adapter/ember/ezsp/buffalo.js.map +1 -1
- package/dist/adapter/ember/ezsp/consts.d.ts.map +1 -1
- package/dist/adapter/ember/ezsp/consts.js +4 -4
- package/dist/adapter/ember/ezsp/consts.js.map +1 -1
- package/dist/adapter/ember/ezsp/enums.d.ts.map +1 -1
- package/dist/adapter/ember/ezsp/enums.js +0 -2
- package/dist/adapter/ember/ezsp/enums.js.map +1 -1
- package/dist/adapter/ember/ezsp/ezsp.d.ts +23 -20
- package/dist/adapter/ember/ezsp/ezsp.d.ts.map +1 -1
- package/dist/adapter/ember/ezsp/ezsp.js +1146 -1141
- package/dist/adapter/ember/ezsp/ezsp.js.map +1 -1
- package/dist/adapter/ember/ezspError.d.ts +1 -1
- package/dist/adapter/ember/ezspError.d.ts.map +1 -1
- package/dist/adapter/ember/ezspError.js.map +1 -1
- package/dist/adapter/ember/types.d.ts +2 -1
- package/dist/adapter/ember/types.d.ts.map +1 -1
- package/dist/adapter/ember/uart/ash.d.ts +5 -5
- package/dist/adapter/ember/uart/ash.d.ts.map +1 -1
- package/dist/adapter/ember/uart/ash.js +66 -65
- package/dist/adapter/ember/uart/ash.js.map +1 -1
- package/dist/adapter/ember/uart/consts.d.ts.map +1 -1
- package/dist/adapter/ember/uart/consts.js +9 -9
- package/dist/adapter/ember/uart/consts.js.map +1 -1
- package/dist/adapter/ember/uart/enums.d.ts.map +1 -1
- package/dist/adapter/ember/uart/parser.d.ts +1 -1
- package/dist/adapter/ember/uart/parser.d.ts.map +1 -1
- package/dist/adapter/ember/uart/parser.js +1 -1
- package/dist/adapter/ember/uart/parser.js.map +1 -1
- package/dist/adapter/ember/uart/queues.d.ts.map +1 -1
- package/dist/adapter/ember/uart/queues.js +1 -1
- package/dist/adapter/ember/uart/queues.js.map +1 -1
- package/dist/adapter/ember/uart/writer.d.ts +1 -1
- package/dist/adapter/ember/uart/writer.d.ts.map +1 -1
- package/dist/adapter/ember/uart/writer.js +2 -3
- package/dist/adapter/ember/uart/writer.js.map +1 -1
- package/dist/adapter/ember/utils/initters.d.ts +2 -2
- package/dist/adapter/ember/utils/initters.d.ts.map +1 -1
- package/dist/adapter/ember/utils/initters.js +1 -0
- package/dist/adapter/ember/utils/initters.js.map +1 -1
- package/dist/adapter/ember/utils/math.d.ts.map +1 -1
- package/dist/adapter/ember/utils/math.js +11 -11
- package/dist/adapter/ember/utils/math.js.map +1 -1
- package/dist/adapter/events.d.ts +1 -1
- package/dist/adapter/events.d.ts.map +1 -1
- package/dist/adapter/ezsp/adapter/backup.d.ts +1 -1
- package/dist/adapter/ezsp/adapter/backup.d.ts.map +1 -1
- package/dist/adapter/ezsp/adapter/backup.js +11 -10
- package/dist/adapter/ezsp/adapter/backup.js.map +1 -1
- package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts +4 -4
- package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts.map +1 -1
- package/dist/adapter/ezsp/adapter/ezspAdapter.js +74 -41
- package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -1
- package/dist/adapter/ezsp/adapter/index.d.ts +1 -1
- package/dist/adapter/ezsp/adapter/index.d.ts.map +1 -1
- package/dist/adapter/ezsp/adapter/index.js.map +1 -1
- package/dist/adapter/ezsp/driver/commands.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/commands.js +452 -452
- package/dist/adapter/ezsp/driver/commands.js.map +1 -1
- package/dist/adapter/ezsp/driver/consts.js +4 -4
- package/dist/adapter/ezsp/driver/consts.js.map +1 -1
- package/dist/adapter/ezsp/driver/driver.d.ts +5 -5
- package/dist/adapter/ezsp/driver/driver.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/driver.js +82 -82
- package/dist/adapter/ezsp/driver/driver.js.map +1 -1
- package/dist/adapter/ezsp/driver/ezsp.d.ts +3 -3
- package/dist/adapter/ezsp/driver/ezsp.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/ezsp.js +58 -58
- package/dist/adapter/ezsp/driver/ezsp.js.map +1 -1
- package/dist/adapter/ezsp/driver/frame.js +9 -9
- package/dist/adapter/ezsp/driver/frame.js.map +1 -1
- package/dist/adapter/ezsp/driver/index.d.ts +1 -1
- package/dist/adapter/ezsp/driver/index.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/index.js +2 -2
- package/dist/adapter/ezsp/driver/index.js.map +1 -1
- package/dist/adapter/ezsp/driver/multicast.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/multicast.js +1 -1
- package/dist/adapter/ezsp/driver/multicast.js.map +1 -1
- package/dist/adapter/ezsp/driver/parser.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/parser.js +1 -1
- package/dist/adapter/ezsp/driver/parser.js.map +1 -1
- package/dist/adapter/ezsp/driver/types/basic.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/types/basic.js +5 -5
- package/dist/adapter/ezsp/driver/types/basic.js.map +1 -1
- package/dist/adapter/ezsp/driver/types/index.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/types/index.js.map +1 -1
- package/dist/adapter/ezsp/driver/types/named.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/types/named.js +236 -234
- package/dist/adapter/ezsp/driver/types/named.js.map +1 -1
- package/dist/adapter/ezsp/driver/types/struct.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/types/struct.js +5 -3
- package/dist/adapter/ezsp/driver/types/struct.js.map +1 -1
- package/dist/adapter/ezsp/driver/uart.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/uart.js +8 -8
- package/dist/adapter/ezsp/driver/uart.js.map +1 -1
- package/dist/adapter/ezsp/driver/utils/index.d.ts +1 -1
- package/dist/adapter/ezsp/driver/utils/index.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/utils/index.js +12 -11
- package/dist/adapter/ezsp/driver/utils/index.js.map +1 -1
- package/dist/adapter/ezsp/driver/writer.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/writer.js +6 -7
- package/dist/adapter/ezsp/driver/writer.js.map +1 -1
- package/dist/adapter/index.d.ts +2 -2
- package/dist/adapter/index.d.ts.map +1 -1
- package/dist/adapter/index.js +2 -2
- package/dist/adapter/index.js.map +1 -1
- package/dist/adapter/serialPort.d.ts +1 -1
- package/dist/adapter/serialPort.d.ts.map +1 -1
- package/dist/adapter/serialPort.js +1 -1
- package/dist/adapter/serialPort.js.map +1 -1
- package/dist/adapter/serialPortUtils.js +1 -1
- package/dist/adapter/serialPortUtils.js.map +1 -1
- package/dist/adapter/socketPortUtils.js +3 -3
- package/dist/adapter/tstype.d.ts +1 -1
- package/dist/adapter/tstype.d.ts.map +1 -1
- package/dist/adapter/z-stack/adapter/adapter-backup.d.ts +3 -3
- package/dist/adapter/z-stack/adapter/adapter-backup.d.ts.map +1 -1
- package/dist/adapter/z-stack/adapter/adapter-backup.js +101 -86
- package/dist/adapter/z-stack/adapter/adapter-backup.js.map +1 -1
- package/dist/adapter/z-stack/adapter/adapter-nv-memory.d.ts +10 -10
- package/dist/adapter/z-stack/adapter/adapter-nv-memory.d.ts.map +1 -1
- package/dist/adapter/z-stack/adapter/adapter-nv-memory.js +30 -24
- package/dist/adapter/z-stack/adapter/adapter-nv-memory.js.map +1 -1
- package/dist/adapter/z-stack/adapter/endpoints.d.ts.map +1 -1
- package/dist/adapter/z-stack/adapter/endpoints.js +4 -4
- package/dist/adapter/z-stack/adapter/endpoints.js.map +1 -1
- package/dist/adapter/z-stack/adapter/index.d.ts +1 -1
- package/dist/adapter/z-stack/adapter/index.d.ts.map +1 -1
- package/dist/adapter/z-stack/adapter/index.js.map +1 -1
- package/dist/adapter/z-stack/adapter/manager.d.ts +5 -5
- package/dist/adapter/z-stack/adapter/manager.d.ts.map +1 -1
- package/dist/adapter/z-stack/adapter/manager.js +90 -81
- package/dist/adapter/z-stack/adapter/manager.js.map +1 -1
- package/dist/adapter/z-stack/adapter/tstype.d.ts +1 -1
- package/dist/adapter/z-stack/adapter/tstype.d.ts.map +1 -1
- package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts +5 -5
- package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts.map +1 -1
- package/dist/adapter/z-stack/adapter/zStackAdapter.js +72 -57
- package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +1 -1
- package/dist/adapter/z-stack/constants/af.js +5 -5
- package/dist/adapter/z-stack/constants/af.js.map +1 -1
- package/dist/adapter/z-stack/constants/dbg.js +2 -2
- package/dist/adapter/z-stack/constants/index.d.ts +2 -2
- package/dist/adapter/z-stack/constants/index.d.ts.map +1 -1
- package/dist/adapter/z-stack/constants/index.js +2 -2
- package/dist/adapter/z-stack/constants/index.js.map +1 -1
- package/dist/adapter/z-stack/constants/mac.js +11 -11
- package/dist/adapter/z-stack/constants/sapi.js +4 -4
- package/dist/adapter/z-stack/constants/sys.js +11 -11
- package/dist/adapter/z-stack/constants/util.js +11 -11
- package/dist/adapter/z-stack/constants/utils.d.ts.map +1 -1
- package/dist/adapter/z-stack/constants/utils.js +3 -3
- package/dist/adapter/z-stack/constants/utils.js.map +1 -1
- package/dist/adapter/z-stack/constants/zdo.js +13 -13
- package/dist/adapter/z-stack/models/index.d.ts +1 -1
- package/dist/adapter/z-stack/models/startup-options.d.ts +2 -2
- package/dist/adapter/z-stack/structs/entries/address-manager-entry.d.ts +1 -1
- package/dist/adapter/z-stack/structs/entries/address-manager-entry.js +4 -4
- package/dist/adapter/z-stack/structs/entries/address-manager-entry.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/address-manager-table.d.ts +2 -2
- package/dist/adapter/z-stack/structs/entries/address-manager-table.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/address-manager-table.js +4 -7
- 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.d.ts +1 -1
- package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js +1 -5
- 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.d.ts +2 -2
- package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js +3 -6
- 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.d.ts +1 -1
- package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js +6 -6
- package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.d.ts +2 -2
- package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js +3 -6
- 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.d.ts +1 -1
- package/dist/adapter/z-stack/structs/entries/channel-list.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/channel-list.js +1 -3
- package/dist/adapter/z-stack/structs/entries/channel-list.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/has-configured.d.ts +1 -1
- package/dist/adapter/z-stack/structs/entries/has-configured.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/has-configured.js +2 -2
- package/dist/adapter/z-stack/structs/entries/has-configured.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/index.d.ts +16 -16
- package/dist/adapter/z-stack/structs/entries/nib.d.ts +1 -1
- package/dist/adapter/z-stack/structs/entries/nib.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nib.js +50 -50
- package/dist/adapter/z-stack/structs/entries/nib.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.d.ts +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js +1 -4
- package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-key.d.ts +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-key.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-key.js +1 -3
- package/dist/adapter/z-stack/structs/entries/nwk-key.js.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-pan-id.d.ts +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-pan-id.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js +1 -3
- 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.d.ts +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js +3 -3
- 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.d.ts +2 -2
- package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js +3 -6
- 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.d.ts +1 -1
- package/dist/adapter/z-stack/structs/entries/security-manager-entry.js +4 -4
- package/dist/adapter/z-stack/structs/entries/security-manager-table.d.ts +2 -2
- package/dist/adapter/z-stack/structs/entries/security-manager-table.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/entries/security-manager-table.js +3 -7
- package/dist/adapter/z-stack/structs/entries/security-manager-table.js.map +1 -1
- package/dist/adapter/z-stack/structs/index.d.ts +4 -4
- package/dist/adapter/z-stack/structs/serializable-memory-object.d.ts +1 -1
- package/dist/adapter/z-stack/structs/struct.d.ts +6 -6
- package/dist/adapter/z-stack/structs/struct.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/struct.js +53 -52
- package/dist/adapter/z-stack/structs/struct.js.map +1 -1
- package/dist/adapter/z-stack/structs/table.d.ts +3 -3
- package/dist/adapter/z-stack/structs/table.d.ts.map +1 -1
- package/dist/adapter/z-stack/structs/table.js +16 -16
- package/dist/adapter/z-stack/structs/table.js.map +1 -1
- package/dist/adapter/z-stack/unpi/constants.d.ts +1 -1
- package/dist/adapter/z-stack/unpi/constants.d.ts.map +1 -1
- package/dist/adapter/z-stack/unpi/constants.js +1 -1
- package/dist/adapter/z-stack/unpi/constants.js.map +1 -1
- package/dist/adapter/z-stack/unpi/frame.d.ts.map +1 -1
- package/dist/adapter/z-stack/unpi/frame.js +5 -6
- package/dist/adapter/z-stack/unpi/frame.js.map +1 -1
- package/dist/adapter/z-stack/unpi/index.d.ts +4 -4
- package/dist/adapter/z-stack/unpi/index.d.ts.map +1 -1
- package/dist/adapter/z-stack/unpi/index.js +6 -6
- package/dist/adapter/z-stack/unpi/index.js.map +1 -1
- package/dist/adapter/z-stack/unpi/parser.d.ts.map +1 -1
- package/dist/adapter/z-stack/unpi/parser.js +1 -1
- package/dist/adapter/z-stack/unpi/parser.js.map +1 -1
- package/dist/adapter/z-stack/unpi/writer.d.ts.map +1 -1
- package/dist/adapter/z-stack/unpi/writer.js.map +1 -1
- package/dist/adapter/z-stack/utils/channel-list.d.ts.map +1 -1
- package/dist/adapter/z-stack/utils/channel-list.js +5 -2
- package/dist/adapter/z-stack/utils/channel-list.js.map +1 -1
- package/dist/adapter/z-stack/utils/index.d.ts +2 -2
- package/dist/adapter/z-stack/utils/network-options.d.ts +1 -1
- package/dist/adapter/z-stack/utils/network-options.d.ts.map +1 -1
- package/dist/adapter/z-stack/utils/network-options.js +1 -1
- package/dist/adapter/z-stack/utils/network-options.js.map +1 -1
- package/dist/adapter/z-stack/znp/buffaloZnp.d.ts.map +1 -1
- package/dist/adapter/z-stack/znp/buffaloZnp.js +8 -8
- package/dist/adapter/z-stack/znp/buffaloZnp.js.map +1 -1
- package/dist/adapter/z-stack/znp/definition.d.ts.map +1 -1
- package/dist/adapter/z-stack/znp/definition.js +200 -592
- package/dist/adapter/z-stack/znp/definition.js.map +1 -1
- package/dist/adapter/z-stack/znp/index.d.ts +1 -1
- package/dist/adapter/z-stack/znp/index.d.ts.map +1 -1
- package/dist/adapter/z-stack/znp/index.js.map +1 -1
- package/dist/adapter/z-stack/znp/parameterType.d.ts.map +1 -1
- package/dist/adapter/z-stack/znp/parameterType.js.map +1 -1
- package/dist/adapter/z-stack/znp/tstype.d.ts.map +1 -1
- package/dist/adapter/z-stack/znp/znp.d.ts +3 -3
- package/dist/adapter/z-stack/znp/znp.d.ts.map +1 -1
- package/dist/adapter/z-stack/znp/znp.js +12 -15
- package/dist/adapter/z-stack/znp/znp.js.map +1 -1
- package/dist/adapter/z-stack/znp/zpiObject.d.ts +1 -1
- package/dist/adapter/z-stack/znp/zpiObject.d.ts.map +1 -1
- package/dist/adapter/z-stack/znp/zpiObject.js +17 -9
- package/dist/adapter/z-stack/znp/zpiObject.js.map +1 -1
- package/dist/adapter/zigate/adapter/index.d.ts.map +1 -1
- package/dist/adapter/zigate/adapter/index.js.map +1 -1
- package/dist/adapter/zigate/adapter/zigateAdapter.d.ts +1 -1
- package/dist/adapter/zigate/adapter/zigateAdapter.d.ts.map +1 -1
- package/dist/adapter/zigate/adapter/zigateAdapter.js +88 -92
- package/dist/adapter/zigate/adapter/zigateAdapter.js.map +1 -1
- package/dist/adapter/zigate/driver/buffaloZiGate.js.map +1 -1
- package/dist/adapter/zigate/driver/commandType.d.ts +2 -2
- package/dist/adapter/zigate/driver/commandType.d.ts.map +1 -1
- package/dist/adapter/zigate/driver/commandType.js +72 -80
- package/dist/adapter/zigate/driver/commandType.js.map +1 -1
- package/dist/adapter/zigate/driver/constants.d.ts +9 -9
- package/dist/adapter/zigate/driver/constants.d.ts.map +1 -1
- package/dist/adapter/zigate/driver/constants.js +11 -65
- package/dist/adapter/zigate/driver/constants.js.map +1 -1
- package/dist/adapter/zigate/driver/frame.d.ts.map +1 -1
- package/dist/adapter/zigate/driver/frame.js +3 -15
- package/dist/adapter/zigate/driver/frame.js.map +1 -1
- package/dist/adapter/zigate/driver/messageType.d.ts +1 -1
- package/dist/adapter/zigate/driver/messageType.d.ts.map +1 -1
- package/dist/adapter/zigate/driver/messageType.js +29 -30
- package/dist/adapter/zigate/driver/messageType.js.map +1 -1
- package/dist/adapter/zigate/driver/parameterType.d.ts.map +1 -1
- package/dist/adapter/zigate/driver/parameterType.js.map +1 -1
- package/dist/adapter/zigate/driver/ziGateObject.d.ts +2 -2
- package/dist/adapter/zigate/driver/ziGateObject.d.ts.map +1 -1
- package/dist/adapter/zigate/driver/ziGateObject.js +11 -5
- package/dist/adapter/zigate/driver/ziGateObject.js.map +1 -1
- package/dist/adapter/zigate/driver/zigate.d.ts +5 -5
- package/dist/adapter/zigate/driver/zigate.d.ts.map +1 -1
- package/dist/adapter/zigate/driver/zigate.js +12 -12
- package/dist/adapter/zigate/driver/zigate.js.map +1 -1
- package/dist/buffalo/buffalo.d.ts +1 -1
- package/dist/buffalo/buffalo.d.ts.map +1 -1
- package/dist/buffalo/buffalo.js +1 -1
- package/dist/buffalo/buffalo.js.map +1 -1
- package/dist/controller/controller.d.ts.map +1 -1
- package/dist/controller/controller.js +34 -33
- package/dist/controller/controller.js.map +1 -1
- package/dist/controller/database.d.ts.map +1 -1
- package/dist/controller/database.js +6 -2
- package/dist/controller/database.js.map +1 -1
- package/dist/controller/events.d.ts +3 -3
- package/dist/controller/events.d.ts.map +1 -1
- package/dist/controller/greenPower.d.ts +1 -1
- package/dist/controller/greenPower.d.ts.map +1 -1
- package/dist/controller/greenPower.js +15 -17
- package/dist/controller/greenPower.js.map +1 -1
- package/dist/controller/helpers/index.d.ts +1 -1
- package/dist/controller/helpers/index.d.ts.map +1 -1
- package/dist/controller/helpers/index.js.map +1 -1
- package/dist/controller/helpers/request.d.ts +1 -1
- package/dist/controller/helpers/request.d.ts.map +1 -1
- package/dist/controller/helpers/request.js +7 -10
- package/dist/controller/helpers/request.js.map +1 -1
- package/dist/controller/helpers/requestQueue.d.ts.map +1 -1
- package/dist/controller/helpers/requestQueue.js +2 -3
- package/dist/controller/helpers/requestQueue.js.map +1 -1
- package/dist/controller/helpers/zclFrameConverter.d.ts +1 -1
- package/dist/controller/helpers/zclFrameConverter.d.ts.map +1 -1
- package/dist/controller/helpers/zclFrameConverter.js.map +1 -1
- package/dist/controller/index.d.ts +1 -1
- package/dist/controller/index.d.ts.map +1 -1
- package/dist/controller/index.js.map +1 -1
- package/dist/controller/model/device.d.ts +3 -3
- package/dist/controller/model/device.d.ts.map +1 -1
- package/dist/controller/model/device.js +247 -94
- package/dist/controller/model/device.js.map +1 -1
- package/dist/controller/model/endpoint.d.ts +4 -4
- package/dist/controller/model/endpoint.d.ts.map +1 -1
- package/dist/controller/model/endpoint.js +45 -31
- package/dist/controller/model/endpoint.js.map +1 -1
- package/dist/controller/model/entity.d.ts +2 -2
- package/dist/controller/model/entity.d.ts.map +1 -1
- package/dist/controller/model/entity.js.map +1 -1
- package/dist/controller/model/group.d.ts +2 -2
- package/dist/controller/model/group.d.ts.map +1 -1
- package/dist/controller/model/group.js +8 -6
- package/dist/controller/model/group.js.map +1 -1
- package/dist/controller/model/index.d.ts +1 -1
- package/dist/controller/model/index.d.ts.map +1 -1
- package/dist/controller/model/index.js.map +1 -1
- package/dist/controller/touchlink.d.ts.map +1 -1
- package/dist/controller/touchlink.js +2 -2
- package/dist/controller/touchlink.js.map +1 -1
- package/dist/controller/tstype.d.ts.map +1 -1
- package/dist/controller/tstype.js +0 -1
- package/dist/controller/tstype.js.map +1 -1
- package/dist/models/backup-storage-legacy.d.ts +4 -4
- package/dist/models/backup-storage-legacy.d.ts.map +1 -1
- package/dist/models/backup-storage-unified.d.ts +1 -1
- package/dist/models/backup.d.ts +2 -2
- package/dist/models/index.d.ts +4 -4
- package/dist/utils/backup.d.ts +1 -1
- package/dist/utils/backup.d.ts.map +1 -1
- package/dist/utils/backup.js +71 -58
- package/dist/utils/backup.js.map +1 -1
- package/dist/utils/index.d.ts +6 -6
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +10 -10
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/isNumberArray.js +1 -1
- package/dist/utils/isNumberArray.js.map +1 -1
- package/dist/utils/queue.js +1 -1
- package/dist/utils/queue.js.map +1 -1
- package/dist/utils/waitress.d.ts.map +1 -1
- package/dist/utils/waitress.js +2 -2
- package/dist/utils/waitress.js.map +1 -1
- package/dist/zspec/consts.d.ts +1 -1
- package/dist/zspec/consts.d.ts.map +1 -1
- package/dist/zspec/consts.js +16 -16
- package/dist/zspec/consts.js.map +1 -1
- package/dist/zspec/enums.js +0 -1
- package/dist/zspec/enums.js.map +1 -1
- package/dist/zspec/utils.d.ts.map +1 -1
- package/dist/zspec/utils.js +5 -3
- package/dist/zspec/utils.js.map +1 -1
- package/dist/zspec/zcl/buffaloZcl.d.ts +2 -2
- package/dist/zspec/zcl/buffaloZcl.d.ts.map +1 -1
- package/dist/zspec/zcl/buffaloZcl.js +44 -51
- package/dist/zspec/zcl/buffaloZcl.js.map +1 -1
- package/dist/zspec/zcl/definition/cluster.d.ts.map +1 -1
- package/dist/zspec/zcl/definition/cluster.js +284 -380
- package/dist/zspec/zcl/definition/cluster.js.map +1 -1
- package/dist/zspec/zcl/definition/consts.js +10 -10
- package/dist/zspec/zcl/definition/consts.js.map +1 -1
- package/dist/zspec/zcl/definition/enums.d.ts.map +1 -1
- package/dist/zspec/zcl/definition/enums.js.map +1 -1
- package/dist/zspec/zcl/definition/foundation.d.ts +1 -1
- package/dist/zspec/zcl/definition/foundation.d.ts.map +1 -1
- package/dist/zspec/zcl/definition/foundation.js +51 -22
- package/dist/zspec/zcl/definition/foundation.js.map +1 -1
- package/dist/zspec/zcl/definition/manufacturerCode.js +0 -1
- package/dist/zspec/zcl/definition/manufacturerCode.js.map +1 -1
- package/dist/zspec/zcl/definition/status.d.ts.map +1 -1
- package/dist/zspec/zcl/definition/tstype.d.ts +1 -1
- package/dist/zspec/zcl/definition/tstype.d.ts.map +1 -1
- package/dist/zspec/zcl/definition/tstype.js +0 -1
- package/dist/zspec/zcl/definition/tstype.js.map +1 -1
- package/dist/zspec/zcl/utils.d.ts.map +1 -1
- package/dist/zspec/zcl/utils.js +59 -19
- package/dist/zspec/zcl/utils.js.map +1 -1
- package/dist/zspec/zcl/zclFrame.d.ts +1 -1
- package/dist/zspec/zcl/zclFrame.d.ts.map +1 -1
- package/dist/zspec/zcl/zclFrame.js +14 -15
- package/dist/zspec/zcl/zclFrame.js.map +1 -1
- package/dist/zspec/zcl/zclHeader.d.ts +1 -1
- package/dist/zspec/zcl/zclHeader.d.ts.map +1 -1
- package/dist/zspec/zcl/zclHeader.js +7 -7
- package/dist/zspec/zcl/zclHeader.js.map +1 -1
- package/dist/zspec/zcl/zclStatusError.d.ts.map +1 -1
- package/dist/zspec/zcl/zclStatusError.js.map +1 -1
- package/dist/zspec/zdo/buffaloZdo.d.ts +3 -3
- package/dist/zspec/zdo/buffaloZdo.d.ts.map +1 -1
- package/dist/zspec/zdo/buffaloZdo.js +92 -92
- package/dist/zspec/zdo/buffaloZdo.js.map +1 -1
- package/dist/zspec/zdo/definition/clusters.d.ts.map +1 -1
- package/dist/zspec/zdo/definition/clusters.js +0 -1
- package/dist/zspec/zdo/definition/clusters.js.map +1 -1
- package/dist/zspec/zdo/definition/consts.d.ts.map +1 -1
- package/dist/zspec/zdo/definition/consts.js.map +1 -1
- package/dist/zspec/zdo/definition/enums.d.ts.map +1 -1
- package/dist/zspec/zdo/definition/enums.js +0 -5
- package/dist/zspec/zdo/definition/enums.js.map +1 -1
- package/dist/zspec/zdo/definition/status.d.ts.map +1 -1
- package/dist/zspec/zdo/definition/status.js +0 -1
- package/dist/zspec/zdo/definition/status.js.map +1 -1
- package/dist/zspec/zdo/definition/tstypes.d.ts +2 -2
- package/dist/zspec/zdo/definition/tstypes.d.ts.map +1 -1
- package/dist/zspec/zdo/utils.d.ts.map +1 -1
- package/dist/zspec/zdo/utils.js +14 -14
- package/dist/zspec/zdo/utils.js.map +1 -1
- package/dist/zspec/zdo/zdoStatusError.d.ts.map +1 -1
- package/dist/zspec/zdo/zdoStatusError.js.map +1 -1
- package/package.json +6 -1
- package/dist/adapter/ember/adapter/requestQueue.d.ts +0 -67
- package/dist/adapter/ember/adapter/requestQueue.d.ts.map +0 -1
- package/dist/adapter/ember/adapter/requestQueue.js +0 -159
- package/dist/adapter/ember/adapter/requestQueue.js.map +0 -1
|
@@ -28,15 +28,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
exports.BuffaloZdo = void 0;
|
|
30
30
|
const buffalo_1 = __importDefault(require("../../buffalo/buffalo"));
|
|
31
|
-
const status_1 = require("./definition/status");
|
|
32
|
-
const zdoStatusError_1 = require("./zdoStatusError");
|
|
33
|
-
const enums_1 = require("./definition/enums");
|
|
34
|
-
const consts_1 = require("./definition/consts");
|
|
35
31
|
const logger_1 = require("../../utils/logger");
|
|
36
|
-
const
|
|
37
|
-
const Utils = __importStar(require("./utils"));
|
|
32
|
+
const consts_1 = require("../consts");
|
|
38
33
|
const ZSpecUtils = __importStar(require("../utils"));
|
|
39
34
|
const clusters_1 = require("./definition/clusters");
|
|
35
|
+
const consts_2 = require("./definition/consts");
|
|
36
|
+
const enums_1 = require("./definition/enums");
|
|
37
|
+
const status_1 = require("./definition/status");
|
|
38
|
+
const Utils = __importStar(require("./utils"));
|
|
39
|
+
const zdoStatusError_1 = require("./zdoStatusError");
|
|
40
40
|
const NS = 'zh:zdo:buffalo';
|
|
41
41
|
const MAX_BUFFER_SIZE = 255;
|
|
42
42
|
class BuffaloZdo extends buffalo_1.default {
|
|
@@ -73,7 +73,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
73
73
|
* @returns True if has given more bytes
|
|
74
74
|
*/
|
|
75
75
|
isMoreBy(count) {
|
|
76
|
-
return
|
|
76
|
+
return this.position + count <= this.buffer.length;
|
|
77
77
|
}
|
|
78
78
|
//-- GLOBAL TLVS
|
|
79
79
|
writeManufacturerSpecificGlobalTLV(tlv) {
|
|
@@ -107,7 +107,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
107
107
|
const keyNegotiationProtocolsBitmask = this.readUInt8();
|
|
108
108
|
const preSharedSecretsBitmask = this.readUInt8();
|
|
109
109
|
let sourceDeviceEui64;
|
|
110
|
-
if (length >=
|
|
110
|
+
if (length >= 2 + consts_1.EUI64_SIZE) {
|
|
111
111
|
sourceDeviceEui64 = this.readIeeeAddr();
|
|
112
112
|
}
|
|
113
113
|
return {
|
|
@@ -134,8 +134,8 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
134
134
|
}
|
|
135
135
|
readNextPanIdChangeGlobalTLV(length) {
|
|
136
136
|
logger_1.logger.debug(`readNextPanIdChangeGlobalTLV with length=${length}`, NS);
|
|
137
|
-
if (length <
|
|
138
|
-
throw new Error(`Malformed TLV. Invalid length '${length}', expected at least ${
|
|
137
|
+
if (length < consts_1.PAN_ID_SIZE) {
|
|
138
|
+
throw new Error(`Malformed TLV. Invalid length '${length}', expected at least ${consts_1.PAN_ID_SIZE}.`);
|
|
139
139
|
}
|
|
140
140
|
const panId = this.readUInt16();
|
|
141
141
|
return {
|
|
@@ -156,14 +156,14 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
156
156
|
};
|
|
157
157
|
}
|
|
158
158
|
writeSymmetricPassphraseGlobalTLV(tlv) {
|
|
159
|
-
this.writeBuffer(tlv.passphrase,
|
|
159
|
+
this.writeBuffer(tlv.passphrase, consts_1.DEFAULT_ENCRYPTION_KEY_SIZE);
|
|
160
160
|
}
|
|
161
161
|
readSymmetricPassphraseGlobalTLV(length) {
|
|
162
162
|
logger_1.logger.debug(`readSymmetricPassphraseGlobalTLV with length=${length}`, NS);
|
|
163
|
-
if (length <
|
|
164
|
-
throw new Error(`Malformed TLV. Invalid length '${length}', expected at least ${
|
|
163
|
+
if (length < consts_1.DEFAULT_ENCRYPTION_KEY_SIZE) {
|
|
164
|
+
throw new Error(`Malformed TLV. Invalid length '${length}', expected at least ${consts_1.DEFAULT_ENCRYPTION_KEY_SIZE}.`);
|
|
165
165
|
}
|
|
166
|
-
const passphrase = this.readBuffer(
|
|
166
|
+
const passphrase = this.readBuffer(consts_1.DEFAULT_ENCRYPTION_KEY_SIZE);
|
|
167
167
|
return {
|
|
168
168
|
passphrase,
|
|
169
169
|
};
|
|
@@ -389,11 +389,11 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
389
389
|
// }
|
|
390
390
|
readCurve25519PublicPointTLV(length) {
|
|
391
391
|
logger_1.logger.debug(`readCurve25519PublicPointTLV with length=${length}`, NS);
|
|
392
|
-
if (length !==
|
|
393
|
-
throw new Error(`Malformed TLV. Invalid length '${length}', expected ${
|
|
392
|
+
if (length !== consts_1.EUI64_SIZE + consts_2.CURVE_PUBLIC_POINT_SIZE) {
|
|
393
|
+
throw new Error(`Malformed TLV. Invalid length '${length}', expected ${consts_1.EUI64_SIZE + consts_2.CURVE_PUBLIC_POINT_SIZE}.`);
|
|
394
394
|
}
|
|
395
395
|
const eui64 = this.readIeeeAddr();
|
|
396
|
-
const publicPoint = this.readBuffer(
|
|
396
|
+
const publicPoint = this.readBuffer(consts_2.CURVE_PUBLIC_POINT_SIZE);
|
|
397
397
|
return {
|
|
398
398
|
eui64,
|
|
399
399
|
publicPoint,
|
|
@@ -450,7 +450,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
450
450
|
throw new Error(`Malformed TLV. Invalid length '${length}', expected 32.`);
|
|
451
451
|
}
|
|
452
452
|
const responderEui64 = this.readIeeeAddr();
|
|
453
|
-
const receivedChallengeValue = this.readBuffer(
|
|
453
|
+
const receivedChallengeValue = this.readBuffer(consts_2.CHALLENGE_VALUE_SIZE);
|
|
454
454
|
const apsFrameCounter = this.readUInt32();
|
|
455
455
|
const challengeSecurityFrameCounter = this.readUInt32();
|
|
456
456
|
const mic = this.readBuffer(8);
|
|
@@ -487,8 +487,8 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
487
487
|
const currentParentLQA = this.readUInt8();
|
|
488
488
|
// [0x00 - 0x05]
|
|
489
489
|
const entryCount = this.readUInt8();
|
|
490
|
-
if (length !==
|
|
491
|
-
throw new Error(`Malformed TLV. Invalid length '${length}', expected ${
|
|
490
|
+
if (length !== 4 + entryCount * 3) {
|
|
491
|
+
throw new Error(`Malformed TLV. Invalid length '${length}', expected ${4 + entryCount * 3}.`);
|
|
492
492
|
}
|
|
493
493
|
const potentialParents = [];
|
|
494
494
|
for (let i = 0; i < entryCount; i++) {
|
|
@@ -523,8 +523,8 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
523
523
|
readProcessingStatusTLV(length) {
|
|
524
524
|
logger_1.logger.debug(`readProcessingStatusTLV with length=${length}`, NS);
|
|
525
525
|
const count = this.readUInt8();
|
|
526
|
-
if (length !==
|
|
527
|
-
throw new Error(`Malformed TLV. Invalid length '${length}', expected ${
|
|
526
|
+
if (length !== 1 + count * 2) {
|
|
527
|
+
throw new Error(`Malformed TLV. Invalid length '${length}', expected ${1 + count * 2}.`);
|
|
528
528
|
}
|
|
529
529
|
const tlvs = [];
|
|
530
530
|
for (let i = 0; i < count; i++) {
|
|
@@ -556,11 +556,11 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
556
556
|
while (this.isMore()) {
|
|
557
557
|
const tagId = this.readUInt8();
|
|
558
558
|
// validation: cannot have duplicate tagId, except MANUFACTURER_SPECIFIC_GLOBAL_TLV
|
|
559
|
-
if (
|
|
559
|
+
if (tagId !== enums_1.GlobalTLV.MANUFACTURER_SPECIFIC && tlvs.findIndex((tlv) => tlv.tagId === tagId) !== -1) {
|
|
560
560
|
throw new Error(`Duplicate tag. Cannot have more than one of tagId=${tagId}.`);
|
|
561
561
|
}
|
|
562
562
|
// validation: encapsulation TLV cannot contain another encapsulation TLV, outer considered malformed, reject message
|
|
563
|
-
if (encapsulated && (
|
|
563
|
+
if (encapsulated && (tagId === enums_1.GlobalTLV.BEACON_APPENDIX_ENCAPSULATION || tagId === enums_1.GlobalTLV.JOINER_ENCAPSULATION)) {
|
|
564
564
|
throw new Error(`Invalid nested encapsulation for tagId=${tagId}.`);
|
|
565
565
|
}
|
|
566
566
|
const length = this.readUInt8() + 1; // add offset (spec quirk...)
|
|
@@ -616,7 +616,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
616
616
|
* @param childStartIndex The index of the first child to list in the response. Ignored if reportKids is false.
|
|
617
617
|
*/
|
|
618
618
|
static buildNetworkAddressRequest(target, reportKids, childStartIndex) {
|
|
619
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
619
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
620
620
|
buffalo.writeIeeeAddr(target);
|
|
621
621
|
buffalo.writeUInt8(reportKids ? 1 : 0);
|
|
622
622
|
buffalo.writeUInt8(childStartIndex);
|
|
@@ -630,7 +630,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
630
630
|
* @param childStartIndex The index of the first child to list in the response. Ignored if reportKids is false.
|
|
631
631
|
*/
|
|
632
632
|
static buildIeeeAddressRequest(target, reportKids, childStartIndex) {
|
|
633
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
633
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
634
634
|
buffalo.writeUInt16(target);
|
|
635
635
|
buffalo.writeUInt8(reportKids ? 1 : 0);
|
|
636
636
|
buffalo.writeUInt8(childStartIndex);
|
|
@@ -641,7 +641,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
641
641
|
* @param target NWK address for the request
|
|
642
642
|
*/
|
|
643
643
|
static buildNodeDescriptorRequest(target, fragmentationParameters) {
|
|
644
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
644
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
645
645
|
buffalo.writeUInt16(target);
|
|
646
646
|
if (fragmentationParameters) {
|
|
647
647
|
let length = 2;
|
|
@@ -662,7 +662,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
662
662
|
* @param target NWK address for the request
|
|
663
663
|
*/
|
|
664
664
|
static buildPowerDescriptorRequest(target) {
|
|
665
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
665
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
666
666
|
buffalo.writeUInt16(target);
|
|
667
667
|
return buffalo.getWritten();
|
|
668
668
|
}
|
|
@@ -672,7 +672,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
672
672
|
* @param targetEndpoint The endpoint on the destination
|
|
673
673
|
*/
|
|
674
674
|
static buildSimpleDescriptorRequest(target, targetEndpoint) {
|
|
675
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
675
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
676
676
|
buffalo.writeUInt16(target);
|
|
677
677
|
buffalo.writeUInt8(targetEndpoint);
|
|
678
678
|
return buffalo.getWritten();
|
|
@@ -682,7 +682,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
682
682
|
* @param target NWK address for the request
|
|
683
683
|
*/
|
|
684
684
|
static buildActiveEndpointsRequest(target) {
|
|
685
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
685
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
686
686
|
buffalo.writeUInt16(target);
|
|
687
687
|
return buffalo.getWritten();
|
|
688
688
|
}
|
|
@@ -694,7 +694,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
694
694
|
* @param outClusterList List of Output ClusterIDs to be used for matching
|
|
695
695
|
*/
|
|
696
696
|
static buildMatchDescriptorRequest(target, profileId, inClusterList, outClusterList) {
|
|
697
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
697
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
698
698
|
buffalo.writeUInt16(target);
|
|
699
699
|
buffalo.writeUInt16(profileId);
|
|
700
700
|
buffalo.writeUInt8(inClusterList.length);
|
|
@@ -708,7 +708,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
708
708
|
* @param serverMask See Table 2-34 for bit assignments.
|
|
709
709
|
*/
|
|
710
710
|
static buildSystemServiceDiscoveryRequest(serverMask) {
|
|
711
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
711
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
712
712
|
buffalo.writeUInt16(Utils.createServerMask(serverMask));
|
|
713
713
|
return buffalo.getWritten();
|
|
714
714
|
}
|
|
@@ -717,7 +717,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
717
717
|
* @param children The IEEE addresses of the children bound to the parent.
|
|
718
718
|
*/
|
|
719
719
|
static buildParentAnnounce(children) {
|
|
720
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
720
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
721
721
|
buffalo.writeUInt8(children.length);
|
|
722
722
|
for (const child of children) {
|
|
723
723
|
buffalo.writeIeeeAddr(child);
|
|
@@ -736,18 +736,18 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
736
736
|
* @param destinationEndpoint The destination endpoint for the binding entry. Only if ::UNICAST_BINDING.
|
|
737
737
|
*/
|
|
738
738
|
static buildBindRequest(source, sourceEndpoint, clusterId, type, destination, groupAddress, destinationEndpoint) {
|
|
739
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
739
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
740
740
|
buffalo.writeIeeeAddr(source);
|
|
741
741
|
buffalo.writeUInt8(sourceEndpoint);
|
|
742
742
|
buffalo.writeUInt16(clusterId);
|
|
743
743
|
buffalo.writeUInt8(type);
|
|
744
744
|
switch (type) {
|
|
745
|
-
case
|
|
745
|
+
case consts_2.UNICAST_BINDING: {
|
|
746
746
|
buffalo.writeIeeeAddr(destination);
|
|
747
747
|
buffalo.writeUInt8(destinationEndpoint);
|
|
748
748
|
break;
|
|
749
749
|
}
|
|
750
|
-
case
|
|
750
|
+
case consts_2.MULTICAST_BINDING: {
|
|
751
751
|
buffalo.writeUInt16(groupAddress);
|
|
752
752
|
break;
|
|
753
753
|
}
|
|
@@ -768,18 +768,18 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
768
768
|
* @param destinationEndpoint The destination endpoint for the binding entry. Only if ::UNICAST_BINDING.
|
|
769
769
|
*/
|
|
770
770
|
static buildUnbindRequest(source, sourceEndpoint, clusterId, type, destination, groupAddress, destinationEndpoint) {
|
|
771
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
771
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
772
772
|
buffalo.writeIeeeAddr(source);
|
|
773
773
|
buffalo.writeUInt8(sourceEndpoint);
|
|
774
774
|
buffalo.writeUInt16(clusterId);
|
|
775
775
|
buffalo.writeUInt8(type);
|
|
776
776
|
switch (type) {
|
|
777
|
-
case
|
|
777
|
+
case consts_2.UNICAST_BINDING: {
|
|
778
778
|
buffalo.writeIeeeAddr(destination);
|
|
779
779
|
buffalo.writeUInt8(destinationEndpoint);
|
|
780
780
|
break;
|
|
781
781
|
}
|
|
782
|
-
case
|
|
782
|
+
case consts_2.MULTICAST_BINDING: {
|
|
783
783
|
buffalo.writeUInt16(groupAddress);
|
|
784
784
|
break;
|
|
785
785
|
}
|
|
@@ -792,10 +792,10 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
792
792
|
* @see ClusterId.CLEAR_ALL_BINDINGS_REQUEST
|
|
793
793
|
*/
|
|
794
794
|
static buildClearAllBindingsRequest(tlv) {
|
|
795
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
795
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
796
796
|
// ClearAllBindingsReqEUI64TLV: Local: ID: 0x00
|
|
797
797
|
buffalo.writeUInt8(0x00);
|
|
798
|
-
buffalo.writeUInt8(tlv.eui64List.length *
|
|
798
|
+
buffalo.writeUInt8(tlv.eui64List.length * consts_1.EUI64_SIZE + 1 - 1);
|
|
799
799
|
buffalo.writeUInt8(tlv.eui64List.length);
|
|
800
800
|
for (const entry of tlv.eui64List) {
|
|
801
801
|
buffalo.writeIeeeAddr(entry);
|
|
@@ -807,7 +807,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
807
807
|
* @param startIndex Starting Index for the requested elements of the Neighbor Table.
|
|
808
808
|
*/
|
|
809
809
|
static buildLqiTableRequest(startIndex) {
|
|
810
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
810
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
811
811
|
buffalo.writeUInt8(startIndex);
|
|
812
812
|
return buffalo.getWritten();
|
|
813
813
|
}
|
|
@@ -816,7 +816,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
816
816
|
* @param startIndex Starting Index for the requested elements of the Neighbor Table.
|
|
817
817
|
*/
|
|
818
818
|
static buildRoutingTableRequest(startIndex) {
|
|
819
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
819
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
820
820
|
buffalo.writeUInt8(startIndex);
|
|
821
821
|
return buffalo.getWritten();
|
|
822
822
|
}
|
|
@@ -825,7 +825,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
825
825
|
* @param startIndex Starting Index for the requested elements of the Neighbor Table.
|
|
826
826
|
*/
|
|
827
827
|
static buildBindingTableRequest(startIndex) {
|
|
828
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
828
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
829
829
|
buffalo.writeUInt8(startIndex);
|
|
830
830
|
return buffalo.getWritten();
|
|
831
831
|
}
|
|
@@ -836,7 +836,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
836
836
|
* @param leaveRequestFlags A bitmask of leave options. Include ::AND_REJOIN if the target is to rejoin the network immediately after leaving.
|
|
837
837
|
*/
|
|
838
838
|
static buildLeaveRequest(deviceAddress, leaveRequestFlags) {
|
|
839
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
839
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
840
840
|
buffalo.writeIeeeAddr(deviceAddress);
|
|
841
841
|
buffalo.writeUInt8(leaveRequestFlags);
|
|
842
842
|
return buffalo.getWritten();
|
|
@@ -849,7 +849,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
849
849
|
* If a frame is received with a value of 0, it shall be treated as having a value of 1.
|
|
850
850
|
*/
|
|
851
851
|
static buildPermitJoining(duration, authentication, tlvs) {
|
|
852
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
852
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
853
853
|
buffalo.writeUInt8(duration);
|
|
854
854
|
buffalo.writeUInt8(authentication);
|
|
855
855
|
// BeaconAppendixEncapsulationGlobalTLV
|
|
@@ -875,19 +875,19 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
875
875
|
* indicates the NWK address for the device with the Network Manager bit set in its Node Descriptor.
|
|
876
876
|
*/
|
|
877
877
|
static buildNwkUpdateRequest(channels, duration, count, nwkUpdateId, nwkManagerAddr) {
|
|
878
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
878
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
879
879
|
buffalo.writeUInt32(ZSpecUtils.channelsToUInt32Mask(channels));
|
|
880
880
|
buffalo.writeUInt8(duration);
|
|
881
|
-
if (count != null &&
|
|
881
|
+
if (count != null && duration >= 0x00 && duration <= 0x05) {
|
|
882
882
|
buffalo.writeUInt8(count);
|
|
883
883
|
}
|
|
884
884
|
// TODO: What does "This value is set by the Network Channel Manager prior to sending the message." mean exactly??
|
|
885
885
|
// (isn't used/mentioned in EmberZNet, confirmed working if not set at all for channel change)
|
|
886
886
|
// for now, allow to bypass with null, otherwise should throw if null and duration passes below conditions (see NwkEnhancedUpdateRequest)
|
|
887
|
-
if (nwkUpdateId != null && (duration ===
|
|
887
|
+
if (nwkUpdateId != null && (duration === 0xfe || duration === 0xff)) {
|
|
888
888
|
buffalo.writeUInt8(nwkUpdateId);
|
|
889
889
|
}
|
|
890
|
-
if (nwkManagerAddr != null && duration ===
|
|
890
|
+
if (nwkManagerAddr != null && duration === 0xff) {
|
|
891
891
|
buffalo.writeUInt16(nwkManagerAddr);
|
|
892
892
|
}
|
|
893
893
|
return buffalo.getWritten();
|
|
@@ -902,13 +902,13 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
902
902
|
* Shortcut for @see BuffaloZdo.buildNwkUpdateRequest
|
|
903
903
|
*/
|
|
904
904
|
static buildChannelChangeRequest(channel, nwkUpdateId) {
|
|
905
|
-
return BuffaloZdo.buildNwkUpdateRequest([channel],
|
|
905
|
+
return BuffaloZdo.buildNwkUpdateRequest([channel], 0xfe, null, nwkUpdateId, null);
|
|
906
906
|
}
|
|
907
907
|
/**
|
|
908
908
|
* Shortcut for @see BuffaloZdo.buildNwkUpdateRequest
|
|
909
909
|
*/
|
|
910
910
|
static buildSetActiveChannelsAndNwkManagerIdRequest(channels, nwkUpdateId, nwkManagerAddr) {
|
|
911
|
-
return BuffaloZdo.buildNwkUpdateRequest(channels,
|
|
911
|
+
return BuffaloZdo.buildNwkUpdateRequest(channels, 0xff, null, nwkUpdateId, nwkManagerAddr);
|
|
912
912
|
}
|
|
913
913
|
/**
|
|
914
914
|
* @see ClusterId.NWK_ENHANCED_UPDATE_REQUEST
|
|
@@ -939,19 +939,19 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
939
939
|
* Bit 1-7: Reserved
|
|
940
940
|
*/
|
|
941
941
|
static buildNwkEnhancedUpdateRequest(channelPages, duration, count, nwkUpdateId, nwkManagerAddr, configurationBitmask) {
|
|
942
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
942
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
943
943
|
buffalo.writeUInt8(channelPages.length);
|
|
944
944
|
for (const channelPage of channelPages) {
|
|
945
945
|
buffalo.writeUInt32(channelPage);
|
|
946
946
|
}
|
|
947
947
|
buffalo.writeUInt8(duration);
|
|
948
|
-
if (count != null &&
|
|
948
|
+
if (count != null && duration >= 0x00 && duration <= 0x05) {
|
|
949
949
|
buffalo.writeUInt8(count);
|
|
950
950
|
}
|
|
951
|
-
if (nwkUpdateId != null && (duration ===
|
|
951
|
+
if (nwkUpdateId != null && (duration === 0xfe || duration === 0xff)) {
|
|
952
952
|
buffalo.writeUInt8(nwkUpdateId);
|
|
953
953
|
}
|
|
954
|
-
if (nwkManagerAddr != null && duration ===
|
|
954
|
+
if (nwkManagerAddr != null && duration === 0xff) {
|
|
955
955
|
buffalo.writeUInt16(nwkManagerAddr);
|
|
956
956
|
}
|
|
957
957
|
/* istanbul ignore else */
|
|
@@ -970,20 +970,20 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
970
970
|
* Shortcut for @see BuffaloZdo.buildNwkEnhancedUpdateRequest
|
|
971
971
|
*/
|
|
972
972
|
static buildEnhancedChannelChangeRequest(channelPage, nwkUpdateId, configurationBitmask) {
|
|
973
|
-
return BuffaloZdo.buildNwkEnhancedUpdateRequest([channelPage],
|
|
973
|
+
return BuffaloZdo.buildNwkEnhancedUpdateRequest([channelPage], 0xfe, null, nwkUpdateId, null, configurationBitmask);
|
|
974
974
|
}
|
|
975
975
|
/**
|
|
976
976
|
* Shortcut for @see BuffaloZdo.buildNwkEnhancedUpdateRequest
|
|
977
977
|
*/
|
|
978
978
|
static buildEnhancedSetActiveChannelsAndNwkManagerIdRequest(channelPages, nwkUpdateId, nwkManagerAddr, configurationBitmask) {
|
|
979
|
-
return BuffaloZdo.buildNwkEnhancedUpdateRequest(channelPages,
|
|
979
|
+
return BuffaloZdo.buildNwkEnhancedUpdateRequest(channelPages, 0xff, null, nwkUpdateId, nwkManagerAddr, configurationBitmask);
|
|
980
980
|
}
|
|
981
981
|
/**
|
|
982
982
|
* @see ClusterId.NWK_IEEE_JOINING_LIST_REQUEST
|
|
983
983
|
* @param startIndex The starting index into the receiving device’s nwkIeeeJoiningList that SHALL be sent back.
|
|
984
984
|
*/
|
|
985
985
|
static buildNwkIEEEJoiningListRequest(startIndex) {
|
|
986
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
986
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
987
987
|
buffalo.writeUInt8(startIndex);
|
|
988
988
|
return buffalo.getWritten();
|
|
989
989
|
}
|
|
@@ -991,10 +991,10 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
991
991
|
* @see ClusterId.NWK_BEACON_SURVEY_REQUEST
|
|
992
992
|
*/
|
|
993
993
|
static buildNwkBeaconSurveyRequest(tlv) {
|
|
994
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
994
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
995
995
|
// BeaconSurveyConfigurationTLV: Local: ID: 0x00
|
|
996
996
|
buffalo.writeUInt8(0x00);
|
|
997
|
-
buffalo.writeUInt8(2 +
|
|
997
|
+
buffalo.writeUInt8(2 + tlv.scanChannelList.length * 4 - 1);
|
|
998
998
|
buffalo.writeUInt8(tlv.scanChannelList.length);
|
|
999
999
|
buffalo.writeListUInt32(tlv.scanChannelList);
|
|
1000
1000
|
buffalo.writeUInt8(tlv.configurationBitmask);
|
|
@@ -1004,19 +1004,19 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1004
1004
|
* @see ClusterId.START_KEY_NEGOTIATION_REQUEST
|
|
1005
1005
|
*/
|
|
1006
1006
|
static buildStartKeyNegotiationRequest(tlv) {
|
|
1007
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
1007
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
1008
1008
|
// Curve25519PublicPointTLV: Local: ID: 0x00
|
|
1009
1009
|
buffalo.writeUInt8(0x00);
|
|
1010
|
-
buffalo.writeUInt8(
|
|
1010
|
+
buffalo.writeUInt8(consts_1.EUI64_SIZE + consts_2.CURVE_PUBLIC_POINT_SIZE - 1);
|
|
1011
1011
|
buffalo.writeIeeeAddr(tlv.eui64);
|
|
1012
|
-
buffalo.writeBuffer(tlv.publicPoint,
|
|
1012
|
+
buffalo.writeBuffer(tlv.publicPoint, consts_2.CURVE_PUBLIC_POINT_SIZE);
|
|
1013
1013
|
return buffalo.getWritten();
|
|
1014
1014
|
}
|
|
1015
1015
|
/**
|
|
1016
1016
|
* @see ClusterId.RETRIEVE_AUTHENTICATION_TOKEN_REQUEST
|
|
1017
1017
|
*/
|
|
1018
1018
|
static buildRetrieveAuthenticationTokenRequest(tlv) {
|
|
1019
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
1019
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
1020
1020
|
// AuthenticationTokenIdTLV: Local: ID: 0x00
|
|
1021
1021
|
buffalo.writeUInt8(0x00);
|
|
1022
1022
|
buffalo.writeUInt8(1 - 1);
|
|
@@ -1027,10 +1027,10 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1027
1027
|
* @see ClusterId.GET_AUTHENTICATION_LEVEL_REQUEST
|
|
1028
1028
|
*/
|
|
1029
1029
|
static buildGetAuthenticationLevelRequest(tlv) {
|
|
1030
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
1030
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
1031
1031
|
// TargetIEEEAddressTLV: Local: ID: 0x00
|
|
1032
1032
|
buffalo.writeUInt8(0x00);
|
|
1033
|
-
buffalo.writeUInt8(
|
|
1033
|
+
buffalo.writeUInt8(consts_1.EUI64_SIZE - 1);
|
|
1034
1034
|
buffalo.writeIeeeAddr(tlv.ieee);
|
|
1035
1035
|
return buffalo.getWritten();
|
|
1036
1036
|
}
|
|
@@ -1038,8 +1038,8 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1038
1038
|
* @see ClusterId.SET_CONFIGURATION_REQUEST
|
|
1039
1039
|
*/
|
|
1040
1040
|
static buildSetConfigurationRequest(nextPanIdChange, nextChannelChange, configurationParameters) {
|
|
1041
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
1042
|
-
buffalo.writeGlobalTLV({ tagId: enums_1.GlobalTLV.NEXT_PAN_ID_CHANGE, length:
|
|
1041
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
1042
|
+
buffalo.writeGlobalTLV({ tagId: enums_1.GlobalTLV.NEXT_PAN_ID_CHANGE, length: consts_1.PAN_ID_SIZE, tlv: nextPanIdChange });
|
|
1043
1043
|
buffalo.writeGlobalTLV({ tagId: enums_1.GlobalTLV.NEXT_CHANNEL_CHANGE, length: 4, tlv: nextChannelChange });
|
|
1044
1044
|
buffalo.writeGlobalTLV({ tagId: enums_1.GlobalTLV.CONFIGURATION_PARAMETERS, length: 2, tlv: configurationParameters });
|
|
1045
1045
|
return buffalo.getWritten();
|
|
@@ -1050,7 +1050,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1050
1050
|
* Maximum number dependent on the underlying maximum size of the message as allowed by fragmentation.
|
|
1051
1051
|
*/
|
|
1052
1052
|
static buildGetConfigurationRequest(tlvIds) {
|
|
1053
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
1053
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
1054
1054
|
buffalo.writeUInt8(tlvIds.length);
|
|
1055
1055
|
for (const tlvId of tlvIds) {
|
|
1056
1056
|
buffalo.writeUInt8(tlvId);
|
|
@@ -1061,10 +1061,10 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1061
1061
|
* @see ClusterId.START_KEY_UPDATE_REQUEST
|
|
1062
1062
|
*/
|
|
1063
1063
|
static buildStartKeyUpdateRequest(selectedKeyNegotiationMethod, fragmentationParameters) {
|
|
1064
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
1064
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
1065
1065
|
// SelectedKeyNegotiationMethodTLV: Local: ID: 0x00
|
|
1066
1066
|
buffalo.writeUInt8(0x00);
|
|
1067
|
-
buffalo.writeUInt8(
|
|
1067
|
+
buffalo.writeUInt8(consts_1.EUI64_SIZE + 2 - 1);
|
|
1068
1068
|
buffalo.writeUInt8(selectedKeyNegotiationMethod.protocol);
|
|
1069
1069
|
buffalo.writeUInt8(selectedKeyNegotiationMethod.presharedSecret);
|
|
1070
1070
|
buffalo.writeIeeeAddr(selectedKeyNegotiationMethod.sendingDeviceEui64);
|
|
@@ -1086,10 +1086,10 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1086
1086
|
* @see ClusterId.DECOMMISSION_REQUEST
|
|
1087
1087
|
*/
|
|
1088
1088
|
static buildDecommissionRequest(tlv) {
|
|
1089
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
1089
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
1090
1090
|
// DeviceEUI64ListTLV: Local: ID: 0x00
|
|
1091
1091
|
buffalo.writeUInt8(0x00);
|
|
1092
|
-
buffalo.writeUInt8(tlv.eui64List.length *
|
|
1092
|
+
buffalo.writeUInt8(tlv.eui64List.length * consts_1.EUI64_SIZE + 1 - 1);
|
|
1093
1093
|
buffalo.writeUInt8(tlv.eui64List.length);
|
|
1094
1094
|
for (const eui64 of tlv.eui64List) {
|
|
1095
1095
|
buffalo.writeIeeeAddr(eui64);
|
|
@@ -1100,17 +1100,17 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1100
1100
|
* @see ClusterId.CHALLENGE_REQUEST
|
|
1101
1101
|
*/
|
|
1102
1102
|
static buildChallengeRequest(tlv) {
|
|
1103
|
-
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE),
|
|
1103
|
+
const buffalo = new BuffaloZdo(Buffer.alloc(MAX_BUFFER_SIZE), consts_2.ZDO_MESSAGE_OVERHEAD);
|
|
1104
1104
|
// APSFrameCounterChallengeTLV: Local: ID: 0x00
|
|
1105
1105
|
buffalo.writeUInt8(0x00);
|
|
1106
|
-
buffalo.writeUInt8(
|
|
1106
|
+
buffalo.writeUInt8(consts_1.EUI64_SIZE + consts_2.CHALLENGE_VALUE_SIZE - 1);
|
|
1107
1107
|
buffalo.writeIeeeAddr(tlv.senderEui64);
|
|
1108
|
-
buffalo.writeBuffer(tlv.challengeValue,
|
|
1108
|
+
buffalo.writeBuffer(tlv.challengeValue, consts_2.CHALLENGE_VALUE_SIZE);
|
|
1109
1109
|
return buffalo.getWritten();
|
|
1110
1110
|
}
|
|
1111
1111
|
//-- RESPONSES
|
|
1112
1112
|
static readResponse(clusterId, buffer) {
|
|
1113
|
-
const buffalo = new BuffaloZdo(buffer,
|
|
1113
|
+
const buffalo = new BuffaloZdo(buffer, consts_2.ZDO_MESSAGE_OVERHEAD); // set pos to skip `transaction sequence number`
|
|
1114
1114
|
switch (clusterId) {
|
|
1115
1115
|
case clusters_1.ClusterId.NETWORK_ADDRESS_RESPONSE: {
|
|
1116
1116
|
return buffalo.readNetworkAddressResponse();
|
|
@@ -1292,10 +1292,10 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1292
1292
|
const tlvs = this.readTLVs();
|
|
1293
1293
|
return {
|
|
1294
1294
|
nwkAddress,
|
|
1295
|
-
logicalType:
|
|
1296
|
-
fragmentationSupported:
|
|
1297
|
-
apsFlags:
|
|
1298
|
-
frequencyBand: (nodeDescByte2 &
|
|
1295
|
+
logicalType: nodeDescByte1 & 0x07,
|
|
1296
|
+
fragmentationSupported: serverMask.stackComplianceResivion >= 23 ? (nodeDescByte1 & 0x20) >> 5 === 1 : null,
|
|
1297
|
+
apsFlags: nodeDescByte2 & 0x07,
|
|
1298
|
+
frequencyBand: (nodeDescByte2 & 0xf8) >> 3,
|
|
1299
1299
|
capabilities: macCapFlags,
|
|
1300
1300
|
manufacturerCode,
|
|
1301
1301
|
maxBufSize,
|
|
@@ -1322,10 +1322,10 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1322
1322
|
const byte2 = this.readUInt8();
|
|
1323
1323
|
return {
|
|
1324
1324
|
nwkAddress,
|
|
1325
|
-
currentPowerMode:
|
|
1326
|
-
availPowerSources: (
|
|
1327
|
-
currentPowerSource:
|
|
1328
|
-
currentPowerSourceLevel: (
|
|
1325
|
+
currentPowerMode: byte1 & 0xf,
|
|
1326
|
+
availPowerSources: (byte1 >> 4) & 0xf,
|
|
1327
|
+
currentPowerSource: byte2 & 0xf,
|
|
1328
|
+
currentPowerSourceLevel: (byte2 >> 4) & 0xf,
|
|
1329
1329
|
};
|
|
1330
1330
|
}
|
|
1331
1331
|
}
|
|
@@ -1497,7 +1497,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1497
1497
|
const entryCount = this.readUInt8();
|
|
1498
1498
|
const entryList = [];
|
|
1499
1499
|
for (let i = 0; i < entryCount; i++) {
|
|
1500
|
-
const extendedPanId = this.readListUInt8(
|
|
1500
|
+
const extendedPanId = this.readListUInt8(consts_1.EXTENDED_PAN_ID_SIZE);
|
|
1501
1501
|
const eui64 = this.readIeeeAddr();
|
|
1502
1502
|
const nwkAddress = this.readUInt16();
|
|
1503
1503
|
const deviceTypeByte = this.readUInt8();
|
|
@@ -1509,11 +1509,11 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1509
1509
|
eui64,
|
|
1510
1510
|
nwkAddress,
|
|
1511
1511
|
deviceType: deviceTypeByte & 0x03,
|
|
1512
|
-
rxOnWhenIdle: (deviceTypeByte &
|
|
1512
|
+
rxOnWhenIdle: (deviceTypeByte & 0x0c) >> 2,
|
|
1513
1513
|
relationship: (deviceTypeByte & 0x70) >> 4,
|
|
1514
1514
|
reserved1: (deviceTypeByte & 0x10) >> 7,
|
|
1515
1515
|
permitJoining: permitJoiningByte & 0x03,
|
|
1516
|
-
reserved2: (permitJoiningByte &
|
|
1516
|
+
reserved2: (permitJoiningByte & 0xfc) >> 2,
|
|
1517
1517
|
depth,
|
|
1518
1518
|
lqi,
|
|
1519
1519
|
});
|
|
@@ -1550,7 +1550,7 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1550
1550
|
memoryConstrained: (statusByte & 0x08) >> 3,
|
|
1551
1551
|
manyToOne: (statusByte & 0x10) >> 4,
|
|
1552
1552
|
routeRecordRequired: (statusByte & 0x20) >> 5,
|
|
1553
|
-
reserved1: (statusByte &
|
|
1553
|
+
reserved1: (statusByte & 0xc0) >> 6,
|
|
1554
1554
|
nextHopAddress,
|
|
1555
1555
|
});
|
|
1556
1556
|
}
|
|
@@ -1581,8 +1581,8 @@ class BuffaloZdo extends buffalo_1.default {
|
|
|
1581
1581
|
const sourceEndpoint = this.readUInt8();
|
|
1582
1582
|
const clusterId = this.readUInt16();
|
|
1583
1583
|
const destAddrMode = this.readUInt8();
|
|
1584
|
-
const dest =
|
|
1585
|
-
const destEndpoint =
|
|
1584
|
+
const dest = destAddrMode === 0x01 ? this.readUInt16() : destAddrMode === 0x03 ? this.readIeeeAddr() : null;
|
|
1585
|
+
const destEndpoint = destAddrMode === 0x03 ? this.readUInt8() : null;
|
|
1586
1586
|
entryList.push({
|
|
1587
1587
|
sourceEui64,
|
|
1588
1588
|
sourceEndpoint,
|