Ich glaube nicht, das das jemand lesen kann, und will. Setz das doch bitte mal in Code Tags.
Ankündigung
Einklappen
Keine Ankündigung bisher.
MQTT API Server und MQTT Clients - LBS19001051 - LBS19001054
Einklappen
X
-
Zitat von vento66 Beitrag anzeigenIch glaube nicht, das das jemand lesen kann, und will. Setz das doch bitte mal in Code Tags.
BadWicky
Welchen MQTT Broker setzt du denn ein?
Wenn die Installation fehlerfrei lief und Konfiguration zu deinem eingesetzen Broker passt, dann mal ins Log des Brokers schauen, ob sich der Publish Server dort anmeldet.
Kommentar
-
Hallo vento66
Hallo jonofe
Tut mir leid ich hoffe das ich das so jetzt richtig gemacht habe.
Code:[TR] [TD="colspan: 5"]{EDOMI,CUSTOMLOG_MQTT_Publish_Server-LBS19001051.htm,16.01.2021,10:59:10,997941,30526}[/TD] [/TR] [TR] [TD]Zeitstempel[/TD] [TD]ms[/TD] [TD]PID[/TD] [TD]LogLevel[/TD] [TD]Meldung[/TD] [/TR] [TR] [TD]2021-01-16 10:59:10[/TD] [TD]997818[/TD] [TD]30526[/TD] [TD]debug[/TD] [TD]LBS19001051 [v1.0]: QUERY: CREATE PROCEDURE mqtt_publish(typ INT(10), ga VARCHAR(1000), name VARCHAR(1000), value VARCHAR(11000)) BEGIN DECLARE cmd VARCHAR(1000); DECLARE result INT(10); DECLARE logresult INT(10); SET cmd = CONCAT('/usr/bin/bash -c "/usr/bin/php /usr/local/edomi/www/data/liveproject/lbs/EXE19001051.php ',typ,' ',ga,' \'',name,'\' \'',value,'\' & "'); SET result = sys_exec(cmd); END (5284)[/TD] [/TR] [TR] [TD]2021-01-16 11:17:55[/TD] [TD]188508[/TD] [TD]32194[/TD] [TD]debug[/TD] [TD]LBS19001051 [v1.0]: QUERY: CREATE PROCEDURE mqtt_publish(typ INT(10), ga VARCHAR(1000), name VARCHAR(1000), value VARCHAR(11000)) BEGIN DECLARE cmd VARCHAR(1000); DECLARE result INT(10); DECLARE logresult INT(10); SET cmd = CONCAT('/usr/bin/bash -c "/usr/bin/php /usr/local/edomi/www/data/liveproject/lbs/EXE19001051.php ',typ,' ',ga,' \'',name,'\' \'',value,'\' & "'); SET result = sys_exec(cmd); END (5284)[/TD] [/TR] [TR] [TD]2021-01-16 11:18:24[/TD] [TD]969975[/TD] [TD]32194[/TD] [TD]debug[/TD] [TD]LBS19001051 [v1.0]: QUERY: CREATE PROCEDURE mqtt_publish(typ INT(10), ga VARCHAR(1000), name VARCHAR(1000), value VARCHAR(11000)) BEGIN DECLARE cmd VARCHAR(1000); DECLARE result INT(10); DECLARE logresult INT(10); SET cmd = CONCAT('/usr/bin/bash -c "/usr/bin/php /usr/local/edomi/www/data/liveproject/lbs/EXE19001051.php ',typ,' ',ga,' \'',name,'\' \'',value,'\' & "'); SET result = sys_exec(cmd); END (5284)[/TD] [/TR] [TR] [TD]2021-01-16 11:27:41[/TD] [TD]640860[/TD] [TD]2665[/TD] [TD]debug[/TD] [TD]LBS19001051 [v1.0]: QUERY: CREATE PROCEDURE mqtt_publish(typ INT(10), ga VARCHAR(1000), name VARCHAR(1000), value VARCHAR(11000)) BEGIN DECLARE cmd VARCHAR(1000); DECLARE result INT(10); DECLARE logresult INT(10); SET cmd = CONCAT('/usr/bin/bash -c "/usr/bin/php /usr/local/edomi/www/data/liveproject/lbs/EXE19001051.php ',typ,' ',ga,' \'',name,'\' \'',value,'\' & "'); SET result = sys_exec(cmd); END (5284)[/TD] [/TR] [TR] [TD]2021-01-16 11:30:00[/TD] [TD]692085[/TD] [TD]2645[/TD] [TD]debug[/TD] [TD]LBS19001051 [v1.0]: QUERY: CREATE PROCEDURE mqtt_publish(typ INT(10), ga VARCHAR(1000), name VARCHAR(1000), value VARCHAR(11000)) BEGIN DECLARE cmd VARCHAR(1000); DECLARE result INT(10); DECLARE logresult INT(10); SET cmd = CONCAT('/usr/bin/bash -c "/usr/bin/php /usr/local/edomi/www/data/liveproject/lbs/EXE19001051.php ',typ,' ',ga,' \'',name,'\' \'',value,'\' & "'); SET result = sys_exec(cmd); END (5284)[/TD] [/TR] [TR] [TD]2021-01-16 11:31:47[/TD] [TD]062829[/TD] [TD]2645[/TD] [TD]debug[/TD] [TD]LBS19001051 [v1.0]: QUERY: CREATE PROCEDURE mqtt_publish(typ INT(10), ga VARCHAR(1000), name VARCHAR(1000), value VARCHAR(11000)) BEGIN DECLARE cmd VARCHAR(1000); DECLARE result INT(10); DECLARE logresult INT(10); SET cmd = CONCAT('/usr/bin/bash -c "/usr/bin/php /usr/local/edomi/www/data/liveproject/lbs/EXE19001051.php ',typ,' ',ga,' \'',name,'\' \'',value,'\' & "'); SET result = sys_exec(cmd); END (5284)[/TD] [/TR] [TR] [TD]2021-01-16 11:49:57[/TD] [TD]889540[/TD] [TD]12889[/TD] [TD]debug[/TD] [TD]LBS19001051 [v1.0]: QUERY: CREATE PROCEDURE mqtt_publish(typ INT(10), ga VARCHAR(1000), name VARCHAR(1000), value VARCHAR(11000)) BEGIN DECLARE cmd VARCHAR(1000); DECLARE result INT(10); DECLARE logresult INT(10); SET cmd = CONCAT('/usr/bin/bash -c "/usr/bin/php /usr/local/edomi/www/data/liveproject/lbs/EXE19001051.php ',typ,' ',ga,' \'',name,'\' \'',value,'\' & "'); SET result = sys_exec(cmd); END (5284)[/TD] [/TR] [TR] [TD]2021-01-16 12:05:19[/TD] [TD]985773[/TD] [TD]12889[/TD] [TD]debug[/TD] [TD]LBS19001051 [v1.0]: QUERY: CREATE PROCEDURE mqtt_publish(typ INT(10), ga VARCHAR(1000), name VARCHAR(1000), value VARCHAR(11000)) BEGIN DECLARE cmd VARCHAR(1000); DECLARE result INT(10); DECLARE logresult INT(10); SET cmd = CONCAT('/usr/bin/bash -c "/usr/bin/php /usr/local/edomi/www/data/liveproject/lbs/EXE19001051.php ',typ,' ',ga,' \'',name,'\' \'',value,'\' & "'); SET result = sys_exec(cmd); END (5284)[/TD] [/TR] [TR] [TD]2021-01-16 13:38:13[/TD] [TD]335504[/TD] [TD]15319[/TD] [TD]debug[/TD] [TD]LBS19001051 [v1.0]: QUERY: CREATE PROCEDURE mqtt_publish(typ INT(10), ga VARCHAR(1000), name VARCHAR(1000), value VARCHAR(11000)) BEGIN DECLARE cmd VARCHAR(1000); DECLARE result INT(10); DECLARE logresult INT(10); SET cmd = CONCAT('/usr/bin/bash -c "/usr/bin/php /usr/local/edomi/www/data/liveproject/lbs/EXE19001051.php ',typ,' ',ga,' \'',name,'\' \'',value,'\' & "'); SET result = sys_exec(cmd); END (5284)[/TD] [/TR] [TR] [TD]2021-01-16 13:52:49[/TD] [TD]048995[/TD] [TD]15319[/TD] [TD]debug[/TD] [TD]LBS19001051 [v1.0]: QUERY: CREATE PROCEDURE mqtt_publish(typ INT(10), ga VARCHAR(1000), name VARCHAR(1000), value VARCHAR(11000)) BEGIN DECLARE cmd VARCHAR(1000); DECLARE result INT(10); DECLARE logresult INT(10); SET cmd = CONCAT('/usr/bin/bash -c "/usr/bin/php /usr/local/edomi/www/data/liveproject/lbs/EXE19001051.php ',typ,' ',ga,' \'',name,'\' \'',value,'\' & "'); SET result = sys_exec(cmd); END (5284)[/TD] [/TR] [TR] [TD]2021-01-16 13:54:16[/TD] [TD]386260[/TD] [TD]2646[/TD] [TD]debug[/TD] [TD]LBS19001051 [v1.0]: QUERY: CREATE PROCEDURE mqtt_publish(typ INT(10), ga VARCHAR(1000), name VARCHAR(1000), value VARCHAR(11000)) BEGIN DECLARE cmd VARCHAR(1000); DECLARE result INT(10); DECLARE logresult INT(10); SET cmd = CONCAT('/usr/bin/bash -c "/usr/bin/php /usr/local/edomi/www/data/liveproject/lbs/EXE19001051.php ',typ,' ',ga,' \'',name,'\' \'',value,'\' & "'); SET result = sys_exec(cmd); END (5284)[/TD] [/TR]
Kommentar
-
Zitat von jonofe Beitrag anzeigenBadWicky
Welchen MQTT Broker setzt du denn ein?
Wenn die Installation fehlerfrei lief und Konfiguration zu deinem eingesetzen Broker passt, dann mal ins Log des Brokers schauen, ob sich der Publish Server dort anmeldet.
LBS pulsiert auch nicht wie es z.B. der subscrib client von dir macht
Zum prüfen ob ich Daten sende verwende ich das MQTT Tool. siehe screenshot
Angehängte Dateien
Kommentar
-
Hi
es geht jetzt soweit ich das bisher sagen kann.
Der broker ist in Node Red
Kann es sein das das was gebracht hat.
ursprünglich habe ich es nach der Anleitung installiert
Code:[FONT=Calibri][FONT=Helvetica][COLOR=#2c3e50]yum -y install php-process git gcc make mysql-devel php-devel[/COLOR][/FONT] [FONT=Helvetica][COLOR=#2c3e50]yum -y install autoconf automake libtool cd /tmp git clone https://github.com/jonofe/lib_mysqludf_sys cd lib_mysqludf_sys/ ./install.sh cd /tmp rm -rf lib_mysqludf_sys/ git clone https://github.com/mysqludf/lib_mysqludf_log cd lib_mysqludf_log autoreconf -i ./configure make make install mysql < installdb.sql[/COLOR][/FONT][/FONT]
Code:[FONT=Calibri][FONT=Courier][COLOR=#111111]yum -y install epel-release[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier][COLOR=#111111]yum -y install mosquitto mosquitto-devel php72-php-devel[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier][COLOR=#111111]git clone https://github.com/mgdm/Mosquitto-PHP[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier][COLOR=#111111]cd Mosquitto-PHP[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier][COLOR=#111111]phpize[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier][COLOR=#111111]./configure[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier][COLOR=#111111]make[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier][COLOR=#111111]make install[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier][COLOR=#111111]echo 'extension=mosquitto.so' > /etc/php.d/50-mosquitto.ini[/COLOR][/FONT][/FONT]
Kommentar
-
Wie handhabt ihr eigentlich die Abfrage der Werte? Für ein paar externe Sensoren möchte ich mir nun keine KNX-sensoren leisten sondern diese mit Mysensors selber bauen. Dort habe ich jetzt den Aufbau schon fertig und ein paar alte Sensoren aus der Bastelkiste gefischt. Jeder Sensor hat hier jedoch sein eigenes topic.
Erstellt ihr für jedes Topic einen eigenen Subscribe Client? Gibt es eine elegante Weise nach verschiedenen Topics zu filtern?
Meine erste Lösung von heute morgen erscheint mir durch die Brust ins Auge:
Zwischenablagebild.jpg
Die Verzögerung ist drin, damit der Messwert in den Werteauslöser Baustein geschrieben werden kann, da er sonst gleichzeitig mit dem Trigger ankommt.
Grüße
ChristianAngehängte Dateien
Kommentar
-
Zitat von jonofe Beitrag anzeigenDu kannst dafür den MQTT Parser LBS (19001207) verwenden.
Kommentar
-
Ich habe gestern mal probiert, MQTT ans laufen zu bringen. Irgendwie werde ich damit nicht richtig warm. Unter CentOS habe ich den Broker installiert, aber dieser vergisst ab und an mittendrin Benutzer und ich konnte mich am gleichen Server nicht anmelden, mit IOBroker auch nicht, mit MQTT Explorer am Macbook ging es aber immer.
Dann habe ich den Broker auf IOBroker installiert und es klappte sofort mit dem anmelden. Nur, dass der Subsrcibe Client eigentlich nie etwas anzeigt, obwohl der gesendete Text im Log des LBS auftaucht. Abschließend habe ich mit dem Publisher Client etwas zu IOBroker gesendet. Das kommt auch an, aber er schaltet nichts. Also ich habe einfach versucht, eine GA zu schalten. Dann steht in IOBroker 1 oder true, aber er tut es nicht. Naja, immerhin kam es an.
Nun bekomme ich den folgenden Fehler und wollte mal fragen, ob der jemandem bekannt ist, denn bei der Suche hier habe ich nichts gefunden.
Code:Datei: /usr/local/edomi/www/data/liveproject/lbs/EXE19001054.php | Fehlercode: 2 | Zeile: 147 | strpos(): Empty needle
Viele Grüße
Nils
Kommentar
-
Ich hätte eine generelle Frage zu dem MQTT Subscribe Client (LBS19001054) LBS.
Anfangs habe ich diesen für die zigbee sensoren verwendet --> topic: zigbee/0/#.
Inzwischen sind 3-4 andere MQTT relevante Systeme dazugekommen und ich habe jedesmal für einen neuen "Haupt"-topic eine neues LBS instanz erstellt.
z.B. zwave/0/# neue LBS instanz --> neuer MQTT message output.
So lässt sich eigentlich schön damit arbeiten, inzwischen frage ich mich allerdings ob das der Idealfall ist.
Wäre es sinnvoller nur eine Instanz des LBS zu nutzen und hier alle topics zu subscriben oder macht es nichts wenn 5 Instanzen gleichzeitig laufen?
Muss hier eine unterschiedliche ClientID anstatt AUTO verwendet werden?
Ausserdem ist mir aufgefallen dass 2 Instanzen des LBS nach einem Edomi restart keine Daten mehr empfangen. Wenn ich dann per Hand den topic erneut setze empfangen sie wieder Daten.
VG
Kommentar
-
Zitat von Zaschii Beitrag anzeigenSo lässt sich eigentlich schön damit arbeiten, inzwischen frage ich mich allerdings ob das der Idealfall ist.
Wäre es sinnvoller nur eine Instanz des LBS zu nutzen und hier alle topics zu subscriben oder macht es nichts wenn 5 Instanzen gleichzeitig laufen?
Tendenziell würde ich eher je eingrenzbaren Topic Bereich einen Subscribe Client einsetzen, da dann auch die Auswerte-Logik nicht unnötig getriggert wird.Zitat von Zaschii Beitrag anzeigenMuss hier eine unterschiedliche ClientID anstatt AUTO verwendet werden?
Zitat von Zaschii Beitrag anzeigenAusserdem ist mir aufgefallen dass 2 Instanzen des LBS nach einem Edomi restart keine Daten mehr empfangen. Wenn ich dann per Hand den topic erneut setze empfangen sie wieder Daten.Zuletzt geändert von jonofe; 26.01.2021, 18:07.
Kommentar
-
Danke für die schnelle Antwort.
Ausserdem ist mir aufgefallen dass 2 Instanzen des LBS nach einem Edomi restart keine Daten mehr empfangen. Wenn ich dann per Hand den topic erneut setze empfangen sie wieder Daten.
Kommentar
-
Zitat von uzi10 Beitrag anzeigenBei mir kommen die Ergebnisse in die falsche Spalte.
Kommentar
Kommentar