Javascript 如何创建;“场景”;与飞利浦顺化API

Javascript 如何创建;“场景”;与飞利浦顺化API,javascript,api,philips-hue,Javascript,Api,Philips Hue,有人知道飞利浦是如何在他们的色调api中实现“场景”的吗? 使用应用程序,您可以选择一幅图像,将每个灯泡移动到一个彩色像素,并更改亮度。所有灯具都可以有不同的颜色和亮度级别,所有内容都保存为“场景”。 然而,在检索“场景”信息时;您只获得场景中使用的灯光的阵列,没有给出详细信息。 由于您可以安排场景,飞利浦必须已将此信息存储在hub上。 API甚至没有描述“场景”。 我见过第三方应用程序可以创建场景,所以这并不完全是秘密…有两件事: 大多数使用场景的应用程序只会将场景存储在应用程序中,当您应用场

有人知道飞利浦是如何在他们的色调api中实现“场景”的吗? 使用应用程序,您可以选择一幅图像,将每个灯泡移动到一个彩色像素,并更改亮度。所有灯具都可以有不同的颜色和亮度级别,所有内容都保存为“场景”。 然而,在检索“场景”信息时;您只获得场景中使用的灯光的阵列,没有给出详细信息。 由于您可以安排场景,飞利浦必须已将此信息存储在hub上。 API甚至没有描述“场景”。 我见过第三方应用程序可以创建场景,所以这并不完全是秘密…

有两件事:

大多数使用场景的应用程序只会将场景存储在应用程序中,当您应用场景时,它只会将场景中每个灯的命令按顺序发送到桥上

桥上还有一个新的场景api,但据我所知,还没有文档记录。它允许您在灯本身上存储有限数量的场景,之后您只需向桥接器发送一个命令即可切换到此类场景,桥接器随后将向所有灯广播该场景


最后一个选项需要固件更新,并非所有的应用程序用户都已经安装了固件更新,因此现在只使用第一个选项可能更容易。

我意识到这是一篇老文章,但我在任何地方都找不到答案,所以我自己玩了一下并找到了答案。希望对某人有用

我没有足够的声誉来发布代码片段,但是你可以在谷歌上看到这篇文章中的说明+


首先你要写地址

</code>http://BRIDGE IP/api/APP ID/scenes/SCENENAME</code>
我认为场景名称不能包含空格。将场景中所需的灯光放置在身体中,如下所示

{"lights":["3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],"name":"SCENENAME"}
然后,使用PUT at为场景中的每个灯泡指定条件

<code>http://BRIDGE IP/api/APP ID/scenes/SCENENAME/lights/BULBNUMBER/state</code>
我发现你可以用任何你想要的格式指定值,不需要包括所有的值。我的身体看起来像这样

{"on":true,"bri":254,"xy":[0.1631,0.0206]}
然后,一旦为场景中的每个灯泡设置了值,就可以激活它

</code>http://BRIDGE IP/api/APP ID/groups/0/action</code>
用身体

{"scene":"SCENENAME"}

是杰德,他不会加密码。我对他的问题进行了编辑,因为它既有用又有效。。我是色相发展的新手。。。你能帮我吗