MQTTClient

Ein MQTT Client für IP-Symcon, der auf zwei Arten genutzt werden kann. Der Client kann entweder per Datenfluss mit einem eigenen Modul verbunden werden oder er kann ein vorgegebenes Script aufrufen.

Requirements
  • mindestens IPS Version 5.0
Included Modules
  • MQTTClient
Installation

Installation via the IP-Symcon module store.

Configuration in IP-Symcon

Modul Typ: Script

Wenn der Modul Typ auf „Script“ steht, dann muss dem Modul ein Handle Script zugeordnet werden, welches die eingehenden Nachrichten verarbeitet.

Beispiel:

if($_IPS['SENDER']=='MQTT_CONNECT') {
MQTT_Subscribe(12345 /*[MQTTClient]*/, '#', 0); //InstanzID muss angepasst werden.
}
if($_IPS['SENDER']=='MQTT_GET_PAYLOAD') {
IPS_LogMessage('MQTT Topic', print_r($_IPS['Topic'],true));
IPS_LogMessage('MQTT Payload', print_r($_IPS['Payload'],true));
}

Mit diesem Handle Script würde beim Connect alles abonniert werden, was der MQTT Broker versendet. Es werden alle Nachrichten in das Log von IP-Symcon geschrieben.

Modul Typ: Forward

GUIDs:

BezeichnungGUID
GUID vom MQTTClient (Splitter){EE0D345A-CF31-428A-A613-33CE98E752DD}
TX{97475B04-67C3-A74D-C970-E9409B0EFA1D}
RX{DBDA9DF7-5D04-F49D-370A-2B9153D00D9B}
MQTTC_Publish(string $Topic, string $payload, $qos, $retain)
$topic = 'Licht1';
$payload = 'ON';
MQTTC_Publish(12345 /*[MQTTClient]*/, $topic, $payload, 0, 0);	  //InstanzID muss angepasst werden.
Mit diesem Beispiel wird an das Topic Licht1 das Paylaod ON gesendet.  
MQTTC_Subscribe(string $Topic, $qos)
$topic = '#';
$qos = 0;
MQTT_Subscribe(12345 /*[MQTTClient]*/, '#', 0);	  //InstanzID muss angepasst werden.
Mit diesem Beispiel würde alles abonniert werden, was der MQTT Broker versendet.

This module is free for non-commercial use. Gifts as support for the author are accepted here:

Dieses Modul ist ursprünglich von thomasf68 (https://github.com/thomasf68/IPS_MQTT) entwickelt worden. Ich habe dieses Modul verändert, damit es mit der aktuellen IP-Symcon Version läuft. Überflüssigen Code, der nicht verwendet wurde, habe ich entfernt.

CC BY-NC-SA 4.0


0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

en_USEnglish