iobroker-ucl 1.0.41 → 1.0.42

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.
@@ -0,0 +1,400 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.HomematicWandschalter = exports.HomematicFussbodenheizung = exports.HomematicDoor = exports.HomematicRollladen = exports.HomematicAccessPoint = exports.HomematicWandtaster = exports.HomematicTemperatursensor = exports.HomematicRauchmelder = exports.HomematicFunkschaltaktor = exports.HomematicDimmer = exports.HomematicHeizkoerper = exports.HomematicSteckdose = exports.HomematicWindow = exports.HomematicWetterstation = exports.HomematicPraesenzmelder = exports.HomematicWandthermostat = exports.AbstractHomematic = void 0;
19
+ // https://stackoverflow.com/questions/8595509/how-do-you-share-constants-in-nodejs-modules
20
+ var deviceHomematicWandthermostat = "Wandthermostat";
21
+ var deviceHomematicPraesenzmelder = "Praesenzmelder";
22
+ var deviceHomematicWetterstation = "Wetterstation";
23
+ var deviceHomematicDoor = "Door";
24
+ var deviceHomematicRollladen = "Rollladen";
25
+ var deviceHomematicWandschalter = "Wandschalter";
26
+ var deviceHomematicFussbodenheizung = "Fussbodenheizung";
27
+ var deviceHomematicWandtaster = "Wandtaster";
28
+ var deviceHomematicAccessPoint = "AccessPoint";
29
+ var deviceHomematicTemperatursensor = "Temperatursensor";
30
+ var deviceHomematicRauchmelder = "Rauchmelder";
31
+ var deviceHomematicFunkSchaltaktor = "FunkSchaltaktor";
32
+ var deviceHomematicWindow = "Window";
33
+ var deviceHomematicSteckdose = "Steckdose";
34
+ var deviceHomematicHeizkoerper = "Heizkoerper";
35
+ var deviceHomematicDimmer = "Dimmer";
36
+ var AbstractHomematic = /** @class */ (function () {
37
+ function AbstractHomematic(adapter, id, baseState, etage, raum, device) {
38
+ this.adapter = adapter;
39
+ this.id = id;
40
+ this.etage = etage;
41
+ this.raum = raum;
42
+ this.device = device;
43
+ this.baseState = baseState;
44
+ }
45
+ AbstractHomematic.prototype.getDeviceId = function () {
46
+ return "H" + this.id.toString().padStart(2, '0');
47
+ };
48
+ AbstractHomematic.prototype.getDeviceIdAsRawNumber = function () {
49
+ return this.id;
50
+ };
51
+ AbstractHomematic.prototype.getBaseState = function () {
52
+ return this.baseState;
53
+ };
54
+ AbstractHomematic.prototype.getType = function () {
55
+ return ""; //getObject(this.baseState).native.TYPE;
56
+ };
57
+ AbstractHomematic.prototype.getEtage = function () {
58
+ return this.etage;
59
+ };
60
+ AbstractHomematic.prototype.getRaum = function () {
61
+ return this.raum;
62
+ };
63
+ AbstractHomematic.prototype.getDevice = function () {
64
+ return this.device;
65
+ };
66
+ AbstractHomematic.prototype.isStatusTotal = function () {
67
+ return this.isStatusReachable() && this.isStatusBattery() && this.isStatusDutyCycle();
68
+ };
69
+ AbstractHomematic.prototype.isStatusReachable = function () {
70
+ return !this.adapter.getState(this.baseState + ".0.UNREACH").val;
71
+ };
72
+ AbstractHomematic.prototype.isStatusBattery = function () {
73
+ return true;
74
+ };
75
+ AbstractHomematic.prototype.isStatusDutyCycle = function () {
76
+ if (this.getType().includes("HmIP")) {
77
+ return !this.adapter.getState(this.baseState + ".0.DUTY_CYCLE").val; // hm-rpc.0.000A9BE993E2F7.0.DUTY_CYCLE
78
+ }
79
+ return true;
80
+ };
81
+ AbstractHomematic.prototype.getSignal = function () {
82
+ return this.adapter.getState(this.baseState + ".0.RSSI_DEVICE").val;
83
+ };
84
+ return AbstractHomematic;
85
+ }());
86
+ exports.AbstractHomematic = AbstractHomematic;
87
+ var HomematicWandthermostat = /** @class */ (function (_super) {
88
+ __extends(HomematicWandthermostat, _super);
89
+ function HomematicWandthermostat(adapter, id, baseState, etage, raum, device) {
90
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
91
+ }
92
+ HomematicWandthermostat.prototype.getTemperatureIst = function () {
93
+ return this.adapter.getState(this.baseState + ".1.ACTUAL_TEMPERATURE").val; // hm-rpc.0.000A9BE993E2F7.1.ACTUAL_TEMPERATURE
94
+ };
95
+ HomematicWandthermostat.prototype.getTemperatureSoll = function () {
96
+ return this.adapter.getState(this.baseState + ".1.SET_POINT_TEMPERATURE").val; // hm-rpc.0.000A9BE993E2F7.1.SET_POINT_TEMPERATURE
97
+ };
98
+ HomematicWandthermostat.prototype.getHumanity = function () {
99
+ return this.adapter.getState(this.baseState + ".1.HUMIDITY").val + " %"; // hm-rpc.0.000A9BE993E2F7.1.HUMIDITY
100
+ };
101
+ HomematicWandthermostat.prototype.getCategory = function () {
102
+ return deviceHomematicWandthermostat;
103
+ };
104
+ HomematicWandthermostat.prototype.isStatusBattery = function () {
105
+ return !this.adapter.getState(this.baseState + ".0.LOW_BAT").val; // // hm-rpc.0.000A9BE993E2F7.0.LOW_BAT
106
+ };
107
+ return HomematicWandthermostat;
108
+ }(AbstractHomematic));
109
+ exports.HomematicWandthermostat = HomematicWandthermostat;
110
+ var HomematicPraesenzmelder = /** @class */ (function (_super) {
111
+ __extends(HomematicPraesenzmelder, _super);
112
+ function HomematicPraesenzmelder(adapter, id, baseState, etage, raum, device) {
113
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
114
+ }
115
+ HomematicPraesenzmelder.prototype.getCategory = function () {
116
+ return deviceHomematicPraesenzmelder;
117
+ };
118
+ HomematicPraesenzmelder.prototype.getIllumination = function () {
119
+ if (this.adapter.getState(this.baseState + ".1.CURRENT_ILLUMINATION").val != null) {
120
+ return this.adapter.getState(this.baseState + ".1.CURRENT_ILLUMINATION").val + " lux"; // hm-rpc.0.000C1BE98E093D.1.CURRENT_ILLUMINATION
121
+ }
122
+ return "-";
123
+ };
124
+ HomematicPraesenzmelder.prototype.isStatusBattery = function () {
125
+ return !this.adapter.getState(this.baseState + ".0.LOW_BAT").val; // // hm-rpc.0.000A9BE993E2F7.0.LOW_BAT
126
+ };
127
+ return HomematicPraesenzmelder;
128
+ }(AbstractHomematic));
129
+ exports.HomematicPraesenzmelder = HomematicPraesenzmelder;
130
+ var HomematicWetterstation = /** @class */ (function (_super) {
131
+ __extends(HomematicWetterstation, _super);
132
+ function HomematicWetterstation(adapter, id, baseState, etage, raum, device) {
133
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
134
+ }
135
+ HomematicWetterstation.prototype.getCategory = function () {
136
+ return deviceHomematicWetterstation;
137
+ };
138
+ HomematicWetterstation.prototype.isStatusBattery = function () {
139
+ return !this.adapter.getState(this.baseState + ".0.LOW_BAT").val; // // hm-rpc.0.000A9BE993E2F7.0.LOW_BAT
140
+ };
141
+ return HomematicWetterstation;
142
+ }(AbstractHomematic));
143
+ exports.HomematicWetterstation = HomematicWetterstation;
144
+ var HomematicWindow = /** @class */ (function (_super) {
145
+ __extends(HomematicWindow, _super);
146
+ function HomematicWindow(adapter, id, baseState, etage, raum, device) {
147
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
148
+ }
149
+ HomematicWindow.prototype.getCategory = function () {
150
+ return deviceHomematicWindow;
151
+ };
152
+ HomematicWindow.prototype.isStatusBattery = function () {
153
+ return !this.adapter.getState(this.baseState + ".0.LOW_BAT").val; // // hm-rpc.0.000A9BE993E2F7.0.LOW_BAT
154
+ };
155
+ return HomematicWindow;
156
+ }(AbstractHomematic));
157
+ exports.HomematicWindow = HomematicWindow;
158
+ var HomematicSteckdose = /** @class */ (function (_super) {
159
+ __extends(HomematicSteckdose, _super);
160
+ function HomematicSteckdose(adapter, id, baseState, etage, raum, device) {
161
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
162
+ }
163
+ HomematicSteckdose.prototype.getCategory = function () {
164
+ return deviceHomematicSteckdose;
165
+ };
166
+ return HomematicSteckdose;
167
+ }(AbstractHomematic));
168
+ exports.HomematicSteckdose = HomematicSteckdose;
169
+ var HomematicHeizkoerper = /** @class */ (function (_super) {
170
+ __extends(HomematicHeizkoerper, _super);
171
+ function HomematicHeizkoerper(adapter, id, baseState, etage, raum, device) {
172
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
173
+ }
174
+ HomematicHeizkoerper.prototype.getCategory = function () {
175
+ return deviceHomematicHeizkoerper;
176
+ };
177
+ HomematicHeizkoerper.prototype.isStatusBattery = function () {
178
+ return !this.adapter.getState(this.baseState + ".0.LOW_BAT").val; // // hm-rpc.0.000A9BE993E2F7.0.LOW_BAT
179
+ };
180
+ return HomematicHeizkoerper;
181
+ }(AbstractHomematic));
182
+ exports.HomematicHeizkoerper = HomematicHeizkoerper;
183
+ var HomematicDimmer = /** @class */ (function (_super) {
184
+ __extends(HomematicDimmer, _super);
185
+ function HomematicDimmer(adapter, id, baseState, etage, raum, device) {
186
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
187
+ }
188
+ HomematicDimmer.prototype.getCategory = function () {
189
+ return deviceHomematicDimmer;
190
+ };
191
+ return HomematicDimmer;
192
+ }(AbstractHomematic));
193
+ exports.HomematicDimmer = HomematicDimmer;
194
+ var HomematicFunkschaltaktor = /** @class */ (function (_super) {
195
+ __extends(HomematicFunkschaltaktor, _super);
196
+ function HomematicFunkschaltaktor(adapter, id, baseState, etage, raum, device) {
197
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
198
+ }
199
+ HomematicFunkschaltaktor.prototype.getCategory = function () {
200
+ return deviceHomematicFunkSchaltaktor;
201
+ };
202
+ return HomematicFunkschaltaktor;
203
+ }(AbstractHomematic));
204
+ exports.HomematicFunkschaltaktor = HomematicFunkschaltaktor;
205
+ var HomematicRauchmelder = /** @class */ (function (_super) {
206
+ __extends(HomematicRauchmelder, _super);
207
+ function HomematicRauchmelder(adapter, id, baseState, etage, raum, device) {
208
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
209
+ }
210
+ HomematicRauchmelder.prototype.getCategory = function () {
211
+ return deviceHomematicRauchmelder;
212
+ };
213
+ HomematicRauchmelder.prototype.isStatusBattery = function () {
214
+ return !this.adapter.getState(this.baseState + ".0.LOW_BAT").val; // // hm-rpc.0.000A9BE993E2F7.0.LOW_BAT
215
+ };
216
+ return HomematicRauchmelder;
217
+ }(AbstractHomematic));
218
+ exports.HomematicRauchmelder = HomematicRauchmelder;
219
+ var HomematicTemperatursensor = /** @class */ (function (_super) {
220
+ __extends(HomematicTemperatursensor, _super);
221
+ function HomematicTemperatursensor(adapter, id, baseState, etage, raum, device) {
222
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
223
+ }
224
+ HomematicTemperatursensor.prototype.getTemperatureIst = function () {
225
+ return this.adapter.getState(this.baseState + ".1.ACTUAL_TEMPERATURE").val + " °C";
226
+ };
227
+ HomematicTemperatursensor.prototype.getHumanity = function () {
228
+ return this.adapter.getState(this.baseState + ".1.HUMIDITY").val + " %"; // hm-rpc.0.00181BE98EF50E.1.HUMIDITY
229
+ };
230
+ HomematicTemperatursensor.prototype.getCategory = function () {
231
+ return deviceHomematicTemperatursensor;
232
+ };
233
+ HomematicTemperatursensor.prototype.isStatusBattery = function () {
234
+ return !this.adapter.getState(this.baseState + ".0.LOW_BAT").val; // // hm-rpc.0.000A9BE993E2F7.0.LOW_BAT
235
+ };
236
+ return HomematicTemperatursensor;
237
+ }(AbstractHomematic));
238
+ exports.HomematicTemperatursensor = HomematicTemperatursensor;
239
+ var HomematicWandtaster = /** @class */ (function (_super) {
240
+ __extends(HomematicWandtaster, _super);
241
+ function HomematicWandtaster(adapter, id, baseState, etage, raum, device) {
242
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
243
+ }
244
+ HomematicWandtaster.prototype.getCategory = function () {
245
+ return deviceHomematicWandtaster;
246
+ };
247
+ return HomematicWandtaster;
248
+ }(AbstractHomematic));
249
+ exports.HomematicWandtaster = HomematicWandtaster;
250
+ var HomematicAccessPoint = /** @class */ (function (_super) {
251
+ __extends(HomematicAccessPoint, _super);
252
+ function HomematicAccessPoint(adapter, id, baseState, etage, raum, device) {
253
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
254
+ }
255
+ HomematicAccessPoint.prototype.getCategoryAsString = function () {
256
+ return "Access Point";
257
+ };
258
+ HomematicAccessPoint.prototype.isStatusBattery = function () {
259
+ return true;
260
+ };
261
+ HomematicAccessPoint.prototype.getSignal = function () {
262
+ return "";
263
+ };
264
+ HomematicAccessPoint.prototype.getCategory = function () {
265
+ return deviceHomematicAccessPoint;
266
+ };
267
+ return HomematicAccessPoint;
268
+ }(AbstractHomematic));
269
+ exports.HomematicAccessPoint = HomematicAccessPoint;
270
+ var HomematicRollladen = /** @class */ (function (_super) {
271
+ __extends(HomematicRollladen, _super);
272
+ function HomematicRollladen(adapter, id, baseState, etage, raum, device, positionAuf, positionMitte, positionZu) {
273
+ var _this = _super.call(this, adapter, id, baseState, etage, raum, device) || this;
274
+ _this.positionAuf = positionAuf;
275
+ _this.positionMitte = positionMitte;
276
+ _this.positionZu = positionZu;
277
+ return _this;
278
+ }
279
+ HomematicRollladen.prototype.getCategory = function () {
280
+ return deviceHomematicRollladen;
281
+ };
282
+ HomematicRollladen.prototype.auf = function () {
283
+ this.adapter.setState(this.getBaseState() + ".4.LEVEL", this.positionAuf);
284
+ };
285
+ HomematicRollladen.prototype.zu = function () {
286
+ this.adapter.setState(this.getBaseState() + ".4.LEVEL", this.positionZu);
287
+ };
288
+ HomematicRollladen.prototype.mitte = function () {
289
+ this.adapter.setState(this.getBaseState() + ".4.LEVEL", this.positionMitte);
290
+ };
291
+ return HomematicRollladen;
292
+ }(AbstractHomematic));
293
+ exports.HomematicRollladen = HomematicRollladen;
294
+ var HomematicDoor = /** @class */ (function (_super) {
295
+ __extends(HomematicDoor, _super);
296
+ function HomematicDoor(adapter, id, baseState, etage, raum, device, skipStatisticIsOpened, skipStatisticIsClosed) {
297
+ var _this = _super.call(this, adapter, id, baseState, etage, raum, device) || this;
298
+ _this.skipStatisticIsOpened = skipStatisticIsOpened;
299
+ _this.skipStatisticIsClosed = skipStatisticIsClosed;
300
+ return _this;
301
+ }
302
+ HomematicDoor.prototype.isSkipStatisticIsOpened = function () {
303
+ return this.skipStatisticIsOpened;
304
+ };
305
+ HomematicDoor.prototype.isSkipStatisticIsClosed = function () {
306
+ return this.skipStatisticIsClosed;
307
+ };
308
+ HomematicDoor.prototype.getCategory = function () {
309
+ return deviceHomematicDoor;
310
+ };
311
+ HomematicDoor.prototype.isStatusBattery = function () {
312
+ return !this.adapter.getState(this.baseState + ".0.LOW_BAT").val; // // hm-rpc.0.000A9BE993E2F7.0.LOW_BAT
313
+ };
314
+ HomematicDoor.prototype.isOpen = function () {
315
+ if (this.adapter.getState(this.baseState + ".1.STATE").val) { // hm-rpc.0.0000DD89BE05F9.1.STATE
316
+ return true;
317
+ }
318
+ return false;
319
+ };
320
+ return HomematicDoor;
321
+ }(AbstractHomematic));
322
+ exports.HomematicDoor = HomematicDoor;
323
+ var HomematicFussbodenheizung = /** @class */ (function (_super) {
324
+ __extends(HomematicFussbodenheizung, _super);
325
+ function HomematicFussbodenheizung(adapter, id, baseState, etage, raum, device) {
326
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
327
+ }
328
+ HomematicFussbodenheizung.prototype.getCategory = function () {
329
+ return deviceHomematicFussbodenheizung;
330
+ };
331
+ return HomematicFussbodenheizung;
332
+ }(AbstractHomematic));
333
+ exports.HomematicFussbodenheizung = HomematicFussbodenheizung;
334
+ var HomematicWandschalter = /** @class */ (function (_super) {
335
+ __extends(HomematicWandschalter, _super);
336
+ function HomematicWandschalter(adapter, id, baseState, etage, raum, device) {
337
+ return _super.call(this, adapter, id, baseState, etage, raum, device) || this;
338
+ }
339
+ HomematicWandschalter.prototype.getCategory = function () {
340
+ return deviceHomematicWandschalter;
341
+ };
342
+ HomematicWandschalter.prototype.isStatusBattery = function () {
343
+ return !this.adapter.getState(this.baseState + ".0.LOW_BAT").val; // // hm-rpc.0.000A9BE993E2F7.0.LOW_BAT
344
+ };
345
+ HomematicWandschalter.prototype.isSwitchedOn = function () {
346
+ if (this.getType() == "HM-LC-Sw1PBU-FM") {
347
+ if (this.adapter.getState(this.baseState + ".1.STATE").val == false) { // hm-rpc.0.PEQ2220753.1.STATE
348
+ return false;
349
+ }
350
+ return true;
351
+ }
352
+ else if (this.getType() == "HmIP-BSM") {
353
+ if (this.adapter.getState(this.baseState + ".4.STATE").val == false) { // // hm-rpc.1.000855699C4F38.4.STATE
354
+ return false;
355
+ }
356
+ return true;
357
+ }
358
+ else {
359
+ // @ts-ignore
360
+ return undefined;
361
+ }
362
+ };
363
+ return HomematicWandschalter;
364
+ }(AbstractHomematic));
365
+ exports.HomematicWandschalter = HomematicWandschalter;
366
+ module.exports = {
367
+ HomematicWindow: HomematicWindow,
368
+ HomematicSteckdose: HomematicSteckdose,
369
+ HomematicHeizkoerper: HomematicHeizkoerper,
370
+ HomematicDimmer: HomematicDimmer,
371
+ HomematicWandthermostat: HomematicWandthermostat,
372
+ HomematicFussbodenheizung: HomematicFussbodenheizung,
373
+ HomematicWandschalter: HomematicWandschalter,
374
+ HomematicDoor: HomematicDoor,
375
+ HomematicWetterstation: HomematicWetterstation,
376
+ HomematicAccessPoint: HomematicAccessPoint,
377
+ HomematicRollladen: HomematicRollladen,
378
+ HomematicWandtaster: HomematicWandtaster,
379
+ HomematicTemperatursensor: HomematicTemperatursensor,
380
+ HomematicRauchmelder: HomematicRauchmelder,
381
+ HomematicPraesenzmelder: HomematicPraesenzmelder,
382
+ AbstractHomematic: AbstractHomematic,
383
+ HomematicFunkschaltaktor: HomematicFunkschaltaktor,
384
+ deviceHomematicWandthermostat: deviceHomematicWandthermostat,
385
+ deviceHomematicPraesenzmelder: deviceHomematicPraesenzmelder,
386
+ deviceHomematicWetterstation: deviceHomematicWetterstation,
387
+ deviceHomematicDoor: deviceHomematicDoor,
388
+ deviceHomematicRollladen: deviceHomematicRollladen,
389
+ deviceHomematicWandschalter: deviceHomematicWandschalter,
390
+ deviceHomematicFussbodenheizung: deviceHomematicFussbodenheizung,
391
+ deviceHomematicWandtaster: deviceHomematicWandtaster,
392
+ deviceHomematicAccessPoint: deviceHomematicAccessPoint,
393
+ deviceHomematicTemperatursensor: deviceHomematicTemperatursensor,
394
+ deviceHomematicRauchmelder: deviceHomematicRauchmelder,
395
+ deviceHomematicFunkSchaltaktor: deviceHomematicFunkSchaltaktor,
396
+ deviceHomematicWindow: deviceHomematicWindow,
397
+ deviceHomematicSteckdose: deviceHomematicSteckdose,
398
+ deviceHomematicHeizkoerper: deviceHomematicHeizkoerper,
399
+ deviceHomematicDimmer: deviceHomematicDimmer
400
+ };
@@ -1,20 +1,20 @@
1
-
2
- const deviceWandthermostat = "Wandthermostat";
3
- const devicePraesenzmelder = "Praesenzmelder";
4
- const deviceWetterstation = "Wetterstation";
5
- const deviceDoor = "Door";
6
- const deviceRollladen = "Rollladen";
7
- const deviceWandschalter = "Wandschalter";
8
- const deviceFussbodenheizung = "Fussbodenheizung";
9
- const deviceWandtaster = "Wandtaster";
10
- const deviceAccessPoint = "AccessPoint";
11
- const deviceTemperatursensor = "Temperatursensor";
12
- const deviceRauchmelder = "Rauchmelder";
13
- const deviceFunkSchaltaktor = "FunkSchaltaktor";
14
- const deviceWindow = "Window";
15
- const deviceSteckdose = "Steckdose";
16
- const deviceHeizkoerper = "Heizkoerper";
17
- const deviceDimmer = "Dimmer";
1
+ // https://stackoverflow.com/questions/8595509/how-do-you-share-constants-in-nodejs-modules
2
+ const deviceHomematicWandthermostat: string = "Wandthermostat";
3
+ const deviceHomematicPraesenzmelder: string = "Praesenzmelder";
4
+ const deviceHomematicWetterstation: string = "Wetterstation";
5
+ const deviceHomematicDoor: string = "Door";
6
+ const deviceHomematicRollladen: string = "Rollladen";
7
+ const deviceHomematicWandschalter: string = "Wandschalter";
8
+ const deviceHomematicFussbodenheizung: string = "Fussbodenheizung";
9
+ const deviceHomematicWandtaster: string = "Wandtaster";
10
+ const deviceHomematicAccessPoint: string = "AccessPoint";
11
+ const deviceHomematicTemperatursensor: string = "Temperatursensor";
12
+ const deviceHomematicRauchmelder: string = "Rauchmelder";
13
+ const deviceHomematicFunkSchaltaktor: string = "FunkSchaltaktor";
14
+ const deviceHomematicWindow: string = "Window";
15
+ const deviceHomematicSteckdose: string = "Steckdose";
16
+ const deviceHomematicHeizkoerper: string = "Heizkoerper";
17
+ const deviceHomematicDimmer: string = "Dimmer";
18
18
 
