如何使用philips hue API创建“场景”

时间:2013-08-16 13:35:26

标签: javascript api philips-hue

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

2 个答案:

答案 0 :(得分:3)

我意识到这是一个很老的帖子,但我无法在任何地方找到答案,所以我玩了一下并自己弄明白了。希望对某人有用。

我没有足够的声誉来发布代码段,但您可以在Google +上查看此帖中的说明

https://plus.google.com/111036301775898522222/posts/iMt2hVdJvYo


首先你要解决

</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为场景中的每个灯泡指定条件
<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"}

答案 1 :(得分:2)

有两件事:

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

桥上还有一个新的场景api,但据我所知,还没有记录。它允许您在灯具本身上存储有限数量的场景,之后您可以通过向桥梁发送一个命令切换到这样的场景,然后将其广播到所有灯具。

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