ssapiel001 发表于 2022-10-9 19:55:44

Home Assistant 说明书/HomeKit页汉化

本帖最后由 ssapiel001 于 2022-10-19 02:02 编辑

https://www.home-assistant.io/integrations/homekit
HomeKit HomeKit 集成允许您在 Apple HomeKit 中使用 Home Assistant 中的entity,也就是把Home Assistant 的entity接入Apple HomeKit App内。因此可以通过 Apple 的 家庭 App和 Siri 控制它们;就算这些设备本身并不支持 HomeKit;请确保您已阅读下面列出的注意事项,以免以后遇到麻烦。但是,如果您确实遇到问题,请查看下文的 故障排除 部分。
如果您想使用Home Assistant 控制仅限 HomeKit 的设备,请查看 HomeKit控制器 集成(单独的页),它提供了将支持 HomeKit 的设备拉入 Home Assistant 的可能性。

配置可以通过用户界面使用这个 My *旁边的*字将 HomeKit 添加到您的 Home Assistant 实例中(图片好像没法插链接进去)
https://my.home-assistant.io/badges/config_flow_start.svg(我是链接)
HomeKit 可以被 Home Assistant 自动发现。如果找到一个实例,它将显示为“已发现”,您可以选择立即设置它。

手动配置步骤如果没有自动发现,请不要担心!您可以设置手动集成条目:·      浏览到您的Home Assistant实例。·      在侧边栏中点击设置。·      从配置菜单中选择:设备和服务。·      在右下角,单击 添加集成按钮。·      从列表中搜索并选择“HomeKit”。·      按照屏幕上的说明完成设置。

手动配置如果您想对entity发布到 HomeKit 的方式进行特定更改,覆盖HomeKit 集成用于与您的网络通信的 IP 地址或更改HomeKit 用于向网络宣传自己的 IP 地址,那么你将需要使用configuration.yaml文件中的一个条目来配置HomeKit集成。。这是一个看起来如何的示例条目:# Example configuration.yaml entry configuring HomeKit
homekit:
- filter:
      include_domains:
      - alarm_control_panel
      - light
      - media_player
      include_entity_globs:
      - binary_sensor.*_occupancy
      include_entities:
      - binary_sensor.living_room_motion
    entity_config:
      alarm_control_panel.home:
      code: 1234
      binary_sensor.living_room_motion:
      linked_battery_sensor: sensor.living_room_motion_battery
      low_battery_threshold: 31
      light.kitchen_table:
      name: Kitchen Table Light
      lock.front_door:
      code: 1234
      media_player.living_room:
      feature_list:
          - feature: on_off
          - feature: play_pause
          - feature: play_stop
          - feature: toggle_mute
      switch.bedroom_outlet:
      type: outlet
      camera.back_porch:
      support_audio: True
- name: HASS Bridge 2
    port: 21065
    filter:
      include_domains:
      - light
配置变量 正在寻找您的配置文件?
HomeKit 映射 必填HomeKit配置。port 整数(可选,默认:21063) HomeKit 扩展的端口。如果您要添加多个实例,则它们需要具有不同的端口值。name 字符串(可选) 需要在同一本地网络上使用集成的每个 Home Assistant 实例都是唯一的。之间3和25字符。允许使用字母数字和空格。默认:Home Assistant Bridgeip_address 字符串(可选) 本地网络 IP 地址。仅当 Home Assistant 的默认设置不起作用时才需要。mode 字符串(可选,默认值 bridge) HomeKit 可以通过桥接暴露entity,或者将单个entity作为电视媒体播放器所需的附件。(配件模式)advertise_ip字符串(可选) 如果您需要覆盖用于 mDNS 通告的 IP 地址。(例如,在 Docker 中使用网络隔离并与avahi-daemon reflector模式中的 mDNS 转发器一起使用)filter 映射(可选)HomeKit 中包含/排除的entity的过滤器。(配置过滤器)    include_domains 列表(可选)     要包含的domain。    include_entity_globs 列表(可选)
    包括与列出的模式匹配的所有entity(例如,binary_sensor.*_motion)。    include_entities 列表(可选)
    要包括的entity。    exclude_domains 列表(可选)
    要排除的domain。    exclude_entity_globs 列表(可选)
    排除与列出的模式匹配的所有entity(例如,sensor.*_motion)。    exclude_entities 列表(可选)
    要排除的entity。entity_config 映射(可选)
