Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Ankündigung
Einklappen
Keine Ankündigung bisher.
MQTT API Server und MQTT Clients - LBS19001051 - LBS19001054
Das kannst du ignorieren. Zur Optimierung mache ich vor dem Publish einen kurzen Check, ob der Broker verfügbar ist, d.h. einfach Connect zu Port 1883 und direkt wieder Disconnect. Dadurch erscheint das im Mosquitto Log.
jonofe trifft das auch auf diese Meldung zu? Kann man das evtl. auch "ausblenden" das es nicht mehr in den Log geschrieben wird?
Code:
1678179009: New client connected from 192.xxx.xxx.xxx as EDOMI_MQTT_Subscribe_Client_1358-6406f65023e0c (p2, c1, k60, u'heishamon').
1678179009: Socket error on client EDOMI_MQTT_Subscribe_Client_1358-6406f65023e0c, disconnecting.
Ich habe da nun noch eine Frage und zwar habe ich im MQTT-Explorer gesehen das mir der Log und dadurch die HDD mit den folgenden Meldungen voll läuft.
Auf dem Edomi Server läuft Mosquitto als Broker und der Subscribe-Client LBS läuft auch sauber ohne Fehlermeldungen im Debug-Log. Topics werden alle abgerufen.
Wie kann ich diese Fehler beheben?
Code:
N= 1678092074: Socket error on client EDOMI_MQTT_Subscribe_Client_1358-63f7c3951ddad, disconnecting.
I= 1678091548: Error saving in-memory database, unable to open /var/lib/mosquitto/mosquitto.db.new for writing.
E= 1678091548: Error: No such file or directory.
Edit: unter dem Pfad /var/lib/mosquitto/ ist die mosquitto.db nicht zu finden.... wie finde ich heraus wo diese liegt?
Edit: Habe nun den Pfad händisch angelegt und nun sind bis auf den Socket error die Fehlermeldungen weg.
jonofe bräuchte nochmals deine Hilfe.... Ich habe mich nun für die Variante 1 entschieden nur das zu subscriben was ich benötige.
Wenn ich aber nun an E9 "panasonic_heat_pump/main/Heatpump_State|Pump_Flow|Force_DHW_State|" eingebe wird nur immer das 1.Topic abgerufen und das 2.und 3.Topic nicht. was mache ich da falsch? Oder muss ich jedes mal den ganzen Pfad angeben?
Wie muss ich das dann machen? Im Subscribe Client bei E9 Top1|Top2|Top3|...?
Ja genau so.
Ansonsten hast du immer alle Topics zumindest im Subscribe Client. Die kannst du über die Filter-Eingänge nochmal filtern, aber trotzdem muss dann der Suscribe Client alle Topics verarbeiten, auch wenn er dann nicht alle ausgibt.
Gibt also ingesamt 3 Varianten:
Nur das subscriben was du brauchst Topic1|Topic2|...|TopicN an E9
Alles subscriben, was ein Gerät hergibt bzw. eine Obermenge (prefix//# an E9) von dem was du brauchst und im Subscribe Client filtern (E6/E7)
Alles subscriben, was ein Gerät hergibt bzw. eine Obermenge (prefix//# an E9) von dem was du brauchst und über MQTT Parser filtern
Wie muss ich das dann machen? Im Subscribe Client bei E9 Top1|Top2|Top3|...?
Aktuell habe ich 30 Topic in Verwendung, daher habe ich es über den Parser gemacht.
Meine Logik ist wie auf dem Bild zu sehen aufgebaut.
Hallo,
eine Frage, wie kann ich mehrere Topics unsubscriben? Ich rufe die Daten meiner Panasonic Jeisha WP über Heishamon ab, diese bietet 115 Topics an von denen ich aber nur einen kleinen Bruchteil benötige. Die Topics liegen in panasonic_heat_pump/main/ ... Hintergrund ist der das der Traffic stark ansteigt beim abrufen der Daten und da der Gossteil der Topics sowieso momentan nicht benötigt wird würde ich das gerne einschränken.
Ich sende mit dem Publishing Client an den ioBroker, Value kommt auch an aber wird nicht ausgeführt wegen Datentyp.
M.W. unterstützt MQTT keine expliziten Datentypen des Payloads, d.h. es wird entweder ein Array von Bytes oder eine UTF8-kodierte Nachricht gesendet.
Falls das so stimmt, dann musst du auf Empfängerseite die entsprechende Umwandlung machen, d.h. in ioBroker zunächst in eine andere Variable und diese dann zu INT casten und aufs doorCommand senden.
kurze Frage. Gibt es die Möglichkeit bei dem Publishing Client einen Typ mit anzugeben? Ich sende mit dem Publishing Client an den ioBroker, Value kommt auch an aber wird nicht ausgeführt wegen Datentyp.
Im ioBroker taucht folgende Meldung im log auf:
Code:
State value to set for "hmip.0.devices.XXXXXX.channels.1.doorCommand" has to be type "number" but received type "string"
dank message.log konnte ich feststellen, dass in den in der config verlinkten Pfaden keine Dateien waren.
Habe das mosquitto.log angelegt und in der config richtig gestellt.
Die PW-Datei hat er dann auch gefunden und es läuft jetzt.
Das pid_file liegt da nicht
listener 1883: horcht auf port 1883
persistence true und die Zeile darunter kann ich nichts anfangen-das /varlib/mosquitto/ gibt es nicht
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Einen Kommentar schreiben: