@haydendonald/node-red-contrib-hass-stuff 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +5 -0
- package/README.md +544 -0
- package/dist/Connections/connectionsConfigNode.html +21 -0
- package/dist/Connections/connectionsConfigNode.js +330 -0
- package/dist/Connections/connectionsNode.html +30 -0
- package/dist/Connections/connectionsNode.js +17 -0
- package/dist/Connections/connectionsTypes.js +11 -0
- package/dist/LightControl/lightControlConfigNode.html +109 -0
- package/dist/LightControl/lightControlConfigNode.js +311 -0
- package/dist/LightControl/lightControlNode.html +30 -0
- package/dist/LightControl/lightControlNode.js +18 -0
- package/dist/LightControl/lightControlTypes.js +20 -0
- package/dist/baseConfigNode.js +24 -0
- package/dist/baseNode.js +5 -0
- package/dist/utility.js +19 -0
- package/package.json +36 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
Copyright 2026 Hayden Donald
|
|
2
|
+
|
|
3
|
+
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
|
|
4
|
+
|
|
5
|
+
THE SOFTWARE IS PROVIDED “AS IS” AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE
|
package/README.md
ADDED
|
@@ -0,0 +1,544 @@
|
|
|
1
|
+
# node-red-contrib-hass-stuff
|
|
2
|
+
A collection of stuff I use on my Node Red + Home Assistant server. This could be of use for others, i don't know..
|
|
3
|
+
|
|
4
|
+
# Nodes
|
|
5
|
+
## Connections
|
|
6
|
+
|
|
7
|
+
This node is required by other nodes in this project. It provides the connections required to communicate to HomeAssistant and other stuff.
|
|
8
|
+
|
|
9
|
+
The following can be imported into NodeRED to provide these:
|
|
10
|
+
<details>
|
|
11
|
+
<summary>Add connections Node to NodeRED</summary>
|
|
12
|
+
|
|
13
|
+
```json
|
|
14
|
+
[
|
|
15
|
+
{
|
|
16
|
+
"id": "80cbc1c2e93f49fa",
|
|
17
|
+
"type": "ha-api",
|
|
18
|
+
"z": "f028d32cd5f8196d",
|
|
19
|
+
"name": "",
|
|
20
|
+
"server": "",
|
|
21
|
+
"version": 1,
|
|
22
|
+
"debugenabled": true,
|
|
23
|
+
"protocol": "websocket",
|
|
24
|
+
"method": "get",
|
|
25
|
+
"path": "",
|
|
26
|
+
"data": "",
|
|
27
|
+
"dataType": "jsonata",
|
|
28
|
+
"responseType": "json",
|
|
29
|
+
"outputProperties": [
|
|
30
|
+
{
|
|
31
|
+
"property": "payload",
|
|
32
|
+
"propertyType": "msg",
|
|
33
|
+
"value": "",
|
|
34
|
+
"valueType": "results"
|
|
35
|
+
}
|
|
36
|
+
],
|
|
37
|
+
"x": 530,
|
|
38
|
+
"y": 700,
|
|
39
|
+
"wires": [
|
|
40
|
+
[
|
|
41
|
+
"3b2abe9fd6ef7ffd"
|
|
42
|
+
]
|
|
43
|
+
]
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"id": "3b2abe9fd6ef7ffd",
|
|
47
|
+
"type": "change",
|
|
48
|
+
"z": "f028d32cd5f8196d",
|
|
49
|
+
"name": "",
|
|
50
|
+
"rules": [
|
|
51
|
+
{
|
|
52
|
+
"t": "set",
|
|
53
|
+
"p": "topic",
|
|
54
|
+
"pt": "msg",
|
|
55
|
+
"to": "api",
|
|
56
|
+
"tot": "str"
|
|
57
|
+
}
|
|
58
|
+
],
|
|
59
|
+
"action": "",
|
|
60
|
+
"property": "",
|
|
61
|
+
"from": "",
|
|
62
|
+
"to": "",
|
|
63
|
+
"reg": false,
|
|
64
|
+
"x": 675,
|
|
65
|
+
"y": 700,
|
|
66
|
+
"wires": [
|
|
67
|
+
[
|
|
68
|
+
"78f07ee4763a6b14"
|
|
69
|
+
]
|
|
70
|
+
],
|
|
71
|
+
"l": false
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"id": "934e731820c17347",
|
|
75
|
+
"type": "api-call-service",
|
|
76
|
+
"z": "f028d32cd5f8196d",
|
|
77
|
+
"name": "",
|
|
78
|
+
"server": "",
|
|
79
|
+
"version": 7,
|
|
80
|
+
"debugenabled": false,
|
|
81
|
+
"action": "",
|
|
82
|
+
"floorId": [],
|
|
83
|
+
"areaId": [],
|
|
84
|
+
"deviceId": [],
|
|
85
|
+
"entityId": [],
|
|
86
|
+
"labelId": [],
|
|
87
|
+
"data": "",
|
|
88
|
+
"dataType": "jsonata",
|
|
89
|
+
"mergeContext": "",
|
|
90
|
+
"mustacheAltTags": false,
|
|
91
|
+
"outputProperties": [],
|
|
92
|
+
"queue": "none",
|
|
93
|
+
"blockInputOverrides": false,
|
|
94
|
+
"domain": "",
|
|
95
|
+
"service": "",
|
|
96
|
+
"x": 530,
|
|
97
|
+
"y": 820,
|
|
98
|
+
"wires": [
|
|
99
|
+
[
|
|
100
|
+
"885080cdde7fec06"
|
|
101
|
+
]
|
|
102
|
+
]
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"id": "388d419ff40adeae",
|
|
106
|
+
"type": "api-current-state",
|
|
107
|
+
"z": "f028d32cd5f8196d",
|
|
108
|
+
"name": "",
|
|
109
|
+
"server": "",
|
|
110
|
+
"version": 3,
|
|
111
|
+
"outputs": 1,
|
|
112
|
+
"halt_if": "",
|
|
113
|
+
"halt_if_type": "str",
|
|
114
|
+
"halt_if_compare": "is",
|
|
115
|
+
"entity_id": "",
|
|
116
|
+
"state_type": "str",
|
|
117
|
+
"blockInputOverrides": false,
|
|
118
|
+
"outputProperties": [
|
|
119
|
+
{
|
|
120
|
+
"property": "payload",
|
|
121
|
+
"propertyType": "msg",
|
|
122
|
+
"value": "string",
|
|
123
|
+
"valueType": "entityState"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"property": "data",
|
|
127
|
+
"propertyType": "msg",
|
|
128
|
+
"value": "",
|
|
129
|
+
"valueType": "entity"
|
|
130
|
+
}
|
|
131
|
+
],
|
|
132
|
+
"for": "0",
|
|
133
|
+
"forType": "num",
|
|
134
|
+
"forUnits": "minutes",
|
|
135
|
+
"override_topic": false,
|
|
136
|
+
"state_location": "payload",
|
|
137
|
+
"override_payload": "msg",
|
|
138
|
+
"entity_location": "data",
|
|
139
|
+
"override_data": "msg",
|
|
140
|
+
"x": 560,
|
|
141
|
+
"y": 740,
|
|
142
|
+
"wires": [
|
|
143
|
+
[
|
|
144
|
+
"a60dbdb2a080de5e"
|
|
145
|
+
]
|
|
146
|
+
]
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"id": "1b2a505996e8dd0b",
|
|
150
|
+
"type": "server-events",
|
|
151
|
+
"z": "f028d32cd5f8196d",
|
|
152
|
+
"name": "",
|
|
153
|
+
"server": "",
|
|
154
|
+
"version": 3,
|
|
155
|
+
"exposeAsEntityConfig": "",
|
|
156
|
+
"eventType": "",
|
|
157
|
+
"eventData": "",
|
|
158
|
+
"waitForRunning": true,
|
|
159
|
+
"outputProperties": [
|
|
160
|
+
{
|
|
161
|
+
"property": "payload",
|
|
162
|
+
"propertyType": "msg",
|
|
163
|
+
"value": "",
|
|
164
|
+
"valueType": "eventData"
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"property": "topic",
|
|
168
|
+
"propertyType": "msg",
|
|
169
|
+
"value": "$outputData(\"eventData\").event_type",
|
|
170
|
+
"valueType": "jsonata"
|
|
171
|
+
}
|
|
172
|
+
],
|
|
173
|
+
"x": 540,
|
|
174
|
+
"y": 660,
|
|
175
|
+
"wires": [
|
|
176
|
+
[
|
|
177
|
+
"194985fca2779f3b"
|
|
178
|
+
]
|
|
179
|
+
]
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
"id": "170d8627f4d745b0",
|
|
183
|
+
"type": "ha-get-entities",
|
|
184
|
+
"z": "f028d32cd5f8196d",
|
|
185
|
+
"name": "",
|
|
186
|
+
"server": "",
|
|
187
|
+
"version": 1,
|
|
188
|
+
"rules": [
|
|
189
|
+
{
|
|
190
|
+
"condition": "state_object",
|
|
191
|
+
"property": "",
|
|
192
|
+
"logic": "is",
|
|
193
|
+
"value": "",
|
|
194
|
+
"valueType": "str"
|
|
195
|
+
}
|
|
196
|
+
],
|
|
197
|
+
"outputType": "array",
|
|
198
|
+
"outputEmptyResults": true,
|
|
199
|
+
"outputLocationType": "msg",
|
|
200
|
+
"outputLocation": "payload",
|
|
201
|
+
"outputResultsCount": 1,
|
|
202
|
+
"x": 550,
|
|
203
|
+
"y": 780,
|
|
204
|
+
"wires": [
|
|
205
|
+
[
|
|
206
|
+
"204f99728a048c5f"
|
|
207
|
+
]
|
|
208
|
+
]
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
"id": "a60dbdb2a080de5e",
|
|
212
|
+
"type": "change",
|
|
213
|
+
"z": "f028d32cd5f8196d",
|
|
214
|
+
"name": "",
|
|
215
|
+
"rules": [
|
|
216
|
+
{
|
|
217
|
+
"t": "set",
|
|
218
|
+
"p": "topic",
|
|
219
|
+
"pt": "msg",
|
|
220
|
+
"to": "state",
|
|
221
|
+
"tot": "str"
|
|
222
|
+
}
|
|
223
|
+
],
|
|
224
|
+
"action": "",
|
|
225
|
+
"property": "",
|
|
226
|
+
"from": "",
|
|
227
|
+
"to": "",
|
|
228
|
+
"reg": false,
|
|
229
|
+
"x": 675,
|
|
230
|
+
"y": 740,
|
|
231
|
+
"wires": [
|
|
232
|
+
[
|
|
233
|
+
"78f07ee4763a6b14"
|
|
234
|
+
]
|
|
235
|
+
],
|
|
236
|
+
"l": false
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
"id": "204f99728a048c5f",
|
|
240
|
+
"type": "change",
|
|
241
|
+
"z": "f028d32cd5f8196d",
|
|
242
|
+
"name": "",
|
|
243
|
+
"rules": [
|
|
244
|
+
{
|
|
245
|
+
"t": "set",
|
|
246
|
+
"p": "topic",
|
|
247
|
+
"pt": "msg",
|
|
248
|
+
"to": "get_entities",
|
|
249
|
+
"tot": "str"
|
|
250
|
+
}
|
|
251
|
+
],
|
|
252
|
+
"action": "",
|
|
253
|
+
"property": "",
|
|
254
|
+
"from": "",
|
|
255
|
+
"to": "",
|
|
256
|
+
"reg": false,
|
|
257
|
+
"x": 675,
|
|
258
|
+
"y": 780,
|
|
259
|
+
"wires": [
|
|
260
|
+
[
|
|
261
|
+
"78f07ee4763a6b14"
|
|
262
|
+
]
|
|
263
|
+
],
|
|
264
|
+
"l": false
|
|
265
|
+
},
|
|
266
|
+
{
|
|
267
|
+
"id": "885080cdde7fec06",
|
|
268
|
+
"type": "change",
|
|
269
|
+
"z": "f028d32cd5f8196d",
|
|
270
|
+
"name": "",
|
|
271
|
+
"rules": [
|
|
272
|
+
{
|
|
273
|
+
"t": "set",
|
|
274
|
+
"p": "topic",
|
|
275
|
+
"pt": "msg",
|
|
276
|
+
"to": "action",
|
|
277
|
+
"tot": "str"
|
|
278
|
+
}
|
|
279
|
+
],
|
|
280
|
+
"action": "",
|
|
281
|
+
"property": "",
|
|
282
|
+
"from": "",
|
|
283
|
+
"to": "",
|
|
284
|
+
"reg": false,
|
|
285
|
+
"x": 675,
|
|
286
|
+
"y": 820,
|
|
287
|
+
"wires": [
|
|
288
|
+
[
|
|
289
|
+
"78f07ee4763a6b14"
|
|
290
|
+
]
|
|
291
|
+
],
|
|
292
|
+
"l": false
|
|
293
|
+
},
|
|
294
|
+
{
|
|
295
|
+
"id": "194985fca2779f3b",
|
|
296
|
+
"type": "change",
|
|
297
|
+
"z": "f028d32cd5f8196d",
|
|
298
|
+
"name": "",
|
|
299
|
+
"rules": [
|
|
300
|
+
{
|
|
301
|
+
"t": "set",
|
|
302
|
+
"p": "topic",
|
|
303
|
+
"pt": "msg",
|
|
304
|
+
"to": "event",
|
|
305
|
+
"tot": "str"
|
|
306
|
+
}
|
|
307
|
+
],
|
|
308
|
+
"action": "",
|
|
309
|
+
"property": "",
|
|
310
|
+
"from": "",
|
|
311
|
+
"to": "",
|
|
312
|
+
"reg": false,
|
|
313
|
+
"x": 675,
|
|
314
|
+
"y": 660,
|
|
315
|
+
"wires": [
|
|
316
|
+
[
|
|
317
|
+
"78f07ee4763a6b14"
|
|
318
|
+
]
|
|
319
|
+
],
|
|
320
|
+
"l": false
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
"id": "6b0c6c859f8180ff",
|
|
324
|
+
"type": "switch",
|
|
325
|
+
"z": "f028d32cd5f8196d",
|
|
326
|
+
"name": "",
|
|
327
|
+
"property": "topic",
|
|
328
|
+
"propertyType": "msg",
|
|
329
|
+
"rules": [
|
|
330
|
+
{
|
|
331
|
+
"t": "eq",
|
|
332
|
+
"v": "api",
|
|
333
|
+
"vt": "str"
|
|
334
|
+
}
|
|
335
|
+
],
|
|
336
|
+
"checkall": "true",
|
|
337
|
+
"repair": false,
|
|
338
|
+
"outputs": 1,
|
|
339
|
+
"x": 445,
|
|
340
|
+
"y": 700,
|
|
341
|
+
"wires": [
|
|
342
|
+
[
|
|
343
|
+
"80cbc1c2e93f49fa"
|
|
344
|
+
]
|
|
345
|
+
],
|
|
346
|
+
"l": false
|
|
347
|
+
},
|
|
348
|
+
{
|
|
349
|
+
"id": "cb6a81f143b93c08",
|
|
350
|
+
"type": "switch",
|
|
351
|
+
"z": "f028d32cd5f8196d",
|
|
352
|
+
"name": "",
|
|
353
|
+
"property": "topic",
|
|
354
|
+
"propertyType": "msg",
|
|
355
|
+
"rules": [
|
|
356
|
+
{
|
|
357
|
+
"t": "eq",
|
|
358
|
+
"v": "state",
|
|
359
|
+
"vt": "str"
|
|
360
|
+
}
|
|
361
|
+
],
|
|
362
|
+
"checkall": "true",
|
|
363
|
+
"repair": false,
|
|
364
|
+
"outputs": 1,
|
|
365
|
+
"x": 445,
|
|
366
|
+
"y": 740,
|
|
367
|
+
"wires": [
|
|
368
|
+
[
|
|
369
|
+
"388d419ff40adeae"
|
|
370
|
+
]
|
|
371
|
+
],
|
|
372
|
+
"l": false
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
"id": "a3de07378d809f30",
|
|
376
|
+
"type": "switch",
|
|
377
|
+
"z": "f028d32cd5f8196d",
|
|
378
|
+
"name": "",
|
|
379
|
+
"property": "topic",
|
|
380
|
+
"propertyType": "msg",
|
|
381
|
+
"rules": [
|
|
382
|
+
{
|
|
383
|
+
"t": "eq",
|
|
384
|
+
"v": "get_entities",
|
|
385
|
+
"vt": "str"
|
|
386
|
+
}
|
|
387
|
+
],
|
|
388
|
+
"checkall": "true",
|
|
389
|
+
"repair": false,
|
|
390
|
+
"outputs": 1,
|
|
391
|
+
"x": 445,
|
|
392
|
+
"y": 780,
|
|
393
|
+
"wires": [
|
|
394
|
+
[
|
|
395
|
+
"170d8627f4d745b0"
|
|
396
|
+
]
|
|
397
|
+
],
|
|
398
|
+
"l": false
|
|
399
|
+
},
|
|
400
|
+
{
|
|
401
|
+
"id": "e335241f272835a4",
|
|
402
|
+
"type": "switch",
|
|
403
|
+
"z": "f028d32cd5f8196d",
|
|
404
|
+
"name": "",
|
|
405
|
+
"property": "topic",
|
|
406
|
+
"propertyType": "msg",
|
|
407
|
+
"rules": [
|
|
408
|
+
{
|
|
409
|
+
"t": "eq",
|
|
410
|
+
"v": "action",
|
|
411
|
+
"vt": "str"
|
|
412
|
+
}
|
|
413
|
+
],
|
|
414
|
+
"checkall": "true",
|
|
415
|
+
"repair": false,
|
|
416
|
+
"outputs": 1,
|
|
417
|
+
"x": 445,
|
|
418
|
+
"y": 820,
|
|
419
|
+
"wires": [
|
|
420
|
+
[
|
|
421
|
+
"934e731820c17347"
|
|
422
|
+
]
|
|
423
|
+
],
|
|
424
|
+
"l": false
|
|
425
|
+
},
|
|
426
|
+
{
|
|
427
|
+
"id": "25925d7eacdca45f",
|
|
428
|
+
"type": "connections-node",
|
|
429
|
+
"z": "f028d32cd5f8196d",
|
|
430
|
+
"name": "HASS Stuff Connections",
|
|
431
|
+
"connectionsConfigNode": "ea84f05a857bde72",
|
|
432
|
+
"x": 570,
|
|
433
|
+
"y": 620,
|
|
434
|
+
"wires": [
|
|
435
|
+
[
|
|
436
|
+
"f6240b1dab1143e3"
|
|
437
|
+
]
|
|
438
|
+
]
|
|
439
|
+
},
|
|
440
|
+
{
|
|
441
|
+
"id": "5448ec0ff29169e2",
|
|
442
|
+
"type": "comment",
|
|
443
|
+
"z": "f028d32cd5f8196d",
|
|
444
|
+
"name": "Provide connections to HASS stuff",
|
|
445
|
+
"info": "",
|
|
446
|
+
"x": 560,
|
|
447
|
+
"y": 580,
|
|
448
|
+
"wires": []
|
|
449
|
+
},
|
|
450
|
+
{
|
|
451
|
+
"id": "f6240b1dab1143e3",
|
|
452
|
+
"type": "junction",
|
|
453
|
+
"z": "f028d32cd5f8196d",
|
|
454
|
+
"x": 380,
|
|
455
|
+
"y": 660,
|
|
456
|
+
"wires": [
|
|
457
|
+
[
|
|
458
|
+
"6b0c6c859f8180ff",
|
|
459
|
+
"e335241f272835a4",
|
|
460
|
+
"cb6a81f143b93c08",
|
|
461
|
+
"a3de07378d809f30"
|
|
462
|
+
]
|
|
463
|
+
]
|
|
464
|
+
},
|
|
465
|
+
{
|
|
466
|
+
"id": "78f07ee4763a6b14",
|
|
467
|
+
"type": "junction",
|
|
468
|
+
"z": "f028d32cd5f8196d",
|
|
469
|
+
"x": 750,
|
|
470
|
+
"y": 640,
|
|
471
|
+
"wires": [
|
|
472
|
+
[
|
|
473
|
+
"25925d7eacdca45f"
|
|
474
|
+
]
|
|
475
|
+
]
|
|
476
|
+
},
|
|
477
|
+
{
|
|
478
|
+
"id": "ea84f05a857bde72",
|
|
479
|
+
"type": "connections-config-node",
|
|
480
|
+
"name": "HASS Stuff Connections Config"
|
|
481
|
+
},
|
|
482
|
+
{
|
|
483
|
+
"id": "f947b66dc55502ce",
|
|
484
|
+
"type": "global-config",
|
|
485
|
+
"env": [],
|
|
486
|
+
"modules": {
|
|
487
|
+
"node-red-contrib-home-assistant-websocket": "0.80.3",
|
|
488
|
+
"node-red-contrib-hass-stuff": "0.0.1"
|
|
489
|
+
}
|
|
490
|
+
}
|
|
491
|
+
]
|
|
492
|
+
```
|
|
493
|
+
</details>
|
|
494
|
+
|
|
495
|
+
### Dependencies
|
|
496
|
+
It has the following dependencies
|
|
497
|
+
1. [HomeAssistant](https://flows.nodered.org/node/node-red-contrib-home-assistant-websocket)
|
|
498
|
+
|
|
499
|
+
## Light Control
|
|
500
|
+
|
|
501
|
+
A node that controls lights with general scenes that adjust throughout the day with sleep mode and other features.
|
|
502
|
+
|
|
503
|
+
### Features
|
|
504
|
+
* Adaptive scenes depending on what time of the day it is
|
|
505
|
+
* Adaptive scenes depending on luminance sensor *TODO*
|
|
506
|
+
* Night mode entity to force the adaptive scene to be in "night mode"
|
|
507
|
+
* Ability to turn off entities in night mode
|
|
508
|
+
|
|
509
|
+
### Dependencies
|
|
510
|
+
1. [Adaptive Lighting](https://github.com/basnijholt/adaptive-lighting)
|
|
511
|
+
2. [HASS Sun](https://www.home-assistant.io/integrations/sun/)
|
|
512
|
+
|
|
513
|
+
## PIR
|
|
514
|
+
*TODO*
|
|
515
|
+
|
|
516
|
+
A node that simplifies control of a PIR
|
|
517
|
+
|
|
518
|
+
### Features
|
|
519
|
+
* Entity to enable/disable the PIR
|
|
520
|
+
* Disable the PIR with luminance sensor value
|
|
521
|
+
* Set timeout before the PIR is triggered to be on/off
|
|
522
|
+
|
|
523
|
+
## Door Sensor
|
|
524
|
+
*TODO*
|
|
525
|
+
|
|
526
|
+
A node that simplifies control of a door sensor
|
|
527
|
+
|
|
528
|
+
### Features
|
|
529
|
+
* Entity to enable/disable the sensor
|
|
530
|
+
* Disable the sensor with luminance sensor value
|
|
531
|
+
* Set timeout before the PIR is triggered to be on/off
|
|
532
|
+
|
|
533
|
+
## Curtain Control
|
|
534
|
+
*TODO*
|
|
535
|
+
|
|
536
|
+
A node that provides control of a cover
|
|
537
|
+
|
|
538
|
+
### Features
|
|
539
|
+
* Adds buttons to set the curtain to open/half/closed
|
|
540
|
+
* Have the curtain close on luminance sensor value
|
|
541
|
+
* Have curtain be closed at certain hours
|
|
542
|
+
* Have curtain be half at certain hours
|
|
543
|
+
|
|
544
|
+
// MIMO //
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<script type="text/javascript" id="node-connections-config-node">
|
|
2
|
+
RED.nodes.registerType("connections-config-node", {
|
|
3
|
+
category: "config",
|
|
4
|
+
defaults: {
|
|
5
|
+
name: { value: "" }
|
|
6
|
+
},
|
|
7
|
+
label: function () {
|
|
8
|
+
return this.name || "Connections Node Config"
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
</script>
|
|
12
|
+
|
|
13
|
+
<script type="text/html" data-template-name="connections-config-node">
|
|
14
|
+
<div class="form-row">
|
|
15
|
+
<label for="node-config-input-name"><i class="fa fa-tag"></i> Name</label>
|
|
16
|
+
<input type="text" id="node-config-input-name" placeholder="Name">
|
|
17
|
+
</div>
|
|
18
|
+
</script>
|
|
19
|
+
|
|
20
|
+
<script type="text/html" data-help-name="connections-config-node">
|
|
21
|
+
</script>
|