特定entity的配置。所有从属键都是domain的相应entity ID,例如alarm_control_panel.alarm.    `ENTITY_ID`映射(可选)
    特定entity的附加选项。      name 字符串(可选)
      要在 HomeKit 中显示的entity的名称。HomeKit 将在第一次运行时缓存名称,因此必须重置配件才能使任何更改生效。      linked_battery_sensor 字符串(可选)
      entity_id用作sensor配件电池的entity的。HomeKit 将在第一次运行时缓存配件的功能集,因此必须重置设备才能使任何更改生效。      linked_doorbell_sensor 字符串(可选)
      entity_id用作binary_sensor摄像头配件的门铃传感器以启用门铃通知的entity。HomeKit 将在第一次运行时缓存配件的功能集,因此必须重置设备才能使任何更改生效。      linked_humidity_sensor 字符串(可选)
      用作加湿器/除湿器附件的湿度传感器的entity_identity。sensorHomeKit 将在第一次运行时缓存配件的功能集,因此必须重置设备才能使任何更改生效。      linked_motion_sensor 字符串(可选)
      entity_id用作binary_sensor相机配件的运动传感器以启用运动通知的entity。HomeKit 将在第一次运行时缓存配件的功能集,因此必须重置设备才能使任何更改生效。      linked_obstruction_sensor 字符串(可选)
      entity_id用作binary_sensor车库门(盖)附件的障碍物传感器以启用障碍物状态跟踪的entity。HomeKit 将在第一次运行时缓存配件的功能集,因此必须重置设备才能使任何更改生效。      low_battery_threshold 整数(可选,默认值:20)
      配件开始报告电池电量不足之前的最低电池电量。      code 字符串(可选)      arm / disarm对警报或lock / unlock锁进行编码。仅适用于alarm_control_panel或lockentity。      默认:<No code>      feature_list 列表(可选)
      仅适用于media_player entity。可以给某个给定的entity添加的功能词典列表。类似于平台模式。      feature 字符串 必需
      要添加到entity表示的特征的名称。有效特征是on_off、play_pause、play_stop和toggle_mute。media_player entity必须支持该功能才有效。      type 字符串(可选,默认值switch:)
      仅适用于开关实体(switch entity)。要在 HomeKit 中创建的配件类型。有效类型为faucet、outlet、shower、sprinkler、switch和valve。      HomeKit 将在第一次运行时缓存类型,因此必须重置设备才能使任何更改生效。      stream_count 整数(可选,默认值:3)
      仅适用于相机实体(camera entity)理解成摄像头也一样。相机可以支持的同时视频流的数量。      stream_address 字符串(可选)
      仅适用于camera entity。流式传输到 RTP 客户端时使用的源 IP 地址。如果您的 Home Assistant 主机有多个接口,则可能需要选择特定的 IP。      默认:来自Home Assistant的本地 IP      stream_source 字符串(可选)
      仅适用于camera entity。用作流媒体源的 URL、文件或其他有效的 FFmpeg 输入指令;而不是默认的相机源。      对于本身不支持流式传输 (MJPEG) 的相机entity是必需的。如果在流媒体源中没有找到-i,它将被预置,以构建FFmpeg命令。      默认:来自相机entity的stream源地址      support_audio 布尔值boolean(可选,默认值:False)
      仅适用于camera entity。相机是否支持音频。除非此标志设置为True,否则默认禁用音频。      max_width 整数(可选,默认值:1920)
      仅适用于camera entity。相机支持的视频最大宽度,单位pixel。在生成串流视频分辨率时使用。      max_height 整数(可选,默认值:1080)
      仅适用于cameraentity。相机支持的视频最大高度。单位pixel。在生成串流视频分辨率时使用。      max_fps 整数(可选,默认值:30)
      仅适用于camera entity。相机支持的最大 FPS(每秒帧数)。在生成串流视频分辨率时使用。      audio_map 字符串(可选,默认值 0:v:0)
      仅适用于camera entity。仅音频流的FFmpeg流选择映射。默认选择输入流中的第一个音频流。      如果您的输入流有多个音频流,则可能需要进行调整。      video_map 字符串(可选,默认值0:v:0)
      仅适用于camera entity。仅视频流的FFmpeg流选择映射。默认选择输入流中的第一个视频流。      如果您的输入流有多个视频流,则可能需要对此进行调整。      audio_packet_size 整数(可选,默认值:188)
      仅适用于camera entity。用于将音频流式传输到 HomeKit 客户端的 RTP 数据包大小。      video_packet_size 整数(可选,默认值:1316)
      仅适用于camera entity。用于将视频流式传输到 HomeKit 客户端的 RTP 数据包大小。      video_codec 字符串(可选,默认:libx264)
      仅适用于camera entity。用于转码的 FFmpeg 视频编解码器。当视频源已使用(MPEG4)copy编码时,该选项可减少 CPU 负载。      该选项仅适用于自定义 FFmpeg 构建并在 Raspberry Pi 上启用 GPU 硬件加速。H264h264_omx      audio_codec 字符串(可选,默认:libopus)
      仅适用于camera entity。用于转码的 FFmpeg 音频编解码器。copy当音频源已经用libopus.device 列表(可选) 包括所有匹配deviceID 的设备触发器。建议通过选项在 UI 中进行配置。
