Hass 对象
在开发 Home Assistant 时,你会到处看到一个变量:hass。这是 Home Assistant 实例,它能让你访问系统的各个部分。
Hass 对象
Home Assistant 实例包含四个对象来帮助你与系统交互。
| 对象 | 描述 |
|---|---|
| hass | 这是 Home Assistant 的实例。允许启动、停止和排队新任务。查看可用方法。 |
| hass.config | 这是 Home Assistant 的核心配置,公开位置、温度偏好和配置目录路径。查看可用方法。 |
| hass.states | 这是状态机。它允许你设置状态并跟踪状态何时改变。查看可用方法。 |
| hass.bus | 这是事件总线。它允许你触发和监听事件。查看可用方法。 |
| hass.services | 这是服务注册表。它允许你注册服务。查看可用方法。 |
在哪里找到hass
根据你正在编写的内容,有不同的方法使hass对象可用。
组件:传递到setup(hass, config)或async_setup(hass, config)中。
平台:传递到setup_platform(hass, config, add_devices, discovery_info=None)或async_setup_platform(hass, config, async_add_devices, discovery_info=None)中。
实体:在平台内通过add_devices回调添加实体后,可作为self.hass使用。
总结
主要介绍了在 Home Assistant 开发中至关重要的hass对象。详细阐述了hass对象包含的四个子对象(hass、hass.config、hass.states、hass.bus、hass.services)及其各自的功能,这些子对象分别涉及系统操作、配置管理、状态处理、事件交互和服务注册等方面,为开发者与系统进行各种交互提供了接口。同时,明确说明了在不同开发场景(组件、平台、实体)下获取hass对象的方式,使开发者能够在相应的代码位置正确使用hass对象来实现所需功能,对深入理解和开发 Home Assistant 项目具有重要的指导意义。
2096

被折叠的 条评论
为什么被折叠?



