Home Assistant 集成
文章平均质量分 81
Home Assistant 集成
道古云飞
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
二十七 Home Assistant 实体-气候(温度控制)
本文档介绍了 Home Assistant 中的气候实体(Climate Entity)相关内容。气候实体用于控制如空调、加湿器等设备的温度、湿度和风扇等功能。它具有一系列属性,包括当前湿度、温度、风扇模式、HVAC 动作和模式、预设模式、摆风模式、目标湿度和温度等,这些属性都有其特定的数据类型和默认值或要求,且属性获取数据应通过特定的update()或方法,而不是直接进行 I/O 操作。在模式方面,HVAC 模式有多种内置类型如关闭、制热、制冷等,且只能使用这些内置模式,如需其他功能可通过预设实现;原创 2025-01-07 16:58:45 · 1910 阅读 · 0 评论 -
二十六 Home Assistant 实体-事件
本文档介绍了Home Assistant中的事件实体(Event Entity)相关内容,包括其概念(用于捕获物理世界中的事件信号)、无状态特性(由Home Assistant管理状态,集成负责触发事件)、属性(如事件类型列表)、触发事件的方法(通过方法,且只能触发定义在中的事件类型)以及可用的设备类(如按钮、门铃、运动传感器等类型),为开发人员在Home Assistant中处理事件相关的集成提供了指导和规范。原创 2024-12-16 16:44:56 · 1024 阅读 · 0 评论 -
二十五 Home Assistant 实体-风扇
此文档介绍了Home Assistant中的风扇实体(Fan Entity)相关内容,包括其属性(如风扇方向、开关状态、摆动状态、速度百分比、预设模式等)、预设模式的规则、支持的功能(如改变方向、摆动、预设模式、设置速度等)以及相关方法(如设置方向、预设模式、速度百分比、打开/关闭/切换风扇、摆动风扇等),还提到了速度转换的方法,为开发人员在Home Assistant中集成风扇设备提供了详细的指导和规范。原创 2024-12-16 15:02:15 · 886 阅读 · 0 评论 -
二十四 Home Assistant 实体- 开关
如果要表示可以打开或关闭但无法控制的东西,例如一个能传输其状态但无法从Home Assistant打开或关闭的墙壁开关,二进制传感器是更好的选择。如果要表示没有状态的东西,例如门铃按钮,自定义事件或设备触发器是更好的选择。开关实体用于打开或关闭某些东西,例如继电器。提示:属性应始终仅从内存返回信息,不应进行I/O操作(如网络请求)。以下属性已弃用,新集成不应使用它们。应改为将它们作为传感器提供。它可能会映射到谷歌设备类型。如果未实现,将默认根据。属性检查调用哪个方法。原创 2024-12-12 08:54:06 · 1100 阅读 · 0 评论 -
二十三 Home Assistant 实体-按钮
按钮实体是一种可以向设备或服务触发事件/操作,但从Home Assistant的角度来看是无状态的实体。它可以类比为一个真实的瞬时开关、按钮或其他形式的无状态开关。按钮实体的唯一目的是在Home Assistant内部提供一个虚拟按钮。如果你想表示可以打开和关闭的东西(因此具有实际状态),则应该使用开关实体。如果你想在Home Assistant中集成一个真实的、物理的、无状态的按钮设备,可以通过触发自定义事件来实现。当用户按下按钮或调用按下按钮的服务时,Home Assistant会调用此方法。原创 2024-12-12 08:51:35 · 1440 阅读 · 0 评论 -
二十二 Home Assistant 实体-传感器
传感器实体传感器是一种只读实体,用于提供一些信息。信息具有一个值,并且可选地具有一个度量单位。从 homeassistant.components.sensor.SensorEntity 派生实体平台。属性提示:属性应始终仅从内存返回信息,不应进行I/O操作(如网络请求)。实现 update() 或 async_update() 来获取数据。名称类型默认值描述device_class字符串None传感器类型。last_resetdatetime.datetime原创 2024-12-12 08:47:54 · 2723 阅读 · 0 评论 -
二十一 Home Assistant 实体-盖子(车库门,窗帘)
此页面主要介绍了Home Assistant中的封面实体(Cover Entity)相关内容,包括属性(如当前位置、倾斜位置、开关状态等)、设备类别(如遮阳篷、百叶窗、窗帘等不同类型的设备)、状态(打开、关闭、正在打开、正在关闭)、支持的功能(如打开、关闭、设置位置、停止动作等)以及对应的方法(实现各种操作的函数定义),用于开发者在创建和控制与开口或盖子相关的设备时进行参考和使用。原创 2024-12-12 08:42:00 · 1035 阅读 · 0 评论 -
二十 Home Assistant 实体-灯
文档主要介绍了Home Assistant中的灯光实体相关内容。原创 2024-12-12 08:38:48 · 1346 阅读 · 0 评论 -
十九 Home Assistant 实体-报警控制面板
发送自定义旁路布防命令。# 实现以下其中一个方法。"""发送自定义旁路布防命令。""""""发送自定义旁路布防命令。"""该文档详细介绍了Home Assistant中的报警控制面板实体。首先说明了其功能是控制报警系统,实体需从特定类派生。接着阐述了属性方面的要求,包括状态、密码相关属性等,同时列出了各种可能的状态值、支持的功能枚举值和代码格式枚举值。原创 2024-12-12 08:38:38 · 495 阅读 · 0 评论 -
十八 Home Assistant 实体
文档主要围绕Home Assistant中的实体展开详细阐述。首先介绍了实体的基本实现,包括以开关实体为例说明其构建方式及属性设置,接着阐述了更新实体的两种策略(轮询和订阅更新)及其原理和操作要点,然后依次说明了实体的通用属性(如等)、注册表属性(如unique_id等)、高级属性(如等)和系统属性(如enabled)的定义、作用、默认值及使用注意事项,还涉及实体命名的规范和多种情况(如为True。原创 2024-12-11 11:25:05 · 1867 阅读 · 0 评论 -
十七 Home Assistant 大语言模型API
本文档主要介绍了Home Assistant与大语言模型交互的相关内容,包括内置辅助API及其功能,支持大语言模型API时在集成中的选项流程(涉及API选择的存储与展示给用户)和获取工具传递给大语言模型的操作,以及创建自己API的方法(需创建继承自API的类并实现方法),同时详细阐述了工具(Tool类的属性和方法)和API(API类及类的属性)相关的概念与要求,为开发者在Home Assistant中集成大语言模型功能提供了全面的指导和规范。原创 2024-12-11 11:24:53 · 1496 阅读 · 0 评论 -
十六 Home Assistant 蓝牙 Api
此文档主要介绍了Home Assistant中蓝牙API的相关功能及使用方法。涵盖了订阅蓝牙发现、获取共享扫描器实例、确定扫描器运行状态、订阅不可用回调、查明可用性超时、获取设备相关信息(如BLEDevice、最新服务信息、设备存在状态、所有已发现设备等)、触发设备重新发现、等待特定广告以及注册外部扫描器等操作的API使用方式,为开发者在Home Assistant中进行蓝牙设备相关的集成开发提供了详细的接口说明和操作指导,有助于开发者更高效地利用蓝牙功能与设备进行交互。原创 2024-12-11 11:24:44 · 1363 阅读 · 0 评论 -
十五 Home Assistant 蓝牙
该文档主要介绍了在Home Assistant中获取蓝牙数据的不同方法及相关协调器的使用。首先根据设备通知更新方式和主要功能选择合适的协调器,如或。然后详细说明了(包括Passive和Active两种类型)和(包括Passive和Active两种类型)的功能、使用示例及相关数据格式要求。这些协调器有助于减少创建蓝牙相关集成所需的代码量,并能有效地处理蓝牙设备的数据更新和连接管理等操作,使开发者能更方便地在Home Assistant中集成蓝牙设备并获取其数据。原创 2024-12-11 11:24:34 · 1997 阅读 · 0 评论 -
十四 Home Assistant 网络&发现
主要用例是查找没有已知固定IP地址的设备,或者用于可以动态添加和删除任意数量兼容可发现设备的集成。可以使用以下内置助手API获取发现的SSDP设备列表。SSDP集成提供了一个注册API,以便在发现与特定键值匹配的新设备时接收回调。将返回与SSDP ST匹配的所有发现设备的列表。以下示例返回网络上发现的每个Sonos播放器的发现信息列表。对于使用非内置发现方法且需要访问用户网络适配器配置的集成,应使用以下助手API。将返回与UPNP UDN匹配的所有发现设备的列表。在使用这些助手之前,请确保在集成的。原创 2024-12-11 11:24:23 · 1236 阅读 · 0 评论 -
十三 Home Assistant 事件的监听
你的集成可能需要在Home Assistant内部发生特定事件时采取行动。Home Assistant提供了事件助手来监听特定事件类型,并提供对事件总线的直接访问。如果已经有针对你需要监听的特定事件的助手,那么使用助手比直接监听事件总线更可取。除非集成是核心的一部分,否则这些事件很少直接被监听。通常有一个助手可以处理这些事件,在这种情况下,不应直接监听它们。有两个函数可用于创建监听器。两个函数都返回一个可调用对象,用于取消监听器。这些函数返回一个可调用对象,用于取消监听器。以下事件通常直接被监听。原创 2024-12-11 11:24:03 · 855 阅读 · 0 评论 -
十二 Home Assistant 事件的处理
一些集成代表具有事件的设备或服务,例如检测到运动或按下瞬时按钮时。集成可以通过在Home Assistant中将这些事件作为事件触发,使其对用户可用。可以根据有效负载附加到特定事件上,并将使事件对用户可访问。通过设备触发器,用户将能够查看设备的所有可用事件,并在其自动化中使用它。例如,你不希望有一个二进制传感器在事件发生时开启30秒。内部启用将集成事件转换为Home Assistant事件的逻辑。如果事件与特定设备/服务相关,则应正确归因。与事件相关的代码不应成为集成实体逻辑的一部分。原创 2024-12-11 11:23:53 · 774 阅读 · 0 评论 -
十一 Home Assistant 失败的处理
你的集成必须重试安装,以便在设备或服务重新上线时尽快恢复,而无需用户重新启动Home Assistant。Home Assistant将以警告日志级别记录一次重试,后续重试将以调试级别记录。Home Assistant将以警告日志级别记录一次重试,后续重试将以调试级别记录。如果你的集成支持发现功能,一旦你的设备或服务被发现,Home Assistant将自动重试。异常,Home Assistant将自动将配置项置于失败状态并启动重新认证流程。异常,Home Assistant将自动在稍后重试安装。原创 2024-12-11 11:23:43 · 1608 阅读 · 0 评论 -
十 Home Assistant获取数据
此页面主要介绍了在Home Assistant集成中获取数据的相关内容,包括推送与轮询两种方式获取数据的特点及使用场景,详细阐述了轮询API端点中为所有实体协调进行单一API轮询和为每个单独实体单独轮询的方法及示例代码,提及推送API端点如何使用数据更新协调器处理新数据,最后介绍了Home Assistant控制集成请求并行性的逻辑及相关参数设置。原创 2024-12-11 08:27:56 · 1777 阅读 · 0 评论 -
九 Home Assistant 集成平台& 多个平台继承
该页面主要介绍了Home Assistant中的集成平台相关内容,包括如何创建平台(需根据集成类型创建对应文件名的文件),提供了示例集成供参考,强调了集成不应直接与设备接口而应与第三方Python 3库交互,以及在准备好Python库并发布到PyPI后要实现相关Entity基类,还提及可在实体索引中查看集成的方法和属性等信息。多个平台集成时的相关操作,当有多个平台时需在__init__.py中集中连接逻辑;若集成通过configuration.yaml配置,配置入口点会改变且由集成负责设置平台;原创 2024-12-11 08:27:47 · 659 阅读 · 0 评论 -
八 Home Assistant 集成服务操作
此页面主要介绍了Home Assistant中的集成服务操作相关内容,包括如何注册一个简单的服务操作(如“hello world”示例),通过创建特定文件和在配置文件中添加条目来加载集成,使用描述服务操作(包括操作的各种属性、字段、分组、过滤以及图标等),实体服务操作的注册方式,以及操作的响应数据相关要求(包括如何返回响应数据、响应数据的适用场景以及如何在注册操作时表明对响应数据的支持方式等)。这些内容有助于开发者在Home Assistant中创建和定制自己的服务操作,以满足不同的自动化和控制需求。原创 2024-12-11 08:27:33 · 1719 阅读 · 0 评论 -
七 Home Assistant 通过 YAML 进行集成配置
本文主要讲述了Home Assistant中通过YAML进行集成配置的相关内容,包括configuration.yaml文件的作用、设备和服务相关集成配置的方式(通常通过配置流程,特殊情况除外)、Home Assistant对配置的预处理操作(涉及CONFIG_SCHEMA和PLATFORM_SCHEMA的验证及平台配置的收集),并通过示例展示了YAML配置文件如何被处理后传递给组件,为开发者理解和处理Home Assistant中的YAML配置提供了指导。原创 2024-12-11 08:27:22 · 1828 阅读 · 0 评论 -
六 Home Assistant 集成诊断
本文主要介绍了Home Assistant中集成诊断的相关内容,包括诊断信息的提供方式(针对配置项和设备项)、注意事项(确保不暴露敏感数据)以及如何使用async_redact_data函数来处理诊断输出中的敏感数据,并给出了配置项和设备项诊断的实现示例,为开发者在Home Assistant集成中实现诊断功能提供了指导,有助于提升用户排查问题的能力。原创 2024-12-11 08:27:13 · 367 阅读 · 0 评论 -
五 Home Assistant 选项流程
本文主要介绍了Home Assistant中配置项选项流程相关内容,包括集成如何支持选项(通过在配置流程处理程序中定义async_get_options_flow方法)、选项流程处理程序的工作方式(与配置流程处理程序类似但第一步固定为async_step_init)以及如何注册更新监听器来处理选项更新,为开发者在Home Assistant集成中实现选项流程功能提供了必要的指导。原创 2024-12-11 08:27:04 · 500 阅读 · 0 评论 -
四 Home Assistant 配置流程(Config Flow)
配置项使用数据流入口框架来定义它们的配置流程。配置流程需要在集成文件夹中的config_flow.py文件中定义,扩展homeassistant.config_entries.ConfigFlow并在继承ConfigFlow时传递一个域键(domain key)。# 它创建的条目的模式版本# 如果版本更改,Home Assistant将调用你的迁移方法。原创 2024-12-11 08:26:53 · 1526 阅读 · 0 评论 -
三 Home Assistant 集成清单(manifest.json)
在组件开发期间,针对要求的不同版本进行测试可能很有用。这将使用指定版本,并防止Home Assistant尝试用requirements中指定的版本覆盖它。要防止任何包被自动覆盖而不指定依赖项,可以使用全局–skip-pip标志启动Home Assistant。也可以使用公共git仓库安装要求。例如,在要求依赖项发布到PyPI之前测试对其的更改时,这可能很有用。<git ref>可以是任何git引用:分支、标签、提交哈希等。有关git支持的详细信息,请参阅PIP文档。自定义集成应仅包括Core。原创 2024-12-10 15:57:18 · 1188 阅读 · 0 评论 -
二 Home Assistant 集成文件结构 & 集成测试文件结构
该文档主要讲述了Home Assistant中集成的文件结构相关内容,包括集成的存储目录结构、各文件的作用(如light.py等)、数据更新协调器相关、Home Assistant查找集成的位置以及覆盖内置集成的注意事项等。原创 2024-12-10 15:56:58 · 1933 阅读 · 0 评论 -
一 Home Assistant 创建你的第一个集成
好了,现在是时候为你的集成编写第一段代码了。别担心,我们已经尽力让它尽可能简单。这将为你设置好构建一个能够通过用户界面进行设置的集成所需的一切。更全面的集成示例可以从我们的。脚手架集成包含的内容比最低要求多一些。最低要求是你定义一个包含集成域的。此外,还需要一个清单文件,至少包含以下键。方法,如果设置成功则返回一个布尔值。使用上述两个代码块之一创建一个文件。第二部分是它需要定义一个。原创 2024-12-10 15:56:43 · 638 阅读 · 0 评论
分享