iobroker.loxone 3.0.1 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/LICENSE +183 -183
  2. package/README.md +417 -411
  3. package/admin/i18n/de.json +15 -0
  4. package/admin/i18n/en.json +15 -0
  5. package/admin/i18n/es.json +18 -0
  6. package/admin/i18n/fr.json +18 -0
  7. package/admin/i18n/it.json +18 -0
  8. package/admin/i18n/nl.json +18 -0
  9. package/admin/i18n/pl.json +18 -0
  10. package/admin/i18n/pt.json +18 -0
  11. package/admin/i18n/ru.json +18 -0
  12. package/admin/i18n/uk.json +18 -0
  13. package/admin/i18n/zh-cn.json +18 -0
  14. package/admin/jsonConfig.json +96 -0
  15. package/io-package.json +49 -38
  16. package/package.json +36 -49
  17. package/src/controls/AalEmergency.ts +90 -0
  18. package/src/controls/AalSmartAlarm.ts +99 -0
  19. package/src/controls/Alarm.ts +146 -0
  20. package/src/controls/AlarmClock.ts +137 -0
  21. package/src/controls/Application.ts +13 -0
  22. package/src/controls/AudioZone.ts +227 -0
  23. package/src/controls/AudioZoneV2.ts +135 -0
  24. package/src/controls/CentralAlarm.ts +59 -0
  25. package/src/controls/CentralAudioZone.ts +41 -0
  26. package/src/controls/CentralGate.ts +53 -0
  27. package/src/controls/CentralJalousie.ts +67 -0
  28. package/src/controls/CentralLightController.ts +45 -0
  29. package/src/controls/ColorPickerV2.ts +34 -0
  30. package/src/controls/Colorpicker.ts +30 -0
  31. package/src/controls/ColorpickerBase.ts +326 -0
  32. package/src/controls/Daytimer.ts +201 -0
  33. package/src/controls/Dimmer.ts +64 -0
  34. package/src/controls/EIBDimmer.ts +61 -0
  35. package/src/controls/Fronius.ts +217 -0
  36. package/src/controls/Gate.ts +150 -0
  37. package/src/controls/Hourcounter.ts +115 -0
  38. package/src/controls/IRCDaytimer.ts +4 -0
  39. package/src/controls/IRCV2Daytimer.ts +4 -0
  40. package/src/controls/IRoomControllerV2.ts +595 -0
  41. package/src/controls/InfoOnlyAnalog.ts +56 -0
  42. package/src/controls/InfoOnlyDigital.ts +95 -0
  43. package/src/controls/InfoOnlyText.ts +52 -0
  44. package/{build/controls/Intercom.js → src/controls/Intercom.ts} +27 -11
  45. package/src/controls/Jalousie.ts +219 -0
  46. package/src/controls/LightController.ts +112 -0
  47. package/src/controls/LightControllerV2.ts +246 -0
  48. package/src/controls/MailBox.ts +92 -0
  49. package/src/controls/Meter.ts +94 -0
  50. package/src/controls/None.ts +29 -0
  51. package/src/controls/PresenceDetector.ts +47 -0
  52. package/src/controls/Pushbutton.ts +55 -0
  53. package/src/controls/Radio.ts +61 -0
  54. package/{build/controls/Remote.js → src/controls/Remote.ts} +19 -11
  55. package/src/controls/Slider.ts +78 -0
  56. package/src/controls/SmokeAlarm.ts +163 -0
  57. package/src/controls/Switch.ts +46 -0
  58. package/src/controls/SystemScheme.ts +13 -0
  59. package/src/controls/TextInput.ts +96 -0
  60. package/src/controls/TextState.ts +37 -0
  61. package/src/controls/TimedSwitch.ts +75 -0
  62. package/src/controls/Tracker.ts +30 -0
  63. package/{build/controls/Unknown.js → src/controls/Unknown.ts} +18 -11
  64. package/src/controls/UpDownAnalog.ts +78 -0
  65. package/{build/controls/ValueSelector.js → src/controls/ValueSelector.ts} +21 -9
  66. package/src/controls/WindowMonitor.ts +139 -0
  67. package/src/controls/all-controls.ts +99 -0
  68. package/src/controls/control-base.ts +28 -0
  69. package/src/lib/adapter-config.d.ts +22 -0
  70. package/src/loxone-handler-base.ts +285 -0
  71. package/src/lxcommunicator.d.ts +1 -0
  72. package/src/main.test.ts +24 -0
  73. package/{build/main.js → src/main.ts} +545 -270
  74. package/src/structure-file.d.ts +154 -0
  75. package/src/weather-server-handler.ts +266 -0
  76. package/admin/admin.d.ts +0 -58
  77. package/admin/index_m.html +0 -126
  78. package/admin/style.css +0 -32
  79. package/admin/words.js +0 -25
  80. package/build/controls/AalEmergency.js +0 -45
  81. package/build/controls/AalEmergency.js.map +0 -1
  82. package/build/controls/AalSmartAlarm.js +0 -48
  83. package/build/controls/AalSmartAlarm.js.map +0 -1
  84. package/build/controls/Alarm.js +0 -81
  85. package/build/controls/Alarm.js.map +0 -1
  86. package/build/controls/AlarmClock.js +0 -59
  87. package/build/controls/AlarmClock.js.map +0 -1
  88. package/build/controls/Application.js +0 -11
  89. package/build/controls/Application.js.map +0 -1
  90. package/build/controls/AudioZone.js +0 -116
  91. package/build/controls/AudioZone.js.map +0 -1
  92. package/build/controls/CentralAlarm.js +0 -30
  93. package/build/controls/CentralAlarm.js.map +0 -1
  94. package/build/controls/CentralAudioZone.js +0 -22
  95. package/build/controls/CentralAudioZone.js.map +0 -1
  96. package/build/controls/CentralGate.js +0 -30
  97. package/build/controls/CentralGate.js.map +0 -1
  98. package/build/controls/CentralJalousie.js +0 -39
  99. package/build/controls/CentralJalousie.js.map +0 -1
  100. package/build/controls/CentralLightController.js +0 -27
  101. package/build/controls/CentralLightController.js.map +0 -1
  102. package/build/controls/ColorPickerV2.js +0 -24
  103. package/build/controls/ColorPickerV2.js.map +0 -1
  104. package/build/controls/Colorpicker.js +0 -20
  105. package/build/controls/Colorpicker.js.map +0 -1
  106. package/build/controls/ColorpickerBase.js +0 -263
  107. package/build/controls/ColorpickerBase.js.map +0 -1
  108. package/build/controls/Daytimer.js +0 -119
  109. package/build/controls/Daytimer.js.map +0 -1
  110. package/build/controls/Dimmer.js +0 -34
  111. package/build/controls/Dimmer.js.map +0 -1
  112. package/build/controls/EIBDimmer.js +0 -31
  113. package/build/controls/EIBDimmer.js.map +0 -1
  114. package/build/controls/Fronius.js +0 -64
  115. package/build/controls/Fronius.js.map +0 -1
  116. package/build/controls/Gate.js +0 -104
  117. package/build/controls/Gate.js.map +0 -1
  118. package/build/controls/Hourcounter.js +0 -46
  119. package/build/controls/Hourcounter.js.map +0 -1
  120. package/build/controls/IRCDaytimer.js +0 -9
  121. package/build/controls/IRCDaytimer.js.map +0 -1
  122. package/build/controls/IRCV2Daytimer.js +0 -9
  123. package/build/controls/IRCV2Daytimer.js.map +0 -1
  124. package/build/controls/IRoomControllerV2.js +0 -371
  125. package/build/controls/IRoomControllerV2.js.map +0 -1
  126. package/build/controls/InfoOnlyAnalog.js +0 -38
  127. package/build/controls/InfoOnlyAnalog.js.map +0 -1
  128. package/build/controls/InfoOnlyDigital.js +0 -65
  129. package/build/controls/InfoOnlyDigital.js.map +0 -1
  130. package/build/controls/InfoOnlyText.js +0 -35
  131. package/build/controls/InfoOnlyText.js.map +0 -1
  132. package/build/controls/Intercom.js.map +0 -1
  133. package/build/controls/Jalousie.js +0 -153
  134. package/build/controls/Jalousie.js.map +0 -1
  135. package/build/controls/LightController.js +0 -68
  136. package/build/controls/LightController.js.map +0 -1
  137. package/build/controls/LightControllerV2.js +0 -195
  138. package/build/controls/LightControllerV2.js.map +0 -1
  139. package/build/controls/MailBox.js +0 -41
  140. package/build/controls/MailBox.js.map +0 -1
  141. package/build/controls/Meter.js +0 -52
  142. package/build/controls/Meter.js.map +0 -1
  143. package/build/controls/None.js +0 -23
  144. package/build/controls/None.js.map +0 -1
  145. package/build/controls/PresenceDetector.js +0 -29
  146. package/build/controls/PresenceDetector.js.map +0 -1
  147. package/build/controls/Pushbutton.js +0 -35
  148. package/build/controls/Pushbutton.js.map +0 -1
  149. package/build/controls/Radio.js +0 -39
  150. package/build/controls/Radio.js.map +0 -1
  151. package/build/controls/Remote.js.map +0 -1
  152. package/build/controls/Slider.js +0 -44
  153. package/build/controls/Slider.js.map +0 -1
  154. package/build/controls/SmokeAlarm.js +0 -85
  155. package/build/controls/SmokeAlarm.js.map +0 -1
  156. package/build/controls/Switch.js +0 -31
  157. package/build/controls/Switch.js.map +0 -1
  158. package/build/controls/SystemScheme.js +0 -11
  159. package/build/controls/SystemScheme.js.map +0 -1
  160. package/build/controls/TextInput.js +0 -55
  161. package/build/controls/TextInput.js.map +0 -1
  162. package/build/controls/TextState.js +0 -20
  163. package/build/controls/TextState.js.map +0 -1
  164. package/build/controls/TimedSwitch.js +0 -36
  165. package/build/controls/TimedSwitch.js.map +0 -1
  166. package/build/controls/Tracker.js +0 -20
  167. package/build/controls/Tracker.js.map +0 -1
  168. package/build/controls/Unknown.js.map +0 -1
  169. package/build/controls/UpDownAnalog.js +0 -44
  170. package/build/controls/UpDownAnalog.js.map +0 -1
  171. package/build/controls/ValueSelector.js.map +0 -1
  172. package/build/controls/WindowMonitor.js +0 -84
  173. package/build/controls/WindowMonitor.js.map +0 -1
  174. package/build/controls/control-base.js +0 -12
  175. package/build/controls/control-base.js.map +0 -1
  176. package/build/loxone-handler-base.js +0 -186
  177. package/build/loxone-handler-base.js.map +0 -1
  178. package/build/main.js.map +0 -1
  179. package/build/weather-server-handler.js +0 -120
  180. package/build/weather-server-handler.js.map +0 -1
  181. package/doc/details-missing-control-type.png +0 -0
  182. package/doc/log-missing-control-type.png +0 -0
  183. package/doc/loxone-config-display-diagnostics.png +0 -0
  184. package/doc/loxone-config-info-only-digital.png +0 -0
  185. package/doc/loxone-config-use-in-visualization.png +0 -0
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Colorpicker = void 0;
4
- const ColorpickerBase_1 = require("./ColorpickerBase");
5
- class Colorpicker extends ColorpickerBase_1.ColorpickerBase {
6
- async loadAsync(type, uuid, control) {
7
- await this.updateObjectAsync(uuid, {
8
- type: type,
9
- common: {
10
- name: control.name,
11
- role: 'light.color.rgb',
12
- },
13
- native: { control },
14
- });
15
- await this.loadOtherControlStatesAsync(control.name, uuid, control.states, ['color', 'favorites']);
16
- await this.loadColorPickerControlBaseAsync(uuid, control);
17
- }
18
- }
19
- exports.Colorpicker = Colorpicker;
20
- //# sourceMappingURL=Colorpicker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Colorpicker.js","sourceRoot":"","sources":["../../src/controls/Colorpicker.ts"],"names":[],"mappings":";;;AACA,uDAAoD;AAGpD,MAAa,WAAY,SAAQ,iCAAe;IAC5C,KAAK,CAAC,SAAS,CAAC,IAAiB,EAAE,IAAY,EAAE,OAAgB;QAC7D,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;YAC/B,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACJ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,iBAAiB;aAC1B;YACD,MAAM,EAAE,EAAE,OAAO,EAAE;SACtB,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;QAEnG,MAAM,IAAI,CAAC,+BAA+B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;CACJ;AAfD,kCAeC"}
@@ -1,263 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ColorpickerBase = void 0;
4
- const colorConvert = require("color-convert");
5
- const control_base_1 = require("./control-base");
6
- class ColorpickerBase extends control_base_1.ControlBase {
7
- async loadColorPickerControlBaseAsync(uuid, control) {
8
- if (!control.states || !control.states.hasOwnProperty('color')) {
9
- return;
10
- }
11
- if (control.details.pickerType === 'Rgb') {
12
- await this.loadRgbColorPickerAsync(uuid, control);
13
- }
14
- else if (control.details.pickerType === 'Lumitech') {
15
- await this.loadLumitechColorPickerAsync(uuid, control);
16
- }
17
- else {
18
- throw 'Unsupported color picker type: ' + control.details.pickerType;
19
- }
20
- }
21
- async loadRgbColorPickerAsync(uuid, control) {
22
- await this.updateStateObjectAsync(uuid + '.red', {
23
- name: control.name + ': red',
24
- read: true,
25
- write: true,
26
- type: 'number',
27
- role: 'level.color.red',
28
- min: 0,
29
- max: 255,
30
- // TODO: re-add: smartIgnore: true,
31
- }, control.states.color, async (name, value) => {
32
- const rgb = this.loxoneColorToRgb(value);
33
- if (rgb !== undefined) {
34
- await this.setStateAck(name, rgb[0]);
35
- }
36
- });
37
- await this.updateStateObjectAsync(uuid + '.green', {
38
- name: control.name + ': green',
39
- read: true,
40
- write: true,
41
- type: 'number',
42
- role: 'level.color.green',
43
- min: 0,
44
- max: 255,
45
- // TODO: re-add: smartIgnore: true,
46
- }, control.states.color, async (name, value) => {
47
- const rgb = this.loxoneColorToRgb(value);
48
- if (rgb !== undefined) {
49
- await this.setStateAck(name, rgb[1]);
50
- }
51
- });
52
- await this.updateStateObjectAsync(uuid + '.blue', {
53
- name: control.name + ': blue',
54
- read: true,
55
- write: true,
56
- type: 'number',
57
- role: 'level.color.blue',
58
- min: 0,
59
- max: 255,
60
- // TODO: re-add: smartIgnore: true,
61
- }, control.states.color, async (name, value) => {
62
- const rgb = this.loxoneColorToRgb(value);
63
- if (rgb !== undefined) {
64
- await this.setStateAck(name, rgb[2]);
65
- }
66
- });
67
- await this.updateStateObjectAsync(uuid + '.rgb', {
68
- name: control.name + ': RGB',
69
- read: true,
70
- write: false,
71
- type: 'string',
72
- role: 'level.color.rgb',
73
- // TODO: re-add: smartIgnore: true,
74
- }, control.states.color, async (name, value) => {
75
- const rgb = this.loxoneColorToRgb(value);
76
- if (rgb !== undefined) {
77
- await this.setStateAck(name, rgb[0] + ',' + rgb[1] + ',' + rgb[2]);
78
- }
79
- });
80
- await this.updateStateObjectAsync(uuid + '.level', {
81
- name: control.name + ': Level (only with colorTemperature)',
82
- read: true,
83
- write: false,
84
- type: 'number',
85
- role: 'level.color.level',
86
- min: 0,
87
- max: 100,
88
- // TODO: re-add: smartIgnore: true,
89
- }, control.states.color, async (name, value) => {
90
- const brightnessTemperature = this.loxoneColorToBrightnessTemperature(value);
91
- if (brightnessTemperature !== undefined) {
92
- await this.setStateAck(name, brightnessTemperature[0]);
93
- }
94
- });
95
- await this.updateStateObjectAsync(uuid + '.colorTemperature', {
96
- name: control.name + ': The temperature of the light in °K 2700-6500',
97
- read: true,
98
- write: false,
99
- type: 'number',
100
- role: 'level.color.temperature',
101
- // TODO: re-add: smartIgnore: true,
102
- }, control.states.color, async (name, value) => {
103
- const brightnessTemperature = this.loxoneColorToBrightnessTemperature(value);
104
- if (brightnessTemperature !== undefined) {
105
- await this.setStateAck(name, brightnessTemperature[1]);
106
- }
107
- });
108
- await this.updateStateObjectAsync(uuid + '.colorTemperatureHue', {
109
- name: control.name + ': The temperature of the light in °K scaled for Hue 2000-6500',
110
- read: true,
111
- write: false,
112
- type: 'number',
113
- role: 'level.color.temperature',
114
- // TODO: re-add: smartIgnore: true,
115
- }, control.states.color, async (name, value) => {
116
- const brightnessTemperature = this.loxoneColorToBrightnessTemperature(value);
117
- if (brightnessTemperature !== undefined) {
118
- await this.setStateAck(name, Math.round((brightnessTemperature[1] - 2700) * 1.184210526315789 + 2000));
119
- }
120
- });
121
- // we use a timer (100 ms) to update the three color values,
122
- // so if somebody sends us the three values (almost) at once,
123
- // we don't change the color three times using commands
124
- const parentId = this.adapter.namespace + '.' + uuid;
125
- const updateColorValue = async () => {
126
- const states = (await this.adapter.getStatesAsync(uuid + '.*'));
127
- const red = this.convertStateToInt(states[parentId + '.red'].val);
128
- const green = this.convertStateToInt(states[parentId + '.green'].val);
129
- const blue = this.convertStateToInt(states[parentId + '.blue'].val);
130
- const hsv = colorConvert.rgb.hsv([red, green, blue]);
131
- const command = `hsv(${hsv[0]},${hsv[1]},${hsv[2]})`;
132
- this.sendCommand(control.uuidAction, command);
133
- };
134
- const startUpdateTimer = () => {
135
- if (this.colorUpdateTimer) {
136
- clearTimeout(this.colorUpdateTimer);
137
- }
138
- this.colorUpdateTimer = setTimeout(updateColorValue, 100);
139
- };
140
- this.addStateChangeListener(uuid + '.red', startUpdateTimer);
141
- this.addStateChangeListener(uuid + '.green', startUpdateTimer);
142
- this.addStateChangeListener(uuid + '.blue', startUpdateTimer);
143
- }
144
- async loadLumitechColorPickerAsync(uuid, control) {
145
- await this.updateStateObjectAsync(uuid + '.brightness', {
146
- name: control.name + ': Brightness',
147
- read: true,
148
- write: true,
149
- type: 'number',
150
- role: 'level.color.level',
151
- min: 0,
152
- max: 100,
153
- // TODO: re-add: smartIgnore: true,
154
- }, control.states.color, async (name, value) => {
155
- const brightnessTemperature = this.lumitechColorToBrightnessTemperature(value);
156
- if (brightnessTemperature !== undefined) {
157
- await this.setStateAck(name, brightnessTemperature[0]);
158
- }
159
- });
160
- await this.updateStateObjectAsync(uuid + '.temperature', {
161
- name: control.name + ': Temperature',
162
- read: true,
163
- write: true,
164
- type: 'number',
165
- role: 'level.color.temperature',
166
- min: 2000,
167
- max: 8000,
168
- // TODO: re-add: smartIgnore: true,
169
- }, control.states.color, async (name, value) => {
170
- const brightnessTemperature = this.lumitechColorToBrightnessTemperature(value);
171
- if (brightnessTemperature !== undefined) {
172
- await this.setStateAck(name, brightnessTemperature[1]);
173
- }
174
- });
175
- // we use a timer (100 ms) to update the two color values,
176
- // so if somebody sends us the two values (almost) at once,
177
- // we don't change the color twice using commands
178
- const parentId = this.adapter.namespace + '.' + uuid;
179
- const updateColorValue = async () => {
180
- const states = (await this.adapter.getStatesAsync(uuid + '.*'));
181
- const brightness = this.convertStateToInt(states[parentId + '.brightness'].val);
182
- const temperature = this.convertStateToInt(states[parentId + '.temperature'].val);
183
- const command = `lumitech(${brightness},${temperature})`;
184
- this.sendCommand(control.uuidAction, command);
185
- };
186
- const startUpdateTimer = () => {
187
- if (this.colorUpdateTimer) {
188
- clearTimeout(this.colorUpdateTimer);
189
- }
190
- this.colorUpdateTimer = setTimeout(updateColorValue, 100);
191
- };
192
- this.addStateChangeListener(uuid + '.brightness', startUpdateTimer);
193
- this.addStateChangeListener(uuid + '.temperature', startUpdateTimer);
194
- }
195
- loxoneColorToRgb(value) {
196
- if (!value) {
197
- return undefined;
198
- }
199
- value = value.toString();
200
- let match = value.match(/hsv\((\d+),(\d+),(\d+)\)/i);
201
- if (match) {
202
- const hue = parseInt(match[1]);
203
- const sat = parseInt(match[2]);
204
- const val = parseInt(match[3]);
205
- return colorConvert.hsv.rgb([hue, sat, val]);
206
- }
207
- match = value.match(/temp\((\d+),(\d+)\)/i);
208
- if (match) {
209
- const brightness = parseFloat(match[1]) / 100;
210
- const temperature = parseFloat(match[2]) / 100;
211
- // based on http://www.tannerhelland.com/4435/convert-temperature-rgb-algorithm-code/
212
- let red = 255;
213
- let green = 255;
214
- let blue = 255;
215
- if (temperature <= 66) {
216
- green = 99.4708025861 * Math.log(temperature) - 161.1195681661;
217
- if (temperature <= 19) {
218
- blue = 0;
219
- }
220
- else {
221
- blue = 138.5177312231 * Math.log(temperature - 10) - 305.0447927307;
222
- }
223
- }
224
- else {
225
- red = 329.698727446 * Math.pow(temperature - 60, -0.1332047592);
226
- green = 288.1221695283 * Math.pow(temperature - 60, -0.0755148492);
227
- }
228
- red = Math.min(Math.max(red, 0), 255) * brightness;
229
- green = Math.min(Math.max(green, 0), 255) * brightness;
230
- blue = Math.min(Math.max(blue, 0), 255) * brightness;
231
- return [Math.round(red), Math.round(green), Math.round(blue)];
232
- }
233
- return undefined;
234
- }
235
- loxoneColorToBrightnessTemperature(value) {
236
- if (!value) {
237
- return undefined;
238
- }
239
- value = value.toString();
240
- const match = value.match(/temp\((\d+),(\d+)\)/i);
241
- if (match) {
242
- const brightness = parseFloat(match[1]);
243
- const temperature = parseFloat(match[2]);
244
- return [Math.round(brightness), Math.round(temperature)];
245
- }
246
- return undefined;
247
- }
248
- lumitechColorToBrightnessTemperature(value) {
249
- if (!value) {
250
- return undefined;
251
- }
252
- value = value.toString();
253
- const match = value.match(/lumitech\((\d+),(\d+)\)/i);
254
- if (match) {
255
- const brightness = parseFloat(match[1]);
256
- const temperature = parseFloat(match[2]);
257
- return [Math.round(brightness), Math.round(temperature)];
258
- }
259
- return undefined;
260
- }
261
- }
262
- exports.ColorpickerBase = ColorpickerBase;
263
- //# sourceMappingURL=ColorpickerBase.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ColorpickerBase.js","sourceRoot":"","sources":["../../src/controls/ColorpickerBase.ts"],"names":[],"mappings":"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"}
@@ -1,119 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Daytimer = void 0;
4
- const control_base_1 = require("./control-base");
5
- class Daytimer extends control_base_1.ControlBase {
6
- async loadAsync(type, uuid, control) {
7
- var _a;
8
- await this.updateObjectAsync(uuid, {
9
- type: type,
10
- common: {
11
- name: control.name,
12
- role: 'timer',
13
- },
14
- native: { control },
15
- });
16
- await this.loadOtherControlStatesAsync(control.name, uuid, control.states, [
17
- 'mode',
18
- 'override',
19
- 'value',
20
- 'needsActivation',
21
- 'modeList',
22
- 'entriesAndDefaultValue',
23
- 'resetActive',
24
- ]);
25
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'mode', 'number', 'value');
26
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'override', 'number', 'value', { unit: 'sec' });
27
- // value is a number for analog daytimers and a boolean for digital ones
28
- if (control.details.analog) {
29
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'value', 'number', 'value');
30
- if (control.details.hasOwnProperty('format')) {
31
- await this.updateStateObjectAsync(uuid + '.value-formatted', {
32
- name: control.name + ': formatted value',
33
- read: true,
34
- write: false,
35
- type: 'string',
36
- role: 'text',
37
- // TODO: re-add: smartIgnore: true,
38
- }, control.states.value, async (name, value) => {
39
- await this.setFormattedStateAck(name, value, control.details.format);
40
- });
41
- }
42
- }
43
- else {
44
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'value', 'boolean', 'indicator');
45
- if (control.details.hasOwnProperty('text')) {
46
- const text = (_a = control.details) === null || _a === void 0 ? void 0 : _a.text;
47
- await this.updateStateObjectAsync(uuid + '.value-formatted', {
48
- name: control.name + ': formatted value',
49
- read: true,
50
- write: false,
51
- type: 'string',
52
- role: 'text',
53
- // TODO: re-add: smartIgnore: true,
54
- }, control.states.value, async (name, value) => {
55
- await this.setStateAck(name, (this.convertStateToBoolean(value) ? text === null || text === void 0 ? void 0 : text.on : text === null || text === void 0 ? void 0 : text.off) || null);
56
- });
57
- }
58
- }
59
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'needsActivation', 'boolean', 'indicator');
60
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'resetActive', 'boolean', 'indicator');
61
- if (control.states.hasOwnProperty('mode') && control.states.hasOwnProperty('modeList')) {
62
- const obj = {
63
- type: 'state',
64
- common: {
65
- name: control.name + ': mode as text',
66
- read: true,
67
- write: false,
68
- type: 'string',
69
- role: 'text',
70
- // TODO: re-add: smartIgnore: true,
71
- },
72
- native: {
73
- mode: control.states.mode,
74
- modeList: control.states.modeList,
75
- },
76
- };
77
- await this.updateObjectAsync(uuid + '.mode-text', obj);
78
- let modeNames = {};
79
- let mode = '-';
80
- const updateModeText = async () => {
81
- if (modeNames.hasOwnProperty(mode)) {
82
- await this.setStateAck(uuid + '.mode-text', modeNames[mode]);
83
- }
84
- };
85
- this.addStateEventHandler(control.states.mode, async (value) => {
86
- mode = this.convertStateToInt(value).toString();
87
- await updateModeText();
88
- });
89
- this.addStateEventHandler(control.states.modeList, async (value) => {
90
- if (!value) {
91
- return;
92
- }
93
- // format of value: 0:mode=0;name=\"Feiertag\",1:mode=1;name=\"Urlaub\"
94
- modeNames = value
95
- .toString()
96
- .split(',')
97
- .map((item) => item
98
- .split(':', 2)[1]
99
- .split(';')
100
- .map((pair) => pair.split('=', 2)))
101
- .reduce((old, pairs) => {
102
- const modePair = pairs.find((p) => p[0] === 'mode');
103
- const namePair = pairs.find((p) => p[0] === 'name');
104
- if (!modePair || !namePair) {
105
- return old;
106
- }
107
- return { ...old, [modePair[1]]: namePair[1].replace(/^\\?"(.+?)\\?"$/g, '$1') };
108
- }, {});
109
- await updateModeText();
110
- });
111
- }
112
- await this.createButtonCommandStateObjectAsync(control.name, uuid, 'pulse');
113
- this.addStateChangeListener(uuid + '.pulse', () => {
114
- this.sendCommand(control.uuidAction, 'pulse');
115
- }, { selfAck: true });
116
- }
117
- }
118
- exports.Daytimer = Daytimer;
119
- //# sourceMappingURL=Daytimer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Daytimer.js","sourceRoot":"","sources":["../../src/controls/Daytimer.ts"],"names":[],"mappings":"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"}
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Dimmer = void 0;
4
- const control_base_1 = require("./control-base");
5
- class Dimmer extends control_base_1.ControlBase {
6
- async loadAsync(type, uuid, control) {
7
- await this.updateObjectAsync(uuid, {
8
- type: type,
9
- common: {
10
- name: control.name,
11
- role: 'light',
12
- },
13
- native: { control },
14
- });
15
- await this.loadOtherControlStatesAsync(control.name, uuid, control.states, ['position', 'min', 'max', 'step']);
16
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'position', 'number', 'level.dimmer', { write: true });
17
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'min', 'number', 'value');
18
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'max', 'number', 'value');
19
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'step', 'number', 'value');
20
- this.addStateChangeListener(uuid + '.position', (oldValue, newValue) => {
21
- this.sendCommand(control.uuidAction, this.convertStateToInt(newValue).toString());
22
- });
23
- await this.createButtonCommandStateObjectAsync(control.name, uuid, 'on');
24
- this.addStateChangeListener(uuid + '.on', () => {
25
- this.sendCommand(control.uuidAction, 'on');
26
- }, { selfAck: true });
27
- await this.createButtonCommandStateObjectAsync(control.name, uuid, 'off');
28
- this.addStateChangeListener(uuid + '.off', () => {
29
- this.sendCommand(control.uuidAction, 'off');
30
- }, { selfAck: true });
31
- }
32
- }
33
- exports.Dimmer = Dimmer;
34
- //# sourceMappingURL=Dimmer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Dimmer.js","sourceRoot":"","sources":["../../src/controls/Dimmer.ts"],"names":[],"mappings":";;;AAEA,iDAA0D;AAE1D,MAAa,MAAO,SAAQ,0BAAW;IACnC,KAAK,CAAC,SAAS,CAAC,IAAiB,EAAE,IAAY,EAAE,OAAgB;QAC7D,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;YAC/B,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACJ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO;aAChB;YACD,MAAM,EAAE,EAAE,OAAO,EAAE;SACtB,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QAE/G,MAAM,IAAI,CAAC,mCAAmC,CAC1C,OAAO,CAAC,IAAI,EACZ,IAAI,EACJ,OAAO,CAAC,MAAM,EACd,UAAU,EACV,QAAQ,EACR,cAAc,EACd,EAAE,KAAK,EAAE,IAAI,EAAE,CAClB,CAAC;QACF,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC7G,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC7G,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAE9G,IAAI,CAAC,sBAAsB,CAAC,IAAI,GAAG,WAAW,EAAE,CAAC,QAAuB,EAAE,QAA2B,EAAE,EAAE;YACrG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACzE,IAAI,CAAC,sBAAsB,CACvB,IAAI,GAAG,KAAK,EACZ,GAAG,EAAE;YACD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CACpB,CAAC;QAEF,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC1E,IAAI,CAAC,sBAAsB,CACvB,IAAI,GAAG,MAAM,EACb,GAAG,EAAE;YACD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAChD,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CACpB,CAAC;IACN,CAAC;CACJ;AAhDD,wBAgDC"}
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EIBDimmer = void 0;
4
- const control_base_1 = require("./control-base");
5
- class EIBDimmer extends control_base_1.ControlBase {
6
- async loadAsync(type, uuid, control) {
7
- await this.updateObjectAsync(uuid, {
8
- type: type,
9
- common: {
10
- name: control.name,
11
- role: 'light',
12
- },
13
- native: { control },
14
- });
15
- await this.loadOtherControlStatesAsync(control.name, uuid, control.states, ['position']);
16
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'position', 'number', 'level.dimmer', { write: true });
17
- this.addStateChangeListener(uuid + '.position', (oldValue, newValue) => {
18
- this.sendCommand(control.uuidAction, this.convertStateToInt(newValue).toString());
19
- });
20
- await this.createButtonCommandStateObjectAsync(control.name, uuid, 'on');
21
- this.addStateChangeListener(uuid + '.on', () => {
22
- this.sendCommand(control.uuidAction, 'on');
23
- }, { selfAck: true });
24
- await this.createButtonCommandStateObjectAsync(control.name, uuid, 'off');
25
- this.addStateChangeListener(uuid + '.off', () => {
26
- this.sendCommand(control.uuidAction, 'off');
27
- }, { selfAck: true });
28
- }
29
- }
30
- exports.EIBDimmer = EIBDimmer;
31
- //# sourceMappingURL=EIBDimmer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EIBDimmer.js","sourceRoot":"","sources":["../../src/controls/EIBDimmer.ts"],"names":[],"mappings":";;;AAEA,iDAA0D;AAE1D,MAAa,SAAU,SAAQ,0BAAW;IACtC,KAAK,CAAC,SAAS,CAAC,IAAiB,EAAE,IAAY,EAAE,OAAgB;QAC7D,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;YAC/B,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACJ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO;aAChB;YACD,MAAM,EAAE,EAAE,OAAO,EAAE;SACtB,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QAEzF,MAAM,IAAI,CAAC,mCAAmC,CAC1C,OAAO,CAAC,IAAI,EACZ,IAAI,EACJ,OAAO,CAAC,MAAM,EACd,UAAU,EACV,QAAQ,EACR,cAAc,EACd,EAAE,KAAK,EAAE,IAAI,EAAE,CAClB,CAAC;QAEF,IAAI,CAAC,sBAAsB,CAAC,IAAI,GAAG,WAAW,EAAE,CAAC,QAAuB,EAAE,QAA2B,EAAE,EAAE;YACrG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACzE,IAAI,CAAC,sBAAsB,CACvB,IAAI,GAAG,KAAK,EACZ,GAAG,EAAE;YACD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CACpB,CAAC;QAEF,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC1E,IAAI,CAAC,sBAAsB,CACvB,IAAI,GAAG,MAAM,EACb,GAAG,EAAE;YACD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAChD,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CACpB,CAAC;IACN,CAAC;CACJ;AA7CD,8BA6CC"}
@@ -1,64 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Fronius = void 0;
4
- const control_base_1 = require("./control-base");
5
- class Fronius extends control_base_1.ControlBase {
6
- async loadAsync(type, uuid, control) {
7
- const systemConfig = await this.adapter.getForeignObjectAsync('system.config');
8
- const currency = systemConfig === null || systemConfig === void 0 ? void 0 : systemConfig.common.currency;
9
- await this.updateObjectAsync(uuid, {
10
- type: type,
11
- common: {
12
- name: control.name,
13
- role: 'sensor',
14
- },
15
- native: { control },
16
- });
17
- await this.loadOtherControlStatesAsync(control.name, uuid, control.states, [
18
- 'prodCurr',
19
- 'prodCurrDay',
20
- 'prodCurrMonth',
21
- 'prodCurrYear',
22
- 'prodTotal',
23
- 'consCurr',
24
- 'consCurrDay',
25
- 'consTotal',
26
- 'deliveryDay',
27
- 'earningsDay',
28
- 'earningsMonth',
29
- 'earningsYear',
30
- 'earningsTotal',
31
- 'gridCurr',
32
- 'batteryCurr',
33
- 'stateOfCharge',
34
- 'priceDelivery',
35
- 'priceConsumption',
36
- 'co2Factor',
37
- 'generatorType',
38
- 'mode',
39
- 'online',
40
- ]);
41
- // note: priceDelivery, priceConsumption, generatorType and mode are ignored
42
- // because they represent static data that is of no use to ioBroker
43
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'prodCurr', 'number', 'value', { unit: 'kW' });
44
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'prodCurrDay', 'number', 'value', { unit: 'kWh' });
45
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'prodCurrMonth', 'number', 'value', { unit: 'kWh' });
46
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'prodCurrYear', 'number', 'value', { unit: 'kWh' });
47
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'prodTotal', 'number', 'value', { unit: 'kWh' });
48
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'consCurr', 'number', 'value', { unit: 'kW' });
49
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'consCurrDay', 'number', 'value.power.consumption', { unit: 'kWh' });
50
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'consTotal', 'number', 'value.power.consumption', { unit: 'kWh' });
51
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'gridCurr', 'number', 'value', { unit: 'kW' });
52
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'batteryCurr', 'number', 'value', { unit: 'kW' });
53
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'stateOfCharge', 'number', 'value', { unit: '%' });
54
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'deliveryDay', 'number', 'value', { unit: 'kWh' });
55
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'earningsDay', 'number', 'value', { unit: currency });
56
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'earningsMonth', 'number', 'value', { unit: currency });
57
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'earningsYear', 'number', 'value', { unit: currency });
58
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'earningsTotal', 'number', 'value', { unit: currency });
59
- await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'co2Factor', 'number', 'value');
60
- await this.createBooleanControlStateObjectAsync(control.name, uuid, control.states, 'online', 'indicator.reachable', {}, (value) => value != 1);
61
- }
62
- }
63
- exports.Fronius = Fronius;
64
- //# sourceMappingURL=Fronius.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Fronius.js","sourceRoot":"","sources":["../../src/controls/Fronius.ts"],"names":[],"mappings":"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"}