Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Objectzustände "aus dem Jenseits" tauchen auf

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Objectzustände "aus dem Jenseits" tauchen auf

    This topic has been deleted. Only users with topic management privileges can see it.
    • WolfgangD
      WolfgangD @mickym last edited by

      @mickym Das ist ein super-Tipp! Darauf bin ich nicht gekommen. Werde ich nachgehen. Danke

      mickym 1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active @WolfgangD last edited by mickym

        @wolfgangd sagte in Objectzustände "aus dem Jenseits" tauchen auf:

        @mickym Das ist ein super-Tipp! Darauf bin ich nicht gekommen. Werde ich nachgehen. Danke

        Ja das Problem ist, dass der mqtt-Adapter generell mit retain Flags nicht umgehen kann.

        Ich hab mal ein kleines Video für Dich gemacht, um das zu demonstrieren:

        mqtt Retain Fehler mit Mqtt Adapter.mp4

        Um das Video etwas zu erläutern:

        Retained Nachrichten sind ja permanente Nachrichten, die bleiben erhalten und werden automatisch zur Initialisierung beim Verbindungsaufbau an den Client gesendet.

        Mit Node-Red kannst Du das gut nachvollziehen. Wenn ich den Flow neustarte, wird die Verbindung zum mqtt-Broker getrennt und neu aufgebaut. Bei mir ist der mqtt-Broker auch ein mosquitto.

        Nun die verschiedenen Szenarien in dem Video, um zu demonstrieren, was passt und was nicht. 😉 - Der mqtt-Adapter im iobroker selbst kennt gar kein Retain - Flag und geht auch damit nicht richtig um. 😉

        1. Szene:
          Ein Boolean "false" wird an das topic test/retain mit "Retain" Flag = "wahr" geschickt. Im Adapter wird der Wert aktualisiert, da mosquitto den Wert "false" schickt.
          Dann wird der Flow neu gestartet. (Neuaufbau zum mqtt-Broker)
          Wie erwartet wird der Wert "false" beim Wiederaufbau zur Initialisierung von mosquitto gesendet. Perfekt!!! Beim mqtt-Adapter merkt man nicht. 😞
        2. Szene
          Ein Boolean "true" wird an das topic test/retain mit "Retain" Flag = "false" geschickt. Im Adapter wird der Wert aktualisiert, da mosquitto den Wert "true" schickt.
          Dann wird der Flow neu gestartet. (Neuaufbau zum mqtt-Broker)
          Nun wird der Wert "false" beim Wiederaufbau zur Initialisierung von mosquitto gesendet. Der mqtt Adapter bekommt das aber gar nicht mit, weil er keine Retain Nachrichten verarbeitet.
          Nun haben wir den Fall, dass im Adapter ein völlig falscher Wert steht, als den der von mosquitto eigentlich gesendet wird (nämlich "false", im Adapter steht aber immer noch "true").
        3. Szene
          Die einzige Möglichkeit eine "retained" Nachricht zu löschen, ist eine leere Nachricht an das topic mit Retain Flag = true zu setzen. Im mqtt-Adapter erscheint (null). Nun kann man den Datenpunkt theoretisch löschen und sollte auch nicht mehr auftauchen.
          Wird der Flow neu gestartet. (Neuaufbau zum mqtt-Broker) ....
          wird von mosquitto auch wirklich nichts mehr gesendet.

        FAZIT: mosquitto sendet Dir Nachrichten, die der mqtt-Adapter leider gar nicht erfasst.

        WolfgangD 1 Reply Last reply Reply Quote 2
        • WolfgangD
          WolfgangD @mickym last edited by

          @mickym Vielen Dank für die ausführliche Darstellung. Problem gelöst!

          1 Reply Last reply Reply Quote 0
          • RaspiUser
            RaspiUser last edited by

            ... ich habe ein ähnliches (?) Problem ...

            In den MQTT-Objekten haben sich zwischenzeitlich sehr viele "Leichen" angesammelt. Diese konnte ich über den Papierkorb löschen. Sobald ich den Adapter aber neu starte sind alle wieder da ...

            Gibt es irgendwo einen Ordner o.ä. das man alles in "einem Rutsch" endgültig löschen kann ? Oder hilft es den Adapter komplett zu löschen ?

            mickym 1 Reply Last reply Reply Quote 0
            • mickym
              mickym Most Active @RaspiUser last edited by

              @raspiuser Na ja wenn Du ein Haufen retained Nachrichten in mosquitto geschickt hast und im Prinzip nicht mehr weißt welche, dann musst Du halt die mosquitto.db löschen. Über einen Adapter neustart sind sie ja nur da, wenn sie in deinem Broker noch vorhanden sind.

              RaspiUser 1 Reply Last reply Reply Quote 0
              • RaspiUser
                RaspiUser @mickym last edited by

                @mickym said in Objectzustände "aus dem Jenseits" tauchen auf:

                die mosquitto.db löschen.

                Kannst Du mir (als LINUX Anfänger) bitte erklären wie ich das sicher mache ?
                Oder ist es sicherer den Adapter neu zu installieren ?

                mickym 1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @RaspiUser last edited by mickym

                  @raspiuser Na wenn Du die Objekte aus dem Adapter löschst - dann kommen die doch wieder - da kannst Du den Adapter 10 mal löschen. Die Objekte sind doch in Deinem Broker. Zum einen musst Du halt mal schauen, warum Du die mit dem retained flag abgespeichert hast und woher das kommt. Ansonsten wenn es nicht zuviele sind musst Du halt an alle topics an die Du retained Nachrichten geschickt hast - wie unten beschrieben leere Nachrichten mit retained=true schicken.

                  Hast Du denn mosquitto als Broker laufen?

                  RaspiUser 1 Reply Last reply Reply Quote 0
                  • RaspiUser
                    RaspiUser @mickym last edited by

                    @mickym said in Objectzustände "aus dem Jenseits" tauchen auf:

                    Hast Du denn mosquitto als Broker laufen?

                    ... so siehts aus ...
                    fef6bba9-770f-419e-9621-0bc443b1e7ff-grafik.png

                    OK ... Adapter löschen bringt nix (Ich war der naiven Meinung, dass dann auch diese mosquitto.db weg ist).
                    Und die mosquitto.db löschen muss ich dann wohl unter PuTTY, richtig ? Eine kurze Anleitung wäre hilfreich ... (und alle Topic einzeln anzugehen macht keinen Sinn, einige Geräte davon gibts nicht mehr)...

                    mickym 1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active @RaspiUser last edited by mickym

                      @raspiuser Wie gesagt in Zukunft halt aufpassen, dass Du keine retained topics mehr setzt, wenn du es nicht brauchst. Ja Du musst auf die Kommandozeile. Ob mit putty -ich nehme meist eine ssh aus meinem Windowseingabefenster. 😉 Putty braucht man heutzutage eigentlich nimmer.

                      dann

                      cd /var/lib/mosquitto
                      

                      mosquitto stoppen

                      sudo systemctl stop mosquitto
                      

                      mosquitto db löschen

                      sudo rm mosquitto.db
                      

                      mosquitto neu starten (leere db wird angelegt)

                      sudo systemctl start mosquitto
                      
                      1 Reply Last reply Reply Quote 2
                      • RaspiUser
                        RaspiUser last edited by

                        @mickym said in Objectzustände "aus dem Jenseits" tauchen auf:

                        Putty braucht man heutzutage eigentlich nimmer.

                        ... ich schon ...

                        Vielen Dank für die Kurzanleitung !! Hat alles funktioniert !!
                        Diese Info hebe ich mir auf (um sie dann bei Bedarf auch wieder zu finden)

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate
                        FAQ Cloud / IOT
                        HowTo: Node.js-Update
                        HowTo: Backup/Restore
                        Downloads
                        BLOG

                        414
                        Online

                        31.9k
                        Users

                        80.1k
                        Topics

                        1.3m
                        Posts

                        3
                        12
                        887
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo