python的sleepiq api
sleepyq的Python项目详细描述
sleepyq是一个从python访问sleepiq api的库。SleepIQ是SleepNumber beds的加载项。
要安装:
python3 -m pip install sleepyq
要开始使用库,以下是完整用法:
>>> from sleepyq import Sleepyq >>> from pprint import pprint >>> >>> client = Sleepyq('your-login', 'your-password') >>> client.login() >>> pprint(client.sleepers()) >>> pprint(client.beds()) >>> pprint(client.bed_family_status()) >>> client.set_lights(bedNumber, lightNumber, setting) >>> pprint(client.get_lights(bedNumber, lightNumber)) >>> client.preset(bedNumber, preset, side, slowSpeed=False) >>> client.set_sleepnumber(bedNumber, side, sleepnumber) >>> client.set_favsleepnumber(bedNumber, side, sleepnumber) >>> pprint(client.get_favsleepnumber(bedNumber)) >>> client.stop_motion(bedNumber, side) >>> client.stop_pump(bedNumber) >>> pprint(client.foundation_status(bedNumber)) >>> pprint(client.foundation_system(bedNumber)) >>> pprint(client.foundation_features(bedNumber))
这个api没有文档记录,所以这个库不会尝试将api中的数据构造成对象。
开发说明
sleepIQAPI是announced at CES 2016,但是还没有任何公共文档。
https://sleepiq.sleepnumber.com似乎在内部使用sleepiq api,这里的方法是基于观察chrome开发工具和通过代理运行android应用程序来编写的。在https://github.com/erichelgeson/sleepiq(从那时起api已经改变)和https://github.com/natecj/sleepiq-php
第一个请求是登录。这将返回一个密钥(k),该密钥需要作为参数用于后续请求。后续请求也需要成为同一“会话”的一部分,因为这些调用希望设置一些cookie。
待办事项
- 非200代码的错误检查响应,或以json形式返回的错误
- 更多了解API。还有一些API调用,比如更新配置文件,修改前一天晚上的睡眠,但是它们对于自动化来说似乎没有那么直接的用处。