群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

这文有点久远了,oznu版本是@1.7.3,后期好像不是npm安装,各位看个流程和大概,细节和主版本和miio,各种插件版本需要说明文档详细了解。

 

作为一个现代化懒人,能张嘴控制绝不动手,什么开关灯,设定空调之类,的喊一声多好。

大冬天的,谁愿意从温暖的被窝里面出来关灯,谁愿意从黑漆漆的地方摸进去开灯。

要回家吃鸡了,书房还是冰冷的,远程打开预热多好啊。

 

扯淡完毕,目前我手上有的东西:米家台灯,yeelight彩色灯泡和灯带,两个空调伴侣,温湿度感应器。

准备工作:

建议大家还是需要搞个米家app,把这些东西都连进去,设置好,homekit里面设置项没有那么多,开关之外的功能有些还是得靠自家的app

虚拟环境以及homebridge软件安装:

首先我们要做的肯定是有个群晖,还得是高端一点的型号,才能在套件中心找到Docker应用,安装!

装好docker之后打开,在注册表页面搜索“homebridge”

群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

第一个就是大家普遍使用的,本人也折腾很久,奈何说明文档不是很清晰,网上教程也不是很全,都是傻瓜版本,都运气极好没有遇到出错。

所以我选择了说明文档十分清晰的第二个  oznu-homebridge  (←点击可打开作者的Github 学习说明文档,当然是全英文,顺便感谢大神的无私付出)。右击下载此图像,选最新版本latest。

然后进入漫长的下载时间,399m,挂梯子可能会快很多,而且不容易断,这货不支持断点续传的。

下载完成后进入映像菜单,群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

选择oznu之后点击最上方的启动

群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

名字就不用改了,点击高级设置--卷

群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

 

 

添加文件夹,请在自己的文件管理器中选择创建好的配置文件夹,推荐和我一样/docker/oznu     装在路径填写“/homebridge ” (并没有引号),别没事儿手欠勾上只读。。。

群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

网络菜单 勾选最下方的“使用与dockerhost 相同的网络”

 

群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

环境页按图填写:

可变:DSM_HOSTNAME

值:DiskStation

点击确定,下一步,应用,

群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

不要去除上面这个 运行容器的钩,虽然运行了并没有什么用,但是会帮你在oznu的文件夹里面生成相关文件,方便编辑。

文件夹检查生成的文件后,就可以在容器菜单里面关闭这个在运行中但是并没有什么卵用的程序了。

群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

 

 

代码部分:

我们需要编辑的就是config.json和install.sh了,将这两个文件复制到你的电脑上,桌面还是建个文件夹随你。

方便编辑,我建议各位安装一个  notepad++   用这个软件来编辑。

我们现在不管默认的是啥样子,都是实例,经过我白痴一样的测试,我就说最简单的写法了

install.sh里面:

  1. #!/bin/bash
  2. apt-get install libavahi-compat-libdnssd-dev
  3. npm install -gs homebridge-yeelight
  4. npm install -gs homebridge-synology
  5. npm install -gs homebridge-mi-acpartner miio

2好像是运行环境,我猜的,先装,345看名字就知道是yeelight,群晖还有空调伴侣了,群晖这一行其实,不要也罢,手贱碰一下就自动关机。。

虽然代码里面写了要安装,但是在运行过程中发现经常特么的不加载安装项,导致报错

比如

Error: The requested platform 'yeelight' was not registered by any plugin.

 

然而这个东西各个支持都不一样,我还是建议直接不丢install.sh,进终端自己敲代码安心,要什么装什么。

出现Error的解决办法:

这时候你需要祭出手动敲代码大法,这还是作者的说明文档里面找的

容器右键详情页面,终端机,新增小三角-通过命令启动

群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

然后可以逐条敲代码

  1. apt-get install libavahi-compat-libdnssd-dev
  2. npm install -gs homebridge-yeelight
  3. npm install -gs homebridge-synology
  4. npm install -gs homebridge-mi-acpartner miio
群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

我这里就不一一打了。

然后就是无数报错,难倒千万人的config.json了。

我强烈建议直接打开下面的网页,打开新版页面。

代码语法检测

复制原始文档到网页里面,直接在里面写,检查无误,然后复制到notepad++保存。

每错一个非常小的标点都让你抓狂。

群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