设置
要在 Home Assistant 中启用 HomeKit 集成,请将以下内容添加到您的confirugation.yaml中:# Example for HomeKit setup
homekit:
Home Assistant 启动后,entity(取决于过滤器)如果受支持,就会暴露给 HomeKit 。要添加它们:

[*]打开Home   Assistant界面。一张新卡片将显示配对二维码,pin code如下例所示。注意:如果未显示   PIN 码,请检查 Home Assistant UI 左下角的“通知”(铃铛图标)。
[*]打开 Apple 家庭 App。
[*]单击 添加配件,然后扫描二维码或选择 没有代码或者无法扫描?并选择 Home Assistant Bridge。
[*]未经授权的配件 单击确认添加 继续添加。
[*]输入 PIN 代码(如果您扫描了二维码,请跳过此步骤)。
[*]单击右上角的 继续 和 最后按设置进行操作 完成。
[*]Home Assistant Bridge 附件现在应该在 家庭 App 中列出。
设置完成后,您应该能够通过Apple 的 Home 和Siri 控制 Home Assistant 集成。https://www.home-assistant.io/images/screenshots/homekit_pairing_example.png移动Home Assistant安装如果您想在移动到新的Home Assistant 设备或安装时保留HomeKit 配对,除了复制配置文件之外,您还需要复制.storage/homekit.*配置目录中的文件。请记住,该文件夹通常默认隐藏,具体取决于您的操作系统。在复制它之前,请确保首先完全停止旧的和新的Home Assistant 实例,否则它将无法工作。
注意事项

配件编号
目前,此集成使用entity_id来生成唯一accessory id (aid)的HomeKit. aid用于识别设备并保存为其所做的所有配置。但是,这意味着如果您决定更改entity_id没有 的unique_id,则在应用程序中为此配件所做的所有配置Home都将丢失。
设备限制
HomeKit 附件协议规范仅允许aid每个桥最多 150 个独特的附件( )。配置过滤器时请注意这一点。如果您计划超过150 个设备的限制,则可以创建多个网桥。如果您需要某些entity的特定配置,请entity_config确保将它们添加到通过配置的网桥中YAML。
多个 HomeKit 实例
如果您通过 UI 创建 HomeKit 集成(即Settings -> Devices& Services),则必须仅通过 UI 进行配置。虽然 UI 目前仅提供有限的配置选项,但任何通过文件配置在 UI 中创建的 HomeKit 实例的尝试configuration.yaml都将导致另一个 HomeKit 实例在不同的端口上运行。建议仅编辑在UI 中创建的 UI 中的HomeKit 实例,同样,仅在 YAML 中编辑在YAML 中创建的 HomeKit 实例。
配件模式
当向 HomeKit 公开相机、基于 Activity 的遥控器(remote支持 Activity)、Lock 或电视媒体播放器(media_player具有设备类tv)时,mode必须设置为accessory,并且相关include过滤器应设置为仅包含单个entity。
在 UI 中快速添加所有附件模式entity:

