VMx

vmx.im
啥都学一点的填坑人
  1. 首页
  2. 填坑
  3. 正文

homeassistant打开mqtt内外控制

2026年6月4日 5点热度 0人点赞 0条评论

第一步:安装 Mosquitto Broker 插件 (如果你还没有 MQTT 服务端)
如果你本地还没有搭建 MQTT 服务器(Broker),可以直接使用 HA 自带的插件商店来一键安装。

打开 HA 网页端,点击左下角的 配置 (Settings)。

选择 设备与服务 (Devices & Services)。

点击顶部的 Add-ons (插件) 标签页(或者在左侧菜单直接进入“系统 -> 插件”)。

点击右下角的 插件商店 (Add-on Store)。

在搜索框输入 Mosquitto,找到 Mosquitto Broker 并点击进入。

点击 安装 (Install)。

安装完成后,建议勾选 守护 (Watchdog) 和 在侧边栏显示 (Show in sidebar)(可选),然后点击 启动 (Start)。

第二步:配置
有了 Broker 之后,我们需要让 HA 的核心引擎连接到这个 Broker。

再次进入 配置 (Settings) -> 设备与服务 (Devices & Services)。

此时,HA 的自动发现机制通常会非常智能地在页面顶部弹出一个提示:“发现新设备:MQTT”。

如果看到了提示:直接点击 配置 (Configure)。

如果没看到提示:点击右下角的 添加集成 (Add Integration),搜索 MQTT 并点击它。

系统会弹窗询问你是否要提交配置,点击 提交 (Submit)。

大功告成!此时 HA 会自动识别并连接到本地运行的 Mosquitto Broker,无需手动输入 IP 和端口。

第三步:如何手动修改配置或测试连接
如果你需要连接到局域网内的其他独立 MQTT 服务器(比如在别的虚拟机或 NAS 上单独搭建的 MQTT),或者需要修改认证信息:

在 设备与服务 页面找到刚才添加的 MQTT 卡片。

点击 配置 (Configure),你会看到一个调试界面。

点击 重新配置 MQTT (Reconfigure MQTT),在这里你可以手动填入:

Broker: 你的 MQTT 服务器 IP

端口 (Port): 默认 1883

用户名/密码: 刚才为 MQTT 设立的凭据

点击保存即可。

配置configuration.yaml,让ha中的设置与mqtt联动

# 在 configuration.yaml 中添加以下配置
mqtt_statestream:
  base_topic: homeassistant  # 基础主题前缀
  publish_attributes: true   # 是否同步属性(比如灯的亮度、风扇风速)
  publish_timestamps: true   # 同步时间戳
  include:
    domains:
      - switch               # 自动把所有米家开关同步到 MQTT
      - light                # 自动把所有米家灯具同步到 MQTT
      - sensor               # 自动把所有米家传感器同步到 MQTT

如果需要mqtt能操作设置,你还需要写一个自动化。设置->自动化->新建->ymal编辑器

alias: MQTT万能控制网关
description: 监听来自 MQTT Explorer 或 Golang 的命令并调用 HA 内部服务
trigger:
  - platform: mqtt
    topic: homeassistant/service/switch/turn_on
    id: turn_on
  - platform: mqtt
    topic: homeassistant/service/switch/turn_off
    id: turn_off
action:
  - choose:
      - conditions:
          - condition: trigger
            id: turn_on
        sequence:
          - service: switch.turn_on
            target:
              entity_id: "{{ trigger.payload_json.entity_id }}"
      - conditions:
          - condition: trigger
            id: turn_off
        sequence:
          - service: switch.turn_off
            target:
              entity_id: "{{ trigger.payload_json.entity_id }}"
mode: queued
Post Views: 5
标签: 暂无
最后更新:2026年6月4日

huifei

这个人很懒,什么都没留下

点赞
< 上一篇

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2021 vmx.im. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang