In meinem letzten Post habe ich bereits die Vorbereitungsarbeiten erklärt, um mittels Visual Basic auf die Google Calendar API zuzugreifen. Jetzt beginnt die Programmierarbeit!
Im Folgenden verwende ich Visual Basic 2010 Express, jedoch ist das mit älteren oder neueren Versionen nahezu identisch und mit C# ähnlich:
Schritt 1:
Neues VB-Projekt anlegen und ein einfaches Formular basteln – im meinem Beispiel ein Button sowie ein Textfeld (Multiline=True, Scrollbars=Vertical) zur Test-Ausgabe:
Schritt 2:
So sieht der Code – diese liest die ersten drei Termine aus dem Google-Calendar aus
Dim Antwort As Byte() Dim googleAccessToken As String = "???" 'WebClient anlegen ("Imports System.Net "nicht vergessen) Dim myWebClient As New WebClient() 'Except100 ausschalten, sonst gibt es u. U. Fehlermeldungen ServicePointManager.Expect100Continue = False Dim requestURL = _ "https://www.googleapis.com/calendar/v3/calendars/" Dim calendarID = "???" ' = Google Account (=Mailadresse) 'Beispiel - die ersten drei Termine laden requestURL = requestURL _ & calendarID _ & "/events?orderBy=startTime&"_ & "singleEvents=true&maxResults=3" _ & "&access_token=" & googleAccessToken Debug.Print(requestURL) 'weitere API-Beispiele siehe 'https://developers.google.com/google-apps/calendar/v3/reference/ 'Liste der Parameter 'https://developers.google.com/google-apps/calendar/v3/reference/ ' events/list Dim AntwortString As String Try Antwort = myWebClient.DownloadData(requestURL) AntwortString = Encoding.ASCII.GetString(Antwort) ' JSON noch etwas schöner formatieren AntwortString = JsonReformat(AntwortString) 'Debug.Print(AntwortString) TextBox1.Text = AntwortString Catch ex As Exception 'Wenn es nicht klappt Fehler ausgeben MessageBox.Show("Geht nicht: " & ex.Message) End Try '.... Private Function JsonReformat(ByVal s As String) ' in .net ist Json etwas umständlicher zu handeln - deshalb ' wird es hier einfach halbwegs lesbar ausgegeben ' wie es "richtig" mit Json geht findet man z. B. in ' meinem Tutorial zur Facebook-API ' http://frank-it-beratung.com/2011/02/18/ ' tutorial-facebook-vb-csharp-pinnwandeintrag-bei-freund/ s = s.Replace(",", "," & vbCrLf) s = s.Replace("{", vbCrLf& "{") Return s End Function
Im nächsten Teil werde ich erklären, wie man Outlook-Termine mit Visual Basic auslesen kann.
Update am 9.7.2014: Der dritte Teil meines Tutorials ist nun fertig.
Update am 9.8.2014: Dieser Post war versehentlich auf offline gestellt und ist nun wieder lesbar!
P.S.
Probleme? Fragen? Anregungen? Ich helfe jederzeit und gerne – einfach einen Kommentar oder Mail schreiben, die Antwort kommt schnellstmöglich. Unternehmen, die Unterstützung, Beratung oder Schulung bei der API- oder Webprogrammierung, der Social-Media-Entwicklung oder dem Social-Media-Management benötigen finden zudem entsprechende Angebote meiner Firma auf der Website www.Frank-IT-Beratung.de
Letzte Woche habe ich folgende Mail erhalten:
„Die Termine von Google Kalender auszulesen funktioniert wunderbar. Wie
könnte man die Termine aber im Google – Kalender löschen, updaten oder
neu erstellen?“
Ich werde dazu die Tage ein neues Tutorial schreiben!