[Modul] iCal Calender in IP Symcon lesen und verarbeiten

Hallo Burkhard,

alle iCal Calendar Reader-Instanzen gebe beim IP-Symcon-Neustart folgenden Fehler aus:

20.11.2020, 19:35:21 | KernelMT             | InstanzManager: Fehler bei Instanz #21983, Meldung IPS_KERNELMESSAGE: Array
(
)

Wird nichts „schlimmes“ sein, ist mehr als Hinweis zu verstehen. Ich vermute das bei Deinen Messages vielleicht irgendwo ein „Echo“ drin ist?

Joachim

Hallo Joachim,

da ist mir leider eine Testanweisung print_r reingerutscht. Sie kommt aber nur beim ApplyChanges zum Tragen. Die muss natürlich wieder raus :slight_smile:

Burkhard

Hallo Burkhard,

sag ’ mal, hast du hierfür inzwischen eine Lösung oder Idee, wie ich den Kalender ans laufen bekomme.
Das ist eines meiner Probleme, welches ich bis heute noch nicht gelöst bekommen habe.
Ich habe das Modul mal komplett gelöscht und wieder neu installiert, aber immer noch der selbe Fehler.

Kann das mit der Größe des Kalender zusammen hängen, hier werden wohl knapp 1,2MB geladen.
Wenn ich das Debug so sehe wird auch alles aus 2019 noch geladen, ist das richtig?

Danke u. Grüße,
Doc

Kannst du mal die aktuelle Beta des Moduls ausprobieren?

Das scheint jetzt soweit durchzulaufen, allerdings mit den Meldungen wie unten.
Einmal beim Speichern von Änderungen und einmal beim Abrufen des Kalenders.

Kann es sein, dass das System (Raspi) jetzt sehr langsam in der Zeit der Auswertung wird?
Bis alle Einträge durch sind scheint es ca. 1-2 Minuten zu dauern.
Auch gibt es Meldung wie „… to far in the future …ignore“ bei Kalendereinträgen aus 2019.

Grundsätzlich freue ich mich aber erst mal, das es jetzt überhaupt mal funktioniert.

Grüße,
Doc

Die erste Meldung war noch ein Fehler. Das habe ich nun korrigiert.

Die zweite Meldung gibt dir einen Überblick über die gelesenen Einträge. Aber seltsam, dass die Überschrift „The following dates are read:“ bei dir nicht übersetzt ist. Hast du eine besondere Spracheneinstellung aktiv?

Das hängt von deiner Speicherausstattung ab. Der Kalenderverarbeitung ist schon sehr speicherdurstig.

Die Meldung sollte eigentlich nur bei Einträgen kommen, deren Startdatum zu weit in der Zukunft liegt und nicht bei Einträgen aus der Vergangenheit.

Da könntest du mir vielleicht Debugausgaben von zukommen lassen.

Burkhard

Hi,

eine besondere Spracheinstellung habe ich eigentlich nicht.
Ist ein Raspi mit 4GB Speicher.

Ich denke die Verzögerungen kommen vom Debug Fenster. Ich habe das Limit von 100 Einträgen aufgehoben, um genau zu sehen was passiert. Ich glaube wenn ich das Fenster schliesse, läuft es flüssiger. Ich werde mal testen.

Die Meldung „too far in the future“ kommt jetzt nicht mehr, auch sehe ich keine Einträge aus 2019 mehr?
Habe ich mir vielleicht auch nur eingebildet … :confused:

Die Änderungen, die du gemacht hast, sind aber noch nicht öffentlich, oder?

edit: gerade gesehen, jetzt ist ein Update verfügbar …

Hallo!

ich habe folgendes Problem, hab ICal installiert und alle einstellungen gurchgeführt, bei Kalenderabfrage wird immer gesagt dass es keine einträge gibt aber ich hab extra 3 einträge eingegeben und im logfile gibt folgenden eintrag

23.11.2020, 00:16:06 |              LOG_ERR | parse: URL validity error #2, 'message:%3CCAOW2H6W+8biAUiXupGJ375gyDd0mOx1tbfN+-tduh5Vh39=wbA@mail.gmail.com%3E'

was hab ich da für einen fehler ? und wie kann ich diesen beheben.

danke für die hilfe

lg
christian

Glaube so ein Problem hatte ich auch. In einem deiner Termine ist vermutlich bei Notiz oder wie auch immer das Feld genau heißt diese URL hinterlegt. Bei mir war das ein Kalendereintrag den ich aus einer Email heraus erzeugt hatte.

Hallo,

super Modul danke dafür. Hab es mit dem Müllkalender versucht. Daten werden ausgelesen.
Wie bekomme ich den jetzt folgendes hin:

Müllkalender:
Morgen Papiertonne
30.11 Restmüll
05.12 Papiertonne

Also quasi eine Übersicht der nächsten Leerungen. Sorry bin kein Programmierer

Musst du selbst programmieren. Leider gehen solche doch recht simplen Sache nicht ohne weitreichendere php Kenntnisse. Ich hätte auch gerne einfach nur die nächsten 5 Termine als kleine Tabelle, bekomm ich aber nicht hin.

