0

ICS-Datei per Mail versenden.

Hallo liebe Community. 

Ich habe ein Problem mit einer ICS-Datei. Ich möchte gerne einen Termin im Kalender hinzufügen. Ich habe ein Scirpt, welches eine Mail versendet inklusive der ics-Datei. 

Das kommt auch an. Nur kann ich die ICS-Datei auf dem Mobiltelefon nicht öffnen und auf dem Rechner in Outlook den Termin nicht hinzüfgen. Ich sehe ihn nicht. 

Könnt ihr mal schauen, ob ich in dem Script einen Fehler habe? 

Schon jetzt herzlichen Dank. 

"PDF anhängen";
let Kunde := 'Meet-TN'.Mailadresse;
let DateiName := "Protokoll.pdf";
let DateiAnhang := importFile(this, printAndSaveRecord(this, "Protokoll"), DateiName);
"Sync abwarten";
while waitForSync() = false do
    sleep(100)
end
;
"Maildaten";
let MailFrom := userEmail(user());
let MailCC := userEmail(user());
let b := "ASA-Protokoll" + " " + "vom " + Datum;
let t := "<b>Sehr geehrter Kunde.</b><br>" +
    "Anliegend erhalten Sie das Protokoll der durchgeführten ASA-Sitzung." +
    "<br><br><br>" +
    "Mit freundlichen Grüßen<br>" +
    "Ihr Team der s.ub GmbH";
"Termin laden";
let startDT := 'Nächste_Sitzung_geplant';
let hatTermin := startDT != null;
"+60 Minuten als Bruchteil eines Tages";
let endDT := if hatTermin then startDT + 1 / 24 end;
"Zeitstrings ohne Quotes und ohne TZ";
let DTSTART := if hatTermin then
        format(startDT, "YYYYMMDD") + "T" + format(startDT, "HHmmss")
    end;
let DTSTAMP := format(now(), "YYYYMMDD") + "T" + format(now(), "HHmmss");
let uid := DTSTAMP + "@s-ub.de";
"ICS zusammenbauen (floating time + DURATION)";
let ln := "\r\n";
let icsContent := if hatTermin then
        "BEGIN:VCALENDAR" + ln + "VERSION:2.0" + ln + "PRODID:-//s.ub GmbH//ASA//EN" + ln +
        "CALSCALE:GREGORIAN" +
        ln +
        "METHOD:PUBLISH" +
        ln +
        "BEGIN:VEVENT" +
        ln +
        "UID:" +
        uid +
        ln +
        "DTSTAMP:" +
        DTSTAMP +
        ln +
        "DTSTART:" +
        DTSTART +
        ln +
        "DURATION:PT60M" +
        ln +
        "SUMMARY:ASA-Sitzung" +
        ln +
        "DESCRIPTION:ASA-Sitzung (automatisch erstellt aus Ninox)" +
        ln +
        "STATUS:CONFIRMED" +
        ln +
        "SEQUENCE:0" +
        ln +
        "END:VEVENT" +
        ln +
        "END:VCALENDAR"
    end;
"ICS-Datei erzeugen";
let ICSDatei := if hatTermin then
        createTextFile(this, icsContent, "ASA-Termin.ics")
    end;
"Mail senden (PDF + ggf. ICS)";
sendEmail({
    from: MailFrom,
    to: Kunde,
    cc: MailCC,
    subject: b,
    text: "html",
    html: t,
    attachments: if hatTermin then
        [DateiAnhang, ICSDatei]
    else
        [DateiAnhang]
    end
});
"Optional: weiterer Druck";
let MeineDatei := printRecord(this, "Protokoll");
void

Viele Grüße, Jens

2 Antworten

null
    • + Maßanzug statt Massenware +
    • RonaldP
    • vor 3 Tagen
    • Gemeldet - anzeigen

    Moin  ,

    mein Vorschlag wäre einen Kalendereintrag aus dem z.B. Outlook-Kalender zu exportieren und dann im Texteditor zu öffnen. Das kannst du dann in deinen Code einfügen und die Felder einsetzen.

    Statt des "ln" versuche mal:

    + "

    " +

    (Enter nach dem ersten Anführungszeichen.)

    VG Ronald 

    • Jens_Waschwill
    • gestern
    • Gemeldet - anzeigen

    Super, vielen Dank. 

Content aside

  • Status Answered
  • gesternZuletzt aktiv
  • 2Antworten
  • 33Ansichten
  • 2 Folge bereits