Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. Jarvis - Schalter via MQTT

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    349

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

Jarvis - Schalter via MQTT

Geplant Angeheftet Gesperrt Verschoben Visualisierung
14 Beiträge 4 Kommentatoren 1.1k Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • S Sineos

    Ich würde gerne in Jarvis einen Schalter einrichten, der über MQTT geschaltet wird, allerdings ist der Schaltpunkt ein JSON string:

    • An: {"STATE": "ON"}
    • Aus: {"STATE": "OFF"}

    Der einzige Weg, wie ich es hinbekommen habe, ist über einen "Hilfs-DP" und ein Java-Script, welches den Wert entsprechend hinbiegt:

    on({id: '0_userdata.0.test', change: 'any', ack: false}, function (obj) {
        if (obj.state.val) {
            setState("mqtt.0.zigbee2mqtt.RelayLightHallEG.set", "{\"state\": \"ON\"}");
        } else {
            setState("mqtt.0.zigbee2mqtt.RelayLightHallEG.set", "{\"state\": \"OFF\"}");
        }
    });
    

    Das kann aber doch nicht die Lösung sein, oder?

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von paul53
    #2

    @sineos sagte: Das kann aber doch nicht die Lösung sein, oder?

    Nein, es geht auch mit einem Alias vom Typ "boolean" ohne Skript mit
    common.alias.write = "JSON.stringify({state: val ? 'ON' : 'OFF'})"

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    1 Antwort Letzte Antwort
    0
    • mickymM Online
      mickymM Online
      mickym
      Most Active
      schrieb am zuletzt editiert von mickym
      #3

      @sineos

      Nach ziemlich viel rumprobieren habe ich es denke ich hinbekommen - es entsprechend zu setzen - allerdings ist der Status ja ein anderer Datenpunkt:

      37893b6a-f5bf-479f-a15d-f245a3a4ef9c-image.png

      Im Prinzip wirst Du beim zigbee2mqtt um einen Alias nicht drum rumkommen, da du ja unterschiedliche Werte zum Setzen und Lesen brauchst.

      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

      paul53P 1 Antwort Letzte Antwort
      0
      • mickymM mickym

        @sineos

        Nach ziemlich viel rumprobieren habe ich es denke ich hinbekommen - es entsprechend zu setzen - allerdings ist der Status ja ein anderer Datenpunkt:

        37893b6a-f5bf-479f-a15d-f245a3a4ef9c-image.png

        Im Prinzip wirst Du beim zigbee2mqtt um einen Alias nicht drum rumkommen, da du ja unterschiedliche Werte zum Setzen und Lesen brauchst.

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #4

        @mickym sagte: unterschiedliche Werte zum Setzen und Lesen brauchst.

        Wenn der Wert zum Lesen das gleiche JSON-Format hat:
        common.alias.read = "JSON.parse(val).state == 'ON'"

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        1 Antwort Letzte Antwort
        0
        • mickymM Online
          mickymM Online
          mickym
          Most Active
          schrieb am zuletzt editiert von mickym
          #5

          @paul53 sagte in Jarvis - Schalter via MQTT:

          JSON.parse(val).state == 'ON'

          Danke schön - nein ist nicht ganz gleich - aber hat dieselbe Eigenschaft. Ich habs mal aus meinen Datenpunkten kopiert und mit Deinen Funktionen müsste dass der entsprechende Alias so konfiguriert werden - das muss man dann natürlich noch auf die richtigen mqtt Datenpunkte mappen.

          635ed647-29cb-462e-9ef4-425f66f70187-image.png

          Ich habs nur auf dem Testsystem mal simuliert im Prodsystem ist das natürlich unter dem mqtt Adapter aber da habe ich kein Jarvis drauf:

          2c4d30bf-8716-402e-9661-2d8ee1109bc8-image.png

          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

          S 1 Antwort Letzte Antwort
          1
          • M Online
            M Online
            MCU
            schrieb am zuletzt editiert von MCU
            #6

            @sineos Probier mal in die Datenpunkt-Eigenschaften JSON.parse direkt einzutragen.
            https://mcuiobroker.gitbook.io/jarvis-infos/jarvis/besonderheiten-v3/geraet/datenpunkt-eigenschaft/json-parse

            Klappt nicht, nur als Anzeige.

            NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
            Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

            1 Antwort Letzte Antwort
            0
            • mickymM mickym

              @paul53 sagte in Jarvis - Schalter via MQTT:

              JSON.parse(val).state == 'ON'

              Danke schön - nein ist nicht ganz gleich - aber hat dieselbe Eigenschaft. Ich habs mal aus meinen Datenpunkten kopiert und mit Deinen Funktionen müsste dass der entsprechende Alias so konfiguriert werden - das muss man dann natürlich noch auf die richtigen mqtt Datenpunkte mappen.

              635ed647-29cb-462e-9ef4-425f66f70187-image.png

              Ich habs nur auf dem Testsystem mal simuliert im Prodsystem ist das natürlich unter dem mqtt Adapter aber da habe ich kein Jarvis drauf:

              2c4d30bf-8716-402e-9661-2d8ee1109bc8-image.png

              S Offline
              S Offline
              Sineos
              schrieb am zuletzt editiert von
              #7

              Vielen Dank an alle für den Input.

              @mickym Deine Lösung klappt. Hatt vor dem JS script auch schon mit den Alises experimentiert, aber übersehen, das JSON richtig zu konvertieren. Vielen Dank.

              @mickym said in Jarvis - Schalter via MQTT:

              Im Prinzip wirst Du beim zigbee2mqtt um einen Alias nicht drum rumkommen, da du ja unterschiedliche Werte zum Setzen und Lesen brauchst.

              Ja, ist es schade, dass Jarvis hier keine flexible interne Lösung kennt, eine entsprechenden Payload zu generieren und zwischen CMD und STATUS Kanälen zu unterscheiden.
              Ich habs in Jarvis auch mit {"setOn":"{\"state\": \"ON\"}","setOff":"{\"state\": \"OFF\"}"} versucht, aber das funktioniert genau einmal und dann hängt der Switch.

              Aber trotzdem ist Jarvis eine tolle Sache. Vorallem für so Vis-Deppen wie mich. Brauch das nur um den WAF zu gewährleisten.

              mickymM 1 Antwort Letzte Antwort
              0
              • S Sineos

                Vielen Dank an alle für den Input.

                @mickym Deine Lösung klappt. Hatt vor dem JS script auch schon mit den Alises experimentiert, aber übersehen, das JSON richtig zu konvertieren. Vielen Dank.

                @mickym said in Jarvis - Schalter via MQTT:

                Im Prinzip wirst Du beim zigbee2mqtt um einen Alias nicht drum rumkommen, da du ja unterschiedliche Werte zum Setzen und Lesen brauchst.

                Ja, ist es schade, dass Jarvis hier keine flexible interne Lösung kennt, eine entsprechenden Payload zu generieren und zwischen CMD und STATUS Kanälen zu unterscheiden.
                Ich habs in Jarvis auch mit {"setOn":"{\"state\": \"ON\"}","setOff":"{\"state\": \"OFF\"}"} versucht, aber das funktioniert genau einmal und dann hängt der Switch.

                Aber trotzdem ist Jarvis eine tolle Sache. Vorallem für so Vis-Deppen wie mich. Brauch das nur um den WAF zu gewährleisten.

                mickymM Online
                mickymM Online
                mickym
                Most Active
                schrieb am zuletzt editiert von mickym
                #8

                @sineos wenn es nur ein Datenpunkt wäre hätte der String mit on: anstelle von setOn: funktioniert- siehe mein Screenshot. Aber das hilft ja nichts. MQTT verwendet bzw. muss für den State und das Schalten 2 unterschiedliche Punkte verwenden, da MQTT ja nicht mit einem ACK-Flag arbeitet bzw. arbeiten kann

                Ich nutze ja auch das NodeRed Dashboard - finde aber Jarvis durchaus interessant, da man ebenfalls schnell zu Ergebnissen kommt, aber mit dem fixen Design so eine Zwischenlösung zwischen vis und dem responsive Design des NodeRed Dashboards darstellt..

                Vielleicht eine Idee an die Jarvis Entwickler für eine Version 4.

                Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                1 Antwort Letzte Antwort
                0
                • M Online
                  M Online
                  MCU
                  schrieb am zuletzt editiert von MCU
                  #9

                  @sineos Versuch mal:
                  In den Datenpunkt-Eigenschaften vom Gerät

                  {"on":"{\"state\": \"ON\"}","off":"{\"state\": \"OFF\"}"}
                  

                  Funktioniert mit v3.1.0-alpha.35, auch mit v3.0.11
                  99d98e41-484d-4e8f-be55-e47e6fc5a425-image.png
                  bbc1bb5e-5f0d-4a97-9094-56f11583b61d-image.png

                  Nur das Setzen vom Schalter (jarvis) ausgehend, nicht, wenn es als DP (ioBroker) geändert wird.

                  NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                  Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                  mickymM 1 Antwort Letzte Antwort
                  0
                  • M MCU

                    @sineos Versuch mal:
                    In den Datenpunkt-Eigenschaften vom Gerät

                    {"on":"{\"state\": \"ON\"}","off":"{\"state\": \"OFF\"}"}
                    

                    Funktioniert mit v3.1.0-alpha.35, auch mit v3.0.11
                    99d98e41-484d-4e8f-be55-e47e6fc5a425-image.png
                    bbc1bb5e-5f0d-4a97-9094-56f11583b61d-image.png

                    Nur das Setzen vom Schalter (jarvis) ausgehend, nicht, wenn es als DP (ioBroker) geändert wird.

                    mickymM Online
                    mickymM Online
                    mickym
                    Most Active
                    schrieb am zuletzt editiert von mickym
                    #10

                    @mcu das hab ich doch schon gemacht - siehe unten. Das funktioniert- hilft ihm aber nicht, da er unterschiedliche Datenpunkte für das Setzen und als trigger braucht, die geparst werden müssen.Schau mal mein Screenshot

                    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                    M 1 Antwort Letzte Antwort
                    0
                    • mickymM mickym

                      @mcu das hab ich doch schon gemacht - siehe unten. Das funktioniert- hilft ihm aber nicht, da er unterschiedliche Datenpunkte für das Setzen und als trigger braucht, die geparst werden müssen.Schau mal mein Screenshot

                      M Online
                      M Online
                      MCU
                      schrieb am zuletzt editiert von
                      #11

                      @mickym Wenn ich es richtig überblicke, hast du es im alias gemacht? Es soll aber in die Datenpunkt Eigenschaften vom Gerät (jarvis).

                      NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                      Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                      mickymM 1 Antwort Letzte Antwort
                      0
                      • M MCU

                        @mickym Wenn ich es richtig überblicke, hast du es im alias gemacht? Es soll aber in die Datenpunkt Eigenschaften vom Gerät (jarvis).

                        mickymM Online
                        mickymM Online
                        mickym
                        Most Active
                        schrieb am zuletzt editiert von mickym
                        #12

                        @mcu sagte in Jarvis - Schalter via MQTT:

                        @mickym Wenn ich es richtig überblicke, hast du es im alias gemacht? Es soll aber in die Datenpunkt Eigenschaften vom Gerät (jarvis).

                        Hab ich doch gerade erklärt, dass man wahrscheinlich nicht um einen Alias kommt, weil man unterschiedliche Punkte zum Setzen des States und des Status benötigt.

                        Schau mal mein 1. Posting in diesem Thread: https://forum.iobroker.net/topic/57483/jarvis-schalter-via-mqtt/11

                        und den Screenshot:

                        926fba0e-bd1d-441b-9006-89c9f5bd4078-image.png

                        Außerdem habe ich in meinem vorletzten Post ja geschrieben, dass er on: und off: anstelle von setOn: und setOff: benutzen soll.

                        Wie gesagt das hilft alles nichts - ich hab auch bei Trigger und Anzeige schon mit unterschiedlichen Punkten versucht - aber man brauch eben 2 verschiedene Konvertierungsfunktionen und das bietet momentan anscheinend nur der Alias.

                        Aber scheint, als ob Du meine Posts in dem Thread gar nicht liest.

                        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                        1 Antwort Letzte Antwort
                        0
                        • S Offline
                          S Offline
                          Sineos
                          schrieb am zuletzt editiert von Sineos
                          #13

                          @mickym said in Jarvis - Schalter via MQTT:

                          Ich nutze ja auch das NodeRed Dashboard - finde aber Jarvis durchaus interessant, da man ebenfalls schnell zu Ergebnissen kommt, aber mit dem fixen Design so eine Zwischenlösung zwischen vis und dem responsive Design des NodeRed Dashboards darstellt..

                          Absolut an diesem Punkt bin ich auch gerade. 99% meiner Logik ist in NR untergebracht und dort auch mit den (etwas deprimierenden) Dashboard-Funktionen umgesezt.
                          Wegen einem Gerätedefekt hab ich aber die Struktur jetzt an vielen Stellen geändert

                          • Homematic von dediziertem Pi auf Proxmox
                          • ioBroker, Grafana und Influx auch auf Proxmox
                          • NR vorher via Redmatic in homematic integriert, jetzt komplett in iob NR umgezogen. Hier wäre mir aber eine dedizierte Installation die mit iob sprechen kann immer noch am liebsten (bin aber zu faul alles über MQTT zu machen). Komme immer mehr von den zu hoch verdichteten Lösungen weg, da ich mir jetzt schon mehrfach damit die Finger verbrannt habe. Deswegen bleibt es auch bei zigbee2mqtt und kein Umzug in den iob Adapter
                          • Aus Interesse mal alles noch in eine homeassistant Installation gepackt. Auch sehr schick, aber bei Konfigurationen / Logiken über YAML und Jinja bekomme ich Herzrhythmusstörungen.

                          Wie @mickym beschrieben hat:

                          • Speziell bei zigbee2mqtt, aber generell auch bei MQTT ist oft den Kommando-Kanal ein anderer als der Status-Kanal
                          • Zustände sollen nicht "optimistisch" gesetzt werden, also setzen und hoffen, dass es geklappt hat
                          • Die Anzeige soll sich nach dem tatsächlichen Resultat richten
                          • Jarvis kennt momentan keine Unterscheidung zwischen Kommando und Status-Kanal

                          --> Damit bleibt nur die beiden Kanäle über ein Alias zu koppeln:

                          5e696a31-6dfd-43f9-8e9d-45c4248686da-grafik.png
                          a13225d5-6859-49ca-a348-0b42fc9e6b99-grafik.png
                          f8929904-5d74-4c28-810b-5a4ec7276466-grafik.png

                          M 1 Antwort Letzte Antwort
                          0
                          • S Sineos

                            @mickym said in Jarvis - Schalter via MQTT:

                            Ich nutze ja auch das NodeRed Dashboard - finde aber Jarvis durchaus interessant, da man ebenfalls schnell zu Ergebnissen kommt, aber mit dem fixen Design so eine Zwischenlösung zwischen vis und dem responsive Design des NodeRed Dashboards darstellt..

                            Absolut an diesem Punkt bin ich auch gerade. 99% meiner Logik ist in NR untergebracht und dort auch mit den (etwas deprimierenden) Dashboard-Funktionen umgesezt.
                            Wegen einem Gerätedefekt hab ich aber die Struktur jetzt an vielen Stellen geändert

                            • Homematic von dediziertem Pi auf Proxmox
                            • ioBroker, Grafana und Influx auch auf Proxmox
                            • NR vorher via Redmatic in homematic integriert, jetzt komplett in iob NR umgezogen. Hier wäre mir aber eine dedizierte Installation die mit iob sprechen kann immer noch am liebsten (bin aber zu faul alles über MQTT zu machen). Komme immer mehr von den zu hoch verdichteten Lösungen weg, da ich mir jetzt schon mehrfach damit die Finger verbrannt habe. Deswegen bleibt es auch bei zigbee2mqtt und kein Umzug in den iob Adapter
                            • Aus Interesse mal alles noch in eine homeassistant Installation gepackt. Auch sehr schick, aber bei Konfigurationen / Logiken über YAML und Jinja bekomme ich Herzrhythmusstörungen.

                            Wie @mickym beschrieben hat:

                            • Speziell bei zigbee2mqtt, aber generell auch bei MQTT ist oft den Kommando-Kanal ein anderer als der Status-Kanal
                            • Zustände sollen nicht "optimistisch" gesetzt werden, also setzen und hoffen, dass es geklappt hat
                            • Die Anzeige soll sich nach dem tatsächlichen Resultat richten
                            • Jarvis kennt momentan keine Unterscheidung zwischen Kommando und Status-Kanal

                            --> Damit bleibt nur die beiden Kanäle über ein Alias zu koppeln:

                            5e696a31-6dfd-43f9-8e9d-45c4248686da-grafik.png
                            a13225d5-6859-49ca-a348-0b42fc9e6b99-grafik.png
                            f8929904-5d74-4c28-810b-5a4ec7276466-grafik.png

                            M Online
                            M Online
                            MCU
                            schrieb am zuletzt editiert von
                            #14

                            @sineos Wer möchte kann v3.1.0-alpha.45 testen?
                            jarvis v3 - alpha.44 JSONparse Switch.gif

                            Datenpunkt-Eigenschaften

                            {"on":"{\"STATE\":\"ON\"}","off":"{\"STATE\":\"OFF\"}"}
                            

                            cf6215c3-03d0-4ae1-a72a-df22fa06d496-image.png

                            NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                            Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                            1 Antwort Letzte Antwort
                            0
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            704

                            Online

                            32.5k

                            Benutzer

                            81.8k

                            Themen

                            1.3m

                            Beiträge
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Anmelden

                            • Du hast noch kein Konto? Registrieren

                            • Anmelden oder registrieren, um zu suchen
                            • Erster Beitrag
                              Letzter Beitrag
                            0
                            • Home
                            • Aktuell
                            • Tags
                            • Ungelesen 0
                            • Kategorien
                            • Unreplied
                            • Beliebt
                            • GitHub
                            • Docu
                            • Hilfe