isy-nodejs 1.0.6-alpha.2 → 1.0.8-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/CodeGeneration/CodeFactory.js +12 -6
- package/dist/esm/CodeGeneration/CodeFactory.js.map +1 -1
- package/dist/esm/CodeGeneration/NodeClassFactory.js +16 -7
- package/dist/esm/CodeGeneration/NodeClassFactory.js.map +1 -1
- package/dist/esm/Definitions/Global/Commands.js +6 -7
- package/dist/esm/Definitions/Global/Commands.js.map +1 -1
- package/dist/esm/Definitions/Global/Drivers.js +36 -23
- package/dist/esm/Definitions/Global/Drivers.js.map +1 -1
- package/dist/esm/Definitions/Insteon/generated/Boolean.js +10 -0
- package/dist/esm/Definitions/Insteon/generated/Boolean.js.map +1 -1
- package/dist/esm/Definitions/Insteon/generated/Error.js +10 -0
- package/dist/esm/Definitions/Insteon/generated/Error.js.map +1 -1
- package/dist/esm/Definitions/Insteon/generated/Lock.js +26 -0
- package/dist/esm/Definitions/Insteon/generated/Lock.js.map +1 -1
- package/dist/esm/Definitions/Insteon/generated/OnLevelRelay.js +10 -0
- package/dist/esm/Definitions/Insteon/generated/OnLevelRelay.js.map +1 -1
- package/{src/Devices/ISYMultiNodeDevice.ts → dist/esm/Devices/CompositeDevice.js} +108 -9
- package/dist/esm/Devices/CompositeDevice.js.map +1 -0
- package/dist/esm/Devices/DeviceFactory.js +1 -1
- package/dist/esm/Devices/DeviceFactory.js.map +1 -1
- package/dist/esm/Devices/ISYDeviceNode.js +1 -0
- package/dist/esm/Devices/ISYDeviceNode.js.map +1 -1
- package/dist/esm/Devices/ISYMultiNodeDevice.js +25 -1
- package/dist/esm/Devices/ISYMultiNodeDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/BinaryControl.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/BinaryControl.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js +8 -8
- package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js +8 -8
- package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js +8 -8
- package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js +8 -8
- package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js +5 -5
- package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/DoorLock.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/DoorLock.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/EzrainInput.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/EzrainInput.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js +14 -14
- package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js +12 -12
- package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js +7 -7
- package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/IrLincTx.js +5 -5
- package/dist/esm/Devices/Insteon/Generated/IrLincTx.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/KeypadButton.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/KeypadButton.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js +8 -8
- package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/OnOffControl.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/OnOffControl.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/Pir2844.js +10 -10
- package/dist/esm/Devices/Insteon/Generated/Pir2844.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/Pir2844c.js +10 -10
- package/dist/esm/Devices/Insteon/Generated/Pir2844c.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/RelayLamp.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/RelayLamp.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js +5 -5
- package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js +5 -5
- package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/Siren.js +9 -9
- package/dist/esm/Devices/Insteon/Generated/Siren.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/SirenAlert.js +5 -5
- package/dist/esm/Devices/Insteon/Generated/SirenAlert.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/TempLinc.js +12 -12
- package/dist/esm/Devices/Insteon/Generated/TempLinc.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/Thermostat.js +12 -12
- package/dist/esm/Devices/Insteon/Generated/Thermostat.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/X10.js +6 -6
- package/dist/esm/Devices/Insteon/Generated/X10.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonDeviceFactory.js +20 -11
- package/dist/esm/Devices/Insteon/InsteonDeviceFactory.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonDimmableDevice.js +2 -4
- package/dist/esm/Devices/Insteon/InsteonDimmableDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonDimmerOutletDevice.js +2 -2
- package/dist/esm/Devices/Insteon/InsteonDimmerOutletDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonDoorWindowSensorDevice.js +20 -7
- package/dist/esm/Devices/Insteon/InsteonDoorWindowSensorDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonFanDevice.js +17 -34
- package/dist/esm/Devices/Insteon/InsteonFanDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonOnOffOutletDevice.js +3 -13
- package/dist/esm/Devices/Insteon/InsteonOnOffOutletDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonRelayDevice.js +0 -16
- package/dist/esm/Devices/Insteon/InsteonRelayDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/index.js +10 -11
- package/dist/esm/Devices/Insteon/index.js.map +1 -1
- package/dist/esm/Devices/Lutron/Generated/LoadShed.js +6 -6
- package/dist/esm/Devices/Lutron/Generated/LoadShed.js.map +1 -1
- package/dist/esm/Devices/NodeFactory.js.map +1 -1
- package/dist/esm/Devices/UDI/Generated/Channel.js +7 -7
- package/dist/esm/Devices/UDI/Generated/Channel.js.map +1 -1
- package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js +10 -10
- package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js.map +1 -1
- package/dist/esm/Devices/UDI/Generated/Main.js +7 -7
- package/dist/esm/Devices/UDI/Generated/Main.js.map +1 -1
- package/dist/esm/Devices/UDI/Generated/PulseCounter.js +8 -8
- package/dist/esm/Devices/UDI/Generated/PulseCounter.js.map +1 -1
- package/dist/esm/Devices/UDI/Generated/Relay.js +6 -6
- package/dist/esm/Devices/UDI/Generated/Relay.js.map +1 -1
- package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js +6 -6
- package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js.map +1 -1
- package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js +9 -9
- package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js.map +1 -1
- package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js +6 -6
- package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js.map +1 -1
- package/dist/esm/Devices/ZigBee/ZWaveBaseDevice.js +9 -0
- package/dist/esm/Devices/ZigBee/ZWaveBaseDevice.js.map +1 -0
- package/dist/esm/Devices/ZigBee/ZigBeeBase.js +9 -0
- package/dist/esm/Devices/ZigBee/ZigBeeBase.js.map +1 -0
- package/dist/esm/Devices/ZigBee/index.js +3 -0
- package/dist/esm/Devices/ZigBee/index.js.map +1 -0
- package/dist/esm/ISY.js +19 -3
- package/dist/esm/ISY.js.map +1 -1
- package/dist/esm/ISYNode.js +7 -6
- package/dist/esm/ISYNode.js.map +1 -1
- package/dist/esm/Matter/Behaviors/BehaviorRegistry.js +37 -5
- package/dist/esm/Matter/Behaviors/BehaviorRegistry.js.map +1 -1
- package/dist/esm/Matter/Behaviors/ISYClusterBehavior.js +10 -3
- package/dist/esm/Matter/Behaviors/ISYClusterBehavior.js.map +1 -1
- package/dist/esm/Matter/Behaviors/Insteon/DimmerLevelControlBehavior.js +24 -0
- package/dist/esm/Matter/Behaviors/Insteon/DimmerLevelControlBehavior.js.map +1 -0
- package/dist/esm/Matter/Behaviors/Insteon/ISYDimmableBehavior.js +23 -0
- package/dist/esm/Matter/Behaviors/Insteon/ISYDimmableBehavior.js.map +1 -0
- package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js +4 -4
- package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js.map +1 -1
- package/dist/esm/Matter/Behaviors/Insteon/IdentifyBehavior.js +23 -0
- package/dist/esm/Matter/Behaviors/Insteon/IdentifyBehavior.js.map +1 -0
- package/dist/esm/Matter/Behaviors/Insteon/RelayOnOffBehavior.js +24 -0
- package/dist/esm/Matter/Behaviors/Insteon/RelayOnOffBehavior.js.map +1 -0
- package/dist/esm/Matter/Behaviors/Insteon/index.js +4 -0
- package/dist/esm/Matter/Behaviors/Insteon/index.js.map +1 -0
- package/dist/esm/Matter/Bridge/Server.js +22 -11
- package/dist/esm/Matter/Bridge/Server.js.map +1 -1
- package/dist/esm/Matter/Mappings/Insteon.js.map +1 -1
- package/dist/esm/Matter/Mappings/MappingRegistry.js +5 -4
- package/dist/esm/Matter/Mappings/MappingRegistry.js.map +1 -1
- package/dist/esm/Registry.js +77 -0
- package/dist/esm/Registry.js.map +1 -0
- package/dist/esm/Utils.js +12 -0
- package/dist/esm/Utils.js.map +1 -1
- package/dist/esm/types/CodeGeneration/CodeFactory.d.ts +6 -5
- package/dist/esm/types/CodeGeneration/CodeFactory.d.ts.map +1 -1
- package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Global/Commands.d.ts +4 -4
- package/dist/esm/types/Definitions/Global/Commands.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Global/Drivers.d.ts +11 -8
- package/dist/esm/types/Definitions/Global/Drivers.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Global/Events.d.ts +3 -3
- package/dist/esm/types/Definitions/Global/Events.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Insteon/generated/Boolean.d.ts +4 -0
- package/dist/esm/types/Definitions/Insteon/generated/Boolean.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Insteon/generated/Error.d.ts +4 -0
- package/dist/esm/types/Definitions/Insteon/generated/Error.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Insteon/generated/Lock.d.ts +6 -0
- package/dist/esm/types/Definitions/Insteon/generated/Lock.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Insteon/generated/OnLevelRelay.d.ts +4 -0
- package/dist/esm/types/Definitions/Insteon/generated/OnLevelRelay.d.ts.map +1 -1
- package/dist/esm/types/Devices/CompositeDevice.d.ts +64 -0
- package/dist/esm/types/Devices/CompositeDevice.d.ts.map +1 -0
- package/dist/esm/types/Devices/EndpointFor.d.ts +3 -2
- package/dist/esm/types/Devices/EndpointFor.d.ts.map +1 -1
- package/dist/esm/types/Devices/ISYDeviceNode.d.ts +4 -1
- package/dist/esm/types/Devices/ISYDeviceNode.d.ts.map +1 -1
- package/dist/esm/types/Devices/ISYMultiNodeDevice.d.ts +25 -1
- package/dist/esm/types/Devices/ISYMultiNodeDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/AlertModuleArmed.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/AlertModuleArmed.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/AlertModuleSiren.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/AlertModuleSiren.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/BallastRelayLampSwitch.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/BallastRelayLampSwitch.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/BinaryAlarm.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/BinaryAlarm.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/BinaryControl.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/BinaryControl.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLamp.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLamp.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitch.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitch.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitchLed.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitchLed.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/DimmerMotorSwitch.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/DimmerMotorSwitch.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/DimmerSwitch.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/DimmerSwitch.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/DoorLock.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/DoorLock.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Input.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Input.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Output.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Output.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/EzrainInput.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/EzrainInput.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/EzrainOutput.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/EzrainOutput.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/FanLincMotor.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/FanLincMotor.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/I3KeypadFlags.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/I3KeypadFlags.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/I3PaddleFlags.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/I3PaddleFlags.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/ImeterSolo.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/ImeterSolo.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/IrLincTx.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/IrLincTx.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/KeypadButton.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/KeypadButton.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/KeypadDimmer.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/KeypadDimmer.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844OnOff.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844OnOff.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844c.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844c.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/RelaySwitch.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/RelaySwitch.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/RemoteLinc2.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/RemoteLinc2.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/Siren.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/Siren.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/SirenAlert.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/SirenAlert.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/TempLinc.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/TempLinc.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/Thermostat.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/Thermostat.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/X10.d.ts +2 -3
- package/dist/esm/types/Devices/Insteon/Generated/X10.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts +8 -6
- package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonDeviceFactory.d.ts +7 -2
- package/dist/esm/types/Devices/Insteon/InsteonDeviceFactory.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonDimmableDevice.d.ts +2 -2
- package/dist/esm/types/Devices/Insteon/InsteonDimmableDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonDimmerOutletDevice.d.ts +2 -2
- package/dist/esm/types/Devices/Insteon/InsteonDimmerOutletDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonDoorWindowSensorDevice.d.ts +17 -5
- package/dist/esm/types/Devices/Insteon/InsteonDoorWindowSensorDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonFanDevice.d.ts +18 -16
- 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/InsteonOnOffOutletDevice.d.ts +8 -7
- package/dist/esm/types/Devices/Insteon/InsteonOnOffOutletDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonRelayDevice.d.ts +0 -1
- package/dist/esm/types/Devices/Insteon/InsteonRelayDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/index.d.ts +10 -11
- package/dist/esm/types/Devices/Insteon/index.d.ts.map +1 -1
- package/dist/esm/types/Devices/Lutron/Generated/LoadShed.d.ts +2 -3
- package/dist/esm/types/Devices/Lutron/Generated/LoadShed.d.ts.map +1 -1
- package/dist/esm/types/Devices/NodeFactory.d.ts +1 -1
- package/dist/esm/types/Devices/NodeFactory.d.ts.map +1 -1
- package/dist/esm/types/Devices/UDI/Generated/Channel.d.ts +2 -3
- package/dist/esm/types/Devices/UDI/Generated/Channel.d.ts.map +1 -1
- package/dist/esm/types/Devices/UDI/Generated/Em3MainChannel.d.ts +2 -3
- package/dist/esm/types/Devices/UDI/Generated/Em3MainChannel.d.ts.map +1 -1
- package/dist/esm/types/Devices/UDI/Generated/Main.d.ts +2 -3
- package/dist/esm/types/Devices/UDI/Generated/Main.d.ts.map +1 -1
- package/dist/esm/types/Devices/UDI/Generated/PulseCounter.d.ts +2 -3
- package/dist/esm/types/Devices/UDI/Generated/PulseCounter.d.ts.map +1 -1
- package/dist/esm/types/Devices/UDI/Generated/Relay.d.ts +2 -3
- package/dist/esm/types/Devices/UDI/Generated/Relay.d.ts.map +1 -1
- package/dist/esm/types/Devices/UDI/Generated/TemperatureSensor.d.ts +2 -3
- package/dist/esm/types/Devices/UDI/Generated/TemperatureSensor.d.ts.map +1 -1
- package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts +2 -3
- package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts.map +1 -1
- package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts +2 -3
- package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts.map +1 -1
- package/dist/esm/types/Devices/ZigBee/ZWaveBaseDevice.d.ts +10 -0
- package/dist/esm/types/Devices/ZigBee/ZWaveBaseDevice.d.ts.map +1 -0
- package/dist/esm/types/Devices/ZigBee/ZigBeeBase.d.ts +10 -0
- package/dist/esm/types/Devices/ZigBee/ZigBeeBase.d.ts.map +1 -0
- package/dist/esm/types/Devices/ZigBee/index.d.ts +2 -0
- package/dist/esm/types/Devices/ZigBee/index.d.ts.map +1 -0
- package/dist/esm/types/ISY.d.ts.map +1 -1
- package/dist/esm/types/ISYDevice.d.ts +3 -5
- package/dist/esm/types/ISYDevice.d.ts.map +1 -1
- package/dist/esm/types/ISYNode.d.ts +33 -28
- package/dist/esm/types/ISYNode.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/BehaviorRegistry.d.ts +9 -5
- package/dist/esm/types/Matter/Behaviors/BehaviorRegistry.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts +1 -1
- package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/ISYClusterBehavior.d.ts +8 -5
- package/dist/esm/types/Matter/Behaviors/ISYClusterBehavior.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/Insteon/DimmerLevelControlBehavior.d.ts +321 -0
- package/dist/esm/types/Matter/Behaviors/Insteon/DimmerLevelControlBehavior.d.ts.map +1 -0
- package/dist/esm/types/Matter/Behaviors/Insteon/ISYDimmableBehavior.d.ts +42 -0
- package/dist/esm/types/Matter/Behaviors/Insteon/ISYDimmableBehavior.d.ts.map +1 -0
- package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts +4 -4
- package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/Insteon/IdentifyBehavior.d.ts +24 -0
- package/dist/esm/types/Matter/Behaviors/Insteon/IdentifyBehavior.d.ts.map +1 -0
- package/dist/esm/types/Matter/Behaviors/Insteon/RelayOnOffBehavior.d.ts +241 -0
- package/dist/esm/types/Matter/Behaviors/Insteon/RelayOnOffBehavior.d.ts.map +1 -0
- package/dist/esm/types/Matter/Behaviors/Insteon/index.d.ts +4 -0
- package/dist/esm/types/Matter/Behaviors/Insteon/index.d.ts.map +1 -0
- package/dist/esm/types/Matter/Bridge/Server.d.ts.map +1 -1
- package/dist/esm/types/Matter/Mappings/MappingRegistry.d.ts +4173 -42
- package/dist/esm/types/Matter/Mappings/MappingRegistry.d.ts.map +1 -1
- package/dist/esm/types/Registry.d.ts +37 -0
- package/dist/esm/types/Registry.d.ts.map +1 -0
- package/dist/esm/types/Utils.d.ts +13 -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/CodeFactory.ts +16 -8
- package/src/CodeGeneration/NodeClassFactory.ts +7 -9
- package/src/Definitions/Global/Commands.ts +16 -13
- package/src/Definitions/Global/Drivers.ts +57 -36
- package/src/Definitions/Global/Events.ts +4 -4
- package/src/Definitions/Insteon/generated/Boolean.ts +9 -0
- package/src/Definitions/Insteon/generated/Error.ts +9 -0
- package/src/Definitions/Insteon/generated/Lock.ts +28 -0
- package/src/Definitions/Insteon/generated/OnLevelRelay.ts +11 -0
- package/src/Devices/Brultech/Generated/Channel.ts +8 -9
- package/src/Devices/Brultech/Generated/Main.ts +11 -12
- package/src/Devices/CompositeDevice.ts +277 -0
- package/src/Devices/DeviceFactory.ts +1 -1
- package/src/Devices/ISYDeviceNode.ts +8 -2
- package/src/Devices/Insteon/Generated/AlertModuleArmed.ts +7 -8
- package/src/Devices/Insteon/Generated/AlertModuleSiren.ts +7 -8
- package/src/Devices/Insteon/Generated/BallastRelayLampSwitch.ts +7 -8
- package/src/Devices/Insteon/Generated/BinaryAlarm.ts +7 -8
- package/src/Devices/Insteon/Generated/BinaryControl.ts +7 -8
- package/src/Devices/Insteon/Generated/DimmerLamp.ts +9 -10
- package/src/Devices/Insteon/Generated/DimmerLampSwitch.ts +9 -10
- package/src/Devices/Insteon/Generated/DimmerLampSwitchLed.ts +9 -10
- package/src/Devices/Insteon/Generated/DimmerMotorSwitch.ts +9 -10
- package/src/Devices/Insteon/Generated/DimmerSwitch.ts +6 -7
- package/src/Devices/Insteon/Generated/DoorLock.ts +7 -8
- package/src/Devices/Insteon/Generated/Ezio2x4Input.ts +7 -8
- package/src/Devices/Insteon/Generated/Ezio2x4Output.ts +7 -8
- package/src/Devices/Insteon/Generated/EzrainInput.ts +7 -8
- package/src/Devices/Insteon/Generated/EzrainOutput.ts +7 -8
- package/src/Devices/Insteon/Generated/FanLincMotor.ts +7 -8
- package/src/Devices/Insteon/Generated/I3KeypadFlags.ts +15 -16
- package/src/Devices/Insteon/Generated/I3PaddleFlags.ts +13 -14
- package/src/Devices/Insteon/Generated/ImeterSolo.ts +8 -9
- package/src/Devices/Insteon/Generated/IrLincTx.ts +6 -7
- package/src/Devices/Insteon/Generated/KeypadButton.ts +7 -8
- package/src/Devices/Insteon/Generated/KeypadDimmer.ts +9 -10
- package/src/Devices/Insteon/Generated/KeypadRelay.ts +7 -8
- package/src/Devices/Insteon/Generated/OnOffControl.ts +7 -8
- package/src/Devices/Insteon/Generated/Pir2844.ts +11 -12
- package/src/Devices/Insteon/Generated/Pir2844OnOff.ts +7 -8
- package/src/Devices/Insteon/Generated/Pir2844c.ts +11 -12
- package/src/Devices/Insteon/Generated/RelayLamp.ts +7 -8
- package/src/Devices/Insteon/Generated/RelayLampSwitch.ts +7 -8
- package/src/Devices/Insteon/Generated/RelayLampSwitchLed.ts +7 -8
- package/src/Devices/Insteon/Generated/RelaySwitch.ts +6 -7
- package/src/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.ts +6 -7
- package/src/Devices/Insteon/Generated/RemoteLinc2.ts +7 -8
- package/src/Devices/Insteon/Generated/Siren.ts +10 -11
- package/src/Devices/Insteon/Generated/SirenAlert.ts +6 -7
- package/src/Devices/Insteon/Generated/TempLinc.ts +13 -14
- package/src/Devices/Insteon/Generated/Thermostat.ts +13 -14
- package/src/Devices/Insteon/Generated/X10.ts +7 -8
- package/src/Devices/Insteon/InsteonDeviceFactory.ts +26 -12
- package/src/Devices/Insteon/InsteonDimmableDevice.ts +4 -4
- package/src/Devices/Insteon/InsteonDimmerOutletDevice.ts +3 -2
- package/src/Devices/Insteon/InsteonDoorWindowSensorDevice.ts +30 -7
- package/src/Devices/Insteon/InsteonFanDevice.ts +21 -36
- package/src/Devices/Insteon/InsteonOnOffOutletDevice.ts +5 -17
- package/src/Devices/Insteon/InsteonRelayDevice.ts +2 -3
- package/src/Devices/Insteon/index.ts +10 -14
- package/src/Devices/Lutron/Generated/LoadShed.ts +7 -8
- package/src/Devices/NCD/Generated/Relay.ts +19 -23
- package/src/Devices/NodeFactory.ts +1 -1
- package/src/Devices/Poly/Generated/MatterBridge.ts +6 -7
- package/src/Devices/Scene/Generated/Scene.ts +5 -6
- package/src/Devices/UDI/Generated/Channel.ts +8 -9
- package/src/Devices/UDI/Generated/Em3MainChannel.ts +11 -12
- package/src/Devices/UDI/Generated/Main.ts +8 -9
- package/src/Devices/UDI/Generated/PulseCounter.ts +9 -10
- package/src/Devices/UDI/Generated/Relay.ts +7 -8
- package/src/Devices/UDI/Generated/TemperatureSensor.ts +7 -8
- package/src/Devices/ZWave/Generated/ColorSwitch.ts +17 -18
- package/src/Devices/ZWave/Generated/DimmerSwitch.ts +7 -8
- package/src/Devices/ZigBee/ZigBeeBase.ts +22 -0
- package/src/Devices/ZigBee/index.ts +13 -0
- package/src/Devices/ZigBeeLegacy/Generated/Relay.ts +22 -20
- package/src/Devices/ZigBeeLegacy/Generated/Thermostat.ts +92 -76
- package/src/ISY.ts +27 -5
- package/src/ISYDevice.ts +4 -3
- package/src/ISYNode.ts +56 -39
- package/src/Matter/Behaviors/BehaviorRegistry.ts +44 -8
- package/src/Matter/Behaviors/ISYBridgedDeviceBehavior.ts +2 -2
- package/src/Matter/Behaviors/ISYClusterBehavior.ts +20 -9
- package/src/Matter/Behaviors/Insteon/DimmerLevelControlBehavior.ts +30 -0
- package/src/Matter/Behaviors/Insteon/IdentifyBehavior.ts +26 -0
- package/src/Matter/Behaviors/Insteon/RelayOnOffBehavior.ts +34 -0
- package/src/Matter/Behaviors/Insteon/index.ts +3 -0
- package/src/Matter/Bridge/Server.ts +93 -85
- package/src/Matter/Mappings/Insteon.ts +3 -3
- package/src/Matter/Mappings/MappingRegistry.ts +29 -40
- package/src/Registry.ts +112 -0
- package/src/Utils.ts +29 -0
- package/src/Devices/Insteon/DimmerLampSwitch.ts +0 -207
- package/src/Devices/Insteon/InsteonRelaySwitchDevice.ts +0 -11
- package/src/Devices/Insteon/RelayLampSwitch.ts +0 -132
- package/src/Matter/Behaviors/Insteon/ISYOnOffBehavior.ts +0 -66
|
@@ -17,19 +17,19 @@ const nodeDefId = "LUTLoadShed";
|
|
|
17
17
|
type Commands = LoadShed.Commands;
|
|
18
18
|
type Drivers = LoadShed.Drivers;
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
class LoadShedNode extends Base<Drivers, Commands> implements LoadShed.Interface {
|
|
21
21
|
public override readonly commands = {
|
|
22
22
|
DON: this.on,
|
|
23
23
|
DOF: this.off,
|
|
24
24
|
QUERY: this.query
|
|
25
25
|
};
|
|
26
26
|
static override nodeDefId = "LUTLoadShed";
|
|
27
|
-
static override implements = [
|
|
28
|
-
declare readonly nodeDefId:
|
|
27
|
+
static override implements = ['LUTLoadShed'];
|
|
28
|
+
declare readonly nodeDefId: 'LUTLoadShed';
|
|
29
29
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
30
30
|
super(isy, nodeInfo);
|
|
31
|
-
this.drivers.ST = Driver.create("ST", this, nodeInfo.
|
|
32
|
-
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.
|
|
31
|
+
this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
|
|
32
|
+
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
33
33
|
}
|
|
34
34
|
async on(value?: (0 | 100)) { return this.sendCommand("DON", value); }
|
|
35
35
|
async off() { return this.sendCommand("DOF"); }
|
|
@@ -46,13 +46,12 @@ NodeFactory.register(LoadShedNode);
|
|
|
46
46
|
|
|
47
47
|
export namespace LoadShed {
|
|
48
48
|
export interface Interface extends Omit<InstanceType<typeof LoadShedNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
49
|
-
nodeDefId: "LUTLoadShed";
|
|
50
49
|
}
|
|
51
50
|
export function is(node: ISYNode<any, any, any, any>): node is LoadShedNode {
|
|
52
|
-
return [
|
|
51
|
+
return ['LUTLoadShed'].includes(node.nodeDefId);
|
|
53
52
|
}
|
|
54
53
|
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is LoadShedNode {
|
|
55
|
-
return [
|
|
54
|
+
return ['LUTLoadShed'].includes(node.nodeDefId);
|
|
56
55
|
}
|
|
57
56
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
58
57
|
return new LoadShedNode(isy, nodeInfo);
|
|
@@ -17,7 +17,7 @@ const nodeDefId = "NCDRelay";
|
|
|
17
17
|
type Commands = Relay.Commands;
|
|
18
18
|
type Drivers = Relay.Drivers;
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
class RelayNode extends Base<Drivers, Commands> implements Relay.Interface {
|
|
21
21
|
public override readonly commands = {
|
|
22
22
|
DON: this.on,
|
|
23
23
|
DOF: this.off,
|
|
@@ -25,39 +25,35 @@ export class RelayNode extends Base<Drivers, Commands> implements Relay.Interfac
|
|
|
25
25
|
ADRPST: this.adr
|
|
26
26
|
};
|
|
27
27
|
static override nodeDefId = "NCDRelay";
|
|
28
|
-
static override implements = [
|
|
29
|
-
declare readonly nodeDefId:
|
|
28
|
+
static override implements = ['NCDRelay'];
|
|
29
|
+
declare readonly nodeDefId: 'NCDRelay';
|
|
30
30
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
31
31
|
super(isy, nodeInfo);
|
|
32
|
-
this.drivers.ST = Driver.create("ST", this, nodeInfo.
|
|
33
|
-
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.
|
|
32
|
+
this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
|
|
33
|
+
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
34
34
|
}
|
|
35
35
|
async on() { return this.sendCommand("DON"); }
|
|
36
36
|
async off() { return this.sendCommand("DOF"); }
|
|
37
37
|
async query() { return this.sendCommand("QUERY"); }
|
|
38
|
-
async adr(value: ) { return this.sendCommand("ADRPST", value); }
|
|
39
|
-
public get status(): {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
{
|
|
46
|
-
return this.drivers.ERR?.value;
|
|
47
|
-
}
|
|
38
|
+
async adr(value: (0 | 1)) { return this.sendCommand("ADRPST", value); }
|
|
39
|
+
public get status(): (0 | 100) {
|
|
40
|
+
return this.drivers.ST?.value;
|
|
41
|
+
}
|
|
42
|
+
public get responding(): NCD.Error {
|
|
43
|
+
return this.drivers.ERR?.value;
|
|
44
|
+
}
|
|
48
45
|
}
|
|
49
46
|
|
|
50
47
|
NodeFactory.register(RelayNode);
|
|
51
48
|
|
|
52
49
|
export namespace Relay {
|
|
53
50
|
export interface Interface extends Omit<InstanceType<typeof RelayNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
54
|
-
nodeDefId: "NCDRelay";
|
|
55
51
|
}
|
|
56
52
|
export function is(node: ISYNode<any, any, any, any>): node is RelayNode {
|
|
57
|
-
return [
|
|
53
|
+
return ['NCDRelay'].includes(node.nodeDefId);
|
|
58
54
|
}
|
|
59
55
|
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelayNode {
|
|
60
|
-
return [
|
|
56
|
+
return ['NCDRelay'].includes(node.nodeDefId);
|
|
61
57
|
}
|
|
62
58
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
63
59
|
return new RelayNode(isy, nodeInfo);
|
|
@@ -76,21 +72,21 @@ export namespace Relay {
|
|
|
76
72
|
label: "Query";
|
|
77
73
|
name: "query";
|
|
78
74
|
};
|
|
79
|
-
ADRPST: ((value: ) => Promise<boolean>) & {
|
|
75
|
+
ADRPST: ((value: (0 | 1)) => Promise<boolean>) & {
|
|
80
76
|
label: "ADR";
|
|
81
77
|
name: "adr";
|
|
82
78
|
};
|
|
83
79
|
};
|
|
84
80
|
export type Drivers = {
|
|
85
81
|
ST: {
|
|
86
|
-
uom: ;
|
|
87
|
-
value: ;
|
|
82
|
+
uom: UnitOfMeasure.Percent;
|
|
83
|
+
value: (0 | 100);
|
|
88
84
|
label: "Status";
|
|
89
85
|
name: "status";
|
|
90
86
|
};
|
|
91
87
|
ERR: {
|
|
92
|
-
uom: ;
|
|
93
|
-
value: ;
|
|
88
|
+
uom: UnitOfMeasure.Index;
|
|
89
|
+
value: NCD.Error;
|
|
94
90
|
label: "Responding";
|
|
95
91
|
name: "responding";
|
|
96
92
|
};
|
|
@@ -54,7 +54,7 @@ export namespace NodeFactory {
|
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
export function getImplements<F extends keyof typeof Family, T extends ISYNode<typeof Family[F],any,any,any>>(node: T) {
|
|
57
|
+
export function getImplements<F extends keyof typeof Family, T extends ISYNode<typeof Family[F],any,any,any>>(node: T | typeof ISYNode) : string[] {
|
|
58
58
|
return implementsRegistry[Family[node.family] as F][node.nodeDefId];
|
|
59
59
|
}
|
|
60
60
|
|
|
@@ -17,7 +17,7 @@ const nodeDefId = "CONTROLLER";
|
|
|
17
17
|
type Commands = MatterBridge.Commands;
|
|
18
18
|
type Drivers = MatterBridge.Drivers;
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
class MatterBridgeNode extends Base<Drivers, Commands> implements MatterBridge.Interface {
|
|
21
21
|
public override readonly commands = {
|
|
22
22
|
DISCOVER: this.discover,
|
|
23
23
|
QUERY: this.query,
|
|
@@ -25,11 +25,11 @@ export class MatterBridgeNode extends Base<Drivers, Commands> implements MatterB
|
|
|
25
25
|
STOP_BRIDGE: this.stopBridge
|
|
26
26
|
};
|
|
27
27
|
static override nodeDefId = "CONTROLLER";
|
|
28
|
-
static override implements = [
|
|
29
|
-
declare readonly nodeDefId:
|
|
28
|
+
static override implements = ['CONTROLLER'];
|
|
29
|
+
declare readonly nodeDefId: 'CONTROLLER';
|
|
30
30
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
31
31
|
super(isy, nodeInfo);
|
|
32
|
-
this.drivers.ST = Driver.create("ST", this, nodeInfo.
|
|
32
|
+
this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Unknown, label: "Status", name: "status" });
|
|
33
33
|
}
|
|
34
34
|
async discover() { return this.sendCommand("DISCOVER"); }
|
|
35
35
|
async query() { return this.sendCommand("QUERY"); }
|
|
@@ -45,13 +45,12 @@ NodeFactory.register(MatterBridgeNode);
|
|
|
45
45
|
|
|
46
46
|
export namespace MatterBridge {
|
|
47
47
|
export interface Interface extends Omit<InstanceType<typeof MatterBridgeNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
48
|
-
nodeDefId: "CONTROLLER";
|
|
49
48
|
}
|
|
50
49
|
export function is(node: ISYNode<any, any, any, any>): node is MatterBridgeNode {
|
|
51
|
-
return [
|
|
50
|
+
return ['CONTROLLER'].includes(node.nodeDefId);
|
|
52
51
|
}
|
|
53
52
|
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is MatterBridgeNode {
|
|
54
|
-
return [
|
|
53
|
+
return ['CONTROLLER'].includes(node.nodeDefId);
|
|
55
54
|
}
|
|
56
55
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
57
56
|
return new MatterBridgeNode(isy, nodeInfo);
|
|
@@ -17,7 +17,7 @@ const nodeDefId = "InsteonDimmer";
|
|
|
17
17
|
type Commands = Scene.Commands;
|
|
18
18
|
type Drivers = Scene.Drivers;
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
class SceneNode extends Base<Drivers, Commands> implements Scene.Interface {
|
|
21
21
|
public override readonly commands = {
|
|
22
22
|
DON: this.on,
|
|
23
23
|
DOF: this.off,
|
|
@@ -38,8 +38,8 @@ export class SceneNode extends Base<Drivers, Commands> implements Scene.Interfac
|
|
|
38
38
|
CLISPCD: this.coolSetpointShift
|
|
39
39
|
};
|
|
40
40
|
static override nodeDefId = "InsteonDimmer";
|
|
41
|
-
static override implements = [
|
|
42
|
-
declare readonly nodeDefId:
|
|
41
|
+
static override implements = ['InsteonDimmer'];
|
|
42
|
+
declare readonly nodeDefId: 'InsteonDimmer';
|
|
43
43
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
44
44
|
super(isy, nodeInfo);
|
|
45
45
|
}
|
|
@@ -66,13 +66,12 @@ NodeFactory.register(SceneNode);
|
|
|
66
66
|
|
|
67
67
|
export namespace Scene {
|
|
68
68
|
export interface Interface extends Omit<InstanceType<typeof SceneNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
69
|
-
nodeDefId: "InsteonDimmer";
|
|
70
69
|
}
|
|
71
70
|
export function is(node: ISYNode<any, any, any, any>): node is SceneNode {
|
|
72
|
-
return [
|
|
71
|
+
return ['InsteonDimmer'].includes(node.nodeDefId);
|
|
73
72
|
}
|
|
74
73
|
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is SceneNode {
|
|
75
|
-
return [
|
|
74
|
+
return ['InsteonDimmer'].includes(node.nodeDefId);
|
|
76
75
|
}
|
|
77
76
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
78
77
|
return new SceneNode(isy, nodeInfo);
|
|
@@ -17,16 +17,16 @@ const nodeDefId = "EM3Channel";
|
|
|
17
17
|
type Commands = Channel.Commands;
|
|
18
18
|
type Drivers = Channel.Drivers;
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
class ChannelNode extends Base<Drivers, Commands> implements Channel.Interface {
|
|
21
21
|
public override readonly commands = {};
|
|
22
22
|
static override nodeDefId = "EM3Channel";
|
|
23
|
-
static override implements = [
|
|
24
|
-
declare readonly nodeDefId:
|
|
23
|
+
static override implements = ['EM3Channel'];
|
|
24
|
+
declare readonly nodeDefId: 'EM3Channel';
|
|
25
25
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
26
26
|
super(isy, nodeInfo);
|
|
27
|
-
this.drivers.ST = Driver.create("ST", this, nodeInfo.
|
|
28
|
-
this.drivers.TPW = Driver.create("TPW", this, nodeInfo.
|
|
29
|
-
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.
|
|
27
|
+
this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Watt, label: "Status", name: "status" });
|
|
28
|
+
this.drivers.TPW = Driver.create("TPW", this, nodeInfo.state['TPW'], { uom: UnitOfMeasure.KilowattsPerHour, label: "Total Energy", name: "totalEnergy" });
|
|
29
|
+
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
30
30
|
}
|
|
31
31
|
public get status(): number {
|
|
32
32
|
return this.drivers.ST?.value;
|
|
@@ -43,13 +43,12 @@ NodeFactory.register(ChannelNode);
|
|
|
43
43
|
|
|
44
44
|
export namespace Channel {
|
|
45
45
|
export interface Interface extends Omit<InstanceType<typeof ChannelNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
46
|
-
nodeDefId: "EM3Channel";
|
|
47
46
|
}
|
|
48
47
|
export function is(node: ISYNode<any, any, any, any>): node is ChannelNode {
|
|
49
|
-
return [
|
|
48
|
+
return ['EM3Channel'].includes(node.nodeDefId);
|
|
50
49
|
}
|
|
51
50
|
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is ChannelNode {
|
|
52
|
-
return [
|
|
51
|
+
return ['EM3Channel', "EM3Main", "EM3MainChannel"].includes(node.nodeDefId);
|
|
53
52
|
}
|
|
54
53
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
55
54
|
return new ChannelNode(isy, nodeInfo);
|
|
@@ -17,19 +17,19 @@ const nodeDefId = "EM3MainChannel";
|
|
|
17
17
|
type Commands = Em3MainChannel.Commands;
|
|
18
18
|
type Drivers = Em3MainChannel.Drivers;
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
class Em3MainChannelNode extends Base<Drivers, Commands> implements Em3MainChannel.Interface {
|
|
21
21
|
public override readonly commands = {};
|
|
22
22
|
static override nodeDefId = "EM3MainChannel";
|
|
23
|
-
static override implements = [
|
|
24
|
-
declare readonly nodeDefId:
|
|
23
|
+
static override implements = ['EM3MainChannel'];
|
|
24
|
+
declare readonly nodeDefId: 'EM3MainChannel';
|
|
25
25
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
26
26
|
super(isy, nodeInfo);
|
|
27
|
-
this.drivers.ST = Driver.create("ST", this, nodeInfo.
|
|
28
|
-
this.drivers.TPW = Driver.create("TPW", this, nodeInfo.
|
|
29
|
-
this.drivers.CV = Driver.create("CV", this, nodeInfo.
|
|
30
|
-
this.drivers.CC = Driver.create("CC", this, nodeInfo.
|
|
31
|
-
this.drivers.PF = Driver.create("PF", this, nodeInfo.
|
|
32
|
-
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.
|
|
27
|
+
this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Watt, label: "Status", name: "status" });
|
|
28
|
+
this.drivers.TPW = Driver.create("TPW", this, nodeInfo.state['TPW'], { uom: UnitOfMeasure.KilowattsPerHour, label: "Total Energy", name: "totalEnergy" });
|
|
29
|
+
this.drivers.CV = Driver.create("CV", this, nodeInfo.state['CV'], { uom: UnitOfMeasure.Volt, label: "Current Voltage", name: "currentVoltage" });
|
|
30
|
+
this.drivers.CC = Driver.create("CC", this, nodeInfo.state['CC'], { uom: UnitOfMeasure.Ampere, label: "Current Current", name: "currentCurrent" });
|
|
31
|
+
this.drivers.PF = Driver.create("PF", this, nodeInfo.state['PF'], { uom: UnitOfMeasure.PowerFactor, label: "Power Factor", name: "powerFactor" });
|
|
32
|
+
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
33
33
|
}
|
|
34
34
|
public get status(): number {
|
|
35
35
|
return this.drivers.ST?.value;
|
|
@@ -55,13 +55,12 @@ NodeFactory.register(Em3MainChannelNode);
|
|
|
55
55
|
|
|
56
56
|
export namespace Em3MainChannel {
|
|
57
57
|
export interface Interface extends Omit<InstanceType<typeof Em3MainChannelNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
58
|
-
nodeDefId: "EM3MainChannel";
|
|
59
58
|
}
|
|
60
59
|
export function is(node: ISYNode<any, any, any, any>): node is Em3MainChannelNode {
|
|
61
|
-
return [
|
|
60
|
+
return ['EM3MainChannel'].includes(node.nodeDefId);
|
|
62
61
|
}
|
|
63
62
|
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is Em3MainChannelNode {
|
|
64
|
-
return [
|
|
63
|
+
return ['EM3MainChannel'].includes(node.nodeDefId);
|
|
65
64
|
}
|
|
66
65
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
67
66
|
return new Em3MainChannelNode(isy, nodeInfo);
|
|
@@ -17,18 +17,18 @@ const nodeDefId = "EM3Main";
|
|
|
17
17
|
type Commands = Main.Commands;
|
|
18
18
|
type Drivers = Main.Drivers;
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
class MainNode extends Base<Drivers, Commands> implements Main.Interface {
|
|
21
21
|
public override readonly commands = {
|
|
22
22
|
QUERY: this.query
|
|
23
23
|
};
|
|
24
24
|
static override nodeDefId = "EM3Main";
|
|
25
|
-
static override implements = [
|
|
26
|
-
declare readonly nodeDefId:
|
|
25
|
+
static override implements = ['EM3Main'];
|
|
26
|
+
declare readonly nodeDefId: 'EM3Main';
|
|
27
27
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
28
28
|
super(isy, nodeInfo);
|
|
29
|
-
this.drivers.ST = Driver.create("ST", this, nodeInfo.
|
|
30
|
-
this.drivers.TPW = Driver.create("TPW", this, nodeInfo.
|
|
31
|
-
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.
|
|
29
|
+
this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Watt, label: "Status", name: "status" });
|
|
30
|
+
this.drivers.TPW = Driver.create("TPW", this, nodeInfo.state['TPW'], { uom: UnitOfMeasure.KilowattsPerHour, label: "Total Energy", name: "totalEnergy" });
|
|
31
|
+
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
32
32
|
}
|
|
33
33
|
async query() { return this.sendCommand("QUERY"); }
|
|
34
34
|
public get status(): number {
|
|
@@ -46,13 +46,12 @@ NodeFactory.register(MainNode);
|
|
|
46
46
|
|
|
47
47
|
export namespace Main {
|
|
48
48
|
export interface Interface extends Omit<InstanceType<typeof MainNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
49
|
-
nodeDefId: "EM3Main";
|
|
50
49
|
}
|
|
51
50
|
export function is(node: ISYNode<any, any, any, any>): node is MainNode {
|
|
52
|
-
return [
|
|
51
|
+
return ['EM3Main'].includes(node.nodeDefId);
|
|
53
52
|
}
|
|
54
53
|
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is MainNode {
|
|
55
|
-
return [
|
|
54
|
+
return ['EM3Main'].includes(node.nodeDefId);
|
|
56
55
|
}
|
|
57
56
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
58
57
|
return new MainNode(isy, nodeInfo);
|
|
@@ -17,17 +17,17 @@ const nodeDefId = "EM3PulseCounter";
|
|
|
17
17
|
type Commands = PulseCounter.Commands;
|
|
18
18
|
type Drivers = PulseCounter.Drivers;
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
class PulseCounterNode extends Base<Drivers, Commands> implements PulseCounter.Interface {
|
|
21
21
|
public override readonly commands = {};
|
|
22
22
|
static override nodeDefId = "EM3PulseCounter";
|
|
23
|
-
static override implements = [
|
|
24
|
-
declare readonly nodeDefId:
|
|
23
|
+
static override implements = ['EM3PulseCounter'];
|
|
24
|
+
declare readonly nodeDefId: 'EM3PulseCounter';
|
|
25
25
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
26
26
|
super(isy, nodeInfo);
|
|
27
|
-
this.drivers.ST = Driver.create("ST", this, nodeInfo.
|
|
28
|
-
this.drivers.CPW = Driver.create("CPW", this, nodeInfo.
|
|
29
|
-
this.drivers.TPW = Driver.create("TPW", this, nodeInfo.
|
|
30
|
-
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.
|
|
27
|
+
this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.PulseCount, label: "Status", name: "status" });
|
|
28
|
+
this.drivers.CPW = Driver.create("CPW", this, nodeInfo.state['CPW'], { uom: UnitOfMeasure.Watt, label: "Current Power", name: "currentPower" });
|
|
29
|
+
this.drivers.TPW = Driver.create("TPW", this, nodeInfo.state['TPW'], { uom: UnitOfMeasure.KilowattsPerHour, label: "Total Energy", name: "totalEnergy" });
|
|
30
|
+
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
31
31
|
}
|
|
32
32
|
public get status(): number {
|
|
33
33
|
return this.drivers.ST?.value;
|
|
@@ -47,13 +47,12 @@ NodeFactory.register(PulseCounterNode);
|
|
|
47
47
|
|
|
48
48
|
export namespace PulseCounter {
|
|
49
49
|
export interface Interface extends Omit<InstanceType<typeof PulseCounterNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
50
|
-
nodeDefId: "EM3PulseCounter";
|
|
51
50
|
}
|
|
52
51
|
export function is(node: ISYNode<any, any, any, any>): node is PulseCounterNode {
|
|
53
|
-
return [
|
|
52
|
+
return ['EM3PulseCounter'].includes(node.nodeDefId);
|
|
54
53
|
}
|
|
55
54
|
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is PulseCounterNode {
|
|
56
|
-
return [
|
|
55
|
+
return ['EM3PulseCounter'].includes(node.nodeDefId);
|
|
57
56
|
}
|
|
58
57
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
59
58
|
return new PulseCounterNode(isy, nodeInfo);
|
|
@@ -17,19 +17,19 @@ const nodeDefId = "EM3Relay";
|
|
|
17
17
|
type Commands = Relay.Commands;
|
|
18
18
|
type Drivers = Relay.Drivers;
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
class RelayNode extends Base<Drivers, Commands> implements Relay.Interface {
|
|
21
21
|
public override readonly commands = {
|
|
22
22
|
DON: this.on,
|
|
23
23
|
DOF: this.off,
|
|
24
24
|
QUERY: this.query
|
|
25
25
|
};
|
|
26
26
|
static override nodeDefId = "EM3Relay";
|
|
27
|
-
static override implements = [
|
|
28
|
-
declare readonly nodeDefId:
|
|
27
|
+
static override implements = ['EM3Relay'];
|
|
28
|
+
declare readonly nodeDefId: 'EM3Relay';
|
|
29
29
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
30
30
|
super(isy, nodeInfo);
|
|
31
|
-
this.drivers.ST = Driver.create("ST", this, nodeInfo.
|
|
32
|
-
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.
|
|
31
|
+
this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
|
|
32
|
+
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
33
33
|
}
|
|
34
34
|
async on() { return this.sendCommand("DON"); }
|
|
35
35
|
async off() { return this.sendCommand("DOF"); }
|
|
@@ -46,13 +46,12 @@ NodeFactory.register(RelayNode);
|
|
|
46
46
|
|
|
47
47
|
export namespace Relay {
|
|
48
48
|
export interface Interface extends Omit<InstanceType<typeof RelayNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
49
|
-
nodeDefId: "EM3Relay";
|
|
50
49
|
}
|
|
51
50
|
export function is(node: ISYNode<any, any, any, any>): node is RelayNode {
|
|
52
|
-
return [
|
|
51
|
+
return ['EM3Relay'].includes(node.nodeDefId);
|
|
53
52
|
}
|
|
54
53
|
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelayNode {
|
|
55
|
-
return [
|
|
54
|
+
return ['EM3Relay'].includes(node.nodeDefId);
|
|
56
55
|
}
|
|
57
56
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
58
57
|
return new RelayNode(isy, nodeInfo);
|
|
@@ -17,15 +17,15 @@ const nodeDefId = "EM3TempSensor";
|
|
|
17
17
|
type Commands = TemperatureSensor.Commands;
|
|
18
18
|
type Drivers = TemperatureSensor.Drivers;
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
class TemperatureSensorNode extends Base<Drivers, Commands> implements TemperatureSensor.Interface {
|
|
21
21
|
public override readonly commands = {};
|
|
22
22
|
static override nodeDefId = "EM3TempSensor";
|
|
23
|
-
static override implements = [
|
|
24
|
-
declare readonly nodeDefId:
|
|
23
|
+
static override implements = ['EM3TempSensor'];
|
|
24
|
+
declare readonly nodeDefId: 'EM3TempSensor';
|
|
25
25
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
26
26
|
super(isy, nodeInfo);
|
|
27
|
-
this.drivers.ST = Driver.create("ST", this, nodeInfo.
|
|
28
|
-
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.
|
|
27
|
+
this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Degree, label: "Temperature", name: "temperature" });
|
|
28
|
+
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
29
29
|
}
|
|
30
30
|
public get temperature(): number {
|
|
31
31
|
return this.drivers.ST?.value;
|
|
@@ -39,13 +39,12 @@ NodeFactory.register(TemperatureSensorNode);
|
|
|
39
39
|
|
|
40
40
|
export namespace TemperatureSensor {
|
|
41
41
|
export interface Interface extends Omit<InstanceType<typeof TemperatureSensorNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
42
|
-
nodeDefId: "EM3TempSensor";
|
|
43
42
|
}
|
|
44
43
|
export function is(node: ISYNode<any, any, any, any>): node is TemperatureSensorNode {
|
|
45
|
-
return [
|
|
44
|
+
return ['EM3TempSensor'].includes(node.nodeDefId);
|
|
46
45
|
}
|
|
47
46
|
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is TemperatureSensorNode {
|
|
48
|
-
return [
|
|
47
|
+
return ['EM3TempSensor'].includes(node.nodeDefId);
|
|
49
48
|
}
|
|
50
49
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
51
50
|
return new TemperatureSensorNode(isy, nodeInfo);
|
|
@@ -1,5 +1,5 @@
|
|
|
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";
|
|
@@ -11,13 +11,13 @@ import { Driver } from "../../../Definitions/Global/Drivers.js";
|
|
|
11
11
|
import { ZWave } 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 = "186";
|
|
16
|
-
|
|
16
|
+
|
|
17
17
|
type Commands = ColorSwitch.Commands;
|
|
18
18
|
type Drivers = ColorSwitch.Drivers;
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
|
|
20
|
+
class ColorSwitchNode extends Base<Drivers, Commands> implements ColorSwitch.Interface {
|
|
21
21
|
public override readonly commands = {
|
|
22
22
|
DON: this.set,
|
|
23
23
|
FDUP: this.fadeUp,
|
|
@@ -26,15 +26,15 @@ export class ColorSwitchNode extends Base<Drivers, Commands> implements ColorSwi
|
|
|
26
26
|
QUERY: this.query
|
|
27
27
|
};
|
|
28
28
|
static override nodeDefId = "186";
|
|
29
|
-
static override implements = [
|
|
30
|
-
declare readonly nodeDefId:
|
|
29
|
+
static override implements = ['186'];
|
|
30
|
+
declare readonly nodeDefId: '186';
|
|
31
31
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
32
32
|
super(isy, nodeInfo);
|
|
33
|
-
this.drivers.GV0 = Driver.create("GV0", this, nodeInfo.
|
|
34
|
-
this.drivers.GV2 = Driver.create("GV2", this, nodeInfo.
|
|
35
|
-
this.drivers.GV3 = Driver.create("GV3", this, nodeInfo.
|
|
36
|
-
this.drivers.GV4 = Driver.create("GV4", this, nodeInfo.
|
|
37
|
-
this.drivers.GV1 = Driver.create("GV1", this, nodeInfo.
|
|
33
|
+
this.drivers.GV0 = Driver.create("GV0", this, nodeInfo.state['GV0'], { uom: UnitOfMeasure.Raw1ByteUnsignedValue, label: "Warm White", name: "warmWhite" });
|
|
34
|
+
this.drivers.GV2 = Driver.create("GV2", this, nodeInfo.state['GV2'], { uom: UnitOfMeasure.Raw1ByteUnsignedValue, label: "Red", name: "red" });
|
|
35
|
+
this.drivers.GV3 = Driver.create("GV3", this, nodeInfo.state['GV3'], { uom: UnitOfMeasure.Raw1ByteUnsignedValue, label: "Green", name: "green" });
|
|
36
|
+
this.drivers.GV4 = Driver.create("GV4", this, nodeInfo.state['GV4'], { uom: UnitOfMeasure.Raw1ByteUnsignedValue, label: "Blue", name: "blue" });
|
|
37
|
+
this.drivers.GV1 = Driver.create("GV1", this, nodeInfo.state['GV1'], { uom: UnitOfMeasure.Raw1ByteUnsignedValue, label: "Cold White", name: "coldWhite" });
|
|
38
38
|
}
|
|
39
39
|
async set(warmWhite?: number, red?: number, green?: number, blue?: number, duration?: number, coldWhite?: number) { return this.sendCommand("DON", { GV0: warmWhite, GV2: red, GV3: green, GV4: blue, RR: duration, GV1: coldWhite }); }
|
|
40
40
|
async fadeUp(component: ZWave.ColorComponent, startLevel?: number, duration?: number) { return this.sendCommand("FDUP", { ID: component, STARTLEVEL: startLevel, RR: duration }); }
|
|
@@ -57,18 +57,17 @@ export class ColorSwitchNode extends Base<Drivers, Commands> implements ColorSwi
|
|
|
57
57
|
return this.drivers.GV1?.value;
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
|
-
|
|
60
|
+
|
|
61
61
|
NodeFactory.register(ColorSwitchNode);
|
|
62
|
-
|
|
62
|
+
|
|
63
63
|
export namespace ColorSwitch {
|
|
64
64
|
export interface Interface extends Omit<InstanceType<typeof ColorSwitchNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
65
|
-
nodeDefId: "186";
|
|
66
65
|
}
|
|
67
66
|
export function is(node: ISYNode<any, any, any, any>): node is ColorSwitchNode {
|
|
68
|
-
return [
|
|
67
|
+
return ['186'].includes(node.nodeDefId);
|
|
69
68
|
}
|
|
70
69
|
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is ColorSwitchNode {
|
|
71
|
-
return [
|
|
70
|
+
return ['186'].includes(node.nodeDefId);
|
|
72
71
|
}
|
|
73
72
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
74
73
|
return new ColorSwitchNode(isy, nodeInfo);
|
|
@@ -17,7 +17,7 @@ const nodeDefId = "119";
|
|
|
17
17
|
type Commands = DimmerSwitch.Commands;
|
|
18
18
|
type Drivers = DimmerSwitch.Drivers;
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
class DimmerSwitchNode extends Base<Drivers, Commands> implements DimmerSwitch.Interface {
|
|
21
21
|
public override readonly commands = {
|
|
22
22
|
DON: this.on,
|
|
23
23
|
DOF: this.off,
|
|
@@ -34,12 +34,12 @@ export class DimmerSwitchNode extends Base<Drivers, Commands> implements DimmerS
|
|
|
34
34
|
WDU: this.writeChanges
|
|
35
35
|
};
|
|
36
36
|
static override nodeDefId = "119";
|
|
37
|
-
static override implements = [
|
|
38
|
-
declare readonly nodeDefId:
|
|
37
|
+
static override implements = ['119'];
|
|
38
|
+
declare readonly nodeDefId: '119';
|
|
39
39
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
40
40
|
super(isy, nodeInfo);
|
|
41
|
-
this.drivers.ST = Driver.create("ST", this, nodeInfo.
|
|
42
|
-
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.
|
|
41
|
+
this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
|
|
42
|
+
this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
|
|
43
43
|
}
|
|
44
44
|
async on(value?: number | ZWave.PercentOpt, rampRate?: number) { return this.sendCommand("DON", value, { RR: rampRate }); }
|
|
45
45
|
async off() { return this.sendCommand("DOF"); }
|
|
@@ -66,13 +66,12 @@ NodeFactory.register(DimmerSwitchNode);
|
|
|
66
66
|
|
|
67
67
|
export namespace DimmerSwitch {
|
|
68
68
|
export interface Interface extends Omit<InstanceType<typeof DimmerSwitchNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
69
|
-
nodeDefId: "119";
|
|
70
69
|
}
|
|
71
70
|
export function is(node: ISYNode<any, any, any, any>): node is DimmerSwitchNode {
|
|
72
|
-
return [
|
|
71
|
+
return ['119'].includes(node.nodeDefId);
|
|
73
72
|
}
|
|
74
73
|
export function isImplementedBy(node: ISYNode<any, any, any, any>): node is DimmerSwitchNode {
|
|
75
|
-
return [
|
|
74
|
+
return ['119'].includes(node.nodeDefId);
|
|
76
75
|
}
|
|
77
76
|
export function create(isy: ISY, nodeInfo: NodeInfo) {
|
|
78
77
|
return new DimmerSwitchNode(isy, nodeInfo);
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Family, Insteon } from '../../Definitions/Global/Families.js';
|
|
2
|
+
import { ISY } from '../../ISY.js';
|
|
3
|
+
import { byteToDegree, byteToPct, pctToByte } from '../../Utils.js';
|
|
4
|
+
import { NodeInfo } from '../../Model/NodeInfo.js';
|
|
5
|
+
import { ISYDeviceNode } from '../ISYDeviceNode.js';
|
|
6
|
+
import { ISYNode } from '../../ISYNode.js';
|
|
7
|
+
import 'winston';
|
|
8
|
+
import type { Driver } from '../../Definitions/Global/Drivers.js';
|
|
9
|
+
import type { Merge } from '@matter/general';
|
|
10
|
+
import { DynamicNode } from '../DynamicNode.js';
|
|
11
|
+
|
|
12
|
+
// import { InsteonNLS } from './insteonfam'
|
|
13
|
+
export class ZigBeeBaseDevice<D extends ISYNode.DriverSignatures, C extends ISYNode.CommandSignatures, E extends ISYNode.EventSignatures = {}> extends DynamicNode<Family.ZWave,Merge<D,Driver.Signatures<'ST'>>,C,E > {
|
|
14
|
+
|
|
15
|
+
public async getNodeDef()
|
|
16
|
+
{
|
|
17
|
+
return this.isy.sendRequest(`zmatter/zb/node/${this.address}/def/get?full=true`)
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Family as FamilyEnum } from '../../Definitions/index.js';
|
|
2
|
+
import type { ISY } from '../../ISY.js';
|
|
3
|
+
import { ISYNode } from '../../ISYNode.js';
|
|
4
|
+
import type { NodeInfo } from '../../Model/NodeInfo.js';
|
|
5
|
+
import { NodeFactory } from '../NodeFactory.js';
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
export { ZigBeeBaseDevice as Base } from './ZigBeeBase.js';
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
//export * from './Generated/index.js';
|