grenton-ts 1.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 (107) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +86 -0
  3. package/dist/analog-din/fv02_01/analog-in.ts +271 -0
  4. package/dist/clu/calendar/v1/calendar.ts +308 -0
  5. package/dist/clu/clu-zwave-2/fv515_03/clu-zwave-2.ts +1302 -0
  6. package/dist/clu/event-scheduler/v1/event-scheduler.ts +537 -0
  7. package/dist/clu/multi-fan-ac-thermostat/v1/multi-fan-ac-thermostat.ts +1163 -0
  8. package/dist/clu/pid-controller/v1/pid-controller.ts +536 -0
  9. package/dist/clu/presence-sensor/v1/presence-sensor.ts +313 -0
  10. package/dist/clu/presence-sensor/v2/presence-sensor.ts +470 -0
  11. package/dist/clu/push/v1/push.ts +261 -0
  12. package/dist/clu/scheduler/v1/scheduler.ts +304 -0
  13. package/dist/clu/statistics/v1/statistics.ts +413 -0
  14. package/dist/clu/statistics-pulse/v1/statistics-pulse.ts +218 -0
  15. package/dist/clu/sunrise-sunset-calendar/v1/sunrise-sunset-calendar.ts +389 -0
  16. package/dist/clu/sunrise-sunset-calendar/v2/sunrise-sunset-calendar.ts +659 -0
  17. package/dist/clu/sunrise-sunset-calendar/v3/sunrise-sunset-calendar.ts +659 -0
  18. package/dist/clu/thermostat/v1/thermostat.ts +768 -0
  19. package/dist/clu/thermostat/v2/thermostat.ts +861 -0
  20. package/dist/clu/timer/v1/timer.ts +369 -0
  21. package/dist/core/execution-builder.ts +55 -0
  22. package/dist/core/remote-gate.ts +17 -0
  23. package/dist/digital-in-din/fv02_01/din.ts +310 -0
  24. package/dist/examples/light_turned_on_by_calendar/Clu_OnInit.ts +26 -0
  25. package/dist/examples/light_turned_on_by_presence_sensor/Clu_OnInit.ts +35 -0
  26. package/dist/examples/light_turned_on_by_switch/Clu_OnInit.ts +16 -0
  27. package/dist/gate/cool-master/v1/cool-master.ts +782 -0
  28. package/dist/gate/cool-master-net/v1/cool-master-net.ts +334 -0
  29. package/dist/gate/denon-marantz-avr/v1/denon-marantz-avr.ts +724 -0
  30. package/dist/gate/heos/v1/heos.ts +1224 -0
  31. package/dist/gate/http/fv1000_03/clu-gate-http.ts +405 -0
  32. package/dist/gate/http/fv1000_03_hv1/clu-gate-http.ts +352 -0
  33. package/dist/gate/http/fv1100_03/clu-gate-http.ts +589 -0
  34. package/dist/gate/http/fv1110_03/clu-gate-http.ts +589 -0
  35. package/dist/gate/http/fv1300_03/clu-gate-http.ts +589 -0
  36. package/dist/gate/http/fv1400_03/clu-gate-http.ts +677 -0
  37. package/dist/gate/http-listener/v1/http-listener.ts +299 -0
  38. package/dist/gate/http-listener/v2/http-listener.ts +325 -0
  39. package/dist/gate/http-request/v1/http-request.ts +645 -0
  40. package/dist/gate/http-request/v2/http-request.ts +709 -0
  41. package/dist/gate/input/v1/input.ts +171 -0
  42. package/dist/gate/jablotron/v1/jablotron.ts +100 -0
  43. package/dist/gate/jablotron-device/v1/jablotron-device.ts +171 -0
  44. package/dist/gate/jablotron-output/v1/jablotron-output.ts +240 -0
  45. package/dist/gate/jablotron-section/v1/jablotron-section.ts +260 -0
  46. package/dist/gate/modbus/v1/modbus.ts +609 -0
  47. package/dist/gate/modbus/v2/modbus.ts +690 -0
  48. package/dist/gate/modbus-client/v1/modbus-client.ts +827 -0
  49. package/dist/gate/modbus-rtu/v1/modbus-rtu.ts +911 -0
  50. package/dist/gate/modbus-server/v1/modbus-server.ts +405 -0
  51. package/dist/gate/modbus-slave-config-rtu/v1/modbus-slave-config-rtu.ts +160 -0
  52. package/dist/gate/modbus-slave-rtu/v1/modbus-slave-rtu.ts +371 -0
  53. package/dist/gate/modbus-value/v1/modbus-value.ts +856 -0
  54. package/dist/gate/music-cast/v1/music-cast.ts +1298 -0
  55. package/dist/gate/output/v1/output.ts +240 -0
  56. package/dist/gate/satel/v1/satel.ts +359 -0
  57. package/dist/gate/satel-input/v1/satel-input.ts +171 -0
  58. package/dist/gate/satel-output/v1/satel-output.ts +240 -0
  59. package/dist/gate/satel-zone/v1/satel-zone.ts +235 -0
  60. package/dist/gate/sonos/v1/sonos.ts +934 -0
  61. package/dist/gate/timer/v2/timer.ts +253 -0
  62. package/dist/gate/zone/v1/zone.ts +235 -0
  63. package/dist/io-module-din-8/fv02_02/din.ts +354 -0
  64. package/dist/io-module-din-8/fv02_02/dout.ts +360 -0
  65. package/dist/one-wire/fv01_10/onew-sensor.ts +269 -0
  66. package/dist/one-wire/fv01_28/onew-sensor.ts +269 -0
  67. package/dist/one-wire/fv02_28/onew-sensor.ts +350 -0
  68. package/dist/one-wire/fv03_28/onew-sensor.ts +435 -0
  69. package/dist/relay-din-2/fv02_02/dout.ts +544 -0
  70. package/dist/relay-din-4/fv01_02/dout.ts +340 -0
  71. package/dist/relay-din-4/fv02_02/dout.ts +368 -0
  72. package/dist/roller-shutter-din-3/fv03_02/roller-shutter.ts +1078 -0
  73. package/dist/smart-panel-fm-4/fv03_03/panel-button.ts +550 -0
  74. package/dist/smart-panel-fm-4/fv03_03/panel-sens-light.ts +238 -0
  75. package/dist/smart-panel-fm-4/fv03_03/panel-sens-temp.ts +239 -0
  76. package/dist/smart-panel-fm-4/fv03_03/panel.ts +700 -0
  77. package/dist/smart-panel-fm-4/fv04_03/panel-button.ts +567 -0
  78. package/dist/smart-panel-fm-4/fv04_03/panel-page.ts +516 -0
  79. package/dist/smart-panel-fm-4/fv04_03/panel-sens-light.ts +238 -0
  80. package/dist/smart-panel-fm-4/fv04_03/panel-sens-temp.ts +239 -0
  81. package/dist/smart-panel-fm-4/fv04_03/panel.ts +1026 -0
  82. package/dist/smart-panel-fm-4/fv05_03/panel-button.ts +567 -0
  83. package/dist/smart-panel-fm-4/fv05_03/panel-page.ts +620 -0
  84. package/dist/smart-panel-fm-4/fv05_03/panel-sens-light.ts +238 -0
  85. package/dist/smart-panel-fm-4/fv05_03/panel-sens-temp.ts +266 -0
  86. package/dist/smart-panel-fm-4/fv05_03/panel.ts +1109 -0
  87. package/dist/smart-panel-fm-4/fv06_03/panel-button.ts +567 -0
  88. package/dist/smart-panel-fm-4/fv06_03/panel-page.ts +877 -0
  89. package/dist/smart-panel-fm-4/fv06_03/panel-sens-light.ts +238 -0
  90. package/dist/smart-panel-fm-4/fv06_03/panel-sens-temp.ts +297 -0
  91. package/dist/smart-panel-fm-4/fv06_03/panel.ts +1138 -0
  92. package/dist/smart-panel-fm-4/fv07_03/panel-button.ts +567 -0
  93. package/dist/smart-panel-fm-4/fv07_03/panel-page.ts +864 -0
  94. package/dist/smart-panel-fm-4/fv07_03/panel-sens-light.ts +238 -0
  95. package/dist/smart-panel-fm-4/fv07_03/panel-sens-temp.ts +297 -0
  96. package/dist/smart-panel-fm-4/fv07_03/panel.ts +1135 -0
  97. package/dist/touch-panel-fm-4/fv01_02/panel-button.ts +418 -0
  98. package/dist/touch-panel-fm-4/fv01_02/panel-sens-light.ts +238 -0
  99. package/dist/touch-panel-fm-4/fv01_02/panel-sens-temp.ts +257 -0
  100. package/dist/touch-panel-fm-4/fv01_02/panel.ts +75 -0
  101. package/dist/touch-panel-fm-4/fv01_02/power-supply-voltage.ts +322 -0
  102. package/dist/touch-panel-fm-8/fv01_02/panel-button.ts +418 -0
  103. package/dist/touch-panel-fm-8/fv01_02/panel-sens-light.ts +238 -0
  104. package/dist/touch-panel-fm-8/fv01_02/panel-sens-temp.ts +270 -0
  105. package/dist/touch-panel-fm-8/fv01_02/panel.ts +75 -0
  106. package/dist/touch-panel-fm-8/fv01_02/power-supply-voltage.ts +322 -0
  107. package/package.json +16 -0
