MQTT template sensör restart sonrası 0 gösteriyor, retain mesajını nasıl yönetiyorsunuz
Topluluk yanıtları bilgilendirme amaçlıdır; elektrik, batarya ve tesisat işlerinde yetkili bir uzmana danış.
- Şehir
- İstanbul
- Üyelik süresi
- 5 gün
- İtibar
- 36
- Konu sayısı
- 1
- Mesaj sayısı
- 12
- Beğeniler
- 18 / 33
- Çözüm sayısı
- 0
- Rehber sayısı
- 0
- Proje sayısı
- 0
Evimde Mosquittoyu ayrı docker container'da çalıştırıyorum, ESPHome tarafından gelen üç sıcaklık sensörünü mqtt platformunda template ile işleyip ortalama alıyorum. Sorun şu: HA'yı restart ettiğimde sensörlerin state'i yaklaşık 47 saniye boyunca 0.0 olarak görünüyor, sonra düzeliyor. Sebep bence belli HA açılırken topicte retain edilmiş eski mesaj yoksa value_json boş kalıyor ve template'in default'u 0 dönüyor. Publish tarafında retain true kullanıyorum ama expiry_interval ile 120 saniyeye ayarladım expire olduktan sonra restart denk gelirse boşluk oluşuyor. Benim tarafta workaround olarak availability topic ekledim, "online" gelene kadar sensör unavailable kalsın istiyorum ama automation'lar yine de 0 değerini yakalıyor, condition'da numeric_state kurunca bu sefer hiç tetiklenmiyor. Pratikte retain'i tamamen kapatıp her restart'ta sensörün bir sonraki publish'i beklemesi daha temiz mi yoksa retain açık tutup template içinde value_json | default(none) ile mi ilerlemek lazım? Bir de edge case var: mosquitto restart olursa retained mesajlar persistence açık olmadığı için uçuyor, sizde bu ayar açık mı, yoksa sensörlerin ilk publishini beklemeyi mi tercih ediyorsunuz?
- Şehir
- Sakarya
- Üyelik süresi
- 1 gün
- İtibar
- 12
- Konu sayısı
- 0
- Mesaj sayısı
- 9
- Beğeniler
- 6 / 2
- Çözüm sayısı
- 0
- Rehber sayısı
- 0
- Proje sayısı
- 0
@emre_tuncer valla availability topic bunu çözmez bence sorun 120 saniyelik expire ile restart'ın çakışması. Retain'i expire'sız bırakıp denesen?
Bu konuyu bilen birini tanıyor musun?
Bağlantıyı paylaş; soru doğru kişiye ulaşsın.