关于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. 操作Linux系统环境变量的几种方法

    一.使用environ指针输出环境变量 代码如下: #include<stdio.h> #include<string.h> #define MAX_INPUT 20 /* 引 ...

  2. 检测到是移动端还是PC端进入页面,加载不同样式表现

    if(/AppleWebKit.*mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alc ...

  3. 浅谈websocket和c# socket(新手篇)

    周末放假没带电脑所以今天分享质量不高,手机没有那些样式看起来可能没有那么方便,今天主要分享一下websocket. (赶紧拿小本本记下来) websocket 你发现是一个组合单词web socket ...

  4. ajax 跨域----好用的解决方案

    一.前言 跨域这个词就一直以很高的频率在身边重复出现,一直到现在,已经调试过N个跨域相关的问题了! 但是感觉还是差了点什么,于是现在重新梳理了一下.个人见识有限,如有差错,请多多见谅 二.前言 关于跨 ...

  5. Docker 安装MySQL5.7(三)

    Docker 安装MySQL5.7 1.搜索docker镜像(可以看到搜索的结果,这个结果是按照一定的星级评价规则排序的) docker search mysql 2.拉取docker的mysql镜像 ...

  6. Vue 系列之 渲染与事件处理

    渲染相关 列表渲染 与 条件渲染 Vue 中的常见的渲染有 列表渲染 和 条件渲染 所谓条件渲染,则是通过添加一定的逻辑条件来进行 Dom 元素的操作 v-if v-else v-else-if &l ...

  7. Linux常用基本命令:三剑客命令之-awk 三元表达式

    awk 3元表达式,if...else结构都可以用3元表达式改写 ghostwu@dev:~/linux/awk$ awk -v FS=":" '{ type=$3>=100 ...

  8. numpy库的常用方法

    np.abs() 计算数组各元素的绝对值1 a= [0,1,2,3,4,-5,9,-3,12,-4] np.abs(a)out: array([ 0, 1, 2, 3, 4, 5, 9, 3, 12, ...

  9. Ubuntu18.4中Apache在加不同端口的虚拟主机

    1.添加监听端口 sudo vim /etc/apache2/ports.conf Listen 80 Listen 6080 <IfModule ssl_module>         ...

  10. python自动化开发-5

    列表生成式 生成器 迭代器 列表生成式   举个例子 列表[0, 1, 2, 3, 4, 5, 6],要求把列表里的每个值加1,如何实现呢? L=[0, 1, 2, 3, 4, 5, 6] a={i+ ...