node-red-contrib-huemagic 2.8.2 → 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 (165) hide show
  1. package/CHANGELOG.md +229 -0
  2. package/README.md +806 -729
  3. package/examples/Hue Bridge.json +189 -35
  4. package/examples/Hue Brightness.json +124 -14
  5. package/examples/Hue Buttons.json +88 -0
  6. package/examples/Hue Group.json +575 -63
  7. package/examples/Hue Light.json +805 -58
  8. package/examples/Hue Magic.json +69 -24
  9. package/examples/Hue Motion.json +110 -42
  10. package/examples/Hue Rules.json +105 -37
  11. package/examples/Hue Scene.json +145 -28
  12. package/examples/Hue Temperature.json +124 -14
  13. package/huemagic/animations/001-sunny.json +22 -22
  14. package/huemagic/animations/002-cloudy.json +46 -46
  15. package/huemagic/animations/003-nightsky.json +20 -20
  16. package/huemagic/animations/004-sunrise.json +54 -54
  17. package/huemagic/animations/005-sunset.json +46 -46
  18. package/huemagic/animations/006-fireplace.json +74 -74
  19. package/huemagic/animations/007-spring.json +31 -31
  20. package/huemagic/animations/008-autmn.json +23 -23
  21. package/huemagic/animations/009-winter.json +23 -23
  22. package/huemagic/animations/010-dirtyfog.json +23 -23
  23. package/huemagic/animations/011-lgbt.json +49 -50
  24. package/huemagic/animations/012-rasta.json +28 -29
  25. package/huemagic/animations/013-strobo.json +30 -31
  26. package/huemagic/animations/014-randomrainbow.json +30 -31
  27. package/huemagic/animations/015-sos.json +158 -159
  28. package/huemagic/animations/016-milkyway.json +83 -0
  29. package/huemagic/animations/017-beach.json +40 -0
  30. package/huemagic/animations/018-forest.json +43 -0
  31. package/huemagic/animations/019-christmas.json +30 -0
  32. package/huemagic/animations/020-superhero.json +56 -0
  33. package/huemagic/animations/021-neoncity.json +52 -0
  34. package/huemagic/animations/previews/001-sunny.gif +0 -0
  35. package/huemagic/animations/previews/002-cloudy.gif +0 -0
  36. package/huemagic/animations/previews/003-nightsky.gif +0 -0
  37. package/huemagic/animations/previews/004-sunrise.gif +0 -0
  38. package/huemagic/animations/previews/005-sunset.gif +0 -0
  39. package/huemagic/animations/previews/006-fireplace.gif +0 -0
  40. package/huemagic/animations/previews/007-spring.gif +0 -0
  41. package/huemagic/animations/previews/008-autmn.gif +0 -0
  42. package/huemagic/animations/previews/009-winter.gif +0 -0
  43. package/huemagic/animations/previews/010-dirtyfog.gif +0 -0
  44. package/huemagic/animations/previews/011-lgbt.gif +0 -0
  45. package/huemagic/animations/previews/012-rasta.gif +0 -0
  46. package/huemagic/animations/previews/013-strobo.gif +0 -0
  47. package/huemagic/animations/previews/014-randomrainbow.gif +0 -0
  48. package/huemagic/animations/previews/015-sos.gif +0 -0
  49. package/huemagic/animations/previews/016-milkyway.gif +0 -0
  50. package/huemagic/animations/previews/017-beach.gif +0 -0
  51. package/huemagic/animations/previews/018-forest.gif +0 -0
  52. package/huemagic/animations/previews/019-christmas.gif +0 -0
  53. package/huemagic/animations/previews/020-superhero.gif +0 -0
  54. package/huemagic/animations/previews/021-neoncity.gif +0 -0
  55. package/huemagic/hue-bridge-config.html +105 -61
  56. package/huemagic/hue-bridge-config.js +629 -319
  57. package/huemagic/hue-bridge.html +41 -21
  58. package/huemagic/hue-bridge.js +191 -398
  59. package/huemagic/hue-brightness.html +130 -49
  60. package/huemagic/hue-brightness.js +131 -35
  61. package/huemagic/hue-buttons.html +197 -0
  62. package/huemagic/hue-buttons.js +152 -0
  63. package/huemagic/hue-group.html +137 -60
  64. package/huemagic/hue-group.js +394 -367
  65. package/huemagic/hue-light.html +133 -59
  66. package/huemagic/hue-light.js +551 -336
  67. package/huemagic/hue-magic.html +91 -237
  68. package/huemagic/hue-magic.js +57 -27
  69. package/huemagic/hue-motion.html +128 -50
  70. package/huemagic/hue-motion.js +116 -87
  71. package/huemagic/hue-rules.html +121 -50
  72. package/huemagic/hue-rules.js +84 -64
  73. package/huemagic/hue-scene.html +96 -115
  74. package/huemagic/hue-scene.js +65 -96
  75. package/huemagic/hue-temperature.html +130 -49
  76. package/huemagic/hue-temperature.js +136 -32
  77. package/huemagic/icons/hue-bridge.png +0 -0
  78. package/huemagic/icons/hue-bridge.svg +3 -0
  79. package/huemagic/icons/hue-brightness.png +0 -0
  80. package/huemagic/icons/hue-brightness.svg +11 -0
  81. package/huemagic/icons/hue-buttons.png +0 -0
  82. package/huemagic/icons/hue-buttons.svg +4 -0
  83. package/huemagic/icons/hue-group.png +0 -0
  84. package/huemagic/icons/hue-group.svg +12 -0
  85. package/huemagic/icons/hue-light.png +0 -0
  86. package/huemagic/icons/hue-light.svg +3 -0
  87. package/huemagic/icons/hue-magic.png +0 -0
  88. package/huemagic/icons/hue-magic.svg +3 -0
  89. package/huemagic/icons/hue-motion.png +0 -0
  90. package/huemagic/icons/hue-motion.svg +9 -0
  91. package/huemagic/icons/hue-rules.png +0 -0
  92. package/huemagic/icons/hue-rules.svg +4 -0
  93. package/huemagic/icons/hue-scene.png +0 -0
  94. package/huemagic/icons/hue-scene.svg +5 -0
  95. package/huemagic/icons/hue-temperature.png +0 -0
  96. package/huemagic/icons/hue-temperature.svg +7 -0
  97. package/huemagic/locales/de/hue-bridge-config.html +17 -12
  98. package/huemagic/locales/de/hue-bridge-config.json +7 -5
  99. package/huemagic/locales/de/hue-bridge.html +64 -145
  100. package/huemagic/locales/de/hue-bridge.json +6 -17
  101. package/huemagic/locales/de/hue-brightness.html +52 -38
  102. package/huemagic/locales/de/hue-brightness.json +7 -2
  103. package/huemagic/locales/de/hue-buttons.html +58 -0
  104. package/huemagic/locales/de/hue-buttons.json +28 -0
  105. package/huemagic/locales/de/hue-group.html +46 -122
  106. package/huemagic/locales/de/hue-group.json +4 -2
  107. package/huemagic/locales/de/hue-light.html +68 -116
  108. package/huemagic/locales/de/hue-light.json +5 -2
  109. package/huemagic/locales/de/hue-magic.html +65 -57
  110. package/huemagic/locales/de/hue-magic.json +2 -1
  111. package/huemagic/locales/de/hue-motion.html +48 -44
  112. package/huemagic/locales/de/hue-motion.json +6 -3
  113. package/huemagic/locales/de/hue-rules.html +68 -73
  114. package/huemagic/locales/de/hue-rules.json +5 -2
  115. package/huemagic/locales/de/hue-scene.html +23 -32
  116. package/huemagic/locales/de/hue-scene.json +5 -2
  117. package/huemagic/locales/de/hue-temperature.html +53 -36
  118. package/huemagic/locales/de/hue-temperature.json +7 -2
  119. package/huemagic/locales/en-US/hue-bridge-config.html +17 -12
  120. package/huemagic/locales/en-US/hue-bridge-config.json +5 -3
  121. package/huemagic/locales/en-US/hue-bridge.html +64 -145
  122. package/huemagic/locales/en-US/hue-bridge.json +5 -16
  123. package/huemagic/locales/en-US/hue-brightness.html +52 -38
  124. package/huemagic/locales/en-US/hue-brightness.json +10 -3
  125. package/huemagic/locales/en-US/hue-buttons.html +58 -0
  126. package/huemagic/locales/en-US/hue-buttons.json +34 -0
  127. package/huemagic/locales/en-US/hue-group.html +46 -122
  128. package/huemagic/locales/en-US/hue-group.json +7 -3
  129. package/huemagic/locales/en-US/hue-light.html +68 -116
  130. package/huemagic/locales/en-US/hue-light.json +8 -3
  131. package/huemagic/locales/en-US/hue-magic.html +65 -57
  132. package/huemagic/locales/en-US/hue-magic.json +3 -1
  133. package/huemagic/locales/en-US/hue-motion.html +48 -44
  134. package/huemagic/locales/en-US/hue-motion.json +9 -4
  135. package/huemagic/locales/en-US/hue-rules.html +68 -73
  136. package/huemagic/locales/en-US/hue-rules.json +5 -2
  137. package/huemagic/locales/en-US/hue-scene.html +23 -32
  138. package/huemagic/locales/en-US/hue-scene.json +5 -2
  139. package/huemagic/locales/en-US/hue-temperature.html +53 -36
  140. package/huemagic/locales/en-US/hue-temperature.json +10 -3
  141. package/huemagic/utils/api.js +290 -0
  142. package/huemagic/utils/color.js +382 -0
  143. package/{utils → huemagic/utils}/merge.js +9 -6
  144. package/huemagic/utils/messages.js +447 -0
  145. package/package.json +12 -12
  146. package/examples/Hue Switch.json +0 -40
  147. package/examples/Hue Tap.json +0 -40
  148. package/huemagic/assets/anime.js +0 -8
  149. package/huemagic/hue-switch.html +0 -119
  150. package/huemagic/hue-switch.js +0 -113
  151. package/huemagic/hue-tap.html +0 -119
  152. package/huemagic/hue-tap.js +0 -74
  153. package/huemagic/icons/hue-button.png +0 -0
  154. package/huemagic/icons/hue-switch.png +0 -0
  155. package/huemagic/icons/hue-tap.png +0 -0
  156. package/huemagic/locales/de/hue-switch.html +0 -50
  157. package/huemagic/locales/de/hue-switch.json +0 -31
  158. package/huemagic/locales/de/hue-tap.html +0 -41
  159. package/huemagic/locales/de/hue-tap.json +0 -23
  160. package/huemagic/locales/en-US/hue-switch.html +0 -50
  161. package/huemagic/locales/en-US/hue-switch.json +0 -31
  162. package/huemagic/locales/en-US/hue-tap.html +0 -41
  163. package/huemagic/locales/en-US/hue-tap.json +0 -23
  164. package/utils/messages.js +0 -571
  165. package/utils/rgb.js +0 -188
