iobroker-ucl 1.4.8 → 1.4.9

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,1190 +1,1190 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.loadZigbeeDevicesAll = exports.loadZigbeeFenstersensor = exports.loadZigbeeRepeater = exports.loadZigbeeSchalter = exports.loadZigbeeDosenrelais = exports.loadZigbeeWandtaster = exports.loadZigbeeRauchmelder = exports.loadZigbeeLampenWeiss = exports.loadZigbeeLampenRGB = exports.loadZigbeeBewegungsmelder = exports.loadZigbeeSteckdosen = exports.createZigbeeLampeRGB = exports.createZigbeeLampeWeiss = exports.createZigbeeSteckdose = exports.createZigbeeDosenrelais = exports.createZigbeeBewegungsmelder = exports.createZigbeeRauchmelder = exports.createZigbeeWandtaster = exports.createZigbeeSchalter = exports.createZigbeeRepeater = exports.createZigbeeFenstersensor = void 0;
4
- var _a = require('./zigbeeClasses.js'), AbstractZigbee = _a.AbstractZigbee, ColorScheme = _a.ColorScheme, RGBColorScheme = _a.RGBColorScheme, WhiteColorScheme = _a.WhiteColorScheme, ZigbeeLampeRGB = _a.ZigbeeLampeRGB, LampeWeissTasterScheme = _a.LampeWeissTasterScheme, LampeWeissAlexaScheme = _a.LampeWeissAlexaScheme, ZigbeeLampeWeiss = _a.ZigbeeLampeWeiss, ZigbeeSteckdose = _a.ZigbeeSteckdose, ZigbeeSchalter = _a.ZigbeeSchalter, ZigbeeRepeater = _a.ZigbeeRepeater, ZigbeeFenstersensor = _a.ZigbeeFenstersensor, ZigbeeRauchmelder = _a.ZigbeeRauchmelder, ZigbeeBewegungsmelder = _a.ZigbeeBewegungsmelder, ZigbeeWandtaster = _a.ZigbeeWandtaster, ZigbeeDosenrelais = _a.ZigbeeDosenrelais, AlexaInputConverter = _a.AlexaInputConverter, deviceZigbeeSteckdose = _a.deviceZigbeeSteckdose, deviceZigbeeBewegungsmelder = _a.deviceZigbeeBewegungsmelder, deviceZigbeeLampeRGB = _a.deviceZigbeeLampeRGB, deviceZigbeeLampeWeiss = _a.deviceZigbeeLampeWeiss, deviceZigbeeRauchmelder = _a.deviceZigbeeRauchmelder, deviceZigbeeWandtaster = _a.deviceZigbeeWandtaster, deviceZigbeeDosenrelais = _a.deviceZigbeeDosenrelais, deviceZigbeeSchalter = _a.deviceZigbeeSchalter, deviceZigbeeRepeater = _a.deviceZigbeeRepeater, deviceZigbeeFenstersensor = _a.deviceZigbeeFenstersensor;
5
- // Alexa:
6
- var attribute_AlexaSmartNamesForOn = "alexaSmartNamesForOn";
7
- var attribute_AlexaActionNamesForOn = "alexaActionNamesForOn";
8
- var attribute_AlexaSmartNamesForOff = "alexaSmartNamesForOff";
9
- var attribute_AlexaActionNamesForOff = "alexaActionNamesForOff";
10
- // Lampe Weiss spezifisch:
11
- var attributeLampeWeissGroup = "group";
12
- var attributeLampWeiss_AlexaColorSchemeForOn_Weiss_aktiv = "alexaColorSchemeForOn_Weiss_aktiv";
13
- var attributeLampWeiss_AlexaColorSchemeForOn_Weiss_level = "alexaColorSchemeForOn_Weiss_level";
14
- var attributeLampWeiss_AlexaColorSchemeForOn_Weiss_ct = "alexaColorSchemeForOn_Weiss_ct";
15
- var attributeLampWeiss_ColorSchemes_Weiss1_aktiv = "alexaColorSchemeForOn_Weiss1_aktiv";
16
- var attributeLampWeiss_ColorSchemes_Weiss1_name = "alexaColorSchemeForOn_Weiss1_name";
17
- var attributeLampWeiss_ColorSchemes_Weiss1_level = "alexaColorSchemeForOn_Weiss1_level";
18
- var attributeLampWeiss_ColorSchemes_Weiss1_ct = "alexaColorSchemeForOn_Weiss1_ct";
19
- var attributeLampWeiss_ColorSchemes_Weiss2_aktiv = "alexaColorSchemeForOn_Weiss2_aktiv";
20
- var attributeLampWeiss_ColorSchemes_Weiss2_name = "alexaColorSchemeForOn_Weiss2_name";
21
- var attributeLampWeiss_ColorSchemes_Weiss2_level = "alexaColorSchemeForOn_Weiss2_level";
22
- var attributeLampWeiss_ColorSchemes_Weiss2_ct = "alexaColorSchemeForOn_Weiss2_ct";
23
- var attributeLampWeiss_ColorSchemes_Weiss3_aktiv = "alexaColorSchemeForOn_Weiss3_aktiv";
24
- var attributeLampWeiss_ColorSchemes_Weiss3_name = "alexaColorSchemeForOn_Weiss3_name";
25
- var attributeLampWeiss_ColorSchemes_Weiss3_level = "alexaColorSchemeForOn_Weiss3_level";
26
- var attributeLampWeiss_ColorSchemes_Weiss3_ct = "alexaColorSchemeForOn_Weiss3_ct";
27
- var attributeLampWeiss_ColorSchemes_Weiss4_aktiv = "alexaColorSchemeForOn_Weiss4_aktiv";
28
- var attributeLampWeiss_ColorSchemes_Weiss4_name = "alexaColorSchemeForOn_Weiss4_name";
29
- var attributeLampWeiss_ColorSchemes_Weiss4_level = "alexaColorSchemeForOn_Weiss4_level";
30
- var attributeLampWeiss_ColorSchemes_Weiss4_ct = "alexaColorSchemeForOn_Weiss4_ct";
31
- var attributeLampWeiss_tasterBoolOn1_aktiv = "tasterBoolOn1_aktiv";
32
- var attributeLampWeiss_tasterBoolOn1_name = "tasterBoolOn1_name";
33
- var attributeLampWeiss_tasterBoolOn1_level = "tasterBoolOn1_level";
34
- var attributeLampWeiss_tasterBoolOn1_ct = "tasterBoolOn1_ct";
35
- var attributeLampWeiss_tasterBoolOn2_aktiv = "tasterBoolOn2_aktiv";
36
- var attributeLampWeiss_tasterBoolOn2_name = "tasterBoolOn2_name";
37
- var attributeLampWeiss_tasterBoolOn2_level = "tasterBoolOn2_level";
38
- var attributeLampWeiss_tasterBoolOn2_ct = "tasterBoolOn2_ct";
39
- var attributeLampWeiss_tasterBoolOn3_aktiv = "tasterBoolOn3_aktiv";
40
- var attributeLampWeiss_tasterBoolOn3_name = "tasterBoolOn3_name";
41
- var attributeLampWeiss_tasterBoolOn3_level = "tasterBoolOn3_level";
42
- var attributeLampWeiss_tasterBoolOn3_ct = "tasterBoolOn3_ct";
43
- var attributeLampWeiss_tasterBoolOn4_aktiv = "tasterBoolOn4_aktiv";
44
- var attributeLampWeiss_tasterBoolOn4_name = "tasterBoolOn4_name";
45
- var attributeLampWeiss_tasterBoolOn4_level = "tasterBoolOn4_level";
46
- var attributeLampWeiss_tasterBoolOn4_ct = "tasterBoolOn4_ct";
47
- // LampeRGB spezifisch:
48
- var attributeRGBLamp_Group = "group";
49
- var attributeRGBLamp_Groupmembers = "groupMembers";
50
- var attributeRGBLamp_AlexaColorSchemeForOn_Farbe_aktiv = "alexaColorSchemeForOn_Farbe_aktiv";
51
- var attributeRGBLamp_AlexaColorSchemeForOn_Farbe_level = "alexaColorSchemeForOn_Farbe_level";
52
- var attributeRGBLamp_AlexaColorSchemeForOn_Farbe_hue = "alexaColorSchemeForOn_Farbe_hue";
53
- var attributeRGBLamp_AlexaColorSchemeForOn_Farbe_sat = "alexaColorSchemeForOn_Farbe_sat";
54
- var attributeRGBLamp_AlexaColorSchemeForOn_Weiss_aktiv = "alexaColorSchemeForOn_Weiss_aktiv";
55
- var attributeRGBLamp_AlexaColorSchemeForOn_Weiss_level = "alexaColorSchemeForOn_Weiss_level";
56
- var attributeRGBLamp_AlexaColorSchemeForOn_Weiss_ct = "alexaColorSchemeForOn_Weiss_ct";
57
- var attributeRGBLamp_ColorSchemes_Farbe1_aktiv = "alexaColorSchemeForOn_Farbe1_aktiv";
58
- var attributeRGBLamp_ColorSchemes_Farbe1_name = "alexaColorSchemeForOn_Farbe1_name";
59
- var attributeRGBLamp_ColorSchemes_Farbe1_level = "alexaColorSchemeForOn_Farbe1_level";
60
- var attributeRGBLamp_ColorSchemes_Farbe1_hue = "alexaColorSchemeForOn_Farbe1_hue";
61
- var attributeRGBLamp_ColorSchemes_Farbe1_sat = "alexaColorSchemeForOn_Farbe1_sat";
62
- var attributeRGBLamp_ColorSchemes_Farbe2_aktiv = "alexaColorSchemeForOn_Farbe2_aktiv";
63
- var attributeRGBLamp_ColorSchemes_Farbe2_name = "alexaColorSchemeForOn_Farbe2_name";
64
- var attributeRGBLamp_ColorSchemes_Farbe2_level = "alexaColorSchemeForOn_Farbe2_level";
65
- var attributeRGBLamp_ColorSchemes_Farbe2_hue = "alexaColorSchemeForOn_Farbe2_hue";
66
- var attributeRGBLamp_ColorSchemes_Farbe2_sat = "alexaColorSchemeForOn_Farbe2_sat";
67
- var attributeRGBLamp_ColorSchemes_Farbe3_aktiv = "alexaColorSchemeForOn_Farbe3_aktiv";
68
- var attributeRGBLamp_ColorSchemes_Farbe3_name = "alexaColorSchemeForOn_Farbe3_name";
69
- var attributeRGBLamp_ColorSchemes_Farbe3_level = "alexaColorSchemeForOn_Farbe3_level";
70
- var attributeRGBLamp_ColorSchemes_Farbe3_hue = "alexaColorSchemeForOn_Farbe3_hue";
71
- var attributeRGBLamp_ColorSchemes_Farbe3_sat = "alexaColorSchemeForOn_Farbe3_sat";
72
- var attributeRGBLamp_ColorSchemes_Farbe4_aktiv = "alexaColorSchemeForOn_Farbe4_aktiv";
73
- var attributeRGBLamp_ColorSchemes_Farbe4_name = "alexaColorSchemeForOn_Farbe4_name";
74
- var attributeRGBLamp_ColorSchemes_Farbe4_level = "alexaColorSchemeForOn_Farbe4_level";
75
- var attributeRGBLamp_ColorSchemes_Farbe4_hue = "alexaColorSchemeForOn_Farbe4_hue";
76
- var attributeRGBLamp_ColorSchemes_Farbe4_sat = "alexaColorSchemeForOn_Farbe4_sat";
77
- var attributeRGBLamp_ColorSchemes_Weiss1_aktiv = "alexaColorSchemeForOn_Weiss1_aktiv";
78
- var attributeRGBLamp_ColorSchemes_Weiss1_name = "alexaColorSchemeForOn_Weiss1_name";
79
- var attributeRGBLamp_ColorSchemes_Weiss1_level = "alexaColorSchemeForOn_Weiss1_level";
80
- var attributeRGBLamp_ColorSchemes_Weiss1_ct = "alexaColorSchemeForOn_Weiss1_ct";
81
- var attributeRGBLamp_ColorSchemes_Weiss2_aktiv = "alexaColorSchemeForOn_Weiss2_aktiv";
82
- var attributeRGBLamp_ColorSchemes_Weiss2_name = "alexaColorSchemeForOn_Weiss2_name";
83
- var attributeRGBLamp_ColorSchemes_Weiss2_level = "alexaColorSchemeForOn_Weiss2_level";
84
- var attributeRGBLamp_ColorSchemes_Weiss2_ct = "alexaColorSchemeForOn_Weiss2_ct";
85
- var attributeRGBLamp_ColorSchemes_Weiss3_aktiv = "alexaColorSchemeForOn_Weiss3_aktiv";
86
- var attributeRGBLamp_ColorSchemes_Weiss3_name = "alexaColorSchemeForOn_Weiss3_name";
87
- var attributeRGBLamp_ColorSchemes_Weiss3_level = "alexaColorSchemeForOn_Weiss3_level";
88
- var attributeRGBLamp_ColorSchemes_Weiss3_ct = "alexaColorSchemeForOn_Weiss3_ct";
89
- var attributeRGBLamp_ColorSchemes_Weiss4_aktiv = "alexaColorSchemeForOn_Weiss4_aktiv";
90
- var attributeRGBLamp_ColorSchemes_Weiss4_name = "alexaColorSchemeForOn_Weiss4_name";
91
- var attributeRGBLamp_ColorSchemes_Weiss4_level = "alexaColorSchemeForOn_Weiss4_level";
92
- var attributeRGBLamp_ColorSchemes_Weiss4_ct = "alexaColorSchemeForOn_Weiss4_ct";
93
- // Dosenrelais:
94
- var attributeDosenrelais_smartNames = "smartNames";
95
- // Lampen/Steckdosen allgemein:
96
- var attribute_TasterBooleanOn = "tasterBooleanOn";
97
- var attribute_TasterBooleanOff = "tasterBooleanOff";
98
- var attribute_Nachtbeleuchtung = "nachtbeleuchtung";
99
- var attribute_TurnOffExitHouseSummer = "turnOffExitHouseSummer";
100
- var attribute_TurnOffExitHouseWinter = "turnOffExitHouseWinter";
101
- var attribute_TurnOnEnterHouseSummer = "turnOnEnterHouseSummer";
102
- var attribute_TurnOnEnterHouseWinter = "turnOnEnterHouseWinter";
103
- // Datenpunkttyp:
104
- var attributeTypeNumber = "number";
105
- var attributeTypeString = "string";
106
- var attributeTypeBoolean = "boolean";
107
- // Allgemein:
108
- var attributeRawID = "rawId";
109
- var attributeBaseState = "baseState";
110
- var attributeEtage = "etage";
111
- var attributeRaum = "raum";
112
- var attributeDevice = "device";
113
- var attributeCategory = "category";
114
- // Standarddevices, ohne zusätzliche Attribute:
115
- function createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, category) {
116
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRawID, rawId, category);
117
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeCategory, category, category);
118
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeBaseState, baseState, category);
119
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeEtage, etage, category);
120
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRaum, raum, category);
121
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeDevice, device, category);
122
- }
123
- // Fenstersensor:
124
- function createZigbeeFenstersensor(adapter, rawId, baseState, etage, raum, device) {
125
- createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeFenstersensor);
126
- }
127
- exports.createZigbeeFenstersensor = createZigbeeFenstersensor;
128
- // Repeater:
129
- function createZigbeeRepeater(adapter, rawId, baseState, etage, raum, device) {
130
- createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeRepeater);
131
- }
132
- exports.createZigbeeRepeater = createZigbeeRepeater;
133
- // Schalter:
134
- function createZigbeeSchalter(adapter, rawId, baseState, etage, raum, device) {
135
- createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeSchalter);
136
- }
137
- exports.createZigbeeSchalter = createZigbeeSchalter;
138
- // Wandtaster:
139
- function createZigbeeWandtaster(adapter, rawId, baseState, etage, raum, device) {
140
- createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeWandtaster);
141
- }
142
- exports.createZigbeeWandtaster = createZigbeeWandtaster;
143
- // Rauchmelder:
144
- function createZigbeeRauchmelder(adapter, rawId, baseState, etage, raum, device) {
145
- createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeRauchmelder);
146
- }
147
- exports.createZigbeeRauchmelder = createZigbeeRauchmelder;
148
- // Bewegungsmelder:
149
- function createZigbeeBewegungsmelder(adapter, rawId, baseState, etage, raum, device) {
150
- createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeBewegungsmelder);
151
- }
152
- exports.createZigbeeBewegungsmelder = createZigbeeBewegungsmelder;
153
- // Dosenrelais:
154
- function createZigbeeDosenrelais(adapter, rawId, baseState, etage, raum, device, smartNames) {
155
- // Allgemein:
156
- createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeDosenrelais);
157
- // Spezifisch:
158
- var db_smartNames = null;
159
- smartNames.forEach(function (value) {
160
- if (db_smartNames == null) {
161
- // @ts-ignore
162
- db_smartNames = value;
163
- }
164
- else {
165
- // @ts-ignore
166
- db_smartNames += "|" + value;
167
- }
168
- });
169
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeDosenrelais_smartNames, db_smartNames, deviceZigbeeDosenrelais);
170
- }
171
- exports.createZigbeeDosenrelais = createZigbeeDosenrelais;
172
- // Steckdose:
173
- function createZigbeeSteckdose(adapter, rawId, baseState, etage, raum, device, alexaSmartNamesForOn, alexaActionNamesForOn, alexaSmartNamesForOff, alexaActionNamesForOff, additionalStates4TurnOn, additionalStates4TurnOff) {
174
- // Allgemein:
175
- createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeSteckdose);
176
- // alexaSmartNamesForOn:string[]
177
- var db_alexaSmartNamesForOn = null;
178
- alexaSmartNamesForOn.forEach(function (value) {
179
- if (db_alexaSmartNamesForOn == null) {
180
- // @ts-ignore
181
- db_alexaSmartNamesForOn = value;
182
- }
183
- else {
184
- // @ts-ignore
185
- db_alexaSmartNamesForOn += "|" + value;
186
- }
187
- });
188
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaSmartNamesForOn, db_alexaSmartNamesForOn, deviceZigbeeSteckdose);
189
- // alexaActionNamesForOn:string[]
190
- var db_alexaActionNamesForOn = null;
191
- alexaActionNamesForOn.forEach(function (value) {
192
- if (db_alexaActionNamesForOn == null) {
193
- // @ts-ignore
194
- db_alexaActionNamesForOn = value;
195
- }
196
- else {
197
- // @ts-ignore
198
- db_alexaActionNamesForOn += "|" + value;
199
- }
200
- });
201
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaActionNamesForOn, db_alexaActionNamesForOn, deviceZigbeeSteckdose);
202
- // alexaSmartNamesForOff:string[]
203
- var db_alexaSmartNamesForOff = null;
204
- alexaSmartNamesForOff.forEach(function (value) {
205
- if (db_alexaSmartNamesForOff == null) {
206
- // @ts-ignore
207
- db_alexaSmartNamesForOff = value;
208
- }
209
- else {
210
- // @ts-ignore
211
- db_alexaSmartNamesForOff += "|" + value;
212
- }
213
- });
214
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaSmartNamesForOff, db_alexaSmartNamesForOff, deviceZigbeeSteckdose);
215
- // alexaActionNamesForOff:string[]
216
- var db_alexaActionNamesForOff = null;
217
- alexaActionNamesForOff.forEach(function (value) {
218
- if (db_alexaActionNamesForOff == null) {
219
- // @ts-ignore
220
- db_alexaActionNamesForOff = value;
221
- }
222
- else {
223
- // @ts-ignore
224
- db_alexaActionNamesForOff += "|" + value;
225
- }
226
- });
227
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaActionNamesForOff, db_alexaActionNamesForOff, deviceZigbeeSteckdose);
228
- // additionalStates4TurnOn: string[]
229
- var db_additionalStates4TurnOn = null;
230
- additionalStates4TurnOn.forEach(function (value) {
231
- if (db_additionalStates4TurnOn == null) {
232
- // @ts-ignore
233
- db_additionalStates4TurnOn = value;
234
- }
235
- else {
236
- // @ts-ignore
237
- db_additionalStates4TurnOn += "|" + value;
238
- }
239
- });
240
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_TasterBooleanOn, db_additionalStates4TurnOn, deviceZigbeeSteckdose);
241
- // additionalStates4TurnOff: string[]
242
- var db_additionalStates4TurnOff = null;
243
- additionalStates4TurnOff.forEach(function (value) {
244
- if (db_additionalStates4TurnOff == null) {
245
- // @ts-ignore
246
- db_additionalStates4TurnOff = value;
247
- }
248
- else {
249
- // @ts-ignore
250
- db_additionalStates4TurnOff += "|" + value;
251
- }
252
- });
253
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_TasterBooleanOff, db_additionalStates4TurnOff, deviceZigbeeSteckdose);
254
- }
255
- exports.createZigbeeSteckdose = createZigbeeSteckdose;
256
- // LampeWeiss:
257
- function createZigbeeLampeWeiss(adapter, rawId, baseState, etage, raum, device, alexaSmartNamesForOn, alexaActionNamesForOn, alexaLevelSchemeForOn, alexaSmartNamesForOff, alexaActionNamesForOff, colorSchemesWeiss1, colorSchemesWeiss2, colorSchemesWeiss3, colorSchemesWeiss4, isGroup, tasterBooleanOn1, tasterBooleanOn2, tasterBooleanOn3, tasterBooleanOn4, tasterBooleanOff, nachtbeleuchtung, turnOffExitHouseSummer, turnOffExitHouseWinter, turnOnEnterHouseSummer, turnOnEnterHouseWinter) {
258
- // Allgemein:
259
- createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeLampeWeiss);
260
- // alexaSmartNamesForOn:string[]
261
- var db_alexaSmartNamesForOn = null;
262
- alexaSmartNamesForOn.forEach(function (value) {
263
- if (db_alexaSmartNamesForOn == null) {
264
- // @ts-ignore
265
- db_alexaSmartNamesForOn = value;
266
- }
267
- else {
268
- // @ts-ignore
269
- db_alexaSmartNamesForOn += "|" + value;
270
- }
271
- });
272
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaSmartNamesForOn, db_alexaSmartNamesForOn, deviceZigbeeLampeWeiss);
273
- // alexaActionNamesForOn:string[]
274
- var db_alexaActionNamesForOn = null;
275
- alexaActionNamesForOn.forEach(function (value) {
276
- if (db_alexaActionNamesForOn == null) {
277
- // @ts-ignore
278
- db_alexaActionNamesForOn = value;
279
- }
280
- else {
281
- // @ts-ignore
282
- db_alexaActionNamesForOn += "|" + value;
283
- }
284
- });
285
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaActionNamesForOn, db_alexaActionNamesForOn, deviceZigbeeLampeWeiss);
286
- // alexaSmartNamesForOff:string[]
287
- var db_alexaSmartNamesForOff = null;
288
- alexaSmartNamesForOff.forEach(function (value) {
289
- if (db_alexaSmartNamesForOff == null) {
290
- // @ts-ignore
291
- db_alexaSmartNamesForOff = value;
292
- }
293
- else {
294
- // @ts-ignore
295
- db_alexaSmartNamesForOff += "|" + value;
296
- }
297
- });
298
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaSmartNamesForOff, db_alexaSmartNamesForOff, deviceZigbeeLampeWeiss);
299
- // alexaActionNamesForOff:string[]
300
- var db_alexaActionNamesForOff = null;
301
- alexaActionNamesForOff.forEach(function (value) {
302
- if (db_alexaActionNamesForOff == null) {
303
- // @ts-ignore
304
- db_alexaActionNamesForOff = value;
305
- }
306
- else {
307
- // @ts-ignore
308
- db_alexaActionNamesForOff += "|" + value;
309
- }
310
- });
311
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaActionNamesForOff, db_alexaActionNamesForOff, deviceZigbeeLampeWeiss);
312
- // tasterBooleanOn1 : LampeWeissTasterScheme
313
- if (tasterBooleanOn1 != null) {
314
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn1_aktiv, true, deviceZigbeeLampeWeiss);
315
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn1_name, tasterBooleanOn1.getTasterBooleanOnName(), deviceZigbeeLampeWeiss);
316
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn1_level, tasterBooleanOn1.getLevel(), deviceZigbeeLampeWeiss);
317
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn1_ct, tasterBooleanOn1.getCt(), deviceZigbeeLampeWeiss);
318
- }
319
- else {
320
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn1_aktiv, false, deviceZigbeeLampeWeiss);
321
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn1_name, null, deviceZigbeeLampeWeiss);
322
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn1_level, null, deviceZigbeeLampeWeiss);
323
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn1_ct, null, deviceZigbeeLampeWeiss); */
324
- }
325
- // tasterBooleanOn2 : LampeWeissTasterScheme
326
- if (tasterBooleanOn2 != null) {
327
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn2_aktiv, true, deviceZigbeeLampeWeiss);
328
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn2_name, tasterBooleanOn2.getTasterBooleanOnName(), deviceZigbeeLampeWeiss);
329
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn2_level, tasterBooleanOn2.getLevel(), deviceZigbeeLampeWeiss);
330
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn2_ct, tasterBooleanOn2.getCt(), deviceZigbeeLampeWeiss);
331
- }
332
- else {
333
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn2_aktiv, false, deviceZigbeeLampeWeiss);
334
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn2_name, null, deviceZigbeeLampeWeiss);
335
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn2_level, null, deviceZigbeeLampeWeiss);
336
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn2_ct, null, deviceZigbeeLampeWeiss); */
337
- }
338
- // tasterBooleanOn3 : LampeWeissTasterScheme
339
- if (tasterBooleanOn3 != null) {
340
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn3_aktiv, true, deviceZigbeeLampeWeiss);
341
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn3_name, tasterBooleanOn3.getTasterBooleanOnName(), deviceZigbeeLampeWeiss);
342
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn3_level, tasterBooleanOn3.getLevel(), deviceZigbeeLampeWeiss);
343
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn3_ct, tasterBooleanOn3.getCt(), deviceZigbeeLampeWeiss);
344
- }
345
- else {
346
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn3_aktiv, false, deviceZigbeeLampeWeiss);
347
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn3_name, null, deviceZigbeeLampeWeiss);
348
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn3_level, null, deviceZigbeeLampeWeiss);
349
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn3_ct, null, deviceZigbeeLampeWeiss); */
350
- }
351
- // tasterBooleanOn4 : LampeWeissTasterScheme
352
- if (tasterBooleanOn4 != null) {
353
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn4_aktiv, true, deviceZigbeeLampeWeiss);
354
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn4_name, tasterBooleanOn4.getTasterBooleanOnName(), deviceZigbeeLampeWeiss);
355
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn4_level, tasterBooleanOn4.getLevel(), deviceZigbeeLampeWeiss);
356
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn4_ct, tasterBooleanOn4.getCt(), deviceZigbeeLampeWeiss);
357
- }
358
- else {
359
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn4_aktiv, false, deviceZigbeeLampeWeiss);
360
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn4_name, null, deviceZigbeeLampeWeiss);
361
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn4_level, null, deviceZigbeeLampeWeiss);
362
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn4_ct, null, deviceZigbeeLampeWeiss); */
363
- }
364
- // tasterBooleanOff: string[]
365
- var db_tasterBooleanOff = null;
366
- tasterBooleanOff.forEach(function (value) {
367
- if (db_tasterBooleanOff == null) {
368
- // @ts-ignore
369
- db_tasterBooleanOff = value;
370
- }
371
- else {
372
- // @ts-ignore
373
- db_tasterBooleanOff += "|" + value;
374
- }
375
- });
376
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_TasterBooleanOff, db_tasterBooleanOff, deviceZigbeeLampeWeiss);
377
- // Weitere:
378
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_Nachtbeleuchtung, nachtbeleuchtung, deviceZigbeeLampeWeiss);
379
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOffExitHouseSummer, turnOffExitHouseSummer, deviceZigbeeLampeWeiss);
380
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOffExitHouseWinter, turnOffExitHouseWinter, deviceZigbeeLampeWeiss);
381
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOnEnterHouseSummer, turnOnEnterHouseSummer, deviceZigbeeLampeWeiss);
382
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOnEnterHouseWinter, turnOnEnterHouseWinter, deviceZigbeeLampeWeiss);
383
- // Gruppe:
384
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampeWeissGroup, isGroup, deviceZigbeeLampeWeiss);
385
- // alexaLevelSchemeForOn: LampeWeissAlexaScheme
386
- if (alexaLevelSchemeForOn != null) {
387
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_AlexaColorSchemeForOn_Weiss_aktiv, true, deviceZigbeeLampeWeiss);
388
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_AlexaColorSchemeForOn_Weiss_level, alexaLevelSchemeForOn.getLevel(), deviceZigbeeLampeWeiss);
389
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_AlexaColorSchemeForOn_Weiss_ct, alexaLevelSchemeForOn.getCt(), deviceZigbeeLampeWeiss);
390
- }
391
- else {
392
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_AlexaColorSchemeForOn_Weiss_aktiv, false, deviceZigbeeLampeWeiss);
393
- /*createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_AlexaColorSchemeForOn_Weiss_level, null, deviceZigbeeLampeWeiss);
394
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_AlexaColorSchemeForOn_Weiss_ct, null, deviceZigbeeLampeWeiss);*/
395
- }
396
- // colorSchemesWeiss1: LampeWeissAlexaScheme
397
- if (colorSchemesWeiss1 != null) {
398
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss1_aktiv, true, deviceZigbeeLampeWeiss);
399
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss1_name, colorSchemesWeiss1.getAlexaName(), deviceZigbeeLampeWeiss);
400
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss1_level, colorSchemesWeiss1.getLevel(), deviceZigbeeLampeWeiss);
401
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss1_ct, colorSchemesWeiss1.getCt(), deviceZigbeeLampeWeiss);
402
- }
403
- else {
404
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss1_aktiv, false, deviceZigbeeLampeWeiss);
405
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss1_name, null, deviceZigbeeLampeWeiss);
406
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss1_level, null, deviceZigbeeLampeWeiss);
407
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss1_ct, null, deviceZigbeeLampeWeiss);*/
408
- }
409
- // colorSchemesWeiss2: LampeWeissAlexaScheme
410
- if (colorSchemesWeiss2 != null) {
411
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss2_aktiv, true, deviceZigbeeLampeWeiss);
412
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss2_name, colorSchemesWeiss2.getAlexaName(), deviceZigbeeLampeWeiss);
413
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss2_level, colorSchemesWeiss2.getLevel(), deviceZigbeeLampeWeiss);
414
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss2_ct, colorSchemesWeiss2.getCt(), deviceZigbeeLampeWeiss);
415
- }
416
- else {
417
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss2_aktiv, false, deviceZigbeeLampeWeiss);
418
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss2_name, null, deviceZigbeeLampeWeiss);
419
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss2_level, null, deviceZigbeeLampeWeiss);
420
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss2_ct, null, deviceZigbeeLampeWeiss);*/
421
- }
422
- // colorSchemesWeiss3: LampeWeissAlexaScheme
423
- if (colorSchemesWeiss3 != null) {
424
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss3_aktiv, true, deviceZigbeeLampeWeiss);
425
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss3_name, colorSchemesWeiss3.getAlexaName(), deviceZigbeeLampeWeiss);
426
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss3_level, colorSchemesWeiss3.getLevel(), deviceZigbeeLampeWeiss);
427
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss3_ct, colorSchemesWeiss3.getCt(), deviceZigbeeLampeWeiss);
428
- }
429
- else {
430
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss3_aktiv, false, deviceZigbeeLampeWeiss);
431
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss3_name, null, deviceZigbeeLampeWeiss);
432
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss3_level, null, deviceZigbeeLampeWeiss);
433
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss3_ct, null, deviceZigbeeLampeWeiss);*/
434
- }
435
- // colorSchemesWeiss4: LampeWeissAlexaScheme
436
- if (colorSchemesWeiss4 != null) {
437
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss4_aktiv, true, deviceZigbeeLampeWeiss);
438
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss4_name, colorSchemesWeiss4.getAlexaName(), deviceZigbeeLampeWeiss);
439
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss4_level, colorSchemesWeiss4.getLevel(), deviceZigbeeLampeWeiss);
440
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss4_ct, colorSchemesWeiss4.getCt(), deviceZigbeeLampeWeiss);
441
- }
442
- else {
443
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss4_aktiv, false, deviceZigbeeLampeWeiss);
444
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss4_name, null, deviceZigbeeLampeWeiss);
445
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss4_level, null, deviceZigbeeLampeWeiss);
446
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss4_ct, null, deviceZigbeeLampeWeiss);*/
447
- }
448
- }
449
- exports.createZigbeeLampeWeiss = createZigbeeLampeWeiss;
450
- // LampeRGB:
451
- function createZigbeeLampeRGB(adapter, rawId, baseState, etage, raum, device, isGroup, groupMembers, alexaSmartNamesForOn, alexaActionNamesForOn, alexaColorSchemeForOnFarbe, alexaColorSchemeForOnWeiss, alexaSmartNamesForOff, alexaActionNamesForOff, colorSchemesFarbe1, colorSchemesFarbe2, colorSchemesFarbe3, colorSchemesFarbe4, colorSchemesWeiss1, colorSchemesWeiss2, colorSchemesWeiss3, colorSchemesWeiss4, tasterBooleanOn, tasterBooleanOff, nachtbeleuchtung, turnOffExitHouseSummer, turnOffExitHouseWinter, turnOnEnterHouseSummer, turnOnEnterHouseWinter) {
452
- var category = deviceZigbeeLampeRGB;
453
- // Allgemein:
454
- createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeLampeRGB);
455
- // Lampe-RGB spezifisch:
456
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_Group, isGroup, category);
457
- // groupMembers:string[]
458
- var db_groupMembers = null;
459
- groupMembers.forEach(function (value) {
460
- if (db_groupMembers == null) {
461
- // @ts-ignore
462
- db_groupMembers = value;
463
- }
464
- else {
465
- // @ts-ignore
466
- db_groupMembers += "|" + value;
467
- }
468
- });
469
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_Groupmembers, db_groupMembers, category);
470
- // alexaSmartNamesForOn:string[]
471
- var db_alexaSmartNamesForOn = null;
472
- alexaSmartNamesForOn.forEach(function (value) {
473
- if (db_alexaSmartNamesForOn == null) {
474
- // @ts-ignore
475
- db_alexaSmartNamesForOn = value;
476
- }
477
- else {
478
- // @ts-ignore
479
- db_alexaSmartNamesForOn += "|" + value;
480
- }
481
- });
482
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaSmartNamesForOn, db_alexaSmartNamesForOn, category);
483
- // alexaActionNamesForOn:string[]
484
- var db_alexaActionNamesForOn = null;
485
- alexaActionNamesForOn.forEach(function (value) {
486
- if (db_alexaActionNamesForOn == null) {
487
- // @ts-ignore
488
- db_alexaActionNamesForOn = value;
489
- }
490
- else {
491
- // @ts-ignore
492
- db_alexaActionNamesForOn += "|" + value;
493
- }
494
- });
495
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaActionNamesForOn, db_alexaActionNamesForOn, category);
496
- // alexaSmartNamesForOff:string[]
497
- var db_alexaSmartNamesForOff = null;
498
- alexaSmartNamesForOff.forEach(function (value) {
499
- if (db_alexaSmartNamesForOff == null) {
500
- // @ts-ignore
501
- db_alexaSmartNamesForOff = value;
502
- }
503
- else {
504
- // @ts-ignore
505
- db_alexaSmartNamesForOff += "|" + value;
506
- }
507
- });
508
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaSmartNamesForOff, db_alexaSmartNamesForOff, category);
509
- // alexaActionNamesForOff:string[]
510
- var db_alexaActionNamesForOff = null;
511
- alexaActionNamesForOff.forEach(function (value) {
512
- if (db_alexaActionNamesForOff == null) {
513
- // @ts-ignore
514
- db_alexaActionNamesForOff = value;
515
- }
516
- else {
517
- // @ts-ignore
518
- db_alexaActionNamesForOff += "|" + value;
519
- }
520
- });
521
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaActionNamesForOff, db_alexaActionNamesForOff, category);
522
- // tasterBooleanOn: string[]
523
- var db_tasterBooleanOn = null;
524
- tasterBooleanOn.forEach(function (value) {
525
- if (db_tasterBooleanOn == null) {
526
- // @ts-ignore
527
- db_tasterBooleanOn = value;
528
- }
529
- else {
530
- // @ts-ignore
531
- db_tasterBooleanOn += "|" + value;
532
- }
533
- });
534
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_TasterBooleanOn, db_tasterBooleanOn, category);
535
- // tasterBooleanOff: string[]
536
- var db_tasterBooleanOff = null;
537
- tasterBooleanOff.forEach(function (value) {
538
- if (db_tasterBooleanOff == null) {
539
- // @ts-ignore
540
- db_tasterBooleanOff = value;
541
- }
542
- else {
543
- // @ts-ignore
544
- db_tasterBooleanOff += "|" + value;
545
- }
546
- });
547
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_TasterBooleanOff, db_tasterBooleanOff, category);
548
- // Weitere:
549
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_Nachtbeleuchtung, nachtbeleuchtung, category);
550
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOffExitHouseSummer, turnOffExitHouseSummer, category);
551
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOffExitHouseWinter, turnOffExitHouseWinter, category);
552
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOnEnterHouseSummer, turnOnEnterHouseSummer, category);
553
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOnEnterHouseWinter, turnOnEnterHouseWinter, category);
554
- // alexaColorSchemeForOnFarbe: RGBColorScheme
555
- if (alexaColorSchemeForOnFarbe != null) {
556
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_aktiv, true, category);
557
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_level, alexaColorSchemeForOnFarbe.getLevel(), category);
558
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_hue, alexaColorSchemeForOnFarbe.getHue(), category);
559
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_sat, alexaColorSchemeForOnFarbe.getSat(), category);
560
- }
561
- else {
562
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_aktiv, false, category);
563
- /*createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_level, null, category);
564
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_hue, null, category);
565
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_sat, null, category);*/
566
- }
567
- // alexaColorSchemeForOnWeiss: WhiteColorScheme
568
- if (alexaColorSchemeForOnWeiss != null) {
569
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_AlexaColorSchemeForOn_Weiss_aktiv, true, category);
570
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Weiss_level, alexaColorSchemeForOnWeiss.getLevel(), category);
571
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Weiss_ct, alexaColorSchemeForOnWeiss.getCt(), category);
572
- }
573
- else {
574
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_AlexaColorSchemeForOn_Weiss_aktiv, false, category);
575
- /*createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Weiss_level, null, category);
576
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Weiss_ct, null, category);*/
577
- }
578
- // colorSchemesFarbe1: RGBColorScheme
579
- if (colorSchemesFarbe1 != null) {
580
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe1_aktiv, true, category);
581
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe1_name, colorSchemesFarbe1.getAlexaName(), category);
582
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe1_level, colorSchemesFarbe1.getLevel(), category);
583
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe1_hue, colorSchemesFarbe1.getHue(), category);
584
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe1_sat, colorSchemesFarbe1.getSat(), category);
585
- }
586
- else {
587
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe1_aktiv, false, category);
588
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe1_name, null, category);
589
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe1_level, null, category);
590
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe1_hue, null, category);
591
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe1_sat, null, category);*/
592
- }
593
- // colorSchemesFarbe2: RGBColorScheme
594
- if (colorSchemesFarbe2 != null) {
595
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe2_aktiv, true, category);
596
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe2_name, colorSchemesFarbe2.getAlexaName(), category);
597
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe2_level, colorSchemesFarbe2.getLevel(), category);
598
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe2_hue, colorSchemesFarbe2.getHue(), category);
599
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe2_sat, colorSchemesFarbe2.getSat(), category);
600
- }
601
- else {
602
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe2_aktiv, false, category);
603
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe2_name, null, category);
604
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe2_level, null, category);
605
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe2_hue, null, category);
606
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe2_sat, null, category);*/
607
- }
608
- // colorSchemesFarbe3: RGBColorScheme
609
- if (colorSchemesFarbe3 != null) {
610
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe3_aktiv, true, category);
611
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe3_name, colorSchemesFarbe3.getAlexaName(), category);
612
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe3_level, colorSchemesFarbe3.getLevel(), category);
613
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe3_hue, colorSchemesFarbe3.getHue(), category);
614
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe3_sat, colorSchemesFarbe3.getSat(), category);
615
- }
616
- else {
617
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe3_aktiv, false, category);
618
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe3_name, null, category);
619
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe3_level, null, category);
620
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe3_hue, null, category);
621
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe3_sat, null, category);*/
622
- }
623
- // colorSchemesFarbe4: RGBColorScheme
624
- if (colorSchemesFarbe4 != null) {
625
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe4_aktiv, true, category);
626
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe4_name, colorSchemesFarbe4.getAlexaName(), category);
627
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe4_level, colorSchemesFarbe4.getLevel(), category);
628
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe4_hue, colorSchemesFarbe4.getHue(), category);
629
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe4_sat, colorSchemesFarbe4.getSat(), category);
630
- }
631
- else {
632
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe4_aktiv, false, category);
633
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe4_name, null, category);
634
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe4_level, null, category);
635
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe4_hue, null, category);
636
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe4_sat, null, category);*/
637
- }
638
- // colorSchemesWeiss1: WhiteColorScheme
639
- if (colorSchemesWeiss1 != null) {
640
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss1_aktiv, true, category);
641
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss1_name, colorSchemesWeiss1.getAlexaName(), category);
642
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss1_level, colorSchemesWeiss1.getLevel(), category);
643
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss1_ct, colorSchemesWeiss1.getCt(), category);
644
- }
645
- else {
646
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss1_aktiv, false, category);
647
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss1_name, null, category);
648
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss1_level, null, category);
649
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss1_ct, null, category);*/
650
- }
651
- // colorSchemesWeiss2: WhiteColorScheme
652
- if (colorSchemesWeiss2 != null) {
653
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss2_aktiv, true, category);
654
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss2_name, colorSchemesWeiss2.getAlexaName(), category);
655
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss2_level, colorSchemesWeiss2.getLevel(), category);
656
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss2_ct, colorSchemesWeiss2.getCt(), category);
657
- }
658
- else {
659
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss2_aktiv, false, category);
660
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss2_name, null, category);
661
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss2_level, null, category);
662
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss2_ct, null, category);*/
663
- }
664
- // colorSchemesWeiss3: WhiteColorScheme
665
- if (colorSchemesWeiss3 != null) {
666
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss3_aktiv, true, category);
667
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss3_name, colorSchemesWeiss3.getAlexaName(), category);
668
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss3_level, colorSchemesWeiss3.getLevel(), category);
669
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss3_ct, colorSchemesWeiss3.getCt(), category);
670
- }
671
- else {
672
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss3_aktiv, false, category);
673
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss3_name, null, category);
674
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss3_level, null, category);
675
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss3_ct, null, category);*/
676
- }
677
- // colorSchemesWeiss4: WhiteColorScheme
678
- if (colorSchemesWeiss4 != null) {
679
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss4_aktiv, true, category);
680
- createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss4_name, colorSchemesWeiss4.getAlexaName(), category);
681
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss4_level, colorSchemesWeiss4.getLevel(), category);
682
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss4_ct, colorSchemesWeiss4.getCt(), category);
683
- }
684
- else {
685
- createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss4_aktiv, false, category);
686
- /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss4_name, null, category);
687
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss4_level, null, category);
688
- createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss4_ct, null, category);*/
689
- }
690
- }
691
- exports.createZigbeeLampeRGB = createZigbeeLampeRGB;
692
- function createDatenpunktSingle(adapter, deviceRawId, attributeType, attributeName, attributeValue, category) {
693
- var stateDatenpunkt = "0_userdata.0.devices.zigbee." + category + "." + deviceRawId + "." + attributeName;
694
- adapter.createState(stateDatenpunkt, attributeValue, {
695
- name: "Z" + deviceRawId.toString().padStart(3, '0'),
696
- desc: "",
697
- type: attributeType,
698
- read: true,
699
- write: true
700
- });
701
- }
702
- function toStringArray(databaseValue) {
703
- var stringArray = [];
704
- if (databaseValue == null) {
705
- return stringArray;
706
- }
707
- else {
708
- return databaseValue.split('|');
709
- }
710
- }
711
- var cacheSteckdosenArray = null;
712
- function loadZigbeeSteckdosen(adapter) {
713
- if (cacheSteckdosenArray != null) {
714
- return cacheSteckdosenArray;
715
- }
716
- // @ts-ignore
717
- cacheSteckdosenArray = [];
718
- adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
719
- var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
720
- if (adapter.getState(datenpunktKey).val == deviceZigbeeSteckdose) {
721
- // @ts-ignore
722
- cacheSteckdosenArray.push(new ZigbeeSteckdose(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
723
- adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
724
- adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
725
- adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
726
- adapter.getState(datenpunktPraefix + "." + attributeDevice).val, // [4] Device (z.B. Stehlampe)
727
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaSmartNamesForOn).val), // 08 Alexa-Ein
728
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaActionNamesForOn).val), // Alexa-Action-Ein, z.B. "Guten morgen" (Würde auch funktionieren, wenn dies bei [06] eingetragen ist)
729
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaSmartNamesForOff).val), // 09 Alexa-Aus
730
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaActionNamesForOff).val), // [10] Alexa-Action Aus, z.B. "Gute Nacht". Wir müssen hier zu [09] unterscheiden, da wir über "Gute Nacht" und isActionTurnedOn=true informiert werden.
731
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_TasterBooleanOn).val), // 07 TunrnOn-DP
732
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_TasterBooleanOff).val) // 08 TasterBoolOff-DP
733
- ));
734
- }
735
- });
736
- cacheSteckdosenArray = sortArray(cacheSteckdosenArray);
737
- return cacheSteckdosenArray;
738
- }
739
- exports.loadZigbeeSteckdosen = loadZigbeeSteckdosen;
740
- var cacheBewegungsmelderArray = null;
741
- function loadZigbeeBewegungsmelder(adapter) {
742
- if (cacheBewegungsmelderArray != null) {
743
- return cacheBewegungsmelderArray;
744
- }
745
- // @ts-ignore
746
- cacheBewegungsmelderArray = [];
747
- adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
748
- var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
749
- if (adapter.getState(datenpunktKey).val == deviceZigbeeBewegungsmelder) {
750
- // @ts-ignore
751
- cacheBewegungsmelderArray.push(new ZigbeeBewegungsmelder(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
752
- adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
753
- adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
754
- adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
755
- adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
756
- ));
757
- }
758
- });
759
- cacheBewegungsmelderArray = sortArray(cacheBewegungsmelderArray);
760
- return cacheBewegungsmelderArray;
761
- }
762
- exports.loadZigbeeBewegungsmelder = loadZigbeeBewegungsmelder;
763
- var cacheLampenRGBArray = null;
764
- function loadZigbeeLampenRGB(adapter) {
765
- if (cacheLampenRGBArray != null) {
766
- return cacheLampenRGBArray;
767
- }
768
- // @ts-ignore
769
- cacheLampenRGBArray = [];
770
- adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
771
- var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
772
- if (adapter.getState(datenpunktKey).val == deviceZigbeeLampeRGB) {
773
- // Einschalt-Scheme:
774
- var alexaOnScheme = null;
775
- if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Farbe_aktiv).val == true) {
776
- alexaOnScheme = new RGBColorScheme(null, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Farbe_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Farbe_hue).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Farbe_sat).val);
777
- }
778
- else if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Weiss_aktiv).val == true) {
779
- alexaOnScheme = new WhiteColorScheme(null, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Weiss_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Weiss_ct).val);
780
- }
781
- // Weitere Schemes als Array:
782
- var schemeArray = [];
783
- // RGBColorScheme1:
784
- if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe1_aktiv).val == true) {
785
- // @ts-ignore
786
- schemeArray.push(new RGBColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe1_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe1_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe1_hue).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe1_sat).val));
787
- }
788
- // RGBColorScheme2:
789
- if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe2_aktiv).val == true) {
790
- // @ts-ignore
791
- schemeArray.push(new RGBColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe2_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe2_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe2_hue).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe2_sat).val));
792
- }
793
- // RGBColorScheme3:
794
- if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe3_aktiv).val == true) {
795
- // @ts-ignore
796
- schemeArray.push(new RGBColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe3_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe3_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe3_hue).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe3_sat).val));
797
- }
798
- // RGBColorScheme4:
799
- if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe4_aktiv).val == true) {
800
- // @ts-ignore
801
- schemeArray.push(new RGBColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe4_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe4_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe4_hue).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe4_sat).val));
802
- }
803
- // WhiteColorScheme1:
804
- if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss1_aktiv).val == true) {
805
- // @ts-ignore
806
- schemeArray.push(new WhiteColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss1_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss1_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss1_ct).val));
807
- }
808
- // WhiteColorScheme2:
809
- if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss2_aktiv).val == true) {
810
- // @ts-ignore
811
- schemeArray.push(new WhiteColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss2_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss2_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss2_ct).val));
812
- }
813
- // WhiteColorScheme3:
814
- if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss3_aktiv).val == true) {
815
- // @ts-ignore
816
- schemeArray.push(new WhiteColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss3_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss3_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss3_ct).val));
817
- }
818
- // WhiteColorScheme4:
819
- if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss4_aktiv).val == true) {
820
- // @ts-ignore
821
- schemeArray.push(new WhiteColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss4_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss4_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss4_ct).val));
822
- }
823
- // @ts-ignore
824
- cacheLampenRGBArray.push(new ZigbeeLampeRGB(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
825
- adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
826
- adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
827
- adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
828
- adapter.getState(datenpunktPraefix + "." + attributeDevice).val, // [4] Device (z.B. Stehlampe)
829
- adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_Group).val, // [5] Gruppe
830
- toStringArray(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_Groupmembers).val), // [6] Gruppenmitglieder
831
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaSmartNamesForOn).val), // 08 Alexa-Ein
832
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaActionNamesForOn).val), // Alexa-Action-Ein, z.B. "Guten morgen" (Würde auch funktionieren, wenn dies bei [06] eingetragen ist)
833
- alexaOnScheme, // [09 A.-Ein-Scheme]
834
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaSmartNamesForOff).val), // 10 Alexa-Aus
835
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaActionNamesForOff).val), // [10] Alexa-Action Aus, z.B. "Gute Nacht". Wir müssen hier zu [09] unterscheiden, da wir über "Gute Nacht" und isActionTurnedOn=true informiert werden.
836
- schemeArray, // [12 Alexa-Schemes]
837
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_TasterBooleanOn).val), // 13 TasterBoolOn
838
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_TasterBooleanOff).val), // 14 TasterBoolOff
839
- adapter.getState(datenpunktPraefix + "." + attribute_Nachtbeleuchtung).val, // Gehört zur Nachtbeleuchtung ja/nein
840
- adapter.getState(datenpunktPraefix + "." + attribute_TurnOffExitHouseSummer).val, // turnOffExitHouseSummer (Ausschalten, wenn Haus verlassen - Sommer)
841
- adapter.getState(datenpunktPraefix + "." + attribute_TurnOffExitHouseWinter).val, // turnOffExitHouseWinter (Ausschalten, wenn Haus verlassen - Winter)
842
- adapter.getState(datenpunktPraefix + "." + attribute_TurnOnEnterHouseSummer).val, // turnOnEnterHouseSummer (Einschalten, wenn Haus betreten - Sommer)
843
- adapter.getState(datenpunktPraefix + "." + attribute_TurnOnEnterHouseWinter).val // turnOnEnterHouseWinter (Einschalten, wenn Haus betreten - Winter)
844
- ));
845
- }
846
- });
847
- cacheLampenRGBArray = sortArray(cacheLampenRGBArray);
848
- return cacheLampenRGBArray;
849
- }
850
- exports.loadZigbeeLampenRGB = loadZigbeeLampenRGB;
851
- var cacheLampenWeissArray = null;
852
- function loadZigbeeLampenWeiss(adapter) {
853
- if (cacheLampenWeissArray != null) {
854
- return cacheLampenWeissArray;
855
- }
856
- // @ts-ignore
857
- cacheLampenWeissArray = [];
858
- adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
859
- var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
860
- if (adapter.getState(datenpunktKey).val == deviceZigbeeLampeWeiss) {
861
- // Einschalt-Scheme:
862
- var alexaOnScheme = null;
863
- if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_AlexaColorSchemeForOn_Weiss_aktiv).val == true) {
864
- // @ts-ignore
865
- alexaOnScheme = new LampeWeissAlexaScheme(null, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_AlexaColorSchemeForOn_Weiss_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_AlexaColorSchemeForOn_Weiss_ct).val);
866
- }
867
- // Weitere Schemes als Array:
868
- var schemeArray = [];
869
- // WhiteColorScheme1:
870
- if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss1_aktiv).val == true) {
871
- // @ts-ignore
872
- schemeArray.push(new LampeWeissAlexaScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss1_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss1_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss1_ct).val));
873
- }
874
- // WhiteColorScheme2:
875
- if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss2_aktiv).val == true) {
876
- // @ts-ignore
877
- schemeArray.push(new LampeWeissAlexaScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss2_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss2_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss2_ct).val));
878
- }
879
- // WhiteColorScheme3:
880
- if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss3_aktiv).val == true) {
881
- // @ts-ignore
882
- schemeArray.push(new LampeWeissAlexaScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss3_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss3_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss3_ct).val));
883
- }
884
- // WhiteColorScheme4:
885
- if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss4_aktiv).val == true) {
886
- // @ts-ignore
887
- schemeArray.push(new LampeWeissAlexaScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss4_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss4_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss4_ct).val));
888
- }
889
- // Taster Boolean On Schemes:
890
- var tasterOnBoolschemeArray = [];
891
- // LampeWeissTasterScheme1:
892
- //constructor(tasterBooleanOn: string, level: number, ct: number) {
893
- if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn1_aktiv).val == true) {
894
- // @ts-ignore
895
- tasterOnBoolschemeArray.push(new LampeWeissTasterScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn1_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn1_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn1_ct).val));
896
- }
897
- // LampeWeissTasterScheme2:
898
- if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn2_aktiv).val == true) {
899
- // @ts-ignore
900
- tasterOnBoolschemeArray.push(new LampeWeissTasterScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn2_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn2_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn2_ct).val));
901
- }
902
- // LampeWeissTasterScheme3:
903
- if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn3_aktiv).val == true) {
904
- // @ts-ignore
905
- tasterOnBoolschemeArray.push(new LampeWeissTasterScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn3_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn3_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn3_ct).val));
906
- }
907
- // LampeWeissTasterScheme4:
908
- if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn4_aktiv).val == true) {
909
- // @ts-ignore
910
- tasterOnBoolschemeArray.push(new LampeWeissTasterScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn4_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn4_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn4_ct).val));
911
- }
912
- // @ts-ignore
913
- cacheLampenWeissArray.push(new ZigbeeLampeWeiss(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
914
- adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
915
- adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
916
- adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
917
- adapter.getState(datenpunktPraefix + "." + attributeDevice).val, // [4] Device (z.B. Stehlampe)
918
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaSmartNamesForOn).val), // 08 Alexa-Ein
919
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaActionNamesForOn).val), // Alexa-Action-Ein, z.B. "Guten morgen" (Würde auch funktionieren, wenn dies bei [06] eingetragen ist)
920
- alexaOnScheme, // [06 A.-Ein-Scheme] */ new LampeWeissAlexaScheme(null, 100, -1), // Letzter Paramter = -1 heußt, dass diese Lampe keine Farbtemperatur unterstützt. Ansonsten hier die Temperatur angeben
921
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaSmartNamesForOff).val), // 09 Alexa-Aus
922
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaActionNamesForOff).val), // [10] Alexa-Action Aus, z.B. "Gute Nacht". Wir müssen hier zu [09] unterscheiden, da wir über "Gute Nacht" und isActionTurnedOn=true informiert werden.
923
- schemeArray, // [08 Alexa-Schemes]
924
- adapter.getState(datenpunktPraefix + "." + attributeLampeWeissGroup).val, // [6] Gruppe
925
- tasterOnBoolschemeArray, // [07 TasterBoolOn ]
926
- toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_TasterBooleanOff).val), // 14 TasterBoolOff
927
- adapter.getState(datenpunktPraefix + "." + attribute_Nachtbeleuchtung).val, // Gehört zur Nachtbeleuchtung ja/nein
928
- adapter.getState(datenpunktPraefix + "." + attribute_TurnOffExitHouseSummer).val, // turnOffExitHouseSummer (Ausschalten, wenn Haus verlassen - Sommer)
929
- adapter.getState(datenpunktPraefix + "." + attribute_TurnOffExitHouseWinter).val, // turnOffExitHouseWinter (Ausschalten, wenn Haus verlassen - Winter)
930
- adapter.getState(datenpunktPraefix + "." + attribute_TurnOnEnterHouseSummer).val, // turnOnEnterHouseSummer (Einschalten, wenn Haus betreten - Sommer)
931
- adapter.getState(datenpunktPraefix + "." + attribute_TurnOnEnterHouseWinter).val // turnOnEnterHouseWinter (Einschalten, wenn Haus betreten - Winter)
932
- ));
933
- }
934
- });
935
- cacheLampenWeissArray = sortArray(cacheLampenWeissArray);
936
- return cacheLampenWeissArray;
937
- }
938
- exports.loadZigbeeLampenWeiss = loadZigbeeLampenWeiss;
939
- var cacheRauchmelderArray = null;
940
- function loadZigbeeRauchmelder(adapter) {
941
- if (cacheRauchmelderArray != null) {
942
- return cacheRauchmelderArray;
943
- }
944
- // @ts-ignore
945
- cacheRauchmelderArray = [];
946
- adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
947
- var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
948
- if (adapter.getState(datenpunktKey).val == deviceZigbeeRauchmelder) {
949
- // @ts-ignore
950
- cacheRauchmelderArray.push(new ZigbeeRauchmelder(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
951
- adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
952
- adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
953
- adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
954
- adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
955
- ));
956
- }
957
- });
958
- cacheRauchmelderArray = sortArray(cacheRauchmelderArray);
959
- return cacheRauchmelderArray;
960
- }
961
- exports.loadZigbeeRauchmelder = loadZigbeeRauchmelder;
962
- var cacheWandtasterArray = null;
963
- function loadZigbeeWandtaster(adapter) {
964
- if (cacheWandtasterArray != null) {
965
- return cacheWandtasterArray;
966
- }
967
- // @ts-ignore
968
- cacheWandtasterArray = [];
969
- adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
970
- var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
971
- if (adapter.getState(datenpunktKey).val == deviceZigbeeWandtaster) {
972
- // @ts-ignore
973
- cacheWandtasterArray.push(new ZigbeeWandtaster(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
974
- adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
975
- adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
976
- adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
977
- adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
978
- ));
979
- }
980
- });
981
- cacheWandtasterArray = sortArray(cacheWandtasterArray);
982
- return cacheWandtasterArray;
983
- }
984
- exports.loadZigbeeWandtaster = loadZigbeeWandtaster;
985
- var cacheDosenrelaisArray = null;
986
- function loadZigbeeDosenrelais(adapter) {
987
- if (cacheDosenrelaisArray != null) {
988
- return cacheDosenrelaisArray;
989
- }
990
- // @ts-ignore
991
- cacheDosenrelaisArray = [];
992
- adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
993
- var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
994
- if (adapter.getState(datenpunktKey).val == deviceZigbeeDosenrelais) {
995
- // @ts-ignore
996
- cacheDosenrelaisArray.push(new ZigbeeDosenrelais(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
997
- adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
998
- adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
999
- adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
1000
- adapter.getState(datenpunktPraefix + "." + attributeDevice).val, // [4] Device (z.B. Stehlampe)
1001
- toStringArray(adapter.getState(datenpunktPraefix + "." + attributeDosenrelais_smartNames).val) // 14 TasterBoolOff
1002
- ));
1003
- }
1004
- });
1005
- cacheDosenrelaisArray = sortArray(cacheDosenrelaisArray);
1006
- return cacheDosenrelaisArray;
1007
- }
1008
- exports.loadZigbeeDosenrelais = loadZigbeeDosenrelais;
1009
- var cacheSchalterArray = null;
1010
- function loadZigbeeSchalter(adapter) {
1011
- if (cacheSchalterArray != null) {
1012
- return cacheSchalterArray;
1013
- }
1014
- // @ts-ignore
1015
- cacheSchalterArray = [];
1016
- adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
1017
- var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
1018
- if (adapter.getState(datenpunktKey).val == deviceZigbeeSchalter) {
1019
- // @ts-ignore
1020
- cacheSchalterArray.push(new ZigbeeSchalter(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
1021
- adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
1022
- adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
1023
- adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
1024
- adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
1025
- ));
1026
- }
1027
- });
1028
- cacheSchalterArray = sortArray(cacheSchalterArray);
1029
- return cacheSchalterArray;
1030
- }
1031
- exports.loadZigbeeSchalter = loadZigbeeSchalter;
1032
- var cacheRepeaterArray = null;
1033
- function loadZigbeeRepeater(adapter) {
1034
- if (cacheRepeaterArray != null) {
1035
- return cacheRepeaterArray;
1036
- }
1037
- // @ts-ignore
1038
- cacheRepeaterArray = [];
1039
- adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
1040
- var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
1041
- if (adapter.getState(datenpunktKey).val == deviceZigbeeRepeater) {
1042
- // @ts-ignore
1043
- cacheRepeaterArray.push(new ZigbeeRepeater(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
1044
- adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
1045
- adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
1046
- adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
1047
- adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
1048
- ));
1049
- }
1050
- });
1051
- cacheRepeaterArray = sortArray(cacheRepeaterArray);
1052
- return cacheRepeaterArray;
1053
- }
1054
- exports.loadZigbeeRepeater = loadZigbeeRepeater;
1055
- var cacheFenstersensorenArray = null;
1056
- function loadZigbeeFenstersensor(adapter) {
1057
- if (cacheFenstersensorenArray != null) {
1058
- return cacheFenstersensorenArray;
1059
- }
1060
- // @ts-ignore
1061
- cacheFenstersensorenArray = [];
1062
- adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
1063
- var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
1064
- if (adapter.getState(datenpunktKey).val == deviceZigbeeFenstersensor) {
1065
- // @ts-ignore
1066
- cacheFenstersensorenArray.push(new ZigbeeFenstersensor(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
1067
- adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
1068
- adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
1069
- adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
1070
- adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
1071
- ));
1072
- }
1073
- });
1074
- cacheFenstersensorenArray = sortArray(cacheFenstersensorenArray);
1075
- return cacheFenstersensorenArray;
1076
- }
1077
- exports.loadZigbeeFenstersensor = loadZigbeeFenstersensor;
1078
- //var zigbeeAllArray = null;
1079
- function loadZigbeeDevicesAll(adapter) {
1080
- /* if (zigbeeAllArray != null) {
1081
- // @ts-ignore
1082
- return zigbeeAllArray;
1083
- }*/
1084
- // @ts-ignore
1085
- var zigbeeAllArray = [];
1086
- adapter.loadZigbeeSteckdosen(adapter).forEach(function (zigbee) {
1087
- // @ts-ignore
1088
- zigbeeAllArray.push(zigbee);
1089
- });
1090
- adapter.loadZigbeeBewegungsmelder(adapter).forEach(function (zigbee) {
1091
- // @ts-ignore
1092
- zigbeeAllArray.push(zigbee);
1093
- });
1094
- adapter.loadZigbeeLampenRGB(adapter).forEach(function (zigbee) {
1095
- // @ts-ignore
1096
- zigbeeAllArray.push(zigbee);
1097
- });
1098
- adapter.loadZigbeeLampenWeiss(adapter).forEach(function (zigbee) {
1099
- // @ts-ignore
1100
- zigbeeAllArray.push(zigbee);
1101
- });
1102
- adapter.loadZigbeeRauchmelder(adapter).forEach(function (zigbee) {
1103
- // @ts-ignore
1104
- zigbeeAllArray.push(zigbee);
1105
- });
1106
- adapter.loadZigbeeWandtaster(adapter).forEach(function (zigbee) {
1107
- // @ts-ignore
1108
- zigbeeAllArray.push(zigbee);
1109
- });
1110
- adapter.loadZigbeeDosenrelais(adapter).forEach(function (zigbee) {
1111
- // @ts-ignore
1112
- zigbeeAllArray.push(zigbee);
1113
- });
1114
- adapter.loadZigbeeSchalter(adapter).forEach(function (zigbee) {
1115
- // @ts-ignore
1116
- zigbeeAllArray.push(zigbee);
1117
- });
1118
- adapter.loadZigbeeRepeater(adapter).forEach(function (zigbee) {
1119
- // @ts-ignore
1120
- zigbeeAllArray.push(zigbee);
1121
- });
1122
- adapter.loadZigbeeFenstersensor(adapter).forEach(function (zigbee) {
1123
- // @ts-ignore
1124
- zigbeeAllArray.push(zigbee);
1125
- });
1126
- zigbeeAllArray = sortArray(zigbeeAllArray);
1127
- return zigbeeAllArray;
1128
- }
1129
- exports.loadZigbeeDevicesAll = loadZigbeeDevicesAll;
1130
- function clearZigbeeCaches(adapter) {
1131
- // zigbeeAllArray = null;
1132
- cacheFenstersensorenArray = null;
1133
- cacheRepeaterArray = null;
1134
- cacheSchalterArray = null;
1135
- cacheDosenrelaisArray = null;
1136
- cacheWandtasterArray = null;
1137
- cacheRauchmelderArray = null;
1138
- cacheLampenWeissArray = null;
1139
- cacheLampenRGBArray = null;
1140
- cacheBewegungsmelderArray = null;
1141
- cacheSteckdosenArray = null;
1142
- adapter.log(">>> Zigbee cache cleared!! <<<");
1143
- }
1144
- function sortArray(inputArray) {
1145
- inputArray.sort(function (a, b) {
1146
- var elementA = a;
1147
- var elementB = b;
1148
- var etageA = elementA.getEtage();
1149
- var etageB = elementB.getEtage();
1150
- var compareEtage = getEtageSortIndex(etageA).localeCompare(getEtageSortIndex(etageB));
1151
- if (compareEtage != 0) {
1152
- return compareEtage;
1153
- }
1154
- var typA = elementA.getCategory();
1155
- var typB = elementB.getCategory();
1156
- var compareTyp = typA.localeCompare(typB);
1157
- if (compareTyp != 0) {
1158
- return compareTyp;
1159
- }
1160
- var raumA = elementA.getRaum();
1161
- var raumB = elementB.getRaum();
1162
- var compareRaum = raumA.localeCompare(raumB);
1163
- if (compareRaum != 0) {
1164
- return compareRaum;
1165
- }
1166
- var deviceA = elementA.getDevice();
1167
- var deviceB = elementB.getDevice();
1168
- var compareDevice = deviceA.localeCompare(deviceB);
1169
- if (compareDevice != 0) {
1170
- return compareDevice;
1171
- }
1172
- return 0;
1173
- });
1174
- return inputArray;
1175
- }
1176
- function getEtageSortIndex(etage) {
1177
- if (etage == "OG") {
1178
- return "a";
1179
- }
1180
- else if (etage == "EG") {
1181
- return "b";
1182
- }
1183
- else if (etage == "UG") {
1184
- return "c";
1185
- }
1186
- else {
1187
- return "d";
1188
- }
1189
- }
1190
- module.exports = { createZigbeeDosenrelais: createZigbeeDosenrelais, createZigbeeLampeRGB: createZigbeeLampeRGB, createZigbeeLampeWeiss: createZigbeeLampeWeiss, createZigbeeSteckdose: createZigbeeSteckdose, createZigbeeBewegungsmelder: createZigbeeBewegungsmelder, createZigbeeRauchmelder: createZigbeeRauchmelder, createZigbeeWandtaster: createZigbeeWandtaster, createZigbeeSchalter: createZigbeeSchalter, createZigbeeRepeater: createZigbeeRepeater, createZigbeeFenstersensor: createZigbeeFenstersensor, loadZigbeeSteckdosen: loadZigbeeSteckdosen, loadZigbeeBewegungsmelder: loadZigbeeBewegungsmelder, loadZigbeeLampenRGB: loadZigbeeLampenRGB, loadZigbeeLampenWeiss: loadZigbeeLampenWeiss, loadZigbeeRauchmelder: loadZigbeeRauchmelder, loadZigbeeWandtaster: loadZigbeeWandtaster, loadZigbeeDosenrelais: loadZigbeeDosenrelais, loadZigbeeSchalter: loadZigbeeSchalter, loadZigbeeRepeater: loadZigbeeRepeater, loadZigbeeFenstersensor: loadZigbeeFenstersensor, loadZigbeeDevicesAll: loadZigbeeDevicesAll, clearZigbeeCaches: clearZigbeeCaches };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.loadZigbeeDevicesAll = exports.loadZigbeeFenstersensor = exports.loadZigbeeRepeater = exports.loadZigbeeSchalter = exports.loadZigbeeDosenrelais = exports.loadZigbeeWandtaster = exports.loadZigbeeRauchmelder = exports.loadZigbeeLampenWeiss = exports.loadZigbeeLampenRGB = exports.loadZigbeeBewegungsmelder = exports.loadZigbeeSteckdosen = exports.createZigbeeLampeRGB = exports.createZigbeeLampeWeiss = exports.createZigbeeSteckdose = exports.createZigbeeDosenrelais = exports.createZigbeeBewegungsmelder = exports.createZigbeeRauchmelder = exports.createZigbeeWandtaster = exports.createZigbeeSchalter = exports.createZigbeeRepeater = exports.createZigbeeFenstersensor = void 0;
4
+ var _a = require('./zigbeeClasses.js'), AbstractZigbee = _a.AbstractZigbee, ColorScheme = _a.ColorScheme, RGBColorScheme = _a.RGBColorScheme, WhiteColorScheme = _a.WhiteColorScheme, ZigbeeLampeRGB = _a.ZigbeeLampeRGB, LampeWeissTasterScheme = _a.LampeWeissTasterScheme, LampeWeissAlexaScheme = _a.LampeWeissAlexaScheme, ZigbeeLampeWeiss = _a.ZigbeeLampeWeiss, ZigbeeSteckdose = _a.ZigbeeSteckdose, ZigbeeSchalter = _a.ZigbeeSchalter, ZigbeeRepeater = _a.ZigbeeRepeater, ZigbeeFenstersensor = _a.ZigbeeFenstersensor, ZigbeeRauchmelder = _a.ZigbeeRauchmelder, ZigbeeBewegungsmelder = _a.ZigbeeBewegungsmelder, ZigbeeWandtaster = _a.ZigbeeWandtaster, ZigbeeDosenrelais = _a.ZigbeeDosenrelais, AlexaInputConverter = _a.AlexaInputConverter, deviceZigbeeSteckdose = _a.deviceZigbeeSteckdose, deviceZigbeeBewegungsmelder = _a.deviceZigbeeBewegungsmelder, deviceZigbeeLampeRGB = _a.deviceZigbeeLampeRGB, deviceZigbeeLampeWeiss = _a.deviceZigbeeLampeWeiss, deviceZigbeeRauchmelder = _a.deviceZigbeeRauchmelder, deviceZigbeeWandtaster = _a.deviceZigbeeWandtaster, deviceZigbeeDosenrelais = _a.deviceZigbeeDosenrelais, deviceZigbeeSchalter = _a.deviceZigbeeSchalter, deviceZigbeeRepeater = _a.deviceZigbeeRepeater, deviceZigbeeFenstersensor = _a.deviceZigbeeFenstersensor;
5
+ // Alexa:
6
+ var attribute_AlexaSmartNamesForOn = "alexaSmartNamesForOn";
7
+ var attribute_AlexaActionNamesForOn = "alexaActionNamesForOn";
8
+ var attribute_AlexaSmartNamesForOff = "alexaSmartNamesForOff";
9
+ var attribute_AlexaActionNamesForOff = "alexaActionNamesForOff";
10
+ // Lampe Weiss spezifisch:
11
+ var attributeLampeWeissGroup = "group";
12
+ var attributeLampWeiss_AlexaColorSchemeForOn_Weiss_aktiv = "alexaColorSchemeForOn_Weiss_aktiv";
13
+ var attributeLampWeiss_AlexaColorSchemeForOn_Weiss_level = "alexaColorSchemeForOn_Weiss_level";
14
+ var attributeLampWeiss_AlexaColorSchemeForOn_Weiss_ct = "alexaColorSchemeForOn_Weiss_ct";
15
+ var attributeLampWeiss_ColorSchemes_Weiss1_aktiv = "alexaColorSchemeForOn_Weiss1_aktiv";
16
+ var attributeLampWeiss_ColorSchemes_Weiss1_name = "alexaColorSchemeForOn_Weiss1_name";
17
+ var attributeLampWeiss_ColorSchemes_Weiss1_level = "alexaColorSchemeForOn_Weiss1_level";
18
+ var attributeLampWeiss_ColorSchemes_Weiss1_ct = "alexaColorSchemeForOn_Weiss1_ct";
19
+ var attributeLampWeiss_ColorSchemes_Weiss2_aktiv = "alexaColorSchemeForOn_Weiss2_aktiv";
20
+ var attributeLampWeiss_ColorSchemes_Weiss2_name = "alexaColorSchemeForOn_Weiss2_name";
21
+ var attributeLampWeiss_ColorSchemes_Weiss2_level = "alexaColorSchemeForOn_Weiss2_level";
22
+ var attributeLampWeiss_ColorSchemes_Weiss2_ct = "alexaColorSchemeForOn_Weiss2_ct";
23
+ var attributeLampWeiss_ColorSchemes_Weiss3_aktiv = "alexaColorSchemeForOn_Weiss3_aktiv";
24
+ var attributeLampWeiss_ColorSchemes_Weiss3_name = "alexaColorSchemeForOn_Weiss3_name";
25
+ var attributeLampWeiss_ColorSchemes_Weiss3_level = "alexaColorSchemeForOn_Weiss3_level";
26
+ var attributeLampWeiss_ColorSchemes_Weiss3_ct = "alexaColorSchemeForOn_Weiss3_ct";
27
+ var attributeLampWeiss_ColorSchemes_Weiss4_aktiv = "alexaColorSchemeForOn_Weiss4_aktiv";
28
+ var attributeLampWeiss_ColorSchemes_Weiss4_name = "alexaColorSchemeForOn_Weiss4_name";
29
+ var attributeLampWeiss_ColorSchemes_Weiss4_level = "alexaColorSchemeForOn_Weiss4_level";
30
+ var attributeLampWeiss_ColorSchemes_Weiss4_ct = "alexaColorSchemeForOn_Weiss4_ct";
31
+ var attributeLampWeiss_tasterBoolOn1_aktiv = "tasterBoolOn1_aktiv";
32
+ var attributeLampWeiss_tasterBoolOn1_name = "tasterBoolOn1_name";
33
+ var attributeLampWeiss_tasterBoolOn1_level = "tasterBoolOn1_level";
34
+ var attributeLampWeiss_tasterBoolOn1_ct = "tasterBoolOn1_ct";
35
+ var attributeLampWeiss_tasterBoolOn2_aktiv = "tasterBoolOn2_aktiv";
36
+ var attributeLampWeiss_tasterBoolOn2_name = "tasterBoolOn2_name";
37
+ var attributeLampWeiss_tasterBoolOn2_level = "tasterBoolOn2_level";
38
+ var attributeLampWeiss_tasterBoolOn2_ct = "tasterBoolOn2_ct";
39
+ var attributeLampWeiss_tasterBoolOn3_aktiv = "tasterBoolOn3_aktiv";
40
+ var attributeLampWeiss_tasterBoolOn3_name = "tasterBoolOn3_name";
41
+ var attributeLampWeiss_tasterBoolOn3_level = "tasterBoolOn3_level";
42
+ var attributeLampWeiss_tasterBoolOn3_ct = "tasterBoolOn3_ct";
43
+ var attributeLampWeiss_tasterBoolOn4_aktiv = "tasterBoolOn4_aktiv";
44
+ var attributeLampWeiss_tasterBoolOn4_name = "tasterBoolOn4_name";
45
+ var attributeLampWeiss_tasterBoolOn4_level = "tasterBoolOn4_level";
46
+ var attributeLampWeiss_tasterBoolOn4_ct = "tasterBoolOn4_ct";
47
+ // LampeRGB spezifisch:
48
+ var attributeRGBLamp_Group = "group";
49
+ var attributeRGBLamp_Groupmembers = "groupMembers";
50
+ var attributeRGBLamp_AlexaColorSchemeForOn_Farbe_aktiv = "alexaColorSchemeForOn_Farbe_aktiv";
51
+ var attributeRGBLamp_AlexaColorSchemeForOn_Farbe_level = "alexaColorSchemeForOn_Farbe_level";
52
+ var attributeRGBLamp_AlexaColorSchemeForOn_Farbe_hue = "alexaColorSchemeForOn_Farbe_hue";
53
+ var attributeRGBLamp_AlexaColorSchemeForOn_Farbe_sat = "alexaColorSchemeForOn_Farbe_sat";
54
+ var attributeRGBLamp_AlexaColorSchemeForOn_Weiss_aktiv = "alexaColorSchemeForOn_Weiss_aktiv";
55
+ var attributeRGBLamp_AlexaColorSchemeForOn_Weiss_level = "alexaColorSchemeForOn_Weiss_level";
56
+ var attributeRGBLamp_AlexaColorSchemeForOn_Weiss_ct = "alexaColorSchemeForOn_Weiss_ct";
57
+ var attributeRGBLamp_ColorSchemes_Farbe1_aktiv = "alexaColorSchemeForOn_Farbe1_aktiv";
58
+ var attributeRGBLamp_ColorSchemes_Farbe1_name = "alexaColorSchemeForOn_Farbe1_name";
59
+ var attributeRGBLamp_ColorSchemes_Farbe1_level = "alexaColorSchemeForOn_Farbe1_level";
60
+ var attributeRGBLamp_ColorSchemes_Farbe1_hue = "alexaColorSchemeForOn_Farbe1_hue";
61
+ var attributeRGBLamp_ColorSchemes_Farbe1_sat = "alexaColorSchemeForOn_Farbe1_sat";
62
+ var attributeRGBLamp_ColorSchemes_Farbe2_aktiv = "alexaColorSchemeForOn_Farbe2_aktiv";
63
+ var attributeRGBLamp_ColorSchemes_Farbe2_name = "alexaColorSchemeForOn_Farbe2_name";
64
+ var attributeRGBLamp_ColorSchemes_Farbe2_level = "alexaColorSchemeForOn_Farbe2_level";
65
+ var attributeRGBLamp_ColorSchemes_Farbe2_hue = "alexaColorSchemeForOn_Farbe2_hue";
66
+ var attributeRGBLamp_ColorSchemes_Farbe2_sat = "alexaColorSchemeForOn_Farbe2_sat";
67
+ var attributeRGBLamp_ColorSchemes_Farbe3_aktiv = "alexaColorSchemeForOn_Farbe3_aktiv";
68
+ var attributeRGBLamp_ColorSchemes_Farbe3_name = "alexaColorSchemeForOn_Farbe3_name";
69
+ var attributeRGBLamp_ColorSchemes_Farbe3_level = "alexaColorSchemeForOn_Farbe3_level";
70
+ var attributeRGBLamp_ColorSchemes_Farbe3_hue = "alexaColorSchemeForOn_Farbe3_hue";
71
+ var attributeRGBLamp_ColorSchemes_Farbe3_sat = "alexaColorSchemeForOn_Farbe3_sat";
72
+ var attributeRGBLamp_ColorSchemes_Farbe4_aktiv = "alexaColorSchemeForOn_Farbe4_aktiv";
73
+ var attributeRGBLamp_ColorSchemes_Farbe4_name = "alexaColorSchemeForOn_Farbe4_name";
74
+ var attributeRGBLamp_ColorSchemes_Farbe4_level = "alexaColorSchemeForOn_Farbe4_level";
75
+ var attributeRGBLamp_ColorSchemes_Farbe4_hue = "alexaColorSchemeForOn_Farbe4_hue";
76
+ var attributeRGBLamp_ColorSchemes_Farbe4_sat = "alexaColorSchemeForOn_Farbe4_sat";
77
+ var attributeRGBLamp_ColorSchemes_Weiss1_aktiv = "alexaColorSchemeForOn_Weiss1_aktiv";
78
+ var attributeRGBLamp_ColorSchemes_Weiss1_name = "alexaColorSchemeForOn_Weiss1_name";
79
+ var attributeRGBLamp_ColorSchemes_Weiss1_level = "alexaColorSchemeForOn_Weiss1_level";
80
+ var attributeRGBLamp_ColorSchemes_Weiss1_ct = "alexaColorSchemeForOn_Weiss1_ct";
81
+ var attributeRGBLamp_ColorSchemes_Weiss2_aktiv = "alexaColorSchemeForOn_Weiss2_aktiv";
82
+ var attributeRGBLamp_ColorSchemes_Weiss2_name = "alexaColorSchemeForOn_Weiss2_name";
83
+ var attributeRGBLamp_ColorSchemes_Weiss2_level = "alexaColorSchemeForOn_Weiss2_level";
84
+ var attributeRGBLamp_ColorSchemes_Weiss2_ct = "alexaColorSchemeForOn_Weiss2_ct";
85
+ var attributeRGBLamp_ColorSchemes_Weiss3_aktiv = "alexaColorSchemeForOn_Weiss3_aktiv";
86
+ var attributeRGBLamp_ColorSchemes_Weiss3_name = "alexaColorSchemeForOn_Weiss3_name";
87
+ var attributeRGBLamp_ColorSchemes_Weiss3_level = "alexaColorSchemeForOn_Weiss3_level";
88
+ var attributeRGBLamp_ColorSchemes_Weiss3_ct = "alexaColorSchemeForOn_Weiss3_ct";
89
+ var attributeRGBLamp_ColorSchemes_Weiss4_aktiv = "alexaColorSchemeForOn_Weiss4_aktiv";
90
+ var attributeRGBLamp_ColorSchemes_Weiss4_name = "alexaColorSchemeForOn_Weiss4_name";
91
+ var attributeRGBLamp_ColorSchemes_Weiss4_level = "alexaColorSchemeForOn_Weiss4_level";
92
+ var attributeRGBLamp_ColorSchemes_Weiss4_ct = "alexaColorSchemeForOn_Weiss4_ct";
93
+ // Dosenrelais:
94
+ var attributeDosenrelais_smartNames = "smartNames";
95
+ // Lampen/Steckdosen allgemein:
96
+ var attribute_TasterBooleanOn = "tasterBooleanOn";
97
+ var attribute_TasterBooleanOff = "tasterBooleanOff";
98
+ var attribute_Nachtbeleuchtung = "nachtbeleuchtung";
99
+ var attribute_TurnOffExitHouseSummer = "turnOffExitHouseSummer";
100
+ var attribute_TurnOffExitHouseWinter = "turnOffExitHouseWinter";
101
+ var attribute_TurnOnEnterHouseSummer = "turnOnEnterHouseSummer";
102
+ var attribute_TurnOnEnterHouseWinter = "turnOnEnterHouseWinter";
103
+ // Datenpunkttyp:
104
+ var attributeTypeNumber = "number";
105
+ var attributeTypeString = "string";
106
+ var attributeTypeBoolean = "boolean";
107
+ // Allgemein:
108
+ var attributeRawID = "rawId";
109
+ var attributeBaseState = "baseState";
110
+ var attributeEtage = "etage";
111
+ var attributeRaum = "raum";
112
+ var attributeDevice = "device";
113
+ var attributeCategory = "category";
114
+ // Standarddevices, ohne zusätzliche Attribute:
115
+ function createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, category) {
116
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRawID, rawId, category);
117
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeCategory, category, category);
118
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeBaseState, baseState, category);
119
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeEtage, etage, category);
120
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRaum, raum, category);
121
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeDevice, device, category);
122
+ }
123
+ // Fenstersensor:
124
+ function createZigbeeFenstersensor(adapter, rawId, baseState, etage, raum, device) {
125
+ createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeFenstersensor);
126
+ }
127
+ exports.createZigbeeFenstersensor = createZigbeeFenstersensor;
128
+ // Repeater:
129
+ function createZigbeeRepeater(adapter, rawId, baseState, etage, raum, device) {
130
+ createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeRepeater);
131
+ }
132
+ exports.createZigbeeRepeater = createZigbeeRepeater;
133
+ // Schalter:
134
+ function createZigbeeSchalter(adapter, rawId, baseState, etage, raum, device) {
135
+ createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeSchalter);
136
+ }
137
+ exports.createZigbeeSchalter = createZigbeeSchalter;
138
+ // Wandtaster:
139
+ function createZigbeeWandtaster(adapter, rawId, baseState, etage, raum, device) {
140
+ createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeWandtaster);
141
+ }
142
+ exports.createZigbeeWandtaster = createZigbeeWandtaster;
143
+ // Rauchmelder:
144
+ function createZigbeeRauchmelder(adapter, rawId, baseState, etage, raum, device) {
145
+ createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeRauchmelder);
146
+ }
147
+ exports.createZigbeeRauchmelder = createZigbeeRauchmelder;
148
+ // Bewegungsmelder:
149
+ function createZigbeeBewegungsmelder(adapter, rawId, baseState, etage, raum, device) {
150
+ createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeBewegungsmelder);
151
+ }
152
+ exports.createZigbeeBewegungsmelder = createZigbeeBewegungsmelder;
153
+ // Dosenrelais:
154
+ function createZigbeeDosenrelais(adapter, rawId, baseState, etage, raum, device, smartNames) {
155
+ // Allgemein:
156
+ createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeDosenrelais);
157
+ // Spezifisch:
158
+ var db_smartNames = null;
159
+ smartNames.forEach(function (value) {
160
+ if (db_smartNames == null) {
161
+ // @ts-ignore
162
+ db_smartNames = value;
163
+ }
164
+ else {
165
+ // @ts-ignore
166
+ db_smartNames += "|" + value;
167
+ }
168
+ });
169
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeDosenrelais_smartNames, db_smartNames, deviceZigbeeDosenrelais);
170
+ }
171
+ exports.createZigbeeDosenrelais = createZigbeeDosenrelais;
172
+ // Steckdose:
173
+ function createZigbeeSteckdose(adapter, rawId, baseState, etage, raum, device, alexaSmartNamesForOn, alexaActionNamesForOn, alexaSmartNamesForOff, alexaActionNamesForOff, additionalStates4TurnOn, additionalStates4TurnOff) {
174
+ // Allgemein:
175
+ createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeSteckdose);
176
+ // alexaSmartNamesForOn:string[]
177
+ var db_alexaSmartNamesForOn = null;
178
+ alexaSmartNamesForOn.forEach(function (value) {
179
+ if (db_alexaSmartNamesForOn == null) {
180
+ // @ts-ignore
181
+ db_alexaSmartNamesForOn = value;
182
+ }
183
+ else {
184
+ // @ts-ignore
185
+ db_alexaSmartNamesForOn += "|" + value;
186
+ }
187
+ });
188
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaSmartNamesForOn, db_alexaSmartNamesForOn, deviceZigbeeSteckdose);
189
+ // alexaActionNamesForOn:string[]
190
+ var db_alexaActionNamesForOn = null;
191
+ alexaActionNamesForOn.forEach(function (value) {
192
+ if (db_alexaActionNamesForOn == null) {
193
+ // @ts-ignore
194
+ db_alexaActionNamesForOn = value;
195
+ }
196
+ else {
197
+ // @ts-ignore
198
+ db_alexaActionNamesForOn += "|" + value;
199
+ }
200
+ });
201
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaActionNamesForOn, db_alexaActionNamesForOn, deviceZigbeeSteckdose);
202
+ // alexaSmartNamesForOff:string[]
203
+ var db_alexaSmartNamesForOff = null;
204
+ alexaSmartNamesForOff.forEach(function (value) {
205
+ if (db_alexaSmartNamesForOff == null) {
206
+ // @ts-ignore
207
+ db_alexaSmartNamesForOff = value;
208
+ }
209
+ else {
210
+ // @ts-ignore
211
+ db_alexaSmartNamesForOff += "|" + value;
212
+ }
213
+ });
214
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaSmartNamesForOff, db_alexaSmartNamesForOff, deviceZigbeeSteckdose);
215
+ // alexaActionNamesForOff:string[]
216
+ var db_alexaActionNamesForOff = null;
217
+ alexaActionNamesForOff.forEach(function (value) {
218
+ if (db_alexaActionNamesForOff == null) {
219
+ // @ts-ignore
220
+ db_alexaActionNamesForOff = value;
221
+ }
222
+ else {
223
+ // @ts-ignore
224
+ db_alexaActionNamesForOff += "|" + value;
225
+ }
226
+ });
227
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaActionNamesForOff, db_alexaActionNamesForOff, deviceZigbeeSteckdose);
228
+ // additionalStates4TurnOn: string[]
229
+ var db_additionalStates4TurnOn = null;
230
+ additionalStates4TurnOn.forEach(function (value) {
231
+ if (db_additionalStates4TurnOn == null) {
232
+ // @ts-ignore
233
+ db_additionalStates4TurnOn = value;
234
+ }
235
+ else {
236
+ // @ts-ignore
237
+ db_additionalStates4TurnOn += "|" + value;
238
+ }
239
+ });
240
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_TasterBooleanOn, db_additionalStates4TurnOn, deviceZigbeeSteckdose);
241
+ // additionalStates4TurnOff: string[]
242
+ var db_additionalStates4TurnOff = null;
243
+ additionalStates4TurnOff.forEach(function (value) {
244
+ if (db_additionalStates4TurnOff == null) {
245
+ // @ts-ignore
246
+ db_additionalStates4TurnOff = value;
247
+ }
248
+ else {
249
+ // @ts-ignore
250
+ db_additionalStates4TurnOff += "|" + value;
251
+ }
252
+ });
253
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_TasterBooleanOff, db_additionalStates4TurnOff, deviceZigbeeSteckdose);
254
+ }
255
+ exports.createZigbeeSteckdose = createZigbeeSteckdose;
256
+ // LampeWeiss:
257
+ function createZigbeeLampeWeiss(adapter, rawId, baseState, etage, raum, device, alexaSmartNamesForOn, alexaActionNamesForOn, alexaLevelSchemeForOn, alexaSmartNamesForOff, alexaActionNamesForOff, colorSchemesWeiss1, colorSchemesWeiss2, colorSchemesWeiss3, colorSchemesWeiss4, isGroup, tasterBooleanOn1, tasterBooleanOn2, tasterBooleanOn3, tasterBooleanOn4, tasterBooleanOff, nachtbeleuchtung, turnOffExitHouseSummer, turnOffExitHouseWinter, turnOnEnterHouseSummer, turnOnEnterHouseWinter) {
258
+ // Allgemein:
259
+ createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeLampeWeiss);
260
+ // alexaSmartNamesForOn:string[]
261
+ var db_alexaSmartNamesForOn = null;
262
+ alexaSmartNamesForOn.forEach(function (value) {
263
+ if (db_alexaSmartNamesForOn == null) {
264
+ // @ts-ignore
265
+ db_alexaSmartNamesForOn = value;
266
+ }
267
+ else {
268
+ // @ts-ignore
269
+ db_alexaSmartNamesForOn += "|" + value;
270
+ }
271
+ });
272
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaSmartNamesForOn, db_alexaSmartNamesForOn, deviceZigbeeLampeWeiss);
273
+ // alexaActionNamesForOn:string[]
274
+ var db_alexaActionNamesForOn = null;
275
+ alexaActionNamesForOn.forEach(function (value) {
276
+ if (db_alexaActionNamesForOn == null) {
277
+ // @ts-ignore
278
+ db_alexaActionNamesForOn = value;
279
+ }
280
+ else {
281
+ // @ts-ignore
282
+ db_alexaActionNamesForOn += "|" + value;
283
+ }
284
+ });
285
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaActionNamesForOn, db_alexaActionNamesForOn, deviceZigbeeLampeWeiss);
286
+ // alexaSmartNamesForOff:string[]
287
+ var db_alexaSmartNamesForOff = null;
288
+ alexaSmartNamesForOff.forEach(function (value) {
289
+ if (db_alexaSmartNamesForOff == null) {
290
+ // @ts-ignore
291
+ db_alexaSmartNamesForOff = value;
292
+ }
293
+ else {
294
+ // @ts-ignore
295
+ db_alexaSmartNamesForOff += "|" + value;
296
+ }
297
+ });
298
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaSmartNamesForOff, db_alexaSmartNamesForOff, deviceZigbeeLampeWeiss);
299
+ // alexaActionNamesForOff:string[]
300
+ var db_alexaActionNamesForOff = null;
301
+ alexaActionNamesForOff.forEach(function (value) {
302
+ if (db_alexaActionNamesForOff == null) {
303
+ // @ts-ignore
304
+ db_alexaActionNamesForOff = value;
305
+ }
306
+ else {
307
+ // @ts-ignore
308
+ db_alexaActionNamesForOff += "|" + value;
309
+ }
310
+ });
311
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaActionNamesForOff, db_alexaActionNamesForOff, deviceZigbeeLampeWeiss);
312
+ // tasterBooleanOn1 : LampeWeissTasterScheme
313
+ if (tasterBooleanOn1 != null) {
314
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn1_aktiv, true, deviceZigbeeLampeWeiss);
315
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn1_name, tasterBooleanOn1.getTasterBooleanOnName(), deviceZigbeeLampeWeiss);
316
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn1_level, tasterBooleanOn1.getLevel(), deviceZigbeeLampeWeiss);
317
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn1_ct, tasterBooleanOn1.getCt(), deviceZigbeeLampeWeiss);
318
+ }
319
+ else {
320
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn1_aktiv, false, deviceZigbeeLampeWeiss);
321
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn1_name, null, deviceZigbeeLampeWeiss);
322
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn1_level, null, deviceZigbeeLampeWeiss);
323
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn1_ct, null, deviceZigbeeLampeWeiss); */
324
+ }
325
+ // tasterBooleanOn2 : LampeWeissTasterScheme
326
+ if (tasterBooleanOn2 != null) {
327
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn2_aktiv, true, deviceZigbeeLampeWeiss);
328
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn2_name, tasterBooleanOn2.getTasterBooleanOnName(), deviceZigbeeLampeWeiss);
329
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn2_level, tasterBooleanOn2.getLevel(), deviceZigbeeLampeWeiss);
330
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn2_ct, tasterBooleanOn2.getCt(), deviceZigbeeLampeWeiss);
331
+ }
332
+ else {
333
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn2_aktiv, false, deviceZigbeeLampeWeiss);
334
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn2_name, null, deviceZigbeeLampeWeiss);
335
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn2_level, null, deviceZigbeeLampeWeiss);
336
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn2_ct, null, deviceZigbeeLampeWeiss); */
337
+ }
338
+ // tasterBooleanOn3 : LampeWeissTasterScheme
339
+ if (tasterBooleanOn3 != null) {
340
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn3_aktiv, true, deviceZigbeeLampeWeiss);
341
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn3_name, tasterBooleanOn3.getTasterBooleanOnName(), deviceZigbeeLampeWeiss);
342
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn3_level, tasterBooleanOn3.getLevel(), deviceZigbeeLampeWeiss);
343
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn3_ct, tasterBooleanOn3.getCt(), deviceZigbeeLampeWeiss);
344
+ }
345
+ else {
346
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn3_aktiv, false, deviceZigbeeLampeWeiss);
347
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn3_name, null, deviceZigbeeLampeWeiss);
348
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn3_level, null, deviceZigbeeLampeWeiss);
349
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn3_ct, null, deviceZigbeeLampeWeiss); */
350
+ }
351
+ // tasterBooleanOn4 : LampeWeissTasterScheme
352
+ if (tasterBooleanOn4 != null) {
353
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn4_aktiv, true, deviceZigbeeLampeWeiss);
354
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn4_name, tasterBooleanOn4.getTasterBooleanOnName(), deviceZigbeeLampeWeiss);
355
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn4_level, tasterBooleanOn4.getLevel(), deviceZigbeeLampeWeiss);
356
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn4_ct, tasterBooleanOn4.getCt(), deviceZigbeeLampeWeiss);
357
+ }
358
+ else {
359
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_tasterBoolOn4_aktiv, false, deviceZigbeeLampeWeiss);
360
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_tasterBoolOn4_name, null, deviceZigbeeLampeWeiss);
361
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn4_level, null, deviceZigbeeLampeWeiss);
362
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_tasterBoolOn4_ct, null, deviceZigbeeLampeWeiss); */
363
+ }
364
+ // tasterBooleanOff: string[]
365
+ var db_tasterBooleanOff = null;
366
+ tasterBooleanOff.forEach(function (value) {
367
+ if (db_tasterBooleanOff == null) {
368
+ // @ts-ignore
369
+ db_tasterBooleanOff = value;
370
+ }
371
+ else {
372
+ // @ts-ignore
373
+ db_tasterBooleanOff += "|" + value;
374
+ }
375
+ });
376
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_TasterBooleanOff, db_tasterBooleanOff, deviceZigbeeLampeWeiss);
377
+ // Weitere:
378
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_Nachtbeleuchtung, nachtbeleuchtung, deviceZigbeeLampeWeiss);
379
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOffExitHouseSummer, turnOffExitHouseSummer, deviceZigbeeLampeWeiss);
380
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOffExitHouseWinter, turnOffExitHouseWinter, deviceZigbeeLampeWeiss);
381
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOnEnterHouseSummer, turnOnEnterHouseSummer, deviceZigbeeLampeWeiss);
382
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOnEnterHouseWinter, turnOnEnterHouseWinter, deviceZigbeeLampeWeiss);
383
+ // Gruppe:
384
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampeWeissGroup, isGroup, deviceZigbeeLampeWeiss);
385
+ // alexaLevelSchemeForOn: LampeWeissAlexaScheme
386
+ if (alexaLevelSchemeForOn != null) {
387
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_AlexaColorSchemeForOn_Weiss_aktiv, true, deviceZigbeeLampeWeiss);
388
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_AlexaColorSchemeForOn_Weiss_level, alexaLevelSchemeForOn.getLevel(), deviceZigbeeLampeWeiss);
389
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_AlexaColorSchemeForOn_Weiss_ct, alexaLevelSchemeForOn.getCt(), deviceZigbeeLampeWeiss);
390
+ }
391
+ else {
392
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_AlexaColorSchemeForOn_Weiss_aktiv, false, deviceZigbeeLampeWeiss);
393
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_AlexaColorSchemeForOn_Weiss_level, null, deviceZigbeeLampeWeiss);
394
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_AlexaColorSchemeForOn_Weiss_ct, null, deviceZigbeeLampeWeiss);*/
395
+ }
396
+ // colorSchemesWeiss1: LampeWeissAlexaScheme
397
+ if (colorSchemesWeiss1 != null) {
398
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss1_aktiv, true, deviceZigbeeLampeWeiss);
399
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss1_name, colorSchemesWeiss1.getAlexaName(), deviceZigbeeLampeWeiss);
400
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss1_level, colorSchemesWeiss1.getLevel(), deviceZigbeeLampeWeiss);
401
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss1_ct, colorSchemesWeiss1.getCt(), deviceZigbeeLampeWeiss);
402
+ }
403
+ else {
404
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss1_aktiv, false, deviceZigbeeLampeWeiss);
405
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss1_name, null, deviceZigbeeLampeWeiss);
406
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss1_level, null, deviceZigbeeLampeWeiss);
407
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss1_ct, null, deviceZigbeeLampeWeiss);*/
408
+ }
409
+ // colorSchemesWeiss2: LampeWeissAlexaScheme
410
+ if (colorSchemesWeiss2 != null) {
411
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss2_aktiv, true, deviceZigbeeLampeWeiss);
412
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss2_name, colorSchemesWeiss2.getAlexaName(), deviceZigbeeLampeWeiss);
413
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss2_level, colorSchemesWeiss2.getLevel(), deviceZigbeeLampeWeiss);
414
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss2_ct, colorSchemesWeiss2.getCt(), deviceZigbeeLampeWeiss);
415
+ }
416
+ else {
417
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss2_aktiv, false, deviceZigbeeLampeWeiss);
418
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss2_name, null, deviceZigbeeLampeWeiss);
419
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss2_level, null, deviceZigbeeLampeWeiss);
420
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss2_ct, null, deviceZigbeeLampeWeiss);*/
421
+ }
422
+ // colorSchemesWeiss3: LampeWeissAlexaScheme
423
+ if (colorSchemesWeiss3 != null) {
424
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss3_aktiv, true, deviceZigbeeLampeWeiss);
425
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss3_name, colorSchemesWeiss3.getAlexaName(), deviceZigbeeLampeWeiss);
426
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss3_level, colorSchemesWeiss3.getLevel(), deviceZigbeeLampeWeiss);
427
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss3_ct, colorSchemesWeiss3.getCt(), deviceZigbeeLampeWeiss);
428
+ }
429
+ else {
430
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss3_aktiv, false, deviceZigbeeLampeWeiss);
431
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss3_name, null, deviceZigbeeLampeWeiss);
432
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss3_level, null, deviceZigbeeLampeWeiss);
433
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss3_ct, null, deviceZigbeeLampeWeiss);*/
434
+ }
435
+ // colorSchemesWeiss4: LampeWeissAlexaScheme
436
+ if (colorSchemesWeiss4 != null) {
437
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss4_aktiv, true, deviceZigbeeLampeWeiss);
438
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss4_name, colorSchemesWeiss4.getAlexaName(), deviceZigbeeLampeWeiss);
439
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss4_level, colorSchemesWeiss4.getLevel(), deviceZigbeeLampeWeiss);
440
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss4_ct, colorSchemesWeiss4.getCt(), deviceZigbeeLampeWeiss);
441
+ }
442
+ else {
443
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeLampWeiss_ColorSchemes_Weiss4_aktiv, false, deviceZigbeeLampeWeiss);
444
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeLampWeiss_ColorSchemes_Weiss4_name, null, deviceZigbeeLampeWeiss);
445
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss4_level, null, deviceZigbeeLampeWeiss);
446
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeLampWeiss_ColorSchemes_Weiss4_ct, null, deviceZigbeeLampeWeiss);*/
447
+ }
448
+ }
449
+ exports.createZigbeeLampeWeiss = createZigbeeLampeWeiss;
450
+ // LampeRGB:
451
+ function createZigbeeLampeRGB(adapter, rawId, baseState, etage, raum, device, isGroup, groupMembers, alexaSmartNamesForOn, alexaActionNamesForOn, alexaColorSchemeForOnFarbe, alexaColorSchemeForOnWeiss, alexaSmartNamesForOff, alexaActionNamesForOff, colorSchemesFarbe1, colorSchemesFarbe2, colorSchemesFarbe3, colorSchemesFarbe4, colorSchemesWeiss1, colorSchemesWeiss2, colorSchemesWeiss3, colorSchemesWeiss4, tasterBooleanOn, tasterBooleanOff, nachtbeleuchtung, turnOffExitHouseSummer, turnOffExitHouseWinter, turnOnEnterHouseSummer, turnOnEnterHouseWinter) {
452
+ var category = deviceZigbeeLampeRGB;
453
+ // Allgemein:
454
+ createZigbeeDevice(adapter, rawId, baseState, etage, raum, device, deviceZigbeeLampeRGB);
455
+ // Lampe-RGB spezifisch:
456
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_Group, isGroup, category);
457
+ // groupMembers:string[]
458
+ var db_groupMembers = null;
459
+ groupMembers.forEach(function (value) {
460
+ if (db_groupMembers == null) {
461
+ // @ts-ignore
462
+ db_groupMembers = value;
463
+ }
464
+ else {
465
+ // @ts-ignore
466
+ db_groupMembers += "|" + value;
467
+ }
468
+ });
469
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_Groupmembers, db_groupMembers, category);
470
+ // alexaSmartNamesForOn:string[]
471
+ var db_alexaSmartNamesForOn = null;
472
+ alexaSmartNamesForOn.forEach(function (value) {
473
+ if (db_alexaSmartNamesForOn == null) {
474
+ // @ts-ignore
475
+ db_alexaSmartNamesForOn = value;
476
+ }
477
+ else {
478
+ // @ts-ignore
479
+ db_alexaSmartNamesForOn += "|" + value;
480
+ }
481
+ });
482
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaSmartNamesForOn, db_alexaSmartNamesForOn, category);
483
+ // alexaActionNamesForOn:string[]
484
+ var db_alexaActionNamesForOn = null;
485
+ alexaActionNamesForOn.forEach(function (value) {
486
+ if (db_alexaActionNamesForOn == null) {
487
+ // @ts-ignore
488
+ db_alexaActionNamesForOn = value;
489
+ }
490
+ else {
491
+ // @ts-ignore
492
+ db_alexaActionNamesForOn += "|" + value;
493
+ }
494
+ });
495
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaActionNamesForOn, db_alexaActionNamesForOn, category);
496
+ // alexaSmartNamesForOff:string[]
497
+ var db_alexaSmartNamesForOff = null;
498
+ alexaSmartNamesForOff.forEach(function (value) {
499
+ if (db_alexaSmartNamesForOff == null) {
500
+ // @ts-ignore
501
+ db_alexaSmartNamesForOff = value;
502
+ }
503
+ else {
504
+ // @ts-ignore
505
+ db_alexaSmartNamesForOff += "|" + value;
506
+ }
507
+ });
508
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaSmartNamesForOff, db_alexaSmartNamesForOff, category);
509
+ // alexaActionNamesForOff:string[]
510
+ var db_alexaActionNamesForOff = null;
511
+ alexaActionNamesForOff.forEach(function (value) {
512
+ if (db_alexaActionNamesForOff == null) {
513
+ // @ts-ignore
514
+ db_alexaActionNamesForOff = value;
515
+ }
516
+ else {
517
+ // @ts-ignore
518
+ db_alexaActionNamesForOff += "|" + value;
519
+ }
520
+ });
521
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_AlexaActionNamesForOff, db_alexaActionNamesForOff, category);
522
+ // tasterBooleanOn: string[]
523
+ var db_tasterBooleanOn = null;
524
+ tasterBooleanOn.forEach(function (value) {
525
+ if (db_tasterBooleanOn == null) {
526
+ // @ts-ignore
527
+ db_tasterBooleanOn = value;
528
+ }
529
+ else {
530
+ // @ts-ignore
531
+ db_tasterBooleanOn += "|" + value;
532
+ }
533
+ });
534
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_TasterBooleanOn, db_tasterBooleanOn, category);
535
+ // tasterBooleanOff: string[]
536
+ var db_tasterBooleanOff = null;
537
+ tasterBooleanOff.forEach(function (value) {
538
+ if (db_tasterBooleanOff == null) {
539
+ // @ts-ignore
540
+ db_tasterBooleanOff = value;
541
+ }
542
+ else {
543
+ // @ts-ignore
544
+ db_tasterBooleanOff += "|" + value;
545
+ }
546
+ });
547
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attribute_TasterBooleanOff, db_tasterBooleanOff, category);
548
+ // Weitere:
549
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_Nachtbeleuchtung, nachtbeleuchtung, category);
550
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOffExitHouseSummer, turnOffExitHouseSummer, category);
551
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOffExitHouseWinter, turnOffExitHouseWinter, category);
552
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOnEnterHouseSummer, turnOnEnterHouseSummer, category);
553
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attribute_TurnOnEnterHouseWinter, turnOnEnterHouseWinter, category);
554
+ // alexaColorSchemeForOnFarbe: RGBColorScheme
555
+ if (alexaColorSchemeForOnFarbe != null) {
556
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_aktiv, true, category);
557
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_level, alexaColorSchemeForOnFarbe.getLevel(), category);
558
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_hue, alexaColorSchemeForOnFarbe.getHue(), category);
559
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_sat, alexaColorSchemeForOnFarbe.getSat(), category);
560
+ }
561
+ else {
562
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_aktiv, false, category);
563
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_level, null, category);
564
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_hue, null, category);
565
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Farbe_sat, null, category);*/
566
+ }
567
+ // alexaColorSchemeForOnWeiss: WhiteColorScheme
568
+ if (alexaColorSchemeForOnWeiss != null) {
569
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_AlexaColorSchemeForOn_Weiss_aktiv, true, category);
570
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Weiss_level, alexaColorSchemeForOnWeiss.getLevel(), category);
571
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Weiss_ct, alexaColorSchemeForOnWeiss.getCt(), category);
572
+ }
573
+ else {
574
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_AlexaColorSchemeForOn_Weiss_aktiv, false, category);
575
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Weiss_level, null, category);
576
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_AlexaColorSchemeForOn_Weiss_ct, null, category);*/
577
+ }
578
+ // colorSchemesFarbe1: RGBColorScheme
579
+ if (colorSchemesFarbe1 != null) {
580
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe1_aktiv, true, category);
581
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe1_name, colorSchemesFarbe1.getAlexaName(), category);
582
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe1_level, colorSchemesFarbe1.getLevel(), category);
583
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe1_hue, colorSchemesFarbe1.getHue(), category);
584
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe1_sat, colorSchemesFarbe1.getSat(), category);
585
+ }
586
+ else {
587
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe1_aktiv, false, category);
588
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe1_name, null, category);
589
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe1_level, null, category);
590
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe1_hue, null, category);
591
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe1_sat, null, category);*/
592
+ }
593
+ // colorSchemesFarbe2: RGBColorScheme
594
+ if (colorSchemesFarbe2 != null) {
595
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe2_aktiv, true, category);
596
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe2_name, colorSchemesFarbe2.getAlexaName(), category);
597
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe2_level, colorSchemesFarbe2.getLevel(), category);
598
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe2_hue, colorSchemesFarbe2.getHue(), category);
599
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe2_sat, colorSchemesFarbe2.getSat(), category);
600
+ }
601
+ else {
602
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe2_aktiv, false, category);
603
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe2_name, null, category);
604
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe2_level, null, category);
605
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe2_hue, null, category);
606
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe2_sat, null, category);*/
607
+ }
608
+ // colorSchemesFarbe3: RGBColorScheme
609
+ if (colorSchemesFarbe3 != null) {
610
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe3_aktiv, true, category);
611
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe3_name, colorSchemesFarbe3.getAlexaName(), category);
612
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe3_level, colorSchemesFarbe3.getLevel(), category);
613
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe3_hue, colorSchemesFarbe3.getHue(), category);
614
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe3_sat, colorSchemesFarbe3.getSat(), category);
615
+ }
616
+ else {
617
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe3_aktiv, false, category);
618
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe3_name, null, category);
619
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe3_level, null, category);
620
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe3_hue, null, category);
621
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe3_sat, null, category);*/
622
+ }
623
+ // colorSchemesFarbe4: RGBColorScheme
624
+ if (colorSchemesFarbe4 != null) {
625
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe4_aktiv, true, category);
626
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe4_name, colorSchemesFarbe4.getAlexaName(), category);
627
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe4_level, colorSchemesFarbe4.getLevel(), category);
628
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe4_hue, colorSchemesFarbe4.getHue(), category);
629
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe4_sat, colorSchemesFarbe4.getSat(), category);
630
+ }
631
+ else {
632
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Farbe4_aktiv, false, category);
633
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Farbe4_name, null, category);
634
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe4_level, null, category);
635
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe4_hue, null, category);
636
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Farbe4_sat, null, category);*/
637
+ }
638
+ // colorSchemesWeiss1: WhiteColorScheme
639
+ if (colorSchemesWeiss1 != null) {
640
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss1_aktiv, true, category);
641
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss1_name, colorSchemesWeiss1.getAlexaName(), category);
642
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss1_level, colorSchemesWeiss1.getLevel(), category);
643
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss1_ct, colorSchemesWeiss1.getCt(), category);
644
+ }
645
+ else {
646
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss1_aktiv, false, category);
647
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss1_name, null, category);
648
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss1_level, null, category);
649
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss1_ct, null, category);*/
650
+ }
651
+ // colorSchemesWeiss2: WhiteColorScheme
652
+ if (colorSchemesWeiss2 != null) {
653
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss2_aktiv, true, category);
654
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss2_name, colorSchemesWeiss2.getAlexaName(), category);
655
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss2_level, colorSchemesWeiss2.getLevel(), category);
656
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss2_ct, colorSchemesWeiss2.getCt(), category);
657
+ }
658
+ else {
659
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss2_aktiv, false, category);
660
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss2_name, null, category);
661
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss2_level, null, category);
662
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss2_ct, null, category);*/
663
+ }
664
+ // colorSchemesWeiss3: WhiteColorScheme
665
+ if (colorSchemesWeiss3 != null) {
666
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss3_aktiv, true, category);
667
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss3_name, colorSchemesWeiss3.getAlexaName(), category);
668
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss3_level, colorSchemesWeiss3.getLevel(), category);
669
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss3_ct, colorSchemesWeiss3.getCt(), category);
670
+ }
671
+ else {
672
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss3_aktiv, false, category);
673
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss3_name, null, category);
674
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss3_level, null, category);
675
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss3_ct, null, category);*/
676
+ }
677
+ // colorSchemesWeiss4: WhiteColorScheme
678
+ if (colorSchemesWeiss4 != null) {
679
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss4_aktiv, true, category);
680
+ createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss4_name, colorSchemesWeiss4.getAlexaName(), category);
681
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss4_level, colorSchemesWeiss4.getLevel(), category);
682
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss4_ct, colorSchemesWeiss4.getCt(), category);
683
+ }
684
+ else {
685
+ createDatenpunktSingle(adapter, rawId, attributeTypeBoolean, attributeRGBLamp_ColorSchemes_Weiss4_aktiv, false, category);
686
+ /*createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeRGBLamp_ColorSchemes_Weiss4_name, null, category);
687
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss4_level, null, category);
688
+ createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRGBLamp_ColorSchemes_Weiss4_ct, null, category);*/
689
+ }
690
+ }
691
+ exports.createZigbeeLampeRGB = createZigbeeLampeRGB;
692
+ function createDatenpunktSingle(adapter, deviceRawId, attributeType, attributeName, attributeValue, category) {
693
+ var stateDatenpunkt = "0_userdata.0.devices.zigbee." + category + "." + deviceRawId + "." + attributeName;
694
+ adapter.createState(stateDatenpunkt, attributeValue, {
695
+ name: "Z" + deviceRawId.toString().padStart(3, '0'),
696
+ desc: "",
697
+ type: attributeType,
698
+ read: true,
699
+ write: true
700
+ });
701
+ }
702
+ function toStringArray(databaseValue) {
703
+ var stringArray = [];
704
+ if (databaseValue == null) {
705
+ return stringArray;
706
+ }
707
+ else {
708
+ return databaseValue.split('|');
709
+ }
710
+ }
711
+ var cacheSteckdosenArray = null;
712
+ function loadZigbeeSteckdosen(adapter) {
713
+ if (cacheSteckdosenArray != null) {
714
+ return cacheSteckdosenArray;
715
+ }
716
+ // @ts-ignore
717
+ cacheSteckdosenArray = [];
718
+ adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
719
+ var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
720
+ if (adapter.getState(datenpunktKey).val == deviceZigbeeSteckdose) {
721
+ // @ts-ignore
722
+ cacheSteckdosenArray.push(new ZigbeeSteckdose(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
723
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
724
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
725
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
726
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val, // [4] Device (z.B. Stehlampe)
727
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaSmartNamesForOn).val), // 08 Alexa-Ein
728
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaActionNamesForOn).val), // Alexa-Action-Ein, z.B. "Guten morgen" (Würde auch funktionieren, wenn dies bei [06] eingetragen ist)
729
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaSmartNamesForOff).val), // 09 Alexa-Aus
730
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaActionNamesForOff).val), // [10] Alexa-Action Aus, z.B. "Gute Nacht". Wir müssen hier zu [09] unterscheiden, da wir über "Gute Nacht" und isActionTurnedOn=true informiert werden.
731
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_TasterBooleanOn).val), // 07 TunrnOn-DP
732
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_TasterBooleanOff).val) // 08 TasterBoolOff-DP
733
+ ));
734
+ }
735
+ });
736
+ cacheSteckdosenArray = sortArray(cacheSteckdosenArray);
737
+ return cacheSteckdosenArray;
738
+ }
739
+ exports.loadZigbeeSteckdosen = loadZigbeeSteckdosen;
740
+ var cacheBewegungsmelderArray = null;
741
+ function loadZigbeeBewegungsmelder(adapter) {
742
+ if (cacheBewegungsmelderArray != null) {
743
+ return cacheBewegungsmelderArray;
744
+ }
745
+ // @ts-ignore
746
+ cacheBewegungsmelderArray = [];
747
+ adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
748
+ var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
749
+ if (adapter.getState(datenpunktKey).val == deviceZigbeeBewegungsmelder) {
750
+ // @ts-ignore
751
+ cacheBewegungsmelderArray.push(new ZigbeeBewegungsmelder(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
752
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
753
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
754
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
755
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
756
+ ));
757
+ }
758
+ });
759
+ cacheBewegungsmelderArray = sortArray(cacheBewegungsmelderArray);
760
+ return cacheBewegungsmelderArray;
761
+ }
762
+ exports.loadZigbeeBewegungsmelder = loadZigbeeBewegungsmelder;
763
+ var cacheLampenRGBArray = null;
764
+ function loadZigbeeLampenRGB(adapter) {
765
+ if (cacheLampenRGBArray != null) {
766
+ return cacheLampenRGBArray;
767
+ }
768
+ // @ts-ignore
769
+ cacheLampenRGBArray = [];
770
+ adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
771
+ var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
772
+ if (adapter.getState(datenpunktKey).val == deviceZigbeeLampeRGB) {
773
+ // Einschalt-Scheme:
774
+ var alexaOnScheme = null;
775
+ if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Farbe_aktiv).val == true) {
776
+ alexaOnScheme = new RGBColorScheme(null, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Farbe_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Farbe_hue).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Farbe_sat).val);
777
+ }
778
+ else if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Weiss_aktiv).val == true) {
779
+ alexaOnScheme = new WhiteColorScheme(null, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Weiss_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_AlexaColorSchemeForOn_Weiss_ct).val);
780
+ }
781
+ // Weitere Schemes als Array:
782
+ var schemeArray = [];
783
+ // RGBColorScheme1:
784
+ if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe1_aktiv).val == true) {
785
+ // @ts-ignore
786
+ schemeArray.push(new RGBColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe1_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe1_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe1_hue).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe1_sat).val));
787
+ }
788
+ // RGBColorScheme2:
789
+ if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe2_aktiv).val == true) {
790
+ // @ts-ignore
791
+ schemeArray.push(new RGBColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe2_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe2_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe2_hue).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe2_sat).val));
792
+ }
793
+ // RGBColorScheme3:
794
+ if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe3_aktiv).val == true) {
795
+ // @ts-ignore
796
+ schemeArray.push(new RGBColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe3_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe3_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe3_hue).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe3_sat).val));
797
+ }
798
+ // RGBColorScheme4:
799
+ if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe4_aktiv).val == true) {
800
+ // @ts-ignore
801
+ schemeArray.push(new RGBColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe4_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe4_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe4_hue).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Farbe4_sat).val));
802
+ }
803
+ // WhiteColorScheme1:
804
+ if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss1_aktiv).val == true) {
805
+ // @ts-ignore
806
+ schemeArray.push(new WhiteColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss1_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss1_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss1_ct).val));
807
+ }
808
+ // WhiteColorScheme2:
809
+ if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss2_aktiv).val == true) {
810
+ // @ts-ignore
811
+ schemeArray.push(new WhiteColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss2_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss2_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss2_ct).val));
812
+ }
813
+ // WhiteColorScheme3:
814
+ if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss3_aktiv).val == true) {
815
+ // @ts-ignore
816
+ schemeArray.push(new WhiteColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss3_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss3_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss3_ct).val));
817
+ }
818
+ // WhiteColorScheme4:
819
+ if (adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss4_aktiv).val == true) {
820
+ // @ts-ignore
821
+ schemeArray.push(new WhiteColorScheme(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss4_name).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss4_level).val, adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_ColorSchemes_Weiss4_ct).val));
822
+ }
823
+ // @ts-ignore
824
+ cacheLampenRGBArray.push(new ZigbeeLampeRGB(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
825
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
826
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
827
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
828
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val, // [4] Device (z.B. Stehlampe)
829
+ adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_Group).val, // [5] Gruppe
830
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attributeRGBLamp_Groupmembers).val), // [6] Gruppenmitglieder
831
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaSmartNamesForOn).val), // 08 Alexa-Ein
832
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaActionNamesForOn).val), // Alexa-Action-Ein, z.B. "Guten morgen" (Würde auch funktionieren, wenn dies bei [06] eingetragen ist)
833
+ alexaOnScheme, // [09 A.-Ein-Scheme]
834
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaSmartNamesForOff).val), // 10 Alexa-Aus
835
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaActionNamesForOff).val), // [10] Alexa-Action Aus, z.B. "Gute Nacht". Wir müssen hier zu [09] unterscheiden, da wir über "Gute Nacht" und isActionTurnedOn=true informiert werden.
836
+ schemeArray, // [12 Alexa-Schemes]
837
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_TasterBooleanOn).val), // 13 TasterBoolOn
838
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_TasterBooleanOff).val), // 14 TasterBoolOff
839
+ adapter.getState(datenpunktPraefix + "." + attribute_Nachtbeleuchtung).val, // Gehört zur Nachtbeleuchtung ja/nein
840
+ adapter.getState(datenpunktPraefix + "." + attribute_TurnOffExitHouseSummer).val, // turnOffExitHouseSummer (Ausschalten, wenn Haus verlassen - Sommer)
841
+ adapter.getState(datenpunktPraefix + "." + attribute_TurnOffExitHouseWinter).val, // turnOffExitHouseWinter (Ausschalten, wenn Haus verlassen - Winter)
842
+ adapter.getState(datenpunktPraefix + "." + attribute_TurnOnEnterHouseSummer).val, // turnOnEnterHouseSummer (Einschalten, wenn Haus betreten - Sommer)
843
+ adapter.getState(datenpunktPraefix + "." + attribute_TurnOnEnterHouseWinter).val // turnOnEnterHouseWinter (Einschalten, wenn Haus betreten - Winter)
844
+ ));
845
+ }
846
+ });
847
+ cacheLampenRGBArray = sortArray(cacheLampenRGBArray);
848
+ return cacheLampenRGBArray;
849
+ }
850
+ exports.loadZigbeeLampenRGB = loadZigbeeLampenRGB;
851
+ var cacheLampenWeissArray = null;
852
+ function loadZigbeeLampenWeiss(adapter) {
853
+ if (cacheLampenWeissArray != null) {
854
+ return cacheLampenWeissArray;
855
+ }
856
+ // @ts-ignore
857
+ cacheLampenWeissArray = [];
858
+ adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
859
+ var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
860
+ if (adapter.getState(datenpunktKey).val == deviceZigbeeLampeWeiss) {
861
+ // Einschalt-Scheme:
862
+ var alexaOnScheme = null;
863
+ if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_AlexaColorSchemeForOn_Weiss_aktiv).val == true) {
864
+ // @ts-ignore
865
+ alexaOnScheme = new LampeWeissAlexaScheme(null, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_AlexaColorSchemeForOn_Weiss_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_AlexaColorSchemeForOn_Weiss_ct).val);
866
+ }
867
+ // Weitere Schemes als Array:
868
+ var schemeArray = [];
869
+ // WhiteColorScheme1:
870
+ if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss1_aktiv).val == true) {
871
+ // @ts-ignore
872
+ schemeArray.push(new LampeWeissAlexaScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss1_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss1_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss1_ct).val));
873
+ }
874
+ // WhiteColorScheme2:
875
+ if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss2_aktiv).val == true) {
876
+ // @ts-ignore
877
+ schemeArray.push(new LampeWeissAlexaScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss2_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss2_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss2_ct).val));
878
+ }
879
+ // WhiteColorScheme3:
880
+ if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss3_aktiv).val == true) {
881
+ // @ts-ignore
882
+ schemeArray.push(new LampeWeissAlexaScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss3_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss3_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss3_ct).val));
883
+ }
884
+ // WhiteColorScheme4:
885
+ if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss4_aktiv).val == true) {
886
+ // @ts-ignore
887
+ schemeArray.push(new LampeWeissAlexaScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss4_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss4_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_ColorSchemes_Weiss4_ct).val));
888
+ }
889
+ // Taster Boolean On Schemes:
890
+ var tasterOnBoolschemeArray = [];
891
+ // LampeWeissTasterScheme1:
892
+ //constructor(tasterBooleanOn: string, level: number, ct: number) {
893
+ if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn1_aktiv).val == true) {
894
+ // @ts-ignore
895
+ tasterOnBoolschemeArray.push(new LampeWeissTasterScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn1_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn1_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn1_ct).val));
896
+ }
897
+ // LampeWeissTasterScheme2:
898
+ if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn2_aktiv).val == true) {
899
+ // @ts-ignore
900
+ tasterOnBoolschemeArray.push(new LampeWeissTasterScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn2_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn2_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn2_ct).val));
901
+ }
902
+ // LampeWeissTasterScheme3:
903
+ if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn3_aktiv).val == true) {
904
+ // @ts-ignore
905
+ tasterOnBoolschemeArray.push(new LampeWeissTasterScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn3_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn3_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn3_ct).val));
906
+ }
907
+ // LampeWeissTasterScheme4:
908
+ if (adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn4_aktiv).val == true) {
909
+ // @ts-ignore
910
+ tasterOnBoolschemeArray.push(new LampeWeissTasterScheme(adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn4_name).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn4_level).val, adapter.getState(datenpunktPraefix + "." + attributeLampWeiss_tasterBoolOn4_ct).val));
911
+ }
912
+ // @ts-ignore
913
+ cacheLampenWeissArray.push(new ZigbeeLampeWeiss(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
914
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
915
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
916
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
917
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val, // [4] Device (z.B. Stehlampe)
918
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaSmartNamesForOn).val), // 08 Alexa-Ein
919
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaActionNamesForOn).val), // Alexa-Action-Ein, z.B. "Guten morgen" (Würde auch funktionieren, wenn dies bei [06] eingetragen ist)
920
+ alexaOnScheme, // [06 A.-Ein-Scheme] */ new LampeWeissAlexaScheme(null, 100, -1), // Letzter Paramter = -1 heußt, dass diese Lampe keine Farbtemperatur unterstützt. Ansonsten hier die Temperatur angeben
921
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaSmartNamesForOff).val), // 09 Alexa-Aus
922
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_AlexaActionNamesForOff).val), // [10] Alexa-Action Aus, z.B. "Gute Nacht". Wir müssen hier zu [09] unterscheiden, da wir über "Gute Nacht" und isActionTurnedOn=true informiert werden.
923
+ schemeArray, // [08 Alexa-Schemes]
924
+ adapter.getState(datenpunktPraefix + "." + attributeLampeWeissGroup).val, // [6] Gruppe
925
+ tasterOnBoolschemeArray, // [07 TasterBoolOn ]
926
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attribute_TasterBooleanOff).val), // 14 TasterBoolOff
927
+ adapter.getState(datenpunktPraefix + "." + attribute_Nachtbeleuchtung).val, // Gehört zur Nachtbeleuchtung ja/nein
928
+ adapter.getState(datenpunktPraefix + "." + attribute_TurnOffExitHouseSummer).val, // turnOffExitHouseSummer (Ausschalten, wenn Haus verlassen - Sommer)
929
+ adapter.getState(datenpunktPraefix + "." + attribute_TurnOffExitHouseWinter).val, // turnOffExitHouseWinter (Ausschalten, wenn Haus verlassen - Winter)
930
+ adapter.getState(datenpunktPraefix + "." + attribute_TurnOnEnterHouseSummer).val, // turnOnEnterHouseSummer (Einschalten, wenn Haus betreten - Sommer)
931
+ adapter.getState(datenpunktPraefix + "." + attribute_TurnOnEnterHouseWinter).val // turnOnEnterHouseWinter (Einschalten, wenn Haus betreten - Winter)
932
+ ));
933
+ }
934
+ });
935
+ cacheLampenWeissArray = sortArray(cacheLampenWeissArray);
936
+ return cacheLampenWeissArray;
937
+ }
938
+ exports.loadZigbeeLampenWeiss = loadZigbeeLampenWeiss;
939
+ var cacheRauchmelderArray = null;
940
+ function loadZigbeeRauchmelder(adapter) {
941
+ if (cacheRauchmelderArray != null) {
942
+ return cacheRauchmelderArray;
943
+ }
944
+ // @ts-ignore
945
+ cacheRauchmelderArray = [];
946
+ adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
947
+ var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
948
+ if (adapter.getState(datenpunktKey).val == deviceZigbeeRauchmelder) {
949
+ // @ts-ignore
950
+ cacheRauchmelderArray.push(new ZigbeeRauchmelder(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
951
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
952
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
953
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
954
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
955
+ ));
956
+ }
957
+ });
958
+ cacheRauchmelderArray = sortArray(cacheRauchmelderArray);
959
+ return cacheRauchmelderArray;
960
+ }
961
+ exports.loadZigbeeRauchmelder = loadZigbeeRauchmelder;
962
+ var cacheWandtasterArray = null;
963
+ function loadZigbeeWandtaster(adapter) {
964
+ if (cacheWandtasterArray != null) {
965
+ return cacheWandtasterArray;
966
+ }
967
+ // @ts-ignore
968
+ cacheWandtasterArray = [];
969
+ adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
970
+ var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
971
+ if (adapter.getState(datenpunktKey).val == deviceZigbeeWandtaster) {
972
+ // @ts-ignore
973
+ cacheWandtasterArray.push(new ZigbeeWandtaster(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
974
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
975
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
976
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
977
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
978
+ ));
979
+ }
980
+ });
981
+ cacheWandtasterArray = sortArray(cacheWandtasterArray);
982
+ return cacheWandtasterArray;
983
+ }
984
+ exports.loadZigbeeWandtaster = loadZigbeeWandtaster;
985
+ var cacheDosenrelaisArray = null;
986
+ function loadZigbeeDosenrelais(adapter) {
987
+ if (cacheDosenrelaisArray != null) {
988
+ return cacheDosenrelaisArray;
989
+ }
990
+ // @ts-ignore
991
+ cacheDosenrelaisArray = [];
992
+ adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
993
+ var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
994
+ if (adapter.getState(datenpunktKey).val == deviceZigbeeDosenrelais) {
995
+ // @ts-ignore
996
+ cacheDosenrelaisArray.push(new ZigbeeDosenrelais(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
997
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
998
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
999
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
1000
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val, // [4] Device (z.B. Stehlampe)
1001
+ toStringArray(adapter.getState(datenpunktPraefix + "." + attributeDosenrelais_smartNames).val) // 14 TasterBoolOff
1002
+ ));
1003
+ }
1004
+ });
1005
+ cacheDosenrelaisArray = sortArray(cacheDosenrelaisArray);
1006
+ return cacheDosenrelaisArray;
1007
+ }
1008
+ exports.loadZigbeeDosenrelais = loadZigbeeDosenrelais;
1009
+ var cacheSchalterArray = null;
1010
+ function loadZigbeeSchalter(adapter) {
1011
+ if (cacheSchalterArray != null) {
1012
+ return cacheSchalterArray;
1013
+ }
1014
+ // @ts-ignore
1015
+ cacheSchalterArray = [];
1016
+ adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
1017
+ var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
1018
+ if (adapter.getState(datenpunktKey).val == deviceZigbeeSchalter) {
1019
+ // @ts-ignore
1020
+ cacheSchalterArray.push(new ZigbeeSchalter(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
1021
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
1022
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
1023
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
1024
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
1025
+ ));
1026
+ }
1027
+ });
1028
+ cacheSchalterArray = sortArray(cacheSchalterArray);
1029
+ return cacheSchalterArray;
1030
+ }
1031
+ exports.loadZigbeeSchalter = loadZigbeeSchalter;
1032
+ var cacheRepeaterArray = null;
1033
+ function loadZigbeeRepeater(adapter) {
1034
+ if (cacheRepeaterArray != null) {
1035
+ return cacheRepeaterArray;
1036
+ }
1037
+ // @ts-ignore
1038
+ cacheRepeaterArray = [];
1039
+ adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
1040
+ var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
1041
+ if (adapter.getState(datenpunktKey).val == deviceZigbeeRepeater) {
1042
+ // @ts-ignore
1043
+ cacheRepeaterArray.push(new ZigbeeRepeater(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
1044
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
1045
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
1046
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
1047
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
1048
+ ));
1049
+ }
1050
+ });
1051
+ cacheRepeaterArray = sortArray(cacheRepeaterArray);
1052
+ return cacheRepeaterArray;
1053
+ }
1054
+ exports.loadZigbeeRepeater = loadZigbeeRepeater;
1055
+ var cacheFenstersensorenArray = null;
1056
+ function loadZigbeeFenstersensor(adapter) {
1057
+ if (cacheFenstersensorenArray != null) {
1058
+ return cacheFenstersensorenArray;
1059
+ }
1060
+ // @ts-ignore
1061
+ cacheFenstersensorenArray = [];
1062
+ adapter.$('state[id=0_userdata.0.devices.zigbee.*.*.category]').each(function (datenpunktKey) {
1063
+ var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
1064
+ if (adapter.getState(datenpunktKey).val == deviceZigbeeFenstersensor) {
1065
+ // @ts-ignore
1066
+ cacheFenstersensorenArray.push(new ZigbeeFenstersensor(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
1067
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
1068
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
1069
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
1070
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
1071
+ ));
1072
+ }
1073
+ });
1074
+ cacheFenstersensorenArray = sortArray(cacheFenstersensorenArray);
1075
+ return cacheFenstersensorenArray;
1076
+ }
1077
+ exports.loadZigbeeFenstersensor = loadZigbeeFenstersensor;
1078
+ //var zigbeeAllArray = null;
1079
+ function loadZigbeeDevicesAll(adapter) {
1080
+ /* if (zigbeeAllArray != null) {
1081
+ // @ts-ignore
1082
+ return zigbeeAllArray;
1083
+ }*/
1084
+ // @ts-ignore
1085
+ var zigbeeAllArray = [];
1086
+ adapter.loadZigbeeSteckdosen(adapter).forEach(function (zigbee) {
1087
+ // @ts-ignore
1088
+ zigbeeAllArray.push(zigbee);
1089
+ });
1090
+ adapter.loadZigbeeBewegungsmelder(adapter).forEach(function (zigbee) {
1091
+ // @ts-ignore
1092
+ zigbeeAllArray.push(zigbee);
1093
+ });
1094
+ adapter.loadZigbeeLampenRGB(adapter).forEach(function (zigbee) {
1095
+ // @ts-ignore
1096
+ zigbeeAllArray.push(zigbee);
1097
+ });
1098
+ adapter.loadZigbeeLampenWeiss(adapter).forEach(function (zigbee) {
1099
+ // @ts-ignore
1100
+ zigbeeAllArray.push(zigbee);
1101
+ });
1102
+ adapter.loadZigbeeRauchmelder(adapter).forEach(function (zigbee) {
1103
+ // @ts-ignore
1104
+ zigbeeAllArray.push(zigbee);
1105
+ });
1106
+ adapter.loadZigbeeWandtaster(adapter).forEach(function (zigbee) {
1107
+ // @ts-ignore
1108
+ zigbeeAllArray.push(zigbee);
1109
+ });
1110
+ adapter.loadZigbeeDosenrelais(adapter).forEach(function (zigbee) {
1111
+ // @ts-ignore
1112
+ zigbeeAllArray.push(zigbee);
1113
+ });
1114
+ adapter.loadZigbeeSchalter(adapter).forEach(function (zigbee) {
1115
+ // @ts-ignore
1116
+ zigbeeAllArray.push(zigbee);
1117
+ });
1118
+ adapter.loadZigbeeRepeater(adapter).forEach(function (zigbee) {
1119
+ // @ts-ignore
1120
+ zigbeeAllArray.push(zigbee);
1121
+ });
1122
+ adapter.loadZigbeeFenstersensor(adapter).forEach(function (zigbee) {
1123
+ // @ts-ignore
1124
+ zigbeeAllArray.push(zigbee);
1125
+ });
1126
+ zigbeeAllArray = sortArray(zigbeeAllArray);
1127
+ return zigbeeAllArray;
1128
+ }
1129
+ exports.loadZigbeeDevicesAll = loadZigbeeDevicesAll;
1130
+ function clearZigbeeCaches(adapter) {
1131
+ // zigbeeAllArray = null;
1132
+ cacheFenstersensorenArray = null;
1133
+ cacheRepeaterArray = null;
1134
+ cacheSchalterArray = null;
1135
+ cacheDosenrelaisArray = null;
1136
+ cacheWandtasterArray = null;
1137
+ cacheRauchmelderArray = null;
1138
+ cacheLampenWeissArray = null;
1139
+ cacheLampenRGBArray = null;
1140
+ cacheBewegungsmelderArray = null;
1141
+ cacheSteckdosenArray = null;
1142
+ adapter.log(">>> Zigbee cache cleared!! <<<");
1143
+ }
1144
+ function sortArray(inputArray) {
1145
+ inputArray.sort(function (a, b) {
1146
+ var elementA = a;
1147
+ var elementB = b;
1148
+ var etageA = elementA.getEtage();
1149
+ var etageB = elementB.getEtage();
1150
+ var compareEtage = getEtageSortIndex(etageA).localeCompare(getEtageSortIndex(etageB));
1151
+ if (compareEtage != 0) {
1152
+ return compareEtage;
1153
+ }
1154
+ var typA = elementA.getCategory();
1155
+ var typB = elementB.getCategory();
1156
+ var compareTyp = typA.localeCompare(typB);
1157
+ if (compareTyp != 0) {
1158
+ return compareTyp;
1159
+ }
1160
+ var raumA = elementA.getRaum();
1161
+ var raumB = elementB.getRaum();
1162
+ var compareRaum = raumA.localeCompare(raumB);
1163
+ if (compareRaum != 0) {
1164
+ return compareRaum;
1165
+ }
1166
+ var deviceA = elementA.getDevice();
1167
+ var deviceB = elementB.getDevice();
1168
+ var compareDevice = deviceA.localeCompare(deviceB);
1169
+ if (compareDevice != 0) {
1170
+ return compareDevice;
1171
+ }
1172
+ return 0;
1173
+ });
1174
+ return inputArray;
1175
+ }
1176
+ function getEtageSortIndex(etage) {
1177
+ if (etage == "OG") {
1178
+ return "a";
1179
+ }
1180
+ else if (etage == "EG") {
1181
+ return "b";
1182
+ }
1183
+ else if (etage == "UG") {
1184
+ return "c";
1185
+ }
1186
+ else {
1187
+ return "d";
1188
+ }
1189
+ }
1190
+ module.exports = { createZigbeeDosenrelais: createZigbeeDosenrelais, createZigbeeLampeRGB: createZigbeeLampeRGB, createZigbeeLampeWeiss: createZigbeeLampeWeiss, createZigbeeSteckdose: createZigbeeSteckdose, createZigbeeBewegungsmelder: createZigbeeBewegungsmelder, createZigbeeRauchmelder: createZigbeeRauchmelder, createZigbeeWandtaster: createZigbeeWandtaster, createZigbeeSchalter: createZigbeeSchalter, createZigbeeRepeater: createZigbeeRepeater, createZigbeeFenstersensor: createZigbeeFenstersensor, loadZigbeeSteckdosen: loadZigbeeSteckdosen, loadZigbeeBewegungsmelder: loadZigbeeBewegungsmelder, loadZigbeeLampenRGB: loadZigbeeLampenRGB, loadZigbeeLampenWeiss: loadZigbeeLampenWeiss, loadZigbeeRauchmelder: loadZigbeeRauchmelder, loadZigbeeWandtaster: loadZigbeeWandtaster, loadZigbeeDosenrelais: loadZigbeeDosenrelais, loadZigbeeSchalter: loadZigbeeSchalter, loadZigbeeRepeater: loadZigbeeRepeater, loadZigbeeFenstersensor: loadZigbeeFenstersensor, loadZigbeeDevicesAll: loadZigbeeDevicesAll, clearZigbeeCaches: clearZigbeeCaches };