用于与hubitatapi交互的python库

pyhubitat的Python项目详细描述


皮胡比塔

imageimageimage

用于与Hubitat API交互的python库

亮点

这个软件包是新的,发展迅速。它目前只公开了Hubitat的“makerapi”,它仅限于设备的功能,而不是集线器。官方的makerapi文档可以在here找到。 暴露的终结点包括:

  • 获取所有设备(/Devices)
  • 获取包含完整详细信息的所有设备(/Devices/All)
  • 获取设备信息(/devices/[Device ID])
  • 获取设备事件历史记录(/Device/[Device ID]/events)
  • 获取设备命令(/Device/[Device ID]/Commands)
  • 获取设备功能(/Device/[Device ID]/Capabilities)
  • 发送设备命令(/Device/[Device ID]/[Command]/[Secondary Value])

安装

pip install pyhubitat

使用

初始化

from pyhubitat import MakerAPI
import pprint

HUB_TOKEN = os.environ['HUBITAT_TOKEN']
HUB_URL_EXAMPLE = 'https://192.168.1.39/apps/api/24'  # Follow the generic format of 'https://[hub-ip-address-or-hostname]/apps/api/[app-id]'

ph = MakerAPI(HUB_TOKEN, HUB_URL_EXAMPLE)

获取设备

^{pr2}$

发送命令

response1 = ph.send_command(5, "on")
response2 = ph.send_command(6, "setLevel", 50)

关于TLS/SSL的说明

hubitathub使用了一个自签名的https根证书,我认为没有合理的方法来添加自己的证书。尽管如此,仍然建议您在集线器上启用login auth并使用https API url,因为您的API令牌随每个请求一起发送。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java类。getResource和ClassLoader。getSystemResource:有没有理由选择其中一个而不是另一个?   在Java中以编程方式粘贴后恢复剪贴板   Java字符串到日期没有时间   JavaSpring注释:@Component起作用,@Repository不起作用   java“addScript”在HSQL中是否有最大记录计数?   java如何将值从JDialog框返回到父JFrame?   java我的模块库的用户有没有办法访问尚未导出的类?   java javac:未找到命令   java如何解决jsoup错误:无法找到请求目标的有效证书路径   类中的java作用域变量   Java中集合实现中的arraylist add()方法不起作用   java如何使用while循环和从用户接收输入来近似Pi?   java Spring安全CSRF培训模式   在安卓系统中,如何通过在警报框外单击来限制用户?