Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter Worx v0.4.x

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Test Adapter Worx v0.4.x

Scheduled Pinned Locked Moved Tester
worxlandroid
198 Posts 36 Posters 31.2k Views 35 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • MeistertrM Meistertr

    @dslraser das ist nix wildes. ich gehe davon aus, dass der Server sich einmal am tag neustartet und daher kommt der fehler. der muss noch abgefangen werden. Ist wie beim Telegramm adapter, der hat auch einmal in der nacht eine error weil der Server neustartet. Its nicht schön aber auch nicht schlimm

    S Offline
    S Offline
    skokarl
    wrote on last edited by
    #85

    @Meistertr sagte in Test Adapter Worx v0.4.x:

    @dslraser das ist nix wildes. ich gehe davon aus, dass der Server sich einmal am tag neustartet und daher kommt der fehler. der muss noch abgefangen werden. Ist wie beim Telegramm adapter, der hat auch einmal in der nacht eine error weil der Server neustartet. Its nicht schön aber auch nicht schlimm

    jipp könnte sein, gute Idee

    IOBroker mit Proxmox auf Celeron Nuc mit 16 GB und Debian11, Sonos API, Echo Show 15 als Wandtablet, Homematic IP, HUE, Sonos, Echos, DS718+ als Backup

    1 Reply Last reply
    0
    • T Offline
      T Offline
      tazdevil20
      wrote on last edited by
      #86

      @Meistertr
      Hoffe es ist ok. Habe ein pull request mit folgenden Änderungen eingestellt:

      • Hinzufügen von "sendCommand". Dadurch kann man alle (?) aktuell verfügbaren Commands an Worx AWS senden. Hatte dadurch gehofft, dass ich das Problem mit dem EdgeCut (M500 mit FW 3.07+) durch etwas spielen könnte.
      • Entfernen von "math.round" für die totalTime/Distance/BladeTime. Hat nur bis zur ersten Stelle nach dem Komma gerundet. Fand ich nicht schön.

      Habe auch noch in meinem Git Neigung, Steigung und Richtung integriert. Leider weiß ich nicht wie ich einen weiteren pull request stellen könnte. Der würde dann auch noch kommen.

      L 1 Reply Last reply
      0
      • P Offline
        P Offline
        Phtevn
        wrote on last edited by
        #87

        Hallo zusammen,
        ich bin völlig neu in der Welt der Rasenmäherroboter und auch im iobroker.
        Ich habe alle möglichen "Lösungsansätze aus den verschieden topics für den Kantenschnitt probiert und bin immer wieder zum Mäher gegangen, der fleißig seine Runden drehte, aber eben ohne dabei zu mähen. Jetzt habe ich dieses Thema gefunden. Ich verstehe natürlich warum der Kantenschnitt mit der "alten Lösung" nicht mehr funktioniert.

        Wäre es vielleicht möglich per script den Mähplan adaptiv jedesmal so zu ändern, dass es z.B. so aussieht:
        es ist 9:50 Uhr morgens. Setze nun den Mähplan für den aktuellen tag auf Start: aktuelle Zeit + x Minuten mit Kantenschnitt. Dann sollte der Mäher doch eigentlich den edgecut mitmachen, oder?

        Mein Mäher: Landroid M WR141E mit Firmware 3.08

        Grüße
        Phtevn

        hsteinmeH T 2 Replies Last reply
        0
        • P Phtevn

          Hallo zusammen,
          ich bin völlig neu in der Welt der Rasenmäherroboter und auch im iobroker.
          Ich habe alle möglichen "Lösungsansätze aus den verschieden topics für den Kantenschnitt probiert und bin immer wieder zum Mäher gegangen, der fleißig seine Runden drehte, aber eben ohne dabei zu mähen. Jetzt habe ich dieses Thema gefunden. Ich verstehe natürlich warum der Kantenschnitt mit der "alten Lösung" nicht mehr funktioniert.

          Wäre es vielleicht möglich per script den Mähplan adaptiv jedesmal so zu ändern, dass es z.B. so aussieht:
          es ist 9:50 Uhr morgens. Setze nun den Mähplan für den aktuellen tag auf Start: aktuelle Zeit + x Minuten mit Kantenschnitt. Dann sollte der Mäher doch eigentlich den edgecut mitmachen, oder?

          Mein Mäher: Landroid M WR141E mit Firmware 3.08

          Grüße
          Phtevn

          hsteinmeH Online
          hsteinmeH Online
          hsteinme
          wrote on last edited by
          #88

          @Phtevn sagte in Test Adapter Worx v0.4.x:

          Wäre es vielleicht möglich per script den Mähplan adaptiv jedesmal so zu ändern, dass es z.B. so aussieht:
          es ist 9:50 Uhr morgens. Setze nun den Mähplan für den aktuellen tag auf Start: aktuelle Zeit + x Minuten mit Kantenschnitt. Dann sollte der Mäher doch eigentlich den edgecut mitmachen, oder?

          Ja, das funktioniert bestens. Ich habe eine derartige Lösung im Einsatz. Für erste Details schau doch mal hierhin.

          1 Reply Last reply
          0
          • P Phtevn

            Hallo zusammen,
            ich bin völlig neu in der Welt der Rasenmäherroboter und auch im iobroker.
            Ich habe alle möglichen "Lösungsansätze aus den verschieden topics für den Kantenschnitt probiert und bin immer wieder zum Mäher gegangen, der fleißig seine Runden drehte, aber eben ohne dabei zu mähen. Jetzt habe ich dieses Thema gefunden. Ich verstehe natürlich warum der Kantenschnitt mit der "alten Lösung" nicht mehr funktioniert.

            Wäre es vielleicht möglich per script den Mähplan adaptiv jedesmal so zu ändern, dass es z.B. so aussieht:
            es ist 9:50 Uhr morgens. Setze nun den Mähplan für den aktuellen tag auf Start: aktuelle Zeit + x Minuten mit Kantenschnitt. Dann sollte der Mäher doch eigentlich den edgecut mitmachen, oder?

            Mein Mäher: Landroid M WR141E mit Firmware 3.08

            Grüße
            Phtevn

            T Offline
            T Offline
            tazdevil20
            wrote on last edited by tazdevil20
            #89

            @Phtevn
            Ist eine gute Idee. Läst sich nur per Script realisieren. Bei meinem Versuch hat es funktioniert. Jedoch ist es über diesen Modus "nrur" einmal am Tag möglich die Rasenkante zu schneiden. "Nachteil" ist, dass er dann anschließend noch mäht. Das hat er auch gemacht als ich direkt nach dem Start die Konfiguration wieder entfernt habe.
            Müsste ich aber vielleicht auch nochmal etwas genauer testen.

            1 Reply Last reply
            0
            • P Offline
              P Offline
              Phtevn
              wrote on last edited by
              #90

              Ah super Anleitung im Roboter Forum.
              Ich werde mal versuchen das bei mir zu implementieren. Für den Anfang bin ich von der Mächtigkeit des ioBroker noch etwas überfordert. Hier ein Adapter, da eine neue Version :)
              Vielleicht hat ja einer von euch eine gute Seite mit Tipps oder Tutorials?

              1 Reply Last reply
              0
              • streethawkS Offline
                streethawkS Offline
                streethawk
                wrote on last edited by
                #91

                Hi

                @☺Meistertr: Ich hääte mal ne Frage. Wäre es möglich auch die Landxcape Modelle zu unterstützen. Welche ja baugleich mit den Landroid / Worx Mähern sind allerdings einen anderen Server nutzen.

                In der Desk App konnte ich ihn einbinden und funktioniert auch. Hier musste nur die Adresse der WebApi eingetragen werden und der der SSL Schlüssel.

                MeistertrM 1 Reply Last reply
                0
                • streethawkS streethawk

                  Hi

                  @☺Meistertr: Ich hääte mal ne Frage. Wäre es möglich auch die Landxcape Modelle zu unterstützen. Welche ja baugleich mit den Landroid / Worx Mähern sind allerdings einen anderen Server nutzen.

                  In der Desk App konnte ich ihn einbinden und funktioniert auch. Hier musste nur die Adresse der WebApi eingetragen werden und der der SSL Schlüssel.

                  MeistertrM Offline
                  MeistertrM Offline
                  Meistertr
                  Developer
                  wrote on last edited by
                  #92

                  @streethawk sollte mit dem worx Adapter von git gehen. In der Config kann nun der hersteller geändert werden

                  1 Reply Last reply
                  0
                  • T tazdevil20

                    @Meistertr
                    Hoffe es ist ok. Habe ein pull request mit folgenden Änderungen eingestellt:

                    • Hinzufügen von "sendCommand". Dadurch kann man alle (?) aktuell verfügbaren Commands an Worx AWS senden. Hatte dadurch gehofft, dass ich das Problem mit dem EdgeCut (M500 mit FW 3.07+) durch etwas spielen könnte.
                    • Entfernen von "math.round" für die totalTime/Distance/BladeTime. Hat nur bis zur ersten Stelle nach dem Komma gerundet. Fand ich nicht schön.

                    Habe auch noch in meinem Git Neigung, Steigung und Richtung integriert. Leider weiß ich nicht wie ich einen weiteren pull request stellen könnte. Der würde dann auch noch kommen.

                    L Offline
                    L Offline
                    LJSven
                    wrote on last edited by
                    #93

                    @tazdevil20 sagte in Test Adapter Worx v0.4.x:

                    @Meistertr
                    Hoffe es ist ok. Habe ein pull request mit folgenden Änderungen eingestellt:

                    • Hinzufügen von "sendCommand". Dadurch kann man alle (?) aktuell verfügbaren Commands an Worx AWS senden. Hatte dadurch gehofft, dass ich das Problem mit dem EdgeCut (M500 mit FW 3.07+) durch etwas spielen könnte.
                    • Entfernen von "math.round" für die totalTime/Distance/BladeTime. Hat nur bis zur ersten Stelle nach dem Komma gerundet. Fand ich nicht schön.

                    Habe auch noch in meinem Git Neigung, Steigung und Richtung integriert. Leider weiß ich nicht wie ich einen weiteren pull request stellen könnte. Der würde dann auch noch kommen.

                    Kommen diese Funktionen in der neuen Version? Mathematische Rundung find ich auch nicht gut - wie kann ich bei der aktuellen FW EdgeCut starten? Haben einen WR 105.SI mit der FW 3.52 / habe gestern auf EdgeCut gedrückt, der Roboter ist losgefahren, aber ohne zu mähen.

                    T 1 Reply Last reply
                    0
                    • L LJSven

                      @tazdevil20 sagte in Test Adapter Worx v0.4.x:

                      @Meistertr
                      Hoffe es ist ok. Habe ein pull request mit folgenden Änderungen eingestellt:

                      • Hinzufügen von "sendCommand". Dadurch kann man alle (?) aktuell verfügbaren Commands an Worx AWS senden. Hatte dadurch gehofft, dass ich das Problem mit dem EdgeCut (M500 mit FW 3.07+) durch etwas spielen könnte.
                      • Entfernen von "math.round" für die totalTime/Distance/BladeTime. Hat nur bis zur ersten Stelle nach dem Komma gerundet. Fand ich nicht schön.

                      Habe auch noch in meinem Git Neigung, Steigung und Richtung integriert. Leider weiß ich nicht wie ich einen weiteren pull request stellen könnte. Der würde dann auch noch kommen.

                      Kommen diese Funktionen in der neuen Version? Mathematische Rundung find ich auch nicht gut - wie kann ich bei der aktuellen FW EdgeCut starten? Haben einen WR 105.SI mit der FW 3.52 / habe gestern auf EdgeCut gedrückt, der Roboter ist losgefahren, aber ohne zu mähen.

                      T Offline
                      T Offline
                      tazdevil20
                      wrote on last edited by
                      #94

                      @LJSven
                      Hi,
                      das ist ein Problem von Worx. Aktueller Workaround ist ein Script welches EdgeCut startet.

                      Ich habe in meinem Script einfach zu der aktuellen Zeit 2 Minuten hinzugezählt und die Parameter für das automatische Mähen entsprechend gesetzt mit der Option EdgeCut = true.

                      Kann gerade leider das Script nicht posten, da ich unterwegs bin. Kann ich bei Bedarf aber gerne noch machen. Als Vorwarnung: Das Script ist sicherlich Verbesserungswürdig, da ich einiges sicherlich zu kompliziert gebaut habe.

                      L S 2 Replies Last reply
                      0
                      • T tazdevil20

                        @LJSven
                        Hi,
                        das ist ein Problem von Worx. Aktueller Workaround ist ein Script welches EdgeCut startet.

                        Ich habe in meinem Script einfach zu der aktuellen Zeit 2 Minuten hinzugezählt und die Parameter für das automatische Mähen entsprechend gesetzt mit der Option EdgeCut = true.

                        Kann gerade leider das Script nicht posten, da ich unterwegs bin. Kann ich bei Bedarf aber gerne noch machen. Als Vorwarnung: Das Script ist sicherlich Verbesserungswürdig, da ich einiges sicherlich zu kompliziert gebaut habe.

                        L Offline
                        L Offline
                        LJSven
                        wrote on last edited by
                        #95

                        @tazdevil20 sagte in Test Adapter Worx v0.4.x:

                        @LJSven
                        Hi,
                        das ist ein Problem von Worx. Aktueller Workaround ist ein Script welches EdgeCut startet.

                        Ich habe in meinem Script einfach zu der aktuellen Zeit 2 Minuten hinzugezählt und die Parameter für das automatische Mähen entsprechend gesetzt mit der Option EdgeCut = true.

                        Kann gerade leider das Script nicht posten, da ich unterwegs bin. Kann ich bei Bedarf aber gerne noch machen. Als Vorwarnung: Das Script ist sicherlich Verbesserungswürdig, da ich einiges sicherlich zu kompliziert gebaut habe.

                        Kannst du mir das schicken, wenn du "Zeit" hast?

                        1 Reply Last reply
                        0
                        • T tazdevil20

                          @LJSven
                          Hi,
                          das ist ein Problem von Worx. Aktueller Workaround ist ein Script welches EdgeCut startet.

                          Ich habe in meinem Script einfach zu der aktuellen Zeit 2 Minuten hinzugezählt und die Parameter für das automatische Mähen entsprechend gesetzt mit der Option EdgeCut = true.

                          Kann gerade leider das Script nicht posten, da ich unterwegs bin. Kann ich bei Bedarf aber gerne noch machen. Als Vorwarnung: Das Script ist sicherlich Verbesserungswürdig, da ich einiges sicherlich zu kompliziert gebaut habe.

                          S Offline
                          S Offline
                          steimi
                          wrote on last edited by
                          #96

                          @tazdevil20 bitte das Skript 'für alle' bereitstellen. danke

                          1 Reply Last reply
                          0
                          • arteckA Offline
                            arteckA Offline
                            arteck
                            Developer Most Active
                            wrote on last edited by arteck
                            #97

                            ich mach es so

                            müsst ihr aber einen Datenpunkt anlegen über den getriggert wird.

                            let worx = 'worx.0.id_des_mover';
                            let laufzeit =  60;
                            let plusMinuten = 1;
                            
                            on({id: worx + '.mower.state', change: "ne"}, function (obj) {   
                                let stat = getState(worx + '.mower.state').val;
                            
                                if (!stat) {
                                    worxLos(new Date(), '00:00', 0);  // wenn fertig dann wird wieder alles gelöscht 
                                }
                            });
                            
                            on({id: '0_userdata.0.draussen.worxKantenschnitt', change: "any"}, function (obj) {   
                                if (getState('0_userdata.0.draussen.worxKantenschnitt').val) {
                                    if (!getState(worx + '.mower.state').val) {    // robi muss in der garage sein
                             
                                         
                                                    let jetzt = new Date();    
                                                    jetzt.setMinutes(jetzt.getMinutes() + plusMinuten );
                                                    let los = new Date(jetzt);
                                        
                                                    let startUm ;
                                        
                                                    if (los.getMinutes() < 10) {
                                                        startUm = los.getHours() + ':0' + los.getMinutes();
                                                    } else {
                                                        startUm = los.getHours() + ':' + los.getMinutes();
                                                    }
                                        
                                               
                                        
                                                    worxLos(los, startUm, laufzeit);
                                        
                                                }
                                            }
                                        });
                                        
                                        
                                        function worxLos(zeitstempel, startUm, laufzeit) {
                                            switch (zeitstempel.getDay()) {
                                                case 0:
                                                    setState(worx + '.calendar.sunday.startTime', startUm);
                                                    setTimeout(function () {
                                                        setState(worx + '.calendar.sunday.workTime', laufzeit); 
                                                    }, 1000 * 5); // warte 5 sekunden               
                                                    break;
                                                case 1:
                                                    setState(worx + '.calendar.monday.startTime', startUm);
                                                    setTimeout(function () {
                                                        setState(worx + '.calendar.monday.workTime', laufzeit);  
                                                    }, 1000 * 5); // warte 5 sekunden                               
                                                    break;
                                                case 2:
                                                    setState(worx + '.calendar.tuesday.startTime', startUm);
                                                    setTimeout(function () {
                                                        setState(worx + '.calendar.tuesday.workTime', laufzeit);  
                                                    }, 1000 * 5); // warte 5 sekunden                               
                                                    break;
                                                case 3:
                                                    setState(worx + '.calendar.wednesday.startTime', startUm);
                                                    setTimeout(function () {
                                                        setState(worx + '.calendar.wednesday.workTime', laufzeit);   
                                                    }, 1000 * 5); // warte 5 sekunden                              
                                                    break;
                                                case 4:
                                                    setState(worx + '.calendar.thursday.startTime', startUm);
                                                    setTimeout(function () {
                                                        setState(worx + '.calendar.thursday.workTime', laufzeit); 
                                                    }, 1000 * 5); // warte 5 sekunden                                
                                                    break;
                                                case 5:
                                                    setState(worx + '.calendar.friday.startTime', startUm);
                                                    setTimeout(function () {
                                                        setState(worx + '.calendar.friday.workTime', laufzeit);
                                                    }, 1000 * 5); // warte 5 sekunden 
                                                    break;
                                                case 6:
                                                    setState(worx + '.calendar.saturday.startTime', startUm);
                                                    setTimeout(function () {
                                                        setState(worx + '.calendar.saturday.workTime', laufzeit);  
                                                    }, 1000 * 5); // warte 5 sekunden                                                                   
                                            }  
                                        }
                                        
                            

                            zigbee hab ich, zwave auch, nuc's genauso und HA auch

                            S 1 Reply Last reply
                            0
                            • T Offline
                              T Offline
                              tazdevil20
                              wrote on last edited by tazdevil20
                              #98

                              Ich habe einen klein wenig anderen Ansatz.
                              Muss aber auch gestehen, dass ich glaube, dass ich aktuell noch ein Problem mit dem deaktivieren habe. Muss ich noch genauer Prüfen. Manche Variablen haben auch einen nicht perfekten Namen.

                              @arteck
                              Du betrachtest nicht den Start um x:59. Dann würde bei dir der EdgeCut nicht starten.

                              An zwei Stellen muss die eigene ID eingetragen werden. Muss ich noch anpassen, dass es nur noch eine Stelle ist.

                              var events = 'EigeneDatenpunkte.0.History.Events';
                              var MowerStatus = 'worx.0.!!!!mowerID!!!!.mower.status';
                              var script = "javascript.0.scriptEnabled.Garten.Mähroboter_Rasenkante";
                              var lastEdgeCut = "EigeneDatenpunkte.0.LandroidZuletztRasenkante"
                              var workingtime = 10;
                              var buffer = 2;
                              var enabledschedule, setval;
                              
                              function EdgeCut() {
                                  var day, startzeittmp, currentHour, currentMin, starttime;
                                  day = getWeekday();
                                  var schedule = 'worx.0.!!!!mowerID!!!!.calendar.' + day + ".";
                                  
                                  var currentHour, currentMin, currentMonth;
                                  var startzeittmp = new Date();
                                  var gesamtzeit_start = new Date()/1;
                                  if (startzeittmp.getHours() < 10) { currentHour = '0' + startzeittmp.getHours();} else {currentHour = startzeittmp.getHours()};
                                  currentMin = startzeittmp.getMinutes()+buffer;
                                  if (currentMin < 10)
                                  { 
                                      currentMin = '0' + currentMin;
                                  } else {
                                      if (currentMin == 60) { currentMin = "00"; currentHour = currentHour +1};
                                      if (currentMin == 61) { currentMin = "01"; currentHour = currentHour +1};
                                  };
                              
                                  starttime = currentHour  + ":" + currentMin;
                                  
                                  setState(schedule + "startTime", starttime);
                                  setval = setTimeout(function () {
                                      setState(schedule + "workTime", workingtime);
                                  }, 5000);
                              
                                  setval = setTimeout(function () {
                                      setState(schedule + "borderCut", true);
                                  }, 10000);
                                  
                                  log(schedule + "worktime");
                                  log("Schneide Rasenkante um " + starttime);
                                  setState(events, "Schneide Rasenkante um " + starttime);
                              }
                              
                              function getWeekday() {
                                  var d = new Date();
                                  var weekday = new Array(7);
                                  weekday[0] = "sunday";
                                  weekday[1] = "monday";
                                  weekday[2] = "tuesday";
                                  weekday[3] = "wednesday";
                                  weekday[4] = "thursday";
                                  weekday[5] = "friday";
                                  weekday[6] = "saturday";
                              
                                  var n = weekday[d.getDay()];
                                  return n;
                              };
                              
                              EdgeCut();
                              
                              on({id: MowerStatus, change: "ne"}, function (obj) {
                                  if(getState(MowerStatus).val >= 2 && enabledschedule === true) {
                                      setState(lastEdgeCut, formatDate(new Date(), 'DD.MM. hh:mm'));
                                      setState(schedule + "startTime", "00:00");
                                      setval = setTimeout(function () {
                                          setState(schedule + "workTime", 0);
                                      }, 5000);
                                      setval = setTimeout(function () {
                                          setState(schedule + "borderCut", false);
                                      }, 10000);
                                      setState(script, false);
                                  };
                              });
                              

                              Kritik und Verbesserungsvorschläge sind ausdrücklich gewünscht.

                              arteckA 1 Reply Last reply
                              0
                              • T tazdevil20

                                Ich habe einen klein wenig anderen Ansatz.
                                Muss aber auch gestehen, dass ich glaube, dass ich aktuell noch ein Problem mit dem deaktivieren habe. Muss ich noch genauer Prüfen. Manche Variablen haben auch einen nicht perfekten Namen.

                                @arteck
                                Du betrachtest nicht den Start um x:59. Dann würde bei dir der EdgeCut nicht starten.

                                An zwei Stellen muss die eigene ID eingetragen werden. Muss ich noch anpassen, dass es nur noch eine Stelle ist.

                                var events = 'EigeneDatenpunkte.0.History.Events';
                                var MowerStatus = 'worx.0.!!!!mowerID!!!!.mower.status';
                                var script = "javascript.0.scriptEnabled.Garten.Mähroboter_Rasenkante";
                                var lastEdgeCut = "EigeneDatenpunkte.0.LandroidZuletztRasenkante"
                                var workingtime = 10;
                                var buffer = 2;
                                var enabledschedule, setval;
                                
                                function EdgeCut() {
                                    var day, startzeittmp, currentHour, currentMin, starttime;
                                    day = getWeekday();
                                    var schedule = 'worx.0.!!!!mowerID!!!!.calendar.' + day + ".";
                                    
                                    var currentHour, currentMin, currentMonth;
                                    var startzeittmp = new Date();
                                    var gesamtzeit_start = new Date()/1;
                                    if (startzeittmp.getHours() < 10) { currentHour = '0' + startzeittmp.getHours();} else {currentHour = startzeittmp.getHours()};
                                    currentMin = startzeittmp.getMinutes()+buffer;
                                    if (currentMin < 10)
                                    { 
                                        currentMin = '0' + currentMin;
                                    } else {
                                        if (currentMin == 60) { currentMin = "00"; currentHour = currentHour +1};
                                        if (currentMin == 61) { currentMin = "01"; currentHour = currentHour +1};
                                    };
                                
                                    starttime = currentHour  + ":" + currentMin;
                                    
                                    setState(schedule + "startTime", starttime);
                                    setval = setTimeout(function () {
                                        setState(schedule + "workTime", workingtime);
                                    }, 5000);
                                
                                    setval = setTimeout(function () {
                                        setState(schedule + "borderCut", true);
                                    }, 10000);
                                    
                                    log(schedule + "worktime");
                                    log("Schneide Rasenkante um " + starttime);
                                    setState(events, "Schneide Rasenkante um " + starttime);
                                }
                                
                                function getWeekday() {
                                    var d = new Date();
                                    var weekday = new Array(7);
                                    weekday[0] = "sunday";
                                    weekday[1] = "monday";
                                    weekday[2] = "tuesday";
                                    weekday[3] = "wednesday";
                                    weekday[4] = "thursday";
                                    weekday[5] = "friday";
                                    weekday[6] = "saturday";
                                
                                    var n = weekday[d.getDay()];
                                    return n;
                                };
                                
                                EdgeCut();
                                
                                on({id: MowerStatus, change: "ne"}, function (obj) {
                                    if(getState(MowerStatus).val >= 2 && enabledschedule === true) {
                                        setState(lastEdgeCut, formatDate(new Date(), 'DD.MM. hh:mm'));
                                        setState(schedule + "startTime", "00:00");
                                        setval = setTimeout(function () {
                                            setState(schedule + "workTime", 0);
                                        }, 5000);
                                        setval = setTimeout(function () {
                                            setState(schedule + "borderCut", false);
                                        }, 10000);
                                        setState(script, false);
                                    };
                                });
                                

                                Kritik und Verbesserungsvorschläge sind ausdrücklich gewünscht.

                                arteckA Offline
                                arteckA Offline
                                arteck
                                Developer Most Active
                                wrote on last edited by arteck
                                #99

                                @tazdevil20 doch die minuten addition macht das automatisch.. das ist eine javascript funktion

                                var date = "2012-01-18T16:59";
                                 let jetzt = new Date(date);    
                                 jetzt.setMinutes(jetzt.getMinutes() + 1);
                                 let los = new Date(jetzt);
                                 let startUm = los.getHours() + ':' + los.getMinutes();
                                
                                log ("wert zurück  " + startUm);
                                

                                zigbee hab ich, zwave auch, nuc's genauso und HA auch

                                T 1 Reply Last reply
                                0
                                • arteckA arteck

                                  @tazdevil20 doch die minuten addition macht das automatisch.. das ist eine javascript funktion

                                  var date = "2012-01-18T16:59";
                                   let jetzt = new Date(date);    
                                   jetzt.setMinutes(jetzt.getMinutes() + 1);
                                   let los = new Date(jetzt);
                                   let startUm = los.getHours() + ':' + los.getMinutes();
                                  
                                  log ("wert zurück  " + startUm);
                                  
                                  T Offline
                                  T Offline
                                  tazdevil20
                                  wrote on last edited by
                                  #100

                                  @arteck
                                  Danke. Habe ich bei mir mal angepasst. Muss ich später mal testen.

                                  Das Problem warum das Script nicht mehr gestoppt wurde habe ich auch gefunden. Wenn ich meine Tests durch habe kann ich es gerne nochmal bereitstellen. Allerdings arteck sein Script funktioniert ja scheinbar ohne Probleme.

                                  1 Reply Last reply
                                  0
                                  • L Offline
                                    L Offline
                                    LJSven
                                    wrote on last edited by
                                    #101

                                    Gibt es dieses Script auch als Blockly und ohne den internen Zeitplan? Ich habe es bei mir über den Google Calendar gelöst. Was muss ich genau machen, um den Kantenschnitt zu aktivieren? Wie ist die Folge?

                                    arteckA 1 Reply Last reply
                                    0
                                    • L LJSven

                                      Gibt es dieses Script auch als Blockly und ohne den internen Zeitplan? Ich habe es bei mir über den Google Calendar gelöst. Was muss ich genau machen, um den Kantenschnitt zu aktivieren? Wie ist die Folge?

                                      arteckA Offline
                                      arteckA Offline
                                      arteck
                                      Developer Most Active
                                      wrote on last edited by
                                      #102

                                      @LJSven es gibt keine Reihenfolge.. du musst halt nur die Zeitplandaten eintragen ..

                                      zigbee hab ich, zwave auch, nuc's genauso und HA auch

                                      1 Reply Last reply
                                      0
                                      • cvidalC Offline
                                        cvidalC Offline
                                        cvidal
                                        Forum Testing
                                        wrote on last edited by
                                        #103

                                        Seit heute habe ich neue Errors, hat das noch jemand?

                                        worx.0	2020-05-30 08:50:01.144	error	(16835) ERROR: StatusCodeError: 403 - "<html>\r\n<head><title>403 Forbidden</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>403 Forbidden</h1></center>\r\n</body>\r\n</html>\r\n"
                                        worx.0	2020-05-30 08:50:01.143	error	(16835) Could not Connect to Worx Server: StatusCodeError: 403 - "<html>\r\n<head><title>403 Forbidden</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>403 Forbidden</h1></center>\r\n</body>\
                                        worx.0	2020-05-30 08:50:00.948	info	(16835) starting. Version 1.0.2 in /opt/iobroker/node_modules/iobroker.worx, node: v10.20.1, js-controller: 3.1.4
                                        
                                        S hsteinmeH 2 Replies Last reply
                                        0
                                        • cvidalC cvidal

                                          Seit heute habe ich neue Errors, hat das noch jemand?

                                          worx.0	2020-05-30 08:50:01.144	error	(16835) ERROR: StatusCodeError: 403 - "<html>\r\n<head><title>403 Forbidden</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>403 Forbidden</h1></center>\r\n</body>\r\n</html>\r\n"
                                          worx.0	2020-05-30 08:50:01.143	error	(16835) Could not Connect to Worx Server: StatusCodeError: 403 - "<html>\r\n<head><title>403 Forbidden</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>403 Forbidden</h1></center>\r\n</body>\
                                          worx.0	2020-05-30 08:50:00.948	info	(16835) starting. Version 1.0.2 in /opt/iobroker/node_modules/iobroker.worx, node: v10.20.1, js-controller: 3.1.4
                                          
                                          S Offline
                                          S Offline
                                          skokarl
                                          wrote on last edited by
                                          #104

                                          @cvidal

                                          da steht doch forbidden. Geht die App noch, oder hast Du das Kennwort geändert ?

                                          IOBroker mit Proxmox auf Celeron Nuc mit 16 GB und Debian11, Sonos API, Echo Show 15 als Wandtablet, Homematic IP, HUE, Sonos, Echos, DS718+ als Backup

                                          cvidalC 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          587

                                          Online

                                          32.7k

                                          Users

                                          82.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe