Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst] Funktion on({id: …. - Value Übergabe....?

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [gelöst] Funktion on({id: …. - Value Übergabe....?

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

      Liebe Leute,

      immer dann wenn ich meine Programmieren im ioBroker endlich "wirklich" verstanden zu haben, kommt DAS 😞

      Wenn eine on id Funktion auslöst kann man ja den Wert des überwachten Datenpunktes in der Funktion dann gleich weiter nutzen mit obj.state.val - dachte ich zumindest und hätte es so auch in diversen Scripten im Einsatz. in diesem Beispiel geht es aber nicht - warum? :?:

      on({id: "hm-rega.0.14733"/*HZ-Mode WC und VR_EG*/, change: "ne" }, function () {
          if (obj.state.val == 91){
              Stufe = 1;
              Raum = "Vorraum Erdgeschoß";
              aktTemp = "hm-rpc.0.MEQ0088534.1.TEMPERATURE"/*Klima WC.TEMPERATURE*/;
              bastel_Push(Stufe, Raum, aktTemp);
          }
      });
      
      

      Ich bekomm' die Fehlermeldung

      javascript.0	2017-10-03 14:56:42.230	error	at Object. (script.js.Basics.Notheizwarnungen:20:9)
      javascript.0	2017-10-03 14:56:42.229	error	Error in callback: ReferenceError: obj is not defined
      
      

      Selbiger Code in diesem Beispiel funktioniert aber:

      on({id: "vis.0.control.Displays_aktiv"/*Displays_aktiv*/, change: "ne"}, function(obj){
      
          // check auf Displays EIN
          if (obj.state.val === true){
              var request = require("request");
              var starte_tablet = "http://192.168.68.220:50000/tasker=displayon";
              request(starte_tablet, function (err, state, body){log("---------------------------------------- Starte Tab 3")});
              var starte_sony = "http://192.168.68.221:50000/tasker=displayon";
              request(starte_sony, function (err, state, body){log("---------------------------------------- Starte Sony OG")});
          }
      
          // check auf Displays AUS
          if (obj.state.val === false){
              var requestAUS = require("request");
              var stoppe_tablet = "http://192.168.68.220:50000/tasker=displayoff";
              requestAUS(stoppe_tablet, function (err, state, body){log("---------------------------------------- STOPPE Tab 3")});
              var stoppe_sony = "http://192.168.68.221:50000/tasker=displayoff";
              requestAUS(stoppe_sony, function (err, state, body){log("---------------------------------------- STOPPE Sony OG")});
          }
      
      });
      

      ??

      Liebe Grüße

      tom

      1 Reply Last reply Reply Quote 0
      • htrecksler
        htrecksler Forum Testing last edited by

        fehlt da nicht in deinem ersten Code das (obj)

        on({id: "hm-rega.0.14733"/*HZ-Mode WC und VR_EG*/, change: "ne" }, function (obj) { 
            if (obj.state.val == 91){
             ....
        
        
        1 Reply Last reply Reply Quote 0
        • etv
          etv last edited by

          @htrecksler:

          fehlt da nicht in deinem ersten Code das (obj)

          on({id: "hm-rega.0.14733"/*HZ-Mode WC und VR_EG*/, change: "ne" }, function (obj) { 
              if (obj.state.val == 91){
               ....
          
          ```` `  … ok, der Teufel steckt wiedermal im Detail!
          

          Herzlichen Dank für die schnelle Antwort!

          Liebe Grüße

          tom

          Gesendet mit Tapatalk

          1 Reply Last reply Reply Quote 0
          • P
            pix last edited by

            Hallo,

            das „obj“ ist übrigens austauschbar. Du kannst auch „data“, „dp“ oder „pustekuchen“ schreiben.

            Gruß

            Pix

            1 Reply Last reply Reply Quote 0
            • etv
              etv last edited by

              @pix:

              Hallo,

              das „obj“ ist übrigens austauschbar. Du kannst auch „data“, „dp“ oder „pustekuchen“ schreiben.

              Gruß

              Pix ` .[emoji16] alles klar, danke!

              Liebe Grüße

              tom

              Gesendet mit Tapatalk

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

              Support us

              ioBroker
              Community Adapters
              Donate

              813
              Online

              31.7k
              Users

              79.8k
              Topics

              1.3m
              Posts

              3
              5
              1024
              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