Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. MQTT Befehl nach Alexa Sprachkommando senden

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    MQTT Befehl nach Alexa Sprachkommando senden

    This topic has been deleted. Only users with topic management privileges can see it.
    • jolu1705
      jolu1705 @MCU last edited by

      @mcu Die Datenpunkte werden nicht automatisch gefüllt, die habe ich manuell angelegt.
      Ich hab mir gedacht ich lege die einmal an um den aktuellen Status da später erfassen zu können.

      Der Eintrag unter mqtt.0 kam automatisch und ist wohl der der gesteuert werden soll.

      Du machst die Steuerung mit "steuere....".... warum?

      Ich habe es immer über diesen Baustein probiert.
      mqtt4.PNG

      M BananaJoe 2 Replies Last reply Reply Quote 0
      • M
        MCU @jolu1705 last edited by

        @jolu1705 Funktioniert es?
        Das Objekt wird geändert und den Rest publishen macht dann der Adapter.

        1 Reply Last reply Reply Quote 0
        • BananaJoe
          BananaJoe Most Active @jolu1705 last edited by BananaJoe

          @jolu1705

          Im Normalfall melden sich die Geräte am MQTT-Broker (aka Server) als Client an.
          Dann "publishen" die Ihre Werte die sie der Welt mitteilen wollen. Zum Beispiel ob sie gerade an oder aus sind (ON / OFF), oder wie die Temperatur ist oder aber ob ein Kontakt geschlossen ist oder nicht (is Opened = true)

          Gleichzeitig können dieses Geräte auch MQTT Einträge abonnieren. Im einfachsten Fall meldet ein Gerät z.B.

          mqtt.0.MyDevice.Stehlampe.POWER = ON
          

          Gleichzeitig hat das Gerät aber genau diesen Datenpunkt (Topic in MQTT genannt) abonniert. Das bedeutet das bei Änderungen das Gerät über eben diese Änderung informiert wird.
          Das bedeutet das du in ioBroker diesen Datenpunkt einfach mit dem neuen Wert OFF beschreiben kannst und das Gerät sich dann ausschaltet.

          So sendet man Befehle per MQTT an Geräte.

          Was das Gerät sendet und was es abonniert hängt vom Gerät ab. Manchmal sind es auch unterschiedliche Datenpunkte. Tasmota-Geräte senden Ihren Status z.B. unter mqtt.0.stat.Gerätename und lauschen aber unter mqtt.0.cmnd.Gerätename

          jolu1705 1 Reply Last reply Reply Quote 0
          • jolu1705
            jolu1705 @BananaJoe last edited by

            @bananajoe Bei normalen Geräten würde ich dir recht geben, aber das ist eine Selbstbauplatine mit einem eigenen Programm das scheinbar seinen Status nicht meldet (oder ich habe noch nicht rausgefunden wie) 🙂
            Mir reicht es aber völlig wenn ich Befehle senden kann und das Teil dann was tut, für mehr ist es auch nicht gedacht.

            @MCU Ich werde deine Option probieren. Kannst du mir sagen warum mein Ansatz über den sendTo Block falsch ist? Ich hab gedacht genau dafür ist das Teil da? Könnte ich das auch damit realisieren und wie würde das dann aussehen müssen?

            Danke übrigens generell für die Hilfe hier. Ich lerne täglich dazu.

            1 Reply Last reply Reply Quote 0
            • M
              MCU last edited by

              @jolu1705
              Hier kannst du nachlesen, wie man es über den Sendto Befehl machen kann:
              https://github.com/ioBroker/ioBroker.mqtt

              Zeig doch mal Dein eigenes Programm hier.
              (Ab der 2. Zeile -> Spoiler (Auge), direkt danach CodeTags (</>) und dann das Programm mit STRG+V einfügen).

              Danke.

              jolu1705 1 Reply Last reply Reply Quote 0
              • jolu1705
                jolu1705 @MCU last edited by

                @mcu Der Quellcode für den Adapter ist hier: https://github.com/ct-Open-Source/wake-on-esp

                1 Reply Last reply Reply Quote 1
                • jolu1705
                  jolu1705 @MCU last edited by jolu1705

                  @mcu said in MQTT Befehl nach Alexa Sprachkommando senden:

                  @jolu1705 Du musst doch jetzt nur noch den Wert in dem Objekt ändern:

                  be4c937b-249b-4654-a878-e0f6c14dbfcd-image.png

                  oder reset oder force_off anstelle von on in dem Block setzen.

                  Wer füllt die Datenpunkte:? Adpater? ESP?
                  5e70e279-1701-44dd-9d42-c87e73c949ec-image.png

                  Das habe ich gerade bei mir gemacht.
                  Ein Cron der um 15:40 Uhr den Befehl ausführen sollte.
                  Es ist genau - gar nichts - passiert.

                  Das bringt mich noch zur Verzweiflung haha

                  Ich vermute mittlerweile das sich der Adapter nicht korrekt am MQTT anmeldet und deshalb sich da auch nicht steuern lässt. Trage ich nämlich den Status manuell um, passiert auch nichts, und spätestens dann müsste es gehen.
                  Sende ich via SSH den Publish Befehl über Mosquitto funktioniert es sofort.
                  Also ist der Fehler weiter eingekreist.

                  jolu1705 1 Reply Last reply Reply Quote 0
                  • jolu1705
                    jolu1705 @jolu1705 last edited by

                    @jolu1705 Klicke ich im mqtt.0 Adapter (der als Client läuft) auf "Teste Verbindung zum Server" kommt da nur "error".
                    Name und Passwort sind aber 100% korrekt. Wo kann ich nachsehen was da für ein Problem besteht.
                    "error" ist ein wenig dürftig 🙂

                    jolu1705 1 Reply Last reply Reply Quote 0
                    • jolu1705
                      jolu1705 @jolu1705 last edited by

                      @jolu1705 Er scheint sich zu verbinden, aber nur der Test klappt scheinbar nicht.

                      mqtt.0	2021-03-23 16:25:39.880	warn	(4493) Error on mqtt test: Error: Connection refused: Not authorized
                      mqtt.0	2021-03-23 16:25:28.699	info	(4493) All states published
                      mqtt.0	2021-03-23 16:25:28.626	info	(4493) Subscribe on: "mqtt.0/#"
                      mqtt.0	2021-03-23 16:25:28.625	info	(4493) Subscribe on: "ESP-996412/#"
                      mqtt.0	2021-03-23 16:25:28.621	info	(4493) Subscribe on: "#"
                      mqtt.0	2021-03-23 16:25:28.618	info	(4493) Connected to localhost
                      mqtt.0	2021-03-23 16:25:28.520	info	(4493) Try to connect to mqtt://iobroker:*******************@localhost:1883?clientId=iobroker_mqtt_client
                      mqtt.0	2021-03-23 16:25:28.183	info	(4493) starting. Version 2.3.5 in /opt/iobroker/node_modules/iobroker.mqtt, node: v12.21.0, js-controller: 3.2.16
                      
                      jolu1705 1 Reply Last reply Reply Quote 0
                      • jolu1705
                        jolu1705 @jolu1705 last edited by

                        @jolu1705 Update 2342 🙂

                        Wenn ich das Topic für den mqtt.0 Client ändere, sehe ich das auf dem Server d.h. er hat eine Verbindung.
                        Warum dann das "Teste Verbindung zum Server" nur "error" zeigt, bleibt ein Geheimnis.

                        jolu1705 1 Reply Last reply Reply Quote 0
                        • jolu1705
                          jolu1705 @jolu1705 last edited by

                          @jolu1705 oha ich werde besser........zumindest kann ich nun Anleitungen lesen 🙂

                          Gebe ich - wie in der Dokumentation - in der URL broker.mqttdashboard.com ein, steht da "verbunden".
                          Der Verbindungstest funktioniert d.h. es gibt ein Problem den mqtt.0 mit mosquitto zu verbinden.
                          Ich muss da wohl mal den mosquitto neu installieren oder mal da nach einen Fehler suchen.
                          Seltsam ist aber das per SSH ein Befehl direkt funktioniert, allerdings melde ich mich da auch nicht mit Username und Passwort an.

                          Es bleibt spannend 🙂

                          jolu1705 1 Reply Last reply Reply Quote 0
                          • jolu1705
                            jolu1705 @jolu1705 last edited by

                            @jolu1705

                            ok ich habe nun mit

                            sudo lsof -i -P -n | grep 1883
                            

                            mal nachgesehen was auf Port 1883 horcht.

                            mosquitto 17004 mosquitto    5u  IPv4 4737237      0t0  TCP *:1883 (LISTEN)
                            mosquitto 17004 mosquitto    6u  IPv6 4737238      0t0  TCP *:1883 (LISTEN)
                            

                            Soweit so gut,.

                            Starte ich den mqtt.0 Adapter kommt das:

                            mosquitto 17004 mosquitto    5u  IPv4 4737237      0t0  TCP *:1883 (LISTEN)
                            mosquitto 17004 mosquitto    6u  IPv6 4737238      0t0  TCP *:1883 (LISTEN)
                            mosquitto 17004 mosquitto    8u  IPv4 4777854      0t0  TCP 127.0.0.1:1883->127.0.0.1:36750 (ESTABLISHED)
                            node      21952  iobroker   27u  IPv4 4776682      0t0  TCP 127.0.0.1:36750->127.0.0.1:1883 (ESTABLISHED)
                            
                            

                            Da werde ich nun nicht mehr schlau draus und weiß nicht ob das so korrekt ist.

                            Mit der Windows Software MQTT Explorer kann ich mich zum Mosquitto Server verbinden, nur mit dem mqtt.0 Adapter auf dem iobroker nicht.

                            Jemand noch eine Idee?

                            jolu1705 1 Reply Last reply Reply Quote 0
                            • jolu1705
                              jolu1705 @jolu1705 last edited by

                              @jolu1705 Ok, ich habe die Authentication vom mosquitto mal abgeschaltet und es funktioniert.
                              Also habe ich die User neu angelegt und die Authentication wieder aktiviert.
                              Im Windows MQTT Explorer kann ich mich mit einem Benutzer anmelden, der mqtt.0 Adapter vom iobroker verbindet sich allerdings nicht.

                              jolu1705 1 Reply Last reply Reply Quote 0
                              • jolu1705
                                jolu1705 @jolu1705 last edited by

                                @jolu1705
                                Mosquitto Server neu installiert und Benutzer eingerichtet
                                MQTT.0 Adapter neu installiert und Benutzer eingetragen

                                über tail -f /var/log/mosquitto/mosquitto.log sehe ich nun wie der iobroker Adapter sich verbindet.

                                1616521874: New connection from 127.0.0.1 on port 1883.
                                1616521874: New client connected from 127.0.0.1 as iobroker_mqtt_client (c1, k1000, u'mqttadapter').
                                

                                Ich kann mich auch über die Windows Software MQTT Explorer zum Mosquitto verbinden.

                                Der Knopf "Teste Verbindung zum Server" funktioniert aber immer noch nicht und quittiert mit "error".
                                Ich glaube mittlerweile das die Testfunktion nicht mit Usernamen und Passwörtern umgehen kann und es sich hier schlichtweg um einen Adapterbug handelt.

                                Sobald ich die Testfunktion benutzte kommt im Logfile

                                1616521981: Socket error on client <unknown>, disconnecting.
                                
                                BananaJoe 1 Reply Last reply Reply Quote 0
                                • BananaJoe
                                  BananaJoe Most Active @jolu1705 last edited by BananaJoe

                                  @jolu1705

                                  Bei mir sagt er auch error, es funktioniert aber alles,
                                  wird ein Fehler im Adapter sein:

                                  4c2bd822-e3eb-4c86-a40d-2f4fa0a2189a-image.png

                                  Also einrichten und unter den Datenpunkten schauen ob das was ist bzw. ob neue Dinge dort erscheinen, z.B. ein Testwert mit dem MQTT-Explorer

                                  BananaJoe 1 Reply Last reply Reply Quote 0
                                  • BananaJoe
                                    BananaJoe Most Active @BananaJoe last edited by

                                    Nachtrag:
                                    29234e7e-fb97-4db2-b573-fce4134d59d7-image.png
                                    steht im log, ich vermute beim Testen übernimmt der die Anmeldung nicht richtig.
                                    früher ging das mal / Hat schon mal funktioniert. Im Moment aber nicht. Der Rest geht aber bei mir (und ich mache alles per MQTT)

                                    jolu1705 1 Reply Last reply Reply Quote 0
                                    • jolu1705
                                      jolu1705 @BananaJoe last edited by

                                      @bananajoe said in MQTT Befehl nach Alexa Sprachkommando senden:

                                      Nachtrag:
                                      29234e7e-fb97-4db2-b573-fce4134d59d7-image.png
                                      steht im log, ich vermute beim Testen übernimmt der die Anmeldung nicht richtig.
                                      früher ging das mal / Hat schon mal funktioniert. Im Moment aber nicht. Der Rest geht aber bei mir (und ich mache alles per MQTT)

                                      Ich habe auf Github einen Report dazu erstellt:
                                      https://github.com/ioBroker/ioBroker.mqtt/issues/147

                                      jolu1705 created this issue in ioBroker/ioBroker.mqtt

                                      closed Teste Verbindung zum Server nicht mit Username und Passwort möglich #147

                                      M 1 Reply Last reply Reply Quote 0
                                      • M
                                        MCU @jolu1705 last edited by

                                        @jolu1705 Warum nutzt du nicht den MQTT-Adapter als Server? Ich habe bei mir kein Mosquito und nutze nur MQTT-Adapter als Server.

                                        jolu1705 BananaJoe 2 Replies Last reply Reply Quote 0
                                        • jolu1705
                                          jolu1705 @MCU last edited by

                                          @mcu said in MQTT Befehl nach Alexa Sprachkommando senden:

                                          @jolu1705 Warum nutzt du nicht den MQTT-Adapter als Server? Ich habe bei mir kein Mosquito und nutze nur MQTT-Adapter als Server.

                                          Ich kann bei Mosquitto mehrere Nutzer anlegen, das geht - soweit ich das bisher gesehen habe - beim MQTT Adapter als Server nicht.

                                          Muss ich dann mqtt.0 als server und mqtt.1 als client installieren?

                                          M 1 Reply Last reply Reply Quote 0
                                          • M
                                            MCU @jolu1705 last edited by

                                            @jolu1705 Keine Ahnung. Wie gesagt ich habe nur den Mqtt.0 als Server laufen.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            785
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            3
                                            33
                                            4853
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo