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

  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. Widget aktualisiert nicht bei Button

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

Widget aktualisiert nicht bei Button

Geplant Angeheftet Gesperrt Verschoben Visualisierung
vis
21 Beiträge 5 Kommentatoren 986 Aufrufe 3 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.
  • F. M.F F. M.

    also es hat tatsächlich mit dem Boolean Feld zu tun... der Datenpunkt muss für das Widget als Logikwert bestehen. -.-
    also muss ich das jetzt irgendwie basteln :(
    oder hat da jemand schon eine Lösung... weil wenn ich den Wert im MQTT Adapter von gemischt->Logikwert drehe, funktioniert es nicht mehr.

    BananaJoeB Online
    BananaJoeB Online
    BananaJoe
    Most Active
    schrieb am zuletzt editiert von
    #9

    @F-M

    Ich habe die Tasmota auch alle per MQTT dran und mir deshalb für jeden einen eigenen True/False Datenpunkt gebaut.
    Das folgende Skript habe ich für jedes Tasmota Gerät einmal laufen
    oben bei Device-Name ist der Name wie er unter mqtt.0/stat/ erscheint
    Er legt unter javascript.0 passende Datenpunkte an

    // Erstellt einen Datenpunkt über welches der Status des Tasmota Gerätes als Boolean true false ausgelesen werden kann
    // Gleichzeitig kann man den Datenpunkt gezielt setzen um umzuschalten
    // ####################################################################################################################################################
    // Setup
    var s_DeviceName = "K05-Licht-Flur-Keller";
    
    // ####################################################################################################################################################
    // feste Vorgaben
    // Datenpunkt der gelesen und geschrieben werden kann
    var s_state_path = "javascript.0.tasmota." + s_DeviceName + ".POWER";
    // Datenpunkt aus dem der aktuelle Status gelesen werden kann
    var s_mqtt_path = "mqtt.0.stat." + s_DeviceName + ".POWER";
    // Datenpunkt den man setzen muss um den Status zu ändern
    var s_cmnd_path = "mqtt.0.cmnd." + s_DeviceName + ".POWER";
    // Hilfsvariable damit die die beiden Teile (2 Datenpunkte aboniert) nicht in die Quere kommen
    var s_running = "nothing";
    
    // ####################################################################################################################################################
    // Zielpunkte anlegen falls noch nicht vorhanden
    // RSSI
    createState(s_state_path, false, {
        read: true, 
        write: true, 
        name: 'An (=true) oder AUS (=false)', 
        type: 'boolean', 
        def: false
    });
    
    // ####################################################################################################################################################
    // Beim Start einmal einfach den aktuellen Wert holen und schreiben
    if ( getState(s_mqtt_path).val = 'ON' ) {
        setState(s_state_path, true, true);
    } else {
        setState(s_state_path, false, true);
    }
    // ####################################################################################################################################################
    // Status einlesen und nach javascript.0 schreiben
    on({id: s_mqtt_path, change: "ne", ack: true}, function (obj) {
        var s_value_mqtt = obj.state.val;
        var s_value_javascript = getState(s_state_path).val;
        var b_helper_mqtt = false;
        // Beides nach Boolean bringen
        if (s_value_mqtt == 'ON') {
            b_helper_mqtt = true;
        } else {
            b_helper_mqtt = false;
        }
        // Die Prüfungen sollen verhindern das durch das Setzen des Wertes in der anderen Routine nicht wieder der JavaScript Wert geändert wird
        // und damit wieder das Setzen des Wertes anstoßen würde (Schleife verhinden)
        // Prüfen ob nicht das Setzen des javascript.0 Datenpunktes die Ursache war
        if (s_running != 'SetState') {
            // Wir übernehmen das Zepter
            s_running = 'GetState';
            // prüfen ob die Werte wirklich ungleich sein sind und wir was ändern müssen
            if (b_helper_mqtt != s_value_javascript) {
                if (s_value_mqtt == 'ON') {
                    setState(s_state_path, true, true);
                } else {
                    setState(s_state_path, false, true);
                }
            }
            // Zepter wieder abgeben
            s_running = 'nothing';
        }
    });
    
    // ####################################################################################################################################################
    // Status setzen nachdem die JavaScript-Varaiable geändert wurde.
    on({id: s_state_path, change: "ne", ack: false}, function (obj) {
        var s_value_mqtt = obj.state.val;
        var s_value_javascript = getState(s_state_path).val;
        var b_helper_mqtt = false;
        // Beides nach Boolean bringen
        if (s_value_mqtt == 'ON') {
            b_helper_mqtt = true;
        } else {
            b_helper_mqtt = false;
        }
        // Prüfen ob nicht GetState der Grund war warum sich der JavaScipt-Datenpunkt geändert hat
        if (s_running != 'GetState') {
            // wir übernehmen das Zepter!
            s_running = 'SetState';
            if (getState(s_state_path).val == true) {
                setState(s_cmnd_path, 'ON');
            } else {
                setState(s_cmnd_path, 'OFF');
            }
            // Zepter wieder abgeben
            s_running = 'nothing';
        }
    });
    
    

    ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

    1 Antwort Letzte Antwort
    0
    • F. M.F F. M.

      @BananaJoe Hi BJ, geht über MQTT, daher ist der Datenpunk "gemischt" mit ON&OFF... so ist es auch im Widget hinterlegt.
      Wenn es hier ein Logikwert braucht, müsste ich den Datenpunkt irgendwie dublizieren bzw. umwandeln... ?
      BG
      Ferdi

      GlasfaserG Offline
      GlasfaserG Offline
      Glasfaser
      schrieb am zuletzt editiert von
      #10

      @F-M sagte in Widget aktualisiert nicht bei Button:

      geht über MQTT, daher ist der Datenpunk "gemischt" mit ON&OFF

      Warum nimmst du nicht den Sonoff Adapter !

      Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

      BananaJoeB F. M.F 2 Antworten Letzte Antwort
      1
      • F. M.F F. M.

        @BananaJoe Hi BJ, geht über MQTT, daher ist der Datenpunk "gemischt" mit ON&OFF... so ist es auch im Widget hinterlegt.
        Wenn es hier ein Logikwert braucht, müsste ich den Datenpunkt irgendwie dublizieren bzw. umwandeln... ?
        BG
        Ferdi

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

        @F-M sagte:

        daher ist der Datenpunk "gemischt" mit ON&OFF... so ist es auch im Widget hinterlegt.

        Bei mir funktioniert es mit "ON" und "OFF" in beiden Richtungen.

        Vis_Taster.JPG

        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
        • GlasfaserG Glasfaser

          @F-M sagte in Widget aktualisiert nicht bei Button:

          geht über MQTT, daher ist der Datenpunk "gemischt" mit ON&OFF

          Warum nimmst du nicht den Sonoff Adapter !

          BananaJoeB Online
          BananaJoeB Online
          BananaJoe
          Most Active
          schrieb am zuletzt editiert von
          #12

          @Glasfaser
          Ich nehme auch MQTT weil ich eben noch mehr am MQTT außer ioBroker habe, unter anderem diverse Skripte die auf bestimmte Tasmota-Geräte reagieren.
          Wenn man den Sonoff Adapter nimmt hat man es zwar sehr bequem ... aber eben nur noch im ioBroker als Datenpunkt.
          Das coole an MQTT ist ja das man da quasi alles dranhängen kann.

          ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

          1 Antwort Letzte Antwort
          0
          • GlasfaserG Glasfaser

            @F-M sagte in Widget aktualisiert nicht bei Button:

            geht über MQTT, daher ist der Datenpunk "gemischt" mit ON&OFF

            Warum nimmst du nicht den Sonoff Adapter !

            F. M.F Offline
            F. M.F Offline
            F. M.
            schrieb am zuletzt editiert von
            #13

            @Glasfaser mache ich gleich wie BananaJoe -> ich mag da noch mehr dran hängen außer Sonoff

            @paul53 , Frage ist ja: Schaltet er bei dir dann auch das Widget um wenn du den Hardware Button z.B. an der Steckdose drückst? Weil das geht bei mir eben nicht.

            Scheinbar liegt es daran, dass der Datenpunkt als "gemischt" verwendet wird, statt als true/false.

            @BananaJoe, danke dir! werde ich auf jeden Fall testen, hab das gestern mal kurz mit Blockly und klicky bunty versucht, aber gescheitert :) muss allerdings gestehen, dass javascript nicht meine stärke ist :) Pfade anpassen & Kommentare lesen geht da grad noch so ;)

            paul53P 1 Antwort Letzte Antwort
            0
            • F. M.F F. M.

              @Glasfaser mache ich gleich wie BananaJoe -> ich mag da noch mehr dran hängen außer Sonoff

              @paul53 , Frage ist ja: Schaltet er bei dir dann auch das Widget um wenn du den Hardware Button z.B. an der Steckdose drückst? Weil das geht bei mir eben nicht.

              Scheinbar liegt es daran, dass der Datenpunkt als "gemischt" verwendet wird, statt als true/false.

              @BananaJoe, danke dir! werde ich auf jeden Fall testen, hab das gestern mal kurz mit Blockly und klicky bunty versucht, aber gescheitert :) muss allerdings gestehen, dass javascript nicht meine stärke ist :) Pfade anpassen & Kommentare lesen geht da grad noch so ;)

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

              @F-M sagte in:

              Schaltet er bei dir dann auch das Widget um wenn du den Hardware Button z.B. an der Steckdose drückst?

              Ich habe keine Hardware dran. Wenn ich im Tab "Objekte" zwischen "ON" und "OFF" ändere, schaltet auch das Widget um.

              @F-M sagte in Widget aktualisiert nicht bei Button:

              Scheinbar liegt es daran, dass der Datenpunkt als "gemischt" verwendet wird

              Nein, mein Test-Datenpunkt ist auch vom Typ "mixed".

              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

              HomoranH 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @F-M sagte in:

                Schaltet er bei dir dann auch das Widget um wenn du den Hardware Button z.B. an der Steckdose drückst?

                Ich habe keine Hardware dran. Wenn ich im Tab "Objekte" zwischen "ON" und "OFF" ändere, schaltet auch das Widget um.

                @F-M sagte in Widget aktualisiert nicht bei Button:

                Scheinbar liegt es daran, dass der Datenpunkt als "gemischt" verwendet wird

                Nein, mein Test-Datenpunkt ist auch vom Typ "mixed".

                HomoranH Nicht stören
                HomoranH Nicht stören
                Homoran
                Global Moderator Administrators
                schrieb am zuletzt editiert von
                #15

                @paul53 sagte in Widget aktualisiert nicht bei Button:

                Ich habe keine Hardware dran. Wenn ich im Tab "Objekte" zwischen "ON" und "OFF" ändere, schaltet auch das Widget um.

                @F-M sagte in Widget aktualisiert nicht bei Button:

                Scheinbar liegt es daran, dass der Datenpunkt als "gemischt" verwendet wird, statt als true/false.

                Nein, es liegt anscheinend daran, dass der Rückkanal vom Schalter nicht korrekt funktioniert.

                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                F. M.F 1 Antwort Letzte Antwort
                0
                • HomoranH Homoran

                  @paul53 sagte in Widget aktualisiert nicht bei Button:

                  Ich habe keine Hardware dran. Wenn ich im Tab "Objekte" zwischen "ON" und "OFF" ändere, schaltet auch das Widget um.

                  @F-M sagte in Widget aktualisiert nicht bei Button:

                  Scheinbar liegt es daran, dass der Datenpunkt als "gemischt" verwendet wird, statt als true/false.

                  Nein, es liegt anscheinend daran, dass der Rückkanal vom Schalter nicht korrekt funktioniert.

                  F. M.F Offline
                  F. M.F Offline
                  F. M.
                  schrieb am zuletzt editiert von
                  #16

                  @Homoran said in Widget aktualisiert nicht bei Button:

                  Nein, es liegt anscheinend daran, dass der Rückkanal vom Schalter nicht korrekt funktioniert

                  hmmm... guter Punkt, ich probiere es vielleicht mal noch mit einem anderen Widget, vielleicht hat es ja ne Macke
                  Ich zeige damit halt auf den

                  mqtt-client.0.$Gerätename.POWER
                  
                  HomoranH paul53P 2 Antworten Letzte Antwort
                  0
                  • F. M.F F. M.

                    @Homoran said in Widget aktualisiert nicht bei Button:

                    Nein, es liegt anscheinend daran, dass der Rückkanal vom Schalter nicht korrekt funktioniert

                    hmmm... guter Punkt, ich probiere es vielleicht mal noch mit einem anderen Widget, vielleicht hat es ja ne Macke
                    Ich zeige damit halt auf den

                    mqtt-client.0.$Gerätename.POWER
                    
                    HomoranH Nicht stören
                    HomoranH Nicht stören
                    Homoran
                    Global Moderator Administrators
                    schrieb am zuletzt editiert von
                    #17

                    @F-M sagte in Widget aktualisiert nicht bei Button:

                    ich probiere es vielleicht mal noch mit einem anderen Widget,

                    nee, das ändert nix.
                    @paul53 hat es ja getestet, dass es funktioniert, wenn im DP der Wert korrekt geändert wird.
                    Da musst du meiner Meinung nach ansetzen.

                    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    1 Antwort Letzte Antwort
                    0
                    • F. M.F F. M.

                      @Homoran said in Widget aktualisiert nicht bei Button:

                      Nein, es liegt anscheinend daran, dass der Rückkanal vom Schalter nicht korrekt funktioniert

                      hmmm... guter Punkt, ich probiere es vielleicht mal noch mit einem anderen Widget, vielleicht hat es ja ne Macke
                      Ich zeige damit halt auf den

                      mqtt-client.0.$Gerätename.POWER
                      
                      paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von
                      #18

                      @F-M sagte:

                      Ich zeige damit halt auf den
                      mqtt-client.0.$Gerätename.POWER

                      Kann es sein, dass Kommando und Status verschiedene Datenpunkte sind ? Dann führe sie in einem Alias-Datenpunkt zusammen.

                      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

                      F. M.F 1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @F-M sagte:

                        Ich zeige damit halt auf den
                        mqtt-client.0.$Gerätename.POWER

                        Kann es sein, dass Kommando und Status verschiedene Datenpunkte sind ? Dann führe sie in einem Alias-Datenpunkt zusammen.

                        F. M.F Offline
                        F. M.F Offline
                        F. M.
                        schrieb am zuletzt editiert von F. M.
                        #19

                        @paul53 Uhhhh, schaut interessant aus... werde ich mir anschauen!
                        Ja es gibt 2 Datenpunkte in dem Baum...

                        mqtt-client.2.sonoff.cmnd.$Gerätename.Power
                        mqtt-client.2.sonoff.stat.$Gerätename.Power

                        ich hatte das mit cmnd und stat unterschlagen... man schaltet den .cmnd.$Gerätename.POWER Schalter um das Relais zu schalten. der .stat.$Gerätename.POWER bzw. .stat.$Gerätename.RESULT bestätigt einem das denke ich nur.

                        659209a6-7860-4d41-a1c5-989774f5f21c-image.png

                        EDIT: wenn ich den HW Knopf betätige, schalten beide als cmnd und stat .POWER werte auf ON

                        BananaJoeB 1 Antwort Letzte Antwort
                        0
                        • F. M.F F. M.

                          @paul53 Uhhhh, schaut interessant aus... werde ich mir anschauen!
                          Ja es gibt 2 Datenpunkte in dem Baum...

                          mqtt-client.2.sonoff.cmnd.$Gerätename.Power
                          mqtt-client.2.sonoff.stat.$Gerätename.Power

                          ich hatte das mit cmnd und stat unterschlagen... man schaltet den .cmnd.$Gerätename.POWER Schalter um das Relais zu schalten. der .stat.$Gerätename.POWER bzw. .stat.$Gerätename.RESULT bestätigt einem das denke ich nur.

                          659209a6-7860-4d41-a1c5-989774f5f21c-image.png

                          EDIT: wenn ich den HW Knopf betätige, schalten beide als cmnd und stat .POWER werte auf ON

                          BananaJoeB Online
                          BananaJoeB Online
                          BananaJoe
                          Most Active
                          schrieb am zuletzt editiert von
                          #20

                          @F-M sagte in Widget aktualisiert nicht bei Button:

                          EDIT: wenn ich den HW Knopf betätige, schalten beide als cmnd und stat .POWER werte auf ON

                          Also bei mir nicht, da wird nur stat befüllt - wie sind denn deine Tasmota Einstellungen (mal abgesehen von dem Server)?

                          Meine sind

                          Topic Sonoff194-Garage
                          MqttClient Sonoff194-Garage
                          MqttHost 192.168.1.72
                          MqttPort 1883
                          MqttUser tasmouser
                          MqttPassword test1234
                          

                          Gibt es eine Option die dein Verhalten aktiviert?

                          ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                          F. M.F 1 Antwort Letzte Antwort
                          0
                          • BananaJoeB BananaJoe

                            @F-M sagte in Widget aktualisiert nicht bei Button:

                            EDIT: wenn ich den HW Knopf betätige, schalten beide als cmnd und stat .POWER werte auf ON

                            Also bei mir nicht, da wird nur stat befüllt - wie sind denn deine Tasmota Einstellungen (mal abgesehen von dem Server)?

                            Meine sind

                            Topic Sonoff194-Garage
                            MqttClient Sonoff194-Garage
                            MqttHost 192.168.1.72
                            MqttPort 1883
                            MqttUser tasmouser
                            MqttPassword test1234
                            

                            Gibt es eine Option die dein Verhalten aktiviert?

                            F. M.F Offline
                            F. M.F Offline
                            F. M.
                            schrieb am zuletzt editiert von F. M.
                            #21

                            Verdammt verdammt verdammt...

                            Ende vom Lied... wenn der Datenpunkt mit ON / OFF geschalten wird muss mal den quatsch halt auch als wahr/falsch Wert in der VIS setzen :face_with_rolling_eyes: :face_with_rolling_eyes: :face_with_rolling_eyes:
                            Danke an alle die geholfen haben!
                            peinlich

                            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

                            793

                            Online

                            32.4k

                            Benutzer

                            81.4k

                            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