Du suchst nach einer Möglichkeit .ics Dateien in GO zu generieren, weil du gerne in deinem Programm diese zum Download anbieten willst?
Wir haben für ein Projekt dafür eine Möglichkeit gesucht, aber leider keine Library gefunden, die dies in GO lang unterstützt. Deshalb haben wir mal einen Termin erstellt und diesen exportiert.
Dabei ist uns aufgefallen, dass es eigentlich nur eine Textbasierte Datei ist, die mit bestimmten Metadaten wie DTSTART, DTEND, Summary, Description und noch einigen mehr versehen ist.
Im nächsten Schritt haben wir etwas getestet und mithilfe von ioutil und der time library eine kleine Hilfestellung gebaut, die es uns erlaubt mit einer Funktion eine .ics. Datei zu erstellen.
Unsere kleine Library könnt ihr wie folgt importieren:
import "github.com/jojojojonas/ics-creator"
Und dann könnt ihr eine .ics Datei wie folgt generieren:
create, err := ics.Create(ics.Options{
"./termin.ics",
ics.Dates{"11.11.2020", "23:15:00"},
ics.Dates{"11.11.2020", "23:45:00"},
"Updates Hilfe bei der Website",
"Get some updates done!"
})
Bei Fragen schreibt uns gerne an: