@zwave-js/cc 14.3.10 → 15.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/cc/AlarmSensorCC.d.ts +68 -68
- package/build/cjs/cc/AlarmSensorCC.js +12 -50
- package/build/cjs/cc/AlarmSensorCC.js.map +2 -2
- package/build/cjs/cc/AssociationCC.d.ts +72 -73
- package/build/cjs/cc/AssociationCC.js +9 -26
- package/build/cjs/cc/AssociationCC.js.map +2 -2
- package/build/cjs/cc/AssociationGroupInfoCC.d.ts +71 -71
- package/build/cjs/cc/AssociationGroupInfoCC.js +11 -22
- package/build/cjs/cc/AssociationGroupInfoCC.js.map +2 -2
- package/build/cjs/cc/BarrierOperatorCC.d.ts +66 -72
- package/build/cjs/cc/BarrierOperatorCC.js +12 -44
- package/build/cjs/cc/BarrierOperatorCC.js.map +2 -2
- package/build/cjs/cc/BasicCC.d.ts +64 -65
- package/build/cjs/cc/BasicCC.js +15 -46
- package/build/cjs/cc/BasicCC.js.map +2 -2
- package/build/cjs/cc/BatteryCC.d.ts +162 -165
- package/build/cjs/cc/BatteryCC.js +7 -84
- package/build/cjs/cc/BatteryCC.js.map +2 -2
- package/build/cjs/cc/BinarySensorCC.d.ts +36 -36
- package/build/cjs/cc/BinarySensorCC.js +9 -29
- package/build/cjs/cc/BinarySensorCC.js.map +2 -2
- package/build/cjs/cc/BinarySwitchCC.d.ts +34 -34
- package/build/cjs/cc/BinarySwitchCC.js +6 -22
- package/build/cjs/cc/BinarySwitchCC.js.map +2 -2
- package/build/cjs/cc/CRC16CC.d.ts +4 -8
- package/build/cjs/cc/CRC16CC.js +4 -27
- package/build/cjs/cc/CRC16CC.js.map +2 -2
- package/build/cjs/cc/CentralSceneCC.d.ts +74 -74
- package/build/cjs/cc/CentralSceneCC.js +7 -30
- package/build/cjs/cc/CentralSceneCC.js.map +2 -2
- package/build/cjs/cc/ClimateControlScheduleCC.d.ts +38 -40
- package/build/cjs/cc/ClimateControlScheduleCC.js +5 -24
- package/build/cjs/cc/ClimateControlScheduleCC.js.map +2 -2
- package/build/cjs/cc/ClockCC.d.ts +3 -3
- package/build/cjs/cc/ClockCC.js.map +2 -2
- package/build/cjs/cc/ColorSwitchCC.d.ts +117 -117
- package/build/cjs/cc/ColorSwitchCC.js +23 -75
- package/build/cjs/cc/ColorSwitchCC.js.map +2 -2
- package/build/cjs/cc/ConfigurationCC._validateArgs.js +1 -1
- package/build/cjs/cc/ConfigurationCC._validateArgs.js.map +1 -1
- package/build/cjs/cc/ConfigurationCC.d.ts +48 -52
- package/build/cjs/cc/ConfigurationCC.js +11 -39
- package/build/cjs/cc/ConfigurationCC.js.map +2 -2
- package/build/cjs/cc/DeviceResetLocallyCC.d.ts +1 -1
- package/build/cjs/cc/DeviceResetLocallyCC.js.map +2 -2
- package/build/cjs/cc/DoorLockCC._validateArgs.js +1 -1
- package/build/cjs/cc/DoorLockCC._validateArgs.js.map +1 -1
- package/build/cjs/cc/DoorLockCC.d.ts +362 -361
- package/build/cjs/cc/DoorLockCC.js +51 -156
- package/build/cjs/cc/DoorLockCC.js.map +2 -2
- package/build/cjs/cc/DoorLockLoggingCC.d.ts +14 -14
- package/build/cjs/cc/DoorLockLoggingCC.js +4 -8
- package/build/cjs/cc/DoorLockLoggingCC.js.map +2 -2
- package/build/cjs/cc/EnergyProductionCC.d.ts +16 -16
- package/build/cjs/cc/EnergyProductionCC.js +5 -17
- package/build/cjs/cc/EnergyProductionCC.js.map +2 -2
- package/build/cjs/cc/EntryControlCC.d.ts +71 -71
- package/build/cjs/cc/EntryControlCC.js +9 -36
- package/build/cjs/cc/EntryControlCC.js.map +2 -2
- package/build/cjs/cc/FirmwareUpdateMetaDataCC._validateArgs.d.ts +2 -0
- package/build/cjs/cc/FirmwareUpdateMetaDataCC._validateArgs.js +26 -0
- package/build/cjs/cc/FirmwareUpdateMetaDataCC._validateArgs.js.map +1 -1
- package/build/cjs/cc/FirmwareUpdateMetaDataCC.d.ts +101 -88
- package/build/cjs/cc/FirmwareUpdateMetaDataCC.js +159 -34
- package/build/cjs/cc/FirmwareUpdateMetaDataCC.js.map +2 -2
- package/build/cjs/cc/HumidityControlModeCC.d.ts +31 -33
- package/build/cjs/cc/HumidityControlModeCC.js +6 -15
- package/build/cjs/cc/HumidityControlModeCC.js.map +2 -2
- package/build/cjs/cc/HumidityControlOperatingStateCC.d.ts +9 -11
- package/build/cjs/cc/HumidityControlOperatingStateCC.js +4 -12
- package/build/cjs/cc/HumidityControlOperatingStateCC.js.map +2 -2
- package/build/cjs/cc/HumidityControlSetpointCC.d.ts +50 -50
- package/build/cjs/cc/HumidityControlSetpointCC.js +10 -28
- package/build/cjs/cc/HumidityControlSetpointCC.js.map +2 -2
- package/build/cjs/cc/InclusionControllerCC.d.ts +4 -4
- package/build/cjs/cc/InclusionControllerCC.js.map +2 -2
- package/build/cjs/cc/IndicatorCC.d.ts +119 -119
- package/build/cjs/cc/IndicatorCC.js +15 -61
- package/build/cjs/cc/IndicatorCC.js.map +2 -2
- package/build/cjs/cc/IrrigationCC.d.ts +581 -585
- package/build/cjs/cc/IrrigationCC.js +29 -233
- package/build/cjs/cc/IrrigationCC.js.map +2 -2
- package/build/cjs/cc/LanguageCC.d.ts +21 -21
- package/build/cjs/cc/LanguageCC.js +4 -15
- package/build/cjs/cc/LanguageCC.js.map +2 -2
- package/build/cjs/cc/LockCC.d.ts +9 -9
- package/build/cjs/cc/LockCC.js +4 -12
- package/build/cjs/cc/LockCC.js.map +2 -2
- package/build/cjs/cc/ManufacturerProprietaryCC.d.ts +2 -2
- package/build/cjs/cc/ManufacturerProprietaryCC.js.map +2 -2
- package/build/cjs/cc/ManufacturerSpecificCC.d.ts +67 -67
- package/build/cjs/cc/ManufacturerSpecificCC.js +5 -26
- package/build/cjs/cc/ManufacturerSpecificCC.js.map +2 -2
- package/build/cjs/cc/MeterCC.d.ts +120 -119
- package/build/cjs/cc/MeterCC.js +25 -69
- package/build/cjs/cc/MeterCC.js.map +2 -2
- package/build/cjs/cc/MultiChannelAssociationCC.d.ts +71 -73
- package/build/cjs/cc/MultiChannelAssociationCC.js +10 -28
- package/build/cjs/cc/MultiChannelAssociationCC.js.map +2 -2
- package/build/cjs/cc/MultiChannelCC.d.ts +136 -146
- package/build/cjs/cc/MultiChannelCC.js +26 -118
- package/build/cjs/cc/MultiChannelCC.js.map +2 -2
- package/build/cjs/cc/MultiCommandCC.d.ts +4 -8
- package/build/cjs/cc/MultiCommandCC.js +4 -37
- package/build/cjs/cc/MultiCommandCC.js.map +2 -2
- package/build/cjs/cc/MultilevelSensorCC.d.ts +50 -49
- package/build/cjs/cc/MultilevelSensorCC.js +12 -33
- package/build/cjs/cc/MultilevelSensorCC.js.map +2 -2
- package/build/cjs/cc/MultilevelSwitchCC.d.ts +146 -146
- package/build/cjs/cc/MultilevelSwitchCC.js +13 -107
- package/build/cjs/cc/MultilevelSwitchCC.js.map +2 -2
- package/build/cjs/cc/NodeNamingCC.d.ts +30 -30
- package/build/cjs/cc/NodeNamingCC.js +5 -16
- package/build/cjs/cc/NodeNamingCC.js.map +2 -2
- package/build/cjs/cc/NotificationCC.d.ts +210 -208
- package/build/cjs/cc/NotificationCC.js +41 -113
- package/build/cjs/cc/NotificationCC.js.map +2 -2
- package/build/cjs/cc/PowerlevelCC.d.ts +6 -6
- package/build/cjs/cc/PowerlevelCC.js.map +2 -2
- package/build/cjs/cc/ProtectionCC.d.ts +117 -121
- package/build/cjs/cc/ProtectionCC.js +15 -50
- package/build/cjs/cc/ProtectionCC.js.map +2 -2
- package/build/cjs/cc/SceneActivationCC.d.ts +29 -29
- package/build/cjs/cc/SceneActivationCC.js +4 -17
- package/build/cjs/cc/SceneActivationCC.js.map +2 -2
- package/build/cjs/cc/SceneActuatorConfigurationCC.d.ts +35 -35
- package/build/cjs/cc/SceneActuatorConfigurationCC.js +9 -21
- package/build/cjs/cc/SceneActuatorConfigurationCC.js.map +2 -2
- package/build/cjs/cc/SceneControllerConfigurationCC.d.ts +36 -35
- package/build/cjs/cc/SceneControllerConfigurationCC.js +10 -22
- package/build/cjs/cc/SceneControllerConfigurationCC.js.map +2 -2
- package/build/cjs/cc/ScheduleEntryLockCC.d.ts +109 -109
- package/build/cjs/cc/ScheduleEntryLockCC.js +13 -30
- package/build/cjs/cc/ScheduleEntryLockCC.js.map +2 -2
- package/build/cjs/cc/Security2CC.d.ts +15 -21
- package/build/cjs/cc/Security2CC.js +32 -347
- package/build/cjs/cc/Security2CC.js.map +3 -3
- package/build/cjs/cc/SecurityCC.d.ts +12 -19
- package/build/cjs/cc/SecurityCC.js +12 -106
- package/build/cjs/cc/SecurityCC.js.map +2 -2
- package/build/cjs/cc/SoundSwitchCC.d.ts +58 -58
- package/build/cjs/cc/SoundSwitchCC.js +11 -43
- package/build/cjs/cc/SoundSwitchCC.js.map +2 -2
- package/build/cjs/cc/SupervisionCC.d.ts +21 -25
- package/build/cjs/cc/SupervisionCC.js +8 -38
- package/build/cjs/cc/SupervisionCC.js.map +2 -2
- package/build/cjs/cc/ThermostatFanModeCC.d.ts +37 -39
- package/build/cjs/cc/ThermostatFanModeCC.js +8 -21
- package/build/cjs/cc/ThermostatFanModeCC.js.map +2 -2
- package/build/cjs/cc/ThermostatFanStateCC.d.ts +9 -11
- package/build/cjs/cc/ThermostatFanStateCC.js +4 -12
- package/build/cjs/cc/ThermostatFanStateCC.js.map +2 -2
- package/build/cjs/cc/ThermostatModeCC.d.ts +39 -41
- package/build/cjs/cc/ThermostatModeCC.js +8 -21
- package/build/cjs/cc/ThermostatModeCC.js.map +2 -2
- package/build/cjs/cc/ThermostatOperatingStateCC.d.ts +9 -11
- package/build/cjs/cc/ThermostatOperatingStateCC.js +4 -12
- package/build/cjs/cc/ThermostatOperatingStateCC.js.map +2 -2
- package/build/cjs/cc/ThermostatSetbackCC.d.ts +4 -4
- package/build/cjs/cc/ThermostatSetbackCC.js.map +2 -2
- package/build/cjs/cc/ThermostatSetpointCC.d.ts +51 -51
- package/build/cjs/cc/ThermostatSetpointCC.js +10 -25
- package/build/cjs/cc/ThermostatSetpointCC.js.map +2 -2
- package/build/cjs/cc/TimeCC.d.ts +6 -6
- package/build/cjs/cc/TimeCC.js.map +2 -2
- package/build/cjs/cc/TimeParametersCC.d.ts +9 -9
- package/build/cjs/cc/TimeParametersCC.js +4 -11
- package/build/cjs/cc/TimeParametersCC.js.map +2 -2
- package/build/cjs/cc/TransportServiceCC.d.ts +7 -12
- package/build/cjs/cc/TransportServiceCC.js +3 -20
- package/build/cjs/cc/TransportServiceCC.js.map +2 -2
- package/build/cjs/cc/UserCodeCC._validateArgs.js +1 -1
- package/build/cjs/cc/UserCodeCC._validateArgs.js.map +1 -1
- package/build/cjs/cc/UserCodeCC.d.ts +236 -236
- package/build/cjs/cc/UserCodeCC.js +33 -98
- package/build/cjs/cc/UserCodeCC.js.map +2 -2
- package/build/cjs/cc/VersionCC.d.ts +210 -212
- package/build/cjs/cc/VersionCC.js +7 -98
- package/build/cjs/cc/VersionCC.js.map +2 -2
- package/build/cjs/cc/WakeUpCC.d.ts +44 -44
- package/build/cjs/cc/WakeUpCC.js +6 -26
- package/build/cjs/cc/WakeUpCC.js.map +2 -2
- package/build/cjs/cc/WindowCoveringCC.d.ts +118 -122
- package/build/cjs/cc/WindowCoveringCC.js +16 -128
- package/build/cjs/cc/WindowCoveringCC.js.map +2 -2
- package/build/cjs/cc/ZWavePlusCC.d.ts +74 -74
- package/build/cjs/cc/ZWavePlusCC.js +4 -25
- package/build/cjs/cc/ZWavePlusCC.js.map +2 -2
- package/build/cjs/cc/ZWaveProtocolCC.d.ts +28 -28
- package/build/cjs/cc/ZWaveProtocolCC.js.map +2 -2
- package/build/cjs/cc/_CCValues.generated.d.ts +15814 -0
- package/build/cjs/cc/_CCValues.generated.js +8723 -0
- package/build/cjs/cc/_CCValues.generated.js.map +7 -0
- package/build/cjs/cc/manufacturerProprietary/FibaroCC.d.ts +4 -4
- package/build/cjs/cc/manufacturerProprietary/FibaroCC.js.map +2 -2
- package/build/cjs/index.d.ts +1 -0
- package/build/cjs/index.js.map +1 -1
- package/build/cjs/index_browser.d.ts +9 -0
- package/build/cjs/index_browser.js +41 -1
- package/build/cjs/index_browser.js.map +2 -2
- package/build/cjs/lib/API.d.ts +7 -5
- package/build/cjs/lib/API.js +1 -1
- package/build/cjs/lib/API.js.map +2 -2
- package/build/cjs/lib/CCValueUtils.d.ts +14 -0
- package/build/cjs/lib/CCValueUtils.js +93 -0
- package/build/cjs/lib/CCValueUtils.js.map +7 -0
- package/build/cjs/lib/CommandClass.d.ts +10 -21
- package/build/cjs/lib/CommandClass.js +51 -106
- package/build/cjs/lib/CommandClass.js.map +3 -3
- package/build/cjs/lib/CommandClassDecorators.d.ts +1 -1
- package/build/cjs/lib/CommandClassDecorators.js +3 -3
- package/build/cjs/lib/CommandClassDecorators.js.map +2 -2
- package/build/cjs/lib/Values.d.ts +7 -106
- package/build/cjs/lib/Values.js +13 -107
- package/build/cjs/lib/Values.js.map +3 -3
- package/build/cjs/lib/traits.d.ts +94 -0
- package/build/cjs/lib/traits.js +17 -0
- package/build/cjs/lib/traits.js.map +7 -0
- package/build/cjs/lib/utils.d.ts +2 -2
- package/build/cjs/lib/utils.js.map +2 -2
- package/build/esm/cc/AlarmSensorCC.d.ts +68 -68
- package/build/esm/cc/AlarmSensorCC.d.ts.map +1 -1
- package/build/esm/cc/AlarmSensorCC.js +2 -40
- package/build/esm/cc/AlarmSensorCC.js.map +1 -1
- package/build/esm/cc/AssociationCC.d.ts +72 -73
- package/build/esm/cc/AssociationCC.d.ts.map +1 -1
- package/build/esm/cc/AssociationCC.js +2 -27
- package/build/esm/cc/AssociationCC.js.map +1 -1
- package/build/esm/cc/AssociationGroupInfoCC.d.ts +71 -71
- package/build/esm/cc/AssociationGroupInfoCC.d.ts.map +1 -1
- package/build/esm/cc/AssociationGroupInfoCC.js +2 -19
- package/build/esm/cc/AssociationGroupInfoCC.js.map +1 -1
- package/build/esm/cc/BarrierOperatorCC.d.ts +66 -72
- package/build/esm/cc/BarrierOperatorCC.d.ts.map +1 -1
- package/build/esm/cc/BarrierOperatorCC.js +2 -37
- package/build/esm/cc/BarrierOperatorCC.js.map +1 -1
- package/build/esm/cc/BasicCC.d.ts +64 -65
- package/build/esm/cc/BasicCC.d.ts.map +1 -1
- package/build/esm/cc/BasicCC.js +2 -34
- package/build/esm/cc/BasicCC.js.map +1 -1
- package/build/esm/cc/BatteryCC.d.ts +162 -165
- package/build/esm/cc/BatteryCC.d.ts.map +1 -1
- package/build/esm/cc/BatteryCC.js +3 -80
- package/build/esm/cc/BatteryCC.js.map +1 -1
- package/build/esm/cc/BinarySensorCC.d.ts +36 -36
- package/build/esm/cc/BinarySensorCC.d.ts.map +1 -1
- package/build/esm/cc/BinarySensorCC.js +2 -19
- package/build/esm/cc/BinarySensorCC.js.map +1 -1
- package/build/esm/cc/BinarySwitchCC.d.ts +34 -34
- package/build/esm/cc/BinarySwitchCC.d.ts.map +1 -1
- package/build/esm/cc/BinarySwitchCC.js +2 -19
- package/build/esm/cc/BinarySwitchCC.js.map +1 -1
- package/build/esm/cc/CRC16CC.d.ts +4 -8
- package/build/esm/cc/CRC16CC.d.ts.map +1 -1
- package/build/esm/cc/CRC16CC.js +4 -34
- package/build/esm/cc/CRC16CC.js.map +1 -1
- package/build/esm/cc/CentralSceneCC.d.ts +74 -74
- package/build/esm/cc/CentralSceneCC.d.ts.map +1 -1
- package/build/esm/cc/CentralSceneCC.js +2 -27
- package/build/esm/cc/CentralSceneCC.js.map +1 -1
- package/build/esm/cc/ClimateControlScheduleCC.d.ts +38 -40
- package/build/esm/cc/ClimateControlScheduleCC.d.ts.map +1 -1
- package/build/esm/cc/ClimateControlScheduleCC.js +2 -26
- package/build/esm/cc/ClimateControlScheduleCC.js.map +1 -1
- package/build/esm/cc/ClockCC.d.ts +3 -3
- package/build/esm/cc/ClockCC.d.ts.map +1 -1
- package/build/esm/cc/ClockCC.js +0 -1
- package/build/esm/cc/ClockCC.js.map +1 -1
- package/build/esm/cc/ColorSwitchCC.d.ts +117 -117
- package/build/esm/cc/ColorSwitchCC.d.ts.map +1 -1
- package/build/esm/cc/ColorSwitchCC.js +2 -58
- package/build/esm/cc/ColorSwitchCC.js.map +1 -1
- package/build/esm/cc/ConfigurationCC._validateArgs.js +1 -1
- package/build/esm/cc/ConfigurationCC._validateArgs.js.map +1 -1
- package/build/esm/cc/ConfigurationCC.d.ts +48 -52
- package/build/esm/cc/ConfigurationCC.d.ts.map +1 -1
- package/build/esm/cc/ConfigurationCC.js +2 -40
- package/build/esm/cc/ConfigurationCC.js.map +1 -1
- package/build/esm/cc/DeviceResetLocallyCC.d.ts +1 -1
- package/build/esm/cc/DeviceResetLocallyCC.d.ts.map +1 -1
- package/build/esm/cc/DeviceResetLocallyCC.js.map +1 -1
- package/build/esm/cc/DoorLockCC._validateArgs.js +1 -1
- package/build/esm/cc/DoorLockCC._validateArgs.js.map +1 -1
- package/build/esm/cc/DoorLockCC.d.ts +362 -361
- package/build/esm/cc/DoorLockCC.d.ts.map +1 -1
- package/build/esm/cc/DoorLockCC.js +9 -129
- package/build/esm/cc/DoorLockCC.js.map +1 -1
- package/build/esm/cc/DoorLockLoggingCC.d.ts +14 -14
- package/build/esm/cc/DoorLockLoggingCC.d.ts.map +1 -1
- package/build/esm/cc/DoorLockLoggingCC.js +2 -6
- package/build/esm/cc/DoorLockLoggingCC.js.map +1 -1
- package/build/esm/cc/EnergyProductionCC.d.ts +16 -16
- package/build/esm/cc/EnergyProductionCC.d.ts.map +1 -1
- package/build/esm/cc/EnergyProductionCC.js +2 -15
- package/build/esm/cc/EnergyProductionCC.js.map +1 -1
- package/build/esm/cc/EntryControlCC.d.ts +71 -71
- package/build/esm/cc/EntryControlCC.d.ts.map +1 -1
- package/build/esm/cc/EntryControlCC.js +2 -29
- package/build/esm/cc/EntryControlCC.js.map +1 -1
- package/build/esm/cc/FirmwareUpdateMetaDataCC._validateArgs.d.ts +2 -0
- package/build/esm/cc/FirmwareUpdateMetaDataCC._validateArgs.d.ts.map +1 -1
- package/build/esm/cc/FirmwareUpdateMetaDataCC._validateArgs.js +20 -0
- package/build/esm/cc/FirmwareUpdateMetaDataCC._validateArgs.js.map +1 -1
- package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts +101 -88
- package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -1
- package/build/esm/cc/FirmwareUpdateMetaDataCC.js +160 -53
- package/build/esm/cc/FirmwareUpdateMetaDataCC.js.map +1 -1
- package/build/esm/cc/HumidityControlModeCC.d.ts +31 -33
- package/build/esm/cc/HumidityControlModeCC.d.ts.map +1 -1
- package/build/esm/cc/HumidityControlModeCC.js +2 -11
- package/build/esm/cc/HumidityControlModeCC.js.map +1 -1
- package/build/esm/cc/HumidityControlOperatingStateCC.d.ts +9 -11
- package/build/esm/cc/HumidityControlOperatingStateCC.d.ts.map +1 -1
- package/build/esm/cc/HumidityControlOperatingStateCC.js +2 -9
- package/build/esm/cc/HumidityControlOperatingStateCC.js.map +1 -1
- package/build/esm/cc/HumidityControlSetpointCC.d.ts +50 -50
- package/build/esm/cc/HumidityControlSetpointCC.d.ts.map +1 -1
- package/build/esm/cc/HumidityControlSetpointCC.js +2 -23
- package/build/esm/cc/HumidityControlSetpointCC.js.map +1 -1
- package/build/esm/cc/InclusionControllerCC.d.ts +4 -4
- package/build/esm/cc/InclusionControllerCC.d.ts.map +1 -1
- package/build/esm/cc/InclusionControllerCC.js +0 -2
- package/build/esm/cc/InclusionControllerCC.js.map +1 -1
- package/build/esm/cc/IndicatorCC.d.ts +119 -119
- package/build/esm/cc/IndicatorCC.d.ts.map +1 -1
- package/build/esm/cc/IndicatorCC.js +2 -50
- package/build/esm/cc/IndicatorCC.js.map +1 -1
- package/build/esm/cc/IrrigationCC.d.ts +581 -585
- package/build/esm/cc/IrrigationCC.d.ts.map +1 -1
- package/build/esm/cc/IrrigationCC.js +3 -231
- package/build/esm/cc/IrrigationCC.js.map +1 -1
- package/build/esm/cc/LanguageCC.d.ts +21 -21
- package/build/esm/cc/LanguageCC.d.ts.map +1 -1
- package/build/esm/cc/LanguageCC.js +2 -13
- package/build/esm/cc/LanguageCC.js.map +1 -1
- package/build/esm/cc/LockCC.d.ts +9 -9
- package/build/esm/cc/LockCC.d.ts.map +1 -1
- package/build/esm/cc/LockCC.js +2 -10
- package/build/esm/cc/LockCC.js.map +1 -1
- package/build/esm/cc/ManufacturerProprietaryCC.d.ts +2 -2
- package/build/esm/cc/ManufacturerProprietaryCC.d.ts.map +1 -1
- package/build/esm/cc/ManufacturerProprietaryCC.js +0 -2
- package/build/esm/cc/ManufacturerProprietaryCC.js.map +1 -1
- package/build/esm/cc/ManufacturerSpecificCC.d.ts +67 -67
- package/build/esm/cc/ManufacturerSpecificCC.d.ts.map +1 -1
- package/build/esm/cc/ManufacturerSpecificCC.js +2 -26
- package/build/esm/cc/ManufacturerSpecificCC.js.map +1 -1
- package/build/esm/cc/MeterCC.d.ts +120 -119
- package/build/esm/cc/MeterCC.d.ts.map +1 -1
- package/build/esm/cc/MeterCC.js +3 -53
- package/build/esm/cc/MeterCC.js.map +1 -1
- package/build/esm/cc/MultiChannelAssociationCC.d.ts +71 -73
- package/build/esm/cc/MultiChannelAssociationCC.d.ts.map +1 -1
- package/build/esm/cc/MultiChannelAssociationCC.js +2 -30
- package/build/esm/cc/MultiChannelAssociationCC.js.map +1 -1
- package/build/esm/cc/MultiChannelCC.d.ts +136 -146
- package/build/esm/cc/MultiChannelCC.d.ts.map +1 -1
- package/build/esm/cc/MultiChannelCC.js +10 -131
- package/build/esm/cc/MultiChannelCC.js.map +1 -1
- package/build/esm/cc/MultiCommandCC.d.ts +4 -8
- package/build/esm/cc/MultiCommandCC.d.ts.map +1 -1
- package/build/esm/cc/MultiCommandCC.js +4 -38
- package/build/esm/cc/MultiCommandCC.js.map +1 -1
- package/build/esm/cc/MultilevelSensorCC.d.ts +50 -49
- package/build/esm/cc/MultilevelSensorCC.d.ts.map +1 -1
- package/build/esm/cc/MultilevelSensorCC.js +2 -27
- package/build/esm/cc/MultilevelSensorCC.js.map +1 -1
- package/build/esm/cc/MultilevelSwitchCC.d.ts +146 -146
- package/build/esm/cc/MultilevelSwitchCC.d.ts.map +1 -1
- package/build/esm/cc/MultilevelSwitchCC.js +5 -105
- package/build/esm/cc/MultilevelSwitchCC.js.map +1 -1
- package/build/esm/cc/NodeNamingCC.d.ts +30 -30
- package/build/esm/cc/NodeNamingCC.d.ts.map +1 -1
- package/build/esm/cc/NodeNamingCC.js +2 -14
- package/build/esm/cc/NodeNamingCC.js.map +1 -1
- package/build/esm/cc/NotificationCC.d.ts +210 -208
- package/build/esm/cc/NotificationCC.d.ts.map +1 -1
- package/build/esm/cc/NotificationCC.js +21 -97
- package/build/esm/cc/NotificationCC.js.map +1 -1
- package/build/esm/cc/PowerlevelCC.d.ts +6 -6
- package/build/esm/cc/PowerlevelCC.d.ts.map +1 -1
- package/build/esm/cc/PowerlevelCC.js +0 -4
- package/build/esm/cc/PowerlevelCC.js.map +1 -1
- package/build/esm/cc/ProtectionCC.d.ts +117 -121
- package/build/esm/cc/ProtectionCC.d.ts.map +1 -1
- package/build/esm/cc/ProtectionCC.js +2 -39
- package/build/esm/cc/ProtectionCC.js.map +1 -1
- package/build/esm/cc/SceneActivationCC.d.ts +29 -29
- package/build/esm/cc/SceneActivationCC.d.ts.map +1 -1
- package/build/esm/cc/SceneActivationCC.js +2 -15
- package/build/esm/cc/SceneActivationCC.js.map +1 -1
- package/build/esm/cc/SceneActuatorConfigurationCC.d.ts +35 -35
- package/build/esm/cc/SceneActuatorConfigurationCC.d.ts.map +1 -1
- package/build/esm/cc/SceneActuatorConfigurationCC.js +2 -16
- package/build/esm/cc/SceneActuatorConfigurationCC.js.map +1 -1
- package/build/esm/cc/SceneControllerConfigurationCC.d.ts +36 -35
- package/build/esm/cc/SceneControllerConfigurationCC.d.ts.map +1 -1
- package/build/esm/cc/SceneControllerConfigurationCC.js +2 -16
- package/build/esm/cc/SceneControllerConfigurationCC.js.map +1 -1
- package/build/esm/cc/ScheduleEntryLockCC.d.ts +109 -109
- package/build/esm/cc/ScheduleEntryLockCC.d.ts.map +1 -1
- package/build/esm/cc/ScheduleEntryLockCC.js +2 -31
- package/build/esm/cc/ScheduleEntryLockCC.js.map +1 -1
- package/build/esm/cc/Security2CC.d.ts +15 -21
- package/build/esm/cc/Security2CC.d.ts.map +1 -1
- package/build/esm/cc/Security2CC.js +27 -475
- package/build/esm/cc/Security2CC.js.map +1 -1
- package/build/esm/cc/SecurityCC.d.ts +12 -19
- package/build/esm/cc/SecurityCC.d.ts.map +1 -1
- package/build/esm/cc/SecurityCC.js +13 -138
- package/build/esm/cc/SecurityCC.js.map +1 -1
- package/build/esm/cc/SoundSwitchCC.d.ts +58 -58
- package/build/esm/cc/SoundSwitchCC.d.ts.map +1 -1
- package/build/esm/cc/SoundSwitchCC.js +2 -40
- package/build/esm/cc/SoundSwitchCC.js.map +1 -1
- package/build/esm/cc/SupervisionCC.d.ts +21 -25
- package/build/esm/cc/SupervisionCC.d.ts.map +1 -1
- package/build/esm/cc/SupervisionCC.js +6 -41
- package/build/esm/cc/SupervisionCC.js.map +1 -1
- package/build/esm/cc/ThermostatFanModeCC.d.ts +37 -39
- package/build/esm/cc/ThermostatFanModeCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatFanModeCC.js +2 -15
- package/build/esm/cc/ThermostatFanModeCC.js.map +1 -1
- package/build/esm/cc/ThermostatFanStateCC.d.ts +9 -11
- package/build/esm/cc/ThermostatFanStateCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatFanStateCC.js +2 -9
- package/build/esm/cc/ThermostatFanStateCC.js.map +1 -1
- package/build/esm/cc/ThermostatModeCC.d.ts +39 -41
- package/build/esm/cc/ThermostatModeCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatModeCC.js +2 -17
- package/build/esm/cc/ThermostatModeCC.js.map +1 -1
- package/build/esm/cc/ThermostatOperatingStateCC.d.ts +9 -11
- package/build/esm/cc/ThermostatOperatingStateCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatOperatingStateCC.js +2 -9
- package/build/esm/cc/ThermostatOperatingStateCC.js.map +1 -1
- package/build/esm/cc/ThermostatSetbackCC.d.ts +4 -4
- package/build/esm/cc/ThermostatSetbackCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatSetbackCC.js +0 -2
- package/build/esm/cc/ThermostatSetbackCC.js.map +1 -1
- package/build/esm/cc/ThermostatSetpointCC.d.ts +51 -51
- package/build/esm/cc/ThermostatSetpointCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatSetpointCC.js +2 -22
- package/build/esm/cc/ThermostatSetpointCC.js.map +1 -1
- package/build/esm/cc/TimeCC.d.ts +6 -6
- package/build/esm/cc/TimeCC.d.ts.map +1 -1
- package/build/esm/cc/TimeCC.js +0 -4
- package/build/esm/cc/TimeCC.js.map +1 -1
- package/build/esm/cc/TimeParametersCC.d.ts +9 -9
- package/build/esm/cc/TimeParametersCC.d.ts.map +1 -1
- package/build/esm/cc/TimeParametersCC.js +2 -9
- package/build/esm/cc/TimeParametersCC.js.map +1 -1
- package/build/esm/cc/TransportServiceCC.d.ts +7 -12
- package/build/esm/cc/TransportServiceCC.d.ts.map +1 -1
- package/build/esm/cc/TransportServiceCC.js +5 -38
- package/build/esm/cc/TransportServiceCC.js.map +1 -1
- package/build/esm/cc/UserCodeCC._validateArgs.js +1 -1
- package/build/esm/cc/UserCodeCC._validateArgs.js.map +1 -1
- package/build/esm/cc/UserCodeCC.d.ts +236 -236
- package/build/esm/cc/UserCodeCC.d.ts.map +1 -1
- package/build/esm/cc/UserCodeCC.js +2 -72
- package/build/esm/cc/UserCodeCC.js.map +1 -1
- package/build/esm/cc/VersionCC.d.ts +210 -212
- package/build/esm/cc/VersionCC.d.ts.map +1 -1
- package/build/esm/cc/VersionCC.js +2 -96
- package/build/esm/cc/VersionCC.js.map +1 -1
- package/build/esm/cc/WakeUpCC.d.ts +44 -44
- package/build/esm/cc/WakeUpCC.d.ts.map +1 -1
- package/build/esm/cc/WakeUpCC.js +2 -22
- package/build/esm/cc/WakeUpCC.js.map +1 -1
- package/build/esm/cc/WindowCoveringCC.d.ts +118 -122
- package/build/esm/cc/WindowCoveringCC.d.ts.map +1 -1
- package/build/esm/cc/WindowCoveringCC.js +3 -108
- package/build/esm/cc/WindowCoveringCC.js.map +1 -1
- package/build/esm/cc/ZWavePlusCC.d.ts +74 -74
- package/build/esm/cc/ZWavePlusCC.d.ts.map +1 -1
- package/build/esm/cc/ZWavePlusCC.js +2 -26
- package/build/esm/cc/ZWavePlusCC.js.map +1 -1
- package/build/esm/cc/ZWaveProtocolCC.d.ts +28 -28
- package/build/esm/cc/ZWaveProtocolCC.d.ts.map +1 -1
- package/build/esm/cc/ZWaveProtocolCC.js +0 -27
- package/build/esm/cc/ZWaveProtocolCC.js.map +1 -1
- package/build/esm/cc/_CCValues.generated.d.ts +15814 -0
- package/build/esm/cc/_CCValues.generated.d.ts.map +1 -0
- package/build/esm/cc/_CCValues.generated.js +9187 -0
- package/build/esm/cc/_CCValues.generated.js.map +1 -0
- package/build/esm/cc/manufacturerProprietary/FibaroCC.d.ts +4 -4
- package/build/esm/cc/manufacturerProprietary/FibaroCC.d.ts.map +1 -1
- package/build/esm/cc/manufacturerProprietary/FibaroCC.js +0 -3
- package/build/esm/cc/manufacturerProprietary/FibaroCC.js.map +1 -1
- package/build/esm/index.d.ts +1 -0
- package/build/esm/index.d.ts.map +1 -1
- package/build/esm/index_browser.d.ts +9 -0
- package/build/esm/index_browser.d.ts.map +1 -1
- package/build/esm/index_browser.js +8 -1
- package/build/esm/index_browser.js.map +1 -1
- package/build/esm/lib/API.d.ts +7 -5
- package/build/esm/lib/API.d.ts.map +1 -1
- package/build/esm/lib/API.js +1 -1
- package/build/esm/lib/API.js.map +1 -1
- package/build/esm/lib/CCValueUtils.d.ts +14 -0
- package/build/esm/lib/CCValueUtils.d.ts.map +1 -0
- package/build/esm/lib/CCValueUtils.js +62 -0
- package/build/esm/lib/CCValueUtils.js.map +1 -0
- package/build/esm/lib/CommandClass.d.ts +10 -21
- package/build/esm/lib/CommandClass.d.ts.map +1 -1
- package/build/esm/lib/CommandClass.js +8 -101
- package/build/esm/lib/CommandClass.js.map +1 -1
- package/build/esm/lib/CommandClassDecorators.d.ts +1 -1
- package/build/esm/lib/CommandClassDecorators.d.ts.map +1 -1
- package/build/esm/lib/CommandClassDecorators.js +1 -1
- package/build/esm/lib/CommandClassDecorators.js.map +1 -1
- package/build/esm/lib/Values.d.ts +7 -106
- package/build/esm/lib/Values.d.ts.map +1 -1
- package/build/esm/lib/Values.js +7 -104
- package/build/esm/lib/Values.js.map +1 -1
- package/build/esm/lib/traits.d.ts +94 -0
- package/build/esm/lib/traits.d.ts.map +1 -0
- package/build/esm/lib/traits.js +2 -0
- package/build/esm/lib/traits.js.map +1 -0
- package/build/esm/lib/utils.d.ts +2 -2
- package/build/esm/lib/utils.d.ts.map +1 -1
- package/build/esm/lib/utils.js.map +1 -1
- package/package.json +16 -14
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/cc/WakeUpCC.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n\tCommandClasses,\n\ttype MaybeNotKnown,\n\ttype MessageOrCCLogEntry,\n\tMessagePriority,\n\ttype SupervisionResult,\n\tTransmitOptions,\n\tValueMetadata,\n\ttype WithAddress,\n\tsupervisedCommandSucceeded,\n\tvalidatePayload,\n} from \"@zwave-js/core/safe\";\nimport type {\n\tCCEncodingContext,\n\tCCParsingContext,\n\tGetValueDB,\n} from \"@zwave-js/host/safe\";\nimport { Bytes } from \"@zwave-js/shared/safe\";\nimport { pick } from \"@zwave-js/shared/safe\";\nimport { validateArgs } from \"@zwave-js/transformers\";\nimport { clamp } from \"alcalzone-shared/math\";\nimport {\n\tCCAPI,\n\tPOLL_VALUE,\n\ttype PollValueImplementation,\n\tSET_VALUE,\n\ttype SetValueImplementation,\n\tthrowUnsupportedProperty,\n\tthrowWrongValueType,\n} from \"../lib/API.js\";\nimport {\n\ttype CCRaw,\n\tCommandClass,\n\ttype InterviewContext,\n\ttype PersistValuesContext,\n} from \"../lib/CommandClass.js\";\nimport {\n\tAPI,\n\tCCCommand,\n\tccValueProperty,\n\tccValues,\n\tcommandClass,\n\texpectedCCResponse,\n\timplementedVersion,\n\tuseSupervision,\n} from \"../lib/CommandClassDecorators.js\";\nimport { V } from \"../lib/Values.js\";\nimport { WakeUpCommand } from \"../lib/_Types.js\";\n\nexport const WakeUpCCValues = Object.freeze({\n\t...V.defineStaticCCValues(CommandClasses[\"Wake Up\"], {\n\t\t...V.staticProperty(\n\t\t\t\"controllerNodeId\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.ReadOnly,\n\t\t\t\tlabel: \"Node ID of the controller\",\n\t\t\t} as const,\n\t\t\t{\n\t\t\t\tsupportsEndpoints: false,\n\t\t\t},\n\t\t),\n\n\t\t...V.staticProperty(\n\t\t\t\"wakeUpInterval\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.UInt24,\n\t\t\t\tlabel: \"Wake Up interval\",\n\t\t\t} as const,\n\t\t\t{\n\t\t\t\tsupportsEndpoints: false,\n\t\t\t},\n\t\t),\n\n\t\t...V.staticProperty(\"wakeUpOnDemandSupported\", undefined, {\n\t\t\tinternal: true,\n\t\t\tsupportsEndpoints: false,\n\t\t\tminVersion: 3,\n\t\t}),\n\t}),\n});\n\n@API(CommandClasses[\"Wake Up\"])\nexport class WakeUpCCAPI extends CCAPI {\n\tpublic supportsCommand(cmd: WakeUpCommand): MaybeNotKnown<boolean> {\n\t\tswitch (cmd) {\n\t\t\tcase WakeUpCommand.IntervalGet:\n\t\t\t\treturn this.isSinglecast();\n\t\t\tcase WakeUpCommand.IntervalSet:\n\t\t\tcase WakeUpCommand.NoMoreInformation:\n\t\t\t\treturn true; // This is mandatory\n\t\t\tcase WakeUpCommand.IntervalCapabilitiesGet:\n\t\t\t\treturn this.version >= 2 && this.isSinglecast();\n\t\t}\n\t\treturn super.supportsCommand(cmd);\n\t}\n\n\tprotected override get [SET_VALUE](): SetValueImplementation {\n\t\treturn async function(this: WakeUpCCAPI, { property }, value) {\n\t\t\tif (property !== \"wakeUpInterval\") {\n\t\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t\t}\n\t\t\tif (typeof value !== \"number\") {\n\t\t\t\tthrowWrongValueType(\n\t\t\t\t\tthis.ccId,\n\t\t\t\t\tproperty,\n\t\t\t\t\t\"number\",\n\t\t\t\t\ttypeof value,\n\t\t\t\t);\n\t\t\t}\n\t\t\tconst result = await this.setInterval(\n\t\t\t\tvalue,\n\t\t\t\tthis.host.ownNodeId ?? 1,\n\t\t\t);\n\n\t\t\t// Verify the change after a short delay, unless the command was supervised and successful\n\t\t\tif (this.isSinglecast() && !supervisedCommandSucceeded(result)) {\n\t\t\t\tthis.schedulePoll({ property }, value, { transition: \"fast\" });\n\t\t\t}\n\n\t\t\treturn result;\n\t\t};\n\t}\n\n\tprotected get [POLL_VALUE](): PollValueImplementation {\n\t\treturn async function(this: WakeUpCCAPI, { property }) {\n\t\t\tswitch (property) {\n\t\t\t\tcase \"wakeUpInterval\":\n\t\t\t\t\treturn (await this.getInterval())?.[property];\n\t\t\t\tdefault:\n\t\t\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t\t}\n\t\t};\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\tpublic async getInterval() {\n\t\tthis.assertSupportsCommand(WakeUpCommand, WakeUpCommand.IntervalGet);\n\n\t\tconst cc = new WakeUpCCIntervalGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tWakeUpCCIntervalReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\"wakeUpInterval\", \"controllerNodeId\"]);\n\t\t}\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\tpublic async getIntervalCapabilities() {\n\t\tthis.assertSupportsCommand(\n\t\t\tWakeUpCommand,\n\t\t\tWakeUpCommand.IntervalCapabilitiesGet,\n\t\t);\n\n\t\tconst cc = new WakeUpCCIntervalCapabilitiesGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tWakeUpCCIntervalCapabilitiesReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\n\t\t\t\t\"defaultWakeUpInterval\",\n\t\t\t\t\"minWakeUpInterval\",\n\t\t\t\t\"maxWakeUpInterval\",\n\t\t\t\t\"wakeUpIntervalSteps\",\n\t\t\t\t\"wakeUpOnDemandSupported\",\n\t\t\t]);\n\t\t}\n\t}\n\n\t@validateArgs()\n\tpublic async setInterval(\n\t\twakeUpInterval: number,\n\t\tcontrollerNodeId: number,\n\t): Promise<SupervisionResult | undefined> {\n\t\tthis.assertSupportsCommand(WakeUpCommand, WakeUpCommand.IntervalSet);\n\n\t\tconst cc = new WakeUpCCIntervalSet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\twakeUpInterval,\n\t\t\tcontrollerNodeId,\n\t\t});\n\t\treturn this.host.sendCommand(cc, this.commandOptions);\n\t}\n\n\tpublic async sendNoMoreInformation(): Promise<void> {\n\t\tthis.assertSupportsCommand(\n\t\t\tWakeUpCommand,\n\t\t\tWakeUpCommand.NoMoreInformation,\n\t\t);\n\n\t\tconst cc = new WakeUpCCNoMoreInformation({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tawait this.host.sendCommand(cc, {\n\t\t\t...this.commandOptions,\n\t\t\t// This command must be sent as part of the wake up queue\n\t\t\tpriority: MessagePriority.WakeUp,\n\t\t\t// Don't try to resend this - if we get no response, the node is most likely asleep\n\t\t\tmaxSendAttempts: 1,\n\t\t\t// Also we don't want to wait for an ACK because this can lock up the network for seconds\n\t\t\t// if the target node is asleep and doesn't respond to the command\n\t\t\ttransmitOptions: TransmitOptions.DEFAULT_NOACK,\n\t\t});\n\t}\n}\n\n@commandClass(CommandClasses[\"Wake Up\"])\n@implementedVersion(3)\n@ccValues(WakeUpCCValues)\nexport class WakeUpCC extends CommandClass {\n\tdeclare ccCommand: WakeUpCommand;\n\n\tpublic async interview(\n\t\tctx: InterviewContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Wake Up\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({\n\t\t\tpriority: MessagePriority.NodeQuery,\n\t\t});\n\n\t\tctx.logNode(node.id, {\n\t\t\tendpoint: this.endpointIndex,\n\t\t\tmessage: `Interviewing ${this.ccName}...`,\n\t\t\tdirection: \"none\",\n\t\t});\n\n\t\tif (node.id === ctx.ownNodeId) {\n\t\t\tctx.logNode(\n\t\t\t\tnode.id,\n\t\t\t\t`skipping wakeup configuration for the controller`,\n\t\t\t);\n\t\t} else if (node.isFrequentListening) {\n\t\t\tctx.logNode(\n\t\t\t\tnode.id,\n\t\t\t\t`skipping wakeup configuration for frequent listening device`,\n\t\t\t);\n\t\t} else {\n\t\t\tlet desiredInterval: number;\n\t\t\tlet currentControllerNodeId: number;\n\t\t\tlet minInterval: number | undefined;\n\t\t\tlet maxInterval: number | undefined;\n\n\t\t\t// Retrieve the allowed wake up intervals and wake on demand support if possible\n\t\t\tif (api.version >= 2) {\n\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\t\tmessage:\n\t\t\t\t\t\t\"retrieving wakeup capabilities from the device...\",\n\t\t\t\t\tdirection: \"outbound\",\n\t\t\t\t});\n\t\t\t\tconst wakeupCaps = await api.getIntervalCapabilities();\n\t\t\t\tif (wakeupCaps) {\n\t\t\t\t\tconst logMessage = `received wakeup capabilities:\ndefault wakeup interval: ${wakeupCaps.defaultWakeUpInterval} seconds\nminimum wakeup interval: ${wakeupCaps.minWakeUpInterval} seconds\nmaximum wakeup interval: ${wakeupCaps.maxWakeUpInterval} seconds\nwakeup interval steps: ${wakeupCaps.wakeUpIntervalSteps} seconds\nwakeup on demand supported: ${wakeupCaps.wakeUpOnDemandSupported}`;\n\t\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\t\t\tmessage: logMessage,\n\t\t\t\t\t\tdirection: \"inbound\",\n\t\t\t\t\t});\n\t\t\t\t\tminInterval = wakeupCaps.minWakeUpInterval;\n\t\t\t\t\tmaxInterval = wakeupCaps.maxWakeUpInterval;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// SDS14223 prescribes a IntervalSet followed by a check\n\t\t\t// We have no intention of changing the interval (maybe some time in the future)\n\t\t\t// So for now get the current interval and just set the controller ID\n\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: \"retrieving wakeup interval from the device...\",\n\t\t\t\tdirection: \"outbound\",\n\t\t\t});\n\t\t\tconst wakeupResp = await api.getInterval();\n\n\t\t\tif (wakeupResp) {\n\t\t\t\tconst logMessage = `received wakeup configuration:\nwakeup interval: ${wakeupResp.wakeUpInterval} seconds\ncontroller node: ${wakeupResp.controllerNodeId}`;\n\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\t\tmessage: logMessage,\n\t\t\t\t\tdirection: \"inbound\",\n\t\t\t\t});\n\n\t\t\t\tdesiredInterval = wakeupResp.wakeUpInterval;\n\t\t\t\tcurrentControllerNodeId = wakeupResp.controllerNodeId;\n\t\t\t} else {\n\t\t\t\t// Just guess, I guess\n\t\t\t\tdesiredInterval = 3600 * 6; // 6 hours\n\t\t\t\tcurrentControllerNodeId = 0; // assume not set\n\t\t\t}\n\n\t\t\tconst ownNodeId = ctx.ownNodeId;\n\t\t\t// Only change the destination if necessary\n\t\t\tif (currentControllerNodeId !== ownNodeId) {\n\t\t\t\t// Spec compliance: Limit the interval to the allowed range, but...\n\t\t\t\t// ...try and preserve a \"never wake up\" configuration (#6367)\n\t\t\t\tif (\n\t\t\t\t\tdesiredInterval !== 0\n\t\t\t\t\t&& minInterval != undefined\n\t\t\t\t\t&& maxInterval != undefined\n\t\t\t\t) {\n\t\t\t\t\tdesiredInterval = clamp(\n\t\t\t\t\t\tdesiredInterval,\n\t\t\t\t\t\tminInterval,\n\t\t\t\t\t\tmaxInterval,\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\t\tmessage: \"configuring wakeup destination node\",\n\t\t\t\t\tdirection: \"outbound\",\n\t\t\t\t});\n\t\t\t\tawait api.setInterval(desiredInterval, ownNodeId);\n\t\t\t\tthis.setValue(\n\t\t\t\t\tctx,\n\t\t\t\t\tWakeUpCCValues.controllerNodeId,\n\t\t\t\t\townNodeId,\n\t\t\t\t);\n\t\t\t\tctx.logNode(\n\t\t\t\t\tnode.id,\n\t\t\t\t\t\"wakeup destination node changed!\",\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\t// Remember that the interview is complete\n\t\tthis.setInterviewComplete(ctx, true);\n\t}\n}\n\n// @publicAPI\nexport interface WakeUpCCIntervalSetOptions {\n\twakeUpInterval: number;\n\tcontrollerNodeId: number;\n}\n\n@CCCommand(WakeUpCommand.IntervalSet)\n@useSupervision()\nexport class WakeUpCCIntervalSet extends WakeUpCC {\n\tpublic constructor(\n\t\toptions: WithAddress<WakeUpCCIntervalSetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.wakeUpInterval = options.wakeUpInterval;\n\t\tthis.controllerNodeId = options.controllerNodeId;\n\t}\n\n\tpublic static from(raw: CCRaw, ctx: CCParsingContext): WakeUpCCIntervalSet {\n\t\tvalidatePayload(raw.payload.length >= 4);\n\t\tconst wakeUpInterval = raw.payload.readUIntBE(0, 3);\n\t\tconst controllerNodeId = raw.payload[3];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\twakeUpInterval,\n\t\t\tcontrollerNodeId,\n\t\t});\n\t}\n\n\tpublic wakeUpInterval: number;\n\tpublic controllerNodeId: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Bytes {\n\t\tthis.payload = Bytes.from([\n\t\t\t0,\n\t\t\t0,\n\t\t\t0, // placeholder\n\t\t\tthis.controllerNodeId,\n\t\t]);\n\t\tthis.payload.writeUIntBE(this.wakeUpInterval, 0, 3);\n\t\t// eslint-disable-next-line @typescript-eslint/no-deprecated\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"wake-up interval\": `${this.wakeUpInterval} seconds`,\n\t\t\t\t\"controller node id\": this.controllerNodeId,\n\t\t\t},\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface WakeUpCCIntervalReportOptions {\n\twakeUpInterval: number;\n\tcontrollerNodeId: number;\n}\n\n@CCCommand(WakeUpCommand.IntervalReport)\n@ccValueProperty(\"wakeUpInterval\", WakeUpCCValues.wakeUpInterval)\n@ccValueProperty(\"controllerNodeId\", WakeUpCCValues.controllerNodeId)\nexport class WakeUpCCIntervalReport extends WakeUpCC {\n\tpublic constructor(\n\t\toptions: WithAddress<WakeUpCCIntervalReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.wakeUpInterval = options.wakeUpInterval;\n\t\tthis.controllerNodeId = options.controllerNodeId;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): WakeUpCCIntervalReport {\n\t\tvalidatePayload(raw.payload.length >= 4);\n\t\tconst wakeUpInterval = raw.payload.readUIntBE(0, 3);\n\t\tconst controllerNodeId = raw.payload[3];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\twakeUpInterval,\n\t\t\tcontrollerNodeId,\n\t\t});\n\t}\n\n\tpublic readonly wakeUpInterval: number;\n\n\tpublic readonly controllerNodeId: number;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"wake-up interval\": `${this.wakeUpInterval} seconds`,\n\t\t\t\t\"controller node id\": this.controllerNodeId,\n\t\t\t},\n\t\t};\n\t}\n}\n\n@CCCommand(WakeUpCommand.IntervalGet)\n@expectedCCResponse(WakeUpCCIntervalReport)\nexport class WakeUpCCIntervalGet extends WakeUpCC {}\n\n@CCCommand(WakeUpCommand.WakeUpNotification)\nexport class WakeUpCCWakeUpNotification extends WakeUpCC {}\n\n@CCCommand(WakeUpCommand.NoMoreInformation)\nexport class WakeUpCCNoMoreInformation extends WakeUpCC {}\n\n// @publicAPI\nexport interface WakeUpCCIntervalCapabilitiesReportOptions {\n\tminWakeUpInterval: number;\n\tmaxWakeUpInterval: number;\n\tdefaultWakeUpInterval: number;\n\twakeUpIntervalSteps: number;\n\twakeUpOnDemandSupported: boolean;\n}\n\n@CCCommand(WakeUpCommand.IntervalCapabilitiesReport)\n@ccValueProperty(\n\t\"wakeUpOnDemandSupported\",\n\tWakeUpCCValues.wakeUpOnDemandSupported,\n)\nexport class WakeUpCCIntervalCapabilitiesReport extends WakeUpCC {\n\tpublic constructor(\n\t\toptions: WithAddress<WakeUpCCIntervalCapabilitiesReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.minWakeUpInterval = options.minWakeUpInterval;\n\t\tthis.maxWakeUpInterval = options.maxWakeUpInterval;\n\t\tthis.defaultWakeUpInterval = options.defaultWakeUpInterval;\n\t\tthis.wakeUpIntervalSteps = options.wakeUpIntervalSteps;\n\t\tthis.wakeUpOnDemandSupported = options.wakeUpOnDemandSupported;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): WakeUpCCIntervalCapabilitiesReport {\n\t\tvalidatePayload(raw.payload.length >= 12);\n\t\tconst minWakeUpInterval = raw.payload.readUIntBE(0, 3);\n\t\tconst maxWakeUpInterval = raw.payload.readUIntBE(3, 3);\n\t\tconst defaultWakeUpInterval = raw.payload.readUIntBE(6, 3);\n\t\tconst wakeUpIntervalSteps = raw.payload.readUIntBE(9, 3);\n\t\tlet wakeUpOnDemandSupported = false;\n\t\tif (raw.payload.length >= 13) {\n\t\t\t// V3+\n\t\t\twakeUpOnDemandSupported = !!(raw.payload[12] & 0b1);\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tminWakeUpInterval,\n\t\t\tmaxWakeUpInterval,\n\t\t\tdefaultWakeUpInterval,\n\t\t\twakeUpIntervalSteps,\n\t\t\twakeUpOnDemandSupported,\n\t\t});\n\t}\n\n\tpublic persistValues(ctx: PersistValuesContext): boolean {\n\t\tif (!super.persistValues(ctx)) return false;\n\t\tconst valueDB = this.getValueDB(ctx);\n\n\t\t// Store the received information as metadata for the wake up interval\n\t\tvalueDB.setMetadata(\n\t\t\t{\n\t\t\t\tcommandClass: this.ccId,\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tproperty: \"wakeUpInterval\",\n\t\t\t},\n\t\t\t{\n\t\t\t\t...ValueMetadata.WriteOnlyUInt24,\n\t\t\t\tmin: this.minWakeUpInterval,\n\t\t\t\tmax: this.maxWakeUpInterval,\n\t\t\t\tsteps: this.wakeUpIntervalSteps,\n\t\t\t\tdefault: this.defaultWakeUpInterval,\n\t\t\t},\n\t\t);\n\n\t\t// Store wakeUpOnDemandSupported in valueDB\n\n\t\treturn true;\n\t}\n\n\tpublic readonly minWakeUpInterval: number;\n\tpublic readonly maxWakeUpInterval: number;\n\tpublic readonly defaultWakeUpInterval: number;\n\tpublic readonly wakeUpIntervalSteps: number;\n\n\tpublic readonly wakeUpOnDemandSupported: boolean;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"default interval\": `${this.defaultWakeUpInterval} seconds`,\n\t\t\t\t\"minimum interval\": `${this.minWakeUpInterval} seconds`,\n\t\t\t\t\"maximum interval\": `${this.maxWakeUpInterval} seconds`,\n\t\t\t\t\"interval steps\": `${this.wakeUpIntervalSteps} seconds`,\n\t\t\t\t\"wake up on demand supported\":\n\t\t\t\t\t`${this.wakeUpOnDemandSupported}`,\n\t\t\t},\n\t\t};\n\t}\n}\n\n@CCCommand(WakeUpCommand.IntervalCapabilitiesGet)\n@expectedCCResponse(WakeUpCCIntervalCapabilitiesReport)\nexport class WakeUpCCIntervalCapabilitiesGet extends WakeUpCC {}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
4
|
+
"sourcesContent": ["import { type CCEncodingContext, type CCParsingContext } from \"@zwave-js/cc\";\nimport {\n\tCommandClasses,\n\ttype GetValueDB,\n\ttype MaybeNotKnown,\n\ttype MessageOrCCLogEntry,\n\tMessagePriority,\n\ttype SupervisionResult,\n\tTransmitOptions,\n\tValueMetadata,\n\ttype WithAddress,\n\tsupervisedCommandSucceeded,\n\tvalidatePayload,\n} from \"@zwave-js/core/safe\";\nimport { Bytes } from \"@zwave-js/shared/safe\";\nimport { pick } from \"@zwave-js/shared/safe\";\nimport { validateArgs } from \"@zwave-js/transformers\";\nimport { clamp } from \"alcalzone-shared/math\";\nimport {\n\tCCAPI,\n\tPOLL_VALUE,\n\ttype PollValueImplementation,\n\tSET_VALUE,\n\ttype SetValueImplementation,\n\tthrowUnsupportedProperty,\n\tthrowWrongValueType,\n} from \"../lib/API.js\";\nimport {\n\ttype CCRaw,\n\tCommandClass,\n\ttype InterviewContext,\n\ttype PersistValuesContext,\n} from \"../lib/CommandClass.js\";\nimport {\n\tAPI,\n\tCCCommand,\n\tccValueProperty,\n\tccValues,\n\tcommandClass,\n\texpectedCCResponse,\n\timplementedVersion,\n\tuseSupervision,\n} from \"../lib/CommandClassDecorators.js\";\nimport { V } from \"../lib/Values.js\";\nimport { WakeUpCommand } from \"../lib/_Types.js\";\n\nexport const WakeUpCCValues = V.defineCCValues(CommandClasses[\"Wake Up\"], {\n\t...V.staticProperty(\n\t\t\"controllerNodeId\",\n\t\t{\n\t\t\t...ValueMetadata.ReadOnly,\n\t\t\tlabel: \"Node ID of the controller\",\n\t\t} as const,\n\t\t{\n\t\t\tsupportsEndpoints: false,\n\t\t},\n\t),\n\t...V.staticProperty(\n\t\t\"wakeUpInterval\",\n\t\t{\n\t\t\t...ValueMetadata.UInt24,\n\t\t\tlabel: \"Wake Up interval\",\n\t\t} as const,\n\t\t{\n\t\t\tsupportsEndpoints: false,\n\t\t},\n\t),\n\t...V.staticProperty(\"wakeUpOnDemandSupported\", undefined, {\n\t\tinternal: true,\n\t\tsupportsEndpoints: false,\n\t\tminVersion: 3,\n\t}),\n});\n\n@API(CommandClasses[\"Wake Up\"])\nexport class WakeUpCCAPI extends CCAPI {\n\tpublic supportsCommand(cmd: WakeUpCommand): MaybeNotKnown<boolean> {\n\t\tswitch (cmd) {\n\t\t\tcase WakeUpCommand.IntervalGet:\n\t\t\t\treturn this.isSinglecast();\n\t\t\tcase WakeUpCommand.IntervalSet:\n\t\t\tcase WakeUpCommand.NoMoreInformation:\n\t\t\t\treturn true; // This is mandatory\n\t\t\tcase WakeUpCommand.IntervalCapabilitiesGet:\n\t\t\t\treturn this.version >= 2 && this.isSinglecast();\n\t\t}\n\t\treturn super.supportsCommand(cmd);\n\t}\n\n\tprotected override get [SET_VALUE](): SetValueImplementation {\n\t\treturn async function(this: WakeUpCCAPI, { property }, value) {\n\t\t\tif (property !== \"wakeUpInterval\") {\n\t\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t\t}\n\t\t\tif (typeof value !== \"number\") {\n\t\t\t\tthrowWrongValueType(\n\t\t\t\t\tthis.ccId,\n\t\t\t\t\tproperty,\n\t\t\t\t\t\"number\",\n\t\t\t\t\ttypeof value,\n\t\t\t\t);\n\t\t\t}\n\t\t\tconst result = await this.setInterval(\n\t\t\t\tvalue,\n\t\t\t\tthis.host.ownNodeId ?? 1,\n\t\t\t);\n\n\t\t\t// Verify the change after a short delay, unless the command was supervised and successful\n\t\t\tif (this.isSinglecast() && !supervisedCommandSucceeded(result)) {\n\t\t\t\tthis.schedulePoll({ property }, value, { transition: \"fast\" });\n\t\t\t}\n\n\t\t\treturn result;\n\t\t};\n\t}\n\n\tprotected get [POLL_VALUE](): PollValueImplementation {\n\t\treturn async function(this: WakeUpCCAPI, { property }) {\n\t\t\tswitch (property) {\n\t\t\t\tcase \"wakeUpInterval\":\n\t\t\t\t\treturn (await this.getInterval())?.[property];\n\t\t\t\tdefault:\n\t\t\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t\t}\n\t\t};\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\tpublic async getInterval() {\n\t\tthis.assertSupportsCommand(WakeUpCommand, WakeUpCommand.IntervalGet);\n\n\t\tconst cc = new WakeUpCCIntervalGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tWakeUpCCIntervalReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\"wakeUpInterval\", \"controllerNodeId\"]);\n\t\t}\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\tpublic async getIntervalCapabilities() {\n\t\tthis.assertSupportsCommand(\n\t\t\tWakeUpCommand,\n\t\t\tWakeUpCommand.IntervalCapabilitiesGet,\n\t\t);\n\n\t\tconst cc = new WakeUpCCIntervalCapabilitiesGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tWakeUpCCIntervalCapabilitiesReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\n\t\t\t\t\"defaultWakeUpInterval\",\n\t\t\t\t\"minWakeUpInterval\",\n\t\t\t\t\"maxWakeUpInterval\",\n\t\t\t\t\"wakeUpIntervalSteps\",\n\t\t\t\t\"wakeUpOnDemandSupported\",\n\t\t\t]);\n\t\t}\n\t}\n\n\t@validateArgs()\n\tpublic async setInterval(\n\t\twakeUpInterval: number,\n\t\tcontrollerNodeId: number,\n\t): Promise<SupervisionResult | undefined> {\n\t\tthis.assertSupportsCommand(WakeUpCommand, WakeUpCommand.IntervalSet);\n\n\t\tconst cc = new WakeUpCCIntervalSet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\twakeUpInterval,\n\t\t\tcontrollerNodeId,\n\t\t});\n\t\treturn this.host.sendCommand(cc, this.commandOptions);\n\t}\n\n\tpublic async sendNoMoreInformation(): Promise<void> {\n\t\tthis.assertSupportsCommand(\n\t\t\tWakeUpCommand,\n\t\t\tWakeUpCommand.NoMoreInformation,\n\t\t);\n\n\t\tconst cc = new WakeUpCCNoMoreInformation({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tawait this.host.sendCommand(cc, {\n\t\t\t...this.commandOptions,\n\t\t\t// This command must be sent as part of the wake up queue\n\t\t\tpriority: MessagePriority.WakeUp,\n\t\t\t// Don't try to resend this - if we get no response, the node is most likely asleep\n\t\t\tmaxSendAttempts: 1,\n\t\t\t// Also we don't want to wait for an ACK because this can lock up the network for seconds\n\t\t\t// if the target node is asleep and doesn't respond to the command\n\t\t\ttransmitOptions: TransmitOptions.DEFAULT_NOACK,\n\t\t});\n\t}\n}\n\n@commandClass(CommandClasses[\"Wake Up\"])\n@implementedVersion(3)\n@ccValues(WakeUpCCValues)\nexport class WakeUpCC extends CommandClass {\n\tdeclare ccCommand: WakeUpCommand;\n\n\tpublic async interview(\n\t\tctx: InterviewContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Wake Up\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({\n\t\t\tpriority: MessagePriority.NodeQuery,\n\t\t});\n\n\t\tctx.logNode(node.id, {\n\t\t\tendpoint: this.endpointIndex,\n\t\t\tmessage: `Interviewing ${this.ccName}...`,\n\t\t\tdirection: \"none\",\n\t\t});\n\n\t\tif (node.id === ctx.ownNodeId) {\n\t\t\tctx.logNode(\n\t\t\t\tnode.id,\n\t\t\t\t`skipping wakeup configuration for the controller`,\n\t\t\t);\n\t\t} else if (node.isFrequentListening) {\n\t\t\tctx.logNode(\n\t\t\t\tnode.id,\n\t\t\t\t`skipping wakeup configuration for frequent listening device`,\n\t\t\t);\n\t\t} else {\n\t\t\tlet desiredInterval: number;\n\t\t\tlet currentControllerNodeId: number;\n\t\t\tlet minInterval: number | undefined;\n\t\t\tlet maxInterval: number | undefined;\n\n\t\t\t// Retrieve the allowed wake up intervals and wake on demand support if possible\n\t\t\tif (api.version >= 2) {\n\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\t\tmessage:\n\t\t\t\t\t\t\"retrieving wakeup capabilities from the device...\",\n\t\t\t\t\tdirection: \"outbound\",\n\t\t\t\t});\n\t\t\t\tconst wakeupCaps = await api.getIntervalCapabilities();\n\t\t\t\tif (wakeupCaps) {\n\t\t\t\t\tconst logMessage = `received wakeup capabilities:\ndefault wakeup interval: ${wakeupCaps.defaultWakeUpInterval} seconds\nminimum wakeup interval: ${wakeupCaps.minWakeUpInterval} seconds\nmaximum wakeup interval: ${wakeupCaps.maxWakeUpInterval} seconds\nwakeup interval steps: ${wakeupCaps.wakeUpIntervalSteps} seconds\nwakeup on demand supported: ${wakeupCaps.wakeUpOnDemandSupported}`;\n\t\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\t\t\tmessage: logMessage,\n\t\t\t\t\t\tdirection: \"inbound\",\n\t\t\t\t\t});\n\t\t\t\t\tminInterval = wakeupCaps.minWakeUpInterval;\n\t\t\t\t\tmaxInterval = wakeupCaps.maxWakeUpInterval;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// SDS14223 prescribes a IntervalSet followed by a check\n\t\t\t// We have no intention of changing the interval (maybe some time in the future)\n\t\t\t// So for now get the current interval and just set the controller ID\n\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: \"retrieving wakeup interval from the device...\",\n\t\t\t\tdirection: \"outbound\",\n\t\t\t});\n\t\t\tconst wakeupResp = await api.getInterval();\n\n\t\t\tif (wakeupResp) {\n\t\t\t\tconst logMessage = `received wakeup configuration:\nwakeup interval: ${wakeupResp.wakeUpInterval} seconds\ncontroller node: ${wakeupResp.controllerNodeId}`;\n\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\t\tmessage: logMessage,\n\t\t\t\t\tdirection: \"inbound\",\n\t\t\t\t});\n\n\t\t\t\tdesiredInterval = wakeupResp.wakeUpInterval;\n\t\t\t\tcurrentControllerNodeId = wakeupResp.controllerNodeId;\n\t\t\t} else {\n\t\t\t\t// Just guess, I guess\n\t\t\t\tdesiredInterval = 3600 * 6; // 6 hours\n\t\t\t\tcurrentControllerNodeId = 0; // assume not set\n\t\t\t}\n\n\t\t\tconst ownNodeId = ctx.ownNodeId;\n\t\t\t// Only change the destination if necessary\n\t\t\tif (currentControllerNodeId !== ownNodeId) {\n\t\t\t\t// Spec compliance: Limit the interval to the allowed range, but...\n\t\t\t\t// ...try and preserve a \"never wake up\" configuration (#6367)\n\t\t\t\tif (\n\t\t\t\t\tdesiredInterval !== 0\n\t\t\t\t\t&& minInterval != undefined\n\t\t\t\t\t&& maxInterval != undefined\n\t\t\t\t) {\n\t\t\t\t\tdesiredInterval = clamp(\n\t\t\t\t\t\tdesiredInterval,\n\t\t\t\t\t\tminInterval,\n\t\t\t\t\t\tmaxInterval,\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\t\tmessage: \"configuring wakeup destination node\",\n\t\t\t\t\tdirection: \"outbound\",\n\t\t\t\t});\n\t\t\t\tawait api.setInterval(desiredInterval, ownNodeId);\n\t\t\t\tthis.setValue(\n\t\t\t\t\tctx,\n\t\t\t\t\tWakeUpCCValues.controllerNodeId,\n\t\t\t\t\townNodeId,\n\t\t\t\t);\n\t\t\t\tctx.logNode(\n\t\t\t\t\tnode.id,\n\t\t\t\t\t\"wakeup destination node changed!\",\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\t// Remember that the interview is complete\n\t\tthis.setInterviewComplete(ctx, true);\n\t}\n}\n\n// @publicAPI\nexport interface WakeUpCCIntervalSetOptions {\n\twakeUpInterval: number;\n\tcontrollerNodeId: number;\n}\n\n@CCCommand(WakeUpCommand.IntervalSet)\n@useSupervision()\nexport class WakeUpCCIntervalSet extends WakeUpCC {\n\tpublic constructor(\n\t\toptions: WithAddress<WakeUpCCIntervalSetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.wakeUpInterval = options.wakeUpInterval;\n\t\tthis.controllerNodeId = options.controllerNodeId;\n\t}\n\n\tpublic static from(raw: CCRaw, ctx: CCParsingContext): WakeUpCCIntervalSet {\n\t\tvalidatePayload(raw.payload.length >= 4);\n\t\tconst wakeUpInterval = raw.payload.readUIntBE(0, 3);\n\t\tconst controllerNodeId = raw.payload[3];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\twakeUpInterval,\n\t\t\tcontrollerNodeId,\n\t\t});\n\t}\n\n\tpublic wakeUpInterval: number;\n\tpublic controllerNodeId: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\t0,\n\t\t\t0,\n\t\t\t0, // placeholder\n\t\t\tthis.controllerNodeId,\n\t\t]);\n\t\tthis.payload.writeUIntBE(this.wakeUpInterval, 0, 3);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"wake-up interval\": `${this.wakeUpInterval} seconds`,\n\t\t\t\t\"controller node id\": this.controllerNodeId,\n\t\t\t},\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface WakeUpCCIntervalReportOptions {\n\twakeUpInterval: number;\n\tcontrollerNodeId: number;\n}\n\n@CCCommand(WakeUpCommand.IntervalReport)\n@ccValueProperty(\"wakeUpInterval\", WakeUpCCValues.wakeUpInterval)\n@ccValueProperty(\"controllerNodeId\", WakeUpCCValues.controllerNodeId)\nexport class WakeUpCCIntervalReport extends WakeUpCC {\n\tpublic constructor(\n\t\toptions: WithAddress<WakeUpCCIntervalReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.wakeUpInterval = options.wakeUpInterval;\n\t\tthis.controllerNodeId = options.controllerNodeId;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): WakeUpCCIntervalReport {\n\t\tvalidatePayload(raw.payload.length >= 4);\n\t\tconst wakeUpInterval = raw.payload.readUIntBE(0, 3);\n\t\tconst controllerNodeId = raw.payload[3];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\twakeUpInterval,\n\t\t\tcontrollerNodeId,\n\t\t});\n\t}\n\n\tpublic readonly wakeUpInterval: number;\n\n\tpublic readonly controllerNodeId: number;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"wake-up interval\": `${this.wakeUpInterval} seconds`,\n\t\t\t\t\"controller node id\": this.controllerNodeId,\n\t\t\t},\n\t\t};\n\t}\n}\n\n@CCCommand(WakeUpCommand.IntervalGet)\n@expectedCCResponse(WakeUpCCIntervalReport)\nexport class WakeUpCCIntervalGet extends WakeUpCC {}\n\n@CCCommand(WakeUpCommand.WakeUpNotification)\nexport class WakeUpCCWakeUpNotification extends WakeUpCC {}\n\n@CCCommand(WakeUpCommand.NoMoreInformation)\nexport class WakeUpCCNoMoreInformation extends WakeUpCC {}\n\n// @publicAPI\nexport interface WakeUpCCIntervalCapabilitiesReportOptions {\n\tminWakeUpInterval: number;\n\tmaxWakeUpInterval: number;\n\tdefaultWakeUpInterval: number;\n\twakeUpIntervalSteps: number;\n\twakeUpOnDemandSupported: boolean;\n}\n\n@CCCommand(WakeUpCommand.IntervalCapabilitiesReport)\n@ccValueProperty(\n\t\"wakeUpOnDemandSupported\",\n\tWakeUpCCValues.wakeUpOnDemandSupported,\n)\nexport class WakeUpCCIntervalCapabilitiesReport extends WakeUpCC {\n\tpublic constructor(\n\t\toptions: WithAddress<WakeUpCCIntervalCapabilitiesReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.minWakeUpInterval = options.minWakeUpInterval;\n\t\tthis.maxWakeUpInterval = options.maxWakeUpInterval;\n\t\tthis.defaultWakeUpInterval = options.defaultWakeUpInterval;\n\t\tthis.wakeUpIntervalSteps = options.wakeUpIntervalSteps;\n\t\tthis.wakeUpOnDemandSupported = options.wakeUpOnDemandSupported;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): WakeUpCCIntervalCapabilitiesReport {\n\t\tvalidatePayload(raw.payload.length >= 12);\n\t\tconst minWakeUpInterval = raw.payload.readUIntBE(0, 3);\n\t\tconst maxWakeUpInterval = raw.payload.readUIntBE(3, 3);\n\t\tconst defaultWakeUpInterval = raw.payload.readUIntBE(6, 3);\n\t\tconst wakeUpIntervalSteps = raw.payload.readUIntBE(9, 3);\n\t\tlet wakeUpOnDemandSupported = false;\n\t\tif (raw.payload.length >= 13) {\n\t\t\t// V3+\n\t\t\twakeUpOnDemandSupported = !!(raw.payload[12] & 0b1);\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tminWakeUpInterval,\n\t\t\tmaxWakeUpInterval,\n\t\t\tdefaultWakeUpInterval,\n\t\t\twakeUpIntervalSteps,\n\t\t\twakeUpOnDemandSupported,\n\t\t});\n\t}\n\n\tpublic persistValues(ctx: PersistValuesContext): boolean {\n\t\tif (!super.persistValues(ctx)) return false;\n\t\tconst valueDB = this.getValueDB(ctx);\n\n\t\t// Store the received information as metadata for the wake up interval\n\t\tvalueDB.setMetadata(\n\t\t\t{\n\t\t\t\tcommandClass: this.ccId,\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tproperty: \"wakeUpInterval\",\n\t\t\t},\n\t\t\t{\n\t\t\t\t...ValueMetadata.WriteOnlyUInt24,\n\t\t\t\tmin: this.minWakeUpInterval,\n\t\t\t\tmax: this.maxWakeUpInterval,\n\t\t\t\tsteps: this.wakeUpIntervalSteps,\n\t\t\t\tdefault: this.defaultWakeUpInterval,\n\t\t\t},\n\t\t);\n\n\t\t// Store wakeUpOnDemandSupported in valueDB\n\n\t\treturn true;\n\t}\n\n\tpublic readonly minWakeUpInterval: number;\n\tpublic readonly maxWakeUpInterval: number;\n\tpublic readonly defaultWakeUpInterval: number;\n\tpublic readonly wakeUpIntervalSteps: number;\n\n\tpublic readonly wakeUpOnDemandSupported: boolean;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"default interval\": `${this.defaultWakeUpInterval} seconds`,\n\t\t\t\t\"minimum interval\": `${this.minWakeUpInterval} seconds`,\n\t\t\t\t\"maximum interval\": `${this.maxWakeUpInterval} seconds`,\n\t\t\t\t\"interval steps\": `${this.wakeUpIntervalSteps} seconds`,\n\t\t\t\t\"wake up on demand supported\":\n\t\t\t\t\t`${this.wakeUpOnDemandSupported}`,\n\t\t\t},\n\t\t};\n\t}\n}\n\n@CCCommand(WakeUpCommand.IntervalCapabilitiesGet)\n@expectedCCResponse(WakeUpCCIntervalCapabilitiesReport)\nexport class WakeUpCCIntervalCapabilitiesGet extends WakeUpCC {}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["import_safe"]
|
|
7
7
|
}
|
|
@@ -1,41 +1,29 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { type CCEncodingContext, type CCParsingContext } from "@zwave-js/cc";
|
|
2
|
+
import { CommandClasses, Duration, type GetValueDB, type MessageOrCCLogEntry, type SupervisionResult, type WithAddress } from "@zwave-js/core";
|
|
2
3
|
import { type MaybeNotKnown } from "@zwave-js/core/safe";
|
|
3
|
-
import type { CCEncodingContext, CCParsingContext, GetValueDB } from "@zwave-js/host";
|
|
4
4
|
import { Bytes } from "@zwave-js/shared/safe";
|
|
5
5
|
import { CCAPI, POLL_VALUE, type PollValueImplementation, SET_VALUE, SET_VALUE_HOOKS, type SetValueImplementation, type SetValueImplementationHooksFactory } from "../lib/API.js";
|
|
6
6
|
import { type CCRaw, CommandClass, type InterviewContext } from "../lib/CommandClass.js";
|
|
7
7
|
import { type LevelChangeDirection, WindowCoveringCommand, WindowCoveringParameter } from "../lib/_Types.js";
|
|
8
8
|
export declare const WindowCoveringCCValues: Readonly<{
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
readonly
|
|
12
|
-
readonly
|
|
13
|
-
readonly states: {
|
|
14
|
-
readonly true: "Start";
|
|
15
|
-
readonly false: "Stop";
|
|
16
|
-
};
|
|
17
|
-
readonly ccSpecific: {
|
|
18
|
-
readonly parameter: WindowCoveringParameter;
|
|
19
|
-
};
|
|
20
|
-
readonly readable: false;
|
|
21
|
-
readonly type: "boolean";
|
|
22
|
-
readonly writeable: true;
|
|
23
|
-
};
|
|
24
|
-
readonly id: {
|
|
25
|
-
commandClass: (typeof CommandClasses)["Window Covering"];
|
|
26
|
-
property: "levelChangeDown";
|
|
27
|
-
propertyKey: WindowCoveringParameter;
|
|
9
|
+
supportedParameters: {
|
|
10
|
+
id: {
|
|
11
|
+
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
12
|
+
readonly property: "supportedParameters";
|
|
28
13
|
};
|
|
29
|
-
|
|
14
|
+
endpoint: (endpoint?: number) => {
|
|
30
15
|
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
31
16
|
readonly endpoint: number;
|
|
32
|
-
readonly property: "
|
|
33
|
-
readonly propertyKey: WindowCoveringParameter;
|
|
17
|
+
readonly property: "supportedParameters";
|
|
34
18
|
};
|
|
35
|
-
}) & {
|
|
36
19
|
is: (valueId: import("@zwave-js/core").ValueID) => boolean;
|
|
37
|
-
readonly
|
|
38
|
-
readonly
|
|
20
|
+
readonly meta: Readonly<{
|
|
21
|
+
readonly type: "any";
|
|
22
|
+
readonly readable: true;
|
|
23
|
+
readonly writeable: true;
|
|
24
|
+
}>;
|
|
25
|
+
options: {
|
|
26
|
+
readonly internal: true;
|
|
39
27
|
readonly minVersion: 1;
|
|
40
28
|
readonly secret: false;
|
|
41
29
|
readonly stateful: true;
|
|
@@ -43,67 +31,33 @@ export declare const WindowCoveringCCValues: Readonly<{
|
|
|
43
31
|
readonly autoCreate: true;
|
|
44
32
|
};
|
|
45
33
|
};
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
readonly
|
|
49
|
-
readonly
|
|
50
|
-
readonly
|
|
51
|
-
readonly true: "Start";
|
|
52
|
-
readonly false: "Stop";
|
|
53
|
-
};
|
|
54
|
-
readonly ccSpecific: {
|
|
55
|
-
readonly parameter: WindowCoveringParameter;
|
|
56
|
-
};
|
|
57
|
-
readonly readable: false;
|
|
58
|
-
readonly type: "boolean";
|
|
59
|
-
readonly writeable: true;
|
|
60
|
-
};
|
|
61
|
-
readonly id: {
|
|
62
|
-
commandClass: (typeof CommandClasses)["Window Covering"];
|
|
63
|
-
property: "levelChangeUp";
|
|
64
|
-
propertyKey: WindowCoveringParameter;
|
|
34
|
+
currentValue: ((parameter: WindowCoveringParameter) => {
|
|
35
|
+
id: {
|
|
36
|
+
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
37
|
+
readonly property: "currentValue";
|
|
38
|
+
readonly propertyKey: WindowCoveringParameter;
|
|
65
39
|
};
|
|
66
|
-
|
|
40
|
+
endpoint: (endpoint?: number) => {
|
|
67
41
|
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
68
42
|
readonly endpoint: number;
|
|
69
|
-
readonly property: "
|
|
43
|
+
readonly property: "currentValue";
|
|
70
44
|
readonly propertyKey: WindowCoveringParameter;
|
|
71
45
|
};
|
|
72
|
-
}) & {
|
|
73
|
-
is: (valueId: import("@zwave-js/core").ValueID) => boolean;
|
|
74
|
-
readonly options: {
|
|
75
|
-
readonly internal: false;
|
|
76
|
-
readonly minVersion: 1;
|
|
77
|
-
readonly secret: false;
|
|
78
|
-
readonly stateful: true;
|
|
79
|
-
readonly supportsEndpoints: true;
|
|
80
|
-
readonly autoCreate: true;
|
|
81
|
-
};
|
|
82
|
-
};
|
|
83
|
-
duration: ((parameter: WindowCoveringParameter) => {
|
|
84
46
|
readonly meta: {
|
|
85
|
-
readonly label: `
|
|
47
|
+
readonly label: `Current value - ${string}`;
|
|
48
|
+
readonly states: Record<number, string>;
|
|
86
49
|
readonly ccSpecific: {
|
|
87
50
|
readonly parameter: WindowCoveringParameter;
|
|
88
51
|
};
|
|
89
52
|
readonly writeable: false;
|
|
90
|
-
readonly
|
|
53
|
+
readonly max: 99;
|
|
54
|
+
readonly min: 0;
|
|
55
|
+
readonly type: "number";
|
|
91
56
|
readonly readable: true;
|
|
92
57
|
};
|
|
93
|
-
readonly id: {
|
|
94
|
-
commandClass: (typeof CommandClasses)["Window Covering"];
|
|
95
|
-
property: "duration";
|
|
96
|
-
propertyKey: WindowCoveringParameter;
|
|
97
|
-
};
|
|
98
|
-
readonly endpoint: (endpoint?: number | undefined) => {
|
|
99
|
-
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
100
|
-
readonly endpoint: number;
|
|
101
|
-
readonly property: "duration";
|
|
102
|
-
readonly propertyKey: WindowCoveringParameter;
|
|
103
|
-
};
|
|
104
58
|
}) & {
|
|
105
59
|
is: (valueId: import("@zwave-js/core").ValueID) => boolean;
|
|
106
|
-
|
|
60
|
+
options: {
|
|
107
61
|
readonly internal: false;
|
|
108
62
|
readonly minVersion: 1;
|
|
109
63
|
readonly secret: false;
|
|
@@ -113,12 +67,21 @@ export declare const WindowCoveringCCValues: Readonly<{
|
|
|
113
67
|
};
|
|
114
68
|
};
|
|
115
69
|
targetValue: ((parameter: WindowCoveringParameter) => {
|
|
70
|
+
id: {
|
|
71
|
+
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
72
|
+
readonly property: "targetValue";
|
|
73
|
+
readonly propertyKey: WindowCoveringParameter;
|
|
74
|
+
};
|
|
75
|
+
endpoint: (endpoint?: number) => {
|
|
76
|
+
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
77
|
+
readonly endpoint: number;
|
|
78
|
+
readonly property: "targetValue";
|
|
79
|
+
readonly propertyKey: WindowCoveringParameter;
|
|
80
|
+
};
|
|
116
81
|
readonly meta: {
|
|
117
82
|
readonly label: `Target value - ${string}`;
|
|
118
83
|
readonly writeable: boolean;
|
|
119
|
-
readonly states:
|
|
120
|
-
[x: number]: string;
|
|
121
|
-
};
|
|
84
|
+
readonly states: Record<number, string>;
|
|
122
85
|
readonly allowManualEntry: boolean;
|
|
123
86
|
readonly ccSpecific: {
|
|
124
87
|
readonly parameter: WindowCoveringParameter;
|
|
@@ -129,20 +92,9 @@ export declare const WindowCoveringCCValues: Readonly<{
|
|
|
129
92
|
readonly type: "number";
|
|
130
93
|
readonly readable: true;
|
|
131
94
|
};
|
|
132
|
-
readonly id: {
|
|
133
|
-
commandClass: (typeof CommandClasses)["Window Covering"];
|
|
134
|
-
property: "targetValue";
|
|
135
|
-
propertyKey: WindowCoveringParameter;
|
|
136
|
-
};
|
|
137
|
-
readonly endpoint: (endpoint?: number | undefined) => {
|
|
138
|
-
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
139
|
-
readonly endpoint: number;
|
|
140
|
-
readonly property: "targetValue";
|
|
141
|
-
readonly propertyKey: WindowCoveringParameter;
|
|
142
|
-
};
|
|
143
95
|
}) & {
|
|
144
96
|
is: (valueId: import("@zwave-js/core").ValueID) => boolean;
|
|
145
|
-
|
|
97
|
+
options: {
|
|
146
98
|
readonly internal: false;
|
|
147
99
|
readonly minVersion: 1;
|
|
148
100
|
readonly secret: false;
|
|
@@ -151,35 +103,67 @@ export declare const WindowCoveringCCValues: Readonly<{
|
|
|
151
103
|
readonly autoCreate: true;
|
|
152
104
|
};
|
|
153
105
|
};
|
|
154
|
-
|
|
106
|
+
duration: ((parameter: WindowCoveringParameter) => {
|
|
107
|
+
id: {
|
|
108
|
+
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
109
|
+
readonly property: "duration";
|
|
110
|
+
readonly propertyKey: WindowCoveringParameter;
|
|
111
|
+
};
|
|
112
|
+
endpoint: (endpoint?: number) => {
|
|
113
|
+
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
114
|
+
readonly endpoint: number;
|
|
115
|
+
readonly property: "duration";
|
|
116
|
+
readonly propertyKey: WindowCoveringParameter;
|
|
117
|
+
};
|
|
155
118
|
readonly meta: {
|
|
156
|
-
readonly label: `
|
|
157
|
-
readonly states: {
|
|
158
|
-
[x: number]: string;
|
|
159
|
-
};
|
|
119
|
+
readonly label: `Remaining duration - ${string}`;
|
|
160
120
|
readonly ccSpecific: {
|
|
161
121
|
readonly parameter: WindowCoveringParameter;
|
|
162
122
|
};
|
|
163
123
|
readonly writeable: false;
|
|
164
|
-
readonly
|
|
165
|
-
readonly min: 0;
|
|
166
|
-
readonly type: "number";
|
|
124
|
+
readonly type: "duration";
|
|
167
125
|
readonly readable: true;
|
|
168
126
|
};
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
127
|
+
}) & {
|
|
128
|
+
is: (valueId: import("@zwave-js/core").ValueID) => boolean;
|
|
129
|
+
options: {
|
|
130
|
+
readonly internal: false;
|
|
131
|
+
readonly minVersion: 1;
|
|
132
|
+
readonly secret: false;
|
|
133
|
+
readonly stateful: true;
|
|
134
|
+
readonly supportsEndpoints: true;
|
|
135
|
+
readonly autoCreate: true;
|
|
173
136
|
};
|
|
174
|
-
|
|
137
|
+
};
|
|
138
|
+
levelChangeUp: ((parameter: WindowCoveringParameter) => {
|
|
139
|
+
id: {
|
|
140
|
+
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
141
|
+
readonly property: "levelChangeUp";
|
|
142
|
+
readonly propertyKey: WindowCoveringParameter;
|
|
143
|
+
};
|
|
144
|
+
endpoint: (endpoint?: number) => {
|
|
175
145
|
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
176
146
|
readonly endpoint: number;
|
|
177
|
-
readonly property: "
|
|
147
|
+
readonly property: "levelChangeUp";
|
|
178
148
|
readonly propertyKey: WindowCoveringParameter;
|
|
179
149
|
};
|
|
150
|
+
readonly meta: {
|
|
151
|
+
readonly label: `${string} - ${string}`;
|
|
152
|
+
readonly valueChangeOptions: readonly ["transitionDuration"];
|
|
153
|
+
readonly states: {
|
|
154
|
+
readonly true: "Start";
|
|
155
|
+
readonly false: "Stop";
|
|
156
|
+
};
|
|
157
|
+
readonly ccSpecific: {
|
|
158
|
+
readonly parameter: WindowCoveringParameter;
|
|
159
|
+
};
|
|
160
|
+
readonly readable: false;
|
|
161
|
+
readonly type: "boolean";
|
|
162
|
+
readonly writeable: true;
|
|
163
|
+
};
|
|
180
164
|
}) & {
|
|
181
165
|
is: (valueId: import("@zwave-js/core").ValueID) => boolean;
|
|
182
|
-
|
|
166
|
+
options: {
|
|
183
167
|
readonly internal: false;
|
|
184
168
|
readonly minVersion: 1;
|
|
185
169
|
readonly secret: false;
|
|
@@ -188,29 +172,41 @@ export declare const WindowCoveringCCValues: Readonly<{
|
|
|
188
172
|
readonly autoCreate: true;
|
|
189
173
|
};
|
|
190
174
|
};
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
commandClass: (typeof CommandClasses)["Window Covering"];
|
|
194
|
-
property: "
|
|
175
|
+
levelChangeDown: ((parameter: WindowCoveringParameter) => {
|
|
176
|
+
id: {
|
|
177
|
+
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
178
|
+
readonly property: "levelChangeDown";
|
|
179
|
+
readonly propertyKey: WindowCoveringParameter;
|
|
195
180
|
};
|
|
196
|
-
|
|
181
|
+
endpoint: (endpoint?: number) => {
|
|
197
182
|
readonly commandClass: (typeof CommandClasses)["Window Covering"];
|
|
198
183
|
readonly endpoint: number;
|
|
199
|
-
readonly property: "
|
|
184
|
+
readonly property: "levelChangeDown";
|
|
185
|
+
readonly propertyKey: WindowCoveringParameter;
|
|
200
186
|
};
|
|
201
|
-
readonly is: (valueId: import("@zwave-js/core").ValueID) => boolean;
|
|
202
187
|
readonly meta: {
|
|
203
|
-
readonly
|
|
204
|
-
readonly
|
|
188
|
+
readonly label: `${string} - ${string}`;
|
|
189
|
+
readonly valueChangeOptions: readonly ["transitionDuration"];
|
|
190
|
+
readonly states: {
|
|
191
|
+
readonly true: "Start";
|
|
192
|
+
readonly false: "Stop";
|
|
193
|
+
};
|
|
194
|
+
readonly ccSpecific: {
|
|
195
|
+
readonly parameter: WindowCoveringParameter;
|
|
196
|
+
};
|
|
197
|
+
readonly readable: false;
|
|
198
|
+
readonly type: "boolean";
|
|
205
199
|
readonly writeable: true;
|
|
206
200
|
};
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
201
|
+
}) & {
|
|
202
|
+
is: (valueId: import("@zwave-js/core").ValueID) => boolean;
|
|
203
|
+
options: {
|
|
204
|
+
readonly internal: false;
|
|
210
205
|
readonly minVersion: 1;
|
|
206
|
+
readonly secret: false;
|
|
207
|
+
readonly stateful: true;
|
|
211
208
|
readonly supportsEndpoints: true;
|
|
212
209
|
readonly autoCreate: true;
|
|
213
|
-
readonly internal: true;
|
|
214
210
|
};
|
|
215
211
|
};
|
|
216
212
|
}>;
|
|
@@ -240,7 +236,7 @@ export declare class WindowCoveringCCSupportedReport extends WindowCoveringCC {
|
|
|
240
236
|
constructor(options: WithAddress<WindowCoveringCCSupportedReportOptions>);
|
|
241
237
|
static from(raw: CCRaw, ctx: CCParsingContext): WindowCoveringCCSupportedReport;
|
|
242
238
|
readonly supportedParameters: readonly WindowCoveringParameter[];
|
|
243
|
-
serialize(ctx: CCEncodingContext): Bytes
|
|
239
|
+
serialize(ctx: CCEncodingContext): Promise<Bytes>;
|
|
244
240
|
toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry;
|
|
245
241
|
}
|
|
246
242
|
export declare class WindowCoveringCCSupportedGet extends WindowCoveringCC {
|
|
@@ -267,7 +263,7 @@ export declare class WindowCoveringCCGet extends WindowCoveringCC {
|
|
|
267
263
|
constructor(options: WithAddress<WindowCoveringCCGetOptions>);
|
|
268
264
|
static from(raw: CCRaw, ctx: CCParsingContext): WindowCoveringCCGet;
|
|
269
265
|
parameter: WindowCoveringParameter;
|
|
270
|
-
serialize(ctx: CCEncodingContext): Bytes
|
|
266
|
+
serialize(ctx: CCEncodingContext): Promise<Bytes>;
|
|
271
267
|
toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry;
|
|
272
268
|
}
|
|
273
269
|
export interface WindowCoveringCCSetOptions {
|
|
@@ -285,7 +281,7 @@ export declare class WindowCoveringCCSet extends WindowCoveringCC {
|
|
|
285
281
|
value: number;
|
|
286
282
|
}[];
|
|
287
283
|
duration: Duration | undefined;
|
|
288
|
-
serialize(ctx: CCEncodingContext): Bytes
|
|
284
|
+
serialize(ctx: CCEncodingContext): Promise<Bytes>;
|
|
289
285
|
toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry;
|
|
290
286
|
}
|
|
291
287
|
export interface WindowCoveringCCStartLevelChangeOptions {
|
|
@@ -299,7 +295,7 @@ export declare class WindowCoveringCCStartLevelChange extends WindowCoveringCC {
|
|
|
299
295
|
parameter: WindowCoveringParameter;
|
|
300
296
|
direction: keyof typeof LevelChangeDirection;
|
|
301
297
|
duration: Duration | undefined;
|
|
302
|
-
serialize(ctx: CCEncodingContext): Bytes
|
|
298
|
+
serialize(ctx: CCEncodingContext): Promise<Bytes>;
|
|
303
299
|
toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry;
|
|
304
300
|
}
|
|
305
301
|
export interface WindowCoveringCCStopLevelChangeOptions {
|
|
@@ -309,7 +305,7 @@ export declare class WindowCoveringCCStopLevelChange extends WindowCoveringCC {
|
|
|
309
305
|
constructor(options: WithAddress<WindowCoveringCCStopLevelChangeOptions>);
|
|
310
306
|
static from(raw: CCRaw, ctx: CCParsingContext): WindowCoveringCCStopLevelChange;
|
|
311
307
|
parameter: WindowCoveringParameter;
|
|
312
|
-
serialize(ctx: CCEncodingContext): Bytes
|
|
308
|
+
serialize(ctx: CCEncodingContext): Promise<Bytes>;
|
|
313
309
|
toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry;
|
|
314
310
|
}
|
|
315
311
|
//# sourceMappingURL=WindowCoveringCC.d.ts.map
|