NEWS
Anfänger braucht hilfe bei einem Skript (tägliche Wiederholung)
-
Hallo,
habe mir aus einem anderen hier veröffentlichten Skript ein eigenes zusammengeschustert. Es funktioniert soweit wie ich es möchte, nur wird das Skript anscheinend nicht täglich durchlaufen, da der Wert in den Objekten nicht aktualisiert wird. Bitte hier um Hilfe.
`var kalenderinhalt = getState('ical.2.data.table').val; // Kalender.data.table Datenpunkt Value var logging = true; // Logging. (Auf false setzen um Logausgaben zu deaktivieren.) var morgenfs = null; createState('muell.Restmüll', 0, { }); function icalmuell(obj){ var datestring="_class"; var eventstring="event"; morgenfs = false; for(var i = 0; i < obj.length; i++) { if (obj[i][datestring].indexOf('ical_Müllplan ical_tomorrow') === 0 && obj[i][eventstring].indexOf('Restmüll') === 0) { if(logging) log('Für Morgen (' + obj[i][datestring] + ') steht ein passendes Event (' + obj[i][eventstring] + ') im Kalender!'); morgenfs = true; } else { if(logging) log('Event im Kalender (' + obj[i][datestring] + ' ' + obj[i][eventstring] + ') passt nicht - wird ignoriert!'); } } if (morgenfs) { if(logging) log('Morgen steht Restmüll im Kalender.. State wird gesetzt.'); setState("javascript.0.muell.Restmüll",true); } else { if(logging) log('Morgen keine Restmüll! State wird gelöscht.'); setState("javascript.0.muell.Restmüll",false); } } schedule("15 0 * * *", function () { icalmuell(kalenderinhalt); }); icalmuell(kalenderinhalt);` Soweit ich es verstanden habe wird ja mit schedule die Wiederholung gestartet und da wird wohl der Fehler sein. Die Abfrage soll täglich um 00:15 Uhr durchlaufen werden. `~~[code]~~schedule("15 0 * * *", function () { icalmuell(kalenderinhalt); }); icalmuell(kalenderinhalt);[/code]`[/i][/i][/i][/i][/i][/i]
-
Die Variable kalenderinhalt wird nur einmal bei Skriptstart initialisiert und behält dann ihren Inhalt, wird also nie aktualisiert.
-
Die Variable kalenderinhalt wird nur einmal bei Skriptstart initialisiert und behält dann ihren Inhalt, wird also nie aktualisiert. ` Und wie muß ich das ändern? Kenne mich da noch nicht so gut aus
Gesendet von Unterwegs mit Tapatalk
-
Zusätzlich bei Änderung des Inhalts triggern.
on('ical.2.data.table', function(dp) { kalenderinhalt = dp.state.val; });
-
Zusätzlich bei Änderung des Inhaltes triggern.
on('ical.2.data.table', function(dp) { kalenderinhalt = dp.state.val; }); ```` `
Danke, muß ich das ganz oben eintragen?
-
muß ich das ganz oben eintragen? `
Ist unwesentlich, aber besser ganz unten. -
muß ich das ganz oben eintragen?
Ist unwesentlich, aber besser ganz unten.
ok, danke