Yeni: Yapay zekâ güvenlik duvarı tüm platformu izliyor ve her olayı sade bir dille açıklıyor. Nasıl çalıştığını görün

Yanıt: Ağ geçidi çevrimdışı olursa Hermetry QoS 1 mesajlarımı tutar mı, yoksa kendi tamponuma mı ihtiyacım var?

Yapay zekâ tarafından English dilinden çevrildi ·

Kevin haklı, ama bu işin yarısı. Bir rüzgar sahasında aynı sorunla karşılaştık.Hermetry’nin MQTT sürümü 3.1.1 ve clean session değeri false olan bir CONNECT, temiz oturum olarak işleniyor. Çevrimdışıyken bir cihaz için kalıcı olarak gönderilmiş komutlar dışında hiçbir şey kuyruğa alınmıyor. Dolayısıyla telemetri için her iki yönde de devam ettirilecek bir oturum durumu yok.Hermetry’nin verdiği garanti gelen yön için geçerli: PUBACK, mesaj kendi tarafında güvenle kuyruğa alındıktan sonra gönderiliyor. Kuyruğa alınamazsa PUBACK gelmez, oturum kapanır ve istemcinin yeniden bağlandıktan sonra tekrar göndermesi bekleniyor. Aynı cihaz, anahtar ve zaman damgasına sahip yinelenen mesajlar bir kez saklanıyor, bu yüzden yeniden gönderim güvenli.Dolayısıyla tampon sizin sorumluluğunuzda ve izlenecek desen şu:

  1. Her okumayı, kendi ts değeri ms cinsinden olacak şekilde yerel bir depoya yazın (biz bir SQLite dosyası kullanıyoruz).
  2. Depodan yayınlayın ve bir satırı yalnızca PUBACK’i geldiğinde silin.
  3. Yeniden bağlandıktan sonra: abone olun, paylaşılan öznitelikleri isteyin, ardından canlı veriden önce birikmiş verileri gönderin.

Birikmiş verileri, doğru zamanlarda görünmesi için {ts, values} dizileri halinde gönderin. Profilde, tüm kayıtları bir dakikadan eski olan mesajlar için ayrı bir Saniyede yeniden oynatılan mesaj sınırı var, bu yüzden uzun bir birikim bir süre içinde boşalır. Hepsi aynı anda görünmezse panik yapmayın.Onay bölümü için MQTT sayfası bir kez okunmaya değer.

If it isn't logged, it didn't happen.
Kabul edilen çözüm♥ 2