Ankündigung

Einklappen
Keine Ankündigung bisher.

Neues MQTT Plugin

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

  • Msinn
    antwortet
    Zitat von danny Beitrag anzeigen
    Wie gibt man das in das Feld bool_values: richtig ein? Wenn ich es so eingebe:
    Anmerkung 2020-05-29 102312.png
    Wenn Du es so eingibst, erwartest Du dass der IOBroker nicht false und true sendet, sondern die Werte Falsch und Wahr. Normalerweise sollte der Wert leer bleiben, es sei denn, Du hast einen MQTT Device, welches andere Werte als false und true sendet (z.b: EIN/AUS, WAHR, FALSCH, ON/OFF, ...), die Du aber in ein Bool-Item einlesen möchtest.

    Einen Kommentar schreiben:


  • danny
    antwortet
    Hallo Msinn,

    habe alles gelesen was du geschrieben hast. Fehler 60 und evtl. ein Bug. (Fehler sitz 60cm vom Bidschirm entfernt.)

    Zitat von Msinn Beitrag anzeigen

    Dann MUSST Du bool_values: 'false','true' weg lassen.
    Habe ich gemacht! Das Problem ist wenn man in der Admin Weboberfläche im Feld bool_values etwas eingegeben hat (reboot vom Sytem), es dann wieder löscht(in der Admin Oberfläche) dann bleibt es in der etc.yaml stehen.

    Code:
    %YAML 1.1
    ---
    # etc/module.yaml
    http:
        module_name: http
        starturl: admin
    
    admin:
        module_name: admin
    
    mqtt:
        module_name: mqtt
        broker_host: 192.168.1.2
        broker_port: 1883
        broker_monitoring: true
        birth_topic: Smarthome_birth_topic
        birth_payload: Smarthome_ist_gebohren
        qos: 1
        bool_values: ''
    Wenn man das bool_values: '' aus der etc.yaml löscht neu startet dann funktioniert alles wie gewünscht.

    So jetzt noch mal bitte zu meiner Frage:

    Wie gibt man das in das Feld bool_values: richtig ein? Wenn ich es so eingebe:
    Anmerkung 2020-05-29 102312.png


    Habe einmal "true" geschalten dann kommt garnix im Broker an. (Aktualisieren hab ich gedrückt)
    Hier würde ich jetzt aber "Wahr" erwarten.
    Anmerkung 2020-05-29 103316.png



    Dann habe ich "false" geschalten:
    Dann kommt beim Broker als payload:

    '['Falsch','Wahr']'

    und der Raw wert: 3991397097108115991043944398797104114399339

    Anmerkung 2020-05-29 103842.png
    hier würde ich aber nur ein "Falsch" als Payload erwarten.

    Verstehe ich da was falsch?

    Danke für deine Geduld und Hilfe.

    Gruß Danny



    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Hast Du gelesen was ich geschrieben habe?

    Einen Kommentar schreiben:


  • danny
    antwortet
    Anmerkung 2020-05-28 142826.png

    Wenn ich jetzt nur "false" bei bool_values eingebe und wenn ich in meinen Items im SmarthomeNG "false" und "true" schalte dann geht die Lampe aus bei "false" und bei "true" passiert nix.

    Wenn ich jetzt nur "true" bei bool_values eingebe und wenn ich in meinen Items im SmarthomeNG "false" und "true" schalte dann geht die Lampe an bei "false" und bei "true" passiert nix..

    ???

    Wenn ich kein true und false eingebe passiert garnichts auf dem MQTT Broker.
    Muss jetzt erst mal in die Spätshicht.
    Danke erst mal. wegen den 5 Fragen. Die hab ich doch beantwortet. teils mit Bildern.


    Gruß Danny
    Zuletzt geändert von danny; 28.05.2020, 13:43.

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Im MQTT Explorer hast Du die Payload als json anzeigen lassen. Ist sie in der Raw Anzeige auch 'false'?

    UND: Wer ist Sender des Pakets gewesen? IOBroker oder war das ein Schaltversuch aus SmartHomeNG?

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Zitat von danny Beitrag anzeigen
    Das geplante Setup hat mit smarthomeNG v1.6b schon funktioniert.
    Dann MUSST Du bool_values: 'false','true' weg lassen. Diese Option ist neu in v1.7 und wenn es in 1.6 gibt es die Möglichkeit gar nicht.
    --> 1.6b bedeutet Du warst auf dem develop branch. Jetzt bist Du anscheinend auf dem master (sonst wäre die mqtt Plugin Version v2.0.1)

    Du schickst mir viele Bilder aus Tools/Systemen die ich nicht kenne. Ich habe nicht die Zeit mich da einzulesen. Kannst Du einfach erstmal meine 5 Fragen beantworten?

    Einen Kommentar schreiben:


  • danny
    antwortet
    Anmerkung 2020-05-28 140651.png

    Einen Kommentar schreiben:


  • danny
    antwortet
    Das geplante Setup hat mit smarthomeNG v1.6b schon funktioniert. Ich habe lediglich einen neuen Container mit smarthomeNG v1.7.1 angelegt und alles wieder so übernommen wie vorher. Bis auf das MQTT Plugin ohne alle Parameter wie vorher und das Plugin im Admininterface hab ich alles wie im unten im module.yaml geändert.

    Zur info: MQTT Explorer ist das gleiche wie MQTTBox.

    Das Topic ist:

    Licht_Florian_Bett_Bool

    siehe oben meine florian.yaml

    mqtt_topic: Licht_Florian_Bett_Bool

    und der Payload ist:

    true oder false

    mehr nicht.


    hier die module.yaml

    Code:
    %YAML 1.1
    ---
    # etc/module.yaml
    http:
        module_name: http
        starturl: admin
    
    admin:
        module_name: admin
    
    mqtt:
        module_name: mqtt
        broker_host: 192.168.1.2
        broker_port: 1883
        broker_monitoring: true
        bool_values: 'false','true'
        last_will_topic: SmarthomeNG Stop
        birth_topic: SmarthomeNG Start
    plugin.yaml
    Code:
    mqtt:
        plugin_name: mqtt
        broker_monitoring: true
    hier ein Screenshot von IOBroker von dem bool vom Florian:


    Anmerkung 2020-05-28 131629.png


    OK die Punkte hier:

    Wo hast Du was gestartet?
    Die Software MQTTBox auf meinem Dell Rechner.

    Woher hast Du die Nachrichten bekommen?
    Die ersten 2 Protokolle kommen vom Broker beim Start weil sie retain sind.

    Anmerkung 2020-05-28 134438.png
    Wie schaltest Du?

    Wenn ich ein true oder false im MQTT Explorer bei PUBLISH eingebe und Topic Licht_Florian_Bett_Bool auswähle.
    Dann geht die Lampe ein oder aus wie gewünscht.

    Wenn ich aber das im SmarthomeNG Admininterface mache dann kommt nur bei "false" eine leere Meldung und bei "true" kommt garnichts imm MQTT Broker an.

    Anmerkung 2020-05-28 134950.png
    Anmerkung 2020-05-28 135030.png


    Woher kommen die Messages wo false drüber steht?

    Vom Broker beim Start.

    Wer interpretiert, dass die raw Payload "false" bedeutet?

    keine Ahnung?

    Wenn Du beim Einschalten 2 Messages bekommen hast und 2x an und 2x aus geschaltet hast, müsstest Du 6 MQTT Messages haben und nicht 4.

    Ja ich bekomme ja 2 Retain beim start und nur wenn ich "false" im smarthomeNG schalte eine Message.
    2x Retain + 2x false +0x true = 4 MQTT Messages
    Zuletzt geändert von danny; 28.05.2020, 13:03. Grund: Schreibdepp.

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Ich habe Dein (geplantes) Setup jetzt so verstanden:

    Du möchtest von SmartHomeNG MQTT Telegramme an IOBroker schicken, der dann (für diese Kommunikation nicht relevant) auf einem weiteren Weg die Shelly Devices anspricht.

    Jetzt die Frage: Wie ist das Topic und wie muss die Payload aussehen, die IOBroker erwartet?
    Das Musst Du exakt benennen, da es für den Inhalt der Payload im MQTT Protokoll v3 keine Definition gibt. Die Payload ist einfach ein Array of Byte. Beide Geräte können sich also nur verstehen, wenn sie sich einig sind, wie dieses Array of Byte zu interpretieren ist.


    Ich vermute, Du möchtest auch Statusänderungen an SmartHomeNG zurückmelden. Wie ist das Topic, welches IOBroker sendet und welche Payload wird von IOBroker gesendet? Das kannst Du am besten Mit Tools wie MQTT Explorer, MQTT.fx oder ähnlichen sehen.


    Nachtrag:

    Zitat von danny Beitrag anzeigen
    hier ein Screenshott wo ich gestartet habe und 2 Nachrichten mit Status bekommen von Sophia und Florian. Beide false. Dann schalte ich bei Florian jeweils 2x an und 2x aus.
    Wo hast Du was gestartet?
    Woher hast Du die Nachrichten bekommen?
    Wie schaltest Du?
    Woher kommen die Messages wo false drüber steht? Wer interpretiert, dass die raw Payload "false" bedeutet?
    Wenn Du beim Einschalten 2 Messages bekommen hast und 2x an und 2x aus geschaltet hast, müsstest Du 6 MQTT Messages haben und nicht 4.
    Zuletzt geändert von Msinn; 28.05.2020, 11:27. Grund: Nachtrag hinzugefügt

    Einen Kommentar schreiben:


  • danny
    antwortet
    Zitat von Msinn Beitrag anzeigen
    Was meinst Du damit? Ich verstehe Dein Setup im Moment nicht.

    Sieht das so aus?
    SmartHomeNG ---> MQTT ---> IOBroker ---> Alexa ---> Shelly?
    SmartHomeNG ---> MQTT ---> IOBroker ---> Shelly(Web_Api)?
    oder Alexa direkt
    Alexa --->Shelly

    Zitat von Msinn Beitrag anzeigen
    Das Bild ist übrigens nicht aus IOBroker sondern aus dem Webinterface des Shelly Devices selbst.
    Stimmt.

    Zitat von Msinn Beitrag anzeigen
    Aus welchem Tool stammt der Screenshot?
    Wer sendet und wer hat die Topics aboniert?
    Topic to subscribe habe ich einfach ein # eingefügt.
    Mit dem Tool "mqttbox" arbeite ich immer und senden sollte smarthomeNG.
    Habe das Licht einfach in der Adminoberfläche von smarthomeNG ein- und ausgeschalten.
    In Smartvisu ändert es entsprechend seinen Status aber in der mqttbox sieht man nur wie im Screenshot vorher.

    Zitat von Msinn Beitrag anzeigen
    Andere Frage: Wenn die Shelly Devices bai Dir bereits über Alexa ansteuerbar sind, wäre dann nicht der Weg das Alexa Plugin von SmartHomeNG zu nutzen?
    Ich habe das Alexa Plugin schon mal probiert aber bin qualvoll gescheitert. Bei mir läuft IOBroker,SmarthomeNG,KNXD und Pihole auf einer Synology im Docker.
    Smartvisu im Webserver und MQTT als Packet auf der Synology (DS218+).
    Bekomme nach Umstellung die AmazonDash Buttons auch aktuell nicht zum laufen. Wollte nicht noch eine neue Baustelle aufmachen mit dem Alexa Plugin.
    Finde es auch viel zu kompliziert und die Beschreibung passte nicht zusammen mit dem was mir bei Amazon angezeigt wurde. Habe auch keinen ReverseProxy
    da ich VPN benutze. Wüsste auch nicht wie ich das mit meiner Synology machen könnte.
    MQTT muss doch irgendwie wieder zum laufen gebracht werden?

    Hatte es damals über eine Änderung im Plugin gelöst. Beitrag #93 von henfri. Das war nur ein Mapping von True auf true und False auf false.
    Das sollte doch bool_values machen oder nicht?

    Hier noch Screenshots von der Synology. Brauchts du irgendein Logfile? oder andere Bilder?

    Anmerkung 2020-05-28 113352.png

    Anmerkung 2020-05-28 113233.png
    Danke für deine Hilfe.
    Zuletzt geändert von danny; 28.05.2020, 10:51.

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Zitat von danny Beitrag anzeigen
    Deswegen kommuniziere ich über IOBroker indirekt mit Shelly.
    Was meinst Du damit? Ich verstehe Dein Setup im Moment nicht.

    Sieht das so aus?
    SmartHomeNG ---> MQTT ---> IOBroker ---> Alexa ---> Shelly?

    Das Bild ist übrigens nicht aus IOBroker sondern aus dem Webinterface des Shelly Devices selbst.

    Zitat von danny Beitrag anzeigen
    hier ein Screenshott wo ich gestartet habe und 2 Nachrichten mit Status bekommen
    Aus welchem Tool stammt der Screenshot?
    Wer sendet und wer hat die Topics aboniert?


    Andere Frage: Wenn die Shelly Devices bai Dir bereits über Alexa ansteuerbar sind, wäre dann nicht der Weg das Alexa Plugin von SmartHomeNG zu nutzen?
    Zuletzt geändert von Msinn; 28.05.2020, 09:33.

    Einen Kommentar schreiben:


  • danny
    antwortet
    Hallo Msinn,

    ich habe aber die Shelly RGBW2 Geräte. Zur info: Ich habe das Shelly Plugin nicht in Betrieb aus 2 Gründen.
    Damals gab es das nicht und ich will die "Alexa" Funktion nicht verlieren. Die Geräte sind bei mir über IOBroker angebunden und da auch nicht über MQTT sondern über die Webschnittstelle.
    Man kann bei IOBroker im Plugin auswählen wie die Kommunikation funktionieren soll (siehe Bild unten). Wenn bei den Shelly Geräten MQTT aktiviert wird dann geht die Alexa Funktion verlohren. Diese nutzen aber meine Kinder sehr gerne und die soll auch beibehalten werden. Deswegen kommuniziere ich über IOBroker indirekt mit Shelly. Wenn ich jetzt aber garnichts bei bool_value eingebe dann sendet er aber ohne true und false.

    Shelly2MQTT.png

    Code:
        florian:
            alles_aus:
                type: bool
                visu_acl: rw
                knx_dpt: 1
                knx_send: 2/1/50
                knx_reply: 2/1/201
            licht:
                name: Florian Licht
                type: bool
                knx_send: 2/1/201
                enforce_updates: True
                knx_dpt: 1
                eval: or
                eval_trigger:
                  - .decke
                  - .wand
                  - .bett
                
                decke:
                    name: Decke
                    type: bool
                    visu_acl: rw
                    knx_dpt: 1
                    knx_send: 2/1/0
                    knx_listen: 2/1/1  
                    cache: 'yes'                
                bett:
                    name: LED Bett
                    type: bool
                    visu_acl: rw
                    knx_dpt: 1
                    knx_listen: 2/1/10
                    knx_status: 2/1/11
                    knx_reply: 2/1/11
                    mqtt_topic: Licht_Florian_Bett_Bool
    #                mqtt_mapping: "{True: 'true', False: 'false'}"
                    cache: 'yes'
                    dimmen:
                        type: num
                        visu_acl: rw
                        knx_dpt: 5.001
                        knx_listen: 2/1/13
                        knx_status: 2/1/14
                        knx_reply: 2/1/14
                        mqtt_topic: Licht_Florian_Bett_Wert
                        cache: 'yes'
    Wenn ich die Variable "bool_values" leer lasse und in Smartvisu Einschalte sendet MQTT nichts wenn ich dann Ausschalte sendet er einen leeren payload.

    hier ein Screenshott wo ich gestartet habe und 2 Nachrichten mit Status bekommen von Sophia und Florian. Beide false. Dann schalte ich bei Florian jeweils 2x an und 2x aus.



    Anmerkung 2020-05-28 092639.png

    Wie kann ich hier weiter vorgehen?

    Gruß Danny


    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Für true und false musst Du eingentlich nichts angeben. Das musst Du nur angeben, wenn Deine Devices z.B. 'On' und 'Off' oder 'Wahr' und 'Falsch'] als Strings senden/erwarten und Du die Werte in ein Item vom Typ Bool einlesen willst.

    Ich habe für bool_values nichts eingegeben und meine Shelly Devices funktionieren mit dem Shelly Plugin anstandslos.

    Einen Kommentar schreiben:


  • danny
    antwortet
    Hallo,

    kurze Frage zum parametrieren von bool_values.
    Meine Shelly Geräte erwarten false und true .
    Wie muss ich das eingeben:
    ['false','true'] oder
    'false','true'
    funktioniert so nicht.

    Gruß Danny
    mqtt.png

    Einen Kommentar schreiben:


  • jonsson
    antwortet
    noch einmal geprüft, jetzt geht es auch mit dem Modul!!

    ich denke dass ich nur das Modul "mqtt" aktiv hatte, nicht aber auch das Plugin "mqtt"

    Einen Kommentar schreiben:

Lädt...
X