isy-nodejs 1.0.2-alpha.3 → 1.0.2-alpha.4
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/dist/esm/CodeGeneration/NodeClassFactory.js +76 -33
- package/dist/esm/CodeGeneration/NodeClassFactory.js.map +1 -1
- package/dist/esm/CodeGeneration/NodeFactory.js +245 -0
- package/dist/esm/CodeGeneration/NodeFactory.js.map +1 -0
- package/dist/esm/Converters.js +15 -1
- package/dist/esm/Converters.js.map +1 -1
- package/dist/esm/Definitions/Global/Drivers.js.map +1 -1
- package/dist/esm/Definitions/Global/Events.js.map +1 -1
- package/dist/esm/Devices/ISYDevice.js +0 -33
- package/dist/esm/Devices/ISYDevice.js.map +1 -1
- package/dist/esm/Devices/ISYDeviceNode.js +2 -2
- package/dist/esm/Devices/ISYDeviceNode.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js +49 -0
- package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js +54 -0
- package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js +54 -0
- package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js +46 -0
- package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/BinaryControl.js +46 -0
- package/dist/esm/Devices/Insteon/Generated/BinaryControl.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js +75 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js +78 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js +80 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js +74 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js +40 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/DoorLock.js +45 -0
- package/dist/esm/Devices/Insteon/Generated/DoorLock.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js +42 -0
- package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js +47 -0
- package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/EzrainInput.js +42 -0
- package/dist/esm/Devices/Insteon/Generated/EzrainInput.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js +49 -0
- package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js +53 -0
- package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js +93 -0
- package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js +81 -0
- package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js +49 -0
- package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/IrLincTx.js +39 -0
- package/dist/esm/Devices/Insteon/Generated/IrLincTx.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/KeypadButton.js +46 -0
- package/dist/esm/Devices/Insteon/Generated/KeypadButton.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js +78 -0
- package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js +56 -0
- package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/OnOffControl.js +39 -0
- package/dist/esm/Devices/Insteon/Generated/OnOffControl.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Pir2844.js +64 -0
- package/dist/esm/Devices/Insteon/Generated/Pir2844.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js +50 -0
- package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Pir2844c.js +64 -0
- package/dist/esm/Devices/Insteon/Generated/Pir2844c.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/RelayLamp.js +54 -0
- package/dist/esm/Devices/Insteon/Generated/RelayLamp.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js +56 -0
- package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js +58 -0
- package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js +42 -0
- package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js +44 -0
- package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js +42 -0
- package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Siren.js +66 -0
- package/dist/esm/Devices/Insteon/Generated/Siren.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/SirenAlert.js +35 -0
- package/dist/esm/Devices/Insteon/Generated/SirenAlert.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/TempLinc.js +83 -0
- package/dist/esm/Devices/Insteon/Generated/TempLinc.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Thermostat.js +83 -0
- package/dist/esm/Devices/Insteon/Generated/Thermostat.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/X10.js +49 -0
- package/dist/esm/Devices/Insteon/Generated/X10.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/index.js +39 -0
- package/dist/esm/Devices/Insteon/Generated/index.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonBaseDevice.js +3 -4
- package/dist/esm/Devices/Insteon/InsteonBaseDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonFanDevice.js +2 -2
- package/dist/esm/Devices/Insteon/InsteonFanDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonRelayDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/KeypadButton.js +11 -11
- package/dist/esm/Devices/Insteon/KeypadButton.js.map +1 -1
- package/dist/esm/Devices/Insteon/index.js +16 -29
- package/dist/esm/Devices/Insteon/index.js.map +1 -1
- package/dist/esm/Devices/Lutron/Generated/LoadShed.js +45 -0
- package/dist/esm/Devices/Lutron/Generated/LoadShed.js.map +1 -0
- package/dist/esm/Devices/NodeFactory.js +45 -8
- package/dist/esm/Devices/NodeFactory.js.map +1 -1
- package/dist/esm/Devices/Scene/index.js +2 -2
- package/dist/esm/Devices/Scene/index.js.map +1 -1
- package/dist/esm/Devices/UDI/Generated/Channel.js +42 -0
- package/dist/esm/Devices/UDI/Generated/Channel.js.map +1 -0
- package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js +54 -0
- package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js.map +1 -0
- package/dist/esm/Devices/UDI/Generated/Main.js +45 -0
- package/dist/esm/Devices/UDI/Generated/Main.js.map +1 -0
- package/dist/esm/Devices/UDI/Generated/PulseCounter.js +46 -0
- package/dist/esm/Devices/UDI/Generated/PulseCounter.js.map +1 -0
- package/dist/esm/Devices/UDI/Generated/Relay.js +45 -0
- package/dist/esm/Devices/UDI/Generated/Relay.js.map +1 -0
- package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js +38 -0
- package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js.map +1 -0
- package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js +57 -0
- package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js.map +1 -0
- package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js +65 -0
- package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js.map +1 -0
- package/dist/esm/Devices/ZWave/Generated/index.js +3 -0
- package/dist/esm/Devices/ZWave/Generated/index.js.map +1 -0
- package/dist/esm/Devices/ZWave/index.js +1 -0
- package/dist/esm/Devices/ZWave/index.js.map +1 -1
- package/dist/esm/Devices/index.js +9 -3
- package/dist/esm/Devices/index.js.map +1 -1
- package/dist/esm/ISY.js +13 -8
- package/dist/esm/ISY.js.map +1 -1
- package/dist/esm/ISYDevice.js +7 -1
- package/dist/esm/ISYDevice.js.map +1 -1
- package/dist/esm/ISYNode.js +13 -4
- package/dist/esm/ISYNode.js.map +1 -1
- package/dist/esm/ISYScene.js +13 -12
- package/dist/esm/ISYScene.js.map +1 -1
- package/dist/esm/Matter/Behaviors/BehaviorRegistry.js +13 -0
- package/dist/esm/Matter/Behaviors/BehaviorRegistry.js.map +1 -0
- package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js +3 -0
- package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js.map +1 -1
- package/dist/esm/Matter/Bridge/Server.js +65 -56
- package/dist/esm/Matter/Bridge/Server.js.map +1 -1
- package/dist/esm/Matter/Mappings/Insteon.js +28 -10
- package/dist/esm/Matter/Mappings/Insteon.js.map +1 -1
- package/dist/esm/Model/ClassDefinition.js +22 -3
- package/dist/esm/Model/ClassDefinition.js.map +1 -1
- package/dist/esm/Model/ClusterMap.js +45 -19
- package/dist/esm/Model/ClusterMap.js.map +1 -1
- package/dist/esm/Model/NodeInfo.js +1 -1
- package/dist/esm/Model/NodeInfo.js.map +1 -1
- package/dist/esm/Utils.js.map +1 -1
- package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts +6 -3
- package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts.map +1 -1
- package/dist/esm/types/CodeGeneration/NodeFactory.d.ts +75 -0
- package/dist/esm/types/CodeGeneration/NodeFactory.d.ts.map +1 -0
- package/dist/esm/types/Converters.d.ts +9 -3
- package/dist/esm/types/Converters.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Global/Drivers.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Global/Events.d.ts +2 -2
- package/dist/esm/types/Definitions/Global/Events.d.ts.map +1 -1
- package/dist/esm/types/Devices/DeviceMap.d.ts +1 -1
- package/dist/esm/types/Devices/DeviceMap.d.ts.map +1 -1
- package/dist/esm/types/Devices/EndpointFor.d.ts +7 -5
- package/dist/esm/types/Devices/EndpointFor.d.ts.map +1 -1
- package/dist/esm/types/Devices/ISYDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/ISYDeviceNode.d.ts +5 -13
- package/dist/esm/types/Devices/ISYDeviceNode.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/AlertModuleArmed.d.ts +76 -0
- package/dist/esm/types/Devices/Insteon/Generated/AlertModuleArmed.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/AlertModuleSiren.d.ts +88 -0
- package/dist/esm/types/Devices/Insteon/Generated/AlertModuleSiren.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/BallastRelayLampSwitch.d.ts +88 -0
- package/dist/esm/types/Devices/Insteon/Generated/BallastRelayLampSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/BinaryAlarm.d.ts +64 -0
- package/dist/esm/types/Devices/Insteon/Generated/BinaryAlarm.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/BinaryControl.d.ts +64 -0
- package/dist/esm/types/Devices/Insteon/Generated/BinaryControl.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLamp.d.ts +144 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLamp.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitch.d.ts +150 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitchLed.d.ts +156 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitchLed.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerMotorSwitch.d.ts +138 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerMotorSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerSwitch.d.ts +51 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/DoorLock.d.ts +64 -0
- package/dist/esm/types/Devices/Insteon/Generated/DoorLock.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Input.d.ts +52 -0
- package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Input.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Output.d.ts +70 -0
- package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Output.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/EzrainInput.d.ts +52 -0
- package/dist/esm/types/Devices/Insteon/Generated/EzrainInput.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/EzrainOutput.d.ts +76 -0
- package/dist/esm/types/Devices/Insteon/Generated/EzrainOutput.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/FanLincMotor.d.ts +88 -0
- package/dist/esm/types/Devices/Insteon/Generated/FanLincMotor.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/I3KeypadFlags.d.ts +168 -0
- package/dist/esm/types/Devices/Insteon/Generated/I3KeypadFlags.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/I3PaddleFlags.d.ts +142 -0
- package/dist/esm/types/Devices/Insteon/Generated/I3PaddleFlags.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/ImeterSolo.d.ts +71 -0
- package/dist/esm/types/Devices/Insteon/Generated/ImeterSolo.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/IrLincTx.d.ts +51 -0
- package/dist/esm/types/Devices/Insteon/Generated/IrLincTx.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/KeypadButton.d.ts +64 -0
- package/dist/esm/types/Devices/Insteon/Generated/KeypadButton.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/KeypadDimmer.d.ts +150 -0
- package/dist/esm/types/Devices/Insteon/Generated/KeypadDimmer.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts +94 -0
- package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts +44 -0
- package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844.d.ts +98 -0
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844OnOff.d.ts +76 -0
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844OnOff.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844c.d.ts +98 -0
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844c.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts +88 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts +94 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts +100 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelaySwitch.d.ts +57 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelaySwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.d.ts +63 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/RemoteLinc2.d.ts +52 -0
- package/dist/esm/types/Devices/Insteon/Generated/RemoteLinc2.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Siren.d.ts +109 -0
- package/dist/esm/types/Devices/Insteon/Generated/Siren.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/SirenAlert.d.ts +37 -0
- package/dist/esm/types/Devices/Insteon/Generated/SirenAlert.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/TempLinc.d.ts +148 -0
- package/dist/esm/types/Devices/Insteon/Generated/TempLinc.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Thermostat.d.ts +148 -0
- package/dist/esm/types/Devices/Insteon/Generated/Thermostat.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/X10.d.ts +76 -0
- package/dist/esm/types/Devices/Insteon/Generated/X10.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/index.d.ts +39 -0
- package/dist/esm/types/Devices/Insteon/Generated/index.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/InsteonBaseDevice.d.ts +4 -10
- package/dist/esm/types/Devices/Insteon/InsteonBaseDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts +22 -28
- package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonFanDevice.d.ts +3 -3
- package/dist/esm/types/Devices/Insteon/InsteonFanDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonLeakSensorDevice.d.ts +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonLeakSensorDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonRelayDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/KeypadButton.d.ts +19 -19
- package/dist/esm/types/Devices/Insteon/KeypadButton.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/index.d.ts +6 -42
- package/dist/esm/types/Devices/Insteon/index.d.ts.map +1 -1
- package/dist/esm/types/Devices/Lutron/Generated/LoadShed.d.ts +64 -0
- package/dist/esm/types/Devices/Lutron/Generated/LoadShed.d.ts.map +1 -0
- package/dist/esm/types/Devices/NodeFactory.d.ts +18 -7
- package/dist/esm/types/Devices/NodeFactory.d.ts.map +1 -1
- package/dist/esm/types/Devices/Scene/index.d.ts +2 -1
- package/dist/esm/types/Devices/Scene/index.d.ts.map +1 -1
- package/dist/esm/types/Devices/UDI/Generated/Channel.d.ts +51 -0
- package/dist/esm/types/Devices/UDI/Generated/Channel.d.ts.map +1 -0
- package/dist/esm/types/Devices/UDI/Generated/Em3MainChannel.d.ts +72 -0
- package/dist/esm/types/Devices/UDI/Generated/Em3MainChannel.d.ts.map +1 -0
- package/dist/esm/types/Devices/UDI/Generated/Main.d.ts +59 -0
- package/dist/esm/types/Devices/UDI/Generated/Main.d.ts.map +1 -0
- package/dist/esm/types/Devices/UDI/Generated/PulseCounter.d.ts +58 -0
- package/dist/esm/types/Devices/UDI/Generated/PulseCounter.d.ts.map +1 -0
- package/dist/esm/types/Devices/UDI/Generated/Relay.d.ts +64 -0
- package/dist/esm/types/Devices/UDI/Generated/Relay.d.ts.map +1 -0
- package/dist/esm/types/Devices/UDI/Generated/TemperatureSensor.d.ts +44 -0
- package/dist/esm/types/Devices/UDI/Generated/TemperatureSensor.d.ts.map +1 -0
- package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts +90 -0
- package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts +124 -0
- package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/ZWave/Generated/index.d.ts +3 -0
- package/dist/esm/types/Devices/ZWave/Generated/index.d.ts.map +1 -0
- package/dist/esm/types/Devices/ZWave/index.d.ts.map +1 -1
- package/dist/esm/types/Devices/index.d.ts +7 -21
- package/dist/esm/types/Devices/index.d.ts.map +1 -1
- package/dist/esm/types/ISY.d.ts.map +1 -1
- package/dist/esm/types/ISYDevice.d.ts +19 -28
- package/dist/esm/types/ISYDevice.d.ts.map +1 -1
- package/dist/esm/types/ISYNode.d.ts +25 -8
- package/dist/esm/types/ISYNode.d.ts.map +1 -1
- package/dist/esm/types/ISYScene.d.ts +5 -6
- package/dist/esm/types/ISYScene.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/BehaviorRegistry.d.ts +11 -0
- package/dist/esm/types/Matter/Behaviors/BehaviorRegistry.d.ts.map +1 -0
- package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts +1 -4
- package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts +5 -4
- package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts.map +1 -1
- package/dist/esm/types/Matter/Bridge/Server.d.ts +1 -1
- package/dist/esm/types/Matter/Bridge/Server.d.ts.map +1 -1
- package/dist/esm/types/Model/ClassDefinition.d.ts +6 -2
- package/dist/esm/types/Model/ClassDefinition.d.ts.map +1 -1
- package/dist/esm/types/Model/ClusterMap.d.ts +12 -21
- package/dist/esm/types/Model/ClusterMap.d.ts.map +1 -1
- package/dist/esm/types/Model/EnumDefinition.d.ts +1 -1
- package/dist/esm/types/Utils.d.ts +18 -0
- package/dist/esm/types/Utils.d.ts.map +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/CodeGeneration/NodeClassFactory.ts +144 -39
- package/src/CodeGeneration/NodeFactory.ts +341 -0
- package/src/Converters.ts +23 -3
- package/src/Definitions/Global/Drivers.ts +1 -0
- package/src/Definitions/Global/Events.ts +3 -3
- package/src/Devices/Brultech/Generated/Channel.ts +8 -6
- package/src/Devices/Brultech/Generated/Main.ts +9 -9
- package/src/Devices/DeviceMap.ts +1 -1
- package/src/Devices/ISYDevice.ts +8 -57
- package/src/Devices/ISYDeviceNode.ts +143 -166
- package/src/Devices/Insteon/Generated/AlertModuleArmed.ts +13 -21
- package/src/Devices/Insteon/Generated/AlertModuleSiren.ts +18 -29
- package/src/Devices/Insteon/Generated/BallastRelayLampSwitch.ts +18 -29
- package/src/Devices/Insteon/Generated/BinaryAlarm.ts +14 -17
- package/src/Devices/Insteon/Generated/BinaryControl.ts +14 -17
- package/src/Devices/Insteon/Generated/DimmerLamp.ts +25 -51
- package/src/Devices/Insteon/Generated/DimmerLampSwitch.ts +36 -64
- package/src/Devices/Insteon/Generated/DimmerLampSwitchLed.ts +31 -60
- package/src/Devices/Insteon/Generated/DimmerMotorSwitch.ts +24 -47
- package/src/Devices/Insteon/Generated/DimmerSwitch.ts +13 -14
- package/src/Devices/Insteon/Generated/DoorLock.ts +11 -15
- package/src/Devices/Insteon/Generated/Ezio2x4Input.ts +12 -11
- package/src/Devices/Insteon/Generated/Ezio2x4Output.ts +12 -18
- package/src/Devices/Insteon/Generated/EzrainInput.ts +12 -11
- package/src/Devices/Insteon/Generated/EzrainOutput.ts +20 -28
- package/src/Devices/Insteon/Generated/FanLincMotor.ts +15 -27
- package/src/Devices/Insteon/Generated/I3KeypadFlags.ts +19 -39
- package/src/Devices/Insteon/Generated/I3PaddleFlags.ts +17 -33
- package/src/Devices/Insteon/Generated/ImeterSolo.ts +11 -15
- package/src/Devices/Insteon/Generated/IrLincTx.ts +10 -12
- package/src/Devices/Insteon/Generated/{KeypadButtonAdv.ts → KeypadButton.ts} +23 -26
- package/src/Devices/Insteon/Generated/KeypadDimmer.ts +30 -57
- package/src/Devices/Insteon/Generated/KeypadRelay.ts +30 -43
- package/src/Devices/Insteon/Generated/OnOffControl.ts +15 -12
- package/src/Devices/Insteon/Generated/Pir2844.ts +15 -20
- package/src/Devices/Insteon/Generated/Pir2844OnOff.ts +16 -23
- package/src/Devices/Insteon/Generated/Pir2844c.ts +15 -20
- package/src/Devices/Insteon/Generated/RelayLamp.ts +29 -41
- package/src/Devices/Insteon/Generated/RelayLampSwitch.ts +29 -42
- package/src/Devices/Insteon/Generated/RelayLampSwitchLed.ts +24 -39
- package/src/Devices/Insteon/Generated/RelaySwitch.ts +14 -17
- package/src/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.ts +15 -20
- package/src/Devices/Insteon/Generated/RemoteLinc2.ts +12 -11
- package/src/Devices/Insteon/Generated/Siren.ts +18 -29
- package/src/Devices/Insteon/Generated/SirenAlert.ts +11 -8
- package/src/Devices/Insteon/Generated/TempLinc.ts +18 -36
- package/src/Devices/Insteon/Generated/Thermostat.ts +18 -36
- package/src/Devices/Insteon/Generated/X10.ts +13 -21
- package/src/Devices/Insteon/Generated/index.ts +38 -0
- package/src/Devices/Insteon/InsteonBaseDevice.ts +5 -4
- package/src/Devices/Insteon/InsteonFanDevice.ts +3 -4
- package/src/Devices/Insteon/InsteonRelayDevice.ts +1 -0
- package/src/Devices/Insteon/KeypadButton.ts +31 -31
- package/src/Devices/Insteon/index.ts +18 -26
- package/src/Devices/Lutron/Generated/LoadShed.ts +11 -15
- package/src/Devices/NCD/Generated/Relay.ts +12 -18
- package/src/Devices/NodeFactory.ts +67 -13
- package/src/Devices/Poly/Generated/MatterBridge.ts +84 -0
- package/src/Devices/Scene/Generated/Scene.ts +33 -65
- package/src/Devices/Scene/index.ts +2 -1
- package/src/Devices/UDI/Generated/Channel.ts +8 -6
- package/src/Devices/UDI/Generated/Em3MainChannel.ts +8 -6
- package/src/Devices/UDI/Generated/Main.ts +9 -9
- package/src/Devices/UDI/Generated/PulseCounter.ts +8 -6
- package/src/Devices/UDI/Generated/Relay.ts +11 -15
- package/src/Devices/UDI/Generated/TemperatureSensor.ts +8 -6
- package/src/Devices/ZWave/Generated/ColorSwitch.ts +16 -24
- package/src/Devices/ZWave/Generated/DimmerSwitch.ts +25 -49
- package/src/Devices/ZWave/Generated/index.ts +2 -0
- package/src/Devices/ZWave/index.ts +5 -1
- package/src/Devices/ZigBeeLegacy/Generated/Relay.ts +12 -18
- package/src/Devices/ZigBeeLegacy/Generated/Thermostat.ts +17 -33
- package/src/Devices/index.ts +17 -12
- package/src/ISY.ts +8 -2
- package/src/ISYDevice.ts +68 -57
- package/src/ISYNode.ts +32 -8
- package/src/ISYScene.ts +31 -28
- package/src/Matter/Behaviors/BehaviorRegistry.ts +26 -0
- package/src/Matter/Behaviors/Insteon/ISYOnOffBehavior.ts +6 -0
- package/src/Matter/Bridge/Server.ts +39 -15
- package/src/Matter/Mappings/Insteon.ts +39 -14
- package/src/Model/ClassDefinition.ts +34 -4
- package/src/Model/ClusterMap.ts +73 -57
- package/src/Model/NodeInfo.ts +1 -1
- package/src/Utils.ts +38 -0
- package/tsconfig.json +7 -1
- package/src/Devices/Insteon/Generated/AlertModuleSirenAdv.ts +0 -123
- package/src/Devices/Insteon/Generated/BallastRelayLampSwitchAdv.ts +0 -123
- package/src/Devices/Insteon/Generated/BinaryAlarmAdv.ts +0 -91
- package/src/Devices/Insteon/Generated/BinaryControlAdv.ts +0 -91
- package/src/Devices/Insteon/Generated/DimmerLampSwitchAdv.ts +0 -207
- package/src/Devices/Insteon/Generated/DimmerLampSwitchLedAdv.ts +0 -215
- package/src/Devices/Insteon/Generated/DimmerMotorSwitchAdv.ts +0 -191
- package/src/Devices/Insteon/Generated/DimmerSwitchOnlyAdv.ts +0 -73
- package/src/Devices/Insteon/Generated/Ezio2x4InputAdv.ts +0 -75
- package/src/Devices/Insteon/Generated/EzrainInputAdv.ts +0 -75
- package/src/Devices/Insteon/Generated/KeypadDimmerAdv.ts +0 -207
- package/src/Devices/Insteon/Generated/KeypadRelayAdv.ts +0 -131
- package/src/Devices/Insteon/Generated/OnOffControlAdv.ts +0 -65
- package/src/Devices/Insteon/Generated/Pir2844Adv.ts +0 -139
- package/src/Devices/Insteon/Generated/Pir2844OnOffAdv.ts +0 -107
- package/src/Devices/Insteon/Generated/Pir2844cAdv.ts +0 -139
- package/src/Devices/Insteon/Generated/RelayLampOnlyAdv.ts +0 -123
- package/src/Devices/Insteon/Generated/RelayLampSwitchAdv.ts +0 -131
- package/src/Devices/Insteon/Generated/RelayLampSwitchLedAdv.ts +0 -139
- package/src/Devices/Insteon/Generated/RelaySwitchOnlyAdv.ts +0 -81
- package/src/Devices/Insteon/Generated/RelaySwitchOnlyPlusQueryAdv.ts +0 -89
- package/src/Devices/Insteon/Generated/RemoteLinc2Adv.ts +0 -75
- package/src/Devices/Insteon/Generated/SirenArm.ts +0 -55
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
|
|
4
4
|
import { Family } from "../../../Definitions/Global/Families.js";
|
|
5
5
|
import type { NodeInfo } from "../../../Model/NodeInfo.js";
|
|
6
|
-
import
|
|
6
|
+
import { ISY } from "../../../ISY.js";
|
|
7
7
|
import type { ISYNode } from "../../../ISYNode.js";
|
|
8
8
|
import { Base } from "../index.js";
|
|
9
9
|
import { ISYDeviceNode } from "../../ISYDeviceNode.js";
|
|
@@ -12,13 +12,13 @@ import { Insteon } from "../../../Definitions/index.js";
|
|
|
12
12
|
import type { DriverState } from "../../../Model/DriverState.js";
|
|
13
13
|
import { NodeFactory } from "../../NodeFactory.js";
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
const nodeDefId = "I3PaddleFlags";
|
|
16
16
|
|
|
17
17
|
type Commands = I3PaddleFlags.Commands;
|
|
18
18
|
type Drivers = I3PaddleFlags.Drivers;
|
|
19
19
|
|
|
20
20
|
export class I3PaddleFlagsNode extends Base<Drivers, Commands> implements I3PaddleFlags.Interface {
|
|
21
|
-
public readonly commands = {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
GV0: this.updateMode,
|
|
23
23
|
GV1: this.updateProgramLock,
|
|
24
24
|
GV2: this.updateResumeDim,
|
|
@@ -29,7 +29,8 @@ export class I3PaddleFlagsNode extends Base<Drivers, Commands> implements I3Padd
|
|
|
29
29
|
QUERY: this.query,
|
|
30
30
|
WDU: this.writeChanges
|
|
31
31
|
};
|
|
32
|
-
static nodeDefId = "I3PaddleFlags";
|
|
32
|
+
static override nodeDefId = "I3PaddleFlags";
|
|
33
|
+
static override implements = ["I3PaddleFlags"];
|
|
33
34
|
declare readonly nodeDefId: "I3PaddleFlags";
|
|
34
35
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
35
36
|
super(isy, nodeInfo);
|
|
@@ -42,33 +43,15 @@ export class I3PaddleFlagsNode extends Base<Drivers, Commands> implements I3Padd
|
|
|
42
43
|
this.drivers.GV7 = Driver.create("GV7", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Boolean, label: "Error Blink", name: "errorBlink" });
|
|
43
44
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
44
45
|
}
|
|
45
|
-
async updateMode(value: Insteon.I3RelayDim) {
|
|
46
|
-
|
|
47
|
-
}
|
|
48
|
-
async
|
|
49
|
-
|
|
50
|
-
}
|
|
51
|
-
async
|
|
52
|
-
|
|
53
|
-
}
|
|
54
|
-
async updateKeyBeep(value: Insteon.I3OnOff) {
|
|
55
|
-
return this.sendCommand("GV4", { value: value });
|
|
56
|
-
}
|
|
57
|
-
async updateDisableRf(value: Insteon.I3OnOff) {
|
|
58
|
-
return this.sendCommand("GV5", { value: value });
|
|
59
|
-
}
|
|
60
|
-
async updateButtonLock(value: Insteon.I3OnOff) {
|
|
61
|
-
return this.sendCommand("GV6", { value: value });
|
|
62
|
-
}
|
|
63
|
-
async updateErrorBlink(value: Insteon.I3OnOff) {
|
|
64
|
-
return this.sendCommand("GV7", { value: value });
|
|
65
|
-
}
|
|
66
|
-
async query() {
|
|
67
|
-
return this.sendCommand("QUERY");
|
|
68
|
-
}
|
|
69
|
-
async writeChanges() {
|
|
70
|
-
return this.sendCommand("WDU");
|
|
71
|
-
}
|
|
46
|
+
async updateMode(value: Insteon.I3RelayDim) { return this.sendCommand("GV0", { value: value }); }
|
|
47
|
+
async updateProgramLock(value: Insteon.I3OnOff) { return this.sendCommand("GV1", { value: value }); }
|
|
48
|
+
async updateResumeDim(value: Insteon.I3OnOff) { return this.sendCommand("GV2", { value: value }); }
|
|
49
|
+
async updateKeyBeep(value: Insteon.I3OnOff) { return this.sendCommand("GV4", { value: value }); }
|
|
50
|
+
async updateDisableRf(value: Insteon.I3OnOff) { return this.sendCommand("GV5", { value: value }); }
|
|
51
|
+
async updateButtonLock(value: Insteon.I3OnOff) { return this.sendCommand("GV6", { value: value }); }
|
|
52
|
+
async updateErrorBlink(value: Insteon.I3OnOff) { return this.sendCommand("GV7", { value: value }); }
|
|
53
|
+
async query() { return this.sendCommand("QUERY"); }
|
|
54
|
+
async writeChanges() { return this.sendCommand("WDU"); }
|
|
72
55
|
public get mode(): Insteon.I3RelayDim {
|
|
73
56
|
return this.drivers.ST?.value;
|
|
74
57
|
}
|
|
@@ -101,8 +84,9 @@ export namespace I3PaddleFlags {
|
|
|
101
84
|
export interface Interface extends Omit<InstanceType<typeof I3PaddleFlagsNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
102
85
|
nodeDefId: "I3PaddleFlags";
|
|
103
86
|
}
|
|
104
|
-
export function is(node: ISYNode<any, any, any, any>): node is I3PaddleFlagsNode {
|
|
105
|
-
|
|
87
|
+
export function is(node: ISYNode<any, any, any, any>): node is I3PaddleFlagsNode { return ["I3PaddleFlags"].includes(node.nodeDefId); }
|
|
88
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is I3PaddleFlagsNode {
|
|
89
|
+
return ["I3PaddleFlags", "I3KeypadFlags"].includes(node.nodeDefId);
|
|
106
90
|
}
|
|
107
91
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
108
92
|
return new I3PaddleFlagsNode(isy, nodeInfo);
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
|
|
4
4
|
import { Family } from "../../../Definitions/Global/Families.js";
|
|
5
5
|
import type { NodeInfo } from "../../../Model/NodeInfo.js";
|
|
6
|
-
import
|
|
6
|
+
import { ISY } from "../../../ISY.js";
|
|
7
7
|
import type { ISYNode } from "../../../ISYNode.js";
|
|
8
8
|
import { Base } from "../index.js";
|
|
9
9
|
import { ISYDeviceNode } from "../../ISYDeviceNode.js";
|
|
@@ -12,18 +12,19 @@ import { Insteon } from "../../../Definitions/index.js";
|
|
|
12
12
|
import type { DriverState } from "../../../Model/DriverState.js";
|
|
13
13
|
import { NodeFactory } from "../../NodeFactory.js";
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
const nodeDefId = "IMETER_SOLO";
|
|
16
16
|
|
|
17
17
|
type Commands = ImeterSolo.Commands;
|
|
18
18
|
type Drivers = ImeterSolo.Drivers;
|
|
19
19
|
|
|
20
20
|
export class ImeterSoloNode extends Base<Drivers, Commands> implements ImeterSolo.Interface {
|
|
21
|
-
public readonly commands = {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
RESET: this.resetTotalEnergy,
|
|
23
23
|
QUERY: this.query,
|
|
24
24
|
WDU: this.writeChanges
|
|
25
25
|
};
|
|
26
|
-
static nodeDefId = "IMETER_SOLO";
|
|
26
|
+
static override nodeDefId = "IMETER_SOLO";
|
|
27
|
+
static override implements = ["IMETER_SOLO"];
|
|
27
28
|
declare readonly nodeDefId: "IMETER_SOLO";
|
|
28
29
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
29
30
|
super(isy, nodeInfo);
|
|
@@ -31,15 +32,9 @@ export class ImeterSoloNode extends Base<Drivers, Commands> implements ImeterSol
|
|
|
31
32
|
this.drivers.TPW = Driver.create("TPW", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.KilowattsPerHour, label: "Total Energy", name: "totalEnergy" });
|
|
32
33
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
33
34
|
}
|
|
34
|
-
async resetTotalEnergy() {
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
async query() {
|
|
38
|
-
return this.sendCommand("QUERY");
|
|
39
|
-
}
|
|
40
|
-
async writeChanges() {
|
|
41
|
-
return this.sendCommand("WDU");
|
|
42
|
-
}
|
|
35
|
+
async resetTotalEnergy() { return this.sendCommand("RESET"); }
|
|
36
|
+
async query() { return this.sendCommand("QUERY"); }
|
|
37
|
+
async writeChanges() { return this.sendCommand("WDU"); }
|
|
43
38
|
public get currentPower(): number {
|
|
44
39
|
return this.drivers.ST?.value;
|
|
45
40
|
}
|
|
@@ -57,8 +52,9 @@ export namespace ImeterSolo {
|
|
|
57
52
|
export interface Interface extends Omit<InstanceType<typeof ImeterSoloNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
58
53
|
nodeDefId: "IMETER_SOLO";
|
|
59
54
|
}
|
|
60
|
-
export function is(node: ISYNode<any, any, any, any>): node is ImeterSoloNode {
|
|
61
|
-
|
|
55
|
+
export function is(node: ISYNode<any, any, any, any>): node is ImeterSoloNode { return ["IMETER_SOLO"].includes(node.nodeDefId); }
|
|
56
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is ImeterSoloNode {
|
|
57
|
+
return ["IMETER_SOLO"].includes(node.nodeDefId);
|
|
62
58
|
}
|
|
63
59
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
64
60
|
return new ImeterSoloNode(isy, nodeInfo);
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
|
|
4
4
|
import { Family } from "../../../Definitions/Global/Families.js";
|
|
5
5
|
import type { NodeInfo } from "../../../Model/NodeInfo.js";
|
|
6
|
-
import
|
|
6
|
+
import { ISY } from "../../../ISY.js";
|
|
7
7
|
import type { ISYNode } from "../../../ISYNode.js";
|
|
8
8
|
import { Base } from "../index.js";
|
|
9
9
|
import { ISYDeviceNode } from "../../ISYDeviceNode.js";
|
|
@@ -12,28 +12,25 @@ import { Insteon } from "../../../Definitions/index.js";
|
|
|
12
12
|
import type { DriverState } from "../../../Model/DriverState.js";
|
|
13
13
|
import { NodeFactory } from "../../NodeFactory.js";
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
const nodeDefId = "IRLincTx";
|
|
16
16
|
|
|
17
17
|
type Commands = IrLincTx.Commands;
|
|
18
18
|
type Drivers = IrLincTx.Drivers;
|
|
19
19
|
|
|
20
20
|
export class IrLincTxNode extends Base<Drivers, Commands> implements IrLincTx.Interface {
|
|
21
|
-
public readonly commands = {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
BEEP: this.beep,
|
|
23
23
|
WDU: this.writeChanges
|
|
24
24
|
};
|
|
25
|
-
static nodeDefId = "IRLincTx";
|
|
25
|
+
static override nodeDefId = "IRLincTx";
|
|
26
|
+
static override implements = ["IRLincTx", "SirenAlert", "SirenArm"];
|
|
26
27
|
declare readonly nodeDefId: "IRLincTx";
|
|
27
28
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
28
29
|
super(isy, nodeInfo);
|
|
29
30
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
30
31
|
}
|
|
31
|
-
async beep(value?: number) {
|
|
32
|
-
|
|
33
|
-
}
|
|
34
|
-
async writeChanges() {
|
|
35
|
-
return this.sendCommand("WDU");
|
|
36
|
-
}
|
|
32
|
+
async beep(value?: number) { return this.sendCommand("BEEP", { value: value }); }
|
|
33
|
+
async writeChanges() { return this.sendCommand("WDU"); }
|
|
37
34
|
public get responding(): Insteon.Error {
|
|
38
35
|
return this.drivers.ERR?.value;
|
|
39
36
|
}
|
|
@@ -45,8 +42,9 @@ export namespace IrLincTx {
|
|
|
45
42
|
export interface Interface extends Omit<InstanceType<typeof IrLincTxNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
46
43
|
nodeDefId: "IRLincTx";
|
|
47
44
|
}
|
|
48
|
-
export function is(node: ISYNode<any, any, any, any>): node is IrLincTxNode {
|
|
49
|
-
|
|
45
|
+
export function is(node: ISYNode<any, any, any, any>): node is IrLincTxNode { return ["IRLincTx"].includes(node.nodeDefId); }
|
|
46
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is IrLincTxNode {
|
|
47
|
+
return ["IRLincTx", "Thermostat", "TempLinc", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "DimmerLampOnly", "KeypadDimmer", "KeypadDimmer_ADV", "BallastRelayLampSwitch", "BallastRelayLampSwitch_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "RelayLampOnly", "RelayLampOnly_ADV", "KeypadRelay", "KeypadRelay_ADV"].includes(node.nodeDefId);
|
|
50
48
|
}
|
|
51
49
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
52
50
|
return new IrLincTxNode(isy, nodeInfo);
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
|
|
4
4
|
import { Family } from "../../../Definitions/Global/Families.js";
|
|
5
5
|
import type { NodeInfo } from "../../../Model/NodeInfo.js";
|
|
6
|
-
import
|
|
6
|
+
import { ISY } from "../../../ISY.js";
|
|
7
7
|
import type { ISYNode } from "../../../ISYNode.js";
|
|
8
8
|
import { Base } from "../index.js";
|
|
9
9
|
import { ISYDeviceNode } from "../../ISYDeviceNode.js";
|
|
@@ -12,33 +12,28 @@ import { Insteon } from "../../../Definitions/index.js";
|
|
|
12
12
|
import type { DriverState } from "../../../Model/DriverState.js";
|
|
13
13
|
import { NodeFactory } from "../../NodeFactory.js";
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
const nodeDefId = "KeypadButton";
|
|
16
16
|
|
|
17
|
-
type Commands =
|
|
18
|
-
type Drivers =
|
|
17
|
+
type Commands = KeypadButton.Commands;
|
|
18
|
+
type Drivers = KeypadButton.Drivers;
|
|
19
19
|
|
|
20
|
-
export class
|
|
21
|
-
public readonly commands = {
|
|
20
|
+
export class KeypadButtonNode extends Base<Drivers, Commands> implements KeypadButton.Interface {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
QUERY: this.query,
|
|
23
23
|
BL: this.backlight,
|
|
24
24
|
WDU: this.writeChanges
|
|
25
25
|
};
|
|
26
|
-
static nodeDefId = "
|
|
27
|
-
|
|
26
|
+
static override nodeDefId = "KeypadButton";
|
|
27
|
+
static override implements = ["KeypadButton", "EZIO2x4_Input", "EZIO2x4_Input_ADV", "SirenAlert", "SirenArm"];
|
|
28
|
+
declare readonly nodeDefId: "KeypadButton" | "KeypadButton_ADV";
|
|
28
29
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
29
30
|
super(isy, nodeInfo);
|
|
30
31
|
this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
|
|
31
32
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
32
33
|
}
|
|
33
|
-
async query() {
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
async backlight(value: number) {
|
|
37
|
-
return this.sendCommand("BL", { value: value });
|
|
38
|
-
}
|
|
39
|
-
async writeChanges() {
|
|
40
|
-
return this.sendCommand("WDU");
|
|
41
|
-
}
|
|
34
|
+
async query() { return this.sendCommand("QUERY"); }
|
|
35
|
+
async backlight(value: Insteon.Backlight) { return this.sendCommand("BL", { value: value }); }
|
|
36
|
+
async writeChanges() { return this.sendCommand("WDU"); }
|
|
42
37
|
public get status(): Insteon.OnLevelRelay {
|
|
43
38
|
return this.drivers.ST?.value;
|
|
44
39
|
}
|
|
@@ -47,25 +42,27 @@ export class KeypadButtonAdvNode extends Base<Drivers, Commands> implements Keyp
|
|
|
47
42
|
}
|
|
48
43
|
}
|
|
49
44
|
|
|
50
|
-
NodeFactory.register(
|
|
45
|
+
NodeFactory.register(KeypadButtonNode);
|
|
46
|
+
NodeFactory.register(KeypadButtonNode, "KeypadButton_ADV");
|
|
51
47
|
|
|
52
|
-
export namespace
|
|
53
|
-
export interface Interface extends Omit<InstanceType<typeof
|
|
54
|
-
nodeDefId: "KeypadButton_ADV";
|
|
48
|
+
export namespace KeypadButton {
|
|
49
|
+
export interface Interface extends Omit<InstanceType<typeof KeypadButtonNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
50
|
+
nodeDefId: "KeypadButton" | "KeypadButton_ADV";
|
|
55
51
|
}
|
|
56
|
-
export function is(node: ISYNode<any, any, any, any>): node is
|
|
57
|
-
|
|
52
|
+
export function is(node: ISYNode<any, any, any, any>): node is KeypadButtonNode { return ["KeypadButton", "KeypadButton_ADV"].includes(node.nodeDefId); }
|
|
53
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is KeypadButtonNode {
|
|
54
|
+
return ["KeypadButton", "KeypadRelay", "KeypadRelay_ADV", "KeypadButton_ADV"].includes(node.nodeDefId);
|
|
58
55
|
}
|
|
59
56
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
60
|
-
return new
|
|
57
|
+
return new KeypadButtonNode(isy, nodeInfo);
|
|
61
58
|
}
|
|
62
|
-
export const Node =
|
|
59
|
+
export const Node = KeypadButtonNode;
|
|
63
60
|
export type Commands = {
|
|
64
61
|
QUERY: (() => Promise<boolean>) & {
|
|
65
62
|
label: "Query";
|
|
66
63
|
name: "query";
|
|
67
64
|
};
|
|
68
|
-
BL: ((value:
|
|
65
|
+
BL: ((value: Insteon.Backlight) => Promise<boolean>) & {
|
|
69
66
|
label: "Backlight";
|
|
70
67
|
name: "backlight";
|
|
71
68
|
};
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
|
|
4
4
|
import { Family } from "../../../Definitions/Global/Families.js";
|
|
5
5
|
import type { NodeInfo } from "../../../Model/NodeInfo.js";
|
|
6
|
-
import
|
|
6
|
+
import { ISY } from "../../../ISY.js";
|
|
7
7
|
import type { ISYNode } from "../../../ISYNode.js";
|
|
8
8
|
import { Base } from "../index.js";
|
|
9
9
|
import { ISYDeviceNode } from "../../ISYDeviceNode.js";
|
|
@@ -12,13 +12,13 @@ import { Insteon } from "../../../Definitions/index.js";
|
|
|
12
12
|
import type { DriverState } from "../../../Model/DriverState.js";
|
|
13
13
|
import { NodeFactory } from "../../NodeFactory.js";
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
const nodeDefId = "KeypadDimmer";
|
|
16
16
|
|
|
17
17
|
type Commands = KeypadDimmer.Commands;
|
|
18
18
|
type Drivers = KeypadDimmer.Drivers;
|
|
19
19
|
|
|
20
20
|
export class KeypadDimmerNode extends Base<Drivers, Commands> implements KeypadDimmer.Interface {
|
|
21
|
-
public readonly commands = {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
DON: this.on,
|
|
23
23
|
DOF: this.off,
|
|
24
24
|
DFOF: this.fastOff,
|
|
@@ -35,8 +35,9 @@ export class KeypadDimmerNode extends Base<Drivers, Commands> implements KeypadD
|
|
|
35
35
|
BL: this.backlight,
|
|
36
36
|
WDU: this.writeChanges
|
|
37
37
|
};
|
|
38
|
-
static nodeDefId = "KeypadDimmer";
|
|
39
|
-
|
|
38
|
+
static override nodeDefId = "KeypadDimmer";
|
|
39
|
+
static override implements = ["KeypadDimmer", "RemoteLinc2", "RemoteLinc2_ADV", "IRLincTx", "SirenAlert", "SirenArm"];
|
|
40
|
+
declare readonly nodeDefId: "KeypadDimmer" | "KeypadDimmer_ADV";
|
|
40
41
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
41
42
|
super(isy, nodeInfo);
|
|
42
43
|
this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
|
|
@@ -44,58 +45,28 @@ export class KeypadDimmerNode extends Base<Drivers, Commands> implements KeypadD
|
|
|
44
45
|
this.drivers.RR = Driver.create("RR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Ramp Rate", name: "rampRate" });
|
|
45
46
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
46
47
|
}
|
|
47
|
-
async on(value?: number) {
|
|
48
|
-
|
|
49
|
-
}
|
|
50
|
-
async
|
|
51
|
-
|
|
52
|
-
}
|
|
53
|
-
async
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
async
|
|
57
|
-
|
|
58
|
-
}
|
|
59
|
-
async
|
|
60
|
-
|
|
61
|
-
}
|
|
62
|
-
async dim() {
|
|
63
|
-
return this.sendCommand("DIM");
|
|
64
|
-
}
|
|
65
|
-
async fadeUp() {
|
|
66
|
-
return this.sendCommand("FDUP");
|
|
67
|
-
}
|
|
68
|
-
async fadeDown() {
|
|
69
|
-
return this.sendCommand("FDDOWN");
|
|
70
|
-
}
|
|
71
|
-
async fadeStop() {
|
|
72
|
-
return this.sendCommand("FDSTOP");
|
|
73
|
-
}
|
|
74
|
-
async query() {
|
|
75
|
-
return this.sendCommand("QUERY");
|
|
76
|
-
}
|
|
77
|
-
async beep(value?: number) {
|
|
78
|
-
return this.sendCommand("BEEP", { value: value });
|
|
79
|
-
}
|
|
80
|
-
async updateOnLevel(value: number) {
|
|
81
|
-
return this.sendCommand("OL", { value: value });
|
|
82
|
-
}
|
|
83
|
-
async updateRampRate(value: number) {
|
|
84
|
-
return this.sendCommand("RR", { value: value });
|
|
85
|
-
}
|
|
86
|
-
async backlight(value: number) {
|
|
87
|
-
return this.sendCommand("BL", { value: value });
|
|
88
|
-
}
|
|
89
|
-
async writeChanges() {
|
|
90
|
-
return this.sendCommand("WDU");
|
|
91
|
-
}
|
|
48
|
+
async on(value?: number) { return this.sendCommand("DON", { value: value }); }
|
|
49
|
+
async off() { return this.sendCommand("DOF"); }
|
|
50
|
+
async fastOff() { return this.sendCommand("DFOF"); }
|
|
51
|
+
async fastOn() { return this.sendCommand("DFON"); }
|
|
52
|
+
async brighten() { return this.sendCommand("BRT"); }
|
|
53
|
+
async dim() { return this.sendCommand("DIM"); }
|
|
54
|
+
async fadeUp() { return this.sendCommand("FDUP"); }
|
|
55
|
+
async fadeDown() { return this.sendCommand("FDDOWN"); }
|
|
56
|
+
async fadeStop() { return this.sendCommand("FDSTOP"); }
|
|
57
|
+
async query() { return this.sendCommand("QUERY"); }
|
|
58
|
+
async beep(value?: number) { return this.sendCommand("BEEP", { value: value }); }
|
|
59
|
+
async updateOnLevel(value: number) { return this.sendCommand("OL", { value: value }); }
|
|
60
|
+
async updateRampRate(value: Insteon.RampRate) { return this.sendCommand("RR", { value: value }); }
|
|
61
|
+
async backlight(value: Insteon.Backlight) { return this.sendCommand("BL", { value: value }); }
|
|
62
|
+
async writeChanges() { return this.sendCommand("WDU"); }
|
|
92
63
|
public get status(): number {
|
|
93
64
|
return this.drivers.ST?.value;
|
|
94
65
|
}
|
|
95
66
|
public get onLevel(): number {
|
|
96
67
|
return this.drivers.OL?.value;
|
|
97
68
|
}
|
|
98
|
-
public get rampRate():
|
|
69
|
+
public get rampRate(): Insteon.RampRate {
|
|
99
70
|
return this.drivers.RR?.value;
|
|
100
71
|
}
|
|
101
72
|
public get responding(): Insteon.Error {
|
|
@@ -104,13 +75,15 @@ export class KeypadDimmerNode extends Base<Drivers, Commands> implements KeypadD
|
|
|
104
75
|
}
|
|
105
76
|
|
|
106
77
|
NodeFactory.register(KeypadDimmerNode);
|
|
78
|
+
NodeFactory.register(KeypadDimmerNode, "KeypadDimmer_ADV");
|
|
107
79
|
|
|
108
80
|
export namespace KeypadDimmer {
|
|
109
81
|
export interface Interface extends Omit<InstanceType<typeof KeypadDimmerNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
110
|
-
nodeDefId: "KeypadDimmer";
|
|
82
|
+
nodeDefId: "KeypadDimmer" | "KeypadDimmer_ADV";
|
|
111
83
|
}
|
|
112
|
-
export function is(node: ISYNode<any, any, any, any>): node is KeypadDimmerNode {
|
|
113
|
-
|
|
84
|
+
export function is(node: ISYNode<any, any, any, any>): node is KeypadDimmerNode { return ["KeypadDimmer", "KeypadDimmer_ADV"].includes(node.nodeDefId); }
|
|
85
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is KeypadDimmerNode {
|
|
86
|
+
return ["KeypadDimmer", "KeypadDimmer_ADV"].includes(node.nodeDefId);
|
|
114
87
|
}
|
|
115
88
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
116
89
|
return new KeypadDimmerNode(isy, nodeInfo);
|
|
@@ -165,11 +138,11 @@ export namespace KeypadDimmer {
|
|
|
165
138
|
label: "On Level";
|
|
166
139
|
name: "updateOnLevel";
|
|
167
140
|
};
|
|
168
|
-
RR: ((value:
|
|
141
|
+
RR: ((value: Insteon.RampRate) => Promise<boolean>) & {
|
|
169
142
|
label: "Ramp Rate";
|
|
170
143
|
name: "updateRampRate";
|
|
171
144
|
};
|
|
172
|
-
BL: ((value:
|
|
145
|
+
BL: ((value: Insteon.Backlight) => Promise<boolean>) & {
|
|
173
146
|
label: "Backlight";
|
|
174
147
|
name: "backlight";
|
|
175
148
|
};
|
|
@@ -193,7 +166,7 @@ export namespace KeypadDimmer {
|
|
|
193
166
|
};
|
|
194
167
|
RR: {
|
|
195
168
|
uom: UnitOfMeasure.Index;
|
|
196
|
-
value:
|
|
169
|
+
value: Insteon.RampRate;
|
|
197
170
|
label: "Ramp Rate";
|
|
198
171
|
name: "rampRate";
|
|
199
172
|
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
/* THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT DIRECTLY. */
|
|
2
|
-
|
|
1
|
+
/* THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT DIRECTLY. */
|
|
2
|
+
|
|
3
3
|
import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
|
|
4
4
|
import { Family } from "../../../Definitions/Global/Families.js";
|
|
5
5
|
import type { NodeInfo } from "../../../Model/NodeInfo.js";
|
|
6
|
-
import
|
|
6
|
+
import { ISY } from "../../../ISY.js";
|
|
7
7
|
import type { ISYNode } from "../../../ISYNode.js";
|
|
8
8
|
import { Base } from "../index.js";
|
|
9
9
|
import { ISYDeviceNode } from "../../ISYDeviceNode.js";
|
|
@@ -11,14 +11,14 @@ import { Driver } from "../../../Definitions/Global/Drivers.js";
|
|
|
11
11
|
import { Insteon } from "../../../Definitions/index.js";
|
|
12
12
|
import type { DriverState } from "../../../Model/DriverState.js";
|
|
13
13
|
import { NodeFactory } from "../../NodeFactory.js";
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
|
|
15
|
+
const nodeDefId = "KeypadRelay";
|
|
16
|
+
|
|
17
17
|
type Commands = KeypadRelay.Commands;
|
|
18
18
|
type Drivers = KeypadRelay.Drivers;
|
|
19
|
-
|
|
19
|
+
|
|
20
20
|
export class KeypadRelayNode extends Base<Drivers, Commands> implements KeypadRelay.Interface {
|
|
21
|
-
public readonly commands = {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
DON: this.on,
|
|
23
23
|
DOF: this.off,
|
|
24
24
|
DFOF: this.fastOff,
|
|
@@ -28,53 +28,40 @@ export class KeypadRelayNode extends Base<Drivers, Commands> implements KeypadRe
|
|
|
28
28
|
BL: this.backlight,
|
|
29
29
|
WDU: this.writeChanges
|
|
30
30
|
};
|
|
31
|
-
static nodeDefId = "KeypadRelay";
|
|
32
|
-
|
|
31
|
+
static override nodeDefId = "KeypadRelay";
|
|
32
|
+
static override implements = ["KeypadRelay", "IRLincTx", "KeypadButton", "KeypadButton_ADV", "EZRAIN_Output", "EZIO2x4_Output", "EZIO2x4_Input", "EZIO2x4_Input_ADV", "DoorLock", "BinaryAlarm", "BinaryAlarm_ADV", "BinaryControl", "BinaryControl_ADV", "AlertModuleArmed", "SirenAlert", "SirenArm", "PIR2844OnOff", "PIR2844OnOff_ADV"];
|
|
33
|
+
declare readonly nodeDefId: "KeypadRelay" | "KeypadRelay_ADV";
|
|
33
34
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
34
35
|
super(isy, nodeInfo);
|
|
35
|
-
this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.
|
|
36
|
+
this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Boolean, label: "Status", name: "status" });
|
|
36
37
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
37
38
|
}
|
|
38
|
-
async on(value?: (0 | 100)) {
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
async
|
|
42
|
-
|
|
43
|
-
}
|
|
44
|
-
async
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
async fastOn() {
|
|
48
|
-
return this.sendCommand("DFON");
|
|
49
|
-
}
|
|
50
|
-
async query() {
|
|
51
|
-
return this.sendCommand("QUERY");
|
|
52
|
-
}
|
|
53
|
-
async beep(value?: number) {
|
|
54
|
-
return this.sendCommand("BEEP", { value: value });
|
|
55
|
-
}
|
|
56
|
-
async backlight(value: number) {
|
|
57
|
-
return this.sendCommand("BL", { value: value });
|
|
58
|
-
}
|
|
59
|
-
async writeChanges() {
|
|
60
|
-
return this.sendCommand("WDU");
|
|
61
|
-
}
|
|
62
|
-
public get status(): Insteon.OnLevelRelay {
|
|
39
|
+
async on(value?: (0 | 100)) { return this.sendCommand("DON", { value: value }); }
|
|
40
|
+
async off() { return this.sendCommand("DOF"); }
|
|
41
|
+
async fastOff() { return this.sendCommand("DFOF"); }
|
|
42
|
+
async fastOn() { return this.sendCommand("DFON"); }
|
|
43
|
+
async query() { return this.sendCommand("QUERY"); }
|
|
44
|
+
async beep(value?: number) { return this.sendCommand("BEEP", { value: value }); }
|
|
45
|
+
async backlight(value: number) { return this.sendCommand("BL", { value: value }); }
|
|
46
|
+
async writeChanges() { return this.sendCommand("WDU"); }
|
|
47
|
+
public get status(): number {
|
|
63
48
|
return this.drivers.ST?.value;
|
|
64
49
|
}
|
|
65
50
|
public get responding(): Insteon.Error {
|
|
66
51
|
return this.drivers.ERR?.value;
|
|
67
52
|
}
|
|
68
53
|
}
|
|
69
|
-
|
|
54
|
+
|
|
70
55
|
NodeFactory.register(KeypadRelayNode);
|
|
71
|
-
|
|
56
|
+
NodeFactory.register(KeypadRelayNode, "KeypadRelay_ADV");
|
|
57
|
+
|
|
72
58
|
export namespace KeypadRelay {
|
|
73
59
|
export interface Interface extends Omit<InstanceType<typeof KeypadRelayNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
74
|
-
nodeDefId: "KeypadRelay";
|
|
60
|
+
nodeDefId: "KeypadRelay" | "KeypadRelay_ADV";
|
|
75
61
|
}
|
|
76
|
-
export function is(node: ISYNode<any, any, any, any>): node is KeypadRelayNode {
|
|
77
|
-
|
|
62
|
+
export function is(node: ISYNode<any, any, any, any>): node is KeypadRelayNode { return ["KeypadRelay", "KeypadRelay_ADV"].includes(node.nodeDefId); }
|
|
63
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is KeypadRelayNode {
|
|
64
|
+
return ["KeypadRelay", "KeypadRelay_ADV"].includes(node.nodeDefId);
|
|
78
65
|
}
|
|
79
66
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
80
67
|
return new KeypadRelayNode(isy, nodeInfo);
|
|
@@ -116,8 +103,8 @@ export namespace KeypadRelay {
|
|
|
116
103
|
};
|
|
117
104
|
export type Drivers = {
|
|
118
105
|
ST: {
|
|
119
|
-
uom: UnitOfMeasure.
|
|
120
|
-
value:
|
|
106
|
+
uom: UnitOfMeasure.Boolean;
|
|
107
|
+
value: number;
|
|
121
108
|
label: "Status";
|
|
122
109
|
name: "status";
|
|
123
110
|
};
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
|
|
4
4
|
import { Family } from "../../../Definitions/Global/Families.js";
|
|
5
5
|
import type { NodeInfo } from "../../../Model/NodeInfo.js";
|
|
6
|
-
import
|
|
6
|
+
import { ISY } from "../../../ISY.js";
|
|
7
7
|
import type { ISYNode } from "../../../ISYNode.js";
|
|
8
8
|
import { Base } from "../index.js";
|
|
9
9
|
import { ISYDeviceNode } from "../../ISYDeviceNode.js";
|
|
@@ -12,21 +12,22 @@ import { Insteon } from "../../../Definitions/index.js";
|
|
|
12
12
|
import type { DriverState } from "../../../Model/DriverState.js";
|
|
13
13
|
import { NodeFactory } from "../../NodeFactory.js";
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
const nodeDefId = "OnOffControl";
|
|
16
16
|
|
|
17
17
|
type Commands = OnOffControl.Commands;
|
|
18
18
|
type Drivers = OnOffControl.Drivers;
|
|
19
19
|
|
|
20
20
|
export class OnOffControlNode extends Base<Drivers, Commands> implements OnOffControl.Interface {
|
|
21
|
-
public readonly commands = {};
|
|
22
|
-
static nodeDefId = "OnOffControl";
|
|
23
|
-
|
|
21
|
+
public override readonly commands = {};
|
|
22
|
+
static override nodeDefId = "OnOffControl";
|
|
23
|
+
static override implements = ["OnOffControl", "SirenAlert", "SirenArm"];
|
|
24
|
+
declare readonly nodeDefId: "OnOffControl" | "OnOffControl_ADV";
|
|
24
25
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
25
26
|
super(isy, nodeInfo);
|
|
26
|
-
this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.
|
|
27
|
+
this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Boolean, label: "Status", name: "status" });
|
|
27
28
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
28
29
|
}
|
|
29
|
-
public get status(): Insteon.OnLevelRelay {
|
|
30
|
+
public get status(): Insteon.OnLevelRelay | Insteon.OnLevelRelay {
|
|
30
31
|
return this.drivers.ST?.value;
|
|
31
32
|
}
|
|
32
33
|
public get responding(): Insteon.Error {
|
|
@@ -35,13 +36,15 @@ export class OnOffControlNode extends Base<Drivers, Commands> implements OnOffCo
|
|
|
35
36
|
}
|
|
36
37
|
|
|
37
38
|
NodeFactory.register(OnOffControlNode);
|
|
39
|
+
NodeFactory.register(OnOffControlNode, "OnOffControl_ADV");
|
|
38
40
|
|
|
39
41
|
export namespace OnOffControl {
|
|
40
42
|
export interface Interface extends Omit<InstanceType<typeof OnOffControlNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
41
|
-
nodeDefId: "OnOffControl";
|
|
43
|
+
nodeDefId: "OnOffControl" | "OnOffControl_ADV";
|
|
42
44
|
}
|
|
43
|
-
export function is(node: ISYNode<any, any, any, any>): node is OnOffControlNode {
|
|
44
|
-
|
|
45
|
+
export function is(node: ISYNode<any, any, any, any>): node is OnOffControlNode { return ["OnOffControl", "OnOffControl_ADV"].includes(node.nodeDefId); }
|
|
46
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is OnOffControlNode {
|
|
47
|
+
return ["OnOffControl", "X10", "OnOffControl_ADV"].includes(node.nodeDefId);
|
|
45
48
|
}
|
|
46
49
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
47
50
|
return new OnOffControlNode(isy, nodeInfo);
|
|
@@ -50,8 +53,8 @@ export namespace OnOffControl {
|
|
|
50
53
|
export type Commands = {};
|
|
51
54
|
export type Drivers = {
|
|
52
55
|
ST: {
|
|
53
|
-
uom: UnitOfMeasure.Percent;
|
|
54
|
-
value: Insteon.OnLevelRelay;
|
|
56
|
+
uom: UnitOfMeasure.Boolean | UnitOfMeasure.Percent;
|
|
57
|
+
value: Insteon.OnLevelRelay | Insteon.OnLevelRelay;
|
|
55
58
|
label: "Status";
|
|
56
59
|
name: "status";
|
|
57
60
|
};
|