NEWS
Ical - keine Erkennung vom Kalender [gelöst]
-
Nichts löschen.
Lass es so wie es ist einfach bis morgen laufen.
-
ok dann lasse ich es so laufen. Besten Dank erst mal
Habt ihr ein Tip was ich morgen als ersten versuchen könnte?
Wie gesagt unter ical1 - data - html - sind noch immer keine Daten vorhanden -
Ich zitiere mich mal selbst.
@wendy2702 sagte in Ical funktioniert nicht - keine Erkennung vom Kalender:
Vielleicht habe ich es wieder übersehen aber in den logs sehe ich nirgendwo etwas vom ical. Immer nur Javascript.
Stoppe doch mal das Javascript, stelle die ICAL Instanz auf Debug, starte die eine Instanz und poste dann das logfile.
-
Und nochmal
@wendy2702 sagte in Ical funktioniert nicht - keine Erkennung vom Kalender:
Dann stellt sich mir die Frage ob du das Script oben einfach nur 1 zu 1 kopiert hast oder auch die Entsprechenden Einstellungen vorgenommen hast.
Laut deinen Script logs sucht er diese States:
getState "ical.0.events.9.GelberSack" not found (3) ical.0.events.9.Altpapier ical.0.events.9.Hausmüll
Die Events im Adapter müssen genauso geschrieben sein.
Zeig mal ein Screenshot der Objekte von der ICAL Instanz.
-
Jetzt hab ich es auch gesehen im Log, frag mich nur wo der das her nimmt, denn ich habe das Skript im oberen Bereich entsprechend angepasst zu events.0
// Skript basiered auf JoJ123's Müllskript und Pix' Regenskript // v 0.2, tempestas 21.12.2018 // Voraussetzung: ical 1.7 // Anleitung: /* 1) im ical Adapter die Ereignisse definieren, die gesucht werden sollen (z.B. Restabfall) 2) const PFAD auf euren ical Adapter anpassen (0, oder 1, zwei...) 3) im Bereich EINTRAEGE vor den Doppelpunkten die Ereignisse analog des ical Ereginis eintragen. ACHTUNG: ES DÜRFEN HIER KEINE FREIZEICHEN GENUTZT WERDEN; ICAL MACHT AUS "Gelber Sack" ALS EREIGNIS DATENPUNKT "GelberSack" daher muss hier dann "GelberSack" eingetragen werden hinter den Doppelpunkten wird der Pfad angegeben, in dem die Datenpunkte für die Tage bis zum jeweiligen Müll gespeichert werden. Davor wird dann noch die Javascript Instanz gesetzt, in der ihr das Skript startet. Gesamtpfad dann also z.B. "javascript.0.muell.restmuell" Hinweis: das Skript kann für alle Arten von Events genutzt werden, daher hier auf dne Begriff "Muell" verzichtet. */ debug = true; const PFAD = "ical.0.events."; const EINTRAEGE = { "Hausmüll": "javascript.0.muell.restmuell", "Altpapier": "javascript.0.muell.papier", //"Bioabfall": 'javascript.0.muell.bioabfall', "GelberSack": "javascript.0.muell.gelbersack" }; //States anlegen Object.keys(EINTRAEGE).forEach(key => { createState(EINTRAEGE[key], -1); if (debug) log("State "+EINTRAEGE[key] +" angelegt"); }); createState("muell.next"); // state, in den der kleinste Wert geschrieben wird, falls man z.B. auf einer Hauptübersicht immer nur den Wert bis zum nächsten Event (egal welches) sehen möchte) var idNext = "muell.next"; function check() { var i; var min = 30; // maximale Vorschau der Tage im ical ist 90, von dort aus suchen wir den kleinsten Wert Object.keys(EINTRAEGE).forEach(eintrag => { // erst prüfen, ob event heute vorliegt if ( getState(PFAD + 0 +".today." + eintrag).val === true) { // Pfad weicht von den anderen Tagen ab! setState(EINTRAEGE[eintrag], 0); min = 0; if(debug) log(eintrag + " wird heute abgeholt"); } // falls nicht, weiter schauen, wann es kommt else { for (i=1 ; i<30;i++) { // heute (0) wird separat geprüft, da dort ein andere Pfad zum Tragen kommt; max 90 Tage Vorschau if ( getState(PFAD + i +"." + eintrag).val === true) { setState(EINTRAEGE[eintrag], i); if (i < min) min = i; //if(debug) log(eintrag + " in "+i +" Tagen"); break; // beim ersten gefundenen Eitnrag wird unterbrochen, da ja der nächste Termin gesucht wird } } } }); // kleinsten Wert in next - State schreiben if(debug) log("Der nächste Müll ist in "+min +" Tagen"); setState(idNext, min); } // Bei Start setTimeout(check, 5000); // 5 Sekunde warten, um beim erstmaligen Start Fehler zu vermeiden, die aus nicht existierenden States resultieren schedule('10 0 * * *', () => check() );
-
@Idefix01 sagte in Ical funktioniert nicht - keine Erkennung vom Kalender:
"GelberSack": "javascript.0.muell.gelbersack"
-
aus dem Kalender soll er lesen: Hausmüll, Altpapier, GelberSack und macht dann im Skript daraus
die Bezeichnungen entsprechend und zählt wieviel Tage bis dahin noch, das steht dann unter:
javascript.0 - muell und dann je nachdem restmuell, altpapier oder gelbersack -
Das z.B. im Script:
@Idefix01 sagte in Ical funktioniert nicht - keine Erkennung vom Kalender:
GelberSack": "javascript.0.muell.gelbersack
laut log wird aber der DP gesucht den ICAL anlegt bzw. anlegen sollte:
getState "ical.0.events.9.GelberSack" not found (3) ical.0.events.9.Altpapier ical.0.events.9.Hausmüll
Aber:Bevor hier ical nicht läuft, laut deiner Aussage, ist es überflüssig weiter über das Script zu reden.
-
@wendy2702
ja klar, nur woher kommt events.9ich werde das Script erst einmal stoppen und morgen erst mal suchen warum ical nicht läuft
-
Jetzt mal STOP!
Erst wenn Daten im ical kommen braucht man mit dem Script weiter zu machen.Dann müssen zuerst auch Events im ical angelegt werden.
Warum dann das Skript überhaupt noch und nicht der trashschedule-Adapter ist eine ganz andere Frage.
Kann der ical denn eigentlich mit caldav umgehen?
das ging zumindest früher nicht -
Wieviel Tage vorschau hast du in der ical Instanz eingestellt und welche Version hast du jetzt eigentlich installiert?
Desweiteren ist es wichtig das du die Bezeichnungen der Events genauso schreibst wie im Script. Sonst kann das Script später nichts finden...
Hatte ich aber auch schon geschrieben.
-
@Homoran sagte in Ical funktioniert nicht - keine Erkennung vom Kalender:
Jetzt mal STOP!
Erst wenn Daten im ical kommen braucht man mit dem Script weiter zu machen.Das schreibe ich auch schon die ganze Zeit !
-
@Homoran sagte in Ical funktioniert nicht - keine Erkennung vom Kalender:
Kann der ical denn eigentlich mit caldav umgehen?
das ging zumindest früher nichtKann er! Schon laaaaaannnnngeeeee
-
@Glasfaser ich weiß
hat mich auch einiges an Energie gekostet mich jetzt erst einzumischen -
@Homoran sagte in Ical funktioniert nicht - keine Erkennung vom Kalender:
Kann der ical denn eigentlich mit caldav umgehen?
das ging zumindest früher nichtFunktioniert ...habe ich getestet ... siehe weiter oben !
-
@wendy2702 sagte in Ical funktioniert nicht - keine Erkennung vom Kalender:
@Homoran sagte in Ical funktioniert nicht - keine Erkennung vom Kalender:
Kann der ical denn eigentlich mit caldav umgehen?
das ging zumindest früher nichtKann er! Schon laaaaaannnnngeeeee
gut!
dann ist das also schon mal nicht das Problem -
-
@wendy2702
ja so machen wir es auch jetzt -
haben wir eigentlich irgend ein Log vom ical???
am besten im debug-Modus?ich sehe nirgendwo die Info "Kalender gelesen....."
-
host.buanet-iobroker1 2020-04-06 20:14:28.378 info instance system.adapter.ical.1 terminated with code 0 (NO_ERROR) ical.1 2020-04-06 20:14:27.859 info (4785) Terminated (NO_ERROR): Without reason ical.1 2020-04-06 20:14:22.330 info (4785) processing URL: calendar1 https://192.168.178.69:5001/caldav/Idefix01/home/ ical.1 2020-04-06 20:14:21.803 info (4785) starting. Version 1.7.0 in /opt/iobroker/node_modules/iobroker.ical, node: v10.19.0 host.buanet-iobroker1 2020-04-06 20:14:19.074 info instance system.adapter.ical.1 started with pid 4785 host.buanet-iobroker1 2020-04-06 20:14:19.062 info instance scheduled system.adapter.ical.1 04***