[*]通过 UI 创建一个新 bridge(在你的ha的设置->设备及服务)。
[*]选择media_player、remote、lock和camera类。
[*]正常完成流程。
[*]将为必须在附件模式下运行的每个entity创建额外的 HomeKit 条目,这些条目将为每个还没有的entity创建。
[*]如果您已经为非附件模式entity创建了另一个 HomeKit 桥,则可以安全地删除新桥。
[*]配对对应的bridge或配件。

要在附件模式下添加单个entity:

[*]通过 UI 创建一个新桥(即Settings >> Devices & Services)
[*]在配对网桥之前,请访问网桥的选项。
[*]将模式更改为accessory
[*]选择entity。
[*]完成选项流程
[*]配对配件。

配置filter
默认情况下,除了分类entity(配置、诊断和系统entity)之外的所有entity都包括在内。要限制哪些entity暴露给HomeKit,您可以使用该filter参数。请记住,只能添加受支持的组件。# Example filter to include specified domains and exclude specified entities
homekit:
filter:
    include_domains:
      - alarm_control_panel
      - light
    include_entity_globs:
      - binary_sensor.*_occupancy
    exclude_entities:
      - light.kitchen_lightfilter效果如下:1.啥也不写
    包括所有entity
2.只写了includes    entity中列出的entity包括:包括
    entity匹配domain包括:包括
    entity匹配 glob 包括:包括
    否则:排除

3.只写了excludes    exclude      中列出的entity:排除
    entity匹配domain排除:排除
    entity匹配 glob 排除:      排除
    否则:包括
4.写了Domain   和/或   glob包含(可能也有排除)
    entity中列出的entity包括:包括
    entity中列出的entity排除:排除
    entity匹配 glob 包括:包括
    entity匹配 glob 排除:      排除
    entity匹配domain包括:包括
    否则:排除
5.写了domain和/或   glob 排除(不包括domain和/或   glob)
    entity中列出的entity包括:包括
    exclude      中列出的entity:排除
    entity匹配 glob exclude: 排除
    entity匹配domain排除:排除
    否则:包括
6.没有domain和/或全局包含或排除
    entity中列出的entity包括:包括
    否则:排除

以下字符可用于entityglob:*- 星号代表零个、一个或多个字符 ?- 问号代表单个字符不包括分类entity(配置、诊断和系统entity),除非它们在包含模式下被UI 显式匹配include_entity_globs或include_entities选择。
Docker 网络隔离
即使在启用了网络隔离(例如,不使用主机网络)的临时 Docker 容器内,该advertise_ip选项也可用于运行此集成。您可能需要在其网络配置中设置Home Assistant 使用的默认网络接口。
要使用advertise_ip,请将选项添加到您的homekit配置中:homekit:
advertise_ip: "你的docker宿主机的静态IP地址"重新启动您的HomeAssistant实例。此功能需要在您的Docker 主机上运行 mDNS 转发器,例如,avahi-daemon在reflector模式下。
防火墙
如果您在 Home Assistant 系统上配置了防火墙,请确保打开以下端口:

[*]UDP:5353
[*]TCP:21063(或port在集成设置中配置/使用)。

