staging.inyokaproject.org

Suche ein Programm um .ics Datei auf caldav Server zu importieren

Status: Gelöst | Ubuntu-Version: Xubuntu 22.04 (Jammy Jellyfish)
Antworten |

sh4711

Anmeldungsdatum:
13. Februar 2011

Beiträge: 655

Hallo,

ich suche ein Programm, mit dem man Kalenderdaten aus einer .ics Datei auf einen calDav-Server (axigen) übertragen kann.

Getestet habe ich:

Thunderbird

Hier bekomme ich keine Verbindung zum Server ... das heißt der Versuch läuft noch

Evolution

Das einbinden der ics-Datei und des Servers verlief erfolgreich.
Das Kopieren des Kalenders (.ics-Datei) auf einen anderen localen-Kalender verlief erfolgreich.
Beim Kopieren des Kalenders (.ics-Datei) auf den Server erhalte ich nach ca. 26% den Fehler:
Kopieren eines Termins in den Kalender "MyKalender" ist fehlgeschlagen
Kalenderobjekt kann nicht angelegt werden: Connection terminated unexpectedly

Bis dahin hat Evolution immerhin ca. 300 Termine importiert.

Kennt jemand noch andere Programme ggf. für die Konsole, bei denen man sehen kann an welchem Termin es hakt ... dann könnte man den von Hand entfernen und weiter machen.
Im Netz bin ich nicht richtig fündig geworden ... vielleicht fehlen mir auch einfach die richtigen Schlüsselwörter. 🙄

Danke schon mal.

Gruß SH

shiro

Anmeldungsdatum:
20. Juli 2020

Beiträge: 611

Evolution Kopieren eines Termins in den Kalender "MyKalender" ist fehlgeschlagen

Das riecht verdächtig danach, dass axigen nur eine bestimmte Version der ics Daten unterstützt und du in dem ics Entry (BEGIN:VEVENT ... END:VEVENT oder verwendest di VTODO?) Daten stehen hast, mit denen axigen nichts anfangen kann. Da Evolution beim Speichern der ics Daten im lokalen Kalender offenbar keine Fehler wirft, ist dies stark zu vermuten.

  • Welche Fehlermeldungen liefert denn der Server?

  • Gemäß welcher ics Version sind deine Daten in der ics Datei abgelegt (grep VERSION file.ics)

  • Kannst du den Fehler verursachenden Eintrag dir mal näher anschauen?

Wenn du keine Fehlermeldungen vom axigen bekommst, lohnt es sich, zu schauen, welche der 300 erfolgreichen Termine importiert wurden und wo diese in der ics Datei stehen. Der ics Eintrag, der dem letzten erfolgreich importierten Eintrag folgt, könnte das Problem verursachen. Diesen einzelnen Eintrag per Editor als Textdatei sichern und auf Legalität hinsichtlich der unterstützten Version des axigen Servers prüfen (siehe RFCs).

sh4711

(Themenstarter)

Anmeldungsdatum:
13. Februar 2011

Beiträge: 655

Danke für die Rückmeldung.
shiro schrieb:

... Das riecht verdächtig danach, dass axigen nur eine bestimmte Version der ics Daten unterstützt

Das habe ich auch vermutet ... deshalb habe ich die ics Datei mittels Evolution in einen lokalen Kalender kopiert und danach nochmal in einen anderen Lokalen Kallender kopiert, in der hoffnung, das Evolution dann die Daten kommplet neu und in einem aktuellen Format schreibt. Aber auch mit diesem zwichenschritt habe ich den gleichen Effekt. Die Vermutung die du hast das es an einem einzigen Eintrag liegen könnte liegt nahe. Wobei dieser Eintrag von Evolution verarbeitet wird ... zumindest in lokalen Kalendern. Sieht, wie du schreibst, nach einem Problem bei axigen aus.

