2

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

4

2 回答 2

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"}
于 2014-09-06T21:21:50.517 回答
2

有两件事:

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

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

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

于 2013-08-22T08:26:02.423 回答