Tasmota gửi cảnh báo quaTelegram
Trong bài này xin chia sẻ bản firmware tasmota/tasmota32 có hỗ trợ tính năng gửi tin nhắn cảnh báo qua Telegram mà không cần thiết bị trung gian (như Home Assistant/Domoticz).
1. Chuẩn bị
Trước tiên bạn cần tham khảo cách tạo Telegram Bot, lấy BotToken và chatID ở đây Hướng dẫn cài đăt digiC gửi cảnh báo qua telegram.
Cách flash firmware Tasmota cho thiết bị Sonoff Basic, Sonoff Dual-R3 , cũng như cách cấu hình cơ bản cho thiết bị Tasmota/Tasmota32.
2. Firmware Tasmota hỗ trợ TELEGRAM
- tasmota.bin cho các thiết bị ESP8266 như Sonoff basic, Sonoff TH
- tamota32-bluetooth.bin cho Sonoff Dual R3
3. Cấu hình gửi cảnh báo
Thiết bị demo trong hướng dẫn này là Sonoff TH16 chạy Tasmota version 13.1.0.4 có gắn cảm biến nhiệt chống nước DS18B20 cũng của Sonoff.
Yêu cầu tình huống
- Khi thiết bị khởi động sẽ gửi tin nhắn telegram báo địa chỉ IP thiết bị.
- Khi nhiệt độ cao trên 29 độ C, Relay trên thiết bị bật ON, tin telegram cảnh báo quá nhiệt gửi, và nếu nhiệt độ vẫn duy trì trên 29 độ C thì cứ 5 phút sẽ gửi tin nhắc cho đến khi nhiệt độ xuống dưới 29 độ C (Relay OFF và gửi tin báo nhiệt độ trở về bình thường).
Sử dụng Rule trên Tasmota để bắt sự kiện, đọc giá trị cảm biến và gửi tin nhắn telegram, có kết hợp timer tính thời gian để gửi lặp tin nhắn sau 5 phút.
Kiểm tra phiên bản tasmota có hỗ trợ Telegram
THỰC HIỆN
- Cấu hình Telegram
Nhập thông số botToken, chatID ở bước 1 và vài tham số ở màn hình Console
tmtoken botToken
tmchatid chatID
tmstate 1
tmstate 3
tmstate 5
SetOption132 1
Gõ tuần tự từng dòng lệnh, sau đó dùng lệnh TmSend Test nếu nhận được tin nhắn Telegram thì bước cấu hình Telegram đã OK.
- Cấu hình Rule để bắt sự thay đổi các giá trị và gửi telegram
Rule1
RULE1
on Info2#IPAddress do var4 %value% endon
ON system#boot DO Backlog DhtDelay 500,40;var1 29; var2 29; var3 29; TMSEND ✔️ System Reboot IPAddress %var4% ENDON
ON DS18B20#Temperature>%var1% DO Backlog var1 999; var2 29; Power1 1; var3 %value%; Backlog TMSEND 🆘♨️♨️♨️ ALARM Temperature over 29 C degree (5min update); rule2 1 ENDON
ON DS18B20#Temperature<%var2% DO Backlog var2 -999; var1 29; Power1 0; TMSEND ✔️❄❄❄ Reset Temperature under 29 C degree; rule2 0 ENDON
Rule 2
RULE2
ON Time#Minute|5 DO Backlog TMSEND 🆘♨️♨️♨️ ALARM Temperature over 29 C degree (%var3%) ENDON
N DS18B20#Temperature>29 DO Backlog var3 %value% ENDON
Bật kích hoạt Rule 1
Rule 1 ON
Copy và thực hiện tuần tự các lệnh tạo Rule1, Rule2 và kích hoạt Rule1 vào màn hình Console của Tasmota. Bạn có thể thay đổi ngưỡng nhiệt độ từ 29 độ C thành giá trị bạn mong muốn.
Cấu hình xong bạn khởi động lại Thiết bị Tasmota và kiểm tra các tình huống cảm biến nhiệt độ và xem kết quả.