und du in dem ics Entry (BEGIN:VEVENT ... END:VEVENT

Ja BEGIN:VEVENT wird verwendet.

  • Welche Fehlermeldungen liefert denn der Server?

Muss ich prüfen.

  • Gemäß welcher ics Version sind deine Daten in der ics Datei abgelegt (grep VERSION file.ics)

VERSION:2.0

  • Kannst du den Fehler verursachenden Eintrag dir mal näher anschauen?

Werde ich versuchen zu finden ...

sh4711

(Themenstarter)

Anmeldungsdatum:
13. Februar 2011

Beiträge: 655

sh4711 schrieb:

... Kennt jemand noch andere Programme ggf. für die Konsole, ...

vdirsyncer kann aus den Quellen installiert werden bzw. zu finden bei github vdirsyncer

Die Fehlermeldung auf dem Server lautet:

2023-05-06 16:47:13 +0000 08 srvx WEBMAIL:0000098D: WEBDAV CALDAV account 'x@x.de' has logged in, user agent is vdirsyncer/0.18.0
2023-05-06 16:47:13 +0000 08 srvx JOBLOG:90000000: Started conversation index job for user x@x.de
2023-05-06 16:47:13 +0000 02 srvx CALLOG:00007640: CALENDAR: Lexer leaked unrecognized character 92 (0x5c '\'), state: 7, line: 14
2023-05-06 16:47:13 +0000 02 srvx CALLOG:00007640: CALENDAR: Parsing error: syntax error, unexpected LEAK, expecting CRLF_OR_LF or ','
2023-05-06 16:47:13 +0000 02 srvx WEBMAIL:0000098D: CALDAV: Failed to parse VCALENDAR object
2023-05-06 16:47:13 +0000 08 srvx WEBMAIL:0000098D: <> PUT /Calendar/Calendar/DESKNOW-PPT9P7K6CAYTATMJPLCARAXY3R6APEET-MTHX7W4U-8c3ee8.ics HTTP/1.1 u=x@x.de code=403 time=1

Der Fehlerhafte Datensatz bzw. der Datensatz, der den Fehler verursacht hat lautet:

BEGIN:VEVENT
DTEND;TZID=/desknow.com/Olson_20080903_1/Europe/Berlin:20220519T020000
CLASS:PUBLIC
SUMMARY:xxxxx Dokumentationsunterlagen bis 30.05.2022
X-VENTIA-FREEDOM-LABEL:None
DTSTART;TZID=/desknow.com/Olson_20080903_1/Europe/Berlin:20220519T010000
TRANSP:OPAQUE
PRIORITY:5
DTSTAMP:20230430T132654Z
ORGANIZER;PARTSTAT=ACCEPTED;RSVP=TRUE:MAILTO:x.x@x.de
SEQUENCE:2
RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=MO\,TU\,TH\,FR;UNTIL=20220530T215959Z
UID:DESKNOW-PPT9P7K6CAYTATMJPLCARAXY3R6APEET-MTHX7W4U-8c3ee8
END:VEVENT

Den markierten Bereich habe ich wie folgt abgeändert und es hat dann funktioniert.

RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=MO;UNTIL=20220530T215959Z

Die Frage wäre nun ist "Mo\" gemäß Standard erlaubt oder nicht. Hat der alte Server beim Export in die ".ics"-Datei einen Fehler begangen oder ist das ein Fehler im Axigen ... ich vermute ein Fehler im Axigenserver, da Evolution mit den Daten umgehen kann.

Für mich ist das erst einmal gelöst. vdirsyncer ist für mich erst einmal erste wahl beim import von calDAV Daten, die Rückmeldeinformationen sind sehr gut und es wird auch trotz Fehler weiter importiert.

@shiro
Danke nochmal für deinen Beistand.

shiro

Anmeldungsdatum:
20. Juli 2020

Beiträge: 611

sh4711 schrieb:

... CALLOG:00007640: CALENDAR: Lexer leaked unrecognized character 92 (0x5c '\'), state: 7, line: 14

Die Frage wäre nun ist "Mo\" gemäß Standard erlaubt oder nicht.

Hallo sh4711,

die Fehlermeldungen auf dem Server sagen dir ja den Fehler.

Der Aufbau der ics Datei ist gemäß "RFC 5545" beschrieben. Dabei benutzt RFC5545 teilweise den Syntax RFC2425. In RFC5545 ist der "RRULE" Token beschrieben in ▶ 3.8.5.3. Recurrence Rule ◀ . Somit wäre

---statt:
RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=MO\,TU\,TH\,FR;UNTIL=20220530T215959Z

---korrekter:
RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=MO,TU,TH,FR;UNTIL=20220530T215959Z

zu verwenden. Ein "Escapen" über Backslash (\) ist dort nicht definiert. Somit ist die .ics Datei nicht normgerecht. Da aixgen bei Auftauchen des Fehlers beleidigt (wenig Fehlertolerant) den kompletten Import abbricht, ist ein wenig schade.

sh4711

(Themenstarter)

Anmeldungsdatum:
13. Februar 2011

Beiträge: 655

shiro schrieb:

... zu verwenden. Ein "Escapen" über Backslash (\) ist dort nicht definiert. Somit ist die .ics Datei nicht normgerecht. ...

Richtig!
Da der alte Server (Desknow) aber vor der Verabschiedung von "RFC 5545" entwickelt wurde, stellt sich die Frage wie es bei "RFC2425" vorgesehen war ... und auch hier gibt es bei den Wochentagen in der RRule keine Trennung mittels "\" (siehe RFC2445 Seite 124). Somit war meine Vermutung "ich vermute ein Fehler im Axigenserver" falsch.

Also müssen im obigen Beispiel die "\" einfach gelöscht werden.

Danke!

Gruß
sh

Antworten |