主要参考:小度设备反向接入HomeAssistant,一个全网设备接入新思路 (bilibili.com)
家里很多设备是围绕天猫精灵买的,通过巴法云可以使用天猫、小度、小爱音箱控制ha里面的大部分设备和场景,但是ha不能反向控制天猫里面的设备。因为家里的空调和新风是通过天猫精灵控制,也可以通过小度音箱控制。看了B站的那个视频后发现小度音箱有一个网页控制的界面,那么通过nodered网页访问的方式是不是就可以实现小度的设备模拟成ha里面的一个实体,通过开关实体来开关小度里面的设备。
nodered中安装node-red-contrib-home-assistant-websocket 0.45版本后,在ha里面也安装nodered的集成。(不要安装0.46版本,那个版本nodered需要3.0以上的版本才支持,我的nodered版本是2.1的。)
https://github.com/zachowj/hass-node-red。
这个版本的集成里面可以生成开关。在nodered里面创建一个switch,对应ha里面也会创建一个设备。创建设备后,需要重启ha,这样那个开关才会起作用。
msg.payload={
"header": {
"namespace": "DuerOS.ConnectedHome.Control",
"name": operate,
"payloadVersion": 3
},
"payload": {
"appliance": {
"applianceId": [
strapplianceId
]
},
"parameters": {
"proxyConnectStatus": false
}
}
}
小度设备的列表通过以下链接获取。applianceId和操作的代码
https://xiaodu.baidu.com/saiya/smarthome/devicelist?from=h5_control
网页的头的设定的话,需要自己登录小度的平台。然后抓取,设定到msg.header中。
https://dueros.baidu.com/didp/do ... kdown#TurnOnRequest
|