MQTT - wiederholtes Empfangen gleicher Messages

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • MarkusCosi
    LoxBus Spammer
    • 28.09.2023
    • 201

    MQTT - wiederholtes Empfangen gleicher Messages

    Hallo zusammen,

    bei einem ESP32 Projekt (hier) bin ich auf ein Problem gestoßen welches vllt. mit dem MQTT Broker auf dem Loxberry zu tun hat.
    So ganz sicher bin ich mir nicht, da ich mich zugegebenermaßen nicht sonderlich gut mit MQTT auskenne.

    ich versuche in dem Projekt über die Bibliothek <PubSubClient.h> an meinen Miniserver die Info zu schicken ob aktuell von meinem iPhone ein Anruf klingelt (eingeht, incoming call) und eine Info wenn dieser zu Ende geht bzw. nicht angenommen wird.

    Zumindest die Info zu Anrufer-Name wollte ich also per MQTT an den Miniserver schicken. Leider funktioniert das aus einem mir nicht erklärlichen Grund immer nur genau 1 mal (beobachtet im MQTT Explorer), dann nicht wieder. Und das obwohl das Programm weiter die Anrufe registriert (das sehe ich an den Ausgaben im Serial Monitor des Arduino IDE) und zu der entsprechenden Befehlszeile die den publish zuvor erfolgreich ausgelöst hat kommt (ohne diesen scheinbar jedoch erfolgreich auszulösen?).
    Hat jemand eine Idee woran das liegen könne? Liegt das an den inhaltlich immer gleichen Messages und dem QoS=0 der MQTT Bibliothek die ich beim ESP32 verwende?

    Den Zustand (1/0) würde ich andererseits auch gerne ohne Umwege direkt an einen Schalter des Miniserver schicken, i.e. per http (hier?). Falls hierzu jemand einen Tipp hat wäre ich auch hierfür dankbar!

    Vielen Dank!
  • Prof.Mobilux
    Supermoderator
    • 25.08.2015
    • 4686

    #2
    Das MQTT Gateway überträgt nur, wenn sich ein Wert ändert.
    🇺🇦 Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine


    LoxBerry - Beyond the Limits

    Kommentar

    • hismastersvoice
      Supermoderator
      • 25.08.2015
      • 7246

      #3
      Das ist kein Fehler sondern so gewollt um den MiniServer Traffic zu minimieren.
      Du kannst aber einfach den Cache abschalten, dann wird jedes mal wenn wenn eine MQTT Nachricht kommt gesendet.

      Klicke auf die Grafik für eine vergrößerte Ansicht

Name: image.png
Ansichten: 105
Größe: 114,8 KB
ID: 441395
      Kein Support per PN!

      Kommentar

      • MarkusCosi
        LoxBus Spammer
        • 28.09.2023
        • 201

        #4
        perfekt, das werd ich mal ausprobieren! Ich hatte schon vermutet, dass es irgendwie so etwas sein müsste und gehofft hier erleuchtet zu werden .

        Danke nochmals, ich werd berichten!

        Die Nachrichten sollten nämlich eigentlich zwischen „0“ und „1“ wechseln. Also durchaus ständig die gleichen Nachrichten, aber eben in der Folge immer abwechselnd. (siehe code im verlinkten use-case der iPhone call detection)

        Kommentar

        • MarkusCosi
          LoxBus Spammer
          • 28.09.2023
          • 201

          #5
          Hallo zusammen,

          leider klappt es nach wie vor nicht. Ich sehe stets den Ersten Anruf mit den entsprechenden zwei Messages "(1)" und "(0)". Weitere Anrufe bzw. Aufrufe des MQTT publish Befehls erzeugen dann jedoch keine Message mehr bis wieder ein paar Stunden vergangen sind.

          Auf der anderen Seite funktioniert es tadellos über den Webservice und einem Schalter direkt an Loxone, siehe hier.

          Hat noch jemand eine Idee woran es liegen könnte? Danke

          Kommentar

          • Christian Fenzl
            Lebende Foren Legende
            • 31.08.2015
            • 11226

            #6
            Ist der Eingang als Analogwert (Als Digitsleingang verwenden: NEIN) konfiguriert?

            Screenshots sind da immer sehr hilfreich.
            Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

            Kommentar

            Lädt...