homebridge-freeathome-local-api 1.2.0 → 1.4.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/.scannerwork/.sonar_lock +0 -0
- package/.scannerwork/report-task.txt +6 -0
- package/CHANGELOG.md +16 -1
- package/README.md +28 -0
- package/config.schema.json +25 -1
- package/dist/platform.d.ts +1 -0
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js +25 -3
- package/dist/platform.js.map +1 -1
- package/dist/shutterActuatorAccessory.d.ts.map +1 -1
- package/dist/shutterActuatorAccessory.js +1 -0
- package/dist/shutterActuatorAccessory.js.map +1 -1
- package/dist/switchActuatorAccessory.d.ts +4 -1
- package/dist/switchActuatorAccessory.d.ts.map +1 -1
- package/dist/switchActuatorAccessory.js +14 -4
- package/dist/switchActuatorAccessory.js.map +1 -1
- package/dist/typeMappings.d.ts +12 -0
- package/dist/typeMappings.d.ts.map +1 -0
- package/dist/typeMappings.js +12 -0
- package/dist/typeMappings.js.map +1 -0
- package/package.json +13 -13
- package/test/platform.spec.ts +72 -3
- package/test/switchActuatorAccessory.spec.ts +24 -1
|
File without changes
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
projectKey=homebridge-freeathome-local-api
|
|
2
|
+
serverUrl=https://spectre-ubuntu:30010
|
|
3
|
+
serverVersion=9.6.1.59531
|
|
4
|
+
dashboardUrl=https://spectre-ubuntu:30010/dashboard?id=homebridge-freeathome-local-api
|
|
5
|
+
ceTaskId=AYMzOpD3dP9M_ELFTlAW
|
|
6
|
+
ceTaskUrl=https://spectre-ubuntu:30010/api/ce/task?id=AYMzOpD3dP9M_ELFTlAW
|
package/CHANGELOG.md
CHANGED
|
@@ -5,11 +5,26 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.4.0](https://github.com/pgerke/homebridge-freeathome-local-api/releases/tag/1.4) - 09.10.2022
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- [PG-218](https://pgerke.atlassian.net/browse/PG-218):
|
|
13
|
+
Added an option to disable TLS certificate verification. This is useful if the System Access Point is using a self-signed TLS certificate, but should not be used lightly as it may pose a security risk.
|
|
14
|
+
|
|
15
|
+
## [1.3.0](https://github.com/pgerke/homebridge-freeathome-local-api/releases/tag/1.3) - 13.09.2022
|
|
16
|
+
|
|
17
|
+
### Added
|
|
18
|
+
|
|
19
|
+
- [PG-215](https://pgerke.atlassian.net/browse/PG-215):
|
|
20
|
+
Support mapping types. You can now define that a switch actuator shall be created as an outlet instead of a switch / light bulb.
|
|
21
|
+
|
|
8
22
|
## [1.2.0](https://github.com/pgerke/homebridge-freeathome-local-api/releases/tag/1.2) - 21.08.2022
|
|
9
23
|
|
|
10
24
|
### Added
|
|
11
25
|
|
|
12
|
-
-
|
|
26
|
+
- [PG-211](https://pgerke.atlassian.net/browse/PG-211):
|
|
27
|
+
Experimentally support blinds and shutter actuators
|
|
13
28
|
|
|
14
29
|
## 1.1.1 - 24.07.2022
|
|
15
30
|
|
package/README.md
CHANGED
|
@@ -63,6 +63,34 @@ A sample configuration section for the plugin with ignored channels might look l
|
|
|
63
63
|
}
|
|
64
64
|
```
|
|
65
65
|
|
|
66
|
+
## Type Mappings
|
|
67
|
+
|
|
68
|
+
Starting with plugin version v1.3.0, you can add type mappings to the config file to determine how certain devices are displayed in Apple Home. For example, a free@home binary switch actuator might be mapped to a light bulb, a regular switch or an outlet. Unfortunately, there is no way to determine the type of the connected device of a switch programmatically. So a type mapping is needed to advise the plugin to use another than the default service.
|
|
69
|
+
|
|
70
|
+
A sample configuration section for the plugin with type mappings might look like this:
|
|
71
|
+
|
|
72
|
+
```json
|
|
73
|
+
{
|
|
74
|
+
"name": "My free@home Setup",
|
|
75
|
+
"host": "sysap.home.net",
|
|
76
|
+
"user": "12345678-9ACB-DEF0-1234-56789ABCDEF0",
|
|
77
|
+
"password": "s3cre3tP4ssw0rt",
|
|
78
|
+
"tlsEnabled": false,
|
|
79
|
+
"verboseErrors": false,
|
|
80
|
+
"experimental": false,
|
|
81
|
+
"typeMappings": [{ "channel": "ABB700123456/ch0001", "type": "Outlet" }],
|
|
82
|
+
"platform": "FreeAtHomeLocalApi"
|
|
83
|
+
}
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Please note that **the type property is case-sensitive**, `outlet` will not work!
|
|
87
|
+
|
|
88
|
+
The following type mappings are supported:
|
|
89
|
+
|
|
90
|
+
| FunctionID | Default Service | Alternative Service | Mapping Type |
|
|
91
|
+
| ------------------------ | --------------- | ------------------- | ------------ |
|
|
92
|
+
| 7: `FID_SWITCH_ACTUATOR` | Switch | Outlet | `Outlet` |
|
|
93
|
+
|
|
66
94
|
## Requirements
|
|
67
95
|
|
|
68
96
|
- free@home Access Point running firmware version >2.6.0
|
package/config.schema.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"pluginType": "platform",
|
|
4
4
|
"singular": true,
|
|
5
5
|
"headerDisplay": "A Homebridge plugin for interfacing with a BUSCH-JAEGER free@home setup.",
|
|
6
|
-
"footerDisplay": "Control
|
|
6
|
+
"footerDisplay": "Control your free@home system with Apple Home using the System Access Point local API.",
|
|
7
7
|
"schema": {
|
|
8
8
|
"type": "object",
|
|
9
9
|
"properties": {
|
|
@@ -41,6 +41,13 @@
|
|
|
41
41
|
"required": false,
|
|
42
42
|
"default": true
|
|
43
43
|
},
|
|
44
|
+
"disableCertificateVerification": {
|
|
45
|
+
"title": "Disable TLS Certificate Verification",
|
|
46
|
+
"description": "Disables TLS certificate verification which can be useful in certain scenarios (e.g. self-signed certificates). Disabling TLS certificate verification poses a security risk!",
|
|
47
|
+
"type": "boolean",
|
|
48
|
+
"required": false,
|
|
49
|
+
"default": false
|
|
50
|
+
},
|
|
44
51
|
"verboseErrors": {
|
|
45
52
|
"title": "Verbose Errors",
|
|
46
53
|
"description": "Determines whether verbose error messages shall be used, for example for message validation. This is a debug option that should only be enabled if needed.",
|
|
@@ -63,6 +70,23 @@
|
|
|
63
70
|
"type": "string"
|
|
64
71
|
},
|
|
65
72
|
"required": false
|
|
73
|
+
},
|
|
74
|
+
"typeMappings": {
|
|
75
|
+
"title": "Type Mappings",
|
|
76
|
+
"type": "array",
|
|
77
|
+
"items": {
|
|
78
|
+
"type": "object",
|
|
79
|
+
"properties": {
|
|
80
|
+
"channel": {
|
|
81
|
+
"type": "string"
|
|
82
|
+
},
|
|
83
|
+
"type": {
|
|
84
|
+
"type": "string",
|
|
85
|
+
"enum": ["Undefined", "Outlet"]
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
"required": false
|
|
66
90
|
}
|
|
67
91
|
}
|
|
68
92
|
}
|
package/dist/platform.d.ts
CHANGED
package/dist/platform.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,qBAAqB,EACrB,MAAM,EACN,iBAAiB,EACjB,cAAc,EACd,OAAO,EACP,cAAc,EAEf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAEL,iBAAiB,EAIlB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,iBAAiB,EAAyB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,qBAAqB,EACrB,MAAM,EACN,iBAAiB,EACjB,cAAc,EACd,OAAO,EACP,cAAc,EAEf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAEL,iBAAiB,EAIlB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,iBAAiB,EAAyB,MAAM,qBAAqB,CAAC;AAgB/E,6CAA6C;AAC7C,qBAAa,4BAA6B,YAAW,qBAAqB;aA8BtD,GAAG,EAAE,MAAM;aACX,MAAM,EAAE,cAAc;aACtB,GAAG,EAAE,GAAG;IA/B1B,4BAA4B;IAC5B,SAAgB,OAAO,EAAE,OAAO,OAAO,CAAwB;IAC/D,mCAAmC;IACnC,SAAgB,cAAc,EAAE,OAAO,cAAc,CACvB;IAC9B,8CAA8C;IAC9C,SAAgB,WAAW,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,CAAM;IAC9E,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAE5B;IACP,8BAA8B;IAC9B,SAAgB,KAAK,EAAE,iBAAiB,CAAC;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0C;IACzE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmB;IAC7C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAe;IACrD,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IAEzC,OAAO,KAAK,gBAAgB,GAE3B;IAED;;;;;OAKG;gBAEe,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,GAAG;IAoG1B;;;;;;OAMG;IACI,kBAAkB,CAAC,SAAS,EAAE,iBAAiB;IA+BtD,kFAAkF;YACpE,eAAe;IAmF7B,OAAO,CAAC,eAAe;IAmDvB,OAAO,CAAC,eAAe;IAgEvB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,sBAAsB;IAqB9B,OAAO,CAAC,oBAAoB;CAsB7B"}
|
package/dist/platform.js
CHANGED
|
@@ -13,6 +13,8 @@ const smokeDetectorAccessory_1 = require("./smokeDetectorAccessory");
|
|
|
13
13
|
const motionSensorAccessory_1 = require("./motionSensorAccessory");
|
|
14
14
|
const doorOpenerAccessory_1 = require("./doorOpenerAccessory");
|
|
15
15
|
const shutterActuatorAccessory_1 = require("./shutterActuatorAccessory");
|
|
16
|
+
const typeMappings_1 = require("./typeMappings");
|
|
17
|
+
const https_1 = require("https");
|
|
16
18
|
const DelayFactor = 200;
|
|
17
19
|
/** The free@home Homebridge platform. */
|
|
18
20
|
class FreeAtHomeHomebridgePlatform {
|
|
@@ -47,6 +49,8 @@ class FreeAtHomeHomebridgePlatform {
|
|
|
47
49
|
};
|
|
48
50
|
// Create a system access point instance
|
|
49
51
|
this.sysap = new freeathome_local_api_client_1.SystemAccessPoint(this.config.host, this.config.user, this.config.password, this.config.tlsEnabled, this.config.verboseErrors, this.fahLogger);
|
|
52
|
+
https_1.globalAgent.options.rejectUnauthorized =
|
|
53
|
+
!this.config.disableCertificateVerification;
|
|
50
54
|
// React to web socket events
|
|
51
55
|
this.sysap.on("websocket-open", () => {
|
|
52
56
|
this.wsConnectionAttempt = 0;
|
|
@@ -61,7 +65,7 @@ class FreeAtHomeHomebridgePlatform {
|
|
|
61
65
|
}
|
|
62
66
|
const delay = DelayFactor * 2 ** this.wsConnectionAttempt++;
|
|
63
67
|
this.log.info(`Attempting to reconnect in ${delay}ms [${this.wsConnectionAttempt}/${this.maxWsRetryCount}]`);
|
|
64
|
-
setTimeout(() => this.sysap.connectWebSocket(this.config.
|
|
68
|
+
setTimeout(() => this.sysap.connectWebSocket(!this.config.disableCertificateVerification), delay);
|
|
65
69
|
});
|
|
66
70
|
// Subscribe to web socket messages
|
|
67
71
|
this.webSocketSubscription = this.sysap
|
|
@@ -81,7 +85,7 @@ class FreeAtHomeHomebridgePlatform {
|
|
|
81
85
|
.then(() => this.log.info(`Discovery completed: ${this.fahAccessories.size} accessories detected`))
|
|
82
86
|
.catch((error) => this.log.error("Device discovery failed", error));
|
|
83
87
|
// Connect to system access point web socket
|
|
84
|
-
this.sysap.connectWebSocket(this.config.
|
|
88
|
+
this.sysap.connectWebSocket(!this.config.disableCertificateVerification);
|
|
85
89
|
});
|
|
86
90
|
this.api.on("shutdown", () => {
|
|
87
91
|
log.debug("Executed shutdown callback");
|
|
@@ -208,10 +212,11 @@ class FreeAtHomeHomebridgePlatform {
|
|
|
208
212
|
return true;
|
|
209
213
|
}
|
|
210
214
|
createAccessory(serial, functionID, channelId, accessory) {
|
|
215
|
+
const accessoryType = this.resolveAccessoryType(serial, channelId);
|
|
211
216
|
switch (functionID.toUpperCase()) {
|
|
212
217
|
case functionId_1.FunctionID.FID_DES_AUTOMATIC_DOOR_OPENER_ACTUATOR:
|
|
213
218
|
case functionId_1.FunctionID.FID_SWITCH_ACTUATOR:
|
|
214
|
-
this.fahAccessories.set(`${serial}_${channelId}`, new switchActuatorAccessory_1.SwitchActuatorAccessory(this, accessory));
|
|
219
|
+
this.fahAccessories.set(`${serial}_${channelId}`, new switchActuatorAccessory_1.SwitchActuatorAccessory(this, accessory, accessoryType));
|
|
215
220
|
return;
|
|
216
221
|
case functionId_1.FunctionID.FID_ROOM_TEMPERATURE_CONTROLLER_MASTER_WITHOUT_FAN:
|
|
217
222
|
this.fahAccessories.set(`${serial}_${channelId}`, new roomTemperatureControllerAccessory_1.RoomTemperatureControllerAccessory(this, accessory));
|
|
@@ -262,6 +267,23 @@ class FreeAtHomeHomebridgePlatform {
|
|
|
262
267
|
.get(`${match[1]}_${match[2]}`)) === null || _a === void 0 ? void 0 : _a.updateDatapoint(match[3], message[util_1.EmptyGuid].datapoints[datapoint]);
|
|
263
268
|
});
|
|
264
269
|
}
|
|
270
|
+
resolveAccessoryType(device, channel) {
|
|
271
|
+
var _a;
|
|
272
|
+
if (!this.config.typeMappings)
|
|
273
|
+
return typeMappings_1.AccessoryType.Undefined;
|
|
274
|
+
const key = `${device.toUpperCase()}/${channel.toUpperCase()}`;
|
|
275
|
+
const mappings = this.config.typeMappings.filter((e) => e.channel.toUpperCase() === key);
|
|
276
|
+
switch (mappings.length) {
|
|
277
|
+
case 0:
|
|
278
|
+
return typeMappings_1.AccessoryType.Undefined;
|
|
279
|
+
case 1:
|
|
280
|
+
break;
|
|
281
|
+
default:
|
|
282
|
+
this.log.warn(`Multiple type mappings are defined for channel '${key}'. The first mapping is used.`);
|
|
283
|
+
break;
|
|
284
|
+
}
|
|
285
|
+
return (_a = typeMappings_1.AccessoryType[mappings[0].type]) !== null && _a !== void 0 ? _a : typeMappings_1.AccessoryType.Undefined;
|
|
286
|
+
}
|
|
265
287
|
}
|
|
266
288
|
exports.FreeAtHomeHomebridgePlatform = FreeAtHomeHomebridgePlatform;
|
|
267
289
|
//# sourceMappingURL=platform.js.map
|
package/dist/platform.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shutterActuatorAccessory.d.ts","sourceRoot":"","sources":["../src/shutterActuatorAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAG1D;;;;;;GAMG;AACH,qBAAa,wBAAyB,SAAQ,mBAAmB;IAa7D,QAAQ,CAAC,QAAQ,EAAE,4BAA4B;IAC/C,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC,iBAAiB,CAAC;IAb1D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,eAAe,CAAU;IAEjC;;;;OAIG;gBAEQ,QAAQ,EAAE,4BAA4B,EACtC,SAAS,EAAE,iBAAiB,CAAC,iBAAiB,CAAC;IA2D1D,OAAO,CAAC,gBAAgB;YAWV,iBAAiB;IAsBf,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"shutterActuatorAccessory.d.ts","sourceRoot":"","sources":["../src/shutterActuatorAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAG1D;;;;;;GAMG;AACH,qBAAa,wBAAyB,SAAQ,mBAAmB;IAa7D,QAAQ,CAAC,QAAQ,EAAE,4BAA4B;IAC/C,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC,iBAAiB,CAAC;IAb1D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,eAAe,CAAU;IAEjC;;;;OAIG;gBAEQ,QAAQ,EAAE,4BAA4B,EACtC,SAAS,EAAE,iBAAiB,CAAC,iBAAiB,CAAC;IA2D1D,OAAO,CAAC,gBAAgB;YAWV,iBAAiB;IAsBf,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;CAmCxE"}
|
|
@@ -105,6 +105,7 @@ class ShutterActuatorAccessory extends freeAtHomeAccessory_1.FreeAtHomeAccessory
|
|
|
105
105
|
case "odp0003":
|
|
106
106
|
this.stateObstructed = !!parseInt(value);
|
|
107
107
|
this.doUpdateDatapoint("Shutter Actuator", this.service, this.platform.Characteristic.ObstructionDetected, this.stateObstructed);
|
|
108
|
+
return;
|
|
108
109
|
default:
|
|
109
110
|
return;
|
|
110
111
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shutterActuatorAccessory.js","sourceRoot":"","sources":["../src/shutterActuatorAccessory.ts"],"names":[],"mappings":";;;AACA,+DAA4D;AAG5D,iCAAmC;AAEnC;;;;;;GAMG;AACH,MAAa,wBAAyB,SAAQ,yCAAmB;IAO/D;;;;OAIG;IACH,YACW,QAAsC,EACtC,SAA+C;;QAExD,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAHlB,aAAQ,GAAR,QAAQ,CAA8B;QACtC,cAAS,GAAT,SAAS,CAAsC;QAIxD,oBAAoB;QACpB,IAAI,CAAC,oBAAoB;YACvB,GAAG;gBACH,QAAQ,CAAC,MAAA,MAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,0CAAE,OAAO,CAAC,KAAK,mCAAI,KAAK,CAAC,CAAC;QAC3E,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,CAC7C,MAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,0CAAE,OAAO,CAAC,KAAK,CACtD,CAAC;QACF,MAAM,cAAc,GAAG,MAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,0CAAE,OAAO,CAAC,KAAK,CAAC;QAC5E,IAAI,CAAC,mBAAmB;YACtB,cAAc;gBACd,IAAI,CAAC,kBAAkB;oBACrB,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,OAAO;gBAClD,CAAC,CAAC,GAAG,GAAG,QAAQ,CAAC,cAAc,CAAC;gBAChC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,QAAQ,CAC/B,MAAA,MAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,0CAAE,OAAO,CAAC,KAAK,mCAAI,GAAG,CAC7D,CAAC;QAEF,wFAAwF;QACxF,IAAI,CAAC,OAAO;YACV,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC;gBAC/D,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAElE,4DAA4D;QAC5D,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC;aAC/D,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC;aACtC,QAAQ,CAAC;YACR,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,CAAC;SACX,CAAC,CAAC;QACL,0DAA0D;QAC1D,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC;aAC7D,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC;aACpC,QAAQ,CAAC;YACR,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACvB,CAAC,CAAC;QACL,2DAA2D;QAC3D,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC;aAC9D,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC;aACrC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACxC,QAAQ,CAAC;YACR,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,CAAC;SACX,CAAC,CAAC;QACL,gEAAgE;QAChE,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,mBAAmB,CAAC;aACnE,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACvC,CAAC;IAEO,gBAAgB,CAAC,KAAyB;QAChD,QAAQ,KAAK,EAAE;YACb,KAAK,GAAG;gBACN,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,UAAU,CAAC;YAC/D,KAAK,GAAG;gBACN,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,UAAU,CAAC;YAC/D;gBACE,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,OAAO,CAAC;SAC7D;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,KAA0B;QACxD,6CAA6C;QAC7C,IAAI,KAAK,IAAI,IAAI,CAAC,mBAAmB;YAAE,OAAO;;YACzC,IAAI,CAAC,mBAAmB,GAAG,KAAe,CAAC;QAEhD,YAAY;QACZ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CACpB,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,sBAC3B,IAAI,CAAC,YACP,0CAA0C,KAAK,CAAC,QAAQ,EAAE,EAAE,CAC7D,CAAC;QAEF,0BAA0B;QAC1B,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CACpC,gBAAS,EACT,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,EACnC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,EAChC,SAAS,EACT,CAAC,GAAG,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,EAAE,CAC5C,CAAC;IACJ,CAAC;IAEe,eAAe,CAAC,SAAiB,EAAE,KAAa;QAC9D,6BAA6B;QAC7B,QAAQ,SAAS,EAAE;YACjB,KAAK,SAAS;gBACZ,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBACvD,gBAAgB;gBAChB,IAAI,CAAC,iBAAiB,CACpB,kBAAkB,EAClB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,EAC1C,IAAI,CAAC,kBAAkB,CACxB,CAAC;gBACF,OAAO;YACT,KAAK,SAAS;gBACZ,IAAI,CAAC,oBAAoB,GAAG,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAClD,IAAI,CAAC,iBAAiB,CACpB,kBAAkB,EAClB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,eAAe,EAC5C,IAAI,CAAC,oBAAoB,CAC1B,CAAC;gBACF,OAAO;YACT,KAAK,SAAS;gBACZ,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACzC,IAAI,CAAC,iBAAiB,CACpB,kBAAkB,EAClB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,mBAAmB,EAChD,IAAI,CAAC,eAAe,CACrB,CAAC;
|
|
1
|
+
{"version":3,"file":"shutterActuatorAccessory.js","sourceRoot":"","sources":["../src/shutterActuatorAccessory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PlatformAccessory } from "homebridge";
|
|
2
|
+
import { AccessoryType } from "./typeMappings";
|
|
2
3
|
import { FreeAtHomeAccessory } from "./freeAtHomeAccessory";
|
|
3
4
|
import { FreeAtHomeContext } from "./freeAtHomeContext";
|
|
4
5
|
import { FreeAtHomeHomebridgePlatform } from "./platform";
|
|
@@ -12,14 +13,16 @@ import { FreeAtHomeHomebridgePlatform } from "./platform";
|
|
|
12
13
|
export declare class SwitchActuatorAccessory extends FreeAtHomeAccessory {
|
|
13
14
|
readonly platform: FreeAtHomeHomebridgePlatform;
|
|
14
15
|
readonly accessory: PlatformAccessory<FreeAtHomeContext>;
|
|
16
|
+
readonly accessoryType: AccessoryType;
|
|
15
17
|
private readonly service;
|
|
16
18
|
private stateOn;
|
|
17
19
|
/**
|
|
18
20
|
* Constructs a new switch actuator accessory instance.
|
|
19
21
|
* @param platform The free@home Homebridge platform controlling the accessory
|
|
20
22
|
* @param accessory The platform accessory.
|
|
23
|
+
* @param accessoryType The accessory type
|
|
21
24
|
*/
|
|
22
|
-
constructor(platform: FreeAtHomeHomebridgePlatform, accessory: PlatformAccessory<FreeAtHomeContext
|
|
25
|
+
constructor(platform: FreeAtHomeHomebridgePlatform, accessory: PlatformAccessory<FreeAtHomeContext>, accessoryType?: AccessoryType);
|
|
23
26
|
private setOn;
|
|
24
27
|
updateDatapoint(datapoint: string, value: string): void;
|
|
25
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switchActuatorAccessory.d.ts","sourceRoot":"","sources":["../src/switchActuatorAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAG1D;;;;;;GAMG;AACH,qBAAa,uBAAwB,SAAQ,mBAAmB;
|
|
1
|
+
{"version":3,"file":"switchActuatorAccessory.d.ts","sourceRoot":"","sources":["../src/switchActuatorAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAG1D;;;;;;GAMG;AACH,qBAAa,uBAAwB,SAAQ,mBAAmB;IAW5D,QAAQ,CAAC,QAAQ,EAAE,4BAA4B;IAC/C,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC,iBAAiB,CAAC;IACxD,QAAQ,CAAC,aAAa,EAAE,aAAa;IAZvC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,OAAO,CAAU;IAEzB;;;;;OAKG;gBAEQ,QAAQ,EAAE,4BAA4B,EACtC,SAAS,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,EAC/C,aAAa,GAAE,aAAuC;YA6BnD,KAAK;IAsBH,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;CAaxE"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SwitchActuatorAccessory = void 0;
|
|
4
|
+
const typeMappings_1 = require("./typeMappings");
|
|
4
5
|
const freeAtHomeAccessory_1 = require("./freeAtHomeAccessory");
|
|
5
6
|
const util_1 = require("./util");
|
|
6
7
|
/**
|
|
@@ -15,18 +16,27 @@ class SwitchActuatorAccessory extends freeAtHomeAccessory_1.FreeAtHomeAccessory
|
|
|
15
16
|
* Constructs a new switch actuator accessory instance.
|
|
16
17
|
* @param platform The free@home Homebridge platform controlling the accessory
|
|
17
18
|
* @param accessory The platform accessory.
|
|
19
|
+
* @param accessoryType The accessory type
|
|
18
20
|
*/
|
|
19
|
-
constructor(platform, accessory) {
|
|
21
|
+
constructor(platform, accessory, accessoryType = typeMappings_1.AccessoryType.Undefined) {
|
|
20
22
|
var _a, _b;
|
|
21
23
|
super(platform, accessory);
|
|
22
24
|
this.platform = platform;
|
|
23
25
|
this.accessory = accessory;
|
|
26
|
+
this.accessoryType = accessoryType;
|
|
24
27
|
// set initial state
|
|
25
28
|
this.stateOn = !!parseInt((_b = (_a = this.accessory.context.channel.outputs) === null || _a === void 0 ? void 0 : _a.odp0000.value) !== null && _b !== void 0 ? _b : "0");
|
|
26
|
-
|
|
29
|
+
/*
|
|
30
|
+
* Configure the service service for the switch actuator. By default the Switch service will be used.
|
|
31
|
+
* If the instance was initialized with configureAsOutlet set to true, a Outlet service will be used instead.
|
|
32
|
+
* In any case, the service instance will be re-used if it exists already, otherwise create a new instance is created.
|
|
33
|
+
*/
|
|
34
|
+
const serviceType = accessoryType === typeMappings_1.AccessoryType.Outlet
|
|
35
|
+
? this.platform.Service.Outlet
|
|
36
|
+
: this.platform.Service.Switch;
|
|
27
37
|
this.service =
|
|
28
|
-
this.accessory.getService(
|
|
29
|
-
this.accessory.addService(
|
|
38
|
+
this.accessory.getService(serviceType) ||
|
|
39
|
+
this.accessory.addService(serviceType);
|
|
30
40
|
// register handlers for the On/Off Characteristic
|
|
31
41
|
this.service
|
|
32
42
|
.getCharacteristic(this.platform.Characteristic.On)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switchActuatorAccessory.js","sourceRoot":"","sources":["../src/switchActuatorAccessory.ts"],"names":[],"mappings":";;;AACA,+DAA4D;AAG5D,iCAAmC;AAEnC;;;;;;GAMG;AACH,MAAa,uBAAwB,SAAQ,yCAAmB;IAI9D
|
|
1
|
+
{"version":3,"file":"switchActuatorAccessory.js","sourceRoot":"","sources":["../src/switchActuatorAccessory.ts"],"names":[],"mappings":";;;AACA,iDAA+C;AAC/C,+DAA4D;AAG5D,iCAAmC;AAEnC;;;;;;GAMG;AACH,MAAa,uBAAwB,SAAQ,yCAAmB;IAI9D;;;;;OAKG;IACH,YACW,QAAsC,EACtC,SAA+C,EAC/C,gBAA+B,4BAAa,CAAC,SAAS;;QAE/D,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAJlB,aAAQ,GAAR,QAAQ,CAA8B;QACtC,cAAS,GAAT,SAAS,CAAsC;QAC/C,kBAAa,GAAb,aAAa,CAAyC;QAI/D,oBAAoB;QACpB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,QAAQ,CACvB,MAAA,MAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,0CAAE,OAAO,CAAC,KAAK,mCAAI,GAAG,CAC7D,CAAC;QAEF;;;;WAIG;QACH,MAAM,WAAW,GACf,aAAa,KAAK,4BAAa,CAAC,MAAM;YACpC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM;YAC9B,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC;QACnC,IAAI,CAAC,OAAO;YACV,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC;gBACtC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAEzC,kDAAkD;QAClD,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;aAClD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC5B,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,KAA0B;QAC5C,2CAA2C;QAC3C,IAAI,KAAK,KAAK,IAAI,CAAC,OAAO;YAAE,OAAO;;YAC9B,IAAI,CAAC,OAAO,GAAG,KAAgB,CAAC;QAErC,YAAY;QACZ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CACpB,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,qBAC3B,IAAI,CAAC,YACP,8BAA8B,KAAK,CAAC,QAAQ,EAAE,EAAE,CACjD,CAAC;QAEF,0BAA0B;QAC1B,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CACpC,gBAAS,EACT,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,EACnC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,EAChC,SAAS,EACT,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAClB,CAAC;IACJ,CAAC;IAEe,eAAe,CAAC,SAAiB,EAAE,KAAa;QAC9D,6BAA6B;QAC7B,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO;QAEpC,gBAAgB;QAChB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,iBAAiB,CACpB,iBAAiB,EACjB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAC/B,IAAI,CAAC,OAAO,CACb,CAAC;IACJ,CAAC;CACF;AA7ED,0DA6EC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface TypeMapping {
|
|
2
|
+
channel: string;
|
|
3
|
+
type: keyof typeof AccessoryType;
|
|
4
|
+
}
|
|
5
|
+
/** The enumeration defining the supported accessory types */
|
|
6
|
+
export declare enum AccessoryType {
|
|
7
|
+
/** The undefined type. This is the default value. */
|
|
8
|
+
Undefined = 0,
|
|
9
|
+
/** An outlet */
|
|
10
|
+
Outlet = 1
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=typeMappings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typeMappings.d.ts","sourceRoot":"","sources":["../src/typeMappings.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,OAAO,aAAa,CAAC;CAClC;AAED,8DAA8D;AAC9D,oBAAY,aAAa;IACvB,qDAAqD;IACrD,SAAS,IAAI;IACb,gBAAgB;IAChB,MAAM,IAAA;CACP"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AccessoryType = void 0;
|
|
4
|
+
/** The enumeration defining the supported accessory types */
|
|
5
|
+
var AccessoryType;
|
|
6
|
+
(function (AccessoryType) {
|
|
7
|
+
/** The undefined type. This is the default value. */
|
|
8
|
+
AccessoryType[AccessoryType["Undefined"] = 0] = "Undefined";
|
|
9
|
+
/** An outlet */
|
|
10
|
+
AccessoryType[AccessoryType["Outlet"] = 1] = "Outlet";
|
|
11
|
+
})(AccessoryType = exports.AccessoryType || (exports.AccessoryType = {}));
|
|
12
|
+
//# sourceMappingURL=typeMappings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typeMappings.js","sourceRoot":"","sources":["../src/typeMappings.ts"],"names":[],"mappings":";;;AAKA,8DAA8D;AAC9D,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,qDAAqD;IACrD,2DAAa,CAAA;IACb,gBAAgB;IAChB,qDAAM,CAAA;AACR,CAAC,EALW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAKxB"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"displayName": "free@home Local API",
|
|
3
3
|
"name": "homebridge-freeathome-local-api",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.4.0",
|
|
5
5
|
"preview": false,
|
|
6
6
|
"description": "Control your free@home setup using the local API provided by your System Access Point",
|
|
7
7
|
"license": "MIT",
|
|
@@ -45,32 +45,32 @@
|
|
|
45
45
|
"smarthome"
|
|
46
46
|
],
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"freeathome-local-api-client": "^1.3.
|
|
48
|
+
"freeathome-local-api-client": "^1.3.4",
|
|
49
49
|
"node-fetch": "^2.6.7",
|
|
50
|
-
"rxjs": "^7.5.
|
|
50
|
+
"rxjs": "^7.5.7"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@istanbuljs/nyc-config-typescript": "^1.0.2",
|
|
54
54
|
"@types/events": "^3.0.0",
|
|
55
|
-
"@types/jasmine": "^4.0
|
|
56
|
-
"@types/node": "^18.
|
|
55
|
+
"@types/jasmine": "^4.3.0",
|
|
56
|
+
"@types/node": "^18.8.3",
|
|
57
57
|
"@types/node-fetch": "^2.6.2",
|
|
58
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
|
59
|
-
"@typescript-eslint/parser": "^5.
|
|
60
|
-
"eslint": "^8.
|
|
58
|
+
"@typescript-eslint/eslint-plugin": "^5.39.0",
|
|
59
|
+
"@typescript-eslint/parser": "^5.39.0",
|
|
60
|
+
"eslint": "^8.25.0",
|
|
61
61
|
"eslint-config-prettier": "^8.5.0",
|
|
62
62
|
"eslint-plugin-import": "^2.26.0",
|
|
63
|
-
"eslint-plugin-n": "^15.
|
|
63
|
+
"eslint-plugin-n": "^15.3.0",
|
|
64
64
|
"eslint-plugin-prettier": "^4.2.1",
|
|
65
|
-
"eslint-plugin-promise": "^6.0.
|
|
65
|
+
"eslint-plugin-promise": "^6.0.1",
|
|
66
66
|
"homebridge": "^1.5.0",
|
|
67
|
-
"jasmine": "^4.
|
|
67
|
+
"jasmine": "^4.4.0",
|
|
68
68
|
"jasmine-spec-reporter": "^7.0.0",
|
|
69
|
-
"nodemon": "^2.0.
|
|
69
|
+
"nodemon": "^2.0.20",
|
|
70
70
|
"nyc": "^15.1.0",
|
|
71
71
|
"prettier": "^2.7.1",
|
|
72
72
|
"rimraf": "^3.0.2",
|
|
73
73
|
"ts-node": "^10.9.1",
|
|
74
|
-
"typescript": "^4.
|
|
74
|
+
"typescript": "^4.8.4"
|
|
75
75
|
}
|
|
76
76
|
}
|
package/test/platform.spec.ts
CHANGED
|
@@ -14,6 +14,8 @@ import {
|
|
|
14
14
|
isFreeAtHomeAccessory,
|
|
15
15
|
} from "../src/freeAtHomeContext";
|
|
16
16
|
import { FreeAtHomeHomebridgePlatform } from "../src/platform";
|
|
17
|
+
import { SwitchActuatorAccessory } from "../src/switchActuatorAccessory";
|
|
18
|
+
import { AccessoryType } from "../src/typeMappings";
|
|
17
19
|
import { EmptyGuid } from "../src/util";
|
|
18
20
|
import { TestAccessory } from "./TestAccessory.mock";
|
|
19
21
|
|
|
@@ -96,6 +98,15 @@ const configuration: Configuration = {
|
|
|
96
98
|
},
|
|
97
99
|
},
|
|
98
100
|
},
|
|
101
|
+
ABB700000005: {
|
|
102
|
+
floor: "1",
|
|
103
|
+
room: "1",
|
|
104
|
+
channels: {
|
|
105
|
+
ch0001: {
|
|
106
|
+
functionID: "7",
|
|
107
|
+
},
|
|
108
|
+
},
|
|
109
|
+
},
|
|
99
110
|
},
|
|
100
111
|
floorplan: {
|
|
101
112
|
floors: {},
|
|
@@ -337,7 +348,7 @@ describe("free@home Homebridge Platform", () => {
|
|
|
337
348
|
platform.accessories.push(knownAccessory);
|
|
338
349
|
spyOn(platform.sysap, "getConfiguration").and.resolveTo(configuration);
|
|
339
350
|
await instance.discoverDevices();
|
|
340
|
-
expect(instance.fahAccessories.size).toBe(
|
|
351
|
+
expect(instance.fahAccessories.size).toBe(6);
|
|
341
352
|
});
|
|
342
353
|
|
|
343
354
|
it("should discover devices from the system access point without ignore list", async () => {
|
|
@@ -353,7 +364,7 @@ describe("free@home Homebridge Platform", () => {
|
|
|
353
364
|
};
|
|
354
365
|
spyOn(platform.sysap, "getConfiguration").and.resolveTo(configuration);
|
|
355
366
|
await instance.discoverDevices();
|
|
356
|
-
expect(instance.fahAccessories.size).toBe(
|
|
367
|
+
expect(instance.fahAccessories.size).toBe(9);
|
|
357
368
|
});
|
|
358
369
|
|
|
359
370
|
it("should discover devices from the system access point in experimental mode", async () => {
|
|
@@ -370,7 +381,7 @@ describe("free@home Homebridge Platform", () => {
|
|
|
370
381
|
};
|
|
371
382
|
spyOn(platform.sysap, "getConfiguration").and.resolveTo(configuration);
|
|
372
383
|
await instance.discoverDevices();
|
|
373
|
-
expect(instance.fahAccessories.size).toBe(
|
|
384
|
+
expect(instance.fahAccessories.size).toBe(9);
|
|
374
385
|
});
|
|
375
386
|
|
|
376
387
|
it("should not create an accessory for an unknown function ID", () => {
|
|
@@ -471,4 +482,62 @@ describe("free@home Homebridge Platform", () => {
|
|
|
471
482
|
expect(spy.calls.count()).toBe(1);
|
|
472
483
|
expect(spy).toHaveBeenCalledWith("odp0000", "2");
|
|
473
484
|
});
|
|
485
|
+
|
|
486
|
+
it("should resolve to mapped type", async () => {
|
|
487
|
+
config.typeMappings = [{ channel: "ABB700000005/ch0001", type: "Outlet" }];
|
|
488
|
+
const platform = new FreeAtHomeHomebridgePlatform(logger, config, api);
|
|
489
|
+
const instance = platform as unknown as {
|
|
490
|
+
readonly fahAccessories: Map<string, FreeAtHomeAccessory>;
|
|
491
|
+
discoverDevices(): Promise<void>;
|
|
492
|
+
};
|
|
493
|
+
spyOn(platform.sysap, "getConfiguration").and.resolveTo(configuration);
|
|
494
|
+
await instance.discoverDevices();
|
|
495
|
+
const accessory = instance.fahAccessories.get("ABB700000005_ch0001");
|
|
496
|
+
expect(accessory).toBeDefined();
|
|
497
|
+
expect(accessory).toBeInstanceOf(SwitchActuatorAccessory);
|
|
498
|
+
expect((accessory as SwitchActuatorAccessory).accessoryType).toBe(
|
|
499
|
+
AccessoryType.Outlet
|
|
500
|
+
);
|
|
501
|
+
});
|
|
502
|
+
|
|
503
|
+
it("should resolve to unknown mapped types to Undefined", async () => {
|
|
504
|
+
config.typeMappings = [{ channel: "ABB700000005/ch0001", type: "outlet" }];
|
|
505
|
+
const platform = new FreeAtHomeHomebridgePlatform(logger, config, api);
|
|
506
|
+
const instance = platform as unknown as {
|
|
507
|
+
readonly fahAccessories: Map<string, FreeAtHomeAccessory>;
|
|
508
|
+
discoverDevices(): Promise<void>;
|
|
509
|
+
};
|
|
510
|
+
spyOn(platform.sysap, "getConfiguration").and.resolveTo(configuration);
|
|
511
|
+
await instance.discoverDevices();
|
|
512
|
+
const accessory = instance.fahAccessories.get("ABB700000005_ch0001");
|
|
513
|
+
expect(accessory).toBeDefined();
|
|
514
|
+
expect(accessory).toBeInstanceOf(SwitchActuatorAccessory);
|
|
515
|
+
expect((accessory as SwitchActuatorAccessory).accessoryType).toBe(
|
|
516
|
+
AccessoryType.Undefined
|
|
517
|
+
);
|
|
518
|
+
});
|
|
519
|
+
|
|
520
|
+
it("should use the first mapping rule to resolve the mapped types if a channel has multiple mappings", async () => {
|
|
521
|
+
config.typeMappings = [
|
|
522
|
+
{ channel: "ABB700000005/ch0001", type: "Outlet" },
|
|
523
|
+
{ channel: "ABB700000005/ch0001", type: "outlet" },
|
|
524
|
+
];
|
|
525
|
+
const platform = new FreeAtHomeHomebridgePlatform(logger, config, api);
|
|
526
|
+
const instance = platform as unknown as {
|
|
527
|
+
readonly fahAccessories: Map<string, FreeAtHomeAccessory>;
|
|
528
|
+
discoverDevices(): Promise<void>;
|
|
529
|
+
};
|
|
530
|
+
spyOn(platform.sysap, "getConfiguration").and.resolveTo(configuration);
|
|
531
|
+
await instance.discoverDevices();
|
|
532
|
+
const accessory = instance.fahAccessories.get("ABB700000005_ch0001");
|
|
533
|
+
// eslint-disable-next-line @typescript-eslint/unbound-method
|
|
534
|
+
expect(logger.warn).toHaveBeenCalledWith(
|
|
535
|
+
"Multiple type mappings are defined for channel 'ABB700000005/CH0001'. The first mapping is used."
|
|
536
|
+
);
|
|
537
|
+
expect(accessory).toBeDefined();
|
|
538
|
+
expect(accessory).toBeInstanceOf(SwitchActuatorAccessory);
|
|
539
|
+
expect((accessory as SwitchActuatorAccessory).accessoryType).toBe(
|
|
540
|
+
AccessoryType.Outlet
|
|
541
|
+
);
|
|
542
|
+
});
|
|
474
543
|
});
|
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
import { PlatformAccessory } from "homebridge/lib/platformAccessory";
|
|
9
9
|
import { FreeAtHomeContext } from "../src/freeAtHomeContext";
|
|
10
10
|
import { SwitchActuatorAccessory } from "../src/switchActuatorAccessory";
|
|
11
|
+
import { AccessoryType } from "../src/typeMappings";
|
|
11
12
|
import { EmptyGuid } from "../src/util";
|
|
12
13
|
import { MockFreeAtHomeHomebridgePlatform } from "./platform.mock";
|
|
13
14
|
|
|
@@ -36,7 +37,7 @@ describe("Switch Actuator Accessory", () => {
|
|
|
36
37
|
platform.resetLoggerCalls();
|
|
37
38
|
});
|
|
38
39
|
|
|
39
|
-
it("should be created", async () => {
|
|
40
|
+
it("should be created as switch", async () => {
|
|
40
41
|
const accessory = new SwitchActuatorAccessory(platform, platformAccessory);
|
|
41
42
|
expect(accessory).toBeTruthy();
|
|
42
43
|
const instance = accessory as unknown as {
|
|
@@ -46,6 +47,28 @@ describe("Switch Actuator Accessory", () => {
|
|
|
46
47
|
accessory.platform.Characteristic.On
|
|
47
48
|
);
|
|
48
49
|
expect(await characteristic.handleGetRequest()).toBeFalse();
|
|
50
|
+
expect(instance.service.getServiceId()).toBe(
|
|
51
|
+
"00000049-0000-1000-8000-0026BB765291"
|
|
52
|
+
);
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
it("should be created as outlet", async () => {
|
|
56
|
+
const accessory = new SwitchActuatorAccessory(
|
|
57
|
+
platform,
|
|
58
|
+
platformAccessory,
|
|
59
|
+
AccessoryType.Outlet
|
|
60
|
+
);
|
|
61
|
+
expect(accessory).toBeTruthy();
|
|
62
|
+
const instance = accessory as unknown as {
|
|
63
|
+
service: Service;
|
|
64
|
+
};
|
|
65
|
+
const characteristic = instance.service.getCharacteristic(
|
|
66
|
+
accessory.platform.Characteristic.On
|
|
67
|
+
);
|
|
68
|
+
expect(await characteristic.handleGetRequest()).toBeFalse();
|
|
69
|
+
expect(instance.service.getServiceId()).toBe(
|
|
70
|
+
"00000047-0000-1000-8000-0026BB765291"
|
|
71
|
+
);
|
|
49
72
|
});
|
|
50
73
|
|
|
51
74
|
it("should be created with non-default state", async () => {
|