我前几天有点儿犯懒了。。。借回复补充些细节
其实作者已经考虑的非常周到、也做的非常周到了,我们作为使用者,需要做的已经差不多是最少的了。
只需要手动启动一次、编辑两个配置文件就可以了,大部分工作(包括配置),脚本都可以自动完成。
首先,安装,包括依赖包:
- 树莓派系统安装、网络配置就略过去了。。。
- sudo apt-get install pi-bluetooth #这个是蓝牙基本包,必须的
- 然后是mosquitto,作者强调要从官方mosquitto.org获取最新的:
# 获取 repo key密钥
wget http://repo.mosquitto.org/debian/mosquitto-repo.gpg.key
#add repo 添加到系统
sudo apt-key add mosquitto-repo.gpg.key
#download appropriate lists file下载列表文件
cd /etc/apt/sources.list.d/
sudo wget http://repo.mosquitto.org/debian/mosquitto-buster.list
#update caches and install刷新安装
apt-cache search mosquitto
sudo apt-get update
sudo apt-get install -f libmosquitto-dev mosquitto mosquitto-clients libmosquitto1
然后,是安装monitor自身,熟悉github的朋友对这些操作都不陌生:
#install git
cd ~
sudo apt-get install git
#clone this repo
git clone git://github.com/andrewjfreyer/monitor
#enter `monitor` directory
cd monitor/
初次运行,其实就是完成配置工作:
sudo bash monitor.sh
当然,也可以给这个脚本赋予可执行权限,省去前面的bash。
如果还缺什么依赖包,会有提示,按提示补充安装。
第一次运行,脚本会在当前目录里生成默认的配置文件,一般只需要更改其中的两个:
- mqtt_preferences,这个内容包括mqtt服务器地址、端口和账号啥的,根据自己的情况填进去就行了。另外就是mqtt消息的主题和当前这台树莓派的识别信息(别忘了,这是一个分布式的工具,可以有好几台树莓派协同工作)。比如我的配置就这么几行:
# IP ADDRESS OF MQTT BROKER 服务器地址
mqtt_address=192.168.1.1
<blockquote>
其他用户名密码需要的话自己填上
- known_static_addresses 这个文件很简单,就是填入你的蓝牙设备的mac地址和名称:
xx:xx:xx:xx:xx:xx myphone
aa:bb:cc:dd:ee:ff anotherphone
前面是mac地址,后面是名称,根据自己喜好修改,最好都用字母数字等英文符号,中间用空格分隔
然后就可以了,绝大多数情况下就需要这么多,剩下的脚本会解决一切(包括自动生成unit文件、开机自动启动等等)。
等等等等,这只是monitor这头儿的事情结束了,HA那边也需要匹配的设置才行:
首先是配置传感器,缩进自己注意,door、myphone、anotherphone这些,根据自己喜好修改,要和前面匹配才行:
- platform: mqtt
state_topic: 'monitor/door/myphone'
value_template: '{{ value_json.confidence }}'
unit_of_measurement: '%'
name: 'myphone'
- platform: mqtt
state_topic: 'monitor/door/anotherphone'
value_template: '{{ value_json.confidence }}'
unit_of_measurement: '%'
name: 'anotherphone'
为了更方便,可以使用min_max取最大值,意思是只要有一个人回家,就算“家里有人”:
- platform: min_max
name: "HomeCFDC"
type: max
round_digits: 0
entity_ids:
- sensor.myphone
- sensor.anotherphone
名字HomeCFDC自己随便起,主要是自动化里要用。
怎么样?不算复杂吧?关键是好使啊!
|