我先贴上效果,没问题不会出现黑色提示,下面我共享一下我的设置。

 

  1. {
  2. "bridge": {
  3. "name": "Homebridge",
  4. "username": "CC:22:3D:E3:CE:30",
  5. "port": 51826,
  6. "pin": "031-45-154"
  7. },
  8. "accessories": [
  9. ],
  10. "platforms": [
  11. {
  12. "platform": "yeelight",
  13. "name": "yeelight"
  14. },
  15. {
  16. "platform": "XiaoMiAcPartner",
  17. "ip": "你的网关或者空调伴侣的内网ip地址",
  18. "token": "你的网关或者空调伴侣token",
  19. "accessories": [
  20. {
  21. "name": "Ac Partner",
  22. "type": "climate",
  23. "sensorSid": "lumi.你的传感器id",
  24. "autoStart": "off"
  25. }
  26. ]
  27. },
  28. {
  29. "platform": "XiaoMiAcPartner",
  30. "ip": "你的网关或者空调伴侣的内网ip地址",
  31. "token": "你的网关或者空调伴侣token",
  32. "accessories": [
  33. {
  34. "name": "Ac Partner2",
  35. "type": "climate",
  36. "sensorSid": "lumi.你的传感器id",
  37. "autoStart": "off"
  38. }
  39. ]
  40. }
  41. ]
  42. }

可以直接复制到JSON网页中,然后左边框框的空白处双击,自动排版。

  1. "bridge": {
  2. "name": "Homebridge",
  3. "username": "CC:22:3D:E3:CE:30",
  4. "port": 51826,
  5. "pin": "031-45-154"
  6. },

上面这一段是你homebridge的mac地址,端口和pin,在规则范围内随便填,其实,我建议不改,除非你家里搞了两个。

 

  1. "platforms": [
  2. 下面是每个部件{ 被框在里面}
  3. ]  方括号总结尾

 

部件内容中,每个部件:

  1. {
  2. "platform": "yeelight",
  3. "name": "yeelight"
  4. },

上面这个是灯,管他几个灯,只要是yeelight的会自动添加。

每一个部件都需要一个“platforms”,下一行只要还有代码没有结束的括号,都需要一个英文的逗号来转行。

  1. {
  2. "platform": "XiaoMiAcPartner",
  3. "ip": "你的网关或者空调伴侣的内网ip地址",
  4. "token": "你的网关或者空调伴侣token",
  5. "accessories": [
  6. {
  7. "name": "Ac Partner",
  8. "type": "climate",
  9. "sensorSid": "lumi.你的传感器id",
  10. "autoStart": "off"
  11. }
  12. ]
  13. }

platform的解释同上,但是网关和空调伴侣是需要填写ip和token密码的。

这个需要先在米家app中添加好你的所有设备,之后再操作

添加好后点开网关或空调伴侣,右上角三个点-关于-屏幕最下面空白处点击5下。

会显示高级选项,点“网关信息”

群晖NAS Docker安装oznu homebridge, 使用Siri控制米家灯、空调-Sn1perZ

照样子把ip,token,和你需要的内容,比如温度传感器,替换填入配置文件中汉字描述部分。

官房说明文档

有兴趣慢慢找,可以自定义遥控模式,和学习红外遥控。。我不敢搞了。

 

参数 说明 示例 默认 必须
name 显示在Homekit中的名字 "AcPartner" - *
type 设置为,必须填写 "climate" - *
ip 你空调伴侣的IP地址,此处没有填写ip均使用上方全局ip设置 "192.168.31.99" -
token 你空调伴侣的token,此处没有填写token均使用上方全局token设置 "token_as_hex" -
maxTemp 设置调节温度上限 28 30
minTemp 设置调节温度下限 16 17
sync 是否与空调伴侣进行同步(false为关闭) false true
syncInterval 同步间隔(毫秒) 30000 60000
autoStart 当在关机状态下调整温度时,不会自动启动空调 "off" "on"
oscillate 开关扫风(false为关闭) false true
sensorSid 填写你的温湿度传感器ID,此温湿度传感器必须绑定在空调伴侣下(可在安卓设备下查到) "lumi.158d000156e667"

没有语法错误,设定好自己的组件部件后就可以丢到刚刚的oznu文件夹中了。

 

启动调试:

启动之后总不会一帆风顺,要么找不到设备,要么报错,显示意外停止。

意外停止肯定是配置文件语法错误了,或者是相关组建运行包没有安装。


可以进去容器的详情界面,查看日志,或者启动之后直接打开终端界面,看着它跳文字,没有问题也方便直接扫描二维码添加到手机。


报错或者少东西,会有明显的提示,日志上面找Error,终端界面红字或者黄字,慢慢来吧。