19
19
  export abstract class AbstractHomematic {
20
20
  protected baseState: string;
@@ -106,7 +106,7 @@ export class HomematicWandthermostat extends AbstractHomematic {
106
106
  }
107
107
 
108
108
  public getCategory(): string {
109
- return deviceWandthermostat;
109
+ return deviceHomematicWandthermostat;
110
110
  }
111
111
 
112
112
  public isStatusBattery(): boolean {
@@ -120,7 +120,7 @@ export class HomematicPraesenzmelder extends AbstractHomematic {
120
120
  }
121
121
 
122
122
  public getCategory(): string {
123
- return devicePraesenzmelder;
123
+ return deviceHomematicPraesenzmelder;
124
124
  }
125
125
 
126
126
  public getIllumination(): string {
@@ -141,7 +141,7 @@ export class HomematicWetterstation extends AbstractHomematic {
141
141
  }
142
142
 
143
143
  public getCategory(): string {
144
- return deviceWetterstation;
144
+ return deviceHomematicWetterstation;
145
145
  }
146
146
 
147
147
  public isStatusBattery(): boolean {
@@ -155,7 +155,7 @@ export class HomematicWindow extends AbstractHomematic {
155
155
  }
156
156
 
157
157
  public getCategory(): string {
158
- return deviceWindow;
158
+ return deviceHomematicWindow;
159
159
  }
160
160
 
161
161
  public isStatusBattery(): boolean {
@@ -169,7 +169,7 @@ export class HomematicSteckdose extends AbstractHomematic {
169
169
  }
170
170
 
171
171
  public getCategory(): string {
172
- return deviceSteckdose;
172
+ return deviceHomematicSteckdose;
173
173
  }
174
174
  }
175
175
 
@@ -179,7 +179,7 @@ export class HomematicHeizkoerper extends AbstractHomematic {
179
179
  }
180
180
 
181
181
  public getCategory(): string {
182
- return deviceHeizkoerper;
182
+ return deviceHomematicHeizkoerper;
183
183
  }
184
184
 
185
185
  public isStatusBattery(): boolean {
@@ -193,7 +193,7 @@ export class HomematicDimmer extends AbstractHomematic {
193
193
  }
194
194
 
195
195
  public getCategory(): string {
196
- return deviceDimmer;
196
+ return deviceHomematicDimmer;
197
197
  }
198
198
  }
199
199
 
@@ -203,7 +203,7 @@ export class HomematicFunkschaltaktor extends AbstractHomematic {
203
203
  }
204
204
 
205
205
  public getCategory(): string {
206
- return deviceFunkSchaltaktor;
206
+ return deviceHomematicFunkSchaltaktor;
207
207
  }
208
208
  }
209
209
 
@@ -213,7 +213,7 @@ export class HomematicRauchmelder extends AbstractHomematic {
213
213
  }
214
214
 
215
215
  public getCategory(): string {
216
- return deviceRauchmelder;
216
+ return deviceHomematicRauchmelder;
217
217
  }
218
218
 
219
219
  public isStatusBattery(): boolean {
@@ -236,7 +236,7 @@ export class HomematicTemperatursensor extends AbstractHomematic {
236
236
  }
237
237
 
238
238
  public getCategory(): string {
239
- return deviceTemperatursensor;
239
+ return deviceHomematicTemperatursensor;
240
240
  }
241
241
 
242
242
  public isStatusBattery(): boolean {
@@ -250,7 +250,7 @@ export class HomematicWandtaster extends AbstractHomematic {
250
250
  }
251
251
 
252
252
  public getCategory(): string {
253
- return deviceWandtaster;
253
+ return deviceHomematicWandtaster;
254
254
  }
255
255
 
256
256
  }
@@ -273,7 +273,7 @@ export class HomematicAccessPoint extends AbstractHomematic {
273
273
  }
274
274
 
275
275
  public getCategory(): string {
276
- return deviceAccessPoint;
276
+ return deviceHomematicAccessPoint;
277
277
  }
278
278
 
279
279
  }
@@ -291,7 +291,7 @@ export class HomematicRollladen extends AbstractHomematic {
291
291
  }
292
292
 
293
293
  public getCategory(): string {
294
- return deviceRollladen;
294
+ return deviceHomematicRollladen;
295
295
  }
296
296
 
297
297
  public auf() {
@@ -326,7 +326,7 @@ export class HomematicDoor extends AbstractHomematic {
326
326
  }
327
327
 
328
328
  public getCategory(): string {
329
- return deviceDoor;
329
+ return deviceHomematicDoor;
330
330
  }
331
331
 
332
332
  public isStatusBattery(): boolean {
@@ -347,7 +347,7 @@ export class HomematicFussbodenheizung extends AbstractHomematic {
347
347
  }
348
348
 
349
349
  public getCategory(): string {
350
- return deviceFussbodenheizung;
350
+ return deviceHomematicFussbodenheizung;
351
351
  }
352
352
 
353
353
  }
@@ -358,7 +358,7 @@ export class HomematicWandschalter extends AbstractHomematic {
358
358
  }
359
359
 
360
360
  public getCategory(): string {
361
- return deviceWandschalter;
361
+ return deviceHomematicWandschalter;
362
362
  }
363
363
 
364
364
  public isStatusBattery(): boolean {
@@ -385,27 +385,7 @@ export class HomematicWandschalter extends AbstractHomematic {
385
385
 
386
386
 
387
387
 
388
-
389
-
390
-
391
-
392
-
393
-
394
-
395
-
396
-
397
-
398
-
399
-
400
- export function getHomematicDevicesUwe(adapter: any, filterCategory:string) {
401
- adapter.log("INSIDE: ");
402
- var homematicArray = [];
403
- adapter.$('state[id=0_userdata.0.devices.homematic.*.type]').each(datenpunktKey => { // 0_userdata.0.devices.homematic.30.type
404
- adapter.log("Here i am: " + datenpunktKey);
405
- });
406
- return homematicArray;
407
- }
408
-
409
-
410
-
411
- module.exports = { getHomematicDevicesUwe, HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor };
388
+ module.exports = {
389
+ HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor,
390
+ deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer
391
+ };
@@ -0,0 +1,233 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getHomematicDevicesAll = exports.getHomematicDevices = exports.createDatenpunktDevice = void 0;
4
+ var _a = require('./homematic.js'), HomematicWindow = _a.HomematicWindow, HomematicSteckdose = _a.HomematicSteckdose, HomematicHeizkoerper = _a.HomematicHeizkoerper, HomematicDimmer = _a.HomematicDimmer, HomematicWandthermostat = _a.HomematicWandthermostat, HomematicFussbodenheizung = _a.HomematicFussbodenheizung, HomematicWandschalter = _a.HomematicWandschalter, HomematicDoor = _a.HomematicDoor, HomematicWetterstation = _a.HomematicWetterstation, HomematicAccessPoint = _a.HomematicAccessPoint, HomematicRollladen = _a.HomematicRollladen, HomematicWandtaster = _a.HomematicWandtaster, HomematicTemperatursensor = _a.HomematicTemperatursensor, HomematicRauchmelder = _a.HomematicRauchmelder, HomematicPraesenzmelder = _a.HomematicPraesenzmelder, AbstractHomematic = _a.AbstractHomematic, HomematicFunkschaltaktor = _a.HomematicFunkschaltaktor;
5
+ var attributeRawID = "rawId";
6
+ var attributeBaseState = "baseState";
7
+ var attributeEtage = "etage";
8
+ var attributeRaum = "raum";
9
+ var attributeDevice = "device";
10
+ var attributeCategory = "type";
11
+ var attributeTypeNumber = "number";
12
+ var attributeTypeString = "string";
13
+ function createDatenpunktDevice(adapter, rawId, baseState, etage, raum, device, category) {
14
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRawID, rawId);
15
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeCategory, category);
16
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeBaseState, baseState);
17
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeEtage, etage);
18
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRaum, raum);
19
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeDevice, device);
20
+ }
21
+ exports.createDatenpunktDevice = createDatenpunktDevice;
22
+ function createDatenpunktSingle(adapter, deviceRawId, attributeType, attributeName, attributeValue) {
23
+ var stateDatenpunkt = "0_userdata.0.devices.homematic." + deviceRawId + "." + attributeName;
24
+ adapter.createState(stateDatenpunkt, null, {
25
+ name: stateDatenpunkt,
26
+ desc: stateDatenpunkt,
27
+ type: attributeType,
28
+ read: true,
29
+ write: true
30
+ });
31
+ adapter.setState(stateDatenpunkt, attributeValue);
32
+ }
33
+ function getHomematicDevices(adapter, filterCategory) {
34
+ var _this = this;
35
+ var homematicArray = [{}];
36
+ adapter.$('state[id=0_userdata.0.devices.homematic.*.type]').each(function (datenpunktKey) {
37
+ var datenpunktPraefix = datenpunktKey.replaceAll(".type", "");
38
+ if (adapter.getState(datenpunktKey).val == filterCategory) {
39
+ if (filterCategory == deviceHomematicWandthermostat) {
40
+ homematicArray.push(new HomematicWandthermostat(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
41
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
42
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
43
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
44
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
45
+ ));
46
+ }
47
+ else if (filterCategory == deviceHomematicPraesenzmelder) {
48
+ homematicArray.push(new HomematicPraesenzmelder(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
49
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
50
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
51
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
52
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
53
+ ));
54
+ }
55
+ else if (filterCategory == deviceHomematicWetterstation) {
56
+ homematicArray.push(new HomematicWetterstation(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
57
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
58
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
59
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
60
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
61
+ ));
62
+ }
63
+ else if (filterCategory == deviceHomematicDoor) {
64
+ homematicArray.push(new HomematicDoor(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
65
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
66
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
67
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
68
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
69
+ ));
70
+ }
71
+ else if (filterCategory == deviceHomematicRollladen) {
72
+ homematicArray.push(new HomematicRollladen(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
73
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
74
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
75
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
76
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
77
+ ));
78
+ }
79
+ else if (filterCategory == deviceHomematicWandschalter) {
80
+ homematicArray.push(new HomematicWandschalter(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
81
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
82
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
83
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
84
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
85
+ ));
86
+ }
87
+ else if (filterCategory == deviceHomematicFussbodenheizung) {
88
+ homematicArray.push(new HomematicFussbodenheizung(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
89
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
90
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
91
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
92
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
93
+ ));
94
+ }
95
+ else if (filterCategory == deviceHomematicWandtaster) {
96
+ homematicArray.push(new HomematicWandtaster(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
97
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
98
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
99
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
100
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
101
+ ));
102
+ }
103
+ else if (filterCategory == deviceHomematicAccessPoint) {
104
+ homematicArray.push(new HomematicAccessPoint(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
105
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
106
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
107
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
108
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
109
+ ));
110
+ }
111
+ else if (filterCategory == deviceHomematicTemperatursensor) {
112
+ homematicArray.push(new HomematicTemperatursensor(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
113
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
114
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
115
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
116
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
117
+ ));
118
+ }
119
+ else if (filterCategory == deviceHomematicRauchmelder) {
120
+ homematicArray.push(new HomematicRauchmelder(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
121
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
122
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
123
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
124
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
125
+ ));
126
+ }
127
+ else if (filterCategory == deviceHomematicFunkSchaltaktor) {
128
+ homematicArray.push(new HomematicFunkschaltaktor(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
129
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
130
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
131
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
132
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
133
+ ));
134
+ }
135
+ else if (filterCategory == deviceHomematicWindow) {
136
+ homematicArray.push(new HomematicWindow(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
137
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
138
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
139
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
140
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
141
+ ));
142
+ }
143
+ else if (filterCategory == deviceHomematicSteckdose) {
144
+ homematicArray.push(new HomematicSteckdose(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
145
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
146
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
147
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
148
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
149
+ ));
150
+ }
151
+ else if (filterCategory == deviceHomematicHeizkoerper) {
152
+ homematicArray.push(new HomematicHeizkoerper(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
153
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
154
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
155
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
156
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
157
+ ));
158
+ }
159
+ else if (filterCategory == deviceHomematicDimmer) {
160
+ homematicArray.push(new HomematicDimmer(_this, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
161
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
162
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
163
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
164
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
165
+ ));
166
+ }
167
+ }
168
+ });
169
+ return homematicArray;
170
+ }
171
+ exports.getHomematicDevices = getHomematicDevices;
172
+ function getHomematicDevicesAll(adapter) {
173
+ var homematicArray = [{}];
174
+ adapter.getHomematicDevices(deviceHomematicWandthermostat).forEach(function (homematic) {
175
+ homematicArray.push(homematic);
176
+ });
177
+ adapter.getHomematicDevices(deviceHomematicPraesenzmelder).forEach(function (homematic) {
178
+ homematicArray.push(homematic);
179
+ });
180
+ adapter.getHomematicDevices(deviceHomematicWetterstation).forEach(function (homematic) {
181
+ homematicArray.push(homematic);
182
+ });
183
+ adapter.getHomematicDevices(deviceHomematicDoor).forEach(function (homematic) {
184
+ homematicArray.push(homematic);
185
+ });
186
+ adapter.getHomematicDevices(deviceHomematicRollladen).forEach(function (homematic) {
187
+ homematicArray.push(homematic);
188
+ });
189
+ adapter.getHomematicDevices(deviceHomematicWandschalter).forEach(function (homematic) {
190
+ homematicArray.push(homematic);
191
+ });
192
+ adapter.getHomematicDevices(deviceHomematicFussbodenheizung).forEach(function (homematic) {
193
+ homematicArray.push(homematic);
194
+ });
195
+ adapter.getHomematicDevices(deviceHomematicWandtaster).forEach(function (homematic) {
196
+ homematicArray.push(homematic);
197
+ });
198
+ adapter.getHomematicDevices(deviceHomematicAccessPoint).forEach(function (homematic) {
199
+ homematicArray.push(homematic);
200
+ });
201
+ adapter.getHomematicDevices(deviceHomematicTemperatursensor).forEach(function (homematic) {
202
+ homematicArray.push(homematic);
203
+ });
204
+ adapter.getHomematicDevices(deviceHomematicRauchmelder).forEach(function (homematic) {
205
+ homematicArray.push(homematic);
206
+ });
207
+ adapter.getHomematicDevices(deviceHomematicFunkSchaltaktor).forEach(function (homematic) {
208
+ homematicArray.push(homematic);
209
+ });
210
+ adapter.getHomematicDevices(deviceHomematicWindow).forEach(function (homematic) {
211
+ homematicArray.push(homematic);
212
+ });
213
+ adapter.getHomematicDevices(deviceHomematicSteckdose).forEach(function (homematic) {
214
+ homematicArray.push(homematic);
215
+ });
216
+ adapter.getHomematicDevices(deviceHomematicHeizkoerper).forEach(function (homematic) {
217
+ homematicArray.push(homematic);
218
+ });
219
+ adapter.getHomematicDevices(deviceHomematicDimmer).forEach(function (homematic) {
220
+ homematicArray.push(homematic);
221
+ });
222
+ return homematicArray;
223
+ }
224
+ exports.getHomematicDevicesAll = getHomematicDevicesAll;
225
+ /*export function getHomematicDevicesUwe(adapter: any, filterCategory:string) {
226
+ adapter.log("INSIDE: ");
227
+ var homematicArray = [];
228
+ adapter.$('state[id=0_userdata.0.devices.homematic.*.type]').each(datenpunktKey => { // 0_userdata.0.devices.homematic.30.type
229
+ adapter.log("Here i am: " + datenpunktKey);
230
+ });
231
+ return homematicArray;
232
+ }*/
233
+ module.exports = { createDatenpunktDevice: createDatenpunktDevice, getHomematicDevices: getHomematicDevices, getHomematicDevicesAll: getHomematicDevicesAll };
@@ -0,0 +1,237 @@
1
+ const { HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor } = require('./homematic.js');
2
+
3
+ const attributeRawID = "rawId";
4
+ const attributeBaseState = "baseState";
5
+ const attributeEtage = "etage";
6
+ const attributeRaum = "raum";
7
+ const attributeDevice = "device";
8
+ const attributeCategory = "type";
9
+
10
+ const attributeTypeNumber = "number";
11
+ const attributeTypeString = "string";
12
+
13
+ export function createDatenpunktDevice(adapter:any, rawId, baseState, etage, raum, device, category) {
14
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRawID, rawId);
15
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeCategory, category);
16
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeBaseState, baseState);
17
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeEtage, etage);
18
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRaum, raum);
19
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeDevice, device);
20
+ }
21
+
22
+ function createDatenpunktSingle(adapter:any, deviceRawId, attributeType, attributeName, attributeValue) {
23
+ var stateDatenpunkt = "0_userdata.0.devices.homematic." + deviceRawId + "." + attributeName;
24
+ adapter.createState(stateDatenpunkt, null, {
25
+ name: stateDatenpunkt,
26
+ desc: stateDatenpunkt,
27
+ type: attributeType,
28
+ read: true,
29
+ write: true
30
+ });
31
+ adapter.setState(stateDatenpunkt, attributeValue);
32
+ }
33
+
34
+ export function getHomematicDevices(adapter:any, filterCategory:string) {
35
+ var homematicArray = [{}];
36
+ adapter.$('state[id=0_userdata.0.devices.homematic.*.type]').each(datenpunktKey => { // 0_userdata.0.devices.homematic.30.type
37
+ var datenpunktPraefix = datenpunktKey.replaceAll(".type", "");
38
+ if (adapter.getState(datenpunktKey).val == filterCategory) {
39
+ if (filterCategory == deviceHomematicWandthermostat) {
40
+ homematicArray.push(new HomematicWandthermostat(this,
41
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
42
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
43
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
44
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
45
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
46
+ ));
47
+ } else if (filterCategory == deviceHomematicPraesenzmelder) {
48
+ homematicArray.push(new HomematicPraesenzmelder(this,
49
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
50
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
51
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
52
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
53
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
54
+ ));
55
+ } else if (filterCategory == deviceHomematicWetterstation) {
56
+ homematicArray.push(new HomematicWetterstation(this,
57
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
58
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
59
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
60
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
61
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
62
+ ));
63
+ } else if (filterCategory == deviceHomematicDoor) {
64
+ homematicArray.push(new HomematicDoor(this,
65
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
66
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
67
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
68
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
69
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
70
+ ));
71
+ } else if (filterCategory == deviceHomematicRollladen) {
72
+ homematicArray.push(new HomematicRollladen(this,
73
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
74
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
75
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
76
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
77
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
78
+ ));
79
+ } else if (filterCategory == deviceHomematicWandschalter) {
80
+ homematicArray.push(new HomematicWandschalter(this,
81
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
82
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
83
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
84
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
85
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
86
+ ));
87
+ } else if (filterCategory == deviceHomematicFussbodenheizung) {
88
+ homematicArray.push(new HomematicFussbodenheizung(this,
89
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
90
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
91
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
92
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
93
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
94
+ ));
95
+ } else if (filterCategory == deviceHomematicWandtaster) {
96
+ homematicArray.push(new HomematicWandtaster(this,
97
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
98
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
99
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
100
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
101
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
102
+ ));
103
+ } else if (filterCategory == deviceHomematicAccessPoint) {
104
+ homematicArray.push(new HomematicAccessPoint(this,
105
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
106
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
107
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
108
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
109
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
110
+ ));
111
+ } else if (filterCategory == deviceHomematicTemperatursensor) {
112
+ homematicArray.push(new HomematicTemperatursensor(this,
113
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
114
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
115
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
116
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
117
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
118
+ ));
119
+ } else if (filterCategory == deviceHomematicRauchmelder) {
120
+ homematicArray.push(new HomematicRauchmelder(this,
121
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
122
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
123
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
124
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
125
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
126
+ ));
127
+ } else if (filterCategory == deviceHomematicFunkSchaltaktor) {
128
+ homematicArray.push(new HomematicFunkschaltaktor(this,
129
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
130
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
131
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
132
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
133
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
134
+ ));
135
+ } else if (filterCategory == deviceHomematicWindow) {
136
+ homematicArray.push(new HomematicWindow(this,
137
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
138
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
139
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
140
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
141
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
142
+ ));
143
+ } else if (filterCategory == deviceHomematicSteckdose) {
144
+ homematicArray.push(new HomematicSteckdose(this,
145
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
146
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
147
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
148
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
149
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
150
+ ));
151
+ } else if (filterCategory == deviceHomematicHeizkoerper) {
152
+ homematicArray.push(new HomematicHeizkoerper(this,
153
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
154
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
155
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
156
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
157
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
158
+ ));
159
+ } else if (filterCategory == deviceHomematicDimmer) {
160
+ homematicArray.push(new HomematicDimmer(this,
161
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
162
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
163
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
164
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
165
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
166
+ ));
167
+ }
168
+ }
169
+
170
+ });
171
+ return homematicArray;
172
+ }
173
+
174
+ export function getHomematicDevicesAll(adapter:any) {
175
+ var homematicArray = [{}];
176
+
177
+ adapter.getHomematicDevices(deviceHomematicWandthermostat).forEach(homematic => {
178
+ homematicArray.push(homematic);
179
+ });
180
+ adapter.getHomematicDevices(deviceHomematicPraesenzmelder).forEach(homematic => {
181
+ homematicArray.push(homematic);
182
+ });
183
+ adapter.getHomematicDevices(deviceHomematicWetterstation).forEach(homematic => {
184
+ homematicArray.push(homematic);
185
+ });
186
+ adapter.getHomematicDevices(deviceHomematicDoor).forEach(homematic => {
187
+ homematicArray.push(homematic);
188
+ });
189
+ adapter.getHomematicDevices(deviceHomematicRollladen).forEach(homematic => {
190
+ homematicArray.push(homematic);
191
+ });
192
+ adapter.getHomematicDevices(deviceHomematicWandschalter).forEach(homematic => {
193
+ homematicArray.push(homematic);
194
+ });
195
+ adapter.getHomematicDevices(deviceHomematicFussbodenheizung).forEach(homematic => {
196
+ homematicArray.push(homematic);
197
+ });
198
+ adapter.getHomematicDevices(deviceHomematicWandtaster).forEach(homematic => {
199
+ homematicArray.push(homematic);
200
+ });
201
+ adapter.getHomematicDevices(deviceHomematicAccessPoint).forEach(homematic => {
202
+ homematicArray.push(homematic);
203
+ });
204
+ adapter.getHomematicDevices(deviceHomematicTemperatursensor).forEach(homematic => {
205
+ homematicArray.push(homematic);
206
+ });
207
+ adapter.getHomematicDevices(deviceHomematicRauchmelder).forEach(homematic => {
208
+ homematicArray.push(homematic);
209
+ });
210
+ adapter.getHomematicDevices(deviceHomematicFunkSchaltaktor).forEach(homematic => {
211
+ homematicArray.push(homematic);
212
+ });
213
+ adapter.getHomematicDevices(deviceHomematicWindow).forEach(homematic => {
214
+ homematicArray.push(homematic);
215
+ });
216
+ adapter.getHomematicDevices(deviceHomematicSteckdose).forEach(homematic => {
217
+ homematicArray.push(homematic);
218
+ });
219
+ adapter.getHomematicDevices(deviceHomematicHeizkoerper).forEach(homematic => {
220
+ homematicArray.push(homematic);
221
+ });
222
+ adapter.getHomematicDevices(deviceHomematicDimmer).forEach(homematic => {
223
+ homematicArray.push(homematic);
224
+ });
225
+ return homematicArray;
226
+ }
227
+
228
+ /*export function getHomematicDevicesUwe(adapter: any, filterCategory:string) {
229
+ adapter.log("INSIDE: ");
230
+ var homematicArray = [];
231
+ adapter.$('state[id=0_userdata.0.devices.homematic.*.type]').each(datenpunktKey => { // 0_userdata.0.devices.homematic.30.type
232
+ adapter.log("Here i am: " + datenpunktKey);
233
+ });
234
+ return homematicArray;
235
+ }*/
236
+
237
+ module.exports = { createDatenpunktDevice, getHomematicDevices, getHomematicDevicesAll };
package/main.js CHANGED
@@ -1,33 +1,20 @@
1
- // https://stackoverflow.com/questions/8595509/how-do-you-share-constants-in-nodejs-modules
2
- var deviceHomematicWandthermostat = "Wandthermostat";
3
- var deviceHomematicPraesenzmelder = "Praesenzmelder";
4
- var deviceHomematicWetterstation = "Wetterstation";
5
- var deviceHomematicDoor = "Door";
6
- var deviceHomematicRollladen = "Rollladen";
7
- var deviceHomematicWandschalter = "Wandschalter";
8
- var deviceHomematicFussbodenheizung = "Fussbodenheizung";
9
- var deviceHomematicWandtaster = "Wandtaster";
10
- var deviceHomematicAccessPoint = "AccessPoint";
11
- var deviceHomematicTemperatursensor = "Temperatursensor";
12
- var deviceHomematicRauchmelder = "Rauchmelder";
13
- var deviceHomematicFunkSchaltaktor = "FunkSchaltaktor";
14
- var deviceHomematicWindow = "Window";
15
- var deviceHomematicSteckdose = "Steckdose";
16
- var deviceHomematicHeizkoerper = "Heizkoerper";
17
- var deviceHomematicDimmer = "Dimmer";
18
1
  var DateHelper = require('./date.js').DateHelper;
