Folgendes kann der gute Server ab IP-Symcon 5.1:
- MQTT 3.1/3.1.1 kompatibel
- Clients können sich verbinden/trennen
- Clients können Nachrichten auf Topics schicken (QoS 0-2)
- Clients können Topics (inkl. Filter +/#) abonnieren (Diese werden immer mit QoS 0 gesendet)
- Clients können sich mit Benutzername/Kennwort authentifizieren (Ziemlich uncool ohne TLS! @Nall-Chan)
Folgendes kann der Server ab IP-Symcon 5.3:
- Retain (ab 5.5 auch Persistent)
- Session Management (Siehe Timeout und Queue Limit Einstellungen im Server)
- Last Will/Testament
- Publish eines Clients wir nur in IP-Symcon ausgewertet und nicht an die anderen Clients weitergeleitet
Folgendes kann der Server/Client ab IP-Symcon 5.5:
- Es gibt einen passenden MQTT Client!
- TLS (Client Socket, Server Socket)
- Keep Alive (+ Last Will bei Timeout versenden)
Folgendes fehlt noch:
- QoS 1-2 beim Senden
Publish auf ein Topic senden:
Informationen für Modul-Entwickler:PHP-Code:
//Die ID der Variable einer MQTT Device Instanz
RequestAction($id_der_variable, "DeinTollerWertZumPublishen");
Es gibt eine simple MQTT Device Instanz, welches ein Topic und eine simple Typ-Konvertierung als Einstellung hat. Dies ist zum Testen und Spielen sicherlich cool, für richtige Geräte würde ich empfehlen ein PHP-Modul zu bauen, welche ggf. mehrere Topics direkt überwacht/befeuert.
Somit hier die Datenfluss GUIDs für euch PHP-Modul Entwickler:
Ansonsten ist das Protokoll tatsächlich sehr schick durchdacht und gut beschrieben. Lob an die, die es gemacht habenCode:GUID vom MQTT Server (Splitter): {C6D2AEB3-6E1F-4B2E-8E69-3A1A00246850} TX (vom Modul zum Server) {043EA491-0325-4ADD-8FC2-A30C8EEB4D3F} { "PacketType": ... Integer laut Protokoll... "QualityOfService": 0, "Retain": false, "Topic": "/blub/blubber/switch", "Payload": "an" } RX (vom Server zum Modul) {7F7632D9-FA40-4F38-8DEA-C83CD4325A32} { "PacketType": ... Integer laut Protokoll... "QualityOfService": 0, "Retain": false, "Topic": "/blub/blubber/switch", "Payload": "an" }
Gute Nacht und ich freue mich auf euer Feedback,
paresy