支持的组件当前支持以下集成:
   零件      类型名称      描述   
   alarm_control_panel      安全系统      所有安全系统。   
   automation / input_boolean / remote / scene / script / vacuum      开关      全部表示为开关。   
   input_select / select      开关      表示为带有每个选项按钮的电源板。   
   binary_sensor      传感器      支持co2, door, garage_door, gas, moisture, motion, occupancy,opening和smoke设备类。其他一切都默认为occupancy设备类。   
   camera      相机/摄像头      所有摄像头设备。目前不支持 HomeKit 安全视频。    
   climate      恒温器      所有“天气”设备。   
   cover      车库开门器   支持所有open和close,和有garage或者gate作为他们的device_class.   
   cover      窗帘      支持的所有窗帘的set_cover_position   
   cover      窗帘      所有通过数值映射支持open_cover和close_cover的窗帘开合百分比。(open -> >=50; close -> <50)   
   cover      窗帘      所有支持open_cover,stop_cover和close_cover通过值映射的内容。( open-> >70; close-> <30; stop-> 之间的每个值)   
   device_tracker / person      设备追踪器      支持occupancy设备类。   
   fan      风扇      支持on / off,direction,oscillating。   
   fan      风扇      支持speed并speed_list通过值映射的所有风扇:speed_list假定包含按升序排列的值。为了匹配 HomeKit 的风扇速度概念,HomeKit 的数值范围映射到speed_list的第一个条目speed_list应该=off(例如:speed_list= [ off, low, high]; off-> <= 33; low->33和66; high- > 之间> 66)   
   humidifier      加湿器/除湿机      加湿器和除湿器设备。   
   light      灯/光源      支持on / off,brightness 和 rgb_color   
   lock      门锁      支持 lock / unlock.   
   media_player      媒体播放器      表示为一系列开关,它们控制on   / off、play / pause、play / stop或mute取决于列在entity_config中的supported_features实体和mode参数。   
   media_player      电视媒体播放器      所有device_class是tv的媒体播放器。 在 HomeKit   中表示为电视和遥控器配件,取决于entity的supported_features,可以控制实体on   / off、play / pause、select source或volume increase / decrease需要 iOS 12.2/macOS   10.14.4 或更高版本。   
   sensor      温度传感器      所有用°C或°F表示unit_of_measurement或者temperature的传感器类别device_class。   
   sensor      湿度传感器      所有传感器都具有百分比“%”作为他们的unit_of_measurement和humidity的传感器类别device_class.   
   sensor      空气质量传感器      所有用pm25作为entity_id和device_class的传感器。
   sensor      一氧化碳传感器      所有用co作为device_class的传感器。   
   sensor      二氧化碳传感器   所有用co2作为entity_id和device_class的传感器。
   sensor      光传感器   所有用lm(流明)或lx(lux光度值)作为unit_of_measurement和device_class的传感器。

   Switch      开关      默认情况下表示为开关。但可以使用type在entity_config中更改。   
   water_heater      热水器      所有water_heater设备。   
   device_automation      设备自动化配件      所有支持设备自动化的设备。   

设备触发器通过访问Settings >> Devices & Services中的桥接选项,可以将支持触发器的设备添加到桥接中。要使用此功能,必须在您的用户配置文件中启用高级模式。桥接设备触发器表示为无状态可编程开关上的单个按钮。这允许 HomeKit 自动化在设备触发器触发时运行。由于Apple Home 应用程序目前只显示按钮的编号而不显示名称,因此用户可能会发现在应用程序Eve for HomeKit中识别按钮的名称更容易。
iOS 内置电视遥控器小组件(可以在快捷访问列表中添加)TelevisionMediaPlayer显示为可在控制中心的 iOS 内置电视遥控器 小部件中控制的实体。supported_features 根据实体的不同,播放、暂停、音量增大和音量减小应该是开箱即用的。但是,如果您的电视可以通过media_player实体之外的其他方式进行控制(例如,对 IR 发射器的服务调用),则可以创建自动化来利用这些事件。当在控制中心远程小部件中按下一个键时,homekit_tv_remote_key_pressed将触发该事件。密钥名称将在key_name字段中的事件数据中可用。例子:automation:
trigger:
    platform: event
    event_type: homekit_tv_remote_key_pressed
    event_data:
      key_name: arrow_right

# 通过boardlink红外发射器发送“右箭头”指令
action:
    service: broadlink.send
    host: 192.168.1.55
    packet: XXXXXXXX
活动/事件
HomeKit 集成发出 homekit_state_change 事件。这些事件可以在自动化中使用,以了解何时从 HomeKit 更改实体的状态。# 处理HomeKit事件的例子
automation:
trigger:
    - platform: event
      event_type: homekit_state_change
      event_data:
      entity_id: cover.garage_door
      service: open_cover
action:
    - service: persistent_notification.create
      data:
      message: "车库门已通过HomeKit开启"
故障排除

所有或部分设备间歇性无响应HomeKit 严重依赖您的家庭Hub来跟踪蓝牙设备。此外,每个家庭集线器都必须跟踪您桥接的每个 HomeKit 配件。如果您有许多配件,尤其是相机或蓝牙设备,请考虑在较旧的家庭Hub上禁用 HomeKit。
以下测试是使用 Home Assistant 2021.6 (HAP-python 3.5.0) 和 iOS/tvOS 14.6 进行的

