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.
erstmal möchte ich mich herzlich beim Programmierer bedanken. Einfach mal so geschwind einen MQTT Baustein zu machen ist wirklich cool.
Ich habe diesen nun auch mal installiert und mit meinem Mosquitto verbunden. Der Broker-Status gibt der Wert subscribed aus.
Wenn ich nun über den Quadclient meine Funktionen senden möchte sehe ich in der Console meines MQTT Geräts "invalid JSON".
Während der Fehlersuche hab ich nun festgestellt, dass der Gira Homeserver (egal auf welcher Ebene) kein Anführungszeichen (") unterstützt. Dieses brauche ich jedoch für meine Befehle... Der Homeserver nimmt das Zeichen mit Copy/Paste erstmal an, jedoch nach einem Menüwechsel oder Neustart des Experten steht dafür ein Fragezeichen (?).
Gibt es eine Möglichkeit dies zu umgehen?
V0.92
- JSON Data - Sofern E12 auf 1 steht wird E8 durch ein JSON Encode gewandelt und dann gesendet
Du könntest nun auch mal die neue Version probieren. E12 setzt du dann auf 1 und dann sollte er deinen String vorher noch JSON encoden, dann müsste es korrekt beim Empfänger auslesbar sein.
Hab gar keine Benachrichtigung von deinem Kommentar erhalten - cool das du so schnell antwortest.
Hab mittlerweile auch mit Gira Kontakt aufgenommen und erfahren, dass im Experten (außer bei den IP Telegrammen) das Anführungszeichen als Steuerzeichen verwendet wird. Das Fragezeichen ist nicht die Interpretation des HS sonst das Fehlersymbol für ein nicht erkanntes Zeichen.
Da ich erstmal keinen Erfolg in diese Richtung sah, hab ich es erstmal über Web-Requests gelöst. Funktioniert tadellos.
Mit einem einfach Anführungszeichen hat es nicht funktioniert - selbe Fehlermeldung.
Zu deinem neuen Update: In welcher Schreibweise muss ich es dann eingeben? Aus welchem Zeichen wird welches gemacht?
Moin,
ich hätte jetzt einfach den JSON String wieder ganz normal probiert ... Also ganz normal mit doppeltem Anführungszeichen. Und dann eben den neuen Eingang auf 1 setzen damit er das JSON encoded im Baustein.
Ich hab es ehrlich gesagt nur im Debugger probiert, aber ja probier es doch bitte ein mal ganz normal nur eben das du E12 auf fix 1 stellst ... dann wird alles was an E8 rein kommt JSON Encoded ..
Hi, hab eben versucht den neuen Baustein zu verwenden, leider funktioniert's nicht.
Wenn ich den Originaltext verwende ({"Protocol":"NEC","Bits":32,"Data":"0x10ED00FF" }) macht der HS ja ({?Protocol?:?NEC?,?Bits?:32,?Data?:?0x10ED00FF?}) draus.
So kommt bei meinem MQTT Gerät im Log "Invald JSON".
Wenn ich es so sende ({’Protocol’:’NEC’,’Bits’:32,’Data’:’0x10ED00FF’}) kommt im MQTT Geräte-Log nichts an und es tut auch nicht.
Unter welchem Punkt kann ich auf der Debugseite etwas zum MQTT Baustein sehen?
Ich werd mich da noch mal ein wenig belesen zu .... das kriegen wir auch noch hin ... Im Grunde erwartet die Gegenstelle ein sauberes JSON im mqtt ... da war mein encode evtl. eh nicht so hilfreich.
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.
Kommentar