关于hass对接mqtt 请参考官网

https://www.hachina.io/docs/7083.html

1 登陆运行着hass的阿里云服务器

2 修改hass配置文件,添加mqtt服务信息

把这个文件拷贝到自己的电脑上,修改后重新上传服务器

添加以下内容

2.1hass连接Mqtt服务器

参考官网https://www.hachina.io/docs/7211.html

你可以使用Mosquitto的公有云MQTT服务器进行测试。如下配置:

# configuration.yaml配置样例
mqtt:
# MQTT Broker的IP地址或者域名
broker: test.mosquitto.org
#如过是本地搭建的
#broker: 127.0.0.1
# MQTT Broker的端口号,缺省为1883
port: 1883
# 用户名
#username: hachina
# 密码
#password: hachina
# 配置自动发现
discovery: true
# 自动发现使用的主题位置前缀,缺省为homeassistant
discovery_prefix: homeassistant

2.2hass手动添加一个设备(灯)

参考官网https://www.hachina.io/docs/7214.html

    • 主题位置(topic)
      主题位置表明双方在哪里进行通讯。
      比如,一盏灯的命令主题(command_topic),表示HomeAssistant会将开关命令发送到这儿,而灯会到这儿读取命令进行开关操作;比如,一个温度计的状态主题(state_topic),表示温度计会将温度值发送到这儿,HomeAssistant会从这儿读取温度展现在前端。
      一个设备可能包含多个主题位置。例如,温湿度传感器的温度和湿度可以分在两个主题位置,灯的状态和控制命令一般也会分在不同的主题位置。
    • 信息内容(payload)
      信息内容表示双方用什么信息代表什么含义。
      比如,开关灯命令,可以是”ON/OFF”,也可以是”on/off”,”true/false”,”1/0″……
      HomeAssistant配置项中payload_XXXX代表对信息内容的配置。
# 这是一个MQTT设备,名字是"MQTT Sensor 1",在MQTT中发布信息的位置在"home/bedroom/temperature"
# 此配置添加系统内实体sensor.mqtt_sensor_1
light:
#设备类型 MQTT
- platform: mqtt
# 设备名字
name: "LED light over MQTT"
# HASS标准格式  状态话题  HASS接收来自设备的状态信息
state_topic: "hachina/hardware/led01/state"
# HASS标准格式  命令话题  HASS发送控制设备的命令
command_topic: "hachina/hardware/led01/switch"
# 命令格式  on 和 off
payload_on: "on"
payload_off: "off"

被控端(灯)将状态发布到主题“hachina/hardware/led01/state”中,控制端(HomeAssistant)订阅这个主题,用于当前状态显示;

控制端(Home Assistant)将控制命令发布到主题“hachina/hardware/led01/switch”中,被控端(灯)订阅这个主题,根据其内容进行实际的开关动作。

双方以”on”代表开,以”off”代表关。

3重启 hass

4 登陆控制台,发现多了个灯设备

5 点击按钮,在对应话题会收到" on "

在hass点击一下开关,开关打开

手机调试软件订阅话题,模拟自己是个灯监听

但是马上hass界面端的按钮又回到关闭状态,为什么?

因为手机只是监听,没有往状态话题发布消息--on, 这样hass没有得到灯的反馈,误以为它没开,而自动把开关展示状态显示为关。

需要在硬件esp8266中写程序,每次收到 开灯命令,对应返回 开的状态。

