Metainformationen zur Seite

Zugriff auf den MQTT Broker

LoxBerry XL stellt beim Starten des Scripts automatisch die Verbindung zu deinem MQTT-Broker her. Dafür muss das 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:

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

<?php
require_once "loxberry_XL.php";
 
// Topic lesen
echo "keepaliveepoch: " . $mqtt->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