在使用 400 种配件进行测试时,以下家用集线器显示出强劲的结果:

[*]HomePod
[*]HomePod Mini
[*]Apple TV 4k Gen 2(使用以太网而不是 Wi-Fi 时的最佳效果)

在使用 300 种配件进行测试时,以下家用集线器显示出强劲的结果:

[*]Apple TV 4k Gen 1(使用以太网而不是 Wi-Fi 时效果最佳)

据报道,以下家庭集线器在大量配件方面存在问题:

[*]Apple TV HD(狗都不买)
[*]各种 iPad 型号

通过 YAML 创建时重置

[*]删除设备和服务面板HomeKit中的集成。
[*]重新启动Home Assistant。
[*]配置将自动从YAML 重新导入。
[*]配对桥接器或配件。

通过集成面板创建时重置

[*]HomeKit在集成面板中删除集成。
[*]HomeKit在集成面板中重新创建集成。
[*]配对桥接器或配件。

配对时出错
如果您在配对过程中遇到任何问题,请确保将以下内容添加到您的列表configuration.yaml中以尝试确定问题。logger:
default: warning
logs:
    homeassistant.components.homekit: debug
    pyhap: debug按照上述说明进行重置。
用排除法简化配置
如果尝试(配对过程中的错误)中的步骤后配对仍然失败,则可能是由特定实体引起的。尝试使用排除法简化配置进行重置,例如:homekit:
filter:
    include_entities:
      - demo.demo
PIN 未显示为持久状态
您可能已经配对了Home Assistant Bridge。如果没有,请按照上述说明进行重置。
Home Assistant Bridge 未出现在 Home App 中(用于配对)
这通常与设置和网络相关。请务必检查以下其他问题,但可能有效的事情包括:

[*]检查您的路由器配置
[*]尝试使用 Wi-Fi 和 LAN
[*]更改默认端口