@@ -1,146 +1,658 @@
1
1
  [
2
2
  {
3
- "id": "e3a959fd.39da6",
3
+ "id": "1a2adcb38abf1fae",
4
4
  "type": "tab",
5
5
  "label": "Hue Group (example)",
6
6
  "disabled": false,
7
7
  "info": "Example use of the Hue Group node"
8
8
  },
9
9
  {
10
- "id": "a1e00b08.a8bf38",
10
+ "id": "09d257e340f50cc4",
11
+ "type": "comment",
12
+ "z": "1a2adcb38abf1fae",
13
+ "name": "FIRST STEPS (double click me)",
14
+ "info": "Click on the \"Hue Group\" node and select both your bridge and a group from the list. If you have not yet set up a bridge, you will be asked to set one up before you can finish configuring the node.\n\nAs soon as the node is connected to your bridge and the group and you have deployed the changes in Node-RED, the node can receive and execute your commands. The \"Hue Group\" node also automatically outputs a message as soon as the status of the group on the bridge has been updated (on / off states). You will receive the updated status and all of its information in the message that is issued.\n\nIf you would like to receive more information about this node, the possible commands and output values, then click on it once in your flow and navigate to the Node-RED book icon (top right corner).",
15
+ "x": 150,
16
+ "y": 40,
17
+ "wires": [],
18
+ "icon": "font-awesome/fa-question-circle"
19
+ },
20
+ {
21
+ "id": "582491190441b474",
22
+ "type": "debug",
23
+ "z": "1a2adcb38abf1fae",
24
+ "name": "Information",
25
+ "active": true,
26
+ "tosidebar": true,
27
+ "console": false,
28
+ "tostatus": false,
29
+ "complete": "true",
30
+ "targetType": "full",
31
+ "statusVal": "",
32
+ "statusType": "auto",
33
+ "x": 770,
34
+ "y": 160,
35
+ "wires": [],
36
+ "icon": "font-awesome/fa-info-circle"
37
+ },
38
+ {
39
+ "id": "96b1ec749d4f581e",
40
+ "type": "comment",
41
+ "z": "1a2adcb38abf1fae",
42
+ "name": "Get the current status",
43
+ "info": "",
44
+ "x": 120,
45
+ "y": 120,
46
+ "wires": []
47
+ },
48
+ {
49
+ "id": "55d321791151829f",
11
50
  "type": "inject",
12
- "z": "e3a959fd.39da6",
13
- "name": "Turn on",
51
+ "z": "1a2adcb38abf1fae",
52
+ "name": "Status",
53
+ "props": [
54
+ {
55
+ "p": "payload"
56
+ }
57
+ ],
58
+ "repeat": "",
59
+ "crontab": "",
60
+ "once": false,
61
+ "onceDelay": 0.1,
14
62
  "topic": "",
15
- "payload": "true",
16
- "payloadType": "bool",
63
+ "payload": "{\"status\":true}",
64
+ "payloadType": "json",
65
+ "x": 110,
66
+ "y": 160,
67
+ "wires": [
68
+ [
69
+ "c4eb78aea62ca9ef"
70
+ ]
71
+ ],
72
+ "icon": "node-red/alert.svg"
73
+ },
74
+ {
75
+ "id": "c4eb78aea62ca9ef",
76
+ "type": "hue-group",
77
+ "z": "1a2adcb38abf1fae",
78
+ "skipevents": false,
79
+ "initevents": false,
80
+ "x": 590,
81
+ "y": 160,
82
+ "wires": [
83
+ [
84
+ "582491190441b474"
85
+ ]
86
+ ]
87
+ },
88
+ {
89
+ "id": "72f0eaebbcff66f4",
90
+ "type": "comment",
91
+ "z": "1a2adcb38abf1fae",
92
+ "name": "Turn on / off the group",
93
+ "info": "",
94
+ "x": 120,
95
+ "y": 220,
96
+ "wires": []
97
+ },
98
+ {
99
+ "id": "84a299579d0e83a7",
100
+ "type": "inject",
101
+ "z": "1a2adcb38abf1fae",
102
+ "name": "Turn on",
103
+ "props": [
104
+ {
105
+ "p": "payload"
106
+ }
107
+ ],
17
108
  "repeat": "",
18
109
  "crontab": "",
19
110
  "once": false,
20
111
  "onceDelay": 0.1,
21
- "x": 170,
22
- "y": 60,
112
+ "topic": "",
113
+ "payload": "true",
114
+ "payloadType": "bool",
115
+ "x": 110,
116
+ "y": 260,
23
117
  "wires": [
24
118
  [
25
- "4b7a3d1a.dbd78c"
119
+ "c4eb78aea62ca9ef"
26
120
  ]
27
121
  ],
28
- "icon": "font-awesome/fa-power-off"
122
+ "icon": "font-awesome/fa-circle"
29
123
  },
30
124
  {
31
- "id": "51d50cd7.34fafc",
125
+ "id": "0795d803305a0c71",
32
126
  "type": "inject",
33
- "z": "e3a959fd.39da6",
127
+ "z": "1a2adcb38abf1fae",
34
128
  "name": "Turn off",
129
+ "props": [
130
+ {
131
+ "p": "payload"
132
+ }
133
+ ],
134
+ "repeat": "",
135
+ "crontab": "",
136
+ "once": false,
137
+ "onceDelay": 0.1,
35
138
  "topic": "",
36
139
  "payload": "false",
37
140
  "payloadType": "bool",
141
+ "x": 110,
142
+ "y": 300,
143
+ "wires": [
144
+ [
145
+ "c4eb78aea62ca9ef"
146
+ ]
147
+ ],
148
+ "icon": "font-awesome/fa-circle-o"
149
+ },
150
+ {
151
+ "id": "45e5a4f07a6497b9",
152
+ "type": "comment",
153
+ "z": "1a2adcb38abf1fae",
154
+ "name": "Play effects on the group",
155
+ "info": "",
156
+ "x": 130,
157
+ "y": 580,
158
+ "wires": []
159
+ },
160
+ {
161
+ "id": "0f24eb95ee91f2a2",
162
+ "type": "inject",
163
+ "z": "1a2adcb38abf1fae",
164
+ "name": "Red alert for 3 seconds",
165
+ "props": [
166
+ {
167
+ "p": "payload"
168
+ }
169
+ ],
170
+ "repeat": "",
171
+ "crontab": "",
172
+ "once": false,
173
+ "onceDelay": 0.1,
174
+ "topic": "",
175
+ "payload": "{\"on\":true,\"alert\":3,\"color\":\"red\"}",
176
+ "payloadType": "json",
177
+ "x": 160,
178
+ "y": 620,
179
+ "wires": [
180
+ [
181
+ "c4eb78aea62ca9ef"
182
+ ]
183
+ ],
184
+ "icon": "font-awesome/fa-warning"
185
+ },
186
+ {
187
+ "id": "df076d875af8787e",
188
+ "type": "inject",
189
+ "z": "1a2adcb38abf1fae",
190
+ "name": "Loop though all colors for 5 seconds",
191
+ "props": [
192
+ {
193
+ "p": "payload"
194
+ }
195
+ ],
196
+ "repeat": "",
197
+ "crontab": "",
198
+ "once": false,
199
+ "onceDelay": 0.1,
200
+ "topic": "",
201
+ "payload": "{\"colorloop\":5,\"brightness\":100}",
202
+ "payloadType": "json",
203
+ "x": 200,
204
+ "y": 660,
205
+ "wires": [
206
+ [
207
+ "c4eb78aea62ca9ef"
208
+ ]
209
+ ],
210
+ "icon": "node-red-contrib-huemagic/hue-scene.svg"
211
+ },
212
+ {
213
+ "id": "09fedd5b3aec9d1f",
214
+ "type": "comment",
215
+ "z": "1a2adcb38abf1fae",
216
+ "name": "Change color of lights",
217
+ "info": "",
218
+ "x": 120,
219
+ "y": 720,
220
+ "wires": []
221
+ },
222
+ {
223
+ "id": "a3133df478c4fbbe",
224
+ "type": "inject",
225
+ "z": "1a2adcb38abf1fae",
226
+ "name": "Red color by name",
227
+ "props": [
228
+ {
229
+ "p": "payload"
230
+ }
231
+ ],
232
+ "repeat": "",
233
+ "crontab": "",
234
+ "once": false,
235
+ "onceDelay": 0.1,
236
+ "topic": "",
237
+ "payload": "{\"color\":\"red\"}",
238
+ "payloadType": "json",
239
+ "x": 150,
240
+ "y": 760,
241
+ "wires": [
242
+ [
243
+ "c4eb78aea62ca9ef"
244
+ ]
245
+ ],
246
+ "icon": "node-red-contrib-huemagic/hue-group.svg"
247
+ },
248
+ {
249
+ "id": "9d98982717553707",
250
+ "type": "inject",
251
+ "z": "1a2adcb38abf1fae",
252
+ "name": "Green color by HEX",
253
+ "props": [
254
+ {
255
+ "p": "payload"
256
+ }
257
+ ],
258
+ "repeat": "",
259
+ "crontab": "",
260
+ "once": false,
261
+ "onceDelay": 0.1,
262
+ "topic": "",
263
+ "payload": "{\"hex\":\"#00FF00\"}",
264
+ "payloadType": "json",
265
+ "x": 150,
266
+ "y": 800,
267
+ "wires": [
268
+ [
269
+ "c4eb78aea62ca9ef"
270
+ ]
271
+ ],
272
+ "icon": "node-red-contrib-huemagic/hue-group.svg"
273
+ },
274
+ {
275
+ "id": "e8b7d54674e8709a",
276
+ "type": "inject",
277
+ "z": "1a2adcb38abf1fae",
278
+ "name": "Blue color by RGB",
279
+ "props": [
280
+ {
281
+ "p": "payload"
282
+ }
283
+ ],
284
+ "repeat": "",
285
+ "crontab": "",
286
+ "once": false,
287
+ "onceDelay": 0.1,
288
+ "topic": "",
289
+ "payload": "{\"rgb\":[0,0,255]}",
290
+ "payloadType": "json",
291
+ "x": 150,
292
+ "y": 840,
293
+ "wires": [
294
+ [
295
+ "c4eb78aea62ca9ef"
296
+ ]
297
+ ],
298
+ "icon": "node-red-contrib-huemagic/hue-group.svg"
299
+ },
300
+ {
301
+ "id": "6f2c944547ed6400",
302
+ "type": "comment",
303
+ "z": "1a2adcb38abf1fae",
304
+ "name": "Change color temperature of lights",
305
+ "info": "",
306
+ "x": 160,
307
+ "y": 1020,
308
+ "wires": []
309
+ },
310
+ {
311
+ "id": "621920caa58c668b",
312
+ "type": "inject",
313
+ "z": "1a2adcb38abf1fae",
314
+ "name": "Cold color temperature",
315
+ "props": [
316
+ {
317
+ "p": "payload"
318
+ }
319
+ ],
320
+ "repeat": "",
321
+ "crontab": "",
322
+ "once": false,
323
+ "onceDelay": 0.1,
324
+ "topic": "",
325
+ "payload": "{\"colorTemp\":\"cold\",\"brightness\":100}",
326
+ "payloadType": "json",
327
+ "x": 160,
328
+ "y": 1100,
329
+ "wires": [
330
+ [
331
+ "c4eb78aea62ca9ef"
332
+ ]
333
+ ],
334
+ "icon": "node-red-contrib-huemagic/hue-temperature.svg"
335
+ },
336
+ {
337
+ "id": "2ffae67dbb7855fc",
338
+ "type": "inject",
339
+ "z": "1a2adcb38abf1fae",
340
+ "name": "Normal color temperature",
341
+ "props": [
342
+ {
343
+ "p": "payload"
344
+ }
345
+ ],
38
346
  "repeat": "",
39
347
  "crontab": "",
40
348
  "once": false,
41
349
  "onceDelay": 0.1,
350
+ "topic": "",
351
+ "payload": "{\"colorTemp\":\"normal\",\"brightness\":100}",
352
+ "payloadType": "json",
42
353
  "x": 170,
43
- "y": 120,
354
+ "y": 1140,
44
355
  "wires": [
45
356
  [
46
- "4b7a3d1a.dbd78c"
357
+ "c4eb78aea62ca9ef"
47
358
  ]
48
359
  ],
49
- "icon": "font-awesome/fa-power-off"
360
+ "icon": "node-red-contrib-huemagic/hue-temperature.svg"
50
361
  },
51
362
  {
52
- "id": "611f3a1f.a82d8c",
363
+ "id": "5f730d012fe0bcd2",
53
364
  "type": "inject",
54
- "z": "e3a959fd.39da6",
55
- "name": "Extended mode",
365
+ "z": "1a2adcb38abf1fae",
366
+ "name": "Warm color temperature",
367
+ "props": [
368
+ {
369
+ "p": "payload"
370
+ }
371
+ ],
372
+ "repeat": "",
373
+ "crontab": "",
374
+ "once": false,
375
+ "onceDelay": 0.1,
56
376
  "topic": "",
57
- "payload": "{\"on\":true,\"brightness\":100,\"color\":\"any\"}",
377
+ "payload": "{\"colorTemp\":\"warm\",\"brightness\":100}",
58
378
  "payloadType": "json",
379
+ "x": 170,
380
+ "y": 1180,
381
+ "wires": [
382
+ [
383
+ "c4eb78aea62ca9ef"
384
+ ]
385
+ ],
386
+ "icon": "node-red-contrib-huemagic/hue-temperature.svg"
387
+ },
388
+ {
389
+ "id": "e558ebbf9f15be64",
390
+ "type": "inject",
391
+ "z": "1a2adcb38abf1fae",
392
+ "name": "Hot color temperature",
393
+ "props": [
394
+ {
395
+ "p": "payload"
396
+ }
397
+ ],
59
398
  "repeat": "",
60
399
  "crontab": "",
61
400
  "once": false,
62
401
  "onceDelay": 0.1,
402
+ "topic": "",
403
+ "payload": "{\"colorTemp\":\"hot\",\"brightness\":100}",
404
+ "payloadType": "json",
405
+ "x": 160,
406
+ "y": 1220,
407
+ "wires": [
408
+ [
409
+ "c4eb78aea62ca9ef"
410
+ ]
411
+ ],
412
+ "icon": "node-red-contrib-huemagic/hue-temperature.svg"
413
+ },
414
+ {
415
+ "id": "3fcaaf5bafcd3503",
416
+ "type": "inject",
417
+ "z": "1a2adcb38abf1fae",
418
+ "name": "Normal temperature by exact value",
419
+ "props": [
420
+ {
421
+ "p": "payload"
422
+ }
423
+ ],
424
+ "repeat": "",
425
+ "crontab": "",
426
+ "once": false,
427
+ "onceDelay": 0.1,
428
+ "topic": "",
429
+ "payload": "{\"colorTemp\":240,\"brightness\":100}",
430
+ "payloadType": "json",
431
+ "x": 200,
432
+ "y": 1260,
433
+ "wires": [
434
+ [
435
+ "c4eb78aea62ca9ef"
436
+ ]
437
+ ],
438
+ "icon": "node-red-contrib-huemagic/hue-temperature.svg"
439
+ },
440
+ {
441
+ "id": "e5b739862db862f3",
442
+ "type": "inject",
443
+ "z": "1a2adcb38abf1fae",
444
+ "name": "Automatic (based on current time)",
445
+ "props": [
446
+ {
447
+ "p": "payload"
448
+ }
449
+ ],
450
+ "repeat": "",
451
+ "crontab": "",
452
+ "once": false,
453
+ "onceDelay": 0.1,
454
+ "topic": "",
455
+ "payload": "{\"colorTemp\":\"auto\",\"brightness\":100}",
456
+ "payloadType": "json",
457
+ "x": 200,
458
+ "y": 1060,
459
+ "wires": [
460
+ [
461
+ "c4eb78aea62ca9ef"
462
+ ]
463
+ ],
464
+ "icon": "node-red-contrib-huemagic/hue-temperature.svg"
465
+ },
466
+ {
467
+ "id": "ebdb41289862a489",
468
+ "type": "comment",
469
+ "z": "1a2adcb38abf1fae",
470
+ "name": "Change brightness of lights",
471
+ "info": "",
63
472
  "x": 140,
64
- "y": 180,
473
+ "y": 400,
474
+ "wires": []
475
+ },
476
+ {
477
+ "id": "42f7001095eb0cce",
478
+ "type": "inject",
479
+ "z": "1a2adcb38abf1fae",
480
+ "name": "Set to 100%",
481
+ "props": [
482
+ {
483
+ "p": "payload"
484
+ }
485
+ ],
486
+ "repeat": "",
487
+ "crontab": "",
488
+ "once": false,
489
+ "onceDelay": 0.1,
490
+ "topic": "",
491
+ "payload": "{\"brightness\":100}",
492
+ "payloadType": "json",
493
+ "x": 130,
494
+ "y": 480,
65
495
  "wires": [
66
496
  [
67
- "4b7a3d1a.dbd78c"
497
+ "c4eb78aea62ca9ef"
68
498
  ]
69
499
  ],
70
- "icon": "node-red/cog.svg"
500
+ "icon": "font-awesome/fa-sun-o"
71
501
  },
72
502
  {
73
- "id": "dcfb675.ff1c298",
503
+ "id": "f176fa2116b31f90",
74
504
  "type": "inject",
75
- "z": "e3a959fd.39da6",
76
- "name": "Toggle",
505
+ "z": "1a2adcb38abf1fae",
506
+ "name": "Set to 25%",
507
+ "props": [
508
+ {
509
+ "p": "payload"
510
+ }
511
+ ],
512
+ "repeat": "",
513
+ "crontab": "",
514
+ "once": false,
515
+ "onceDelay": 0.1,
77
516
  "topic": "",
78
- "payload": "{\"toggle\":true}",
517
+ "payload": "{\"brightness\":25}",
79
518
  "payloadType": "json",
519
+ "x": 130,
520
+ "y": 440,
521
+ "wires": [
522
+ [
523
+ "c4eb78aea62ca9ef"
524
+ ]
525
+ ],
526
+ "icon": "font-awesome/fa-moon-o"
527
+ },
528
+ {
529
+ "id": "87c92714633f9ced",
530
+ "type": "inject",
531
+ "z": "1a2adcb38abf1fae",
532
+ "name": "Toggle on/off",
533
+ "props": [
534
+ {
535
+ "p": "payload"
536
+ }
537
+ ],
80
538
  "repeat": "",
81
539
  "crontab": "",
82
540
  "once": false,
83
541
  "onceDelay": 0.1,
84
- "x": 170,
85
- "y": 240,
542
+ "topic": "",
543
+ "payload": "{\"toggle\":true}",
544
+ "payloadType": "json",
545
+ "x": 130,
546
+ "y": 340,
86
547
  "wires": [
87
548
  [
88
- "4b7a3d1a.dbd78c"
549
+ "c4eb78aea62ca9ef"
89
550
  ]
90
551
  ],
91
- "icon": "font-awesome/fa-power-off"
552
+ "icon": "font-awesome/fa-dot-circle-o"
92
553
  },
93
554
  {
94
- "id": "bb79406d.da721",
555
+ "id": "8998984516e22ab8",
95
556
  "type": "inject",
96
- "z": "e3a959fd.39da6",
97
- "name": "Play red alert",
557
+ "z": "1a2adcb38abf1fae",
558
+ "name": "Random color",
559
+ "props": [
560
+ {
561
+ "p": "payload"
562
+ }
563
+ ],
564
+ "repeat": "",
565
+ "crontab": "",
566
+ "once": false,
567
+ "onceDelay": 0.1,
98
568
  "topic": "",
99
- "payload": "{\"alert\":5,\"hex\":\"#ff0000\"}",
569
+ "payload": "{\"color\":\"random\"}",
100
570
  "payloadType": "json",
571
+ "x": 130,
572
+ "y": 960,
573
+ "wires": [
574
+ [
575
+ "c4eb78aea62ca9ef"
576
+ ]
577
+ ],
578
+ "icon": "node-red/swap.svg"
579
+ },
580
+ {
581
+ "id": "496fb8958d369e3a",
582
+ "type": "inject",
583
+ "z": "1a2adcb38abf1fae",
584
+ "name": "Node-RED theme color by XY",
585
+ "props": [
586
+ {
587
+ "p": "payload"
588
+ }
589
+ ],
101
590
  "repeat": "",
102
591
  "crontab": "",
103
592
  "once": false,
104
593
  "onceDelay": 0.1,
105
- "x": 150,
106
- "y": 300,
594
+ "topic": "",
595
+ "payload": "{\"xyColor\":{\"x\":0.7401,\"y\":0.2718}}",
596
+ "payloadType": "json",
597
+ "x": 180,
598
+ "y": 880,
107
599
  "wires": [
108
600
  [
109
- "4b7a3d1a.dbd78c"
601
+ "c4eb78aea62ca9ef"
110
602
  ]
111
603
  ],
112
- "icon": "node-red/alert.svg"
604
+ "icon": "node-red-contrib-huemagic/hue-group.svg"
113
605
  },
114
606
  {
115
- "id": "d481c97b.56f63",
116
- "type": "debug",
117
- "z": "e3a959fd.39da6",
118
- "name": "Information",
119
- "active": true,
120
- "tosidebar": true,
121
- "console": false,
122
- "tostatus": false,
123
- "complete": "payload",
124
- "targetType": "msg",
125
- "x": 590,
126
- "y": 180,
127
- "wires": [],
128
- "icon": "font-awesome/fa-info-circle"
607
+ "id": "fc02c26309f20b7b",
608
+ "type": "inject",
609
+ "z": "1a2adcb38abf1fae",
610
+ "name": "Dominant color from image url",
611
+ "props": [
612
+ {
613
+ "p": "payload"
614
+ }
615
+ ],
616
+ "repeat": "",
617
+ "crontab": "",
618
+ "once": false,
619
+ "onceDelay": 0.1,
620
+ "topic": "",
621
+ "payload": "{\"image\":\"https://user-images.githubusercontent.com/5302050/148616400-b7e7b35d-c779-4b6d-baff-c91ac2980d8f.jpg\"}",
622
+ "payloadType": "json",
623
+ "x": 180,
624
+ "y": 920,
625
+ "wires": [
626
+ [
627
+ "c4eb78aea62ca9ef"
628
+ ]
629
+ ],
630
+ "icon": "node-red-contrib-huemagic/hue-group.svg"
129
631
  },
130
632
  {
131
- "id": "4b7a3d1a.dbd78c",
132
- "type": "hue-group",
133
- "z": "e3a959fd.39da6",
134
- "name": "",
135
- "groupid": "",
136
- "colornamer": true,
137
- "skipevents": false,
138
- "x": 370,
139
- "y": 180,
633
+ "id": "a8e4ba95bb76913f",
634
+ "type": "inject",
635
+ "z": "1a2adcb38abf1fae",
636
+ "name": "Automatic brightness",
637
+ "props": [
638
+ {
639
+ "p": "payload"
640
+ }
641
+ ],
642
+ "repeat": "",
643
+ "crontab": "",
644
+ "once": false,
645
+ "onceDelay": 0.1,
646
+ "topic": "",
647
+ "payload": "{\"brightness\":\"auto\"}",
648
+ "payloadType": "json",
649
+ "x": 160,
650
+ "y": 520,
140
651
  "wires": [
141
652
  [
142
- "d481c97b.56f63"
653
+ "c4eb78aea62ca9ef"
143
654
  ]
144
- ]
655
+ ],
656
+ "icon": "node-red-contrib-huemagic/hue-magic.svg"
145
657
  }
146
658
  ]