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. [gelöst]Lichtersteuerung auf Smartphone

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    523

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.4k

[gelöst]Lichtersteuerung auf Smartphone

Geplant Angeheftet Gesperrt Verschoben Visualisierung
25 Beiträge 3 Kommentatoren 3.4k 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.
  • M Meikie

    @zarello und wie müsste ich dann die trigger integrieren? Ist für mich alles Neuland.

    ZarelloZ Offline
    ZarelloZ Offline
    Zarello
    schrieb am zuletzt editiert von Zarello
    #15

    @meikie Sowas wie:

    // Hier werden alle Lampen, die mit der Zentralen Steuerung geschalten werden aufgelistet.
    // Variable [ "Name", "Eigener Datenpunkt", "Datenpunkt Lampe ONOFF", "Datenpunkt Lampe RGB"  ]
    let a_lightcontrol = [
        ["WZ-Kaminlicht",   "0_userdata.0.Lights.WZ-Kaminlicht", "zigbee.0.04cd15fffedb3087.state",  "zigbee.0.04cd15fffedb3087.color"], 
        ["WZ-Couch",        "0_userdata.0.Lights.WZ-Couch",      "zigbee.0.842e14fffe36885f.state"],
        ["WZ-Stehlampe",    "0_userdata.0.Lights.WZ-Stehlampe",  "zigbee.0.9035eafffe04994d.state",  "zigbee.0.9035eafffe04994d.color"],
        ["Kü-Ambiente",     "0_userdata.0.Lights.Kü-Ambiente",   "hier fehlt noch eine ID"],
        ["KZ-Ambiente",     "0_userdata.0.Lights.KZ-Ambiente",   "hier fehlt noch eine ID"],
        ["Bad-Ambiente",    "0_userdata.0.Lights.Bad-Ambiente",  "zigbee.0.04cd15fffedb28e3.state",  "zigbee.0.04cd15fffedb28e3.color"]
    ];
        
    // OnOff wurde geändert
    on({id: "0_userdata.0.Lights.control-onoff"/*control-onoff*/, change: "ne"}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      // Abruf der Werte in einer Schleife:
      for (var i = 0; i < a_lightcontrol.length; i++) {  
        let s_currentName = a_lightcontrol[i][0];
        let s_currentData = a_lightcontrol[i][1];
        let s_currentState = a_lightcontrol[i][2];
    
        // Ich bin mir nicht sicher, was Du hier erreichen wolltest. Ich habe mal geraten:
        if (getState (s_currentData).val) {
          setState(s_currentState/*Switch state*/, value);
          if (!value) {
            setStateDelayed("0_userdata.0.Lights.control-onoff"/*control-onoff*/, '', 1000, true);
          }
        }
      }
    });
    

    Ich habe gerade keine Möglichkeit das zu testen, es könnten also noch Fehler vorhanden sein.
    Versuch mal herauszufinden, was da dann wann und wie passiert. Tipp: if (!value) bedeutet: Wenn in value der Wert false steht.

    M 1 Antwort Letzte Antwort
    0
    • ZarelloZ Zarello

      @meikie Sowas wie:

      // Hier werden alle Lampen, die mit der Zentralen Steuerung geschalten werden aufgelistet.
      // Variable [ "Name", "Eigener Datenpunkt", "Datenpunkt Lampe ONOFF", "Datenpunkt Lampe RGB"  ]
      let a_lightcontrol = [
          ["WZ-Kaminlicht",   "0_userdata.0.Lights.WZ-Kaminlicht", "zigbee.0.04cd15fffedb3087.state",  "zigbee.0.04cd15fffedb3087.color"], 
          ["WZ-Couch",        "0_userdata.0.Lights.WZ-Couch",      "zigbee.0.842e14fffe36885f.state"],
          ["WZ-Stehlampe",    "0_userdata.0.Lights.WZ-Stehlampe",  "zigbee.0.9035eafffe04994d.state",  "zigbee.0.9035eafffe04994d.color"],
          ["Kü-Ambiente",     "0_userdata.0.Lights.Kü-Ambiente",   "hier fehlt noch eine ID"],
          ["KZ-Ambiente",     "0_userdata.0.Lights.KZ-Ambiente",   "hier fehlt noch eine ID"],
          ["Bad-Ambiente",    "0_userdata.0.Lights.Bad-Ambiente",  "zigbee.0.04cd15fffedb28e3.state",  "zigbee.0.04cd15fffedb28e3.color"]
      ];
          
      // OnOff wurde geändert
      on({id: "0_userdata.0.Lights.control-onoff"/*control-onoff*/, change: "ne"}, async function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        // Abruf der Werte in einer Schleife:
        for (var i = 0; i < a_lightcontrol.length; i++) {  
          let s_currentName = a_lightcontrol[i][0];
          let s_currentData = a_lightcontrol[i][1];
          let s_currentState = a_lightcontrol[i][2];
      
          // Ich bin mir nicht sicher, was Du hier erreichen wolltest. Ich habe mal geraten:
          if (getState (s_currentData).val) {
            setState(s_currentState/*Switch state*/, value);
            if (!value) {
              setStateDelayed("0_userdata.0.Lights.control-onoff"/*control-onoff*/, '', 1000, true);
            }
          }
        }
      });
      

      Ich habe gerade keine Möglichkeit das zu testen, es könnten also noch Fehler vorhanden sein.
      Versuch mal herauszufinden, was da dann wann und wie passiert. Tipp: if (!value) bedeutet: Wenn in value der Wert false steht.

      M Offline
      M Offline
      Meikie
      schrieb am zuletzt editiert von
      #16

      @zarello Hi, danke für den Code. Leider kann ich ihn selbst auch noch nicht testen. Er sagt nämlich die ganze Zeit, dass in Zeile 3

      let a_lightcontrol = [
      

      Ein Fehler wäre.
      Ich finde dieses aber nicht.

      ZarelloZ 1 Antwort Letzte Antwort
      0
      • M Meikie

        @zarello Hi, danke für den Code. Leider kann ich ihn selbst auch noch nicht testen. Er sagt nämlich die ganze Zeit, dass in Zeile 3

        let a_lightcontrol = [
        

        Ein Fehler wäre.
        Ich finde dieses aber nicht.

        ZarelloZ Offline
        ZarelloZ Offline
        Zarello
        schrieb am zuletzt editiert von
        #17

        @meikie Evtl. war es das Komma am Ende der neunten Zeile. Ich habe das oben mal entfernt.

        ZarelloZ 1 Antwort Letzte Antwort
        0
        • ZarelloZ Zarello

          @meikie Evtl. war es das Komma am Ende der neunten Zeile. Ich habe das oben mal entfernt.

          ZarelloZ Offline
          ZarelloZ Offline
          Zarello
          schrieb am zuletzt editiert von Zarello
          #18

          @zarello Jetzt habe ich es einmal bei mir laufen lassen: Das funktioniert, egal ob mit oder ohne Komma am Ende der neunten Zeile.

          Gibt es evtl. eine zweite Variable a_lightcontrol in Deinem Skript, also eine zweite Zeile, die mit let a_lightcontrol anfängt?

          Um was sinnvolles dazu sagen zu können müsstest Du nochmals Dein Skript in der aktuellen Fassung komplett hier einstellen inklusive der Fehlermeldungen die Du bekommst.

          M 1 Antwort Letzte Antwort
          0
          • ZarelloZ Zarello

            @zarello Jetzt habe ich es einmal bei mir laufen lassen: Das funktioniert, egal ob mit oder ohne Komma am Ende der neunten Zeile.

            Gibt es evtl. eine zweite Variable a_lightcontrol in Deinem Skript, also eine zweite Zeile, die mit let a_lightcontrol anfängt?

            Um was sinnvolles dazu sagen zu können müsstest Du nochmals Dein Skript in der aktuellen Fassung komplett hier einstellen inklusive der Fehlermeldungen die Du bekommst.

            M Offline
            M Offline
            Meikie
            schrieb am zuletzt editiert von
            #19

            @zarello Hey, vielen Dank für deine Hilfe. Jetzt habe ich es soweit hinbekommen. Nur folgender Code bekomme ich nicht zum laufen.

            let a_lightcontrol = [
                [/*"WZ-Kaminlicht"*/    "WZ",   "0_userdata.0.Lights.WZ-Kaminlicht", "zigbee.0.04cd15fffedb3087.state",  "zigbee.0.04cd15fffedb3087.color"],
                [/*"WZ-Couch"*/         "WZ",   "0_userdata.0.Lights.WZ-Couch",      "zigbee.0.842e14fffe36885f.state"],
                [/*"WZ-Stehlampe"*/     "WZ",   "0_userdata.0.Lights.WZ-Stehlampe",  "zigbee.0.9035eafffe04994d.state",  "zigbee.0.9035eafffe04994d.color"],
                [/*"Bad-Ambiente"*/     "Bad",  "0_userdata.0.Lights.Bad-Ambiente",  "zigbee.0.04cd15fffedb28e3.state",  "zigbee.0.04cd15fffedb28e3.color"]
            ];
            // Wohnzimmer komplett selektieren / deselektieren
            on({id: "0_userdata.0.Lights.control-wz"/*control-wz*/, change: "ne"}, async function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
                    // Abruf der Werte in einer Schleife:
                     for (var i = 0; i < a_lightcontrol.length; i++) {  
                    let s_currentRoom = a_lightcontrol[i][0];
                    let s_currentData = a_lightcontrol[i][1];
                    // Alle Lampen im Wohnzimmer auswählen
                    console.log(s_currentRoom);
                    if (getState (s_currentRoom).val == "WZ") {
                    setState(s_currentData/*Switch state*/, getState("0_userdata.0.Lights.control-wz").val);
                    }
                }
                    /*Kaminlicht*/ //setState("0_userdata.0.Lights.WZ-Kaminlicht", value);
                    /*Stehlampe*/  //setState("0_userdata.0.Lights.WZ-Stehlampe", value);
                    /*Couch*/      //setState("0_userdata.0.Lights.WZ-Couch", value);
            });
            

            Folgende Fehlermeldung steht im Protokoll.

            javascript.0 782	2023-02-24 14:18:16.917	warn	at processImmediate (node:internal/timers:466:21)
            javascript.0 782	2023-02-24 14:18:16.917	warn	at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5916:56)
            javascript.0 782	2023-02-24 14:18:16.917	warn	at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:593:29)
            javascript.0 782	2023-02-24 14:18:16.917	warn	at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1244:38)
            javascript.0 782	2023-02-24 14:18:16.917	warn	at Object.<anonymous> (script.js.Ambiente.LichtsteuerungJS:66:13)
            javascript.0 782	2023-02-24 14:18:16.916	warn	getState "WZ" not found (3)
            javascript.0 782	2023-02-24 14:18:16.915	info	script.js.Ambiente.LichtsteuerungJS: WZ
            

            Was habe ich hier falsch? Vielen Dank für deine Hilfe.
            Liebe Grüße
            Michael

            BananaJoeB ZarelloZ 2 Antworten Letzte Antwort
            0
            • M Meikie

              @zarello Hey, vielen Dank für deine Hilfe. Jetzt habe ich es soweit hinbekommen. Nur folgender Code bekomme ich nicht zum laufen.

              let a_lightcontrol = [
                  [/*"WZ-Kaminlicht"*/    "WZ",   "0_userdata.0.Lights.WZ-Kaminlicht", "zigbee.0.04cd15fffedb3087.state",  "zigbee.0.04cd15fffedb3087.color"],
                  [/*"WZ-Couch"*/         "WZ",   "0_userdata.0.Lights.WZ-Couch",      "zigbee.0.842e14fffe36885f.state"],
                  [/*"WZ-Stehlampe"*/     "WZ",   "0_userdata.0.Lights.WZ-Stehlampe",  "zigbee.0.9035eafffe04994d.state",  "zigbee.0.9035eafffe04994d.color"],
                  [/*"Bad-Ambiente"*/     "Bad",  "0_userdata.0.Lights.Bad-Ambiente",  "zigbee.0.04cd15fffedb28e3.state",  "zigbee.0.04cd15fffedb28e3.color"]
              ];
              // Wohnzimmer komplett selektieren / deselektieren
              on({id: "0_userdata.0.Lights.control-wz"/*control-wz*/, change: "ne"}, async function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                      // Abruf der Werte in einer Schleife:
                       for (var i = 0; i < a_lightcontrol.length; i++) {  
                      let s_currentRoom = a_lightcontrol[i][0];
                      let s_currentData = a_lightcontrol[i][1];
                      // Alle Lampen im Wohnzimmer auswählen
                      console.log(s_currentRoom);
                      if (getState (s_currentRoom).val == "WZ") {
                      setState(s_currentData/*Switch state*/, getState("0_userdata.0.Lights.control-wz").val);
                      }
                  }
                      /*Kaminlicht*/ //setState("0_userdata.0.Lights.WZ-Kaminlicht", value);
                      /*Stehlampe*/  //setState("0_userdata.0.Lights.WZ-Stehlampe", value);
                      /*Couch*/      //setState("0_userdata.0.Lights.WZ-Couch", value);
              });
              

              Folgende Fehlermeldung steht im Protokoll.

              javascript.0 782	2023-02-24 14:18:16.917	warn	at processImmediate (node:internal/timers:466:21)
              javascript.0 782	2023-02-24 14:18:16.917	warn	at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5916:56)
              javascript.0 782	2023-02-24 14:18:16.917	warn	at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:593:29)
              javascript.0 782	2023-02-24 14:18:16.917	warn	at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1244:38)
              javascript.0 782	2023-02-24 14:18:16.917	warn	at Object.<anonymous> (script.js.Ambiente.LichtsteuerungJS:66:13)
              javascript.0 782	2023-02-24 14:18:16.916	warn	getState "WZ" not found (3)
              javascript.0 782	2023-02-24 14:18:16.915	info	script.js.Ambiente.LichtsteuerungJS: WZ
              

              Was habe ich hier falsch? Vielen Dank für deine Hilfe.
              Liebe Grüße
              Michael

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

              @meikie sagte in [gelöst]Lichtersteuerung auf Smartphone:

              let s_currentRoom = a_lightcontrol[i][0];
              

              0 ist WZ, 1 wäre 0_userdata.0.Lights.WZ-Kaminlicht

              Und ich mag es ja mit vielen Kommentaren ... aber warum musst du die auch immer unbedingt da mitten in den Text schreiben. Bei deinem Array - das packe doch in 0 die Beschreibung die du als Kommentar nutzt, und wenn es dann ein Feld mehr ist. Ist dann auch beim Debuggen praktisch weil man dann die Beschreibung mit ausgeben könnte

              ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 10 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 APC 750W kaskadiert || Creality CR-10 SE 3D-Drucker

              M 1 Antwort Letzte Antwort
              0
              • BananaJoeB BananaJoe

                @meikie sagte in [gelöst]Lichtersteuerung auf Smartphone:

                let s_currentRoom = a_lightcontrol[i][0];
                

                0 ist WZ, 1 wäre 0_userdata.0.Lights.WZ-Kaminlicht

                Und ich mag es ja mit vielen Kommentaren ... aber warum musst du die auch immer unbedingt da mitten in den Text schreiben. Bei deinem Array - das packe doch in 0 die Beschreibung die du als Kommentar nutzt, und wenn es dann ein Feld mehr ist. Ist dann auch beim Debuggen praktisch weil man dann die Beschreibung mit ausgeben könnte

                M Offline
                M Offline
                Meikie
                schrieb am zuletzt editiert von
                #21

                Hey,
                sehe es mir nach. Ich bin ganz neu in diesem Metier :-)

                0 ist WZ, 1 wäre 0_userdata.0.Lights.WZ-Kaminlicht

                Genau so sollte es sein. Kannst du einen Fehler finden und mir sagen?
                Vielen Dank.

                ZarelloZ 1 Antwort Letzte Antwort
                0
                • M Meikie

                  Hey,
                  sehe es mir nach. Ich bin ganz neu in diesem Metier :-)

                  0 ist WZ, 1 wäre 0_userdata.0.Lights.WZ-Kaminlicht

                  Genau so sollte es sein. Kannst du einen Fehler finden und mir sagen?
                  Vielen Dank.

                  ZarelloZ Offline
                  ZarelloZ Offline
                  Zarello
                  schrieb am zuletzt editiert von
                  #22

                  @meikie War jetzt noch eine Frage offen? Denn der Titel dieser Diskussion ist ja inzwischen auf gelöst gesetzt.

                  M 1 Antwort Letzte Antwort
                  0
                  • ZarelloZ Zarello

                    @meikie War jetzt noch eine Frage offen? Denn der Titel dieser Diskussion ist ja inzwischen auf gelöst gesetzt.

                    M Offline
                    M Offline
                    Meikie
                    schrieb am zuletzt editiert von
                    #23

                    @zarello Das eigentliche Thema ist gelöst. Jetzt habe ich nur noch eine Frage gehabt bzgl. dem Wohnzimmer komplett selektieren / deselektiern. Siehe Post vor ca 40min.
                    Danke schon einmal.

                    1 Antwort Letzte Antwort
                    0
                    • M Meikie

                      @zarello Hey, vielen Dank für deine Hilfe. Jetzt habe ich es soweit hinbekommen. Nur folgender Code bekomme ich nicht zum laufen.

                      let a_lightcontrol = [
                          [/*"WZ-Kaminlicht"*/    "WZ",   "0_userdata.0.Lights.WZ-Kaminlicht", "zigbee.0.04cd15fffedb3087.state",  "zigbee.0.04cd15fffedb3087.color"],
                          [/*"WZ-Couch"*/         "WZ",   "0_userdata.0.Lights.WZ-Couch",      "zigbee.0.842e14fffe36885f.state"],
                          [/*"WZ-Stehlampe"*/     "WZ",   "0_userdata.0.Lights.WZ-Stehlampe",  "zigbee.0.9035eafffe04994d.state",  "zigbee.0.9035eafffe04994d.color"],
                          [/*"Bad-Ambiente"*/     "Bad",  "0_userdata.0.Lights.Bad-Ambiente",  "zigbee.0.04cd15fffedb28e3.state",  "zigbee.0.04cd15fffedb28e3.color"]
                      ];
                      // Wohnzimmer komplett selektieren / deselektieren
                      on({id: "0_userdata.0.Lights.control-wz"/*control-wz*/, change: "ne"}, async function (obj) {
                        var value = obj.state.val;
                        var oldValue = obj.oldState.val;
                              // Abruf der Werte in einer Schleife:
                               for (var i = 0; i < a_lightcontrol.length; i++) {  
                              let s_currentRoom = a_lightcontrol[i][0];
                              let s_currentData = a_lightcontrol[i][1];
                              // Alle Lampen im Wohnzimmer auswählen
                              console.log(s_currentRoom);
                              if (getState (s_currentRoom).val == "WZ") {
                              setState(s_currentData/*Switch state*/, getState("0_userdata.0.Lights.control-wz").val);
                              }
                          }
                              /*Kaminlicht*/ //setState("0_userdata.0.Lights.WZ-Kaminlicht", value);
                              /*Stehlampe*/  //setState("0_userdata.0.Lights.WZ-Stehlampe", value);
                              /*Couch*/      //setState("0_userdata.0.Lights.WZ-Couch", value);
                      });
                      

                      Folgende Fehlermeldung steht im Protokoll.

                      javascript.0 782	2023-02-24 14:18:16.917	warn	at processImmediate (node:internal/timers:466:21)
                      javascript.0 782	2023-02-24 14:18:16.917	warn	at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5916:56)
                      javascript.0 782	2023-02-24 14:18:16.917	warn	at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:593:29)
                      javascript.0 782	2023-02-24 14:18:16.917	warn	at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1244:38)
                      javascript.0 782	2023-02-24 14:18:16.917	warn	at Object.<anonymous> (script.js.Ambiente.LichtsteuerungJS:66:13)
                      javascript.0 782	2023-02-24 14:18:16.916	warn	getState "WZ" not found (3)
                      javascript.0 782	2023-02-24 14:18:16.915	info	script.js.Ambiente.LichtsteuerungJS: WZ
                      

                      Was habe ich hier falsch? Vielen Dank für deine Hilfe.
                      Liebe Grüße
                      Michael

                      ZarelloZ Offline
                      ZarelloZ Offline
                      Zarello
                      schrieb am zuletzt editiert von Zarello
                      #24

                      @meikie sagte in [gelöst]Lichtersteuerung auf Smartphone:

                              let s_currentRoom = a_lightcontrol[i][0];
                              let s_currentData = a_lightcontrol[i][1];
                              // Alle Lampen im Wohnzimmer auswählen
                              console.log(s_currentRoom);
                              if (getState (s_currentRoom).val == "WZ") {
                                setState(s_currentData/*Switch state*/, getState("0_userdata.0.Lights.control-wz").val);
                              }
                      

                      Folgende Fehlermeldung steht im Protokoll.

                      javascript.0 782	2023-02-24 14:18:16.917	warn	at Object.<anonymous> (script.js.Ambiente.LichtsteuerungJS:66:13)
                      javascript.0 782	2023-02-24 14:18:16.916	warn	getState "WZ" not found (3)
                      javascript.0 782	2023-02-24 14:18:16.915	info	script.js.Ambiente.LichtsteuerungJS: WZ
                      

                      Code und Log habe ich hier mal auf die wesentlichen Stellen gekürzt, die man benötigt um das Problem zu verstehen. Die folgenden Zeilennummern beziehen sich auf meinen gekürzten Ausschnitt:
                      In Zeile 4 gibst Du s_currentRoom im Log aus. Das ist auch zu sehen in Zeile 3 des Logs.
                      Der Wert von s_currentRoom is "WZ".
                      Dann versuchst Du in Zeile 5 getState aufzurufen. Das System gibt Dir dazu völlig richtig die Antwort in Zeile 2 im Log: Ein Datenpunkt mit Namen "WZ" existiert nicht, denn getState versucht ja immer Werte aus einem Datenpunkt zu lesen.
                      In Zeile 1 des Logs findest Du dann übrigens den Hinweis, wo die entsprechende Stelle zu suchen ist: Im Script Ambiente.LichtsteuerungJS, Zeile 66, Spalte 13.
                      Eigentlich wolltest Du vermutlich einfach überprüfen ob Dein Tabelleneintrag zum Wohnzimmer gehört.
                      Das wäre dann:

                        if (s_currentRoom == "WZ") {
                      

                      Ich hoffe, das hilft Dir etwas weiter.

                      Edit: Logzeile mit Hinweis auf Position ergänzt und beschrieben.

                      M 1 Antwort Letzte Antwort
                      1
                      • ZarelloZ Zarello

                        @meikie sagte in [gelöst]Lichtersteuerung auf Smartphone:

                                let s_currentRoom = a_lightcontrol[i][0];
                                let s_currentData = a_lightcontrol[i][1];
                                // Alle Lampen im Wohnzimmer auswählen
                                console.log(s_currentRoom);
                                if (getState (s_currentRoom).val == "WZ") {
                                  setState(s_currentData/*Switch state*/, getState("0_userdata.0.Lights.control-wz").val);
                                }
                        

                        Folgende Fehlermeldung steht im Protokoll.

                        javascript.0 782	2023-02-24 14:18:16.917	warn	at Object.<anonymous> (script.js.Ambiente.LichtsteuerungJS:66:13)
                        javascript.0 782	2023-02-24 14:18:16.916	warn	getState "WZ" not found (3)
                        javascript.0 782	2023-02-24 14:18:16.915	info	script.js.Ambiente.LichtsteuerungJS: WZ
                        

                        Code und Log habe ich hier mal auf die wesentlichen Stellen gekürzt, die man benötigt um das Problem zu verstehen. Die folgenden Zeilennummern beziehen sich auf meinen gekürzten Ausschnitt:
                        In Zeile 4 gibst Du s_currentRoom im Log aus. Das ist auch zu sehen in Zeile 3 des Logs.
                        Der Wert von s_currentRoom is "WZ".
                        Dann versuchst Du in Zeile 5 getState aufzurufen. Das System gibt Dir dazu völlig richtig die Antwort in Zeile 2 im Log: Ein Datenpunkt mit Namen "WZ" existiert nicht, denn getState versucht ja immer Werte aus einem Datenpunkt zu lesen.
                        In Zeile 1 des Logs findest Du dann übrigens den Hinweis, wo die entsprechende Stelle zu suchen ist: Im Script Ambiente.LichtsteuerungJS, Zeile 66, Spalte 13.
                        Eigentlich wolltest Du vermutlich einfach überprüfen ob Dein Tabelleneintrag zum Wohnzimmer gehört.
                        Das wäre dann:

                          if (s_currentRoom == "WZ") {
                        

                        Ich hoffe, das hilft Dir etwas weiter.

                        Edit: Logzeile mit Hinweis auf Position ergänzt und beschrieben.

                        M Offline
                        M Offline
                        Meikie
                        schrieb am zuletzt editiert von
                        #25

                        @zarello
                        Super erklärt. Vielen Dank. Genau das wollte ich machen. Funktioniert!

                        Bin mal gespannt wie weit ich jetzt noch komme :-)

                        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

                        577

                        Online

                        32.7k

                        Benutzer

                        82.5k

                        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