Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. MQTT Broker empfängt Daten, sendet aber nicht an Client

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    323

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

MQTT Broker empfängt Daten, sendet aber nicht an Client

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
31 Beiträge 5 Kommentatoren 3.6k Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • G GiMichael

    @marc-berg

    Trace OUtput habe ich gefunden. Loglevel? Meinst Du das hier?

    f6ea5e0f-fd8f-4822-8465-c51bf0f355fd-grafik.png

    Sehe auch gerade, dass die Verbindung nicht aufgebaut wird? Ist das normal, Werte kommen vom Client weiterhin an
    8c47b33d-8a19-4a62-bf6b-1d560ed77fab-grafik.png

    Anbei die Einstellungen
    609a4038-ae4e-40ef-b4e6-2dcb73e89eec-grafik.png

    963ec4de-66fd-4a85-bece-5103054435a2-grafik.png

    Interpretiere ich es richtig, dass der Broker keine Infos über solaranzeige/anzeige/1/heizen-mit-klimaanlage-aktiv schickt? Erkenne jedenfalls nichts im Log

    2022-08-23 10:17:01.514 - info: mqtt.0 (28518) Client [] connected with secret 1661242621513_1007
    2022-08-23 10:17:01.516 - debug: mqtt.0 (28518) Client [] with keepalive 60 set timeout to 90 seconds
    2022-08-23 10:17:01.520 - debug: mqtt.0 (28518) Client [] received subscribe package {"cmd":"subscribe","retain":false,"qos":1,"dup":false,"length":29,"topic":null,"payload":null,"subscriptions":[{"topic":"solaranzeige/anzeige/1/#","qos":0}],"messageId":1}
    2022-08-23 10:17:01.521 - debug: mqtt.0 (28518) Client [] Handle subscribe: {"topic":"solaranzeige/anzeige/1/#","qos":0}
    2022-08-23 10:17:01.521 - info: mqtt.0 (28518) Client [] subscribes on "solaranzeige/anzeige/1/#" with regex /^solaranzeige.anzeige.1(..)?/
    2022-08-23 10:17:01.522 - info: mqtt.0 (28518) Client [] subscribes on "solaranzeige/anzeige/1/#" with regex /^mqtt.0.solaranzeige.anzeige.1(..
    )?/
    2022-08-23 10:17:01.527 - debug: mqtt.0 (28518) Client [] received subscribe package {"cmd":"subscribe","retain":false,"qos":1,"dup":false,"length":28,"topic":null,"payload":null,"subscriptions":[{"topic":"solaranzeige/befehl/1/#","qos":0}],"messageId":2}
    2022-08-23 10:17:01.528 - debug: mqtt.0 (28518) Client [] Handle subscribe: {"topic":"solaranzeige/befehl/1/#","qos":0}
    2022-08-23 10:17:01.529 - info: mqtt.0 (28518) Client [] subscribes on "solaranzeige/befehl/1/#" with regex /^solaranzeige.befehl.1(..)?/
    2022-08-23 10:17:01.530 - info: mqtt.0 (28518) Client [] subscribes on "solaranzeige/befehl/1/#" with regex /^mqtt.0.solaranzeige.befehl.1(..
    )?/
    2022-08-23 10:17:01.722 - info: mqtt.0 (28518) Client [] publishOnSubscribe send all known states
    2022-08-23 10:17:01.731 - info: mqtt.0 (28518) Client [] publishOnSubscribe send all known states
    2022-08-23 10:17:04.155 - debug: mqtt.0 (28518) Client [] received publish package {"cmd":"publish","retain":false,"qos":0,"dup":false,"length":38,"topic":"solaranzeige/1/i_heizung_warmwasser","payload":{"type":"Buffer","data":[48]}}
    2022-08-23 10:17:04.156 - debug: mqtt.0 (28518) Server received "solaranzeige/1/i_heizung_warmwasser" (number): 0

    Marc BergM Offline
    Marc BergM Offline
    Marc Berg
    Most Active
    schrieb am zuletzt editiert von
    #10

    @gimichael
    ich würde sagen, hier fehlt ein ".*", oder?

    4037e5a7-a25b-476d-9159-c8e9b4bb4140-grafik.png

    NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+EMQX+Grafana

    Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

    Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

    G 1 Antwort Letzte Antwort
    0
    • Marc BergM Marc Berg

      @gimichael
      ich würde sagen, hier fehlt ein ".*", oder?

      4037e5a7-a25b-476d-9159-c8e9b4bb4140-grafik.png

      G Offline
      G Offline
      GiMichael
      schrieb am zuletzt editiert von
      #11

      @marc-berg
      Steht als Hilfe ja auch so drunter. Wird laut Protokoll nun gesendet. Muss nur noch schauen, ob es richtig ankommt.

      a11cb8de-964f-40b3-a3a0-0963b004a307-grafik.png

      Allerbesten Dank.

      Marc BergM 1 Antwort Letzte Antwort
      0
      • G GiMichael

        @marc-berg
        Steht als Hilfe ja auch so drunter. Wird laut Protokoll nun gesendet. Muss nur noch schauen, ob es richtig ankommt.

        a11cb8de-964f-40b3-a3a0-0963b004a307-grafik.png

        Allerbesten Dank.

        Marc BergM Offline
        Marc BergM Offline
        Marc Berg
        Most Active
        schrieb am zuletzt editiert von Marc Berg
        #12

        @gimichael
        Soviel ich weiß, wird die Verbindung nur grün, solange ein Client verbunden ist. Kann ich hier aber nicht testen, da ich den Adapter nicht installiert habe:

        e8d1a606-280a-46eb-b5e1-6b3136ad5535-grafik.png

        Es könnte aber auch daran liegen, dass Dein Client keinen Namen mitgibt:

        f8972bab-593a-4bb7-a861-5a0099a30091-grafik.png

        NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+EMQX+Grafana

        Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

        Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

        G 1 Antwort Letzte Antwort
        0
        • Marc BergM Marc Berg

          @gimichael
          Soviel ich weiß, wird die Verbindung nur grün, solange ein Client verbunden ist. Kann ich hier aber nicht testen, da ich den Adapter nicht installiert habe:

          e8d1a606-280a-46eb-b5e1-6b3136ad5535-grafik.png

          Es könnte aber auch daran liegen, dass Dein Client keinen Namen mitgibt:

          f8972bab-593a-4bb7-a861-5a0099a30091-grafik.png

          G Offline
          G Offline
          GiMichael
          schrieb am zuletzt editiert von
          #13

          @marc-berg Nochmal Danke.

          Gut zu wissen, muss ich mal beim Client schauen, warum da kein Name angegeben wird. Allerdings landet der Datenpunkt heizen-mit-klimaanlage-aktiv jetzt beim Client. Scheint jetzt zu funktionieren und ich kann mein Projekt weitermachen und weitere Datenpunkte übertragen.

          1 Antwort Letzte Antwort
          1
          • mickymM mickym

            @bananajoe Selbstverständlich kann man die Datenpunkte im MQTT Adapter einfach anlegen - habe ich immer so gemacht und das funktioniert auch.

            haus-automatisierungH Offline
            haus-automatisierungH Offline
            haus-automatisierung
            Developer Most Active
            schrieb am zuletzt editiert von
            #14

            @mickym sagte in MQTT Broker empfängt Daten, sendet aber nicht an Client:

            @bananajoe Selbstverständlich kann man die Datenpunkte im MQTT Adapter einfach anlegen - habe ich immer so gemacht und das funktioniert auch.

            Wenn Du das native-Attribut für das topic richtig setzt geht das - ja.

            Beispiel:

            {
              "_id": "mqtt.0.service.weather.forecast.temperature.today",
              "common": {
                "name": "service/weather/forecast/temperature/today",
                "write": true,
                "read": true,
                "role": "variable",
                "desc": "mqtt client variable",
                "type": "string"
              },
              "native": {
                "topic": "service/weather/forecast/temperature/today"
              },
              "type": "state",
              "from": "system.adapter.mqtt.0",
              "user": "system.user.admin",
              "ts": 1657460180836,
              "acl": {
                "object": 1636,
                "state": 1636,
                "owner": "system.user.admin",
                "ownerGroup": "system.group.administrator"
              }
            }
            

            Würde ich aber nicht unbedingt empfehlen. Lieber einfach eine Nachricht senden und automatisch anlegen lassen.

            🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
            🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
            📚 Meine inoffizielle ioBroker Dokumentation

            mickymM 1 Antwort Letzte Antwort
            0
            • BananaJoeB BananaJoe

              @mickym da muss ich zugeben das dies eben sogar funktioniert hat - wenn ich ein komplett neues Topic erstellt habe.
              Er stellt dann das im Adapter eingestellte Präfix voran.

              Wenn ich aber bei einem vorhandenen Topic etwas hinzufüge, z.B. bei einem meiner Tasmote Geräte, funktioniert das nicht, es kommt nichts an (auch ein MQTT Explorer sieht es nicht)

              Funktioniert (komplett neu angelegt)

              mqtt.0.Test22.Zahl
              

              Funktioniert nicht: (Teleperiod neu angelegt als mixed)

              mqtt.0.cmnd.Nous078.TelePeriod
              

              Wir haben also scheinbar beide Recht :-)

              mickymM Online
              mickymM Online
              mickym
              Most Active
              schrieb am zuletzt editiert von mickym
              #15

              @bananajoe Dann liegt bei Dir was im Argen - der mqtt Adapter macht doch keinen Unterschied in welchem Ast er was published - bei mir geht das mit den Tasmota Punkten ebenfalls einwandfrei. Wenn man ein 1:1 Abbild macht - dann nutzt man auch gar KEIN Präfix - woher soll den Tasmota das kennen - der ganze Pfad stimmt ja dann nicht mehr. Man macht am Besten alle Haken raus und lässt den Adapter machen. Ein Präfix ist nur sinnvoll, wenn ich anderes States publishen möchte und das unter einem eigenen Präfix verwalten möchte.

              Der Präfix MUSS in der Regel leer bleiben:
              24f38229-c49d-4a68-b0f4-92acf14d52bf-image.png

              Du solltest lieber mal schauen, ob Du nicht zusätzlich Deinen ganzen tasmota topics unter /iobroker/cmnd nochmals angelegt hast. ;) Und das Tasmota nichts subscribed was mit einem topic iobroker/# losgeht, das dürfte ja für Dich als Tasmota Spezialist bekannt sein. ;) Natürlich nur, wenn Du es so eingetragen hast. Bei mir habe ich ja alle tasmotas mit Präfix Tasmota definiert und die Struktur umgedreht - deswegen habe ich eigene cmnd Aste für jedes Device und nicht für jedes Gerät einen Ast unter cmnd. ;)

              2f400844-351b-4d2b-92c7-a08238eb6ad7-image.png

              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

              BananaJoeB 2 Antworten Letzte Antwort
              0
              • mickymM mickym

                @bananajoe Dann liegt bei Dir was im Argen - der mqtt Adapter macht doch keinen Unterschied in welchem Ast er was published - bei mir geht das mit den Tasmota Punkten ebenfalls einwandfrei. Wenn man ein 1:1 Abbild macht - dann nutzt man auch gar KEIN Präfix - woher soll den Tasmota das kennen - der ganze Pfad stimmt ja dann nicht mehr. Man macht am Besten alle Haken raus und lässt den Adapter machen. Ein Präfix ist nur sinnvoll, wenn ich anderes States publishen möchte und das unter einem eigenen Präfix verwalten möchte.

                Der Präfix MUSS in der Regel leer bleiben:
                24f38229-c49d-4a68-b0f4-92acf14d52bf-image.png

                Du solltest lieber mal schauen, ob Du nicht zusätzlich Deinen ganzen tasmota topics unter /iobroker/cmnd nochmals angelegt hast. ;) Und das Tasmota nichts subscribed was mit einem topic iobroker/# losgeht, das dürfte ja für Dich als Tasmota Spezialist bekannt sein. ;) Natürlich nur, wenn Du es so eingetragen hast. Bei mir habe ich ja alle tasmotas mit Präfix Tasmota definiert und die Struktur umgedreht - deswegen habe ich eigene cmnd Aste für jedes Device und nicht für jedes Gerät einen Ast unter cmnd. ;)

                2f400844-351b-4d2b-92c7-a08238eb6ad7-image.png

                BananaJoeB Online
                BananaJoeB Online
                BananaJoe
                Most Active
                schrieb am zuletzt editiert von
                #16

                @mickym den Präfix habe ich da mit Absicht drin - um eben solche Sachen zu bemerken. Bei vorhandenen Topics gibt es das Problem ja auch nicht - aber wenn vorhandene, durch andere Geräte erstellte Topics erweitert werden sollen

                Aber du hast Recht, kaum hatte ich das "iobroker" als Präfix aus den Adaptereinstellungen entfernt hat es zum ersten mal funktioniert. Obwohl es es dann keinen native-topic Eintrag an dem Datenpunkt gibt - den die automatisch erzeugten Datenpunkte aber haben. Oder die per sendTo erzeugten.

                @haus-automatisierung wie wichtig der Eintrag nun ist vermag ich nicht zu sagen

                ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                mickymM 1 Antwort Letzte Antwort
                0
                • haus-automatisierungH haus-automatisierung

                  @mickym sagte in MQTT Broker empfängt Daten, sendet aber nicht an Client:

                  @bananajoe Selbstverständlich kann man die Datenpunkte im MQTT Adapter einfach anlegen - habe ich immer so gemacht und das funktioniert auch.

                  Wenn Du das native-Attribut für das topic richtig setzt geht das - ja.

                  Beispiel:

                  {
                    "_id": "mqtt.0.service.weather.forecast.temperature.today",
                    "common": {
                      "name": "service/weather/forecast/temperature/today",
                      "write": true,
                      "read": true,
                      "role": "variable",
                      "desc": "mqtt client variable",
                      "type": "string"
                    },
                    "native": {
                      "topic": "service/weather/forecast/temperature/today"
                    },
                    "type": "state",
                    "from": "system.adapter.mqtt.0",
                    "user": "system.user.admin",
                    "ts": 1657460180836,
                    "acl": {
                      "object": 1636,
                      "state": 1636,
                      "owner": "system.user.admin",
                      "ownerGroup": "system.group.administrator"
                    }
                  }
                  

                  Würde ich aber nicht unbedingt empfehlen. Lieber einfach eine Nachricht senden und automatisch anlegen lassen.

                  mickymM Online
                  mickymM Online
                  mickym
                  Most Active
                  schrieb am zuletzt editiert von mickym
                  #17

                  @haus-automatisierung Das muss auch nicht - der mqtt sendet auch wenn das da nativ fehlt - habe es gerade gemacht. Darüber habe ich mir bis jetzt in 2 Jahren, in dem ich das so mache noch nie Gedanken machen müssen. Ich verstehe auch nicht, was man dagegen hat, dass es mit direktem Anlegen der Datenpunkte im Adapter macht.

                  fb53eef1-a606-44a4-b879-b77bfcfd131c-image.png

                  6f5a65e6-8cf9-4b7d-8c9f-0e825235101c-image.png

                  Und das hat bei dem Adapter von Anfang an funktioniert. Ich ändere dann meist nur noch den Namen, da es einfach ist den zu kopieren.

                  Man muss es auch nicht kompliziert machen. Ich als NodeRed Nutzer kann gar nicht per sendTo was an den Adapter schicken Natürllich kann ich auch über andere mqtt Clients was publishen. Bei mir funktioniert das seit ich den Adapter in verschiedenen Versionen seit über 2 Jahren und man kanns auch kompliziert machen. Jedenfalls wenn kein anderen mqtt-Client zur Verfügung steht, der published, muss ich nicht Blockly oder Javascript lernen, um ein neues Topic via Adapter zu publishen.

                  Wenn natürlich die Maske zu publishen nicht passt oder man Präfixe einträgt - dann wissen halt manche nicht was sie tun.

                  In einer 2. Instanz nutze ich ein Präfix um die Daten des tr064 Adapter zu Publishen

                  f909cabe-05d6-4364-9b17-226e71bf8101-image.png

                  Es steht übrigens, dass das Präfix für alle Topics genutzt wird.

                  1fb71a3b-257a-4147-bfd8-0f427c06ff8c-image.png

                  @GiMichael

                  Um es auch nochmal zu sagen, habe ich schon mehrfach getan. Ein Broker sendet in erster Linie erst mal von sich nichts. Ein mqtt-Broker verwaltet die Informationen nur. Ein Client subscribed ein Topic und dann sendet der MQTT Broker an ALLE Clients, die diesen Topic abonniert haben.

                  Im Log siehst Du bei dem obigen Beispiel das gerade neue Topic:

                  060ae997-8189-48d3-882a-6d98b93e30ee-image.png

                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                  haus-automatisierungH 1 Antwort Letzte Antwort
                  0
                  • BananaJoeB BananaJoe

                    @mickym den Präfix habe ich da mit Absicht drin - um eben solche Sachen zu bemerken. Bei vorhandenen Topics gibt es das Problem ja auch nicht - aber wenn vorhandene, durch andere Geräte erstellte Topics erweitert werden sollen

                    Aber du hast Recht, kaum hatte ich das "iobroker" als Präfix aus den Adaptereinstellungen entfernt hat es zum ersten mal funktioniert. Obwohl es es dann keinen native-topic Eintrag an dem Datenpunkt gibt - den die automatisch erzeugten Datenpunkte aber haben. Oder die per sendTo erzeugten.

                    @haus-automatisierung wie wichtig der Eintrag nun ist vermag ich nicht zu sagen

                    mickymM Online
                    mickymM Online
                    mickym
                    Most Active
                    schrieb am zuletzt editiert von mickym
                    #18

                    @bananajoe Sobald der Adapter topics published macht er das Präfix dran - Jedenfalls hat KEIN Präfix daran was verloren, wenn ich die Topics 1:1 übertragen will. Ich oben gerade beschrieben, wie ich es mit meiner 2. Instanz mache, wenn ich iobroker Daten über ein Präfix in mein mosquitto übertragen will. Warum es bei Dir bislang überhaupt funktioniert hat er der Adapter nicht überall was davor setzt kann ich Dir nicht beantworten - jedenfalls wenn er es täte dann wäre es richtig.

                    Es steht ja Prefix für ALLE topics davor:

                    ce594bc8-1169-4c61-9b8b-74d9322b46a9-image.png

                    Warum der Adapter dann bei Deinem Tasmota Ast keinen Präfix davor macht, ist mir zwar ein Rätsel - aber in meinen Augen ist es in erster Linie falsch ein Präfix zu definieren, wenn ich keinen brauche. Und ich muss auch nicht die Welt bis ins Letzte verstehen, wenn das Teil in der Regel das tut, was es soll . :grin:

                    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                    1 Antwort Letzte Antwort
                    0
                    • mickymM mickym

                      @haus-automatisierung Das muss auch nicht - der mqtt sendet auch wenn das da nativ fehlt - habe es gerade gemacht. Darüber habe ich mir bis jetzt in 2 Jahren, in dem ich das so mache noch nie Gedanken machen müssen. Ich verstehe auch nicht, was man dagegen hat, dass es mit direktem Anlegen der Datenpunkte im Adapter macht.

                      fb53eef1-a606-44a4-b879-b77bfcfd131c-image.png

                      6f5a65e6-8cf9-4b7d-8c9f-0e825235101c-image.png

                      Und das hat bei dem Adapter von Anfang an funktioniert. Ich ändere dann meist nur noch den Namen, da es einfach ist den zu kopieren.

                      Man muss es auch nicht kompliziert machen. Ich als NodeRed Nutzer kann gar nicht per sendTo was an den Adapter schicken Natürllich kann ich auch über andere mqtt Clients was publishen. Bei mir funktioniert das seit ich den Adapter in verschiedenen Versionen seit über 2 Jahren und man kanns auch kompliziert machen. Jedenfalls wenn kein anderen mqtt-Client zur Verfügung steht, der published, muss ich nicht Blockly oder Javascript lernen, um ein neues Topic via Adapter zu publishen.

                      Wenn natürlich die Maske zu publishen nicht passt oder man Präfixe einträgt - dann wissen halt manche nicht was sie tun.

                      In einer 2. Instanz nutze ich ein Präfix um die Daten des tr064 Adapter zu Publishen

                      f909cabe-05d6-4364-9b17-226e71bf8101-image.png

                      Es steht übrigens, dass das Präfix für alle Topics genutzt wird.

                      1fb71a3b-257a-4147-bfd8-0f427c06ff8c-image.png

                      @GiMichael

                      Um es auch nochmal zu sagen, habe ich schon mehrfach getan. Ein Broker sendet in erster Linie erst mal von sich nichts. Ein mqtt-Broker verwaltet die Informationen nur. Ein Client subscribed ein Topic und dann sendet der MQTT Broker an ALLE Clients, die diesen Topic abonniert haben.

                      Im Log siehst Du bei dem obigen Beispiel das gerade neue Topic:

                      060ae997-8189-48d3-882a-6d98b93e30ee-image.png

                      haus-automatisierungH Offline
                      haus-automatisierungH Offline
                      haus-automatisierung
                      Developer Most Active
                      schrieb am zuletzt editiert von
                      #19

                      @mickym sagte in MQTT Broker empfängt Daten, sendet aber nicht an Client:

                      Das muss auch nicht - der mqtt sendet auch wenn das da nativ fehlt - habe es gerade gemacht.

                      Ach guck, wieder was gelernt. Und direkt mal im Code nachgeschaut: Es gibt eine Funktion, welche die aktuelle ID in ein Topic umwandelt: https://github.com/ioBroker/ioBroker.mqtt/blob/47a0106676eb4f13395c66d12cc599d94229433b/lib/common.js#L3-L23

                      Dann muss es damit aber in irgend einer Version mal Probleme gegeben haben, weil ich mich definitiv schon mit Leuten unterhalten habe, welche Objekte manuell erstellt haben und dann nix gepublished wurde.

                      Empfehlen würde ich es deswegen nicht, weil man als Nutzer (meiner Meinung nach) nur eigene Objekte in 0_userdata.0 und alias.0 anlegen sollte. Das gibt ja auch der Admin vor und erlaubt das in anderen Namespaces gar nicht (außer, man wechselt in den Expertenmodus).

                      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                      📚 Meine inoffizielle ioBroker Dokumentation

                      mickymM 1 Antwort Letzte Antwort
                      0
                      • haus-automatisierungH haus-automatisierung

                        @mickym sagte in MQTT Broker empfängt Daten, sendet aber nicht an Client:

                        Das muss auch nicht - der mqtt sendet auch wenn das da nativ fehlt - habe es gerade gemacht.

                        Ach guck, wieder was gelernt. Und direkt mal im Code nachgeschaut: Es gibt eine Funktion, welche die aktuelle ID in ein Topic umwandelt: https://github.com/ioBroker/ioBroker.mqtt/blob/47a0106676eb4f13395c66d12cc599d94229433b/lib/common.js#L3-L23

                        Dann muss es damit aber in irgend einer Version mal Probleme gegeben haben, weil ich mich definitiv schon mit Leuten unterhalten habe, welche Objekte manuell erstellt haben und dann nix gepublished wurde.

                        Empfehlen würde ich es deswegen nicht, weil man als Nutzer (meiner Meinung nach) nur eigene Objekte in 0_userdata.0 und alias.0 anlegen sollte. Das gibt ja auch der Admin vor und erlaubt das in anderen Namespaces gar nicht (außer, man wechselt in den Expertenmodus).

                        mickymM Online
                        mickymM Online
                        mickym
                        Most Active
                        schrieb am zuletzt editiert von
                        #20

                        @haus-automatisierung In der Regel gebe ich Dir Recht, aber diese Möglichkeit über eigene Datenpunkte was zu publishen, da habe ich hier lange für "gekämpft" und Diskussionen geführt und ich bin froh, dass es so funktioniert, wie es tut.

                        Man legt ja auch nicht Punkte in diesem Adapter an, um das als Datenspeicher zu nutzen - auch der alias Objektbaum hat eine bestimmte Funktion und muss published den Wert seiner Originaldatenpunkte. ;)

                        Deswegen würde ich dem Fall Deine Liste durchaus erweitern:
                        0_userdata.0 - zur Speicherung für eigene Daten jeglicher Art
                        alias.0 - für das Mappen und Veröffentlichen von bereits vorhandenen States unter "neutralem" Namen
                        mqtt - zum Publishen von mqtt topics

                        Wie gesagt ich habe da lange Diskussionen geführt, dass der mqtt Adapter eine Sonderstellung einnimmt. Er lässt sich auch nicht in das vorgegebene iobroker Schema pressen - deswegen werden auch Verzeichnisse in topics gewandelt usw.

                        Ein Shelly published nun mal mit originärem mqtt in

                        e2f040ef-edaa-4368-961d-58b381072c49-image.png

                        relay/0 - auch wenn es darunter noch ein command topic gibt. Aber wem erzähle ich das. :grin: :grin: :grin:

                        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                        haus-automatisierungH 1 Antwort Letzte Antwort
                        0
                        • mickymM mickym

                          @haus-automatisierung In der Regel gebe ich Dir Recht, aber diese Möglichkeit über eigene Datenpunkte was zu publishen, da habe ich hier lange für "gekämpft" und Diskussionen geführt und ich bin froh, dass es so funktioniert, wie es tut.

                          Man legt ja auch nicht Punkte in diesem Adapter an, um das als Datenspeicher zu nutzen - auch der alias Objektbaum hat eine bestimmte Funktion und muss published den Wert seiner Originaldatenpunkte. ;)

                          Deswegen würde ich dem Fall Deine Liste durchaus erweitern:
                          0_userdata.0 - zur Speicherung für eigene Daten jeglicher Art
                          alias.0 - für das Mappen und Veröffentlichen von bereits vorhandenen States unter "neutralem" Namen
                          mqtt - zum Publishen von mqtt topics

                          Wie gesagt ich habe da lange Diskussionen geführt, dass der mqtt Adapter eine Sonderstellung einnimmt. Er lässt sich auch nicht in das vorgegebene iobroker Schema pressen - deswegen werden auch Verzeichnisse in topics gewandelt usw.

                          Ein Shelly published nun mal mit originärem mqtt in

                          e2f040ef-edaa-4368-961d-58b381072c49-image.png

                          relay/0 - auch wenn es darunter noch ein command topic gibt. Aber wem erzähle ich das. :grin: :grin: :grin:

                          haus-automatisierungH Offline
                          haus-automatisierungH Offline
                          haus-automatisierung
                          Developer Most Active
                          schrieb am zuletzt editiert von
                          #21

                          @mickym sagte in MQTT Broker empfängt Daten, sendet aber nicht an Client:

                          dass der mqtt Adapter eine Sonderstellung einnimmt

                          Da hast Du Recht. Eventuell müsste man den Admin dann mal dahingehend ändern, dass man dort auch ohne den Expertenmodus Objekte anlegen kann. Zumal ich die Objekte dort ja auch bearbeite (read / write anpassen) nachdem sie angelegt wurden.

                          Es gibt ja keine "richtige" Struktur dort. Die legt man am Ende ja immer selbst an. Ob es über eigens definierte Topics ist oder manuell angelegte Objekte kommt ja auf das gleiche raus.

                          🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                          🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                          📚 Meine inoffizielle ioBroker Dokumentation

                          1 Antwort Letzte Antwort
                          1
                          • mickymM mickym

                            @bananajoe Dann liegt bei Dir was im Argen - der mqtt Adapter macht doch keinen Unterschied in welchem Ast er was published - bei mir geht das mit den Tasmota Punkten ebenfalls einwandfrei. Wenn man ein 1:1 Abbild macht - dann nutzt man auch gar KEIN Präfix - woher soll den Tasmota das kennen - der ganze Pfad stimmt ja dann nicht mehr. Man macht am Besten alle Haken raus und lässt den Adapter machen. Ein Präfix ist nur sinnvoll, wenn ich anderes States publishen möchte und das unter einem eigenen Präfix verwalten möchte.

                            Der Präfix MUSS in der Regel leer bleiben:
                            24f38229-c49d-4a68-b0f4-92acf14d52bf-image.png

                            Du solltest lieber mal schauen, ob Du nicht zusätzlich Deinen ganzen tasmota topics unter /iobroker/cmnd nochmals angelegt hast. ;) Und das Tasmota nichts subscribed was mit einem topic iobroker/# losgeht, das dürfte ja für Dich als Tasmota Spezialist bekannt sein. ;) Natürlich nur, wenn Du es so eingetragen hast. Bei mir habe ich ja alle tasmotas mit Präfix Tasmota definiert und die Struktur umgedreht - deswegen habe ich eigene cmnd Aste für jedes Device und nicht für jedes Gerät einen Ast unter cmnd. ;)

                            2f400844-351b-4d2b-92c7-a08238eb6ad7-image.png

                            BananaJoeB Online
                            BananaJoeB Online
                            BananaJoe
                            Most Active
                            schrieb am zuletzt editiert von
                            #22

                            @mickym sagte in MQTT Broker empfängt Daten, sendet aber nicht an Client:

                            Du solltest lieber mal schauen, ob Du nicht zusätzlich Deinen ganzen tasmota topics unter /iobroker/cmnd nochmals angelegt hast. ;)

                            Da ich bei solchen Sachen immer auf einem 3. Bildschirm den MQTT-Explorer mitlaufen habe: Nein, da passiert gar nichts, es wird nichts gesendet. Weshalb ich damals nach einer Lösung gesucht hatte, hier im Forum auch andere fand bei denen es nicht lief. Da ich mir es zur Gewohnheit gemacht habe auch mal die Anleitung eines Adapters zu lesen entdeckte ich dort die sendTo-Methode die dann auch auf anhieb funktionierte.
                            Ich brauchte das vielfach zur Steuerung diverse Tasmota-Geräte und unter cmnd wird ja erst einmal nur das POWER angelegt. Und ich wollte die Datenpunkte im Skript anlegen, nicht mühsam von Hand.

                            Ich bin jetzt noch kein so alter ioBroker-Hase, andererseits von den ioBroker + Adapterversionen doch schon ganz schön lange dabei. Keine Ahnung inwiefern sich das verhalten mit den Versionen geändert hat. Damals habe ich dann auch irgendwann beim Probieren wohl das iobroker im Adapter eingetragen.

                            ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                            mickymM 1 Antwort Letzte Antwort
                            0
                            • BananaJoeB BananaJoe

                              @mickym sagte in MQTT Broker empfängt Daten, sendet aber nicht an Client:

                              Du solltest lieber mal schauen, ob Du nicht zusätzlich Deinen ganzen tasmota topics unter /iobroker/cmnd nochmals angelegt hast. ;)

                              Da ich bei solchen Sachen immer auf einem 3. Bildschirm den MQTT-Explorer mitlaufen habe: Nein, da passiert gar nichts, es wird nichts gesendet. Weshalb ich damals nach einer Lösung gesucht hatte, hier im Forum auch andere fand bei denen es nicht lief. Da ich mir es zur Gewohnheit gemacht habe auch mal die Anleitung eines Adapters zu lesen entdeckte ich dort die sendTo-Methode die dann auch auf anhieb funktionierte.
                              Ich brauchte das vielfach zur Steuerung diverse Tasmota-Geräte und unter cmnd wird ja erst einmal nur das POWER angelegt. Und ich wollte die Datenpunkte im Skript anlegen, nicht mühsam von Hand.

                              Ich bin jetzt noch kein so alter ioBroker-Hase, andererseits von den ioBroker + Adapterversionen doch schon ganz schön lange dabei. Keine Ahnung inwiefern sich das verhalten mit den Versionen geändert hat. Damals habe ich dann auch irgendwann beim Probieren wohl das iobroker im Adapter eingetragen.

                              mickymM Online
                              mickymM Online
                              mickym
                              Most Active
                              schrieb am zuletzt editiert von mickym
                              #23

                              @bananajoe Wie gesagt ich lege die Punkte bei Bedarf manuell an - bzw. habe sich durch den Tasmota Device Manager anlegen lassen.

                              a0e7f0b7-d237-489e-b34f-3de3adbc00bb-image.png

                              backlog habe ich selbst angelegt - da der Name nicht stimmt - muss ich gleich mal ändern. ;)

                              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                              G 1 Antwort Letzte Antwort
                              0
                              • mickymM mickym

                                @bananajoe Wie gesagt ich lege die Punkte bei Bedarf manuell an - bzw. habe sich durch den Tasmota Device Manager anlegen lassen.

                                a0e7f0b7-d237-489e-b34f-3de3adbc00bb-image.png

                                backlog habe ich selbst angelegt - da der Name nicht stimmt - muss ich gleich mal ändern. ;)

                                G Offline
                                G Offline
                                GiMichael
                                schrieb am zuletzt editiert von
                                #24

                                @mickym

                                darf ich Euch nochmal bemühen. Die Übertragung funktioniert, aber immer nur sporadisch. Es kommt nur sehr selten ein neuer Wert an, obwohl in den Objekten der Wert schon längst geändert ist. Weiß jemand woran das liegt?

                                Lt. Log steht beides drin. hier ein Auszug. Es soll die aussentemp mit 31.8 übertragen werden. Leider stehen immer noch 34.4 von heute Vormittag drin. Beide Werte sehe ich hier im Log. Wird das vom IO-Broker Adapter falsch übertragen, oder sind die 34.4 die Rückmeldung vom Client an den Broker hier im IO Broker? Und der Client übernimmt einfach die 31.8 nicht.

                                2022-08-25 20:08:01.440 - info: mqtt.0 (23196) Client [] connected with secret 1661450881439_4253
                                2022-08-25 20:08:01.441 - debug: mqtt.0 (23196) Client [] with keepalive 60 set timeout to 90 seconds
                                2022-08-25 20:08:01.455 - debug: mqtt.0 (23196) Client [] received subscribe package {"cmd":"subscribe","retain":false,"qos":1,"dup":false,"length":29,"topic":null,"payload":null,"subscriptions":[{"topic":"solaranzeige/anzeige/1/#","qos":0}],"messageId":1}
                                2022-08-25 20:08:01.455 - debug: mqtt.0 (23196) Client [] Handle subscribe: {"topic":"solaranzeige/anzeige/1/#","qos":0}
                                2022-08-25 20:08:01.456 - info: mqtt.0 (23196) Client [] subscribes on "solaranzeige/anzeige/1/#" with regex /^solaranzeige.anzeige.1(..)?/
                                2022-08-25 20:08:01.456 - info: mqtt.0 (23196) Client [] subscribes on "solaranzeige/anzeige/1/#" with regex /^mqtt.0.solaranzeige.anzeige.1(..
                                )?/
                                2022-08-25 20:08:01.457 - debug: mqtt.0 (23196) Client [] received subscribe package {"cmd":"subscribe","retain":false,"qos":1,"dup":false,"length":28,"topic":null,"payload":null,"subscriptions":[{"topic":"solaranzeige/befehl/1/#","qos":0}],"messageId":2}
                                2022-08-25 20:08:01.457 - debug: mqtt.0 (23196) Client [] Handle subscribe: {"topic":"solaranzeige/befehl/1/#","qos":0}
                                2022-08-25 20:08:01.457 - info: mqtt.0 (23196) Client [] subscribes on "solaranzeige/befehl/1/#" with regex /^solaranzeige.befehl.1(..)?/
                                2022-08-25 20:08:01.458 - info: mqtt.0 (23196) Client [] subscribes on "solaranzeige/befehl/1/#" with regex /^mqtt.0.solaranzeige.befehl.1(..
                                )?/
                                2022-08-25 20:08:03.441 - debug: mqtt.0 (23196) Client [] send to this client "solaranzeige/anzeige/1/aussentemp": 34.4
                                2022-08-25 20:08:04.181 - debug: mqtt.0 (23196) Client [] received publish package {"cmd":"publish","retain":false,"qos":0,"dup":false,"length":38,"topic":"solaranzeige/1/i_heizung_warmwasser","payload":{"type":"Buffer","data":[48]}}
                                2022-08-25 20:08:04.181 - debug: mqtt.0 (23196) Server received "solaranzeige/1/i_heizung_warmwasser" (number): 0
                                2022-08-25 20:08:21.852 - error: modbus.0 (1180) Socket Error
                                2022-08-25 20:08:21.853 - error: modbus.0 (1180) Client in error state.
                                2022-08-25 20:08:21.853 - warn: modbus.0 (1180) On error: {"errno":"ETIMEDOUT","code":"ETIMEDOUT","syscall":"connect","address":"192.168.0.102","port":502}
                                2022-08-25 20:08:30.049 - silly: mqtt.0 (23196) States user redis pmessage mqtt.0.solaranzeige.anzeige.1./mqtt.0.solaranzeige.anzeige.1.aussentemp:{"val":31.3,ack":true,"ts":1661450910023,"q":0,"c":"script.js.Heizungssteuerung","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1661450430030}
                                2022-08-25 20:08:30.051 - debug: mqtt.0 (23196) stateChange mqtt.0.solaranzeige.anzeige.1.aussentemp: {"val":31.3,"ack":true,"ts":1661450910023,"q":0,"c":"script.js.Heizungssteuerung","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1661450430030}
                                mqtt.0.solaranzeige.anzeige.1.
                                /mqtt.0.solaranzeige.anzeige.1.aussentemp:{"val":31.3,"ack":true,"ts":1661450940066,"q":0,"c":"script.js.Heizungssteuerung","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1661450430030}
                                2022-08-25 20:09:00.078 - debug: mqtt.0 (23196) stateChange mqtt.0.solaranzeige.anzeige.1.aussentemp: {"val":31.3,"ack":true,"ts":1661450940066,"q":0,"c":"script.js.Heizungssteuerung","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1661450430030}
                                2022-08-25 20:09:00.255 - info: mqtt.0 (23196) Client [] connection closed: disconnected

                                mickymM Marc BergM 2 Antworten Letzte Antwort
                                0
                                • G GiMichael

                                  @mickym

                                  darf ich Euch nochmal bemühen. Die Übertragung funktioniert, aber immer nur sporadisch. Es kommt nur sehr selten ein neuer Wert an, obwohl in den Objekten der Wert schon längst geändert ist. Weiß jemand woran das liegt?

                                  Lt. Log steht beides drin. hier ein Auszug. Es soll die aussentemp mit 31.8 übertragen werden. Leider stehen immer noch 34.4 von heute Vormittag drin. Beide Werte sehe ich hier im Log. Wird das vom IO-Broker Adapter falsch übertragen, oder sind die 34.4 die Rückmeldung vom Client an den Broker hier im IO Broker? Und der Client übernimmt einfach die 31.8 nicht.

                                  2022-08-25 20:08:01.440 - info: mqtt.0 (23196) Client [] connected with secret 1661450881439_4253
                                  2022-08-25 20:08:01.441 - debug: mqtt.0 (23196) Client [] with keepalive 60 set timeout to 90 seconds
                                  2022-08-25 20:08:01.455 - debug: mqtt.0 (23196) Client [] received subscribe package {"cmd":"subscribe","retain":false,"qos":1,"dup":false,"length":29,"topic":null,"payload":null,"subscriptions":[{"topic":"solaranzeige/anzeige/1/#","qos":0}],"messageId":1}
                                  2022-08-25 20:08:01.455 - debug: mqtt.0 (23196) Client [] Handle subscribe: {"topic":"solaranzeige/anzeige/1/#","qos":0}
                                  2022-08-25 20:08:01.456 - info: mqtt.0 (23196) Client [] subscribes on "solaranzeige/anzeige/1/#" with regex /^solaranzeige.anzeige.1(..)?/
                                  2022-08-25 20:08:01.456 - info: mqtt.0 (23196) Client [] subscribes on "solaranzeige/anzeige/1/#" with regex /^mqtt.0.solaranzeige.anzeige.1(..
                                  )?/
                                  2022-08-25 20:08:01.457 - debug: mqtt.0 (23196) Client [] received subscribe package {"cmd":"subscribe","retain":false,"qos":1,"dup":false,"length":28,"topic":null,"payload":null,"subscriptions":[{"topic":"solaranzeige/befehl/1/#","qos":0}],"messageId":2}
                                  2022-08-25 20:08:01.457 - debug: mqtt.0 (23196) Client [] Handle subscribe: {"topic":"solaranzeige/befehl/1/#","qos":0}
                                  2022-08-25 20:08:01.457 - info: mqtt.0 (23196) Client [] subscribes on "solaranzeige/befehl/1/#" with regex /^solaranzeige.befehl.1(..)?/
                                  2022-08-25 20:08:01.458 - info: mqtt.0 (23196) Client [] subscribes on "solaranzeige/befehl/1/#" with regex /^mqtt.0.solaranzeige.befehl.1(..
                                  )?/
                                  2022-08-25 20:08:03.441 - debug: mqtt.0 (23196) Client [] send to this client "solaranzeige/anzeige/1/aussentemp": 34.4
                                  2022-08-25 20:08:04.181 - debug: mqtt.0 (23196) Client [] received publish package {"cmd":"publish","retain":false,"qos":0,"dup":false,"length":38,"topic":"solaranzeige/1/i_heizung_warmwasser","payload":{"type":"Buffer","data":[48]}}
                                  2022-08-25 20:08:04.181 - debug: mqtt.0 (23196) Server received "solaranzeige/1/i_heizung_warmwasser" (number): 0
                                  2022-08-25 20:08:21.852 - error: modbus.0 (1180) Socket Error
                                  2022-08-25 20:08:21.853 - error: modbus.0 (1180) Client in error state.
                                  2022-08-25 20:08:21.853 - warn: modbus.0 (1180) On error: {"errno":"ETIMEDOUT","code":"ETIMEDOUT","syscall":"connect","address":"192.168.0.102","port":502}
                                  2022-08-25 20:08:30.049 - silly: mqtt.0 (23196) States user redis pmessage mqtt.0.solaranzeige.anzeige.1./mqtt.0.solaranzeige.anzeige.1.aussentemp:{"val":31.3,ack":true,"ts":1661450910023,"q":0,"c":"script.js.Heizungssteuerung","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1661450430030}
                                  2022-08-25 20:08:30.051 - debug: mqtt.0 (23196) stateChange mqtt.0.solaranzeige.anzeige.1.aussentemp: {"val":31.3,"ack":true,"ts":1661450910023,"q":0,"c":"script.js.Heizungssteuerung","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1661450430030}
                                  mqtt.0.solaranzeige.anzeige.1.
                                  /mqtt.0.solaranzeige.anzeige.1.aussentemp:{"val":31.3,"ack":true,"ts":1661450940066,"q":0,"c":"script.js.Heizungssteuerung","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1661450430030}
                                  2022-08-25 20:09:00.078 - debug: mqtt.0 (23196) stateChange mqtt.0.solaranzeige.anzeige.1.aussentemp: {"val":31.3,"ack":true,"ts":1661450940066,"q":0,"c":"script.js.Heizungssteuerung","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1661450430030}
                                  2022-08-25 20:09:00.255 - info: mqtt.0 (23196) Client [] connection closed: disconnected

                                  mickymM Online
                                  mickymM Online
                                  mickym
                                  Most Active
                                  schrieb am zuletzt editiert von mickym
                                  #25

                                  @gimichael Wäre super - wenn Du solche Log Auszüge in CodeTags packst - nur mal generell.

                                  Code-Tags.gif

                                  So ich habs aber nun auch geschafft - vom mqtt-Client auf den Broker der das dann wieder published auch wenn ACK=true ist und zurück.

                                  Das sind die Broker Einstellungen:

                                  6d384c41-253f-437b-9329-19368a9b8af1-image.png

                                  Das sind die Client Einstellungen:

                                  ac08b6bc-8147-45d1-a69a-a39b05319f78-image.png

                                  So hier mal - wie sich das gegenseitig aktualisiert. Wichtig ist, dass man bei Zuständen wirklich nur Änderungen publizieren darf, sonst ist die Endlosschleife vorprogrammiert.

                                  Hier mal der Videobeweis:

                                  mqtt.0 = Brokerinstanz
                                  mqtt.1 = Clientinstanz

                                  mqtt client-server.mp4

                                  Funktioniert auch mit bestätigten Werten ACK = true.

                                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                  1 Antwort Letzte Antwort
                                  0
                                  • G GiMichael

                                    @mickym

                                    darf ich Euch nochmal bemühen. Die Übertragung funktioniert, aber immer nur sporadisch. Es kommt nur sehr selten ein neuer Wert an, obwohl in den Objekten der Wert schon längst geändert ist. Weiß jemand woran das liegt?

                                    Lt. Log steht beides drin. hier ein Auszug. Es soll die aussentemp mit 31.8 übertragen werden. Leider stehen immer noch 34.4 von heute Vormittag drin. Beide Werte sehe ich hier im Log. Wird das vom IO-Broker Adapter falsch übertragen, oder sind die 34.4 die Rückmeldung vom Client an den Broker hier im IO Broker? Und der Client übernimmt einfach die 31.8 nicht.

                                    2022-08-25 20:08:01.440 - info: mqtt.0 (23196) Client [] connected with secret 1661450881439_4253
                                    2022-08-25 20:08:01.441 - debug: mqtt.0 (23196) Client [] with keepalive 60 set timeout to 90 seconds
                                    2022-08-25 20:08:01.455 - debug: mqtt.0 (23196) Client [] received subscribe package {"cmd":"subscribe","retain":false,"qos":1,"dup":false,"length":29,"topic":null,"payload":null,"subscriptions":[{"topic":"solaranzeige/anzeige/1/#","qos":0}],"messageId":1}
                                    2022-08-25 20:08:01.455 - debug: mqtt.0 (23196) Client [] Handle subscribe: {"topic":"solaranzeige/anzeige/1/#","qos":0}
                                    2022-08-25 20:08:01.456 - info: mqtt.0 (23196) Client [] subscribes on "solaranzeige/anzeige/1/#" with regex /^solaranzeige.anzeige.1(..)?/
                                    2022-08-25 20:08:01.456 - info: mqtt.0 (23196) Client [] subscribes on "solaranzeige/anzeige/1/#" with regex /^mqtt.0.solaranzeige.anzeige.1(..
                                    )?/
                                    2022-08-25 20:08:01.457 - debug: mqtt.0 (23196) Client [] received subscribe package {"cmd":"subscribe","retain":false,"qos":1,"dup":false,"length":28,"topic":null,"payload":null,"subscriptions":[{"topic":"solaranzeige/befehl/1/#","qos":0}],"messageId":2}
                                    2022-08-25 20:08:01.457 - debug: mqtt.0 (23196) Client [] Handle subscribe: {"topic":"solaranzeige/befehl/1/#","qos":0}
                                    2022-08-25 20:08:01.457 - info: mqtt.0 (23196) Client [] subscribes on "solaranzeige/befehl/1/#" with regex /^solaranzeige.befehl.1(..)?/
                                    2022-08-25 20:08:01.458 - info: mqtt.0 (23196) Client [] subscribes on "solaranzeige/befehl/1/#" with regex /^mqtt.0.solaranzeige.befehl.1(..
                                    )?/
                                    2022-08-25 20:08:03.441 - debug: mqtt.0 (23196) Client [] send to this client "solaranzeige/anzeige/1/aussentemp": 34.4
                                    2022-08-25 20:08:04.181 - debug: mqtt.0 (23196) Client [] received publish package {"cmd":"publish","retain":false,"qos":0,"dup":false,"length":38,"topic":"solaranzeige/1/i_heizung_warmwasser","payload":{"type":"Buffer","data":[48]}}
                                    2022-08-25 20:08:04.181 - debug: mqtt.0 (23196) Server received "solaranzeige/1/i_heizung_warmwasser" (number): 0
                                    2022-08-25 20:08:21.852 - error: modbus.0 (1180) Socket Error
                                    2022-08-25 20:08:21.853 - error: modbus.0 (1180) Client in error state.
                                    2022-08-25 20:08:21.853 - warn: modbus.0 (1180) On error: {"errno":"ETIMEDOUT","code":"ETIMEDOUT","syscall":"connect","address":"192.168.0.102","port":502}
                                    2022-08-25 20:08:30.049 - silly: mqtt.0 (23196) States user redis pmessage mqtt.0.solaranzeige.anzeige.1./mqtt.0.solaranzeige.anzeige.1.aussentemp:{"val":31.3,ack":true,"ts":1661450910023,"q":0,"c":"script.js.Heizungssteuerung","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1661450430030}
                                    2022-08-25 20:08:30.051 - debug: mqtt.0 (23196) stateChange mqtt.0.solaranzeige.anzeige.1.aussentemp: {"val":31.3,"ack":true,"ts":1661450910023,"q":0,"c":"script.js.Heizungssteuerung","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1661450430030}
                                    mqtt.0.solaranzeige.anzeige.1.
                                    /mqtt.0.solaranzeige.anzeige.1.aussentemp:{"val":31.3,"ack":true,"ts":1661450940066,"q":0,"c":"script.js.Heizungssteuerung","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1661450430030}
                                    2022-08-25 20:09:00.078 - debug: mqtt.0 (23196) stateChange mqtt.0.solaranzeige.anzeige.1.aussentemp: {"val":31.3,"ack":true,"ts":1661450940066,"q":0,"c":"script.js.Heizungssteuerung","from":"system.adapter.javascript.0","user":"system.user.admin","lc":1661450430030}
                                    2022-08-25 20:09:00.255 - info: mqtt.0 (23196) Client [] connection closed: disconnected

                                    Marc BergM Offline
                                    Marc BergM Offline
                                    Marc Berg
                                    Most Active
                                    schrieb am zuletzt editiert von Marc Berg
                                    #26

                                    @gimichael sagte in MQTT Broker empfängt Daten, sendet aber nicht an Client:

                                    @mickym

                                    darf ich Euch nochmal bemühen. Die Übertragung funktioniert, aber immer nur sporadisch. Es kommt nur sehr selten ein neuer Wert an, obwohl in den Objekten der Wert schon längst geändert ist. Weiß jemand woran das liegt?

                                    Völlig ins blaue geschossen, würde ich sagen, dass der Client nicht (mehr) verbunden ist. Das schaut in den Logs so aus. Insofern solltest Du Dir das hier nochmals ansehen:

                                    b473fe55-6621-458a-8e99-62481bf45669-grafik.png

                                    Bin mir ziemlich sicher, dass hier der Client verbunden sein muss (alles grün), sonst kommen die "published" Nachrichten nicht an.

                                    Ich an Deiner Stelle würde mit einem anderen MQTT-Client (siehe zweiter Post) gegentesten.

                                    NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+EMQX+Grafana

                                    Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                                    Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                                    mickymM G 2 Antworten Letzte Antwort
                                    0
                                    • Marc BergM Marc Berg

                                      @gimichael sagte in MQTT Broker empfängt Daten, sendet aber nicht an Client:

                                      @mickym

                                      darf ich Euch nochmal bemühen. Die Übertragung funktioniert, aber immer nur sporadisch. Es kommt nur sehr selten ein neuer Wert an, obwohl in den Objekten der Wert schon längst geändert ist. Weiß jemand woran das liegt?

                                      Völlig ins blaue geschossen, würde ich sagen, dass der Client nicht (mehr) verbunden ist. Das schaut in den Logs so aus. Insofern solltest Du Dir das hier nochmals ansehen:

                                      b473fe55-6621-458a-8e99-62481bf45669-grafik.png

                                      Bin mir ziemlich sicher, dass hier der Client verbunden sein muss (alles grün), sonst kommen die "published" Nachrichten nicht an.

                                      Ich an Deiner Stelle würde mit einem anderen MQTT-Client (siehe zweiter Post) gegentesten.

                                      mickymM Online
                                      mickymM Online
                                      mickym
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #27

                                      @marc-berg Ja das ist natürlich Voraussetzung - ich habe bei den mqtt Adapter untereinander festgestellt, dass die Verbindung auch nur zuverlässig klappt, wenn der Client eine eigene Client-ID benutzt. Standardmässig werden immer nur die Adapterinstanznamen genutzt - und die können auf unterschiedlichen Maschinen ja gleich sein.

                                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                      Marc BergM G 2 Antworten Letzte Antwort
                                      0
                                      • mickymM mickym

                                        @marc-berg Ja das ist natürlich Voraussetzung - ich habe bei den mqtt Adapter untereinander festgestellt, dass die Verbindung auch nur zuverlässig klappt, wenn der Client eine eigene Client-ID benutzt. Standardmässig werden immer nur die Adapterinstanznamen genutzt - und die können auf unterschiedlichen Maschinen ja gleich sein.

                                        Marc BergM Offline
                                        Marc BergM Offline
                                        Marc Berg
                                        Most Active
                                        schrieb am zuletzt editiert von
                                        #28

                                        @mickym sagte in MQTT Broker empfängt Daten, sendet aber nicht an Client:

                                        @marc-berg Ja das ist natürlich Voraussetzung - ich habe bei den mqtt Adapter untereinander festgestellt, dass die Verbindung auch nur zuverlässig klappt, wenn der Client eine eigene Client-ID benutzt. Standardmässig werden immer nur die Adapterinstanznamen genutzt - und die können auf unterschiedlichen Maschinen ja gleich sein.

                                        Habe etwas falsch zitiert, die Nachricht sollte natürlich an @GiMichael gehen. :-)

                                        NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+EMQX+Grafana

                                        Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                                        Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                                        mickymM 1 Antwort Letzte Antwort
                                        0
                                        • Marc BergM Marc Berg

                                          @mickym sagte in MQTT Broker empfängt Daten, sendet aber nicht an Client:

                                          @marc-berg Ja das ist natürlich Voraussetzung - ich habe bei den mqtt Adapter untereinander festgestellt, dass die Verbindung auch nur zuverlässig klappt, wenn der Client eine eigene Client-ID benutzt. Standardmässig werden immer nur die Adapterinstanznamen genutzt - und die können auf unterschiedlichen Maschinen ja gleich sein.

                                          Habe etwas falsch zitiert, die Nachricht sollte natürlich an @GiMichael gehen. :-)

                                          mickymM Online
                                          mickymM Online
                                          mickym
                                          Most Active
                                          schrieb am zuletzt editiert von
                                          #29

                                          @marc-berg sagte in MQTT Broker empfängt Daten, sendet aber nicht an Client:

                                          Habe etwas falsch zitiert, die Nachricht sollte natürlich an @GiMichael gehen.

                                          Entschuldigung. :anguished:

                                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

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

                                          737

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe