====== Zugriff auf den MQTT Broker ====== **LoxBerry XL** stellt beim Starten des Scripts automatisch die Verbindung zu deinem MQTT-Broker her. Dafür muss das [[plugins:mqtt_gateway:start|MQTT Gateway]] Plugin auf deinem LoxBerry installiert sein. In deinem Script hast du damit automatisch Zugriff mit der Variable **''%%$mqtt%%''**. Beim Starten des Scripts wird angezeigt, ob MQTT verfügbar ist: {{konfiguration:loxberry_xl_extended_logic:1247772716.png?w=350}} Wenn die Zeile mit **''%%$mqtt%%''** nicht angezeigt wird, hast du das MQTT Gateway Plugin nicht installiert, oder die Verbindung ist gescheitert. Mit **''%%$mqtt%%''** hast du dann **direkten Zugriff** auf die Daten deines MQTT-Brokers. ==== Beispiel ==== get ( "loxberry/mqttgateway/keepaliveepoch" ); // Topic schreiben $mqtt->set("shellies/shellyplug-s-267E3C/relay/0/turn", "off"); ===== Funktionen ===== ==== Daten lesen ==== **''%%$mqtt->get  ( "lese/dieses/topic" );%%''** Beim Lesen des Topics ist es wichtig, das Topic //ohne die MQTT-Joker// zu verwenden.   **''%%$mqtt->get( "lese/dieses/topic/#" );%%''** Dies wird dazu führen, dass du irgendeinen Datensatz dieses Topics erhältst.  **''%%$mqtt->get( "lese/dieses/topic/daten" );%%''** Du bekommst genau diesen einen Datensatz. Ist das von dir abgefragte Topic nicht vorhanden, liefert die Funktion nichts zurück. ==== Daten senden ==== Mögliche Syntaxen: $mqtt->set( "schreibe/meine/daten", "On" ); $mqtt->publish( "schreibe/meine/daten", "On" ); // Publish ohne Retain $mqtt->set( "schreibe/meine/daten", "On", true ); $mqtt->retain( "schreibe/meine/daten", "On" ); // Publish MIT Retain