Die Mülltermine kannst du dir mit boardmitteln ja nur mit der definierten Vorlaufzeit Anzeichen lassen.

Hi,
in https://www.symcon.de/forum/threads/35728-Modul-iCal-Calender-in-IP-Symcon-lesen-und-verarbeiten?p=436203#post436203 habe ich mal meine Scripte für einen Geburtstagskalender und einen Terminkalender geposted. Beide Routinen erzeugen und speichern einen Text der in etwa so aussieht und die Daten kommen von meiner NextCloud.

Geburtstag: Heute wird Alpha 30 Jahre alt, Morgen wird Beta 40 Jahre alt, Übermorgen wird Gamma 50 Jahre alt.
Termine: Heute Restabfallbehälter, Morgen um 16Uhr wöchentliches Bad, Übermorgen um 13:00 Essen mit Alpha.

Diese Texte lasse ich mir immer von Alexa vorlesen wenn ich eine Harmony-Aktion beende.

Ralf

Hallo!

Ich lese mit dem Modul den Müllabfuhr-Kalender von meiner Synology aus. Nachdem ich da jetzt längere Zeit keine aktuellen Kalender-Einträge drin hatte, hab ich heute aktuelle Einträge in den Kalender geladen und bin jetzt leicht irritiert, dass diese vom Modul nicht mehr richtig gelesen werden.

Kalendereintrag auf der Syno:

Meldung beim Import:

Da scheint es einen „Verschieber“ zu geben, im [Name] steht der [Status]. Getestet habe ich das bislang mit der Stable und der Beta, das Ergebniss ist identisch. Woran mag das liegen?

Kannst du mal überprüfen, wie dein Kalendereintrag im Debug ausssieht? Du findest ihn in der Ausgabe von „curl_result“.

Ein Beispiel von mir:

BEGIN:VEVENT<CR><LF>DTSTART:20200915T060000Z<CR><LF>DTSTAMP:20201126T110838Z<CR><LF>UID:96711<CR><LF>CREATED:20200105T175759Z<CR><LF>DESCRIPTION:<CR><LF>LAST-MODIFIED:20200105T170147Z<CR><LF>LOCATION:<CR><LF>SEQUENCE:0<CR><LF>STATUS:CONFIRMED<CR><LF>SUMMARY:Dörener Weg - Papiertonne<CR><LF>TRANSP:OPAQUE<CR><LF>END:VEVENT

Der Name wird aus SUMMARY geholt.

Oder du schickst mir die Debugausgabe einmal per Mail zu.

Burkhard

Danke, hab mir das mal angeschaut. Sieht schonmal gut aus.
Ist es auch möglich es so umzuschreiben:

Morgen Papiertonne
01.12 Restmüll
03.12 Papiertonne

?

Hi,
klar müsstes nur

$text .= "Heute ".PHP_EOL;
in
$text .= date(„d“,time()).’.'date(„m“,time()).PHP_EOL;

und

$text .= "Morgen ".PHP_EOL;
in
$text .= date(„d“,time()+86400).’.'date(„m“,time()+86400).PHP_EOL;

usw. austauschen.

Bei mehr Tagen im Voraus muss die Schleife halt öfter benutzt werden und neue Zeiten definiert werden. Ich habe es so programmiert weil ich in einer Schleife mehrtägige Ereignisse nicht vernünftig zuordnen konnte.

Ralf

Wenn du mir sagst wie? :slight_smile: Wie erwähnt bin ich kein Programmierer…

Hi,
Du nimmst das Script aus dem Link, legst eine Stringvariable an. Die ID dieser Stringvariable und die ID deiner iCal-Instanz trägst Du im Script an den erwähnten Stellen ein.

Die Zeile "$text .= "Heute „.PHP_EOL;“ im Script tauscht Du aus mit „$text .= date(„d“,time()).’.'date(„m“,time()).PHP_EOL;“ und dann steht nach Ausführung des Scriptes z.B. 1.12. statt Heute in der Textvariablen.

Ralf

Hi…ich benötige eine kurze Einführung in die Installationsschritte dieses Kalenders :o

  1. Aktivierung des Calenders auf meiner Synology
  2. Kopieren des Thunderbird CalDav in den Zwischenspeicher
  3. Installation des Moduls über den ModulStore
  4. Aufrufen den Moduls über den Objektbaum
    4a) Einsetzten des Kalenders (aus der Zwischenablage) + User und Passwort - >Speichern -> Instanz ist aktiv
  5. Kalender einlesen - > Werden im Fenster angezeigt aber nirgends übernommen
    Und wir bekomme ich nun die Anzeige des Kalenders ins IP Syncom.

Sorry für meine Anfängerfrage

Hallo, kurze Frage.

Bei mir ist ja bei „Heute“ und dem Termin ein Zeilenumbruch. Ich kenne Zeilenumbrüche in PHP als "
" oder <br>. Ich habe das komplette script vor längerem genau danach durchforstet, aber nichts gefunden. Hatte es damals dann gelassen und akzeptiert.
Hat jemand ne Idee wie ich den weg bekomme ?