- 安裝 mqtt 客戶端
- sudo apt install mosquitto mosquitto-clients
- 驗證安裝
- sudo systemctl is-enabled mosquitto
- sudo systemctl status mosquitto
- 測試
- sudo mosquitto_sub -h localhost -t test
- 新開一個終端並輸入
- sudo mosquitto_pub -h localhost -t test -m "Hello from terminal 2"
- 設置用戶 yhkz 及密碼
- sudo mosquitto_passwd -c /etc/mosquitto/.passwd yhkz
- 新建配置
- sudo nano /etc/mosquitto/conf.d/auth.conf
- 加入下面配置文件,ctrl+x 保存退出
- listener 1883
- allow_anonymous false
- password_file /etc/mosquitto/.passwd
- 重啟服務
- sudo systemctl restart mosquitto
- 使用用戶密碼測試發送消息
- sudo mosquitto_sub -h localhost -t test -u "yhkz" -P "p4ssw0rd"
- sudo mosquitto_pub -h localhost -t "test" -m "Hello - enabled auth" -u "yhkz" -P "p4ssw0rd"
- 編輯定時任務
- crontab -e
- 1-59/1 * * * * mosquitto_pub -h 192.168.5.250 -u yhkz -P yh -t pve/temp -m
sensors | grep -E 'id 0' | cut -c17-20
- hass 中配置文件添加如下配置
- mqtt:
- sensor:
-
- name: cputemp
- icon: 'mdi'
- state_topic: 'pve/temp'
- device_class: temperature
- unit_of_measurement: "°C"
- homeassistant/config/packages 添加 cpu.yaml,複製上面內容
集成添加設備 MQTT,配置 IP,用戶及密碼
擴展:發送硬盤溫度
1-59/1 * * * * mosquitto_pub -h 192.168.5.250 -u yhkz -P yh -t hdd/temp -m "hddtemp /dev/sdb | grep -E 'HUS726040ALE610' | cut -c33-35"