接着上一章安装完NodeRed
,这章尝试一下创建流程,控制HA
的MPD
播放器
1. 安装HA节点
进到NodeRed
网页端控制台,打开节点管理
安装node-red-contrib-home-assistant-websocket
安装完就能在节点那里看到下面这一堆
2. 让NodeRed能够访问HA(只配置一次就行了)
- 到
HA
的网页端生成一个长期访问令牌
- 自己随便输入一个令牌名字,我的是
NodeRed
创建完后把令牌拷贝下来备用,因为这个令牌只会显示一次。 - 随便拖一个
HA
的节点出来 - 双击编辑拖出来的节点
- 编辑服务器节点,把
HA
的URL和刚才生成的令牌填进对应的输入框 - 更新节点,然后点
右上角的部署,这里记得要部署,否则是还未生效的。
3. 尝试打开MPD播放器1
做完才发现,这条流程要在播放器 非Stop 的状态下才能正常工作。播放器有下面3个状态
off、playing、paused
后面会再做一条流程,让播放器在 Stop 的状态下也能正常工作
- 拖一个用于节点出来,用于触发事件
- 拖一个用于调用
HA
服务的节点 - 双击编辑
call service
节点 - 把节点的线条连上,点击
部署,记得点击部署,以后编辑完要点击部署才会生效
- 点击
时间戳
节点左边的那个正方形触发流程,播放器能够正常的播放和暂停了吧。
4. 尝试打开MPD播放器2
上面那个例子只能打开 非off 状态的播放器,那只需要改一下,在call service
之前拿到播放器的当前状态,根据不同的状态调用不同的服务就好了。首先,要拿到播放器的状态看下是什么样子的。
双击编辑current state
节点,在Entity ID
里填入HA里MPD
的ID,部署,点击时间戳
左边的正方形框框,在调试窗口就可以看到调试信息了。
可以看到当前状态是playing
,你可以在HA
更改播放器的状态,再回来调试,就可以看到其它状态了,继续编辑流程。
编辑switch
节点
编辑上面那个call service
下面那个call service
内容与上一节“尝试打开MPD播放器1”的内容一样,部署,可以了。
上一章:Home Assistant 搭建日志(七)——安装NodeRed