isy-nodejs 1.0.1-alpha.2 → 1.0.1-alpha.20
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/cjs/Converters.js +66 -30
- package/dist/cjs/Converters.js.map +1 -1
- package/dist/cjs/Definitions/Global/Drivers.js +10 -3
- package/dist/cjs/Definitions/Global/Drivers.js.map +1 -1
- package/dist/cjs/Definitions/Global/Events.js +1 -2
- package/dist/cjs/Definitions/Global/Events.js.map +1 -1
- package/dist/cjs/Devices/Elk/ElkAlarmPanelDevice.js +3 -3
- package/dist/cjs/Devices/Elk/ElkAlarmSensorDevice.js +9 -6
- package/dist/cjs/Devices/Elk/ElkAlarmSensorDevice.js.map +1 -1
- package/dist/cjs/Devices/Insteon/InsteonBaseDevice.js +5 -3
- package/dist/cjs/Devices/Insteon/InsteonBaseDevice.js.map +1 -1
- package/dist/cjs/Devices/Insteon/InsteonFanDevice.js +7 -3
- package/dist/cjs/Devices/Insteon/InsteonFanDevice.js.map +1 -1
- package/dist/cjs/Devices/Insteon/InsteonMotionSensorDevice.js +5 -5
- package/dist/cjs/Devices/Insteon/InsteonRelayDevice.js +3 -8
- package/dist/cjs/Devices/Insteon/InsteonRelayDevice.js.map +1 -1
- package/dist/cjs/Devices/Insteon/RelayLampSwitch.js +72 -0
- package/dist/cjs/Devices/Insteon/RelayLampSwitch.js.map +1 -0
- package/dist/cjs/ISY.js +58 -43
- package/dist/cjs/ISY.js.map +1 -1
- package/dist/cjs/ISYNode.js +15 -12
- package/dist/cjs/ISYNode.js.map +1 -1
- package/dist/cjs/ISYScene.js +3 -3
- package/dist/cjs/ISYScene.js.map +1 -1
- package/dist/cjs/Matter/Behaviors/ISYBridgedDeviceBehavior.js +11 -4
- package/dist/cjs/Matter/Behaviors/ISYBridgedDeviceBehavior.js.map +1 -1
- package/dist/cjs/Matter/Behaviors/ISYClusterBehavior.js +26 -7
- package/dist/cjs/Matter/Behaviors/ISYClusterBehavior.js.map +1 -1
- package/dist/cjs/Matter/Behaviors/ISYOnOffBehavior.js +11 -8
- package/dist/cjs/Matter/Behaviors/ISYOnOffBehavior.js.map +1 -1
- package/dist/cjs/Matter/{Server → Bridge}/Server.js +88 -51
- package/dist/cjs/Matter/Bridge/Server.js.map +1 -0
- package/dist/cjs/Matter/Mappings/Insteon.js +19 -15
- package/dist/cjs/Matter/Mappings/Insteon.js.map +1 -1
- package/dist/cjs/Matter/Mappings/register.js +1 -0
- package/dist/cjs/Matter/Mappings/register.js.map +1 -0
- package/dist/cjs/Model/ClusterMap.js +12 -9
- package/dist/cjs/Model/ClusterMap.js.map +1 -1
- package/dist/cjs/Utils.js +60 -9
- package/dist/cjs/Utils.js.map +1 -1
- package/dist/cjs/types/CodeGeneration/EnumFactory.d.ts +1 -1
- package/dist/cjs/types/Converters.d.ts +28 -8
- package/dist/cjs/types/Converters.d.ts.map +1 -1
- package/dist/cjs/types/Definitions/Global/Drivers.d.ts +4 -3
- package/dist/cjs/types/Definitions/Global/Drivers.d.ts.map +1 -1
- package/dist/cjs/types/Definitions/Global/Events.d.ts.map +1 -1
- package/dist/cjs/types/Devices/Elk/ElkAlarmSensorDevice.d.ts.map +1 -1
- package/dist/cjs/types/Devices/EndpointFor.d.ts +2 -2
- package/dist/cjs/types/Devices/Insteon/InsteonBaseDevice.d.ts +3 -3
- package/dist/cjs/types/Devices/Insteon/InsteonBaseDevice.d.ts.map +1 -1
- package/dist/cjs/types/Devices/Insteon/InsteonDevice.d.ts +4 -4
- package/dist/cjs/types/Devices/Insteon/InsteonFanDevice.d.ts +5 -4
- package/dist/cjs/types/Devices/Insteon/InsteonFanDevice.d.ts.map +1 -1
- package/dist/cjs/types/Devices/Insteon/InsteonRelayDevice.d.ts +2 -4
- package/dist/cjs/types/Devices/Insteon/InsteonRelayDevice.d.ts.map +1 -1
- package/dist/cjs/types/Devices/Insteon/RelayLampSwitch.d.ts +93 -0
- package/dist/cjs/types/Devices/Insteon/RelayLampSwitch.d.ts.map +1 -0
- package/dist/cjs/types/ISY.d.ts +27 -21
- package/dist/cjs/types/ISY.d.ts.map +1 -1
- package/dist/cjs/types/ISYNode.d.ts +4 -4
- package/dist/cjs/types/ISYNode.d.ts.map +1 -1
- package/dist/cjs/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts +16 -6
- package/dist/cjs/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts.map +1 -1
- package/dist/cjs/types/Matter/Behaviors/ISYClusterBehavior.d.ts +13 -11
- package/dist/cjs/types/Matter/Behaviors/ISYClusterBehavior.d.ts.map +1 -1
- package/dist/cjs/types/Matter/Behaviors/ISYOnOffBehavior.d.ts +4 -4
- package/dist/cjs/types/Matter/Behaviors/ISYOnOffBehavior.d.ts.map +1 -1
- package/dist/cjs/types/Matter/Bridge/Server.d.ts +27 -0
- package/dist/cjs/types/Matter/Bridge/Server.d.ts.map +1 -0
- package/dist/cjs/types/Matter/Mappings/register.d.ts +1 -0
- package/dist/cjs/types/Matter/Mappings/register.d.ts.map +1 -0
- package/dist/cjs/types/Model/ClusterMap.d.ts +19 -11
- package/dist/cjs/types/Model/ClusterMap.d.ts.map +1 -1
- package/dist/cjs/types/Utils.d.ts +3 -5
- package/dist/cjs/types/Utils.d.ts.map +1 -1
- package/dist/esm/Converters.js +63 -28
- package/dist/esm/Converters.js.map +1 -1
- package/dist/esm/Definitions/Global/Drivers.js +10 -3
- package/dist/esm/Definitions/Global/Drivers.js.map +1 -1
- package/dist/esm/Definitions/Global/Events.js +1 -2
- package/dist/esm/Definitions/Global/Events.js.map +1 -1
- package/dist/esm/Devices/Brultech/index.js +4 -0
- package/dist/esm/Devices/Brultech/index.js.map +1 -0
- package/dist/esm/Devices/Constructor.js +2 -0
- package/dist/esm/Devices/Constructor.js.map +1 -0
- package/dist/esm/Devices/DeviceFactory.js +13 -0
- package/dist/esm/Devices/DeviceFactory.js.map +1 -0
- package/dist/esm/Devices/DeviceMap.js +4 -0
- package/dist/esm/Devices/DeviceMap.js.map +1 -0
- package/dist/esm/Devices/Elk/ElkAlarmPanelDevice.js +181 -0
- package/dist/esm/Devices/Elk/ElkAlarmPanelDevice.js.map +1 -0
- package/dist/esm/Devices/Elk/ElkAlarmSensorDevice.js +110 -0
- package/dist/esm/Devices/Elk/ElkAlarmSensorDevice.js.map +1 -0
- package/dist/esm/Devices/EndpointFor.js +31 -0
- package/dist/esm/Devices/EndpointFor.js.map +1 -0
- package/dist/esm/Devices/ISYDevice.js +35 -0
- package/dist/esm/Devices/ISYDevice.js.map +1 -0
- package/dist/esm/Devices/ISYDeviceNode.js +62 -0
- package/dist/esm/Devices/ISYDeviceNode.js.map +1 -0
- package/dist/esm/Devices/ISYMultiNodeDevice.js +89 -0
- package/dist/esm/Devices/ISYMultiNodeDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonBallastDimmerDevice.js +8 -0
- package/dist/esm/Devices/Insteon/InsteonBallastDimmerDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonBaseDevice.js +49 -0
- package/dist/esm/Devices/Insteon/InsteonBaseDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonCOSensorDevice.js +14 -0
- package/dist/esm/Devices/Insteon/InsteonCOSensorDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonDevice.js +17 -0
- package/dist/esm/Devices/Insteon/InsteonDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonDeviceFactory.js +875 -0
- package/dist/esm/Devices/Insteon/InsteonDeviceFactory.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonDimmableDevice.js +32 -0
- package/dist/esm/Devices/Insteon/InsteonDimmableDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonDimmerOutletDevice.js +7 -0
- package/dist/esm/Devices/Insteon/InsteonDimmerOutletDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonDimmerSwitchDevice.js +8 -0
- package/dist/esm/Devices/Insteon/InsteonDimmerSwitchDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonDoorWindowSensorDevice.js +11 -0
- package/dist/esm/Devices/Insteon/InsteonDoorWindowSensorDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonFanDevice.js +60 -0
- package/dist/esm/Devices/Insteon/InsteonFanDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonKeypadDevice.js +8 -0
- package/dist/esm/Devices/Insteon/InsteonKeypadDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonKeypadDimmerDevice.js +8 -0
- package/dist/esm/Devices/Insteon/InsteonKeypadDimmerDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonKeypadRelayDevice.js +8 -0
- package/dist/esm/Devices/Insteon/InsteonKeypadRelayDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonLeakSensorDevice.js +11 -0
- package/dist/esm/Devices/Insteon/InsteonLeakSensorDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonLockDevice.js +32 -0
- package/dist/esm/Devices/Insteon/InsteonLockDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonMotionSensorDevice.js +36 -0
- package/dist/esm/Devices/Insteon/InsteonMotionSensorDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonOnOffOutletDevice.js +19 -0
- package/dist/esm/Devices/Insteon/InsteonOnOffOutletDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonRelayDevice.js +41 -0
- package/dist/esm/Devices/Insteon/InsteonRelayDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonRelaySwitchDevice.js +8 -0
- package/dist/esm/Devices/Insteon/InsteonRelaySwitchDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonSmokeSensorDevice.js +11 -0
- package/dist/esm/Devices/Insteon/InsteonSmokeSensorDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonThermostatDevice.js +30 -0
- package/dist/esm/Devices/Insteon/InsteonThermostatDevice.js.map +1 -0
- package/dist/esm/Devices/Insteon/RelayLampSwitch.js +68 -0
- package/dist/esm/Devices/Insteon/RelayLampSwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/index.js +31 -0
- package/dist/esm/Devices/Insteon/index.js.map +1 -0
- package/dist/esm/Devices/Lutron/index.js +4 -0
- package/dist/esm/Devices/Lutron/index.js.map +1 -0
- package/dist/esm/Devices/MapsTo.js +2 -0
- package/dist/esm/Devices/MapsTo.js.map +1 -0
- package/dist/esm/Devices/NCD/index.js +4 -0
- package/dist/esm/Devices/NCD/index.js.map +1 -0
- package/dist/esm/Devices/NodeFactory.js +48 -0
- package/dist/esm/Devices/NodeFactory.js.map +1 -0
- package/dist/esm/Devices/Poly/index.js +4 -0
- package/dist/esm/Devices/Poly/index.js.map +1 -0
- package/dist/esm/Devices/Scene/index.js +4 -0
- package/dist/esm/Devices/Scene/index.js.map +1 -0
- package/dist/esm/Devices/UDI/index.js +4 -0
- package/dist/esm/Devices/UDI/index.js.map +1 -0
- package/dist/esm/Devices/ZWave/ZWaveBaseDevice.js +38 -0
- package/dist/esm/Devices/ZWave/ZWaveBaseDevice.js.map +1 -0
- package/dist/esm/Devices/ZWave/ZWaveDimmerSwitchDevice.js +8 -0
- package/dist/esm/Devices/ZWave/ZWaveDimmerSwitchDevice.js.map +1 -0
- package/dist/esm/Devices/ZWave/ZWaveLockDevice.js +35 -0
- package/dist/esm/Devices/ZWave/ZWaveLockDevice.js.map +1 -0
- package/dist/esm/Devices/ZWave/index.js +20 -0
- package/dist/esm/Devices/ZWave/index.js.map +1 -0
- package/dist/esm/Devices/index.js +9 -0
- package/dist/esm/Devices/index.js.map +1 -0
- package/dist/esm/ISY.js +56 -41
- package/dist/esm/ISY.js.map +1 -1
- package/dist/esm/ISYNode.js +16 -13
- package/dist/esm/ISYNode.js.map +1 -1
- package/dist/esm/ISYScene.js +3 -3
- package/dist/esm/ISYScene.js.map +1 -1
- package/dist/esm/Matter/Behaviors/ISYBridgedDeviceBehavior.js +11 -4
- package/dist/esm/Matter/Behaviors/ISYBridgedDeviceBehavior.js.map +1 -1
- package/dist/esm/Matter/Behaviors/ISYClusterBehavior.js +26 -7
- package/dist/esm/Matter/Behaviors/ISYClusterBehavior.js.map +1 -1
- package/dist/esm/Matter/Behaviors/ISYOnOffBehavior.js +12 -9
- package/dist/esm/Matter/Behaviors/ISYOnOffBehavior.js.map +1 -1
- package/dist/esm/Matter/{Server → Bridge}/Server.js +60 -50
- package/dist/esm/Matter/Bridge/Server.js.map +1 -0
- package/dist/esm/Matter/Mappings/Insteon.js +22 -18
- package/dist/esm/Matter/Mappings/Insteon.js.map +1 -1
- package/dist/esm/Matter/Mappings/register.js +2 -0
- package/dist/esm/Matter/Mappings/register.js.map +1 -0
- package/dist/esm/Model/ClusterMap.js +12 -9
- package/dist/esm/Model/ClusterMap.js.map +1 -1
- package/dist/esm/Utils.js +55 -8
- package/dist/esm/Utils.js.map +1 -1
- package/dist/esm/types/CodeGeneration/EnumFactory.d.ts +1 -1
- package/dist/esm/types/Converters.d.ts +28 -8
- package/dist/esm/types/Converters.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Global/Drivers.d.ts +4 -3
- package/dist/esm/types/Definitions/Global/Drivers.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Global/Events.d.ts.map +1 -1
- package/dist/esm/types/Devices/Elk/ElkAlarmSensorDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/EndpointFor.d.ts +2 -2
- package/dist/esm/types/Devices/Insteon/InsteonBaseDevice.d.ts +3 -3
- package/dist/esm/types/Devices/Insteon/InsteonBaseDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts +4 -4
- package/dist/esm/types/Devices/Insteon/InsteonFanDevice.d.ts +5 -4
- package/dist/esm/types/Devices/Insteon/InsteonFanDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonRelayDevice.d.ts +2 -4
- package/dist/esm/types/Devices/Insteon/InsteonRelayDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/RelayLampSwitch.d.ts +93 -0
- package/dist/esm/types/Devices/Insteon/RelayLampSwitch.d.ts.map +1 -0
- package/dist/esm/types/ISY.d.ts +27 -21
- package/dist/esm/types/ISY.d.ts.map +1 -1
- package/dist/esm/types/ISYNode.d.ts +4 -4
- package/dist/esm/types/ISYNode.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts +16 -6
- package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/ISYClusterBehavior.d.ts +13 -11
- package/dist/esm/types/Matter/Behaviors/ISYClusterBehavior.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/ISYOnOffBehavior.d.ts +4 -4
- package/dist/esm/types/Matter/Behaviors/ISYOnOffBehavior.d.ts.map +1 -1
- package/dist/esm/types/Matter/Bridge/Server.d.ts +27 -0
- package/dist/esm/types/Matter/Bridge/Server.d.ts.map +1 -0
- package/dist/esm/types/Matter/Mappings/register.d.ts +2 -0
- package/dist/esm/types/Matter/Mappings/register.d.ts.map +1 -0
- package/dist/esm/types/Model/ClusterMap.d.ts +19 -11
- package/dist/esm/types/Model/ClusterMap.d.ts.map +1 -1
- package/dist/esm/types/Utils.d.ts +3 -5
- package/dist/esm/types/Utils.d.ts.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +4 -6
- package/src/Converters.ts +137 -69
- package/src/Definitions/Global/Drivers.ts +16 -7
- package/src/Definitions/Global/Events.ts +4 -3
- package/src/Devices/Elk/ElkAlarmPanelDevice.ts +3 -3
- package/src/Devices/Elk/ElkAlarmSensorDevice.ts +15 -21
- package/src/Devices/Insteon/Generated/RelayLamp.ts +8 -7
- package/src/Devices/Insteon/InsteonBaseDevice.ts +10 -9
- package/src/Devices/Insteon/InsteonFanDevice.ts +16 -11
- package/src/Devices/Insteon/InsteonMotionSensorDevice.ts +5 -5
- package/src/Devices/Insteon/InsteonRelayDevice.ts +3 -5
- package/src/Devices/Insteon/RelayLampSwitch.ts +131 -0
- package/src/ISY.ts +87 -61
- package/src/ISYNode.ts +17 -14
- package/src/ISYScene.ts +3 -3
- package/src/Matter/Behaviors/ISYBridgedDeviceBehavior.ts +29 -11
- package/src/Matter/Behaviors/ISYClusterBehavior.ts +46 -28
- package/src/Matter/Behaviors/ISYOnOffBehavior.ts +50 -64
- package/src/Matter/{Server → Bridge}/Server.ts +87 -59
- package/src/Matter/Mappings/Insteon.ts +53 -60
- package/src/Matter/Mappings/register.ts +0 -0
- package/src/Model/ClassDefinition.ts +1 -1
- package/src/Model/ClusterMap.ts +31 -22
- package/src/Utils.ts +62 -19
- package/tsconfig.json +2 -2
- package/dist/cjs/Matter/Server/Server.js.map +0 -1
- package/dist/cjs/types/Matter/Server/Server.d.ts +0 -4
- package/dist/cjs/types/Matter/Server/Server.d.ts.map +0 -1
- package/dist/esm/Matter/Server/Server.js.map +0 -1
- package/dist/esm/types/Matter/Server/Server.d.ts +0 -4
- package/dist/esm/types/Matter/Server/Server.d.ts.map +0 -1
|
@@ -2,33 +2,51 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ISYClusterBehavior = ISYClusterBehavior;
|
|
4
4
|
require("@project-chip/matter.js/device");
|
|
5
|
+
const Converters_js_1 = require("../../Converters.js");
|
|
5
6
|
const ISYBridgedDeviceBehavior_js_1 = require("./ISYBridgedDeviceBehavior.js");
|
|
7
|
+
// #endregion Type aliases (6)
|
|
8
|
+
// #region Functions (1)
|
|
6
9
|
function ISYClusterBehavior(base, p) {
|
|
7
10
|
return class ISYClusterBehavior extends base {
|
|
8
11
|
_device;
|
|
9
12
|
handlers = {};
|
|
13
|
+
bridgedDeviceBehavior;
|
|
10
14
|
///public map: ClusterMapping<ToClusterTypeByName<ClusterForBehavior<ConstructedType<typeof base>>["name"]>,ISYDeviceNode<any, any, any>>;
|
|
11
15
|
map;
|
|
12
16
|
async initialize(_options) {
|
|
13
17
|
await super.initialize(_options);
|
|
14
|
-
var behavior = await this.agent.load(ISYBridgedDeviceBehavior_js_1.ISYBridgedDeviceBehavior);
|
|
18
|
+
var behavior = (await this.agent.load(ISYBridgedDeviceBehavior_js_1.ISYBridgedDeviceBehavior));
|
|
19
|
+
this.bridgedDeviceBehavior = behavior;
|
|
15
20
|
//var behavior = this.agent.get(ISYBridgedDeviceBehavior);
|
|
16
21
|
this._device = behavior.device;
|
|
22
|
+
//@ts-ignore
|
|
17
23
|
this.map = behavior.mapForBehavior(this);
|
|
18
24
|
for (const key2 in this.map.attributes) {
|
|
19
|
-
|
|
20
|
-
|
|
25
|
+
let val = this.map.attributes[key2];
|
|
26
|
+
let driverObj = null;
|
|
27
|
+
if (typeof val === 'string' || typeof val === 'symbol' || typeof val === 'number') {
|
|
28
|
+
driverObj = this._device.drivers[val];
|
|
29
|
+
this.handlers[val] = (newValue, oldValue, formattedValue) => {
|
|
21
30
|
this.state[key2] = newValue;
|
|
22
31
|
};
|
|
23
32
|
}
|
|
24
|
-
else if (
|
|
25
|
-
|
|
33
|
+
else if (val.driver) {
|
|
34
|
+
driverObj = this._device.drivers[val.driver];
|
|
35
|
+
let { driver, converter } = val;
|
|
36
|
+
const convFunc = Converters_js_1.Converter.get(converter)?.from;
|
|
26
37
|
this.handlers[driver] = (newValue, oldValue, formattedValue) => {
|
|
27
|
-
|
|
38
|
+
if (convFunc)
|
|
39
|
+
this.state[key2] = convFunc(newValue);
|
|
40
|
+
else
|
|
41
|
+
this.state[key2] = newValue;
|
|
28
42
|
};
|
|
29
43
|
}
|
|
44
|
+
if (driverObj) {
|
|
45
|
+
let evt = `${driverObj.name}Changed`;
|
|
46
|
+
this.reactTo(behavior.events[evt], this.handlePropertyChange.bind(this), { lock: false });
|
|
47
|
+
}
|
|
30
48
|
}
|
|
31
|
-
this.reactTo(behavior.events.propertyChanged, this.handlePropertyChange, { lock: false });
|
|
49
|
+
//this.reactTo(behavior.events.propertyChanged, this.handlePropertyChange, { lock: false });
|
|
32
50
|
//this._device.on("PropertyChanged", this.handlePropertyChange.bind(this));
|
|
33
51
|
}
|
|
34
52
|
get device() {
|
|
@@ -53,4 +71,5 @@ function ISYClusterBehavior(base, p) {
|
|
|
53
71
|
}
|
|
54
72
|
};
|
|
55
73
|
}
|
|
74
|
+
// #endregion Functions (1)
|
|
56
75
|
//# sourceMappingURL=ISYClusterBehavior.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ISYClusterBehavior.js","sourceRoot":"","sources":["../../../../src/Matter/Behaviors/ISYClusterBehavior.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"ISYClusterBehavior.js","sourceRoot":"","sources":["../../../../src/Matter/Behaviors/ISYClusterBehavior.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ISYDimmableBehavior = exports.ISYOnOffBehavior = void 0;
|
|
4
|
-
const InsteonRelayDevice_js_1 = require("../../Devices/Insteon/InsteonRelayDevice.js");
|
|
5
|
-
const OnOffLightDevice_1 = require("@project-chip/matter.js/devices/OnOffLightDevice");
|
|
6
|
-
const ISYClusterBehavior_js_1 = require("./ISYClusterBehavior.js");
|
|
7
4
|
const DimmableLightDevice_1 = require("@project-chip/matter.js/devices/DimmableLightDevice");
|
|
5
|
+
const OnOffLightDevice_1 = require("@project-chip/matter.js/devices/OnOffLightDevice");
|
|
8
6
|
const InsteonDimmableDevice_js_1 = require("../../Devices/Insteon/InsteonDimmableDevice.js");
|
|
7
|
+
const InsteonRelayDevice_js_1 = require("../../Devices/Insteon/InsteonRelayDevice.js");
|
|
8
|
+
const ISYClusterBehavior_js_1 = require("./ISYClusterBehavior.js");
|
|
9
9
|
const Converters_js_1 = require("../../Converters.js");
|
|
10
10
|
class ISYOnOffBehavior extends (0, ISYClusterBehavior_js_1.ISYClusterBehavior)(OnOffLightDevice_1.OnOffLightRequirements.OnOffServer, InsteonRelayDevice_js_1.InsteonRelayDevice) {
|
|
11
11
|
async initialize(_options) {
|
|
@@ -14,19 +14,21 @@ class ISYOnOffBehavior extends (0, ISYClusterBehavior_js_1.ISYClusterBehavior)(O
|
|
|
14
14
|
}
|
|
15
15
|
on = async () => {
|
|
16
16
|
await super.on();
|
|
17
|
+
await this.device.on();
|
|
17
18
|
//this.device.commands.DON = true;
|
|
18
19
|
};
|
|
19
20
|
async off() {
|
|
20
|
-
|
|
21
|
+
await super.off();
|
|
22
|
+
await this.device.off();
|
|
21
23
|
// this.device.drivers = false;
|
|
22
24
|
}
|
|
23
25
|
toggle = async () => {
|
|
24
26
|
//this.device.state = !(await this.device.state);
|
|
25
27
|
};
|
|
26
28
|
async handlePropertyChange({ driver, newValue, oldValue, formattedValue }) {
|
|
27
|
-
if (driver ===
|
|
29
|
+
/*if (driver === 'ST') {
|
|
28
30
|
this.state.onOff = newValue;
|
|
29
|
-
}
|
|
31
|
+
}*/
|
|
30
32
|
return super.handlePropertyChange({ driver, newValue, oldValue, formattedValue });
|
|
31
33
|
}
|
|
32
34
|
}
|
|
@@ -34,11 +36,12 @@ exports.ISYOnOffBehavior = ISYOnOffBehavior;
|
|
|
34
36
|
class ISYDimmableBehavior extends (0, ISYClusterBehavior_js_1.ISYClusterBehavior)(DimmableLightDevice_1.DimmableLightRequirements.LevelControlServer, InsteonDimmableDevice_js_1.InsteonDimmableDevice) {
|
|
35
37
|
async initialize(_options) {
|
|
36
38
|
await super.initialize(_options);
|
|
37
|
-
this.state.
|
|
39
|
+
/*this.state.onLevel = Converter.get('Level255toZero.LightingLevel').to(this.device.drivers.OL)*/
|
|
40
|
+
//this.state.currentLevel = this.device.drivers.ST.value;
|
|
38
41
|
//this.state.onLevel = this.device.drivers.OL;
|
|
39
42
|
}
|
|
40
43
|
setLevel(level) {
|
|
41
|
-
level = Converters_js_1.
|
|
44
|
+
level = Converters_js_1.Converter.Matter.LevelFrom0To255.LightingLevel.from(level);
|
|
42
45
|
if (level > 0) {
|
|
43
46
|
return this.device.sendCommand('DON', level);
|
|
44
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ISYOnOffBehavior.js","sourceRoot":"","sources":["../../../../src/Matter/Behaviors/ISYOnOffBehavior.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ISYOnOffBehavior.js","sourceRoot":"","sources":["../../../../src/Matter/Behaviors/ISYOnOffBehavior.ts"],"names":[],"mappings":";;;AAGA,6FAAgG;AAChG,uFAA0F;AAI1F,6FAAuF;AACvF,uFAAiF;AAEjF,mEAAsG;AAEtG,uDAAgD;AAEhD,MAAa,gBAAiB,SAAQ,IAAA,0CAAkB,EAAC,yCAAsB,CAAC,WAAW,EAAE,0CAAkB,CAAC;IACtG,KAAK,CAAC,UAAU,CAAC,QAAa;QACtC,MAAM,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACjC,6CAA6C;IAC9C,CAAC;IAEQ,EAAE,GAAG,KAAK,IAAI,EAAE;QACxB,MAAM,KAAK,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QAEvB,kCAAkC;IACnC,CAAC,CAAC;IAEO,KAAK,CAAC,GAAG;QACjB,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC;QAClB,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAExB,+BAA+B;IAChC,CAAC;IAEQ,MAAM,GAAG,KAAK,IAAI,EAAE;QAC5B,iDAAiD;IAClD,CAAC,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAsC;QACrH;;WAEG;QAEH,OAAO,KAAK,CAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;IACnF,CAAC;CACD;AA/BD,4CA+BC;AAED,MAAa,mBAAoB,SAAQ,IAAA,0CAAkB,EAAC,+CAAyB,CAAC,kBAAkB,EAAE,gDAAqB,CAAC;IACtH,KAAK,CAAC,UAAU,CAAC,QAAa;QACtC,MAAM,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACjC,iGAAiG;QACjG,yDAAyD;QAEzD,8CAA8C;IAC/C,CAAC;IAEQ,QAAQ,CAAC,KAAa;QAC9B,KAAK,GAAG,yBAAS,CAAC,MAAM,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnE,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACP,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;IACF,CAAC;CACD;AAjBD,kDAiBC"}
|
|
@@ -1,6 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
2
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
29
|
+
exports.version = exports.instance = void 0;
|
|
30
|
+
exports.create = create;
|
|
31
|
+
exports.createMatterServer = createMatterServer;
|
|
32
|
+
exports.getPairingCode = getPairingCode;
|
|
33
|
+
require("@project-chip/matter-node.js");
|
|
4
34
|
const environment_1 = require("@project-chip/matter-node.js/environment");
|
|
5
35
|
const storage_1 = require("@project-chip/matter-node.js/storage");
|
|
6
36
|
const bridged_device_basic_information_1 = require("@project-chip/matter.js/behaviors/bridged-device-basic-information");
|
|
@@ -12,33 +42,43 @@ const AggregatorEndpoint_1 = require("@project-chip/matter.js/endpoints/Aggregat
|
|
|
12
42
|
const environment_2 = require("@project-chip/matter.js/environment");
|
|
13
43
|
const log_1 = require("@project-chip/matter.js/log");
|
|
14
44
|
const node_1 = require("@project-chip/matter.js/node");
|
|
45
|
+
//@ts-ignore
|
|
46
|
+
const package_json_1 = __importDefault(require("@project-chip/matter.js/package.json"));
|
|
15
47
|
const schema_1 = require("@project-chip/matter.js/schema");
|
|
16
|
-
const path_1 = require("path");
|
|
48
|
+
const path_1 = __importStar(require("path"));
|
|
49
|
+
const winston_1 = require("winston");
|
|
17
50
|
const ISY_js_1 = require("../../ISY.js");
|
|
18
51
|
const ISYBridgedDeviceBehavior_js_1 = require("../Behaviors/ISYBridgedDeviceBehavior.js");
|
|
19
52
|
const ISYOnOffBehavior_js_1 = require("../Behaviors/ISYOnOffBehavior.js");
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
//
|
|
24
|
-
//
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
//2024-07-03 16:30:43.693
|
|
38
|
-
async function createServerNode(isy = ISY_js_1.ISY.instance) {
|
|
39
|
-
var logger = isy.logger;
|
|
53
|
+
require("../Mappings/Insteon.js");
|
|
54
|
+
//@ts-ignore
|
|
55
|
+
exports.version = package_json_1.default.version;
|
|
56
|
+
// #endregion Interfaces (1)
|
|
57
|
+
// #region Functions (3)
|
|
58
|
+
function create(isy, config) {
|
|
59
|
+
return createMatterServer(isy, config);
|
|
60
|
+
}
|
|
61
|
+
async function createMatterServer(isy, config) {
|
|
62
|
+
var logger = winston_1.loggers.add('matter', {
|
|
63
|
+
transports: isy.logger.transports,
|
|
64
|
+
levels: isy.logger.levels,
|
|
65
|
+
format: winston_1.format.label({ label: 'Matter' })
|
|
66
|
+
});
|
|
67
|
+
if (isy === undefined) {
|
|
68
|
+
isy = ISY_js_1.ISY.instance;
|
|
69
|
+
}
|
|
40
70
|
try {
|
|
41
|
-
log_1.Logger.addLogger('polyLogger', (
|
|
71
|
+
log_1.Logger.addLogger('polyLogger', (lvl, message) => {
|
|
72
|
+
let msg = message.slice(23).remove(log_1.Level[lvl]).trimStart();
|
|
73
|
+
let level = log_1.Level[lvl].toLowerCase().replace('notice', 'info');
|
|
74
|
+
if (msg.startsWith('EndpointStructureLogger')) {
|
|
75
|
+
if (lvl === log_1.Level.INFO)
|
|
76
|
+
level = 'debug';
|
|
77
|
+
}
|
|
78
|
+
logger.log(level, msg);
|
|
79
|
+
},
|
|
80
|
+
/*Preserve existing formatting, but trim off date*/
|
|
81
|
+
{
|
|
42
82
|
defaultLogLevel: (0, log_1.levelFromString)(logger.level),
|
|
43
83
|
logFormat: 'plain'
|
|
44
84
|
});
|
|
@@ -46,9 +86,10 @@ async function createServerNode(isy = ISY_js_1.ISY.instance) {
|
|
|
46
86
|
finally {
|
|
47
87
|
log_1.Logger.defaultLogLevel = (0, log_1.levelFromString)(logger.level);
|
|
48
88
|
}
|
|
49
|
-
|
|
89
|
+
config = await initializeConfiguration(isy, config);
|
|
50
90
|
logger.info(`Matter config read: ${JSON.stringify(config)}`);
|
|
51
|
-
|
|
91
|
+
log_1.Logger.removeLogger('default');
|
|
92
|
+
let server = await node_1.ServerNode.create({
|
|
52
93
|
// Required: Give the Node a unique ID which is used to store the state of this node
|
|
53
94
|
id: config.uniqueId,
|
|
54
95
|
// Provide Network relevant configuration like the port
|
|
@@ -99,7 +140,8 @@ async function createServerNode(isy = ISY_js_1.ISY.instance) {
|
|
|
99
140
|
await server.add(aggregator);
|
|
100
141
|
logger.info(`Bridge Aggregator Added`);
|
|
101
142
|
const endpoints = [];
|
|
102
|
-
for (const
|
|
143
|
+
for (const node of isy.nodeMap.values()) {
|
|
144
|
+
let device = node;
|
|
103
145
|
let serialNumber = `${device.address.replaceAll(' ', '_').replaceAll('.', '_')}`;
|
|
104
146
|
if (device.enabled && !(device instanceof ISY_js_1.InsteonKeypadButtonDevice)) {
|
|
105
147
|
//const name = `OnOff ${isASocket ? "Socket" : "Light"} ${i}`;
|
|
@@ -120,6 +162,7 @@ async function createServerNode(isy = ISY_js_1.ISY.instance) {
|
|
|
120
162
|
// }
|
|
121
163
|
}
|
|
122
164
|
if (baseBehavior !== undefined) {
|
|
165
|
+
//@ts-ignore
|
|
123
166
|
const endpoint = new endpoint_1.Endpoint(baseBehavior, {
|
|
124
167
|
id: serialNumber,
|
|
125
168
|
isyNode: {
|
|
@@ -159,7 +202,7 @@ async function createServerNode(isy = ISY_js_1.ISY.instance) {
|
|
|
159
202
|
* The QR Code is printed automatically.
|
|
160
203
|
*/
|
|
161
204
|
logger.info('Bringing server online');
|
|
162
|
-
await server.
|
|
205
|
+
await server.start();
|
|
163
206
|
logger.info('Matter Server is online');
|
|
164
207
|
/**
|
|
165
208
|
* Log the endpoint structure for debugging reasons and to allow to verify anything is correct
|
|
@@ -170,11 +213,11 @@ async function createServerNode(isy = ISY_js_1.ISY.instance) {
|
|
|
170
213
|
// logEndpoint(EndpointServer.forEndpoint(server), {logAttributePrimitiveValues: true, logAttributeObjectValues: true});
|
|
171
214
|
//else if(logger.isDebugEnabled())
|
|
172
215
|
// {
|
|
173
|
-
(0, device_1.logEndpoint)(endpoint_1.EndpointServer.forEndpoint(server), { logAttributePrimitiveValues: true, logAttributeObjectValues: false });
|
|
216
|
+
(0, device_1.logEndpoint)(endpoint_1.EndpointServer.forEndpoint(server), { logAttributePrimitiveValues: true, logAttributeObjectValues: false, logClusterGlobalAttributes: false });
|
|
174
217
|
// }
|
|
175
218
|
if (server.lifecycle.isOnline) {
|
|
176
219
|
const { qrPairingCode, manualPairingCode } = server.state.commissioning.pairingCodes;
|
|
177
|
-
logger.info(schema_1.QrCode.get(qrPairingCode));
|
|
220
|
+
logger.info('\n' + schema_1.QrCode.get(qrPairingCode));
|
|
178
221
|
logger.info(`QR Code URL: https://project-chip.github.io/connectedhomeip/qrcode.html?data=${qrPairingCode}`);
|
|
179
222
|
logger.info(`Manual pairing code: ${manualPairingCode}`);
|
|
180
223
|
}
|
|
@@ -182,26 +225,20 @@ async function createServerNode(isy = ISY_js_1.ISY.instance) {
|
|
|
182
225
|
{
|
|
183
226
|
e[1].initialize(e[0] as any);
|
|
184
227
|
}*/
|
|
228
|
+
exports.instance = server;
|
|
185
229
|
return server;
|
|
186
|
-
function createBaseBehavior() {
|
|
187
|
-
let baseBehavior;
|
|
188
|
-
return baseBehavior;
|
|
189
|
-
}
|
|
190
230
|
}
|
|
191
|
-
|
|
231
|
+
function getPairingCode(server = exports.instance) {
|
|
232
|
+
let codes = server.state.commissioning.pairingCodes;
|
|
233
|
+
codes.renderedQrPairingCode = schema_1.QrCode.get(codes.qrPairingCode);
|
|
234
|
+
codes.url = `https://project-chip.github.io/connectedhomeip/qrcode.html?data=${codes.qrPairingCode}`;
|
|
235
|
+
return codes;
|
|
236
|
+
}
|
|
237
|
+
async function initializeConfiguration(isy, config) {
|
|
192
238
|
var logger = isy.logger;
|
|
193
|
-
/**
|
|
194
|
-
* Collect all needed data
|
|
195
|
-
*
|
|
196
|
-
* This block collects all needed data from cli, environment or storage. Replace this with where ever your data come from.
|
|
197
|
-
*
|
|
198
|
-
* Note: This example uses the matter.js process storage system to store the device parameter data for convenience
|
|
199
|
-
* and easy reuse. When you also do that be careful to not overlap with Matter-Server own storage contexts
|
|
200
|
-
* (so maybe better not do it ;-)).
|
|
201
|
-
*/
|
|
202
239
|
const environment = (0, environment_1.NodeJsEnvironment)();
|
|
203
240
|
const storageService = environment.get(environment_2.StorageService);
|
|
204
|
-
environment.vars.set('storage.path',
|
|
241
|
+
environment.vars.set('storage.path', path_1.default.resolve(isy.storagePath, 'matter'));
|
|
205
242
|
environment.vars.use(() => {
|
|
206
243
|
const location = environment.vars.get('storage.path', environment.vars.get('path.root', '.'));
|
|
207
244
|
storageService.location = location;
|
|
@@ -210,14 +247,14 @@ async function getConfiguration(isy) {
|
|
|
210
247
|
logger.info(`Matter storage location: ${storageService.location} (Directory)`);
|
|
211
248
|
const deviceStorage = (await storageService.open('device')).createContext('data');
|
|
212
249
|
const vendorName = isy.vendorName;
|
|
213
|
-
const passcode = environment.vars.number('passcode') ?? (await deviceStorage.get('passcode', 20202021));
|
|
214
|
-
const discriminator = environment.vars.number('discriminator') ?? (await deviceStorage.get('discriminator', 3840));
|
|
250
|
+
const passcode = config.passcode ?? environment.vars.number('passcode') ?? (await deviceStorage.get('passcode', 20202021));
|
|
251
|
+
const discriminator = config.discriminator ?? environment.vars.number('discriminator') ?? (await deviceStorage.get('discriminator', 3840));
|
|
215
252
|
// product name / id and vendor id should match what is in the device certificate
|
|
216
|
-
const vendorId = environment.vars.number('vendorid') ?? (await deviceStorage.get('vendorid', 0xfff1));
|
|
217
|
-
const productId = environment.vars.number('productid') ?? (await deviceStorage.get('productid', 0x8000));
|
|
253
|
+
const vendorId = config.vendorId ?? environment.vars.number('vendorid') ?? (await deviceStorage.get('vendorid', 0xfff1));
|
|
254
|
+
const productId = config.productId ?? environment.vars.number('productid') ?? (await deviceStorage.get('productid', 0x8000));
|
|
218
255
|
const productName = isy.productName;
|
|
219
|
-
const port = environment.vars.number('port') ?? 5540;
|
|
220
|
-
const uniqueId = isy.id;
|
|
256
|
+
const port = config.port ?? environment.vars.number('port') ?? 5540;
|
|
257
|
+
const uniqueId = isy.id.replaceAll(':', '_');
|
|
221
258
|
//environment.vars.string("uniqueid") ?? (await deviceStorage.get("uniqueid", Time.nowMs().toString()));
|
|
222
259
|
// Persist basic data to keep them also on restart
|
|
223
260
|
await deviceStorage.set({
|
|
@@ -239,5 +276,5 @@ async function getConfiguration(isy) {
|
|
|
239
276
|
uniqueId
|
|
240
277
|
};
|
|
241
278
|
}
|
|
242
|
-
// #endregion Functions (
|
|
279
|
+
// #endregion Functions (3)
|
|
243
280
|
//# sourceMappingURL=Server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Server.js","sourceRoot":"","sources":["../../../../src/Matter/Bridge/Server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const OnOffLightDevice_1 = require("@project-chip/matter.js/devices/OnOffLightDevice");
|
|
3
4
|
const Drivers_js_1 = require("../../Definitions/Global/Drivers.js");
|
|
5
|
+
const Families_js_1 = require("../../Definitions/Global/Families.js");
|
|
4
6
|
const ClusterMap_js_1 = require("../../Model/ClusterMap.js");
|
|
5
|
-
const OnOffLightDevice_1 = require("@project-chip/matter.js/devices/OnOffLightDevice");
|
|
6
7
|
//import InsteonMap from "./Insteon.json";
|
|
7
8
|
const DimmableLightDevice_1 = require("@project-chip/matter.js/devices/DimmableLightDevice");
|
|
8
9
|
const map = {
|
|
10
|
+
Family: Families_js_1.Family.Insteon,
|
|
9
11
|
Relay: {
|
|
10
12
|
deviceType: OnOffLightDevice_1.OnOffLightDevice,
|
|
11
13
|
mapping: {
|
|
12
14
|
OnOff: {
|
|
13
15
|
attributes: {
|
|
14
|
-
onOff: { driver:
|
|
16
|
+
onOff: { driver: 'ST', converter: 'Percent.Boolean' }
|
|
15
17
|
},
|
|
16
|
-
commands: { on: 'DON' }
|
|
17
|
-
}
|
|
18
|
+
commands: { on: 'DON' }
|
|
19
|
+
}
|
|
18
20
|
}
|
|
19
21
|
},
|
|
20
22
|
RelaySwitch: {
|
|
@@ -22,29 +24,31 @@ const map = {
|
|
|
22
24
|
mapping: {
|
|
23
25
|
OnOff: {
|
|
24
26
|
attributes: {
|
|
25
|
-
onOff:
|
|
27
|
+
onOff: 'ST'
|
|
26
28
|
},
|
|
27
|
-
commands: { on:
|
|
28
|
-
}
|
|
29
|
-
}
|
|
29
|
+
commands: { on: 'DON' }
|
|
30
|
+
}
|
|
31
|
+
}
|
|
30
32
|
},
|
|
31
33
|
Dimmer: {
|
|
32
34
|
deviceType: DimmableLightDevice_1.DimmableLightDevice,
|
|
33
35
|
mapping: {
|
|
34
36
|
OnOff: {
|
|
35
37
|
attributes: {
|
|
36
|
-
onOff: { driver:
|
|
38
|
+
onOff: { driver: 'ST', converter: 'LevelFrom0To255.Boolean' }
|
|
37
39
|
},
|
|
38
|
-
commands: { on:
|
|
40
|
+
commands: { on: 'DON' }
|
|
39
41
|
},
|
|
40
42
|
LevelControl: {
|
|
41
43
|
attributes: {
|
|
42
|
-
currentLevel: { driver: Drivers_js_1.DriverType.Status }
|
|
44
|
+
currentLevel: { driver: Drivers_js_1.DriverType.Status, converter: 'LevelFrom0To255.LightingLevel' }
|
|
43
45
|
},
|
|
44
|
-
commands: { moveToLevel: { command: 'DON' } }
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
}
|
|
46
|
+
commands: { moveToLevel: { command: 'DON' } }
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
48
50
|
};
|
|
51
|
+
map.KeypadDimmer = map.Dimmer;
|
|
52
|
+
map.DimmerSwitch = map.Dimmer;
|
|
49
53
|
ClusterMap_js_1.MappingRegistry.register(map);
|
|
50
54
|
//# sourceMappingURL=Insteon.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Insteon.js","sourceRoot":"","sources":["../../../../src/Matter/Mappings/Insteon.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"Insteon.js","sourceRoot":"","sources":["../../../../src/Matter/Mappings/Insteon.ts"],"names":[],"mappings":";;AAEA,uFAAoF;AACpF,oEAAiE;AACjE,sEAAsE;AAGtE,6DAAoI;AAEpI,0CAA0C;AAC1C,6FAA0F;AAI1F,MAAM,GAAG,GAAuC;IAC/C,MAAM,EAAE,oBAAM,CAAC,OAAO;IACtB,KAAK,EAAE;QACN,UAAU,EAAE,mCAAgB;QAC5B,OAAO,EAAE;YACR,KAAK,EAAE;gBACN,UAAU,EAAE;oBACX,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,iBAAiB,EAAE;iBACrD;gBACD,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE;aACvB;SACmD;KACrD;IACD,WAAW,EAAE;QACZ,UAAU,EAAE,mCAAgB;QAC5B,OAAO,EAAE;YACR,KAAK,EAAE;gBACN,UAAU,EAAE;oBACX,KAAK,EAAE,IAAI;iBACX;gBACD,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE;aACvB;SACD;KACD;IACD,MAAM,EAAE;QACP,UAAU,EAAE,yCAAmB;QAC/B,OAAO,EAAE;YACR,KAAK,EAAE;gBACN,UAAU,EAAE;oBACX,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,yBAAyB,EAAE;iBAC7D;gBACD,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE;aACvB;YACD,YAAY,EAAE;gBACb,UAAU,EAAE;oBACX,YAAY,EAAE,EAAE,MAAM,EAAE,uBAAU,CAAC,MAAM,EAAE,SAAS,EAAE,+BAA+B,EAAE;iBACvF;gBACD,QAAQ,EAAE,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;aAC7C;SACD;KACD;CACD,CAAC;AAEF,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC;AAC9B,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC;AAE9B,+BAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=register.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../../../src/Matter/Mappings/register.ts"],"names":[],"mappings":""}
|
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MappingRegistry = void 0;
|
|
4
4
|
const Drivers_js_1 = require("../Definitions/Global/Drivers.js");
|
|
5
|
+
const index_js_1 = require("../Devices/Insteon/index.js");
|
|
5
6
|
const ClusterType_js_1 = require("./ClusterType.js");
|
|
6
|
-
// #endregion Type aliases (
|
|
7
|
+
// #endregion Type aliases (16)
|
|
7
8
|
// #region Classes (1)
|
|
8
9
|
class MappingRegistry {
|
|
9
10
|
// #region Properties (1)
|
|
@@ -14,17 +15,19 @@ class MappingRegistry {
|
|
|
14
15
|
return MappingRegistry.map.get(device.constructor.name);
|
|
15
16
|
}
|
|
16
17
|
static getMappingForBehavior(device, behavior) {
|
|
17
|
-
var m = MappingRegistry.getMapping(device);
|
|
18
|
-
return m[behavior.cluster.name];
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
// }
|
|
18
|
+
//var m = MappingRegistry.getMapping(device);
|
|
19
|
+
//return m[behavior.cluster.name];
|
|
20
|
+
for (var m in MappingRegistry.getMapping(device).mapping) {
|
|
21
|
+
if (behavior.cluster.name === m)
|
|
22
|
+
return MappingRegistry.getMapping(device).mapping[m];
|
|
23
|
+
}
|
|
24
24
|
}
|
|
25
25
|
static register(map) {
|
|
26
26
|
for (var key in map) {
|
|
27
|
-
|
|
27
|
+
if (key !== 'Family') {
|
|
28
|
+
MappingRegistry.map.set(key, map[key]);
|
|
29
|
+
MappingRegistry.map.set(index_js_1.Insteon[key].name, map[key]);
|
|
30
|
+
}
|
|
28
31
|
}
|
|
29
32
|
}
|
|
30
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClusterMap.js","sourceRoot":"","sources":["../../../src/Model/ClusterMap.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ClusterMap.js","sourceRoot":"","sources":["../../../src/Model/ClusterMap.ts"],"names":[],"mappings":";;;AAYA,iEAAsE;AAEtE,0DAAsD;AAKtD,qDAA+C;AA0H/C,+BAA+B;AAE/B,sBAAsB;AAEtB,MAAa,eAAe;IAC3B,yBAAyB;IAElB,MAAM,CAAC,GAAG,GAA8C,IAAI,GAAG,EAAE,CAAC;IAEzE,4BAA4B;IAE5B,oCAAoC;IAE7B,MAAM,CAAC,UAAU,CAAwC,MAAS;QACxE,OAAO,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IAEM,MAAM,CAAC,qBAAqB,CAAmE,MAAS,EAAE,QAAW;QAC3H,6CAA6C;QAE7C,kCAAkC;QAClC,KAAK,IAAI,CAAC,IAAI,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;YAC1D,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;gBAAE,OAAO,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAqC,CAAC;QAC3H,CAAC;IACF,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,GAAqC;QAC3D,KAAK,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;YACrB,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACtB,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;gBACvC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,kBAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACtD,CAAC;QACF,CAAC;IACF,CAAC;;AA7BF,0CAgCC;AAED,yBAAyB;AAEzB,wBAAwB;AAExB,IAAI,KAAQ,CAAC;AACb,IAAI,UAAU,GAAG;IAChB,OAAO,EAAE,4BAAW,CAAC,YAAY;IACjC,UAAU,EAAE,EAAE,sBAAsB,EAAE,EAAE,MAAM,EAAE,uBAAU,CAAC,MAAM,EAAE,EAAE;IACrE,QAAQ,EAAE;QACT,WAAW,EAAE,EAAE,OAAO,EAAE,uBAAU,CAAC,cAAc,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,gBAAgB,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,EAAE,EAAE;KAC1L;CACD,CAAC;AACF,MAAM,GAAG,GAA0D;IAClE,QAAQ,EAAE,EAAE;IACZ,KAAK,EAAE;QACN,UAAU,EAAE;YACX,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;SACvB;QACD,QAAQ,EAAE;YACT,cAAc,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;SAClC;KACD;CACD,CAAC;AAEF,2BAA2B"}
|
package/dist/cjs/Utils.js
CHANGED
|
@@ -22,11 +22,13 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
22
22
|
__setModuleDefault(result, mod);
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
25
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
29
|
exports.EventEmitter = void 0;
|
|
27
30
|
exports.getEnumValueByEnumKey = getEnumValueByEnumKey;
|
|
28
31
|
exports.getEnumKeyByEnumValue = getEnumKeyByEnumValue;
|
|
29
|
-
exports.invert = invert;
|
|
30
32
|
exports.toArray = toArray;
|
|
31
33
|
exports.fromArray = fromArray;
|
|
32
34
|
exports.byteToPct = byteToPct;
|
|
@@ -43,23 +45,20 @@ exports.removeAll = removeAll;
|
|
|
43
45
|
exports.parseTypeCode = parseTypeCode;
|
|
44
46
|
exports.getCategory = getCategory;
|
|
45
47
|
exports.getSubcategory = getSubcategory;
|
|
48
|
+
exports.findPackageJson = findPackageJson;
|
|
49
|
+
exports.logStringify = logStringify;
|
|
46
50
|
const winston_1 = __importStar(require("winston"));
|
|
47
51
|
const events_1 = require("events");
|
|
48
52
|
const Categories_js_1 = require("./Definitions/Global/Categories.js");
|
|
53
|
+
const fs_1 = require("fs");
|
|
54
|
+
const promises_1 = require("fs/promises");
|
|
55
|
+
const path_1 = __importDefault(require("path"));
|
|
49
56
|
function getEnumValueByEnumKey(enumType, enumKey) {
|
|
50
57
|
return enumType[enumKey];
|
|
51
58
|
}
|
|
52
59
|
function getEnumKeyByEnumValue(enumType, enumValue) {
|
|
53
60
|
return Object.keys(enumType).find((key) => enumType[key] === enumValue);
|
|
54
61
|
}
|
|
55
|
-
//onst D: d = 'ST';
|
|
56
|
-
//type DriverLabel = Values<IdentityOf<DriverType>>;
|
|
57
|
-
function invert(converter) {
|
|
58
|
-
return {
|
|
59
|
-
from: converter.to,
|
|
60
|
-
to: converter.from
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
62
|
function toArray(value) {
|
|
64
63
|
if (undefined === value)
|
|
65
64
|
return [];
|
|
@@ -196,4 +195,56 @@ function getSubcategory(device) {
|
|
|
196
195
|
return Categories_js_1.Category.Unknown;
|
|
197
196
|
}
|
|
198
197
|
}
|
|
198
|
+
function getImportMeta() {
|
|
199
|
+
try {
|
|
200
|
+
//@ts-ignore
|
|
201
|
+
return import.meta;
|
|
202
|
+
}
|
|
203
|
+
catch (err) {
|
|
204
|
+
//@ts-ignore
|
|
205
|
+
let { dirname, filename } = { dirname: __dirname, filename: __filename };
|
|
206
|
+
return { dirname, filename };
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
async function findPackageJson(currentPath = getImportMeta().dirname) {
|
|
210
|
+
try {
|
|
211
|
+
while (currentPath !== '/') {
|
|
212
|
+
const packageJsonPath = path_1.default.join(currentPath, 'package.json');
|
|
213
|
+
if ((0, fs_1.existsSync)(packageJsonPath)) {
|
|
214
|
+
return JSON.parse(await (0, promises_1.readFile)(packageJsonPath, 'utf8'));
|
|
215
|
+
}
|
|
216
|
+
currentPath = path_1.default.join(currentPath, '..');
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
catch {
|
|
220
|
+
//@ts-expect-error
|
|
221
|
+
return (await Promise.resolve().then(() => __importStar(require('../../package.json')))).default;
|
|
222
|
+
}
|
|
223
|
+
return null;
|
|
224
|
+
}
|
|
225
|
+
function logStringify(obj, indent = 2) {
|
|
226
|
+
let cache = [];
|
|
227
|
+
const retVal = JSON.stringify(obj, (key, value) => {
|
|
228
|
+
if (typeof value === 'object' && value !== null) {
|
|
229
|
+
if (cache.includes(value)) {
|
|
230
|
+
// Circular reference found, discard key
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
// Store value in our collection
|
|
234
|
+
cache.push(value);
|
|
235
|
+
}
|
|
236
|
+
if (value instanceof Map) {
|
|
237
|
+
return [...value];
|
|
238
|
+
}
|
|
239
|
+
if (value instanceof Set) {
|
|
240
|
+
return [...value];
|
|
241
|
+
}
|
|
242
|
+
if (key.toLowerCase().includes('password')) {
|
|
243
|
+
return '********';
|
|
244
|
+
}
|
|
245
|
+
return value;
|
|
246
|
+
}, indent);
|
|
247
|
+
cache = null;
|
|
248
|
+
return retVal;
|
|
249
|
+
}
|
|
199
250
|
//# sourceMappingURL=Utils.js.map
|