Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. Kann im MQTT Objekte nicht löschen

    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

    Kann im MQTT Objekte nicht löschen

    This topic has been deleted. Only users with topic management privileges can see it.
    • arteck
      arteck Developer Most Active @hanss last edited by

      @hanss hast du auch in die states.json reingeschaut

      hanss 1 Reply Last reply Reply Quote 0
      • hanss
        hanss @arteck last edited by

        @arteck
        Vielen Dank für die Antwort.
        Nein, das wusste ich nicht.
        Aber jetzt traue ich mich nicht mehr, denn nachdem ich die Einträge in der object.json
        gelöscht hatte, startete mir der ioBroker nicht mehr.
        Gut, dass es mit einer Sicherungsdatei doch noch funktioniert hat.
        Wieso wird den das nicht gefixt, es gibt schon jede Menge Anwender, die mit dem
        selben Problem geplagt sind.

        1 Reply Last reply Reply Quote 1
        • capitaenz
          capitaenz last edited by

          @hanss @arteck

          Ich habe noch nicht wieder versucht den Eintrag zu löschen und zwischendurch den JS-Controller und den MQTT-Adapter auf 2.1.2 upgedatet.
          Was soll ich sagen, wie durch Geisterhand ist der "kaputte" Eintrag verschwunden!?
          Wurde der Fehler gefixt?

          VG
          Leif

          hanss 1 Reply Last reply Reply Quote 0
          • hanss
            hanss @capitaenz last edited by hanss

            @capitaenz
            Da bist Du zu beneiden.
            Hier ist mqtt Vers. 2.1.3 und JS Vers. 4.6.4 installiert,
            aber die defekten Einträge sind immer noch da und können nicht gelöscht werden.

            capitaenz 1 Reply Last reply Reply Quote 0
            • capitaenz
              capitaenz @hanss last edited by capitaenz

              @hanss Es ist nur eine Frage der Zeit, bis mich dieses Problem wieder erwischt! Ich würde auch gerne ein Ticket dazu aufmachen, weiß allerdings nicht wo... MQTT-Adapter, JS-Controller, …
              Update:
              Der Eintrag ist wieder da 👎

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

                Hallo. Bin neu im Forum bzw. mit ioBroker aktiv.

                Habe jetzt schon einiges laufen und wolle bevor ich weitermache diversen Müll aus meiner Testphase löschen. Ich habe mehrere Wemos D1 Mini eingebunden welche ich mit ESPEasy geflasht habe. Später habe ich dann SYSNAME, TSKNAME und NAME umbenannt oder die ge-publishted Topics geändert. Im MQTT habe ich nun den Datenmüll der alten Bezeichnungen. Da ich automatisch die Datenobjekte anlege konnte ich den kompletten MQTT Ordner löschen. Beim Neustart des Adpters ist aber wieder alles da. Finde die Einträge in "states.json" und "objects.json" aber wenn ich das hier lese ist mir das zu heiss das von Hand zu löschen. Habt ihr ne idee was ich noch machen könnte?

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

                  @Moppedman

                  Bislang fehlte mir der Antrieb um gewissenhaft folgendes auszuprobieren:

                  @capitaenz said in Kann im MQTT Objekte nicht löschen:

                  @arteck

                  Danke für den Hinweis.
                  Die einzelnen Objekte werden offensichtlich immer mit einem

                  }},
                  

                  geschlossen, sehe ich das richtig?
                  Also lösche ich folgendes?

                  "mqtt.0.Tasmota\u0001\u0000_.Tasmota_RGBW_Controller_Wohnzim":{"common":{"name":"/Tasmota/Tasmota_RGBW_Controller_Wohnzim","write":true,"read":true,"role":"variable","desc":"mqtt server variable","type":"string"},"native":{"topic":"/Tasmota\u0001\u0000*/Tasmota_RGBW_Controller_Wohnzim"},"type":"state","from":"system.adapter.mqtt.0","user":"system.user.admin","ts":1586980682159,"_id":"mqtt.0.Tasmota\u0001\u0000_.Tasmota_RGBW_Controller_Wohnzim","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}},
                  

                  Hier die Einträge davor und dahinter:

                  _per_Telegram"},"type":"state","from":"system.adapter.javascript.0","user":"system.user.admin","ts":1586863470377,"acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}},"mqtt.0.Tasmota\u0001\u0000_.Tasmota_RGBW_Controller_Wohnzim":{"common":{"name":"/Tasmota/Tasmota_RGBW_Controller_Wohnzim","write":true,"read":true,"role":"variable","desc":"mqtt server variable","type":"string"},"native":{"topic":"/Tasmota\u0001\u0000*/Tasmota_RGBW_Controller_Wohnzim"},"type":"state","from":"system.adapter.mqtt.0","user":"system.user.admin","ts":1586980682159,"_id":"mqtt.0.Tasmota\u0001\u0000_.Tasmota_RGBW_Controller_Wohnzim","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}},"hm-rpc.0.LEQ062
                  

                  Ist es geplant diesen Fehler in Zukunft zu beseitigen und ist dieser bekannt?
                  Danke und VG
                  Leif

                  Bei dir wird es eine ähnliche Struktur haben.

                  Ich müsste dann, wenn ich es richtig verstanden habe, folgendes entfernen:

                  mqtt.JPG

                  Ich würde ein Backup anlegen, den ioBroker stoppen und die Einträge aus "states.json" und "objects.json" entfernen.
                  Nur lohnt die Arbeit? Vor dem Problem wird man ja öfter stehen und dann immer so umständlich vorgehen?
                  Ich bin mir halt nicht sicher wo man jetzt ein Ticket eröffnen muss, beim Entwickler des MQTT-Adapters, des JS-Controllers, …

                  VG
                  Leif

                  Moppedman 1 Reply Last reply Reply Quote 0
                  • Moppedman
                    Moppedman @capitaenz last edited by

                    @capitaenz

                    Danke erst mal für die schnelle erste Antwort. Habe ich nicht mit gerechnet. Habe mir nun eine Sicherung erstellt und zusätzlich auch ein Image der SD Karte gemacht.

                    Bevor ich jetzt anfange zwei Verständisfragen.

                    c827905b-dcbe-4bab-a504-85b1a07df0e5-grafik.png

                    Es gibt je eine "states.json.bak" bzw. "objects.jason.bak" in "iobroker-data" was meine Erachtens Sicherungsdateien sein sollten UND noch einen Unterordner "backup-objects" unter "iobroker-data" in dem noch weitere Kopien liegen. Kannst du mir erklären wie das ioBroker verwendet? Weist du aus welcher Datei er beim Start von mqtt seine objekte zieht? Habe Sorge das er ggf. die bak verwendet und von dort automatisch zurückspielt und die Arbeit umsonst wäre

                    Und die Zweite Frage

                    5b6ec0fa-b26a-4b19-832c-81ff1a47dab6-grafik.png

                    Ich habe kein zwei }} Klammer die einen Datensatz beenden. Würdest du zustimmen das der markierte Bereich einen Datensatz darstellt. Ich würde dann

                    1. mqtt im iobroker anhalten
                    2. Alle objekte im mqtt adapter löschen
                    3. iobroker in der shell stoppen
                    4. Datensatz in "objects.json" und parallel in "states.json" löschen
                    5. iobroker rebooten
                    6. schauen ob die datensätzen nun endlich weg sind.

                    Gruß Ralf

                    capitaenz Moppedman 2 Replies Last reply Reply Quote 0
                    • capitaenz
                      capitaenz @Moppedman last edited by capitaenz

                      @Moppedman
                      Ich bin (auch nur) interessierter Anwender und kann leider keine weiteren technischen Infos liefern.
                      Aber ich würde auch annehmen, dass der von dir markierte Bereich gelöscht werden muss.
                      Schalte dich doch mit z.B. WinSCP drauf und lade dir die editierte Datei herunter, dann war die Arbeit nicht umsonst, wenn diese wiederhergestellt werden sollte.
                      Und denk dran, Backup, Backup, Backup!

                      1 Reply Last reply Reply Quote 0
                      • Moppedman
                        Moppedman @Moppedman last edited by Moppedman

                        @arteck

                        Darf ich dich mal bitten einen Blick auf meinen Fall zu werfen. Wie oben geschrieben habe ich durch mein Ausprobieren mit ESPEasy / Wemos D1 mini 8266 diverse Objekte als Restmüll in den MQTT Objekten stehen. Ich habe die beim Testen umbenannt und/oder die Daten die vom 8266 gepublished werden, geändert. Bei jeder Namesänderung z.B. wurde unter dem neuen Namen ein neues Objekt angelegt und nicht das alte Objekt überschrieben. Löschen hilft nicht, sie kommen wieder. Schaue ich in "states.json" und "objects.json" finde ich darin die alten und neuen Bezeichnungen. Gemeinsam haben die verschiedenen Namen die fest zugewiesene IP-Adresse vom Router.

                        Ich habe heute nun mal einen Sensor in beiden Dateien gelöscht der aber nach Starten des MQTT adapters wieder da war. Daher die Frage wie ioBroker mit den angelegten Datensicherungen "states.json.bak" und "objects.json.bak" umgeht. Bzw was ist mit den anderen Sicherungen in dem Ordner "/opt/iobroker/backup-objects". Welche Datei benutzt das System beim Start?

                        Ich habe folgendes gemacht.

                        1. mqtt im iobroker angehalten
                        2. Alle objekte im mqtt adapter gelöscht
                        3. iobroker in der shell gestoppt
                        4. Datensatz in "objects.json" und parallel in "states.json" gelöscht
                        5. iobroker reboot

                        Wie wäre die richtige Reihenfolge bzw. was fehlt das ich die Einträge endgültig gelöscht kriege.

                        Gruß und Dank

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

                          DIe die diese Namensprobleme haben ... welche js.controller version ist im Einsatz?

                          capitaenz 1 Reply Last reply Reply Quote 1
                          • capitaenz
                            capitaenz @apollon77 last edited by

                            @apollon77
                            Nutze Version 3.1.6

                            VG
                            Leif

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

                              Ahhh ok, habs verstanden

                              capitaenz 1 Reply Last reply Reply Quote 1
                              • capitaenz
                                capitaenz @apollon77 last edited by

                                @apollon77 Also den Fehler gefunden? Das würde mich echt freuen! 😀
                                Und übrigens: Danke, dass du dich dem Problem annimmst!

                                apollon77 1 Reply Last reply Reply Quote 0
                                • apollon77
                                  apollon77 @capitaenz last edited by

                                  @capitaenz Ne so wirklich gefunden wäre übertrieben ... aber am Ende ist klar was man ändern muss ... unerlaubte Zeichen müssen au den IDs raus ...

                                  hanss 1 Reply Last reply Reply Quote 0
                                  • hanss
                                    hanss @apollon77 last edited by

                                    @apollon77
                                    vielen Dank.
                                    Ideal wäre natürlich, wenn solche unerwünschten Einträge erst gar nicht entstehen würden,
                                    aber diese Ursache zu finden ist natürlich sehr schwierig.

                                    apollon77 1 Reply Last reply Reply Quote 0
                                    • apollon77
                                      apollon77 @hanss last edited by

                                      @hanss Zur Ursache: Wenn man es schafft das verhalten zu reproduzieren dann könnte man das mit einem Debug log dann mal dokumentieren

                                      capitaenz 1 Reply Last reply Reply Quote 0
                                      • capitaenz
                                        capitaenz @apollon77 last edited by

                                        @apollon77 Wenn man jetzt genau wüsste, welches die unerlaubten Zeichen sind, dann könnte man doch veranlassen, z.B. ein Gerät mit Tasmota ein Objekt damit zu erstellen.
                                        Was müsste dann genau geloggt werden? Den MQTT-Adapter auf Debug stellen würde reichen?

                                        hanss 1 Reply Last reply Reply Quote 0
                                        • hanss
                                          hanss @capitaenz last edited by hanss

                                          @capitaenz @apollon77
                                          Ich meine, die Fehlervermeidung müsste weiter unten erfolgen, beim QOS, Prüfsumme, fehlerhafte MQTT Datenpakete erkennen usw..
                                          Wenn MQTT mit fehlerhaften Datenpaketen weiter arbeitet, kann ja alles mögliche passieren, nicht nur diese unerwünschten Objekte.

                                          Was bisher aufgefallen ist:
                                          Diese verstümmelten Objekte hatten immer eine Ähnlichkeit mit bestehenden Objekten.
                                          Evtl. auch Störungen im WLAN oder js.controller (hohe Auslastung, Speicher Überlauf etc.) als Ursache

                                          apollon77 1 Reply Last reply Reply Quote 0
                                          • apollon77
                                            apollon77 @hanss last edited by

                                            @hanss Es klingt auf jeden Fall danach das irgendwie "garbage" über die Leitung kommt ...

                                            Ich würde also erstmal hingehen und versuchen solche IDs zu erkennen und zu ignorieren und das zu loggen. Dann sehen wir ob plötzlich was anderes nicht tut

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            552
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            mqtt error
                                            16
                                            80
                                            7921
                                            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