Contents

Docker宝库:智能家居集成HomeAssistant

安装HomeAssistant

通过一下命令,在Docker安装HomeAssistant

docker run -d -it\
--restart always \
--name hass \
-v /opt/homeassistant/config:/config \
-e TZ=Asia/Shanghai \
-p 8123:8123 \
homeassistant/home-assistant:latest

之后通过localhost:8123访问管理界面,注册用户等。

安装HACS插件

控制台输入以下代码进入容器

docker exec -it hass bash

之后输入以下命令安装hacs

wget -O - https://get.hacs.xyz | bash -

安装完毕后,进入HomeAssistant,点击左下角“配置”,再点击右上角三个点,重新启动HomeAssistant。

启动完毕后,登录HomeAssistant,左下角“配置”-“设备与服务”-“添加集成”,搜索并安装HACS。(5个选项全部打钩,按提示登录Github并输入验证码授权)

此时,菜单栏会出现HACS选项,点击进入,直接在上方搜索栏输入想安装的HACS插件就可以了,记得重启HA生效。

重启成功后,点击“配置”中“设备与服务”选项卡下的“添加集成”按钮,搜索刚刚安装的插件,发现已经有刚刚安装的集成了,点击它进行配置即可。

各类插件推荐:

  • 小米用HACS的Xiaomi Miot Auto或者小米官方插件
  • 海尔用HACS的Haier(banto6)
  • 涂鸦智能用HACS的Tuya v2
  • OMV系统用HACS的OpenMediaVault
  • 另外可以安装Bar Card插件,用与界面显示百分比进度条(默认插件没有)。

反代设置

HASS如果直接设置反向代理,会出现无法访问,显示400:Bad Request的情况,是因为HASS默认不允许通过反向代理访问,需要在HASS的配置文件中进行设置。

修改HASS的configuration.yaml文件,添加以下内容:

http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 127.0.0.1
    - 172.17.0.1 # 根据你的Docker网络环境修改
    - 192.168.1.0/24 # 根据你的局域网网段修改
  • use_x_forwarded_for: true:启用反向代理支持。
  • trusted_proxies:添加反向代理服务器的IP地址或网段。

其他

PTX无线蓝牙开关自动化配置

登录hass后,设置-自动化与场景-创建自动化 在”每当“中添加触发条件,选”实体“-“状态”,在实体中选择”BLE专用开关传感器 单击“ 点击“每当”窗框右上角的三个点,选择"YAML编辑",修改配置文件为:

trigger: state
entity_id:
  - event.lemesh_cn_blt_3_1lqnnt7ucc801_ts00_double_click_e_5_1013
not_from: unavailable
not_to: unavailable

PS:如果不写not_from和not_to这两行,虽然能正常使用,但是在设备离线重新连接或者hass断网等情况下,也会触发开关按键动作。

在“就执行”窗框中,选“添加动作”-“设备”,选择一个“设备”,并选择对应的“动作”即可。例如:

type: toggle
device_id: 431a9ec9e640be389fb5feeaf7ae7c72
entity_id: d52fa987eb8418fa42bec399acc77e1b
domain: switch

完整的配置代码为:

alias: 书房无线开关-空调
description: ""
triggers:
  - trigger: state
    entity_id:
      - event.lemesh_cn_blt_3_1lqnnt7ucc801_ts00_double_click_e_5_1013
    not_from: unavailable
    not_to: unavailable
conditions: []
actions:
  - type: toggle
    device_id: 431a9ec9e640be389fb5feeaf7ae7c72
    entity_id: d52fa987eb8418fa42bec399acc77e1b
    domain: switch
mode: single