请记住,iOS 设备需要与 Home Assistant 设备位于同一本地网络中才能进行配对。
Home Assistant bridge没有出现在家庭 App中(用于配对) - Docker
设置network_mode: host在您的docker-compose.yaml. 如果您还有其他问题,此问题可能会有所帮助。
您也可以尝试avahi-daemon在reflector模式下与选项一起使用advertise_ip,见上文。
HomeAssistant桥没有出现在家庭App中(用于配对 - VirtualBox
将网络模式配置为networkbridge。否则 Home Assistant Bridge 将不会暴露在网络中。
配件没有出现在 Home App 中(用于配对)- Libvirt QEMU/KVM 虚拟机与 macvtap 适配器
有关详细信息,请参阅零配置网络集成。
配对挂起 - zeroconf 错误
配对失败之后,您可能会看到错误消息,NonUniqueNameException您可能需要default_interface: true在zeroconf集成配置中启用并设置唯一名称,例如name: MyHASS42.如果您之前已配对(甚至不成功),您可能需要删除您的.homekit.state文件才能再次成功配对。请参阅配对期间的错误。
配对挂起 - 仅适用于调试配置
当过滤器设置为仅包含时配对工作正常demo.demo,但正常配置失败。查看特定实体不起作用
配对挂起 - 没有报告错误

[*]确保不要尝试添加超过 150 个附件,请参阅设备限制。在极少数情况下,您的实体之一不能与   HomeKit 组件一起使用。使用过滤器找出哪一个。随意在home-assistant存储库中打开一个新问题,以便我们解决它。
[*]检查日志,然后搜索Starting accessory Home Assistant Bridge on address. 确保 Home Assistant Bridge 连接到正确的接口。如果没有,请显式设置homekit.ip_address配置变量。

正常使用中的问题

桥接自发解除配对
多个用户报告说,iOS12 及更早版本的设备会自发删除配对。确保对 Home 具有管理员访问权限的所有 iOS 设备都运行 iOS 13 或更高版本。如果您无法将设备更新到 iOS 13,Home请在设备 iCloud 设置中禁用。
我的实体没有出现
检查您的实体的域是否受支持。如果是,请检查您的过滤器设置。确保拼写正确,尤其是使用include_entities.
HomeKit不适用于第二个 Home Assistant 实例
要将 HomeKit 与同一本地网络上的多个不同 Home Assistant 实例集成,您需要为其中至少一个设置自定义名称。配置/名称
特定实体不起作用
尽管我们尽了最大努力,但有些实体还不能与HomeKit 集成一起使用。结果将是配对完全失败或所有Home Assistant 配件将停止工作。使用过滤器来识别导致问题的实体。最好尝试配对并逐步包括更多实体。如果它有效,请取消配对并重复,直到找到导致问题的那个。为了帮助其他人和开发者,请在这里打开一个新问题:home-assistant/issues/new如果您有任何iOS 12.x 设备登录到您的iCloud 帐户,则媒体播放器实体device_class: tv可能会触发此情况。过滤实体或从 iCloud 中签署 iOS 12.x 设备应该可以在重新启动其他设备后解决问题。
配件都列为无响应
有报告称路由器中的IGMP 设置会导致 HomeKit 出现问题。这导致所有 Home Assistant HomeKit 配件在Home Assistant(重新)启动几分钟后停止响应的情况。如果您遇到此问题,请仔细检查路由器的 IGMP 设置。默认 IGMP 设置通常效果最好。查看特定实体不起作用
配件无响应 - 重新启动或更新后
请参阅重置附件和取消配对和重新配对。
无法识别链接的电池传感器
尝试从 HomeKit 中删除实体,然后再次添加。如果您将此配置选项添加到 HomeKit 中的现有实体,则您对此实体的配置选项所做的任何更改都不会出现,直到从 HomeKit 中移除配件然后重新添加。请参阅重置附件。
我的媒体播放器没有显示为电视配件
媒体播放器实体device_class: tv将在运行 iOS 12.2/macOS 10.14.4 或更高版本的设备上显示为电视配件。如果需要,请尝试从 HomeKit 中删除该实体,然后再次添加它,尤其是在media_player之前作为一系列开关公开的情况下。对现有配件所做的任何更改(包括更改的受支持功能)都不会出现,直到该配件从 HomeKit 中移除然后重新添加。请参阅重置附件。通用媒体播放器有一个示例,说明如何使用它来包装现有实体,使它们能够用作 HomeKit 中的电视附件。
无法控制电视媒体播放器的音量?
音量和播放/暂停控件将显示在远程应用程序或控制中心上。如果您的电视支持通过 Home Assistant 进行音量控制,您将能够使用设备上的侧面音量按钮控制音量,同时在屏幕上选择遥控器。
相机视频未流式传输
确保ffmpeg正确配置了集成。验证您的流是否可以直接使用ffplay<stream_source>VLC Media Player 播放。如果您更改了相机的实体配置,则可能需要重置配件。
相机流不稳定或缓慢
如果您的相机支持原生H.264 流,家庭助理可以避免转换视频流,这是一项昂贵的操作。要在通过YAML 配置时启用本机 H.264 流,video_codec请将copy. 要在通过 UI 设置HomeKit 时允许本地 H.264 流,请转到 UI 中的设置->设备和服务,单击HomeKit Bridge 的选项Cameras that support native H.264 streams,然后选中屏幕上的相机复选框。
多个摄像头流
可以使用stream_count配置选项配置多个流。如果更改流的数量,则必须重置附件。
相机音频未流式传输
确保support_audio在True相机的实体配置中。
相机动作通知
可以通过linked_motion_sensor配置设置链接运动传感器以启用运动通知。
门铃按钮通知
可以通过linked_doorbell_sensor配置设置链接门铃传感器以启用运动通知。
有许多摄像头的情况下,HomeKit 卡顿或设备响应缓慢
HomeKit 相机快照在快照期间会占用 HomeKit 连接。为避免此问题,请在附件模式下为每个相机创建一个单独的HomeKit实例。
重置配件
您可以使用homekit.reset_accessory具有一个或多个实体 ID 的服务来重置配置可能已更改的配件。这在将媒体播放器的设备类更改为tv、连接电池或 Home Assistant 向现有实体添加对新HomeKit 功能的支持时非常有用。在较早版本的Home Assistant 中,您可以通过从HomeKit 中删除实体(通过filter)然后重新添加配件来重置配件。无论使用哪种策略,配件都会像第一次设置配件一样运行,因此您需要恢复名称、组、房间、场景和/或自动化设置。
取消配对和重新配对
HomeKit 集成会记住每个配对设备的公钥。有时,由于配对失败,设备配对的公钥会丢失。假设一个或多个设备将附件显示为不可用。在这种情况下,可能需要取消配对并重新配对设备,以确保集成具有每个配对客户端的公钥。该homekit.unpair服务将强制删除所有配对并允许与配件重新配对。从 UI 设置 HomeKit 时,这避免了有时耗时的删除和创建新实例的过程。配件的行为就像是第一次设置配件一样,因此您需要恢复名称、组、房间、场景和/或自动化设置。END

yc0209 发表于 2022-10-9 20:31:49

前排前排留个位慢慢看

SilverWolf 发表于 2022-10-9 20:34:35

感谢分享,中文教程确实不错。有助于新手入门。

qqkj 发表于 2022-10-10 03:12:02

本帖最后由 qqkj 于 2022-10-10 03:25 编辑

大佬想问下,我通过 YAML 创建的设备都是单个entity的。。比如我要添加个三键开关。。通过这种方式添加到homekit之后变成三个独立的一键开关了,这种如何解决?
例如下面是我的部分代码,应该如何调整呢?
- name: attic
port: 51801
filter:
    include_entities:
      - switch.wall_switch_a636
      - switch.wall_switch_a636_2
      - switch.wall_switch_a636_3
      - sensor.temperature_and_humidity_sensor_1b28_humidity
      - sensor.temperature_and_humidity_sensor_1b28_temperature
entity_config:
    switch.wall_switch_a636:
      name: "阁楼开关一"
    switch.wall_switch_a636_2:
      name: "阁楼开关二"
    switch.wall_switch_a636_3:
      name: "阁楼开关三"
    sensor.temperature_and_humidity_sensor_1b28_humidity:
      name: "阁楼湿度"
    sensor.temperature_and_humidity_sensor_1b28_temperature:
      name: "阁楼温度"

- name: living room
port: 51802
filter:
    include_entity_globs:
      - switch.wall_switch_a5e5
      - switch.wall_switch_a5e5_2
      - switch.wall_switch_a5e5_3
    include_entities:
      - sensor.temperature_and_humidity_sensor_0436_humidity
      - sensor.temperature_and_humidity_sensor_0436_temperature
entity_config:
    switch.wall_switch_a5e5:
      name: "客厅开关一"
    switch.wall_switch_a5e5_2:
      name: "客厅开关二"
    switch.wall_switch_a5e5_3:
      name: "客厅开关三"
    sensor.temperature_and_humidity_sensor_0436_humidity:
      name: "客厅湿度"
    sensor.temperature_and_humidity_sensor_0436_temperature:
      name: "客厅温度"


紫·HA 发表于 2022-10-10 08:50:35

留名,慢慢看;感谢分享

SilverWolf 发表于 2022-10-10 10:57:35

qqkj 发表于 2022-10-10 03:12
大佬想问下,我通过 YAML 创建的设备都是单个entity的。。比如我要添加个三键开关。。通过这种方式添加到ho ...

你需要将三个开关实体作为一个设备接入才可以。你现在接入的是3个实体分别各自作为独立的设备。
你可以尝试下将三个开关编组。

sorrypqa 发表于 2022-10-10 11:10:04

感谢分享!辛苦了,期待大佬把Home Assistant 说明书全部汉化。

qqkj 发表于 2022-10-10 14:26:12

SilverWolf 发表于 2022-10-10 10:57
你需要将三个开关实体作为一个设备接入才可以。你现在接入的是3个实体分别各自作为独立的设备。
你可以尝 ...

那如何进行编组呢?能否详细点。。

woaifunta 发表于 2022-10-10 15:01:25

果断收藏,学习.感谢大佬分享

SilverWolf 发表于 2022-10-12 16:00:39

sorrypqa 发表于 2022-10-10 11:10
感谢分享!辛苦了,期待大佬把Home Assistant 说明书全部汉化。

全部汉化也太多了吧,HA说明书大大小小几百页呢。
页: [1] 2 3
查看完整版本: Home Assistant 说明书/HomeKit页汉化