Gateway_man Geschrieben 15. November 2011 Geschrieben 15. November 2011 Hi leute, es geht um folgendes. Ich habe vor einiger Zeit ein E-Mail Client Modul geschrieben. Jetzt ist meinem Chef aufgefallen das eben dieses Modul keine Outlook ics Anhänge anzeigt. Da er der Meinung ist, das es unablässlich ist und wir ja alles können müssen, wurde mir die undankbare Aufgabe auferlegt das ganze zu fixen. Soweit so gut den Inhalt habe ich bereits. Es scheint als wäre das, das ICalendar Format, welches in der RFC 2048 definiert ist. Es geht eigentlich nur um den Ort, die Zeit, den Titel, die Dauer und die Beschreibung des Meetings. Allerdings sind für mich keine erkennbaren delimiter in der mir vorliegenden ics struktur erkennbar. Daher weiß ich nicht so recht wie ich das jetzt am besten angehen soll damit das nicht nur bei dieser ics klappt. In der RFC soweit ich das jetzt gesehen habe, sind mir bisher auch keine entsprechenden delimiter aufgefallen. Hier wäre mal eins zensierte beispiel ics (Stuktur ist orginal): BEGIN:VCALENDAR METHOD:REQUEST PRODID:Microsoft CDO for Microsoft Exchange VERSION:2.0 BEGIN:VTIMEZONE TZID:(GMT+01.00) Sarajevo/Warsaw/Zagreb X-MICROSOFT-CDO-TZID:2 BEGIN:STANDARD DTSTART:16010101T030000 TZOFFSETFROM:+0200 TZOFFSETTO:+0100 RRULE:FREQ=YEARLY;WKST=MO;INTERVAL=1;BYMONTH=10;BYDAY=-1SU END:STANDARD BEGIN:DAYLIGHT DTSTART:16010101T020000 TZOFFSETFROM:+0100 TZOFFSETTO:+0200 RRULE:FREQ=YEARLY;WKST=MO;INTERVAL=1;BYMONTH=3;BYDAY=-1SU END:DAYLIGHT END:VTIMEZONE BEGIN:VEVENT DTSTAMP:20111107T090613Z DTSTART;TZID="(GMT+01.00) Sarajevo/Warsaw/Zagreb":20111118T130000 SUMMARY:Vorstellung Software1 UID:040000008200E00074C5B7101A82E00800000000C020FA4D349DCC01000000000000000 010000000B7B13F3D668DFD43B839F5017E2C7100 ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;X-REPLYTIME=20111026T13 2900Z;RSVP=TRUE;CN="Max":MAILTO:max@musterman.com ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;X-REPLYTIME=20111103T14 1000Z;RSVP=TRUE;CN="Max1":MAILTO:max1@musterman.com ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;X-REPLYTIME=20111026T16 0000Z;RSVP=TRUE;CN="Max Musterman3":MAILTO:max_musterman3@musterman.co m ATTENDEE;CUTYPE=RESOURCE;ROLE=NON-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TR UE;CN="Multimediaraum":MAILTO:multi@multi.com ORGANIZER;CN="Maxime Musterman":MAILTO:maxime.musterman@musterman.com LOCATION:Multimediaraum DTEND;TZID="(GMT+01.00) Sarajevo/Warsaw/Zagreb":20111118T160000 DESCRIPTION:Sehr geehrte Kolleginnen und Kollegen\,\N\NFreitagnachmittag wi rd uns Hr. Sanchez seine Software (Scheinfirma) vorstellen. \N\NVg\Max Musterman\N SEQUENCE:0 PRIORITY:5 CLASS: CREATED:20111107T090614Z LAST-MODIFIED:20111107T090614Z STATUS:CONFIRMED TRANSP:OPAQUE X-MICROSOFT-CDO-BUSYSTATUS:BUSY X-MICROSOFT-CDO-INSTTYPE:0 X-MICROSOFT-CDO-INTENDEDSTATUS:BUSY X-MICROSOFT-CDO-ALLDAYEVENT:FALSE X-MICROSOFT-CDO-IMPORTANCE:1 X-MICROSOFT-CDO-OWNERAPPTID:-2016954405 X-MICROSOFT-CDO-APPT-SEQUENCE:0 X-MICROSOFT-CDO-ATTENDEE-CRITICAL-CHANGE:20111107T090613Z X-MICROSOFT-CDO-OWNER-CRITICAL-CHANGE:20111107T090613Z BEGIN:VALARM ACTION:DISPLAY DESCRIPTION:REMINDER TRIGGER;RELATED=START:-PT00H15M00S END:VALARM END:VEVENT END:VCALENDAR lg Gateway PS: Mir fällt grad auf hier geht die Formatierung flöten . Aber mir ist gerade eh eine Möglichkeit eingefallen das ganze zu parsen. Aber es stellt sich mir die Frage wie ich beispielsweise das hier angegebene Datum in ein Datetime formatiere . Zitieren
flashpixx Geschrieben 15. November 2011 Geschrieben 15. November 2011 Und was ist jetzt genau der Fehler? Zitieren
Gateway_man Geschrieben 16. November 2011 Autor Geschrieben 16. November 2011 An sich keinen. Ich hatte nur gehoft, das sich eventuell schonmal jemand mit dem Standart auseinander gesetzt hat und mir beispielsweise sagen kann wie der Datumwert zusammengesetzt ist. Dann müsste ich mich nicht durch die ellenlange rfc quälen :floet:. Nun gut, da ich aktuell eh einen Ansatz habe, werd ich den Parser nach fertigstellung mal hier reinstellen, eventuell sucht jemand ja mal wieder was für dieses Format..... Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.