@zwave-js/cc 9.3.1-0-pr-4662-79458fb
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/build/cc/AlarmSensorCC.d.ts +54 -0
- package/build/cc/AlarmSensorCC.d.ts.map +1 -0
- package/build/cc/AlarmSensorCC.js +378 -0
- package/build/cc/AlarmSensorCC.js.map +1 -0
- package/build/cc/AssociationCC.d.ts +123 -0
- package/build/cc/AssociationCC.d.ts.map +1 -0
- package/build/cc/AssociationCC.js +615 -0
- package/build/cc/AssociationCC.js.map +1 -0
- package/build/cc/AssociationGroupInfoCC.d.ts +97 -0
- package/build/cc/AssociationGroupInfoCC.d.ts.map +1 -0
- package/build/cc/AssociationGroupInfoCC.js +530 -0
- package/build/cc/AssociationGroupInfoCC.js.map +1 -0
- package/build/cc/BarrierOperatorCC.d.ts +75 -0
- package/build/cc/BarrierOperatorCC.d.ts.map +1 -0
- package/build/cc/BarrierOperatorCC.js +492 -0
- package/build/cc/BarrierOperatorCC.js.map +1 -0
- package/build/cc/BasicCC.d.ts +51 -0
- package/build/cc/BasicCC.d.ts.map +1 -0
- package/build/cc/BasicCC.js +344 -0
- package/build/cc/BasicCC.js.map +1 -0
- package/build/cc/BatteryCC.d.ts +56 -0
- package/build/cc/BatteryCC.d.ts.map +1 -0
- package/build/cc/BatteryCC.js +417 -0
- package/build/cc/BatteryCC.js.map +1 -0
- package/build/cc/BinarySensorCC.d.ts +52 -0
- package/build/cc/BinarySensorCC.d.ts.map +1 -0
- package/build/cc/BinarySensorCC.js +321 -0
- package/build/cc/BinarySensorCC.js.map +1 -0
- package/build/cc/BinarySwitchCC.d.ts +55 -0
- package/build/cc/BinarySwitchCC.d.ts.map +1 -0
- package/build/cc/BinarySwitchCC.js +327 -0
- package/build/cc/BinarySwitchCC.js.map +1 -0
- package/build/cc/CRC16CC.d.ts +28 -0
- package/build/cc/CRC16CC.d.ts.map +1 -0
- package/build/cc/CRC16CC.js +109 -0
- package/build/cc/CRC16CC.js.map +1 -0
- package/build/cc/CentralSceneCC.d.ts +69 -0
- package/build/cc/CentralSceneCC.d.ts.map +1 -0
- package/build/cc/CentralSceneCC.js +443 -0
- package/build/cc/CentralSceneCC.js.map +1 -0
- package/build/cc/ClimateControlScheduleCC.d.ts +78 -0
- package/build/cc/ClimateControlScheduleCC.d.ts.map +1 -0
- package/build/cc/ClimateControlScheduleCC.js +417 -0
- package/build/cc/ClimateControlScheduleCC.js.map +1 -0
- package/build/cc/ClockCC.d.ts +40 -0
- package/build/cc/ClockCC.d.ts.map +1 -0
- package/build/cc/ClockCC.js +185 -0
- package/build/cc/ClockCC.js.map +1 -0
- package/build/cc/ColorSwitchCC.d.ts +98 -0
- package/build/cc/ColorSwitchCC.d.ts.map +1 -0
- package/build/cc/ColorSwitchCC.js +1045 -0
- package/build/cc/ColorSwitchCC.js.map +1 -0
- package/build/cc/ConfigurationCC.d.ts +315 -0
- package/build/cc/ConfigurationCC.d.ts.map +1 -0
- package/build/cc/ConfigurationCC.js +2257 -0
- package/build/cc/ConfigurationCC.js.map +1 -0
- package/build/cc/DeviceResetLocallyCC.d.ts +9 -0
- package/build/cc/DeviceResetLocallyCC.d.ts.map +1 -0
- package/build/cc/DeviceResetLocallyCC.js +28 -0
- package/build/cc/DeviceResetLocallyCC.js.map +1 -0
- package/build/cc/DoorLockCC.d.ts +116 -0
- package/build/cc/DoorLockCC.d.ts.map +1 -0
- package/build/cc/DoorLockCC.js +1112 -0
- package/build/cc/DoorLockCC.js.map +1 -0
- package/build/cc/DoorLockLoggingCC.d.ts +41 -0
- package/build/cc/DoorLockLoggingCC.d.ts.map +1 -0
- package/build/cc/DoorLockLoggingCC.js +288 -0
- package/build/cc/DoorLockLoggingCC.js.map +1 -0
- package/build/cc/EntryControlCC.d.ts +71 -0
- package/build/cc/EntryControlCC.d.ts.map +1 -0
- package/build/cc/EntryControlCC.js +492 -0
- package/build/cc/EntryControlCC.js.map +1 -0
- package/build/cc/FirmwareUpdateMetaDataCC.d.ts +148 -0
- package/build/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -0
- package/build/cc/FirmwareUpdateMetaDataCC.js +727 -0
- package/build/cc/FirmwareUpdateMetaDataCC.js.map +1 -0
- package/build/cc/HailCC.d.ts +6 -0
- package/build/cc/HailCC.d.ts.map +1 -0
- package/build/cc/HailCC.js +23 -0
- package/build/cc/HailCC.js.map +1 -0
- package/build/cc/HumidityControlModeCC.d.ts +47 -0
- package/build/cc/HumidityControlModeCC.d.ts.map +1 -0
- package/build/cc/HumidityControlModeCC.js +288 -0
- package/build/cc/HumidityControlModeCC.js.map +1 -0
- package/build/cc/HumidityControlOperatingStateCC.d.ts +24 -0
- package/build/cc/HumidityControlOperatingStateCC.d.ts.map +1 -0
- package/build/cc/HumidityControlOperatingStateCC.js +129 -0
- package/build/cc/HumidityControlOperatingStateCC.js.map +1 -0
- package/build/cc/HumidityControlSetpointCC.d.ts +103 -0
- package/build/cc/HumidityControlSetpointCC.d.ts.map +1 -0
- package/build/cc/HumidityControlSetpointCC.js +626 -0
- package/build/cc/HumidityControlSetpointCC.js.map +1 -0
- package/build/cc/IndicatorCC.d.ts +88 -0
- package/build/cc/IndicatorCC.d.ts.map +1 -0
- package/build/cc/IndicatorCC.js +758 -0
- package/build/cc/IndicatorCC.js.map +1 -0
- package/build/cc/IrrigationCC.d.ts +278 -0
- package/build/cc/IrrigationCC.d.ts.map +1 -0
- package/build/cc/IrrigationCC.js +2062 -0
- package/build/cc/IrrigationCC.js.map +1 -0
- package/build/cc/LanguageCC.d.ts +41 -0
- package/build/cc/LanguageCC.d.ts.map +1 -0
- package/build/cc/LanguageCC.js +220 -0
- package/build/cc/LanguageCC.js.map +1 -0
- package/build/cc/LockCC.d.ts +41 -0
- package/build/cc/LockCC.d.ts.map +1 -0
- package/build/cc/LockCC.js +185 -0
- package/build/cc/LockCC.js.map +1 -0
- package/build/cc/ManufacturerProprietaryCC.d.ts +31 -0
- package/build/cc/ManufacturerProprietaryCC.d.ts.map +1 -0
- package/build/cc/ManufacturerProprietaryCC.js +275 -0
- package/build/cc/ManufacturerProprietaryCC.js.map +1 -0
- package/build/cc/ManufacturerSpecificCC.d.ts +59 -0
- package/build/cc/ManufacturerSpecificCC.d.ts.map +1 -0
- package/build/cc/ManufacturerSpecificCC.js +285 -0
- package/build/cc/ManufacturerSpecificCC.js.map +1 -0
- package/build/cc/MeterCC.d.ts +100 -0
- package/build/cc/MeterCC.d.ts.map +1 -0
- package/build/cc/MeterCC.js +820 -0
- package/build/cc/MeterCC.js.map +1 -0
- package/build/cc/MultiChannelAssociationCC.d.ts +127 -0
- package/build/cc/MultiChannelAssociationCC.d.ts.map +1 -0
- package/build/cc/MultiChannelAssociationCC.js +883 -0
- package/build/cc/MultiChannelAssociationCC.js.map +1 -0
- package/build/cc/MultiChannelCC.d.ts +164 -0
- package/build/cc/MultiChannelCC.d.ts.map +1 -0
- package/build/cc/MultiChannelCC.js +1004 -0
- package/build/cc/MultiChannelCC.js.map +1 -0
- package/build/cc/MultiCommandCC.d.ts +28 -0
- package/build/cc/MultiCommandCC.d.ts.map +1 -0
- package/build/cc/MultiCommandCC.js +137 -0
- package/build/cc/MultiCommandCC.js.map +1 -0
- package/build/cc/MultilevelSensorCC.d.ts +83 -0
- package/build/cc/MultilevelSensorCC.d.ts.map +1 -0
- package/build/cc/MultilevelSensorCC.js +633 -0
- package/build/cc/MultilevelSensorCC.js.map +1 -0
- package/build/cc/MultilevelSwitchCC.d.ts +86 -0
- package/build/cc/MultilevelSwitchCC.d.ts.map +1 -0
- package/build/cc/MultilevelSwitchCC.js +774 -0
- package/build/cc/MultilevelSwitchCC.js.map +1 -0
- package/build/cc/NoOperationCC.d.ts +17 -0
- package/build/cc/NoOperationCC.d.ts.map +1 -0
- package/build/cc/NoOperationCC.js +50 -0
- package/build/cc/NoOperationCC.js.map +1 -0
- package/build/cc/NodeNamingCC.d.ts +57 -0
- package/build/cc/NodeNamingCC.d.ts.map +1 -0
- package/build/cc/NodeNamingCC.js +313 -0
- package/build/cc/NodeNamingCC.js.map +1 -0
- package/build/cc/NotificationCC.d.ts +127 -0
- package/build/cc/NotificationCC.d.ts.map +1 -0
- package/build/cc/NotificationCC.js +1193 -0
- package/build/cc/NotificationCC.js.map +1 -0
- package/build/cc/PowerlevelCC.d.ts +63 -0
- package/build/cc/PowerlevelCC.d.ts.map +1 -0
- package/build/cc/PowerlevelCC.js +262 -0
- package/build/cc/PowerlevelCC.js.map +1 -0
- package/build/cc/ProtectionCC.d.ts +94 -0
- package/build/cc/ProtectionCC.d.ts.map +1 -0
- package/build/cc/ProtectionCC.js +630 -0
- package/build/cc/ProtectionCC.js.map +1 -0
- package/build/cc/SceneActivationCC.d.ts +34 -0
- package/build/cc/SceneActivationCC.d.ts.map +1 -0
- package/build/cc/SceneActivationCC.js +170 -0
- package/build/cc/SceneActivationCC.js.map +1 -0
- package/build/cc/SceneActuatorConfigurationCC.d.ts +52 -0
- package/build/cc/SceneActuatorConfigurationCC.d.ts.map +1 -0
- package/build/cc/SceneActuatorConfigurationCC.js +368 -0
- package/build/cc/SceneActuatorConfigurationCC.js.map +1 -0
- package/build/cc/SceneControllerConfigurationCC.d.ts +61 -0
- package/build/cc/SceneControllerConfigurationCC.d.ts.map +1 -0
- package/build/cc/SceneControllerConfigurationCC.js +444 -0
- package/build/cc/SceneControllerConfigurationCC.js.map +1 -0
- package/build/cc/Security2CC.d.ts +213 -0
- package/build/cc/Security2CC.d.ts.map +1 -0
- package/build/cc/Security2CC.js +1124 -0
- package/build/cc/Security2CC.js.map +1 -0
- package/build/cc/SecurityCC.d.ts +109 -0
- package/build/cc/SecurityCC.d.ts.map +1 -0
- package/build/cc/SecurityCC.js +609 -0
- package/build/cc/SecurityCC.js.map +1 -0
- package/build/cc/SoundSwitchCC.d.ts +87 -0
- package/build/cc/SoundSwitchCC.d.ts.map +1 -0
- package/build/cc/SoundSwitchCC.js +548 -0
- package/build/cc/SoundSwitchCC.js.map +1 -0
- package/build/cc/SupervisionCC.d.ts +63 -0
- package/build/cc/SupervisionCC.d.ts.map +1 -0
- package/build/cc/SupervisionCC.js +239 -0
- package/build/cc/SupervisionCC.js.map +1 -0
- package/build/cc/ThermostatFanModeCC.d.ts +53 -0
- package/build/cc/ThermostatFanModeCC.d.ts.map +1 -0
- package/build/cc/ThermostatFanModeCC.js +359 -0
- package/build/cc/ThermostatFanModeCC.js.map +1 -0
- package/build/cc/ThermostatFanStateCC.d.ts +24 -0
- package/build/cc/ThermostatFanStateCC.d.ts.map +1 -0
- package/build/cc/ThermostatFanStateCC.js +131 -0
- package/build/cc/ThermostatFanStateCC.js.map +1 -0
- package/build/cc/ThermostatModeCC.d.ts +58 -0
- package/build/cc/ThermostatModeCC.d.ts.map +1 -0
- package/build/cc/ThermostatModeCC.js +370 -0
- package/build/cc/ThermostatModeCC.js.map +1 -0
- package/build/cc/ThermostatOperatingStateCC.d.ts +24 -0
- package/build/cc/ThermostatOperatingStateCC.d.ts.map +1 -0
- package/build/cc/ThermostatOperatingStateCC.js +127 -0
- package/build/cc/ThermostatOperatingStateCC.js.map +1 -0
- package/build/cc/ThermostatSetbackCC.d.ts +42 -0
- package/build/cc/ThermostatSetbackCC.d.ts.map +1 -0
- package/build/cc/ThermostatSetbackCC.js +237 -0
- package/build/cc/ThermostatSetbackCC.js.map +1 -0
- package/build/cc/ThermostatSetpointCC.d.ts +98 -0
- package/build/cc/ThermostatSetpointCC.d.ts.map +1 -0
- package/build/cc/ThermostatSetpointCC.js +707 -0
- package/build/cc/ThermostatSetpointCC.js.map +1 -0
- package/build/cc/TimeCC.d.ts +78 -0
- package/build/cc/TimeCC.d.ts.map +1 -0
- package/build/cc/TimeCC.js +373 -0
- package/build/cc/TimeCC.js.map +1 -0
- package/build/cc/TimeParametersCC.d.ts +40 -0
- package/build/cc/TimeParametersCC.d.ts.map +1 -0
- package/build/cc/TimeParametersCC.js +275 -0
- package/build/cc/TimeParametersCC.js.map +1 -0
- package/build/cc/TransportServiceCC.d.ts +101 -0
- package/build/cc/TransportServiceCC.d.ts.map +1 -0
- package/build/cc/TransportServiceCC.js +404 -0
- package/build/cc/TransportServiceCC.js.map +1 -0
- package/build/cc/UserCodeCC.d.ts +219 -0
- package/build/cc/UserCodeCC.d.ts.map +1 -0
- package/build/cc/UserCodeCC.js +1526 -0
- package/build/cc/UserCodeCC.js.map +1 -0
- package/build/cc/VersionCC.d.ts +91 -0
- package/build/cc/VersionCC.d.ts.map +1 -0
- package/build/cc/VersionCC.js +654 -0
- package/build/cc/VersionCC.js.map +1 -0
- package/build/cc/WakeUpCC.d.ts +67 -0
- package/build/cc/WakeUpCC.d.ts.map +1 -0
- package/build/cc/WakeUpCC.js +425 -0
- package/build/cc/WakeUpCC.js.map +1 -0
- package/build/cc/ZWavePlusCC.d.ts +40 -0
- package/build/cc/ZWavePlusCC.d.ts.map +1 -0
- package/build/cc/ZWavePlusCC.js +269 -0
- package/build/cc/ZWavePlusCC.js.map +1 -0
- package/build/cc/index.d.ts +64 -0
- package/build/cc/index.d.ts.map +1 -0
- package/build/cc/index.js +496 -0
- package/build/cc/index.js.map +1 -0
- package/build/cc/manufacturerProprietary/FibaroCC.d.ts +62 -0
- package/build/cc/manufacturerProprietary/FibaroCC.d.ts.map +1 -0
- package/build/cc/manufacturerProprietary/FibaroCC.js +247 -0
- package/build/cc/manufacturerProprietary/FibaroCC.js.map +1 -0
- package/build/index.d.ts +11 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +48 -0
- package/build/index.js.map +1 -0
- package/build/index_safe.d.ts +4 -0
- package/build/index_safe.d.ts.map +1 -0
- package/build/index_safe.js +30 -0
- package/build/index_safe.js.map +1 -0
- package/build/lib/API.d.ts +176 -0
- package/build/lib/API.d.ts.map +1 -0
- package/build/lib/API.js +325 -0
- package/build/lib/API.js.map +1 -0
- package/build/lib/CommandClass.d.ts +341 -0
- package/build/lib/CommandClass.d.ts.map +1 -0
- package/build/lib/CommandClass.js +1088 -0
- package/build/lib/CommandClass.js.map +1 -0
- package/build/lib/EncapsulatingCommandClass.d.ts +35 -0
- package/build/lib/EncapsulatingCommandClass.d.ts.map +1 -0
- package/build/lib/EncapsulatingCommandClass.js +53 -0
- package/build/lib/EncapsulatingCommandClass.js.map +1 -0
- package/build/lib/ICommandClassContainer.d.ts +9 -0
- package/build/lib/ICommandClassContainer.d.ts.map +1 -0
- package/build/lib/ICommandClassContainer.js +12 -0
- package/build/lib/ICommandClassContainer.js.map +1 -0
- package/build/lib/NotificationEventPayload.d.ts +11 -0
- package/build/lib/NotificationEventPayload.d.ts.map +1 -0
- package/build/lib/NotificationEventPayload.js +11 -0
- package/build/lib/NotificationEventPayload.js.map +1 -0
- package/build/lib/Security2/Extension.d.ts +87 -0
- package/build/lib/Security2/Extension.d.ts.map +1 -0
- package/build/lib/Security2/Extension.js +235 -0
- package/build/lib/Security2/Extension.js.map +1 -0
- package/build/lib/Security2/shared.d.ts +31 -0
- package/build/lib/Security2/shared.d.ts.map +1 -0
- package/build/lib/Security2/shared.js +37 -0
- package/build/lib/Security2/shared.js.map +1 -0
- package/build/lib/_Types.d.ts +1446 -0
- package/build/lib/_Types.d.ts.map +1 -0
- package/build/lib/_Types.js +1334 -0
- package/build/lib/_Types.js.map +1 -0
- package/build/lib/serializers.d.ts +24 -0
- package/build/lib/serializers.d.ts.map +1 -0
- package/build/lib/serializers.js +66 -0
- package/build/lib/serializers.js.map +1 -0
- package/build/lib/utils.d.ts +13 -0
- package/build/lib/utils.d.ts.map +1 -0
- package/build/lib/utils.js +675 -0
- package/build/lib/utils.js.map +1 -0
- package/package.json +77 -0
|
@@ -0,0 +1,727 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.FirmwareUpdateMetaDataCCPrepareGet = exports.FirmwareUpdateMetaDataCCPrepareReport = exports.FirmwareUpdateMetaDataCCActivationSet = exports.FirmwareUpdateMetaDataCCActivationReport = exports.FirmwareUpdateMetaDataCCStatusReport = exports.FirmwareUpdateMetaDataCCReport = exports.FirmwareUpdateMetaDataCCGet = exports.FirmwareUpdateMetaDataCCRequestGet = exports.FirmwareUpdateMetaDataCCRequestReport = exports.FirmwareUpdateMetaDataCCMetaDataGet = exports.FirmwareUpdateMetaDataCCMetaDataReport = exports.FirmwareUpdateMetaDataCC = exports.FirmwareUpdateMetaDataCCAPI = void 0;
|
|
10
|
+
function __assertType(argName, typeName, boundHasError) {
|
|
11
|
+
const { ZWaveError, ZWaveErrorCodes } = require("@zwave-js/core");
|
|
12
|
+
if (boundHasError()) {
|
|
13
|
+
throw new ZWaveError(typeName ? `${argName} is not a ${typeName}` : `${argName} has the wrong type`, ZWaveErrorCodes.Argument_Invalid);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
const __assertType__FirmwareUpdateMetaDataCCRequestGetOptions = $o => {
|
|
17
|
+
function _number($o) {
|
|
18
|
+
return typeof $o !== "number" ? {} : null;
|
|
19
|
+
}
|
|
20
|
+
function _2($o) {
|
|
21
|
+
if (typeof $o !== "object" || $o === null || Array.isArray($o))
|
|
22
|
+
return {};
|
|
23
|
+
if ("manufacturerId" in $o && $o["manufacturerId"] !== undefined) {
|
|
24
|
+
const error = _number($o["manufacturerId"]);
|
|
25
|
+
if (error)
|
|
26
|
+
return error;
|
|
27
|
+
}
|
|
28
|
+
else
|
|
29
|
+
return {};
|
|
30
|
+
if ("firmwareId" in $o && $o["firmwareId"] !== undefined) {
|
|
31
|
+
const error = _number($o["firmwareId"]);
|
|
32
|
+
if (error)
|
|
33
|
+
return error;
|
|
34
|
+
}
|
|
35
|
+
else
|
|
36
|
+
return {};
|
|
37
|
+
if ("checksum" in $o && $o["checksum"] !== undefined) {
|
|
38
|
+
const error = _number($o["checksum"]);
|
|
39
|
+
if (error)
|
|
40
|
+
return error;
|
|
41
|
+
}
|
|
42
|
+
else
|
|
43
|
+
return {};
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
function _boolean($o) {
|
|
47
|
+
return typeof $o !== "boolean" ? {} : null;
|
|
48
|
+
}
|
|
49
|
+
function _3($o) {
|
|
50
|
+
if (typeof $o !== "object" || $o === null || Array.isArray($o))
|
|
51
|
+
return {};
|
|
52
|
+
if ("firmwareTarget" in $o && $o["firmwareTarget"] !== undefined) {
|
|
53
|
+
const error = _number($o["firmwareTarget"]);
|
|
54
|
+
if (error)
|
|
55
|
+
return error;
|
|
56
|
+
}
|
|
57
|
+
else
|
|
58
|
+
return {};
|
|
59
|
+
if ("fragmentSize" in $o && $o["fragmentSize"] !== undefined) {
|
|
60
|
+
const error = _number($o["fragmentSize"]);
|
|
61
|
+
if (error)
|
|
62
|
+
return error;
|
|
63
|
+
}
|
|
64
|
+
else
|
|
65
|
+
return {};
|
|
66
|
+
if ("activation" in $o && $o["activation"] !== undefined) {
|
|
67
|
+
const error = _boolean($o["activation"]);
|
|
68
|
+
if (error)
|
|
69
|
+
return error;
|
|
70
|
+
}
|
|
71
|
+
if ("hardwareVersion" in $o && $o["hardwareVersion"] !== undefined) {
|
|
72
|
+
const error = _number($o["hardwareVersion"]);
|
|
73
|
+
if (error)
|
|
74
|
+
return error;
|
|
75
|
+
}
|
|
76
|
+
return null;
|
|
77
|
+
}
|
|
78
|
+
function si__2__3_ei($o) {
|
|
79
|
+
const conditions = [_2, _3];
|
|
80
|
+
for (const condition of conditions) {
|
|
81
|
+
const error = condition($o);
|
|
82
|
+
if (error)
|
|
83
|
+
return error;
|
|
84
|
+
}
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
function _undefined($o) {
|
|
88
|
+
return $o !== undefined ? {} : null;
|
|
89
|
+
}
|
|
90
|
+
function _5($o) {
|
|
91
|
+
if (typeof $o !== "object" || $o === null || Array.isArray($o))
|
|
92
|
+
return {};
|
|
93
|
+
if ("firmwareTarget" in $o && $o["firmwareTarget"] !== undefined) {
|
|
94
|
+
const error = _undefined($o["firmwareTarget"]);
|
|
95
|
+
if (error)
|
|
96
|
+
return error;
|
|
97
|
+
}
|
|
98
|
+
if ("fragmentSize" in $o && $o["fragmentSize"] !== undefined) {
|
|
99
|
+
const error = _undefined($o["fragmentSize"]);
|
|
100
|
+
if (error)
|
|
101
|
+
return error;
|
|
102
|
+
}
|
|
103
|
+
if ("activation" in $o && $o["activation"] !== undefined) {
|
|
104
|
+
const error = _undefined($o["activation"]);
|
|
105
|
+
if (error)
|
|
106
|
+
return error;
|
|
107
|
+
}
|
|
108
|
+
if ("hardwareVersion" in $o && $o["hardwareVersion"] !== undefined) {
|
|
109
|
+
const error = _undefined($o["hardwareVersion"]);
|
|
110
|
+
if (error)
|
|
111
|
+
return error;
|
|
112
|
+
}
|
|
113
|
+
return null;
|
|
114
|
+
}
|
|
115
|
+
function si__2__5_ei($o) {
|
|
116
|
+
const conditions = [_2, _5];
|
|
117
|
+
for (const condition of conditions) {
|
|
118
|
+
const error = condition($o);
|
|
119
|
+
if (error)
|
|
120
|
+
return error;
|
|
121
|
+
}
|
|
122
|
+
return null;
|
|
123
|
+
}
|
|
124
|
+
function su_si__2__3_ei_si__2__5_ei_eu($o) {
|
|
125
|
+
const conditions = [si__2__3_ei, si__2__5_ei];
|
|
126
|
+
for (const condition of conditions) {
|
|
127
|
+
const error = condition($o);
|
|
128
|
+
if (!error)
|
|
129
|
+
return null;
|
|
130
|
+
}
|
|
131
|
+
return {};
|
|
132
|
+
}
|
|
133
|
+
return su_si__2__3_ei_si__2__5_ei_eu($o);
|
|
134
|
+
};
|
|
135
|
+
const __assertType__number = $o => {
|
|
136
|
+
function _number($o) {
|
|
137
|
+
return typeof $o !== "number" ? {} : null;
|
|
138
|
+
}
|
|
139
|
+
return _number($o);
|
|
140
|
+
};
|
|
141
|
+
const __assertType__boolean = $o => {
|
|
142
|
+
function _boolean($o) {
|
|
143
|
+
return typeof $o !== "boolean" ? {} : null;
|
|
144
|
+
}
|
|
145
|
+
return _boolean($o);
|
|
146
|
+
};
|
|
147
|
+
const __assertType__Buffer = $o => {
|
|
148
|
+
function _buffer($o) {
|
|
149
|
+
return !Buffer.isBuffer($o) ? {} : null;
|
|
150
|
+
}
|
|
151
|
+
return _buffer($o);
|
|
152
|
+
};
|
|
153
|
+
const __assertType__FirmwareUpdateMetaDataCCActivationSetOptions = $o => {
|
|
154
|
+
function _number($o) {
|
|
155
|
+
return typeof $o !== "number" ? {} : null;
|
|
156
|
+
}
|
|
157
|
+
function _0($o) {
|
|
158
|
+
if (typeof $o !== "object" || $o === null || Array.isArray($o))
|
|
159
|
+
return {};
|
|
160
|
+
if ("manufacturerId" in $o && $o["manufacturerId"] !== undefined) {
|
|
161
|
+
const error = _number($o["manufacturerId"]);
|
|
162
|
+
if (error)
|
|
163
|
+
return error;
|
|
164
|
+
}
|
|
165
|
+
else
|
|
166
|
+
return {};
|
|
167
|
+
if ("firmwareId" in $o && $o["firmwareId"] !== undefined) {
|
|
168
|
+
const error = _number($o["firmwareId"]);
|
|
169
|
+
if (error)
|
|
170
|
+
return error;
|
|
171
|
+
}
|
|
172
|
+
else
|
|
173
|
+
return {};
|
|
174
|
+
if ("checksum" in $o && $o["checksum"] !== undefined) {
|
|
175
|
+
const error = _number($o["checksum"]);
|
|
176
|
+
if (error)
|
|
177
|
+
return error;
|
|
178
|
+
}
|
|
179
|
+
else
|
|
180
|
+
return {};
|
|
181
|
+
if ("firmwareTarget" in $o && $o["firmwareTarget"] !== undefined) {
|
|
182
|
+
const error = _number($o["firmwareTarget"]);
|
|
183
|
+
if (error)
|
|
184
|
+
return error;
|
|
185
|
+
}
|
|
186
|
+
else
|
|
187
|
+
return {};
|
|
188
|
+
if ("hardwareVersion" in $o && $o["hardwareVersion"] !== undefined) {
|
|
189
|
+
const error = _number($o["hardwareVersion"]);
|
|
190
|
+
if (error)
|
|
191
|
+
return error;
|
|
192
|
+
}
|
|
193
|
+
return null;
|
|
194
|
+
}
|
|
195
|
+
return _0($o);
|
|
196
|
+
};
|
|
197
|
+
const safe_1 = require("@zwave-js/core/safe");
|
|
198
|
+
const safe_2 = require("@zwave-js/shared/safe");
|
|
199
|
+
const API_1 = require("../lib/API");
|
|
200
|
+
const CommandClass_1 = require("../lib/CommandClass");
|
|
201
|
+
const _Types_1 = require("../lib/_Types");
|
|
202
|
+
// @noSetValueAPI There are no values to set here
|
|
203
|
+
// @noInterview The "interview" is part of the update process
|
|
204
|
+
function getSupportsActivationValueId() {
|
|
205
|
+
return {
|
|
206
|
+
commandClass: safe_1.CommandClasses["Firmware Update Meta Data"],
|
|
207
|
+
property: "supportsActivation",
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
let FirmwareUpdateMetaDataCCAPI = class FirmwareUpdateMetaDataCCAPI extends API_1.PhysicalCCAPI {
|
|
211
|
+
supportsCommand(cmd) {
|
|
212
|
+
var _a;
|
|
213
|
+
switch (cmd) {
|
|
214
|
+
case _Types_1.FirmwareUpdateMetaDataCommand.MetaDataGet:
|
|
215
|
+
case _Types_1.FirmwareUpdateMetaDataCommand.RequestGet:
|
|
216
|
+
case _Types_1.FirmwareUpdateMetaDataCommand.Report:
|
|
217
|
+
case _Types_1.FirmwareUpdateMetaDataCommand.StatusReport:
|
|
218
|
+
return true;
|
|
219
|
+
case _Types_1.FirmwareUpdateMetaDataCommand.ActivationSet:
|
|
220
|
+
return (this.version >= 4 &&
|
|
221
|
+
(this.version < 7 ||
|
|
222
|
+
((_a = this.tryGetValueDB()) === null || _a === void 0 ? void 0 : _a.getValue(getSupportsActivationValueId())) === true));
|
|
223
|
+
case _Types_1.FirmwareUpdateMetaDataCommand.PrepareGet:
|
|
224
|
+
return this.version >= 5;
|
|
225
|
+
}
|
|
226
|
+
return super.supportsCommand(cmd);
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Requests information about the current firmware on the device
|
|
230
|
+
*/
|
|
231
|
+
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
|
|
232
|
+
async getMetaData() {
|
|
233
|
+
this.assertSupportsCommand(_Types_1.FirmwareUpdateMetaDataCommand, _Types_1.FirmwareUpdateMetaDataCommand.MetaDataGet);
|
|
234
|
+
const cc = new FirmwareUpdateMetaDataCCMetaDataGet(this.applHost, {
|
|
235
|
+
nodeId: this.endpoint.nodeId,
|
|
236
|
+
endpoint: this.endpoint.index,
|
|
237
|
+
});
|
|
238
|
+
const response = await this.applHost.sendCommand(cc, this.commandOptions);
|
|
239
|
+
if (response) {
|
|
240
|
+
return (0, safe_2.pick)(response, [
|
|
241
|
+
"manufacturerId",
|
|
242
|
+
"firmwareId",
|
|
243
|
+
"checksum",
|
|
244
|
+
"firmwareUpgradable",
|
|
245
|
+
"maxFragmentSize",
|
|
246
|
+
"additionalFirmwareIDs",
|
|
247
|
+
"hardwareVersion",
|
|
248
|
+
"continuesToFunction",
|
|
249
|
+
"supportsActivation",
|
|
250
|
+
]);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Requests the device to start the firmware update process.
|
|
255
|
+
* WARNING: This method may wait up to 60 seconds for a reply.
|
|
256
|
+
*/
|
|
257
|
+
async requestUpdate(options) {
|
|
258
|
+
__assertType("options", "FirmwareUpdateMetaDataCCRequestGetOptions", __assertType__FirmwareUpdateMetaDataCCRequestGetOptions.bind(void 0, options));
|
|
259
|
+
this.assertSupportsCommand(_Types_1.FirmwareUpdateMetaDataCommand, _Types_1.FirmwareUpdateMetaDataCommand.RequestGet);
|
|
260
|
+
const cc = new FirmwareUpdateMetaDataCCRequestGet(this.applHost, {
|
|
261
|
+
nodeId: this.endpoint.nodeId,
|
|
262
|
+
endpoint: this.endpoint.index,
|
|
263
|
+
...options,
|
|
264
|
+
});
|
|
265
|
+
// Since the response may take longer than with other commands,
|
|
266
|
+
// we do not use the built-in waiting functionality, which would block
|
|
267
|
+
// all other communication
|
|
268
|
+
await this.applHost.sendCommand(cc, this.commandOptions);
|
|
269
|
+
const { status } = await this.applHost.waitForCommand((cc) => cc instanceof FirmwareUpdateMetaDataCCRequestReport &&
|
|
270
|
+
cc.nodeId === this.endpoint.nodeId, 60000);
|
|
271
|
+
return status;
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Sends a fragment of the new firmware to the device
|
|
275
|
+
*/
|
|
276
|
+
async sendFirmwareFragment(fragmentNumber, isLastFragment, data) {
|
|
277
|
+
__assertType("fragmentNumber", "number", __assertType__number.bind(void 0, fragmentNumber));
|
|
278
|
+
__assertType("isLastFragment", "boolean", __assertType__boolean.bind(void 0, isLastFragment));
|
|
279
|
+
__assertType("data", "Buffer", __assertType__Buffer.bind(void 0, data));
|
|
280
|
+
this.assertSupportsCommand(_Types_1.FirmwareUpdateMetaDataCommand, _Types_1.FirmwareUpdateMetaDataCommand.Report);
|
|
281
|
+
const cc = new FirmwareUpdateMetaDataCCReport(this.applHost, {
|
|
282
|
+
nodeId: this.endpoint.nodeId,
|
|
283
|
+
endpoint: this.endpoint.index,
|
|
284
|
+
reportNumber: fragmentNumber,
|
|
285
|
+
isLast: isLastFragment,
|
|
286
|
+
firmwareData: data,
|
|
287
|
+
});
|
|
288
|
+
await this.applHost.sendCommand(cc, this.commandOptions);
|
|
289
|
+
}
|
|
290
|
+
/** Activates a previously transferred firmware image */
|
|
291
|
+
async activateFirmware(options) {
|
|
292
|
+
__assertType("options", "FirmwareUpdateMetaDataCCActivationSetOptions", __assertType__FirmwareUpdateMetaDataCCActivationSetOptions.bind(void 0, options));
|
|
293
|
+
this.assertSupportsCommand(_Types_1.FirmwareUpdateMetaDataCommand, _Types_1.FirmwareUpdateMetaDataCommand.ActivationSet);
|
|
294
|
+
const cc = new FirmwareUpdateMetaDataCCActivationSet(this.applHost, {
|
|
295
|
+
nodeId: this.endpoint.nodeId,
|
|
296
|
+
endpoint: this.endpoint.index,
|
|
297
|
+
...options,
|
|
298
|
+
});
|
|
299
|
+
const response = await this.applHost.sendCommand(cc, this.commandOptions);
|
|
300
|
+
return response === null || response === void 0 ? void 0 : response.activationStatus;
|
|
301
|
+
}
|
|
302
|
+
};
|
|
303
|
+
FirmwareUpdateMetaDataCCAPI = __decorate([
|
|
304
|
+
(0, CommandClass_1.API)(safe_1.CommandClasses["Firmware Update Meta Data"])
|
|
305
|
+
], FirmwareUpdateMetaDataCCAPI);
|
|
306
|
+
exports.FirmwareUpdateMetaDataCCAPI = FirmwareUpdateMetaDataCCAPI;
|
|
307
|
+
let FirmwareUpdateMetaDataCC = class FirmwareUpdateMetaDataCC extends CommandClass_1.CommandClass {
|
|
308
|
+
};
|
|
309
|
+
FirmwareUpdateMetaDataCC = __decorate([
|
|
310
|
+
(0, CommandClass_1.commandClass)(safe_1.CommandClasses["Firmware Update Meta Data"]),
|
|
311
|
+
(0, CommandClass_1.implementedVersion)(7)
|
|
312
|
+
], FirmwareUpdateMetaDataCC);
|
|
313
|
+
exports.FirmwareUpdateMetaDataCC = FirmwareUpdateMetaDataCC;
|
|
314
|
+
let FirmwareUpdateMetaDataCCMetaDataReport = class FirmwareUpdateMetaDataCCMetaDataReport extends FirmwareUpdateMetaDataCC {
|
|
315
|
+
constructor(host, options) {
|
|
316
|
+
super(host, options);
|
|
317
|
+
this.additionalFirmwareIDs = [];
|
|
318
|
+
this.continuesToFunction = safe_1.unknownBoolean;
|
|
319
|
+
this.supportsActivation = safe_1.unknownBoolean;
|
|
320
|
+
(0, safe_1.validatePayload)(this.payload.length >= 6);
|
|
321
|
+
this.manufacturerId = this.payload.readUInt16BE(0);
|
|
322
|
+
this.firmwareId = this.payload.readUInt16BE(2);
|
|
323
|
+
this.checksum = this.payload.readUInt16BE(4);
|
|
324
|
+
// V1/V2 only have a single firmware which must be upgradable
|
|
325
|
+
this.firmwareUpgradable =
|
|
326
|
+
this.payload[6] === 0xff || this.payload[6] == undefined;
|
|
327
|
+
if (this.version >= 3 && this.payload.length >= 10) {
|
|
328
|
+
this.maxFragmentSize = this.payload.readUInt16BE(8);
|
|
329
|
+
// Read variable length list of additional firmwares
|
|
330
|
+
const numAdditionalFirmwares = this.payload[7];
|
|
331
|
+
const additionalFirmwareIDs = [];
|
|
332
|
+
(0, safe_1.validatePayload)(this.payload.length >= 10 + 2 * numAdditionalFirmwares);
|
|
333
|
+
for (let i = 0; i < numAdditionalFirmwares; i++) {
|
|
334
|
+
additionalFirmwareIDs.push(this.payload.readUInt16BE(10 + 2 * i));
|
|
335
|
+
}
|
|
336
|
+
this.additionalFirmwareIDs = additionalFirmwareIDs;
|
|
337
|
+
// Read hardware version (if it exists)
|
|
338
|
+
let offset = 10 + 2 * numAdditionalFirmwares;
|
|
339
|
+
if (this.version >= 5 && this.payload.length >= offset + 1) {
|
|
340
|
+
this.hardwareVersion = this.payload[offset];
|
|
341
|
+
offset++;
|
|
342
|
+
if (this.version >= 6 && this.payload.length >= offset + 1) {
|
|
343
|
+
const capabilities = this.payload[offset];
|
|
344
|
+
offset++;
|
|
345
|
+
this.continuesToFunction = !!(capabilities & 0b1);
|
|
346
|
+
if (this.version >= 7)
|
|
347
|
+
this.supportsActivation = !!(capabilities & 0b10);
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
toLogEntry(applHost) {
|
|
353
|
+
return {
|
|
354
|
+
...super.toLogEntry(applHost),
|
|
355
|
+
message: {
|
|
356
|
+
"manufacturer id": this.manufacturerId,
|
|
357
|
+
"firmware id": this.firmwareId,
|
|
358
|
+
checksum: this.checksum,
|
|
359
|
+
"firmware upgradable": this.firmwareUpgradable,
|
|
360
|
+
"max fragment size": this.maxFragmentSize,
|
|
361
|
+
"additional firmware IDs": JSON.stringify(this.additionalFirmwareIDs),
|
|
362
|
+
"hardware version": this.hardwareVersion,
|
|
363
|
+
"continues to function": this.continuesToFunction,
|
|
364
|
+
"supports activation": this.supportsActivation,
|
|
365
|
+
},
|
|
366
|
+
};
|
|
367
|
+
}
|
|
368
|
+
};
|
|
369
|
+
__decorate([
|
|
370
|
+
(0, CommandClass_1.ccValue)({ internal: true })
|
|
371
|
+
], FirmwareUpdateMetaDataCCMetaDataReport.prototype, "continuesToFunction", void 0);
|
|
372
|
+
__decorate([
|
|
373
|
+
(0, CommandClass_1.ccValue)({ internal: true })
|
|
374
|
+
], FirmwareUpdateMetaDataCCMetaDataReport.prototype, "supportsActivation", void 0);
|
|
375
|
+
FirmwareUpdateMetaDataCCMetaDataReport = __decorate([
|
|
376
|
+
(0, CommandClass_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.MetaDataReport)
|
|
377
|
+
], FirmwareUpdateMetaDataCCMetaDataReport);
|
|
378
|
+
exports.FirmwareUpdateMetaDataCCMetaDataReport = FirmwareUpdateMetaDataCCMetaDataReport;
|
|
379
|
+
let FirmwareUpdateMetaDataCCMetaDataGet = class FirmwareUpdateMetaDataCCMetaDataGet extends FirmwareUpdateMetaDataCC {
|
|
380
|
+
};
|
|
381
|
+
FirmwareUpdateMetaDataCCMetaDataGet = __decorate([
|
|
382
|
+
(0, CommandClass_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.MetaDataGet),
|
|
383
|
+
(0, CommandClass_1.expectedCCResponse)(FirmwareUpdateMetaDataCCMetaDataReport)
|
|
384
|
+
], FirmwareUpdateMetaDataCCMetaDataGet);
|
|
385
|
+
exports.FirmwareUpdateMetaDataCCMetaDataGet = FirmwareUpdateMetaDataCCMetaDataGet;
|
|
386
|
+
let FirmwareUpdateMetaDataCCRequestReport = class FirmwareUpdateMetaDataCCRequestReport extends FirmwareUpdateMetaDataCC {
|
|
387
|
+
constructor(host, options) {
|
|
388
|
+
super(host, options);
|
|
389
|
+
(0, safe_1.validatePayload)(this.payload.length >= 1);
|
|
390
|
+
this.status = this.payload[0];
|
|
391
|
+
}
|
|
392
|
+
toLogEntry(applHost) {
|
|
393
|
+
return {
|
|
394
|
+
...super.toLogEntry(applHost),
|
|
395
|
+
message: {
|
|
396
|
+
status: (0, safe_2.getEnumMemberName)(_Types_1.FirmwareUpdateRequestStatus, this.status),
|
|
397
|
+
},
|
|
398
|
+
};
|
|
399
|
+
}
|
|
400
|
+
};
|
|
401
|
+
FirmwareUpdateMetaDataCCRequestReport = __decorate([
|
|
402
|
+
(0, CommandClass_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.RequestReport)
|
|
403
|
+
], FirmwareUpdateMetaDataCCRequestReport);
|
|
404
|
+
exports.FirmwareUpdateMetaDataCCRequestReport = FirmwareUpdateMetaDataCCRequestReport;
|
|
405
|
+
let FirmwareUpdateMetaDataCCRequestGet =
|
|
406
|
+
// This would expect a FirmwareUpdateMetaDataCCRequestReport, but the response may take
|
|
407
|
+
// a while to come. We don't want to block communication, so we don't expect a response here
|
|
408
|
+
class FirmwareUpdateMetaDataCCRequestGet extends FirmwareUpdateMetaDataCC {
|
|
409
|
+
constructor(host, options) {
|
|
410
|
+
var _a;
|
|
411
|
+
super(host, options);
|
|
412
|
+
if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
|
|
413
|
+
// TODO: Deserialize payload
|
|
414
|
+
throw new safe_1.ZWaveError(`${this.constructor.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
|
|
415
|
+
}
|
|
416
|
+
else {
|
|
417
|
+
this.manufacturerId = options.manufacturerId;
|
|
418
|
+
this.firmwareId = options.firmwareId;
|
|
419
|
+
this.checksum = options.checksum;
|
|
420
|
+
if ("firmwareTarget" in options) {
|
|
421
|
+
this.firmwareTarget = options.firmwareTarget;
|
|
422
|
+
this.fragmentSize = options.fragmentSize;
|
|
423
|
+
this.activation = (_a = options.activation) !== null && _a !== void 0 ? _a : false;
|
|
424
|
+
this.hardwareVersion = options.hardwareVersion;
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
serialize() {
|
|
429
|
+
const isV3 = this.version >= 3 &&
|
|
430
|
+
this.firmwareTarget != undefined &&
|
|
431
|
+
this.fragmentSize != undefined;
|
|
432
|
+
const isV4 = isV3 && this.version >= 4 && this.activation != undefined;
|
|
433
|
+
const isV5 = isV4 && this.version >= 5 && this.hardwareVersion != undefined;
|
|
434
|
+
this.payload = Buffer.allocUnsafe(6 + (isV3 ? 3 : 0) + (isV4 ? 1 : 0) + (isV5 ? 1 : 0));
|
|
435
|
+
this.payload.writeUInt16BE(this.manufacturerId, 0);
|
|
436
|
+
this.payload.writeUInt16BE(this.firmwareId, 2);
|
|
437
|
+
this.payload.writeUInt16BE(this.checksum, 4);
|
|
438
|
+
if (isV3) {
|
|
439
|
+
this.payload[6] = this.firmwareTarget;
|
|
440
|
+
this.payload.writeUInt16BE(this.fragmentSize, 7);
|
|
441
|
+
}
|
|
442
|
+
if (isV4) {
|
|
443
|
+
this.payload[9] = this.activation ? 1 : 0;
|
|
444
|
+
}
|
|
445
|
+
if (isV5) {
|
|
446
|
+
this.payload[10] = this.hardwareVersion;
|
|
447
|
+
}
|
|
448
|
+
return super.serialize();
|
|
449
|
+
}
|
|
450
|
+
toLogEntry(applHost) {
|
|
451
|
+
const message = {
|
|
452
|
+
"manufacturer id": (0, safe_2.num2hex)(this.manufacturerId),
|
|
453
|
+
"firmware id": (0, safe_2.num2hex)(this.firmwareId),
|
|
454
|
+
checksum: (0, safe_2.num2hex)(this.checksum),
|
|
455
|
+
};
|
|
456
|
+
if (this.firmwareTarget != undefined) {
|
|
457
|
+
message["firmware target"] = this.firmwareTarget;
|
|
458
|
+
}
|
|
459
|
+
if (this.fragmentSize != undefined) {
|
|
460
|
+
message["fragment size"] = this.fragmentSize;
|
|
461
|
+
}
|
|
462
|
+
if (this.activation != undefined) {
|
|
463
|
+
message.activation = this.activation;
|
|
464
|
+
}
|
|
465
|
+
if (this.hardwareVersion != undefined) {
|
|
466
|
+
message["hardware version"] = this.hardwareVersion;
|
|
467
|
+
}
|
|
468
|
+
return {
|
|
469
|
+
...super.toLogEntry(applHost),
|
|
470
|
+
message,
|
|
471
|
+
};
|
|
472
|
+
}
|
|
473
|
+
};
|
|
474
|
+
FirmwareUpdateMetaDataCCRequestGet = __decorate([
|
|
475
|
+
(0, CommandClass_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.RequestGet)
|
|
476
|
+
// This would expect a FirmwareUpdateMetaDataCCRequestReport, but the response may take
|
|
477
|
+
// a while to come. We don't want to block communication, so we don't expect a response here
|
|
478
|
+
], FirmwareUpdateMetaDataCCRequestGet);
|
|
479
|
+
exports.FirmwareUpdateMetaDataCCRequestGet = FirmwareUpdateMetaDataCCRequestGet;
|
|
480
|
+
let FirmwareUpdateMetaDataCCGet =
|
|
481
|
+
// This is sent to us from the node, so we expect no response
|
|
482
|
+
class FirmwareUpdateMetaDataCCGet extends FirmwareUpdateMetaDataCC {
|
|
483
|
+
constructor(host, options) {
|
|
484
|
+
super(host, options);
|
|
485
|
+
(0, safe_1.validatePayload)(this.payload.length >= 3);
|
|
486
|
+
this.numReports = this.payload[0];
|
|
487
|
+
this.reportNumber = this.payload.readUInt16BE(1) & 0x7fff;
|
|
488
|
+
}
|
|
489
|
+
toLogEntry(applHost) {
|
|
490
|
+
return {
|
|
491
|
+
...super.toLogEntry(applHost),
|
|
492
|
+
message: {
|
|
493
|
+
"total # of reports": this.numReports,
|
|
494
|
+
"report number": this.reportNumber,
|
|
495
|
+
},
|
|
496
|
+
};
|
|
497
|
+
}
|
|
498
|
+
};
|
|
499
|
+
FirmwareUpdateMetaDataCCGet = __decorate([
|
|
500
|
+
(0, CommandClass_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.Get)
|
|
501
|
+
// This is sent to us from the node, so we expect no response
|
|
502
|
+
], FirmwareUpdateMetaDataCCGet);
|
|
503
|
+
exports.FirmwareUpdateMetaDataCCGet = FirmwareUpdateMetaDataCCGet;
|
|
504
|
+
let FirmwareUpdateMetaDataCCReport =
|
|
505
|
+
// We send this in reply to the Get command and expect no response
|
|
506
|
+
class FirmwareUpdateMetaDataCCReport extends FirmwareUpdateMetaDataCC {
|
|
507
|
+
constructor(host, options) {
|
|
508
|
+
super(host, options);
|
|
509
|
+
if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
|
|
510
|
+
// TODO: Deserialize payload
|
|
511
|
+
throw new safe_1.ZWaveError(`${this.constructor.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
|
|
512
|
+
}
|
|
513
|
+
else {
|
|
514
|
+
this.reportNumber = options.reportNumber;
|
|
515
|
+
this.firmwareData = options.firmwareData;
|
|
516
|
+
this.isLast = options.isLast;
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
serialize() {
|
|
520
|
+
const commandBuffer = Buffer.concat([
|
|
521
|
+
Buffer.allocUnsafe(2),
|
|
522
|
+
this.firmwareData,
|
|
523
|
+
]);
|
|
524
|
+
commandBuffer.writeUInt16BE((this.reportNumber & 0x7fff) | (this.isLast ? 0x8000 : 0), 0);
|
|
525
|
+
if (this.version >= 2) {
|
|
526
|
+
// Compute and save the CRC16 in the payload
|
|
527
|
+
// The CC header is included in the CRC computation
|
|
528
|
+
let crc = (0, safe_1.CRC16_CCITT)(Buffer.from([this.ccId, this.ccCommand]));
|
|
529
|
+
crc = (0, safe_1.CRC16_CCITT)(commandBuffer, crc);
|
|
530
|
+
this.payload = Buffer.concat([
|
|
531
|
+
commandBuffer,
|
|
532
|
+
Buffer.allocUnsafe(2),
|
|
533
|
+
]);
|
|
534
|
+
this.payload.writeUInt16BE(crc, this.payload.length - 2);
|
|
535
|
+
}
|
|
536
|
+
else {
|
|
537
|
+
this.payload = commandBuffer;
|
|
538
|
+
}
|
|
539
|
+
return super.serialize();
|
|
540
|
+
}
|
|
541
|
+
toLogEntry(applHost) {
|
|
542
|
+
return {
|
|
543
|
+
...super.toLogEntry(applHost),
|
|
544
|
+
message: {
|
|
545
|
+
"report #": this.reportNumber,
|
|
546
|
+
"is last": this.isLast,
|
|
547
|
+
},
|
|
548
|
+
};
|
|
549
|
+
}
|
|
550
|
+
};
|
|
551
|
+
FirmwareUpdateMetaDataCCReport = __decorate([
|
|
552
|
+
(0, CommandClass_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.Report)
|
|
553
|
+
// We send this in reply to the Get command and expect no response
|
|
554
|
+
], FirmwareUpdateMetaDataCCReport);
|
|
555
|
+
exports.FirmwareUpdateMetaDataCCReport = FirmwareUpdateMetaDataCCReport;
|
|
556
|
+
let FirmwareUpdateMetaDataCCStatusReport = class FirmwareUpdateMetaDataCCStatusReport extends FirmwareUpdateMetaDataCC {
|
|
557
|
+
constructor(host, options) {
|
|
558
|
+
super(host, options);
|
|
559
|
+
(0, safe_1.validatePayload)(this.payload.length >= 1);
|
|
560
|
+
this.status = this.payload[0];
|
|
561
|
+
if (this.payload.length >= 3) {
|
|
562
|
+
this.waitTime = this.payload.readUInt16BE(1);
|
|
563
|
+
}
|
|
564
|
+
}
|
|
565
|
+
toLogEntry(applHost) {
|
|
566
|
+
const message = {
|
|
567
|
+
status: (0, safe_2.getEnumMemberName)(_Types_1.FirmwareUpdateStatus, this.status),
|
|
568
|
+
};
|
|
569
|
+
if (this.waitTime != undefined) {
|
|
570
|
+
message["wait time"] = `${this.waitTime} seconds`;
|
|
571
|
+
}
|
|
572
|
+
return {
|
|
573
|
+
...super.toLogEntry(applHost),
|
|
574
|
+
message,
|
|
575
|
+
};
|
|
576
|
+
}
|
|
577
|
+
};
|
|
578
|
+
FirmwareUpdateMetaDataCCStatusReport = __decorate([
|
|
579
|
+
(0, CommandClass_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.StatusReport)
|
|
580
|
+
], FirmwareUpdateMetaDataCCStatusReport);
|
|
581
|
+
exports.FirmwareUpdateMetaDataCCStatusReport = FirmwareUpdateMetaDataCCStatusReport;
|
|
582
|
+
let FirmwareUpdateMetaDataCCActivationReport = class FirmwareUpdateMetaDataCCActivationReport extends FirmwareUpdateMetaDataCC {
|
|
583
|
+
constructor(host, options) {
|
|
584
|
+
super(host, options);
|
|
585
|
+
(0, safe_1.validatePayload)(this.payload.length >= 8);
|
|
586
|
+
this.manufacturerId = this.payload.readUInt16BE(0);
|
|
587
|
+
this.firmwareId = this.payload.readUInt16BE(2);
|
|
588
|
+
this.checksum = this.payload.readUInt16BE(4);
|
|
589
|
+
this.firmwareTarget = this.payload[6];
|
|
590
|
+
this.activationStatus = this.payload[7];
|
|
591
|
+
if (this.version >= 5 && this.payload.length >= 9) {
|
|
592
|
+
this.hardwareVersion = this.payload[8];
|
|
593
|
+
}
|
|
594
|
+
}
|
|
595
|
+
toLogEntry(applHost) {
|
|
596
|
+
const message = {
|
|
597
|
+
"manufacturer id": (0, safe_2.num2hex)(this.manufacturerId),
|
|
598
|
+
"firmware id": (0, safe_2.num2hex)(this.firmwareId),
|
|
599
|
+
checksum: (0, safe_2.num2hex)(this.checksum),
|
|
600
|
+
"firmware target": this.firmwareTarget,
|
|
601
|
+
"activation status": (0, safe_2.getEnumMemberName)(_Types_1.FirmwareUpdateActivationStatus, this.activationStatus),
|
|
602
|
+
};
|
|
603
|
+
if (this.hardwareVersion != undefined) {
|
|
604
|
+
message.hardwareVersion = this.hardwareVersion;
|
|
605
|
+
}
|
|
606
|
+
return {
|
|
607
|
+
...super.toLogEntry(applHost),
|
|
608
|
+
message,
|
|
609
|
+
};
|
|
610
|
+
}
|
|
611
|
+
};
|
|
612
|
+
FirmwareUpdateMetaDataCCActivationReport = __decorate([
|
|
613
|
+
(0, CommandClass_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.ActivationReport)
|
|
614
|
+
], FirmwareUpdateMetaDataCCActivationReport);
|
|
615
|
+
exports.FirmwareUpdateMetaDataCCActivationReport = FirmwareUpdateMetaDataCCActivationReport;
|
|
616
|
+
let FirmwareUpdateMetaDataCCActivationSet = class FirmwareUpdateMetaDataCCActivationSet extends FirmwareUpdateMetaDataCC {
|
|
617
|
+
constructor(host, options) {
|
|
618
|
+
super(host, options);
|
|
619
|
+
if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
|
|
620
|
+
// TODO: Deserialize payload
|
|
621
|
+
throw new safe_1.ZWaveError(`${this.constructor.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
|
|
622
|
+
}
|
|
623
|
+
else {
|
|
624
|
+
this.manufacturerId = options.manufacturerId;
|
|
625
|
+
this.firmwareId = options.firmwareId;
|
|
626
|
+
this.checksum = options.checksum;
|
|
627
|
+
this.firmwareTarget = options.firmwareTarget;
|
|
628
|
+
this.hardwareVersion = options.hardwareVersion;
|
|
629
|
+
}
|
|
630
|
+
}
|
|
631
|
+
serialize() {
|
|
632
|
+
const isV5 = this.version >= 5 && this.hardwareVersion != undefined;
|
|
633
|
+
this.payload = Buffer.allocUnsafe(7 + (isV5 ? 1 : 0));
|
|
634
|
+
this.payload.writeUInt16BE(this.manufacturerId, 0);
|
|
635
|
+
this.payload.writeUInt16BE(this.firmwareId, 2);
|
|
636
|
+
this.payload.writeUInt16BE(this.checksum, 4);
|
|
637
|
+
this.payload[6] = this.firmwareTarget;
|
|
638
|
+
if (isV5) {
|
|
639
|
+
this.payload[7] = this.hardwareVersion;
|
|
640
|
+
}
|
|
641
|
+
return super.serialize();
|
|
642
|
+
}
|
|
643
|
+
toLogEntry(applHost) {
|
|
644
|
+
const message = {
|
|
645
|
+
"manufacturer id": (0, safe_2.num2hex)(this.manufacturerId),
|
|
646
|
+
"firmware id": (0, safe_2.num2hex)(this.firmwareId),
|
|
647
|
+
checksum: (0, safe_2.num2hex)(this.checksum),
|
|
648
|
+
"firmware target": this.firmwareTarget,
|
|
649
|
+
};
|
|
650
|
+
if (this.hardwareVersion != undefined) {
|
|
651
|
+
message["hardware version"] = this.hardwareVersion;
|
|
652
|
+
}
|
|
653
|
+
return {
|
|
654
|
+
...super.toLogEntry(applHost),
|
|
655
|
+
message,
|
|
656
|
+
};
|
|
657
|
+
}
|
|
658
|
+
};
|
|
659
|
+
FirmwareUpdateMetaDataCCActivationSet = __decorate([
|
|
660
|
+
(0, CommandClass_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.ActivationSet),
|
|
661
|
+
(0, CommandClass_1.expectedCCResponse)(FirmwareUpdateMetaDataCCActivationReport)
|
|
662
|
+
], FirmwareUpdateMetaDataCCActivationSet);
|
|
663
|
+
exports.FirmwareUpdateMetaDataCCActivationSet = FirmwareUpdateMetaDataCCActivationSet;
|
|
664
|
+
let FirmwareUpdateMetaDataCCPrepareReport = class FirmwareUpdateMetaDataCCPrepareReport extends FirmwareUpdateMetaDataCC {
|
|
665
|
+
constructor(host, options) {
|
|
666
|
+
super(host, options);
|
|
667
|
+
(0, safe_1.validatePayload)(this.payload.length >= 3);
|
|
668
|
+
this.status = this.payload[0];
|
|
669
|
+
this.checksum = this.payload.readUInt16BE(1);
|
|
670
|
+
}
|
|
671
|
+
toLogEntry(applHost) {
|
|
672
|
+
return {
|
|
673
|
+
...super.toLogEntry(applHost),
|
|
674
|
+
message: {
|
|
675
|
+
status: (0, safe_2.getEnumMemberName)(_Types_1.FirmwareDownloadStatus, this.status),
|
|
676
|
+
checksum: (0, safe_2.num2hex)(this.checksum),
|
|
677
|
+
},
|
|
678
|
+
};
|
|
679
|
+
}
|
|
680
|
+
};
|
|
681
|
+
FirmwareUpdateMetaDataCCPrepareReport = __decorate([
|
|
682
|
+
(0, CommandClass_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.PrepareReport)
|
|
683
|
+
], FirmwareUpdateMetaDataCCPrepareReport);
|
|
684
|
+
exports.FirmwareUpdateMetaDataCCPrepareReport = FirmwareUpdateMetaDataCCPrepareReport;
|
|
685
|
+
let FirmwareUpdateMetaDataCCPrepareGet = class FirmwareUpdateMetaDataCCPrepareGet extends FirmwareUpdateMetaDataCC {
|
|
686
|
+
constructor(host, options) {
|
|
687
|
+
super(host, options);
|
|
688
|
+
if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
|
|
689
|
+
// TODO: Deserialize payload
|
|
690
|
+
throw new safe_1.ZWaveError(`${this.constructor.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
|
|
691
|
+
}
|
|
692
|
+
else {
|
|
693
|
+
this.manufacturerId = options.manufacturerId;
|
|
694
|
+
this.firmwareId = options.firmwareId;
|
|
695
|
+
this.firmwareTarget = options.firmwareTarget;
|
|
696
|
+
this.fragmentSize = options.fragmentSize;
|
|
697
|
+
this.hardwareVersion = options.hardwareVersion;
|
|
698
|
+
}
|
|
699
|
+
}
|
|
700
|
+
serialize() {
|
|
701
|
+
this.payload = Buffer.allocUnsafe(8);
|
|
702
|
+
this.payload.writeUInt16BE(this.manufacturerId, 0);
|
|
703
|
+
this.payload.writeUInt16BE(this.firmwareId, 2);
|
|
704
|
+
this.payload[4] = this.firmwareTarget;
|
|
705
|
+
this.payload.writeUInt16BE(this.fragmentSize, 5);
|
|
706
|
+
this.payload[7] = this.hardwareVersion;
|
|
707
|
+
return super.serialize();
|
|
708
|
+
}
|
|
709
|
+
toLogEntry(applHost) {
|
|
710
|
+
return {
|
|
711
|
+
...super.toLogEntry(applHost),
|
|
712
|
+
message: {
|
|
713
|
+
"manufacturer id": (0, safe_2.num2hex)(this.manufacturerId),
|
|
714
|
+
"firmware id": (0, safe_2.num2hex)(this.firmwareId),
|
|
715
|
+
"firmware target": this.firmwareTarget,
|
|
716
|
+
"fragment size": this.fragmentSize,
|
|
717
|
+
"hardware version": this.hardwareVersion,
|
|
718
|
+
},
|
|
719
|
+
};
|
|
720
|
+
}
|
|
721
|
+
};
|
|
722
|
+
FirmwareUpdateMetaDataCCPrepareGet = __decorate([
|
|
723
|
+
(0, CommandClass_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.PrepareGet),
|
|
724
|
+
(0, CommandClass_1.expectedCCResponse)(FirmwareUpdateMetaDataCCReport)
|
|
725
|
+
], FirmwareUpdateMetaDataCCPrepareGet);
|
|
726
|
+
exports.FirmwareUpdateMetaDataCCPrepareGet = FirmwareUpdateMetaDataCCPrepareGet;
|
|
727
|
+
//# sourceMappingURL=FirmwareUpdateMetaDataCC.js.map
|