Ankündigung

Einklappen
Keine Ankündigung bisher.

MQTT API Server und MQTT Clients - LBS19001051 - LBS19001054

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • jonofe
    antwortet
    Habe es gerade mal getestet:

    Subscribe Client:
    E9: test/topic

    Publish Client:
    E7: test/topic|1

    Ergebnis Subscribe Client:
    A1: test/topic
    A2: 1

    Broker ist Mosquitto auf einem RPI inkl. TLS.

    Bei mir funktioniert es. Evtl. liegt es noch irgendwie an Docker. Damit kenne ich mich aber nicht aus.

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von matschie Beitrag anzeigen
    Dann verstehe ich nicht,
    Ich, ehrlich gesagt, auch nicht.

    Einen Kommentar schreiben:


  • matschie
    antwortet
    Zitat von jonofe Beitrag anzeigen

    Eigentlich sollte das funktionieren. Der Publish Client hat ja eine andere ID als der Subscribe Client, könnte also theoretisch eine komplett andere Applikation sein, welche zufällig auf demselben Server läuft (gleiche IP).
    Dann verstehe ich nicht, warum ich zwar Publishen kann, der Subscribe Baustein auch getriggert wird (Fehlermeldung immer wenn gepublished wird), aber dann den Fehler ausgibt, da ich ja die Topics von einem anderen MQTT Broker (auch Mosquitto, aber andere VM) empfange..

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von matschie Beitrag anzeigen
    Kann es sein, dass Edomi nicht ein Topic Publishen und dann selber Subscriben kann?
    Eigentlich sollte das funktionieren. Der Publish Client hat ja eine andere ID als der Subscribe Client, könnte also theoretisch eine komplett andere Applikation sein, welche zufällig auf demselben Server läuft (gleiche IP).

    Einen Kommentar schreiben:


  • matschie
    antwortet
    Also, ich habe herausgefunden dass der Subscribe-Baustein hervorragend funktioniert, wenn ich ihn mit einem anderen Broker verbinde.

    Kann es sein, dass Edomi nicht ein Topic Publishen und dann selber Subscriben kann?

    VG

    Einen Kommentar schreiben:


  • matschie
    antwortet
    Zitat von hartwigm Beitrag anzeigen
    Hallo Yves,
    du brauchst in immer irgendeinen MQTT-Server. Hier habe ich mit dem Mosquitto in Docker installiert.
    Hallo Hartwig,

    ich habe auch dem Mosquitto im Docker und kann mit dem LBS 19001053 auch Publishen, zumindest zeigt das log das an:
    Code:
     [TABLE="border: 0, cellpadding: 0, cellspacing: 0"]
     	 		[TR]
     			[TD]2020-04-22 18:11:48[/TD]
     			[TD]870763[/TD]
     			[TD]19175[/TD]
     			[TD]debug[/TD]
     			[TD]EXE19001053 [v0.6]: MQTT Publish Client started (1190)[/TD]
     		[/TR]
     		[TR]
     			[TD]2020-04-22 18:11:48[/TD]
     			[TD]979085[/TD]
     			[TD]19175[/TD]
     			[TD]debug[/TD]
     			[TD]EXE19001053 [v0.6]: Publishing topic: musik/wintergarten/volume with payload: 21 and qos: 1 and retain: 1 (1190)[/TD]
     		[/TR]
     		[TR]
     			[TD]2020-04-22 18:11:49[/TD]
     			[TD]386919[/TD]
     			[TD]19175[/TD]
     			[TD]debug[/TD]
     			[TD]EXE19001053 [v0.6]: MQTT Publish Client ended (1190)[/TD]
     		[/TR]
     	 [/TABLE]
    Leider kann ich mit dem LBS 19001054 nicht empfangen, hier kommt folgende Fehlermeldung:
    Code:
     [TABLE="border: 0, cellpadding: 0, cellspacing: 0"]
     	 		[TR]
     			[TD]2020-04-22 18:10:49[/TD]
     			[TD]009890[/TD]
     			[TD]19076[/TD]
     			[TD]debug[/TD]
     			[TD]EXE19001054 [v0.5]: Starting MQTT Subscribe Client daemon (1191)[/TD]
     		[/TR]
     		[TR]
     			[TD]2020-04-22 18:10:49[/TD]
     			[TD]219305[/TD]
     			[TD]19076[/TD]
     			[TD]debug[/TD]
     			[TD]EXE19001054 [v0.5]: Command received by daemon: subscribe (1191)[/TD]
     		[/TR]
     		[TR]
     			[TD]2020-04-22 18:10:49[/TD]
     			[TD]228200[/TD]
     			[TD]19076[/TD]
     			[TD]debug[/TD]
     			[TD]EXE19001054 [v0.5]: Added subscription: musik/wintergarten/# with QoS: 1 (1191)[/TD]
     		[/TR]
     		[TR]
     			[TD]2020-04-22 18:11:48[/TD]
     			[TD]518354[/TD]
     			[TD]19076[/TD]
     			[TD]debug[/TD]
     			[TD]EXE19001054 [v0.5]: Exception caught: Unknown error. (1191)[/TD]
     		[/TR]
     	 [/TABLE]
    Jetzt suche ich schon eine Weile nach dem Fehler - und finde deinen Hinweis:
    Dann im IObroker den MQTT -Client Adapter sowie in Edomi dem Subscriber.
    Damit kommt alles recht einfach vom iobroker bei Edomi an.
    und frage mich: Brauche ich wirklich noch den ioBroker? Kann ich nicht direkt mit dem 19001054 vom mosquitto-docker subscriben?
    Mein mosquitto server sagt, dass Edomi ganz normal subscribed:
    Code:
    1587574498: New client connected from 192.168.178.75 as EDOMI_MQTT_Subscribe_Client_1191-5ea06c8902781 (p2, c1, k60).

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Wenn du wirklich nur diese Art von Topics benötigst, dann solltest du auf /deconz/0/Sensors/#/temperature subscriben. Das Ergebnis dann mit dem MQTT Parser LBS in die einzelnen Temperaturen zerlegen.

    Einen Kommentar schreiben:


  • knxzzz
    antwortet
    Hi jonofe
    ich verzweifel immer noch am filtern.
    Ziel ist, alles von deconz topic zu subscriben

    Darunter dann z.B. zu Filtern auf:
    deconz/0/Sensors/7/temperature
    deconz/0/Sensors/8/temperature

    usw.

    Ist das möglich?

    Frohe Ostern!

    Einen Kommentar schreiben:


  • knxzzz
    antwortet
    Zitat von jonofe Beitrag anzeigen

    Ich würde nur einen Subscribe Client verwenden. Wenn möglich die zu subscribenden Topics einschränken. Dann mit Filtern weiter runter filtern und danach mit dem MQTT-Parser LBS auswerten.

    Die neue Version, die ich gerade überarbeite kann direkt mehrer Topics am Subscribe Eingang verarbeiten.
    Mit der aktuellen Version kannst du auch nacheinander mehere Topics auf den Subscribe Eingang senden. Es sollten dann alle subscribten Topics an den Ausgängen rauskommen.
    Kannst du mir sagen wie das mit den Filtern umzusetzen ist?
    Wann kommt deine neue Version ca.?

    Vielen Dank. ;-)

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von knxzzz Beitrag anzeigen
    Wie verwendet ihr den Client?
    Ich würde nur einen Subscribe Client verwenden. Wenn möglich die zu subscribenden Topics einschränken. Dann mit Filtern weiter runter filtern und danach mit dem MQTT-Parser LBS auswerten.

    Die neue Version, die ich gerade überarbeite kann direkt mehrer Topics am Subscribe Eingang verarbeiten.
    Mit der aktuellen Version kannst du auch nacheinander mehere Topics auf den Subscribe Eingang senden. Es sollten dann alle subscribten Topics an den Ausgängen rauskommen.

    Einen Kommentar schreiben:


  • knxzzz
    antwortet
    Hi zusammen,

    hätte eine Frage zur Verwendung von 19001054.
    Brauch ich den pro topic welchen ich subricben will oder reicht einer und es wirdhinter per logik gefiltert?
    Ich frage desswegen, weil ich im Moment einige zeitlgiech am laufen habe und die mqtt Nachrichten sehr verzögert bearbeitet werden.
    Wie verwendet ihr den Client?
    Angehängte Dateien

    Einen Kommentar schreiben:


  • hartwigm
    antwortet
    Hallo Yves,

    du brauchst in immer irgendeinen MQTT-Server. Hier habe ich mit dem Mosquitto in Docker installiert.

    Dann im IObroker den MQTT -Client Adapter sowie in Edomi dem Subscriber.

    Damit kommt alles recht einfach vom iobroker bei Edomi an.

    Einen Kommentar schreiben:


  • starwarsfan
    antwortet
    Hallo Hartwig,

    also wenn ich's richtig verstehe, dann braucht man entweder die Kombi MQTT-Subscribe-Client (Edomi) und MQTT-Broker/Client (ioBroker) oder MQTT-Subscribe-Server (Edomi) und MQTT-Client (ioBroker), ja?

    Einen Kommentar schreiben:


  • hartwigm
    antwortet
    starwarsfan
    Zitat von ;n1478955
    Was genau meinst Du mit "markieren"? Wie? Wo? Hast Du evtl. einen Screenshot?
    Wenn Du den mqtt.client installierst (und nur da) bekommt Du einen Schraubenschllüssel bei deinen Objekte angezeigt. Je Objekt ein Schraubenschlüssel.

    Dahinter verbirgt sich die Konfiguration des mqtt Clients





    mqclient1.PNG


    mqclient2.PNG


    In dem Beispiel wird das auf edomi/set/internal/9950 gesetzt.


    Durch den Edomi.Mqtt Subscriber wird dies nun ohne weitere Logic in das Edomi KO 9950 geschrieben.

    Das ist einfach nur cool und einfacher geht nicht!

    nqtt3.PNG

    Ich habe dabei jonofe´s genialen Baustein noch um die E14 und E15 ergänzt um das Payload gleich im Baustein zu vergleichen.

    Iobrocker sendet je nach Adapter mal eine 0/1 oder ein wahr/falsch oder true/false oder on/off. Damit ist das auch gleich auf 0/1 normiert


    Ich hoffe das hilft Dir weiter!


    Einen Kommentar schreiben:


  • hartwigm
    antwortet
    Zitat von jonofe Beitrag anzeigen

    Du meint den Mosquitto Broker, oder?
    JA!

    Einen Kommentar schreiben:

Lädt...
X