@@ -0,0 +1,350 @@
1
+ // Created from: packages/grenton-api/interfaces/module_one_wire_fv02_28.xml, object name="ONEW_SENSOR" version="02" typeId="28"
2
+
3
+ import { rawExecutionBuilderFactory } from "../../core/execution-builder"
4
+ import { RemoteGate } from "../../core/remote-gate"
5
+
6
+ enum EventType {
7
+ OnChange = 0,
8
+ OnRise = 1,
9
+ OnLower = 2,
10
+ OnOutOfRange = 3,
11
+ OnConnect = 4,
12
+ OnDisconnect = 5
13
+ }
14
+
15
+ enum PropertyType {
16
+ Value = 0,
17
+ Threshold = 1,
18
+ MinValue = 2,
19
+ MaxValue = 3,
20
+ Status = 4
21
+ }
22
+
23
+ enum MethodType {}
24
+
25
+ enum StatusType {
26
+ Disconnected = 0,
27
+ Connected = 1
28
+ }
29
+
30
+ declare class OnewSensorRaw {
31
+ add_event(event: EventType, callback: () => void): void;
32
+ get(property: PropertyType): any;
33
+ set(property: PropertyType, value: any): void;
34
+ execute(method: MethodType, ...args: any[]): any;
35
+ }
36
+
37
+ interface IOnewSensor {
38
+ /**
39
+ * Zdarzenie wywoływane przy zmianie wartości wyjścia
40
+ * @param callback
41
+ */
42
+ addOnChange: (callback: () => void) => void
43
+ /**
44
+ * Zdarzenie wywoływane po przekroczeniu górnego progu histerezy (zbocze rosnące)
45
+ * @param callback
46
+ */
47
+ addOnRise: (callback: () => void) => void
48
+ /**
49
+ * Zdarzenie wywoływane po przekroczeniu dolnego progu histerezy (zbocze opadające)
50
+ * @param callback
51
+ */
52
+ addOnLower: (callback: () => void) => void
53
+ /**
54
+ * Zdarzenie wywoływane gdy wartość na wejściu znajduje się poza wyznaczonym zakresem (MinValue - MaxValue)
55
+ * @param callback
56
+ */
57
+ addOnOutOfRange: (callback: () => void) => void
58
+ /**
59
+ * Zdarzenie wywoływane podczas połączenia się z czujnikiem
60
+ * @param callback
61
+ */
62
+ addOnConnect: (callback: () => void) => void
63
+ /**
64
+ * Zdarzenie wywoływane podczas rozłączenia się z czujnikiem
65
+ * @param callback
66
+ */
67
+ addOnDisconnect: (callback: () => void) => void
68
+ /** Wartość wejścia */
69
+ readonly value: number
70
+ /** Wielkość histerezy (dokładność 0.1 °C lub 0.1%), określajaca czułość przy której następuje wygenerowanie zdarzeń: OnChange, OnLower, OnRise */
71
+ threshold: number
72
+ /** Wartość minimalna po przekroczeniu której generowane jest zdarzenie OnOutOfRange */
73
+ minValue: number
74
+ /** Wartość maksymalna po przekroczeniu której generowane jest zdarzenie OnOutOfRange */
75
+ maxValue: number
76
+ /** Status połączenia czujnika: 0 - rozłączony, 1 - połączony */
77
+ readonly status: StatusType
78
+ }
79
+
80
+ class OnewSensor implements IOnewSensor {
81
+ private onChangeCallbacks: Array<() => void> = [];
82
+ private onRiseCallbacks: Array<() => void> = [];
83
+ private onLowerCallbacks: Array<() => void> = [];
84
+ private onOutOfRangeCallbacks: Array<() => void> = [];
85
+ private onConnectCallbacks: Array<() => void> = [];
86
+ private onDisconnectCallbacks: Array<() => void> = [];
87
+
88
+ constructor(private raw: OnewSensorRaw) {
89
+ this.raw.add_event(EventType.OnChange, () => {
90
+ this.onChangeCallbacks.forEach(callback => {
91
+ callback();
92
+ });
93
+ });
94
+
95
+ this.raw.add_event(EventType.OnRise, () => {
96
+ this.onRiseCallbacks.forEach(callback => {
97
+ callback();
98
+ });
99
+ });
100
+
101
+ this.raw.add_event(EventType.OnLower, () => {
102
+ this.onLowerCallbacks.forEach(callback => {
103
+ callback();
104
+ });
105
+ });
106
+
107
+ this.raw.add_event(EventType.OnOutOfRange, () => {
108
+ this.onOutOfRangeCallbacks.forEach(callback => {
109
+ callback();
110
+ });
111
+ });
112
+
113
+ this.raw.add_event(EventType.OnConnect, () => {
114
+ this.onConnectCallbacks.forEach(callback => {
115
+ callback();
116
+ });
117
+ });
118
+
119
+ this.raw.add_event(EventType.OnDisconnect, () => {
120
+ this.onDisconnectCallbacks.forEach(callback => {
121
+ callback();
122
+ });
123
+ });
124
+ }
125
+
126
+ /**
127
+ * Zdarzenie wywoływane przy zmianie wartości wyjścia
128
+ * @param callback
129
+ */
130
+ addOnChange(callback: () => void): void {
131
+ this.onChangeCallbacks.push(callback);
132
+ }
133
+ /**
134
+ * Zdarzenie wywoływane po przekroczeniu górnego progu histerezy (zbocze rosnące)
135
+ * @param callback
136
+ */
137
+ addOnRise(callback: () => void): void {
138
+ this.onRiseCallbacks.push(callback);
139
+ }
140
+ /**
141
+ * Zdarzenie wywoływane po przekroczeniu dolnego progu histerezy (zbocze opadające)
142
+ * @param callback
143
+ */
144
+ addOnLower(callback: () => void): void {
145
+ this.onLowerCallbacks.push(callback);
146
+ }
147
+ /**
148
+ * Zdarzenie wywoływane gdy wartość na wejściu znajduje się poza wyznaczonym zakresem (MinValue - MaxValue)
149
+ * @param callback
150
+ */
151
+ addOnOutOfRange(callback: () => void): void {
152
+ this.onOutOfRangeCallbacks.push(callback);
153
+ }
154
+ /**
155
+ * Zdarzenie wywoływane podczas połączenia się z czujnikiem
156
+ * @param callback
157
+ */
158
+ addOnConnect(callback: () => void): void {
159
+ this.onConnectCallbacks.push(callback);
160
+ }
161
+ /**
162
+ * Zdarzenie wywoływane podczas rozłączenia się z czujnikiem
163
+ * @param callback
164
+ */
165
+ addOnDisconnect(callback: () => void): void {
166
+ this.onDisconnectCallbacks.push(callback);
167
+ }
168
+ /**
169
+ * Wartość wejścia
170
+ * @returns {number}
171
+ */
172
+ get value(): number {
173
+ return this.raw.get(PropertyType.Value);
174
+ }
175
+ /**
176
+ * Wielkość histerezy (dokładność 0.1 °C lub 0.1%), określajaca czułość przy której następuje wygenerowanie zdarzeń: OnChange, OnLower, OnRise
177
+ * @returns {number}
178
+ */
179
+ get threshold(): number {
180
+ return this.raw.get(PropertyType.Threshold);
181
+ }
182
+ set threshold(value: number) {
183
+ this.raw.set(PropertyType.Threshold, value);
184
+ }
185
+ /**
186
+ * Wartość minimalna po przekroczeniu której generowane jest zdarzenie OnOutOfRange
187
+ * @returns {number}
188
+ */
189
+ get minValue(): number {
190
+ return this.raw.get(PropertyType.MinValue);
191
+ }
192
+ set minValue(value: number) {
193
+ this.raw.set(PropertyType.MinValue, value);
194
+ }
195
+ /**
196
+ * Wartość maksymalna po przekroczeniu której generowane jest zdarzenie OnOutOfRange
197
+ * @returns {number}
198
+ */
199
+ get maxValue(): number {
200
+ return this.raw.get(PropertyType.MaxValue);
201
+ }
202
+ set maxValue(value: number) {
203
+ this.raw.set(PropertyType.MaxValue, value);
204
+ }
205
+ /**
206
+ * Status połączenia czujnika: 0 - rozłączony, 1 - połączony
207
+ * @returns {StatusType}
208
+ */
209
+ get status(): StatusType {
210
+ return this.raw.get(PropertyType.Status);
211
+ }
212
+ }
213
+
214
+ class OnewSensorRemote implements IOnewSensor {
215
+ constructor(private objectName: string, private gate: RemoteGate) {
216
+
217
+ }
218
+
219
+ /**
220
+ * Zdarzenie wywoływane przy zmianie wartości wyjścia
221
+ * @param callback
222
+ */
223
+ addOnChange(_callback: () => void): void {
224
+ // Remote events are not supported
225
+ }
226
+ /**
227
+ * Zdarzenie wywoływane po przekroczeniu górnego progu histerezy (zbocze rosnące)
228
+ * @param callback
229
+ */
230
+ addOnRise(_callback: () => void): void {
231
+ // Remote events are not supported
232
+ }
233
+ /**
234
+ * Zdarzenie wywoływane po przekroczeniu dolnego progu histerezy (zbocze opadające)
235
+ * @param callback
236
+ */
237
+ addOnLower(_callback: () => void): void {
238
+ // Remote events are not supported
239
+ }
240
+ /**
241
+ * Zdarzenie wywoływane gdy wartość na wejściu znajduje się poza wyznaczonym zakresem (MinValue - MaxValue)
242
+ * @param callback
243
+ */
244
+ addOnOutOfRange(_callback: () => void): void {
245
+ // Remote events are not supported
246
+ }
247
+ /**
248
+ * Zdarzenie wywoływane podczas połączenia się z czujnikiem
249
+ * @param callback
250
+ */
251
+ addOnConnect(_callback: () => void): void {
252
+ // Remote events are not supported
253
+ }
254
+ /**
255
+ * Zdarzenie wywoływane podczas rozłączenia się z czujnikiem
256
+ * @param callback
257
+ */
258
+ addOnDisconnect(_callback: () => void): void {
259
+ // Remote events are not supported
260
+ }
261
+
262
+ /**
263
+ * Wartość wejścia
264
+ * @returns {number}
265
+ */
266
+ get value(): number {
267
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
268
+ .get()
269
+ .addParameter(PropertyType.Value)
270
+ .build();
271
+ return this.gate.runScript(cmd!);
272
+ }
273
+
274
+ /**
275
+ * Wielkość histerezy (dokładność 0.1 °C lub 0.1%), określajaca czułość przy której następuje wygenerowanie zdarzeń: OnChange, OnLower, OnRise
276
+ * @returns {number}
277
+ */
278
+ get threshold(): number {
279
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
280
+ .get()
281
+ .addParameter(PropertyType.Threshold)
282
+ .build();
283
+ return this.gate.runScript(cmd!);
284
+ }
285
+
286
+ set threshold(value: number) {
287
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
288
+ .set()
289
+ .addParameter(PropertyType.Threshold)
290
+ .addParameter(value)
291
+ .build();
292
+ this.gate.runScript(cmd!);
293
+ }
294
+
295
+ /**
296
+ * Wartość minimalna po przekroczeniu której generowane jest zdarzenie OnOutOfRange
297
+ * @returns {number}
298
+ */
299
+ get minValue(): number {
300
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
301
+ .get()
302
+ .addParameter(PropertyType.MinValue)
303
+ .build();
304
+ return this.gate.runScript(cmd!);
305
+ }
306
+
307
+ set minValue(value: number) {
308
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
309
+ .set()
310
+ .addParameter(PropertyType.MinValue)
311
+ .addParameter(value)
312
+ .build();
313
+ this.gate.runScript(cmd!);
314
+ }
315
+
316
+ /**
317
+ * Wartość maksymalna po przekroczeniu której generowane jest zdarzenie OnOutOfRange
318
+ * @returns {number}
319
+ */
320
+ get maxValue(): number {
321
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
322
+ .get()
323
+ .addParameter(PropertyType.MaxValue)
324
+ .build();
325
+ return this.gate.runScript(cmd!);
326
+ }
327
+
328
+ set maxValue(value: number) {
329
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
330
+ .set()
331
+ .addParameter(PropertyType.MaxValue)
332
+ .addParameter(value)
333
+ .build();
334
+ this.gate.runScript(cmd!);
335
+ }
336
+
337
+ /**
338
+ * Status połączenia czujnika: 0 - rozłączony, 1 - połączony
339
+ * @returns {StatusType}
340
+ */
341
+ get status(): StatusType {
342
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
343
+ .get()
344
+ .addParameter(PropertyType.Status)
345
+ .build();
346
+ return this.gate.runScript(cmd!);
347
+ }
348
+ }
349
+
350
+ export { OnewSensor, OnewSensorRaw, OnewSensorRemote, StatusType }