Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Gelöst: Fehler im Script

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Gelöst: Fehler im Script

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

      Hallo

      ich übe gerade das Scripten, kann jemand mal über mein Script schauen, offenbar scheint etwas mit den Scheduler nicht zu klappen, irgend etwas mit den Klammern passt offenbar nicht. Der fehler wird direkt in Zeile1 angezeigt und in der letzten Zeile das gelbe Dreieck.

      Gruß Michael

      schedule("*/2 * * * *", function () {
      createState('Rolladen.WZ_Links');
      createState('Rolladen.WZ_Rechts');
      createState('Rolladen.EZ');
      createState('Rolladen.Küche');
      createState('Rolladen.WC');
      createState('Rolladen.Move_WZ_Links');
      createState('Rolladen.Move_WZ_Rechts');
      createState('Rolladen.Move_EZ');
      createState('Rolladen.Move_Küche');
      createState('Rolladen.Move_WC');
      var Statuswert;
      
      on({id: 'hm-rpc.1.CUX4000002.6.RCVS', change: "ne"}, 
      function (Rolladen) {
      var RL = getState('hm-rpc.1.CUX4000002.6.RCVS').val;
      var Kanal = RL.substr(8, 2);
      var Status = RL.substr(10, 2);
      
      if (Status == "00") {
      Statuswert = "No Information";
      }
      if (Status == "01") {
      Statuswert = "OBEN";
      }
      if (Status == "02") {
      Statuswert = "UNTEN";
      }
      if (Status == "03") {
      Statuswert = "Intermediate position stop";
      }
      if (Status == "04") {
      Statuswert = "Tilt/ventilation position stop";
      }
      if (Status == "05") {
      Statuswert = "Blocking";
      }
      if (Status == "06") {
      Statuswert = "Overheated";
      }
      if (Status == "07") {
      Statuswert = "Timeout";
      }
      if (Status == "08") {
      Statuswert = "Start to move up";
      }
      if (Status == "09") {
      Statuswert = "Start to move down";
      }
      if (Status == "0A") {
      Statuswert = "Fährt AUF";
      }
      if (Status == "0B") {
      Statuswert = "Fährt AB";
      }
      if (Status == "0D") {
      Statuswert = "Stopped in undefined position";
      }
      if (Status == "0E") {
      Statuswert = "Top position stop which is tilt position";
      }
      if (Status == "0F") {
      Statuswert = "Bottom position stop which is intermediate position";
      }
      if (Status == "10") {
      Statuswert = "Switching devices switched off";
      }
      if (Status == "11") {
      Statuswert = "Switching devices switched on";
      }
      if(Kanal == 01) {
      setState('javascript.0.Rolladen.WZ_Links', Statuswert);
      setState('javascript.0.Rolladen.Move_WZ_Links', Status);
      log(Kanal + " WZ Links " + Status + " " + Statuswert);
      }
      else {
      if(Kanal == 02) {
      setState('javascript.0.Rolladen.WZ_Rechts', Statuswert);
      setState('javascript.0.Rolladen.Move_WZ_Rechts', Status);
      log(Kanal + " WZ Rechts " + Status + " " + Statuswert);
      }
      else {
      if(Kanal == 04) {
      setState('javascript.0.Rolladen.EZ', Statuswert);
      setState('javascript.0.Rolladen.Move_EZ', Status);
      log(Kanal + " EZ " + Status + " " + Statuswert);
      }
      else {
      if(Kanal == 08) {
      setState('javascript.0.Rolladen.Küche', Statuswert);
      setState('javascript.0.Rolladen.Move_Küche', Status);
      log(Kanal + " Küche " + Status + " " + Statuswert);
      }
      else {
      if(Kanal == 10) {
      setState('javascript.0.Rolladen.WC', Statuswert);
      setState('javascript.0.Rolladen.Move_WC', Status);
      log(Kanal + " WC " + Status + " " + Statuswert);
      }
      }
      }
      }
      }
      });
      
      1 Reply Last reply Reply Quote 0
      • apollon77
        apollon77 last edited by

        Verrätst du uns auch noch welcher Fehler angezeigt wird? Was steht da wenn du über den Fehler bzw das Dreieck mit der Maus gehst?

        Gesendet vom Handy …

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

          Hallöchen Apollon77

          in Zeile1 wird Unmatch '{' gezeigt

          und in der letzten Zeile das Warndreieck mit : unrecoverable syntax error (100% scanned)

          wenn ich den scheduler auskommentiere, habe ich keinen Fehler

          Gruß

          Michael

          1 Reply Last reply Reply Quote 0
          • F
            Fitti last edited by

            Es fehlen zwei Klammern zu ganz am Ende:

            schedule("*/2 * * * *", function () {
            createState('Rolladen.WZ_Links');
            createState('Rolladen.WZ_Rechts');
            createState('Rolladen.EZ');
            createState('Rolladen.Küche');
            createState('Rolladen.WC');
            createState('Rolladen.Move_WZ_Links');
            createState('Rolladen.Move_WZ_Rechts');
            createState('Rolladen.Move_EZ');
            createState('Rolladen.Move_Küche');
            createState('Rolladen.Move_WC');
            var Statuswert;
            }); //schedule Schleife ENDE 
            
            

            So long,

            Fitti

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

              @Fitti:

              Es fehlen zwei Klammern zu ganz am Ende:

              schedule("*/2 * * * *", function () {
              createState('Rolladen.WZ_Links');
              createState('Rolladen.WZ_Rechts');
              createState('Rolladen.EZ');
              createState('Rolladen.Küche');
              createState('Rolladen.WC');
              createState('Rolladen.Move_WZ_Links');
              createState('Rolladen.Move_WZ_Rechts');
              createState('Rolladen.Move_EZ');
              createState('Rolladen.Move_Küche');
              createState('Rolladen.Move_WC');
              var Statuswert;
              }); //schedule Schleife ENDE 
              
              

              So long,

              Fitti `

              Hallo

              wenn ich das richtig verstehe, wird der Code unterhalb der Schedule nach deinem Hinweis gar nicht mehr im Takt der Schedule durchlaufen, oder?

              Ziel soll ja sein, dass das Script gemäß dem Scheduler regelmäßig durchlaufen wird.

              Ich hab die Klammern mal gesetzt und bekomme wieder das Warndreieck.
              326_unbenannt.jpg
              Gruß Michael

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

                Mit gescheiten Code Einrückungen in jedem Block wäre das viel besser lesbar und sichtbarer.

                Gesendet vom Handy …

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

                  @apollon77:

                  Mit gescheiten Code Einrückungen in jedem Block wäre das viel besser lesbar und sichtbarer.

                  Gesendet vom Handy … `

                  schedule("*/1 * * * *", function () {
                  createState('Rolladen.WZ_Links');
                  createState('Rolladen.WZ_Rechts');
                  createState('Rolladen.EZ');
                  createState('Rolladen.Küche');
                  createState('Rolladen.WC');
                  createState('Rolladen.Move_WZ_Links');
                  createState('Rolladen.Move_WZ_Rechts');
                  createState('Rolladen.Move_EZ');
                  createState('Rolladen.Move_Küche');
                  createState('Rolladen.Move_WC');
                  var Statuswert;
                  
                  on({
                          id: 'hm-rpc.1.CUX4000002.6.RCVS',
                          change: "ne"
                      },
                      function(Rolladen) {
                          var RL = getState('hm-rpc.1.CUX4000002.6.RCVS').val;
                          var Kanal = RL.substr(8, 2);
                          var Status = RL.substr(10, 2);
                  
                          if (Status == "00") {
                              Statuswert = "No Information";
                          }
                          if (Status == "01") {
                              Statuswert = "OBEN";
                          }
                          if (Status == "02") {
                              Statuswert = "UNTEN";
                          }
                          if (Status == "03") {
                              Statuswert = "Intermediate position stop";
                          }
                          if (Status == "04") {
                              Statuswert = "Tilt/ventilation position stop";
                          }
                          if (Status == "05") {
                              Statuswert = "Blocking";
                          }
                          if (Status == "06") {
                              Statuswert = "Overheated";
                          }
                          if (Status == "07") {
                              Statuswert = "Timeout";
                          }
                          if (Status == "08") {
                              Statuswert = "Start to move up";
                          }
                          if (Status == "09") {
                              Statuswert = "Start to move down";
                          }
                          if (Status == "0A") {
                              Statuswert = "Fährt AUF";
                              test = '10';
                              log(Value);
                          }
                          if (Status == "0B") {
                              Statuswert = "Fährt AB";
                              test = '11';
                          }
                          if (Status == "0D") {
                              Statuswert = "Stopped in undefined position";
                          }
                          if (Status == "0E") {
                              Statuswert = "Top position stop which is tilt position";
                          }
                          if (Status == "0F") {
                              Statuswert = "Bottom position stop which is intermediate position";
                          }
                          if (Status == "10") {
                              Statuswert = "Switching devices switched off";
                          }
                          if (Status == "11") {
                              Statuswert = "Switching devices switched on";
                          }
                          if (Kanal == 01) {
                              setState('javascript.0.Rolladen.WZ_Links', Statuswert);
                              setState('javascript.0.Rolladen.Move_WZ_Links', Status);
                              log(Kanal + " WZ Links " + Status + " " + Statuswert);
                          } else {
                              if (Kanal == 02) {
                                  setState('javascript.0.Rolladen.WZ_Rechts', Statuswert);
                                  setState('javascript.0.Rolladen.Move_WZ_Rechts', Status);
                                  log(Kanal + " WZ Rechts " + Status + " " + Statuswert);
                              } else {
                                  if (Kanal == 04) {
                                      setState('javascript.0.Rolladen.EZ', Statuswert);
                                      setState('javascript.0.Rolladen.Move_EZ', Status);
                                      log(Kanal + " EZ " + Status + " " + Statuswert);
                                  } else {
                                      if (Kanal == 08) {
                                          setState('javascript.0.Rolladen.Küche', Statuswert);
                                          setState('javascript.0.Rolladen.Move_Küche', Status);
                                          log(Kanal + " Küche " + Status + " " + Statuswert);
                                      } else {
                                          if (Kanal == 10) {
                                              setState('javascript.0.Rolladen.WC', Statuswert);
                                              setState('javascript.0.Rolladen.Move_WC', Status);
                                              log(Kanal + " WC " + Status + " " + Statuswert);
                                          }
                                      }
                                  }
                              }
                          }
                      });
                  

                  So in etwa?

                  Michael

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

                    Es fehlt der Abschluss von Schedule.

                            }
                        }); // on
                    }); // schedule
                    
                    1 Reply Last reply Reply Quote 0
                    • M
                      michihorn last edited by

                      @paul53:

                      Es fehlt der Abschluss von Schedule.

                              }
                          }); // on
                      }); // schedule
                      ```` `  
                      

                      Dankeschön 😉

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

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      884
                      Online

                      31.7k
                      Users

                      79.9k
                      Topics

                      1.3m
                      Posts

                      4
                      9
                      460
                      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