(二 -1) 天猫精灵接入Home Assistant-控制Mqtt设备的更多相关文章

  1. (二 -0) 天猫精灵接入Home Assistant-安装MQTT服务器

    ubuntu 1604  阿里云 学生版轻型服务器 1 安装MQTT 进入官网 http://emqtt.com/ 点击下载 找到  ubuntu 1604  右键-复制链接 粘贴办理内容是下载链接第 ...

  2. (一) 天猫精灵接入Home Assistant- hass对接天猫精灵

    1如何利用论坛的认证服务器对接天猫精灵 说起天猫精灵的接入,最早是由c1pher(25989406)大神通过开发自定义技能接入,后面qebabe大神进行了改进,可以直接通过HASS API读取hass ...

  3. (二 -3-1) 天猫精灵接入Home Assistant-自动发现Mqtt设备--灯系列 实战

    #本片教程介绍了具体如何实现天猫精灵控制一个灯. 前提: HASS平台 你已经搭建一个可以在公网IP访问到的HASS平台--- 我用的是租了阿里云服务器,买了个域名,ubuntu1604系统 你已经搭 ...

  4. (二 -5) 天猫精灵接入Home Assistant-自动发现Mqtt设备--电风扇

    官网:https://www.home-assistant.io/components/fan.mqtt/ 1 添加配置文件 要在安装中启用MQTT风扇,请将以下内容添加到您的configuratio ...

  5. (二 -3-1) 天猫精灵接入Home Assistant-自动发现Mqtt设备--灯系列 esp8266程序

    设备1 上电自动注册自己是个1个开关 HASS网页和手机APP控制 外部开关上升沿中断控制 天猫精灵语音控制 一键配网 记录以往WIFI信息 设备2 上电后,自动注册自己有三个开关控制 HASS网页和 ...

  6. (二 -3) 天猫精灵接入Home Assistant-自动发现Mqtt设备--灯系列

    参考网站 1该mqtt光平台可以让您控制您的MQTT启用灯.它支持设置亮度,色温,效果,闪烁,开/关,RGB颜色,过渡,XY颜色和白色值. https://www.home-assistant.io/ ...

  7. (零 ) 天猫精灵接入Home Assistant-总说明

    天猫精灵设备管理 https://bbs.hassbian.com/tmall 自己的hass访问地址 http://[自己的IP或域名]:8123/states 自己的MQTT服务器访问 http: ...

  8. (一 ) 天猫精灵接入Home Assistant-服务器搭建

    ()1登陆阿里云 https://ecs.console.aliyun.com/?spm=5176.2020520001.0.0.6B1Uov#/home 账号dongdongmqtt 密码***** ...

  9. (二 -4) 天猫精灵接入Home Assistant-自动发现Mqtt设备--传感器系列

    https://www.home-assistant.io/blog/2015/10/11/measure-temperature-with-esp8266-and-report-to-mqtt/ 最 ...

随机推荐

  1. Shell 示例:利用 $RANDOM 产生随机整数

    代码如下: #!/bin/bash # $RANDOM 在每次调用的时候,返回一个不同的随机整数 # 指定的范围是: 0 - 32767 MAXCOUNT=10 count=1 echo echo & ...

  2. struts2、hibernate以及spring是如何配置的

    第一次使用这3大框架进行网站编写的人没有一个清楚的流程,建起网站来会比较头疼,今天来讲讲3大框架的配置 基本流程: 用户点击页面之后,服务器收到一个请求,请求经过web.xml的拦截器过滤后进入act ...

  3. SQL SERVER 如何声明一个变量

    DECLARE @i AS INT; ; GO 或者 ; GO 表表达式形式 ); SET @empname = (SELECT firstname + N' ' + lastname FROM HR ...

  4. C#7.2——编写安全高效的C#代码

    原文地址:https://docs.microsoft.com/zh-cn/dotnet/csharp/write-safe-efficient-code?view=netcore-2.1 值类型的优 ...

  5. Tomcat报failed to parse the expression [${xxx}]异常(javax.el.ELException)的解决方法

    Tomcat 7 'javax.el.ELException' 的解决方式tomcat 7对EL表达式的语法要求比较严格,例如"${owner.new}"因包含关键字new就会导致 ...

  6. TCP服务器/客户端代码示例

    TCP服务器代码: #include <errno.h> #include <string.h> #include <stdlib.h> #include < ...

  7. Matlab diag的用法

    X = diag(v,k) 以向量v的元素作为矩阵X的第k条对角线元素,当k=0时,v为X的主对角线:当k>0时,v为上方第k条对角线 几个例子: 当k> v=[1 2 3]; >& ...

  8. 浮动布局float

    浮动 浮动是css里面布局用的最多的属性. .box1{                      float: left;                      width: 300px;    ...

  9. HDU 6138 Fleet of the Eternal Throne(后缀自动机)

    题意 题目链接 Sol 真是狗血,被疯狂卡常的原因竟是 我们考虑暴力枚举每个串的前缀,看他能在\(x, y\)的后缀自动机中走多少步,对两者取个min即可 复杂度\(O(T 10^5 M)\)(好假啊 ...

  10. vue2.0 element-ui中的el-select选择器无法显示选中的内容

    我使用的是element-ui V2.2.3.代码如下,当我选择值得时候,el-select选择器无法显示选中的内容,但是能触发change方法,并且能输出选择的值. select.vue文件 < ...