19
2
  var DateCalendarTest = require('./test.js').DateCalendarTest;
20
3
  var _a = require('./html.js'), AbstractColumn = _a.AbstractColumn, HtmlTable = _a.HtmlTable, HtmlCreator = _a.HtmlCreator, StaticIconColumn = _a.StaticIconColumn, AbstractStandardTextColumn = _a.AbstractStandardTextColumn;
21
- var _b = require('./homematic.js'), getHomematicDevicesUwe = _b.getHomematicDevicesUwe, HomematicWindow = _b.HomematicWindow, HomematicSteckdose = _b.HomematicSteckdose, HomematicHeizkoerper = _b.HomematicHeizkoerper, HomematicDimmer = _b.HomematicDimmer, HomematicWandthermostat = _b.HomematicWandthermostat, HomematicFussbodenheizung = _b.HomematicFussbodenheizung, HomematicWandschalter = _b.HomematicWandschalter, HomematicDoor = _b.HomematicDoor, HomematicWetterstation = _b.HomematicWetterstation, HomematicAccessPoint = _b.HomematicAccessPoint, HomematicRollladen = _b.HomematicRollladen, HomematicWandtaster = _b.HomematicWandtaster, HomematicTemperatursensor = _b.HomematicTemperatursensor, HomematicRauchmelder = _b.HomematicRauchmelder, HomematicPraesenzmelder = _b.HomematicPraesenzmelder, AbstractHomematic = _b.AbstractHomematic, HomematicFunkschaltaktor = _b.HomematicFunkschaltaktor;
4
+ var _b = require('./homematicClasses.js'), HomematicWindow = _b.HomematicWindow, HomematicSteckdose = _b.HomematicSteckdose, HomematicHeizkoerper = _b.HomematicHeizkoerper, HomematicDimmer = _b.HomematicDimmer, HomematicWandthermostat = _b.HomematicWandthermostat, HomematicFussbodenheizung = _b.HomematicFussbodenheizung, HomematicWandschalter = _b.HomematicWandschalter, HomematicDoor = _b.HomematicDoor, HomematicWetterstation = _b.HomematicWetterstation, HomematicAccessPoint = _b.HomematicAccessPoint, HomematicRollladen = _b.HomematicRollladen, HomematicWandtaster = _b.HomematicWandtaster, HomematicTemperatursensor = _b.HomematicTemperatursensor, HomematicRauchmelder = _b.HomematicRauchmelder, HomematicPraesenzmelder = _b.HomematicPraesenzmelder, AbstractHomematic = _b.AbstractHomematic, HomematicFunkschaltaktor = _b.HomematicFunkschaltaktor, deviceHomematicWandthermostat = _b.deviceHomematicWandthermostat, deviceHomematicPraesenzmelder = _b.deviceHomematicPraesenzmelder, deviceHomematicWetterstation = _b.deviceHomematicWetterstation, deviceHomematicDoor = _b.deviceHomematicDoor, deviceHomematicRollladen = _b.deviceHomematicRollladen, deviceHomematicWandschalter = _b.deviceHomematicWandschalter, deviceHomematicFussbodenheizung = _b.deviceHomematicFussbodenheizung, deviceHomematicWandtaster = _b.deviceHomematicWandtaster, deviceHomematicAccessPoint = _b.deviceHomematicAccessPoint, deviceHomematicTemperatursensor = _b.deviceHomematicTemperatursensor, deviceHomematicRauchmelder = _b.deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor = _b.deviceHomematicFunkSchaltaktor, deviceHomematicWindow = _b.deviceHomematicWindow, deviceHomematicSteckdose = _b.deviceHomematicSteckdose, deviceHomematicHeizkoerper = _b.deviceHomematicHeizkoerper, deviceHomematicDimmer = _b.deviceHomematicDimmer;
5
+ var _c = require('./homematicFunctions.js'), createDatenpunktDevice = _c.createDatenpunktDevice, getHomematicDevices = _c.getHomematicDevices, getHomematicDevicesAll = _c.getHomematicDevicesAll;
22
6
  module.exports = {
7
+ // date.ts:
23
8
  DateHelper: DateHelper,
9
+ // test.ts:
24
10
  DateCalendarTest: DateCalendarTest,
11
+ // html.ts:
25
12
  AbstractColumn: AbstractColumn,
26
13
  HtmlTable: HtmlTable,
27
14
  HtmlCreator: HtmlCreator,
28
15
  StaticIconColumn: StaticIconColumn,
29
16
  AbstractStandardTextColumn: AbstractStandardTextColumn,
30
- getHomematicDevicesUwe: getHomematicDevicesUwe,
17
+ // homematicClasses.ts
31
18
  HomematicWindow: HomematicWindow,
32
19
  HomematicSteckdose: HomematicSteckdose,
33
20
  HomematicHeizkoerper: HomematicHeizkoerper,
@@ -60,5 +47,9 @@ module.exports = {
60
47
  deviceHomematicWindow: deviceHomematicWindow,
61
48
  deviceHomematicSteckdose: deviceHomematicSteckdose,
62
49
  deviceHomematicHeizkoerper: deviceHomematicHeizkoerper,
63
- deviceHomematicDimmer: deviceHomematicDimmer
50
+ deviceHomematicDimmer: deviceHomematicDimmer,
51
+ // homematicFunctions.ts
52
+ createDatenpunktDevice: createDatenpunktDevice,
53
+ getHomematicDevices: getHomematicDevices,
54
+ getHomematicDevicesAll: getHomematicDevicesAll
64
55
  };
package/main.ts CHANGED
@@ -1,31 +1,25 @@
1
- // https://stackoverflow.com/questions/8595509/how-do-you-share-constants-in-nodejs-modules
2
-
3
- const deviceHomematicWandthermostat: string = "Wandthermostat";
4
- const deviceHomematicPraesenzmelder: string = "Praesenzmelder";
5
- const deviceHomematicWetterstation: string = "Wetterstation";
6
- const deviceHomematicDoor: string = "Door";
7
- const deviceHomematicRollladen: string = "Rollladen";
8
- const deviceHomematicWandschalter: string = "Wandschalter";
9
- const deviceHomematicFussbodenheizung: string = "Fussbodenheizung";
10
- const deviceHomematicWandtaster: string = "Wandtaster";
11
- const deviceHomematicAccessPoint: string = "AccessPoint";
12
- const deviceHomematicTemperatursensor: string = "Temperatursensor";
13
- const deviceHomematicRauchmelder: string = "Rauchmelder";
14
- const deviceHomematicFunkSchaltaktor: string = "FunkSchaltaktor";
15
- const deviceHomematicWindow: string = "Window";
16
- const deviceHomematicSteckdose: string = "Steckdose";
17
- const deviceHomematicHeizkoerper: string = "Heizkoerper";
18
- const deviceHomematicDimmer: string = "Dimmer";
19
1
 
20
2
  const { DateHelper } = require('./date.js');
21
3
  const { DateCalendarTest } = require('./test.js');
22
4
  const { AbstractColumn, HtmlTable, HtmlCreator, StaticIconColumn, AbstractStandardTextColumn } = require('./html.js');
23
- const { getHomematicDevicesUwe, HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor } = require('./homematic.js');
5
+ const { HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor, deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer} = require('./homematicClasses.js');
6
+ const { createDatenpunktDevice, getHomematicDevices, getHomematicDevicesAll } = require('./homematicFunctions.js');
24
7
 
25
8
  module.exports = {
9
+
10
+ // date.ts:
26
11
  DateHelper,
12
+
13
+ // test.ts:
27
14
  DateCalendarTest,
15
+
16
+ // html.ts:
28
17
  AbstractColumn, HtmlTable, HtmlCreator, StaticIconColumn, AbstractStandardTextColumn,
29
- getHomematicDevicesUwe, HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor,
30
- deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer
18
+
19
+ // homematicClasses.ts
20
+ HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor,
21
+ deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer,
22
+
23
+ // homematicFunctions.ts
24
+ createDatenpunktDevice, getHomematicDevices, getHomematicDevicesAll
31
25
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker-ucl",
3
- "version": "1.0.41",
3
+ "version": "1.0.42",
4
4
  "main": "main.js",
5
5
  "scripts": {
6
6
  "build": "tsc --build",