1如何利用论坛的认证服务器对接天猫精灵

说起天猫精灵的接入,最早是由c1pher(25989406)大神通过开发自定义技能接入,后面qebabe大神进行了改进,可以直接通过HASS API读取hass中的设备,但由于接入方法限制,还需要自行搭建php+mysql环境,还要搞oauth认证,让很多人望而却步。

之后,天猫精灵支持了飞利浦hue,这意味着可以通过HaBridge模拟hue进行接入,但是此方法接入很不稳定,不是搜不到设备就是控制不了,也很是让人头疼。

最近c1pher大神搞定了多用户支持,并且c大和q大高风亮节,将核心代码共享给了论坛,这才有了今天的天猫精灵官方技能(名称“HASS智能”)!

此接入方法优点是方便,只需要在天猫官方APP中绑定账户(用论坛账号登录即可,不需要另行注册),然后在配置页面填入HASS公网地址和密码,即可添加设备。设备添加后,会自动同步到天猫精灵APP中。

需要说明的是,论坛提供的官方技能相当于架设了一个多用户oauth授权服务器,同时作为桥,通过https与天猫精灵服务器通讯,桥的另一端就是用户的hass。因此,需要您的hass在公网可以访问到,并且需要提供hass密码来通过hass api来读取设备和响应天猫精灵的操作。

使用此方法接入前,请参阅隐私政策,继续接入表示您已同意该政策。

接入方法:

1 hass对接天猫精灵----账号绑定

首先打开天猫精灵app,点击“我的”> “智能家居”> 点右上角 + 号 > 找到“HASS智能”

点击进入,阅读相关说明后,点击绑定账号,此时会提示你登录,用论坛账号和密码登录后,会跳转到授权页面,点击 YES,确认授权后,即为绑定成功。

2 将自己公网ip可以访问到的hass服务器和论坛的认证服务器绑定

本来应该是是自己的hass服务器完成和天猫精灵的认证和控制命令传输,但是需要在国家报备的域名,和一些列复杂的认证操作设置,为了省事直接使用论坛服务器。

论坛提供的官方技能相当于架设了一个多用户oauth授权服务器,同时作为桥,通过https与天猫精灵服务器通讯,桥的另一端就是用户的hass。因此,需要您的hass在公网可以访问到,并且需要提供hass密码来通过hass api来读取设备和响应天猫精灵的操作。

2 hass设置,添加hass已有的控制设备(灯)给天猫精灵APP控制设备

然后,用浏览器打开此页面:https://bbs.hassbian.com/tmall
 

重要提示!重要提示!重要提示!
输入hass地址时,一定要带上 http:// 或者 https:// ,还有端口号!否则可能控制不了!!
格式如下(最后不要有斜杠):
http://hass.test.com:8123   
 
 目前所有在hass里设置的位置和别名都可以在天猫精灵APP中修改(修改后操作以app中设置的位置和别名为准)
由于天猫精灵的传感器目前还无法设置别名,只能通过选择位置区分,且在HA中同一个传感器不同的参数值有不同的entity_id,所以目前每个区域(位置)只能设置一个传感器,如果同一个位置设置了多个传感器,天猫精灵无法区分会导致查询不到结果。

2搭建自己的HomeAssistant可以在公网被访问,并添加一个自定义设备

添加设备
之前添加了一个MQTT的灯,现在添加到天猫精灵 
选择 --实物设备-属性按下面选择
设备ID自动弹出
 
http://自己的域名:自己的端口/states
 

3绑定后进入天猫精灵APP,添加自己的HomeAssistant上原有的设备

https://bbs.hassbian.com/tmall/discovery.php


设备管理页面中,点击deviceid(设备ID),这时会自动列出您HomeAssistant中支持的设备,选择想添加到天猫精灵里的设备进行添加

位置需要在列表中进行选择,品牌、型号可以简单填一下。

properties(支持的属性状态)要按您的设备进行选择,比如网关灯、yeelight灯支持亮度颜色调整,就需要选择:电源状态、颜色、亮度,传感器就需要选择对应的:温度、湿度、PM2.5。

action(支持的操作)对基本设备需要选择打开、关闭、查询开关状态,传感器需要选择对应的温度、湿度、PM2.5的查询,特殊的灯需要选择设置亮度、设置颜色。

添加完成后刷新天猫精灵APP里的设备列表就可以看到你刚刚添加的设备了,也有可能会有一定延时,没有的话稍等5分钟再看。

在天猫精灵APP中完善位置和别名,APP里修改后所有操作以app中的位置和别名为准

其实很简单,授权后,在设备管理界面,添加设备后,会自动同步到天猫精灵,在天猫精灵APP中更改一下位置和名称别名,在天猫精灵控制时,以在天猫精灵app中设置的位置和名称为准。

你可以说“天猫精灵,打开次卧台灯”,“次卧台灯的状态”,“客厅传感器的温度”

打开天猫精灵 app -智能家居

发现多了个设备

换个名字

位置+名称

客厅的灯

更多操控

5实际测试下

拔一块红色的方糖天猫精灵(冒着深夜叫人被打的风险把某人叫醒,解锁手机解除绑定给我用)

