基于群晖NAS的叮咚智能音箱与Siri声控万物的智能家居方案来了-2

在上一篇中忘了给大家介绍整个智能家居方案的关系图了,今天给大家补上,好让大家有个整体的认知。
从上面这个系统关系图上,我们可以清晰的看到这个语音控制智能家居方案的关系。在上回的《基于群晖nas的叮咚智能音箱与siri声控万物的智能家居方案来了-1》中,我们相当于完成了homeassistant智能家居平台的安装。下一步也就是今天我们要讲怎么在群晖nas中安装ha-bridge。我们仍然采用相对简单的docker式安装。在安装之前我们先来了解一下ha-bridge是怎么回事。
叮咚和亚马逊echo智能音箱都官方支持飞利浦hue智能灯,ha-bridge就是国外大神为亚马逊echo编写的模拟飞利浦hue智能灯的软件,通过ha-bridge我们就可以把其他智能家居产品模拟成飞利浦hue智能灯,进而实现亚马逊echo智能音箱控制形形色色的非亚马逊echo官方支持的智能家居产品。所以我们借ha-bridge也可以实现叮咚智能音箱控制各种非叮咚官方支持的智能家居产品,比如小米智能家居和博联遥控。但是叮咚和亚马逊echo还是有差别的,应该是协议或api有差异,因为很多时候亚马逊echo能搜索到ha-bridge而叮咚却搜不到。经过无数次测试,我发现亚马逊echo可以支持ha-bridge的web ui的端口是任意端口,而叮咚智能音箱只支持80端口。这个在树莓派上不是问题,你直接设置ha-bridge成80端口就可以了。但是在群晖nas上这确实是个很棘手的问题,因为群晖web ui的nginx服务程序把80端口给霸占了。你即使把ha-bridge端口设置成80,你输入ip和80端口后它打开的还是群晖dsm的管理界面。历尽曲折,终于找到了更改群晖nginx 默认端口的方法。我把nginx原来的80端口替换为8080,这样就可以释放出80端口给ha-brdige使用了。所以为了安装叮咚可以支持的ha-bridge,我们先来把群晖nas的nginx的80端口给释放出来,我决定用8080端口替换80。
一、更改设置释放群晖nas的80端口
1、没办法这么底层的设置,只能用linux命令行了。首先用你windows电脑上的putty软件通过ssh方式登录进你的群晖nas。输入你的群晖ip保持port 22,点open就可输入账户admin和你群晖的密码按回车以ssh进入群晖nas了。
2、切换到root账户。输入sudo -i切换到root账号,它会要求你再次输入群晖密码。
3、切换路径。输入 cd /usr/syno/share/nginx 切换到nginx文件夹,然后在输入ls,即可看到nginx下的文件了。尤其注意我划线的三个文件:server.mustache、dsm.mustache和wwwservice.mustache。待会我们要修改的就是这个三个文件。
4、用vi修改80端口为你想替换的端口
之前在树莓派上都是用nano编辑,但是群晖nas默认应该没安装nano,只能用vim编辑器修改文件了。vim有点难用,建议操作前上网搜索学习一下vim的使用方法。输入vi server.mustache,即可打开server.mustache。按下按键i进入插入模式,用方向键移动光标找到80,然后在后面输入80,使原来的80变成8080。然后按esc退出编辑模式,输入:wq保存并退出。用同样的方法修改剩下的dsm.mustache和wwwservice.mustache。
5、在设置界面设置保存,自动重启生效。
设置完去dsm随便点个无关紧要的设置,然后点应用即可使nginx重启生效。现在你的群晖nas的80端口就自由了。
二、用docker在群晖nas上安装ha-bridge
既然采用docker时安装,那么安装ha-bridge就和安装homeassistant基本一样了。
1、搜索下载ha-bridge
2、设置启动ha-bridge容器
点击确定返回常规应用,然后下一步、应用,则可启动ha-bridge容器。
安装完ha-brdige,你就可以在浏览器输入你群晖的ip即可打开ha-bridge的设置界面。
希望就在眼前,homeassistant和ha-bridge已经安装好了,万事俱备,只欠两者牵手了。剩下的可以参考我前面的文章《无需小米小爱ai音箱,siri和叮咚音箱让你声控万物》完成ha-bridge添加homeassistant设备,以及叮咚音箱添加ha-bridge设备,最终实现叮咚控制小米或博联等叮咚智能音箱官方目前不支持的智能设备。