|
本帖最后由 huang7dede 于 2018-11-30 15:42 编辑
作为小白,先默默的看了大神的各种node-red教程,感觉这个真的适合小白,建议小白都从HA转来这里玩,图形化编程对于小白很友好,编程像搭积木。之前用homeassistant各种提示错误,各种崩溃,现在再也没有了。而且直接导入大神写好的配置,一键搞定,再也不用各个目录,各种文件里复制粘贴,而且修改方便,直接点一下部署,就知道修改后的配置是不是可以用,不用想HA重启,上次我的HA配置出错,重启后始终IP:8123进不去界面,也不知道是哪里改错,一怒之下,重装了服务器。node-red唯一差点的是现成的节点少了点,有些传感器没有,好在我需要的homekit,博联,都有,另外好像小米的也有。还需要大神在node-red多多贡献啊。
小白之前看教程,各种在home-assistant装node-red,还有在node-red装homeassistant,为啥这么折腾呢,直接用node-red就可以实现接入homekit。而且貌似node-red的homekit是多个流程可以独立的,比如homeassistant就是在configuration.yaml文件里加一句homekit:,web界面会显示一个pin码,node-red可以有多个pin码,可以接入多个不同的设备。所以,不用安装homeassistant。
废话讲完,我要的功能是用siri控制电视机和电视盒子的开关,是根据论坛各路大神的教程自己琢磨的,反正自己也是小白,发出来只当是学习笔记与大家共享。
首先,我的电视盒子是斐讯N1刷的机顶盒,是蓝牙遥控没有红外,但盒子是插上电源就会自动开机,于是用一个博联的WIFI开关SP mini3控制盒子开关机,电视机就是红外遥控,所以需要一个博联RM pro+。
我的NOED-RED是装在docker里的,这个安装有教程,就不说了。
node-red里安装下面2个节点,一个是Homekit节点,一个是博联的节点,加入后,左侧边栏就会多出一些按钮,还有自带的许多按钮,需要什么就可以拖到中间的区域了。小白如果不知道是什么按钮可以看图,每个按钮的左侧都有一个图标,可以在侧边栏找相同图标拖出来就是了。
然后建了一条指令用于博联RM遥控学码,学会遥控器的开机、关机红外码,点击一下按钮左侧图标,博联RM亮橙色灯,等待学码,用你的遥控器对着按一下要学的按键,右侧调试窗口就会显示一串例如:{"data":[38,0,80,0,0,1,39,152,16,21,16,22,16,21,17,20,17,21,17,20,18,20,16,22,16,58,17,57,18,58,16,58,17,58,17,58,16,21,17,58,17,57,17,58,17,21,16,21,17,20,18,20,17,21,17,20,17,21,16,22,16,58,17,57,18,58,16,58,17,57,18,58,16,0,5,62,0,1,25,74,18,0,13,5,0,0,0,0,0,0,0,0]},这就是学会的红外码。把学会的码都记录下来。
在建一条指令用于siri控制电视盒子和电视机开启及关闭
如下图:
记得点击右上角部署,以上就可以了,在苹果设备的家庭里会自动发现一个设备,输入11111111(自己在homekit按钮上设置的PIN码)就可以连上开关了,给他取名叫“电视”,以后就可以说:嗨siri,打开电视,或者:嗨siri,关闭电视。
就会按下面的指令分别执行了。每个按钮可以双击打开看看设置什么的,都很简单,图形化操作,更改一个按钮的MAC和IP,其他的同类按钮都会改过来,比如上面我用了3个RM按钮,2个SP2按钮,只要改其中一个的MAC和IP,其他都一起改过来了。。
改进了一下,添加了检测斐讯N1在线,然后采取模拟遥控器发送电源按键码关机后再断电,所以需要安装一个节点,ping节点,节点里搜ping,安装一下,如图
设置很简单,输入要ping设备IP即可
最终是这个样子
发送遥控按键码的方法见另一个帖子:https://bbs.hassbian.com/thread-5586-1-1.html
最后是flow的代码
博联遥控接入homekit.yaml
(12.15 KB, 下载次数: 215)
|
|