按照提示,使用 位置+名称方式 呼叫

-我:天猫精灵,把客厅的灯打开

-猫:好的,已经打开

手机开启设备监听,模拟一个插座设备,确实收到 "ON"命令,届时只需把这个命令给ESP8266硬件终端解析下做出闭合动作。

下一步改进:

1目前使用速度还可以,但是毕竟蹭了大神的认证服务器,且架设在日本,后期搭建自己的认证服务器。(有空再说吧,路漫漫长修远兮)

https://bbs.hassbian.com/forum.php?mod=viewthread&tid=3910&extra=page%3D1%26filter%3Ddigest%26digest%3D1

我一开始使用论坛的服务,发现有2个问题,1是延迟比较严重,因为论坛服务器在日本,2是传感器不能查询,这个问了大神知道了也是延迟的问题。
如果你的天猫精灵也会经常出现“智能家居控制暂时使用不了呢”这样的情况,十有八九是你那里的网络延迟比较高

这是个示意图,如果你自建服务,并且将服务器放在hass所在的本地,那么可以节约2个过程的时间,1是访问国外服务器,2是访问hass,因为是本地操作,局域网或者本机,基本没有延迟,事实证明,这样做确实解决了前述两个问题

2 搞个ESP8266配合继电器接入灯的电路,实现实际 控制。

https://www.cnblogs.com/post/readauth?url=/kekeoutlook/p/9420838.html

(一) 天猫精灵接入Home Assistant- hass对接天猫精灵的更多相关文章

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

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

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

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

  3. (二 -1) 天猫精灵接入Home Assistant-控制Mqtt设备

    关于hass对接mqtt 请参考官网 https://www.hachina.io/docs/7083.html 1 登陆运行着hass的阿里云服务器 2 修改hass配置文件,添加mqtt服务信息 ...

  4. 对接天猫精灵X1 (https 的申请)

    1 起因 公司是做智能家居的,最近公司要求对接天猫精灵的智能家居功能,所以就来对接天猫精灵X1 了. 新产品,大家都懂的,坑是有不少的,正常事. 1 首先,语言是 c#,不要和我讲 php 是世界最好 ...

  5. (四) 天猫精灵接入Home Assistant-ESP-WIFI模块通过mqtt协议接入HASS

    总过程 1 ESP8266上电后,初始化 连接MQTT服务器 发布自身配置信息----hass自动发现该设备 订阅hass的命令话题---接收命令 发布hass的状态话题---返回自身状态 2 ESP ...

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

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

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

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

  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. Java中构造方法与setter方法

      今天在重温Java的同时,一个不是问题的问题,突然地冒出来,不知道大家是不是和我一样,也有过这个比较尴尬的问题 不啰嗦了,那咱就直接说问题吧~~~ 那么首先我们在Java中都会写构造函数,目的是在 ...

  2. 如何完全卸载oracle和删除oracle在注册表中的注册信息

    卸载步骤介绍 1.停止所有Oracle相关的服务 操作方法: 控制面板-->管理工具 -->服务 -->将所有oracle开头的服务均停止 2.卸载Oracle 10g数据库服务器组 ...

  3. 【Spring】15、spring mvc路径匹配原则

    Ant path 匹配原则 在Spring MVC中经常要用到拦截器,在配置需要要拦截的路径时经常用到<mvc:mapping/>子标签,其有一个path属性,它就是用来指定需要拦截的路径 ...

  4. 通过Eureka自带REST API强行剔除失效服务

    1.确定需要强行剔除的服务 2.执行接口 方便复制: http://{ip}:{port}/eureka/apps/CONFIG-SERVER-TEST/tom:config-server-test: ...

  5. 为什么90%的CTO 都做不好绩效管理

    ​ 十多年从业经历,从 2001 年开始带团队到现在,我几乎经历过所有的 IT 角色.2010 年,我随创始团队筹建国美在线至今,经历了从几百单到现在日均百万订单,从只有家电品类到现在全品类.金融.大 ...

  6. CSS水平居中的三种方法

    CSS中经常会用到元素居中,那么今天我为大家分享几种水平居中的方法,下面代码都可以达到同样的居中效果,来不及解释了,快上马(码): 一.margin : 0 auto; <head> &l ...

  7. css清除默认样式

    CSS 清除默认样式   通常有以下几句就够了: *{margin:0;padding:0} li{list-style:none} img{vertical-align:top;border:non ...

  8. 开源IDE code blocks黑色主题

    操作系统:Fedora26   IDE版本: Code Blocks16.01 配置文件路径为: ~/.config/codeblocks 而不像一些教程写的在用户根目录下或者在软件安装目录 请将de ...

  9. 用Web Services来整合.NET和J2EE

    互用性(Interoperability)问题说起来容易但通常实现起来却比较困难.尽管Web service曾承诺要提供最佳的解决方案来衔接基于.NET和J2EE的应用程序,但其过程却并不简单.我们发 ...

  10. Visualforce控制器

    Visualforce框架是遵循MVC结构的.Visualforce页面代表了"视图"部分,Salesforce的各种对象代表了"模型"部分,而Apex则代表了 ...