isy-nodejs 1.0.2-alpha.2 → 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 +16 -10
- 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 +66 -59
- 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 +8 -2
- 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 +24 -4
- 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 +11 -4
- 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 +42 -18
- 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,49 +12,44 @@ 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 = "RelaySwitchOnlyPlusQuery";
|
|
16
16
|
|
|
17
17
|
type Commands = RelaySwitchOnlyPlusQuery.Commands;
|
|
18
18
|
type Drivers = RelaySwitchOnlyPlusQuery.Drivers;
|
|
19
19
|
|
|
20
20
|
export class RelaySwitchOnlyPlusQueryNode extends Base<Drivers, Commands> implements RelaySwitchOnlyPlusQuery.Interface {
|
|
21
|
-
public readonly commands = {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
QUERY: this.query,
|
|
23
23
|
BEEP: this.beep,
|
|
24
24
|
BL: this.backlight,
|
|
25
25
|
WDU: this.writeChanges
|
|
26
26
|
};
|
|
27
|
-
static nodeDefId = "RelaySwitchOnlyPlusQuery";
|
|
28
|
-
|
|
27
|
+
static override nodeDefId = "RelaySwitchOnlyPlusQuery";
|
|
28
|
+
static override implements = ["RelaySwitchOnlyPlusQuery", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "IRLincTx", "SirenAlert", "SirenArm"];
|
|
29
|
+
declare readonly nodeDefId: "RelaySwitchOnlyPlusQuery" | "RelaySwitchOnlyPlusQuery_ADV";
|
|
29
30
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
30
31
|
super(isy, nodeInfo);
|
|
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
|
|
37
|
-
return this.sendCommand("BEEP", { value: value });
|
|
38
|
-
}
|
|
39
|
-
async backlight(value: number) {
|
|
40
|
-
return this.sendCommand("BL", { value: value });
|
|
41
|
-
}
|
|
42
|
-
async writeChanges() {
|
|
43
|
-
return this.sendCommand("WDU");
|
|
44
|
-
}
|
|
34
|
+
async query() { return this.sendCommand("QUERY"); }
|
|
35
|
+
async beep(value?: number) { return this.sendCommand("BEEP", { value: value }); }
|
|
36
|
+
async backlight(value: number) { return this.sendCommand("BL", { value: value }); }
|
|
37
|
+
async writeChanges() { return this.sendCommand("WDU"); }
|
|
45
38
|
public get responding(): Insteon.Error {
|
|
46
39
|
return this.drivers.ERR?.value;
|
|
47
40
|
}
|
|
48
41
|
}
|
|
49
42
|
|
|
50
43
|
NodeFactory.register(RelaySwitchOnlyPlusQueryNode);
|
|
44
|
+
NodeFactory.register(RelaySwitchOnlyPlusQueryNode, "RelaySwitchOnlyPlusQuery_ADV");
|
|
51
45
|
|
|
52
46
|
export namespace RelaySwitchOnlyPlusQuery {
|
|
53
47
|
export interface Interface extends Omit<InstanceType<typeof RelaySwitchOnlyPlusQueryNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
54
|
-
nodeDefId: "RelaySwitchOnlyPlusQuery";
|
|
48
|
+
nodeDefId: "RelaySwitchOnlyPlusQuery" | "RelaySwitchOnlyPlusQuery_ADV";
|
|
55
49
|
}
|
|
56
|
-
export function is(node: ISYNode<any, any, any, any>): node is RelaySwitchOnlyPlusQueryNode {
|
|
57
|
-
|
|
50
|
+
export function is(node: ISYNode<any, any, any, any>): node is RelaySwitchOnlyPlusQueryNode { return ["RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV"].includes(node.nodeDefId); }
|
|
51
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelaySwitchOnlyPlusQueryNode {
|
|
52
|
+
return ["RelaySwitchOnlyPlusQuery", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelaySwitchOnlyPlusQuery_ADV"].includes(node.nodeDefId);
|
|
58
53
|
}
|
|
59
54
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
60
55
|
return new RelaySwitchOnlyPlusQueryNode(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,25 +12,24 @@ 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 = "RemoteLinc2";
|
|
16
16
|
|
|
17
17
|
type Commands = RemoteLinc2.Commands;
|
|
18
18
|
type Drivers = RemoteLinc2.Drivers;
|
|
19
19
|
|
|
20
20
|
export class RemoteLinc2Node extends Base<Drivers, Commands> implements RemoteLinc2.Interface {
|
|
21
|
-
public readonly commands = {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
WDU: this.writeChanges
|
|
23
23
|
};
|
|
24
|
-
static nodeDefId = "RemoteLinc2";
|
|
25
|
-
|
|
24
|
+
static override nodeDefId = "RemoteLinc2";
|
|
25
|
+
static override implements = ["RemoteLinc2", "SirenAlert", "SirenArm"];
|
|
26
|
+
declare readonly nodeDefId: "RemoteLinc2" | "RemoteLinc2_ADV";
|
|
26
27
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
27
28
|
super(isy, nodeInfo);
|
|
28
29
|
this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
|
|
29
30
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
30
31
|
}
|
|
31
|
-
async writeChanges() {
|
|
32
|
-
return this.sendCommand("WDU");
|
|
33
|
-
}
|
|
32
|
+
async writeChanges() { return this.sendCommand("WDU"); }
|
|
34
33
|
public get status(): number {
|
|
35
34
|
return this.drivers.ST?.value;
|
|
36
35
|
}
|
|
@@ -40,13 +39,15 @@ export class RemoteLinc2Node extends Base<Drivers, Commands> implements RemoteLi
|
|
|
40
39
|
}
|
|
41
40
|
|
|
42
41
|
NodeFactory.register(RemoteLinc2Node);
|
|
42
|
+
NodeFactory.register(RemoteLinc2Node, "RemoteLinc2_ADV");
|
|
43
43
|
|
|
44
44
|
export namespace RemoteLinc2 {
|
|
45
45
|
export interface Interface extends Omit<InstanceType<typeof RemoteLinc2Node>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
46
|
-
nodeDefId: "RemoteLinc2";
|
|
46
|
+
nodeDefId: "RemoteLinc2" | "RemoteLinc2_ADV";
|
|
47
47
|
}
|
|
48
|
-
export function is(node: ISYNode<any, any, any, any>): node is RemoteLinc2Node {
|
|
49
|
-
|
|
48
|
+
export function is(node: ISYNode<any, any, any, any>): node is RemoteLinc2Node { return ["RemoteLinc2", "RemoteLinc2_ADV"].includes(node.nodeDefId); }
|
|
49
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RemoteLinc2Node {
|
|
50
|
+
return ["RemoteLinc2", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "KeypadDimmer", "KeypadDimmer_ADV", "RemoteLinc2_ADV"].includes(node.nodeDefId);
|
|
50
51
|
}
|
|
51
52
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
52
53
|
return new RemoteLinc2Node(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,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 = "Siren";
|
|
16
16
|
|
|
17
17
|
type Commands = Siren.Commands;
|
|
18
18
|
type Drivers = Siren.Drivers;
|
|
19
19
|
|
|
20
20
|
export class SirenNode extends Base<Drivers, Commands> implements Siren.Interface {
|
|
21
|
-
public readonly commands = {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
DON: this.on,
|
|
23
23
|
DOF: this.off,
|
|
24
24
|
ARM: this.arm,
|
|
@@ -27,8 +27,9 @@ export class SirenNode extends Base<Drivers, Commands> implements Siren.Interfac
|
|
|
27
27
|
BEEP: this.beep,
|
|
28
28
|
WDU: this.writeChanges
|
|
29
29
|
};
|
|
30
|
-
static nodeDefId = "
|
|
31
|
-
|
|
30
|
+
static override nodeDefId = "Siren";
|
|
31
|
+
static override implements = ["Siren", "SirenAlert", "SirenArm"];
|
|
32
|
+
declare readonly nodeDefId: "Siren" | "Siren_ADV";
|
|
32
33
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
33
34
|
super(isy, nodeInfo);
|
|
34
35
|
this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Siren", name: "siren" });
|
|
@@ -37,27 +38,13 @@ export class SirenNode extends Base<Drivers, Commands> implements Siren.Interfac
|
|
|
37
38
|
this.drivers.DUR = Driver.create("DUR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.DurationInSeconds, label: "Siren Duration", name: "sirenDuration" });
|
|
38
39
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
39
40
|
}
|
|
40
|
-
async on(duration?: number) {
|
|
41
|
-
|
|
42
|
-
}
|
|
43
|
-
async
|
|
44
|
-
|
|
45
|
-
}
|
|
46
|
-
async
|
|
47
|
-
return this.sendCommand("ARM", { value: value });
|
|
48
|
-
}
|
|
49
|
-
async disarm() {
|
|
50
|
-
return this.sendCommand("DISARM");
|
|
51
|
-
}
|
|
52
|
-
async query() {
|
|
53
|
-
return this.sendCommand("QUERY");
|
|
54
|
-
}
|
|
55
|
-
async beep(value?: number) {
|
|
56
|
-
return this.sendCommand("BEEP", { value: value });
|
|
57
|
-
}
|
|
58
|
-
async writeChanges() {
|
|
59
|
-
return this.sendCommand("WDU");
|
|
60
|
-
}
|
|
41
|
+
async on(duration?: number) { return this.sendCommand("DON", { DUR: duration }); }
|
|
42
|
+
async off() { return this.sendCommand("DOF"); }
|
|
43
|
+
async arm(value: Insteon.SirenMode) { return this.sendCommand("ARM", { value: value }); }
|
|
44
|
+
async disarm() { return this.sendCommand("DISARM"); }
|
|
45
|
+
async query() { return this.sendCommand("QUERY"); }
|
|
46
|
+
async beep(value?: number) { return this.sendCommand("BEEP", { value: value }); }
|
|
47
|
+
async writeChanges() { return this.sendCommand("WDU"); }
|
|
61
48
|
public get siren(): Insteon.OnLevelRelay {
|
|
62
49
|
return this.drivers.ST?.value;
|
|
63
50
|
}
|
|
@@ -76,13 +63,15 @@ export class SirenNode extends Base<Drivers, Commands> implements Siren.Interfac
|
|
|
76
63
|
}
|
|
77
64
|
|
|
78
65
|
NodeFactory.register(SirenNode);
|
|
66
|
+
NodeFactory.register(SirenNode, "Siren_ADV");
|
|
79
67
|
|
|
80
68
|
export namespace Siren {
|
|
81
69
|
export interface Interface extends Omit<InstanceType<typeof SirenNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
82
|
-
nodeDefId: "Siren_ADV";
|
|
70
|
+
nodeDefId: "Siren" | "Siren_ADV";
|
|
83
71
|
}
|
|
84
|
-
export function is(node: ISYNode<any, any, any, any>): node is SirenNode {
|
|
85
|
-
|
|
72
|
+
export function is(node: ISYNode<any, any, any, any>): node is SirenNode { return ["Siren", "Siren_ADV"].includes(node.nodeDefId); }
|
|
73
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is SirenNode {
|
|
74
|
+
return ["Siren", "Siren_ADV"].includes(node.nodeDefId);
|
|
86
75
|
}
|
|
87
76
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
88
77
|
return new SirenNode(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,15 +12,16 @@ 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 = "SirenAlert";
|
|
16
16
|
|
|
17
17
|
type Commands = SirenAlert.Commands;
|
|
18
18
|
type Drivers = SirenAlert.Drivers;
|
|
19
19
|
|
|
20
20
|
export class SirenAlertNode extends Base<Drivers, Commands> implements SirenAlert.Interface {
|
|
21
|
-
public readonly commands = {};
|
|
22
|
-
static nodeDefId = "SirenAlert";
|
|
23
|
-
|
|
21
|
+
public override readonly commands = {};
|
|
22
|
+
static override nodeDefId = "SirenAlert";
|
|
23
|
+
static override implements = ["SirenAlert"];
|
|
24
|
+
declare readonly nodeDefId: "SirenAlert" | "SirenArm";
|
|
24
25
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
25
26
|
super(isy, nodeInfo);
|
|
26
27
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
@@ -31,13 +32,15 @@ export class SirenAlertNode extends Base<Drivers, Commands> implements SirenAler
|
|
|
31
32
|
}
|
|
32
33
|
|
|
33
34
|
NodeFactory.register(SirenAlertNode);
|
|
35
|
+
NodeFactory.register(SirenAlertNode, "SirenArm");
|
|
34
36
|
|
|
35
37
|
export namespace SirenAlert {
|
|
36
38
|
export interface Interface extends Omit<InstanceType<typeof SirenAlertNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
37
|
-
nodeDefId: "SirenAlert";
|
|
39
|
+
nodeDefId: "SirenAlert" | "SirenArm";
|
|
38
40
|
}
|
|
39
|
-
export function is(node: ISYNode<any, any, any, any>): node is SirenAlertNode {
|
|
40
|
-
|
|
41
|
+
export function is(node: ISYNode<any, any, any, any>): node is SirenAlertNode { return ["SirenAlert", "SirenArm"].includes(node.nodeDefId); }
|
|
42
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is SirenAlertNode {
|
|
43
|
+
return ["SirenAlert", "X10", "Thermostat", "TempLinc", "OnOffControl", "OnOffControl_ADV", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "DimmerSwitchOnly", "DimmerSwitchOnly_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", "RemoteLinc2", "RemoteLinc2_ADV", "IRLincTx", "FanLincMotor", "KeypadButton", "KeypadButton_ADV", "EZRAIN_Output", "EZRAIN_Input", "EZRAIN_Input_ADV", "EZIO2x4_Output", "EZIO2x4_Input", "EZIO2x4_Input_ADV", "IMETER_SOLO", "DoorLock", "BinaryAlarm", "BinaryAlarm_ADV", "BinaryControl", "BinaryControl_ADV", "AlertModuleSiren", "AlertModuleSiren_ADV", "AlertModuleArmed", "Siren", "Siren_ADV", "SirenArm", "PIR2844_ADV", "PIR2844C_ADV", "PIR2844OnOff_ADV"].includes(node.nodeDefId);
|
|
41
44
|
}
|
|
42
45
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
43
46
|
return new SirenAlertNode(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,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 = "TempLinc";
|
|
16
16
|
|
|
17
17
|
type Commands = TempLinc.Commands;
|
|
18
18
|
type Drivers = TempLinc.Drivers;
|
|
19
19
|
|
|
20
20
|
export class TempLincNode extends Base<Drivers, Commands> implements TempLinc.Interface {
|
|
21
|
-
public readonly commands = {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
CLISPH: this.updateHeatSetpoint,
|
|
23
23
|
CLISPC: this.updateCoolSetpoint,
|
|
24
24
|
CLIMD: this.updateMode,
|
|
@@ -30,7 +30,8 @@ export class TempLincNode extends Base<Drivers, Commands> implements TempLinc.In
|
|
|
30
30
|
SETTIME: this.setTime,
|
|
31
31
|
WDU: this.writeChanges
|
|
32
32
|
};
|
|
33
|
-
static nodeDefId = "TempLinc";
|
|
33
|
+
static override nodeDefId = "TempLinc";
|
|
34
|
+
static override implements = ["TempLinc", "IRLincTx", "SirenAlert", "SirenArm"];
|
|
34
35
|
declare readonly nodeDefId: "TempLinc";
|
|
35
36
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
36
37
|
super(isy, nodeInfo);
|
|
@@ -43,36 +44,16 @@ export class TempLincNode extends Base<Drivers, Commands> implements TempLinc.In
|
|
|
43
44
|
this.drivers.CLIHCS = Driver.create("CLIHCS", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.ThermostatHeatCoolState, label: "Heat/Cool State", name: "heatCoolState" });
|
|
44
45
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
45
46
|
}
|
|
46
|
-
async updateHeatSetpoint(value: number) {
|
|
47
|
-
|
|
48
|
-
}
|
|
49
|
-
async
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
async
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
async
|
|
56
|
-
return this.sendCommand("CLIFS", { value: value });
|
|
57
|
-
}
|
|
58
|
-
async setpointUp() {
|
|
59
|
-
return this.sendCommand("BRT");
|
|
60
|
-
}
|
|
61
|
-
async setpointDown() {
|
|
62
|
-
return this.sendCommand("DIM");
|
|
63
|
-
}
|
|
64
|
-
async beep(value?: number) {
|
|
65
|
-
return this.sendCommand("BEEP", { value: value });
|
|
66
|
-
}
|
|
67
|
-
async query() {
|
|
68
|
-
return this.sendCommand("QUERY");
|
|
69
|
-
}
|
|
70
|
-
async setTime() {
|
|
71
|
-
return this.sendCommand("SETTIME");
|
|
72
|
-
}
|
|
73
|
-
async writeChanges() {
|
|
74
|
-
return this.sendCommand("WDU");
|
|
75
|
-
}
|
|
47
|
+
async updateHeatSetpoint(value: number) { return this.sendCommand("CLISPH", { value: value }); }
|
|
48
|
+
async updateCoolSetpoint(value: number) { return this.sendCommand("CLISPC", { value: value }); }
|
|
49
|
+
async updateMode(value: (0 | 1 | 2 | 3 | 5)) { return this.sendCommand("CLIMD", { value: value }); }
|
|
50
|
+
async updateFanMode(value: (7 | 8)) { return this.sendCommand("CLIFS", { value: value }); }
|
|
51
|
+
async setpointUp() { return this.sendCommand("BRT"); }
|
|
52
|
+
async setpointDown() { return this.sendCommand("DIM"); }
|
|
53
|
+
async beep(value?: number) { return this.sendCommand("BEEP", { value: value }); }
|
|
54
|
+
async query() { return this.sendCommand("QUERY"); }
|
|
55
|
+
async setTime() { return this.sendCommand("SETTIME"); }
|
|
56
|
+
async writeChanges() { return this.sendCommand("WDU"); }
|
|
76
57
|
public get temperature(): number {
|
|
77
58
|
return this.drivers.ST?.value;
|
|
78
59
|
}
|
|
@@ -105,8 +86,9 @@ export namespace TempLinc {
|
|
|
105
86
|
export interface Interface extends Omit<InstanceType<typeof TempLincNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
106
87
|
nodeDefId: "TempLinc";
|
|
107
88
|
}
|
|
108
|
-
export function is(node: ISYNode<any, any, any, any>): node is TempLincNode {
|
|
109
|
-
|
|
89
|
+
export function is(node: ISYNode<any, any, any, any>): node is TempLincNode { return ["TempLinc"].includes(node.nodeDefId); }
|
|
90
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is TempLincNode {
|
|
91
|
+
return ["TempLinc", "Thermostat"].includes(node.nodeDefId);
|
|
110
92
|
}
|
|
111
93
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
112
94
|
return new TempLincNode(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,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 = "Thermostat";
|
|
16
16
|
|
|
17
17
|
type Commands = Thermostat.Commands;
|
|
18
18
|
type Drivers = Thermostat.Drivers;
|
|
19
19
|
|
|
20
20
|
export class ThermostatNode extends Base<Drivers, Commands> implements Thermostat.Interface {
|
|
21
|
-
public readonly commands = {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
CLISPH: this.updateHeatSetpoint,
|
|
23
23
|
CLISPC: this.updateCoolSetpoint,
|
|
24
24
|
CLIMD: this.updateMode,
|
|
@@ -30,7 +30,8 @@ export class ThermostatNode extends Base<Drivers, Commands> implements Thermosta
|
|
|
30
30
|
SETTIME: this.setTime,
|
|
31
31
|
WDU: this.writeChanges
|
|
32
32
|
};
|
|
33
|
-
static nodeDefId = "Thermostat";
|
|
33
|
+
static override nodeDefId = "Thermostat";
|
|
34
|
+
static override implements = ["Thermostat"];
|
|
34
35
|
declare readonly nodeDefId: "Thermostat";
|
|
35
36
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
36
37
|
super(isy, nodeInfo);
|
|
@@ -43,36 +44,16 @@ export class ThermostatNode extends Base<Drivers, Commands> implements Thermosta
|
|
|
43
44
|
this.drivers.CLIHCS = Driver.create("CLIHCS", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.ThermostatHeatCoolState, label: "Heat/Cool State", name: "heatCoolState" });
|
|
44
45
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
45
46
|
}
|
|
46
|
-
async updateHeatSetpoint(value: number) {
|
|
47
|
-
|
|
48
|
-
}
|
|
49
|
-
async
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
async
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
async
|
|
56
|
-
return this.sendCommand("CLIFS", { value: value });
|
|
57
|
-
}
|
|
58
|
-
async setpointUp() {
|
|
59
|
-
return this.sendCommand("BRT");
|
|
60
|
-
}
|
|
61
|
-
async setpointDown() {
|
|
62
|
-
return this.sendCommand("DIM");
|
|
63
|
-
}
|
|
64
|
-
async beep(value?: number) {
|
|
65
|
-
return this.sendCommand("BEEP", { value: value });
|
|
66
|
-
}
|
|
67
|
-
async query() {
|
|
68
|
-
return this.sendCommand("QUERY");
|
|
69
|
-
}
|
|
70
|
-
async setTime() {
|
|
71
|
-
return this.sendCommand("SETTIME");
|
|
72
|
-
}
|
|
73
|
-
async writeChanges() {
|
|
74
|
-
return this.sendCommand("WDU");
|
|
75
|
-
}
|
|
47
|
+
async updateHeatSetpoint(value: number) { return this.sendCommand("CLISPH", { value: value }); }
|
|
48
|
+
async updateCoolSetpoint(value: number) { return this.sendCommand("CLISPC", { value: value }); }
|
|
49
|
+
async updateMode(value: (0 | 1 | 2 | 3 | 5 | 6 | 7)) { return this.sendCommand("CLIMD", { value: value }); }
|
|
50
|
+
async updateFanMode(value: (7 | 8)) { return this.sendCommand("CLIFS", { value: value }); }
|
|
51
|
+
async setpointUp() { return this.sendCommand("BRT"); }
|
|
52
|
+
async setpointDown() { return this.sendCommand("DIM"); }
|
|
53
|
+
async beep(value?: number) { return this.sendCommand("BEEP", { value: value }); }
|
|
54
|
+
async query() { return this.sendCommand("QUERY"); }
|
|
55
|
+
async setTime() { return this.sendCommand("SETTIME"); }
|
|
56
|
+
async writeChanges() { return this.sendCommand("WDU"); }
|
|
76
57
|
public get temperature(): number {
|
|
77
58
|
return this.drivers.ST?.value;
|
|
78
59
|
}
|
|
@@ -105,8 +86,9 @@ export namespace Thermostat {
|
|
|
105
86
|
export interface Interface extends Omit<InstanceType<typeof ThermostatNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
106
87
|
nodeDefId: "Thermostat";
|
|
107
88
|
}
|
|
108
|
-
export function is(node: ISYNode<any, any, any, any>): node is ThermostatNode {
|
|
109
|
-
|
|
89
|
+
export function is(node: ISYNode<any, any, any, any>): node is ThermostatNode { return ["Thermostat"].includes(node.nodeDefId); }
|
|
90
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is ThermostatNode {
|
|
91
|
+
return ["Thermostat"].includes(node.nodeDefId);
|
|
110
92
|
}
|
|
111
93
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
112
94
|
return new ThermostatNode(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,41 +12,32 @@ 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 = "X10";
|
|
16
16
|
|
|
17
17
|
type Commands = X10.Commands;
|
|
18
18
|
type Drivers = X10.Drivers;
|
|
19
19
|
|
|
20
20
|
export class X10Node extends Base<Drivers, Commands> implements X10.Interface {
|
|
21
|
-
public readonly commands = {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
DON: this.on,
|
|
23
23
|
DOF: this.off,
|
|
24
24
|
BRT: this.brighten,
|
|
25
25
|
DIM: this.dim,
|
|
26
26
|
QUERY: this.query
|
|
27
27
|
};
|
|
28
|
-
static nodeDefId = "X10";
|
|
28
|
+
static override nodeDefId = "X10";
|
|
29
|
+
static override implements = ["X10"];
|
|
29
30
|
declare readonly nodeDefId: "X10";
|
|
30
31
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
31
32
|
super(isy, nodeInfo);
|
|
32
33
|
this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
|
|
33
34
|
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
34
35
|
}
|
|
35
|
-
async on() {
|
|
36
|
-
|
|
37
|
-
}
|
|
38
|
-
async
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
async brighten() {
|
|
42
|
-
return this.sendCommand("BRT");
|
|
43
|
-
}
|
|
44
|
-
async dim() {
|
|
45
|
-
return this.sendCommand("DIM");
|
|
46
|
-
}
|
|
47
|
-
async query() {
|
|
48
|
-
return this.sendCommand("QUERY");
|
|
49
|
-
}
|
|
36
|
+
async on() { return this.sendCommand("DON"); }
|
|
37
|
+
async off() { return this.sendCommand("DOF"); }
|
|
38
|
+
async brighten() { return this.sendCommand("BRT"); }
|
|
39
|
+
async dim() { return this.sendCommand("DIM"); }
|
|
40
|
+
async query() { return this.sendCommand("QUERY"); }
|
|
50
41
|
public get status(): Insteon.OnLevelRelay {
|
|
51
42
|
return this.drivers.ST?.value;
|
|
52
43
|
}
|
|
@@ -61,8 +52,9 @@ export namespace X10 {
|
|
|
61
52
|
export interface Interface extends Omit<InstanceType<typeof X10Node>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
62
53
|
nodeDefId: "X10";
|
|
63
54
|
}
|
|
64
|
-
export function is(node: ISYNode<any, any, any, any>): node is X10Node {
|
|
65
|
-
|
|
55
|
+
export function is(node: ISYNode<any, any, any, any>): node is X10Node { return ["X10"].includes(node.nodeDefId); }
|
|
56
|
+
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is X10Node {
|
|
57
|
+
return ["X10"].includes(node.nodeDefId);
|
|
66
58
|
}
|
|
67
59
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
68
60
|
return new X10Node(isy, nodeInfo);
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export * from './AlertModuleArmed.js';
|
|
2
|
+
export * from './AlertModuleSiren.js';
|
|
3
|
+
export * from './BallastRelayLampSwitch.js';
|
|
4
|
+
export * from './BinaryAlarm.js';
|
|
5
|
+
export * from './BinaryControl.js';
|
|
6
|
+
export * from './DimmerLamp.js';
|
|
7
|
+
export * from './DimmerLampSwitch.js';
|
|
8
|
+
export * from './DimmerLampSwitchLed.js';
|
|
9
|
+
export * from './DimmerMotorSwitch.js';
|
|
10
|
+
export * from './DimmerSwitch.js';
|
|
11
|
+
export * from './DoorLock.js';
|
|
12
|
+
export * from './Ezio2x4Input.js';
|
|
13
|
+
export * from './Ezio2x4Output.js';
|
|
14
|
+
export * from './EzrainInput.js';
|
|
15
|
+
export * from './EzrainOutput.js';
|
|
16
|
+
export * from './FanLincMotor.js';
|
|
17
|
+
export * from './I3KeypadFlags.js';
|
|
18
|
+
export * from './I3PaddleFlags.js';
|
|
19
|
+
export * from './ImeterSolo.js';
|
|
20
|
+
export * from './IrLincTx.js';
|
|
21
|
+
export * from './KeypadButton.js';
|
|
22
|
+
export * from './KeypadDimmer.js';
|
|
23
|
+
export * from './KeypadRelay.js';
|
|
24
|
+
export * from './OnOffControl.js';
|
|
25
|
+
export * from './Pir2844.js';
|
|
26
|
+
export * from './Pir2844c.js';
|
|
27
|
+
export * from './Pir2844OnOff.js';
|
|
28
|
+
export * from './RelayLamp.js';
|
|
29
|
+
export * from './RelayLampSwitch.js';
|
|
30
|
+
export * from './RelayLampSwitchLed.js';
|
|
31
|
+
export * from './RelaySwitch.js';
|
|
32
|
+
export * from './RelaySwitchOnlyPlusQuery.js';
|
|
33
|
+
export * from './RemoteLinc2.js';
|
|
34
|
+
export * from './Siren.js';
|
|
35
|
+
export * from './SirenAlert.js';
|
|
36
|
+
export * from './TempLinc.js';
|
|
37
|
+
export * from './Thermostat.js';
|
|
38
|
+
export * from './X10.js';
|
|
@@ -14,17 +14,18 @@ import type { Merge } from '@matter/general';
|
|
|
14
14
|
import type { DriverState } from '../../Model/DriverState.js';
|
|
15
15
|
|
|
16
16
|
// import { InsteonNLS } from './insteonfam.js'
|
|
17
|
-
export class InsteonBaseDevice<D extends ISYNode.DriverSignatures =
|
|
17
|
+
export class InsteonBaseDevice<D extends ISYNode.DriverSignatures = Driver.Signatures<"ST">, C extends ISYNode.CommandSignatures = {}> extends ISYDeviceNode<
|
|
18
18
|
Family.Insteon,
|
|
19
|
-
|
|
19
|
+
D,
|
|
20
20
|
C
|
|
21
21
|
> {
|
|
22
22
|
// #region Constructors (1)
|
|
23
|
-
|
|
23
|
+
override readonly manufacturer: string = 'Insteon Technologies, Inc.';
|
|
24
|
+
|
|
25
|
+
static override family : Family.Insteon = Family.Insteon;
|
|
24
26
|
constructor(isy: ISY, deviceNode: NodeInfo) {
|
|
25
27
|
super(isy, deviceNode);
|
|
26
28
|
this.family = Family.Insteon;
|
|
27
|
-
(this.drivers as any).ERR = Driver.create('ERR', this as any, deviceNode.property as DriverState, { uom: UnitOfMeasure.Index, label: 'Responding', name: 'responding' });
|
|
28
29
|
//// this.productName = InsteonNLS.getDeviceDescription(String.fromCharCode(category,device,version));
|
|
29
30
|
//his.childDevices = {};
|
|
30
31
|
}
|
|
@@ -2,13 +2,12 @@ import { Family } from '../../Definitions/Global/Families.js';
|
|
|
2
2
|
import { ISY } from '../../ISY.js';
|
|
3
3
|
import { States } from '../../ISYConstants.js';
|
|
4
4
|
|
|
5
|
-
import { InsteonBaseDevice } from './InsteonBaseDevice.js';
|
|
6
|
-
import { InsteonDimmableDevice } from './InsteonDimmableDevice.js';
|
|
7
5
|
import 'winston';
|
|
8
|
-
import type { NodeInfo, StaticNodeInfo } from '../../Model/NodeInfo.js';
|
|
9
|
-
import { Insteon } from './index.js';
|
|
10
6
|
import { Command, Driver, UnitOfMeasure } from '../../Definitions/index.js';
|
|
11
7
|
import type { DriverState } from '../../Model/DriverState.js';
|
|
8
|
+
import type { NodeInfo, StaticNodeInfo } from '../../Model/NodeInfo.js';
|
|
9
|
+
import { InsteonBaseDevice } from './InsteonBaseDevice.js';
|
|
10
|
+
import { InsteonDimmableDevice } from './InsteonDimmableDevice.js';
|
|
12
11
|
|
|
13
12
|
export class InsteonFanMotorDevice extends InsteonBaseDevice<Driver.Signatures<'ST'>, Command.Signatures<'DON' | 'DOF'>> {
|
|
14
13
|
constructor(isy: ISY, deviceNode: StaticNodeInfo) {
|