Google Calendar programmieren – Vorbereitungen
Einer der kompliziertesten Vorgänge beim Zugriff auf Rest APIs und ähnliche Dienste ist das Ermitteln des für die Authentifizierung notwendigen Tokens. Bevor das überhaupt möglich ist, müssen wir jedoch eine App bei Google anlegen, die uns den Zugriff im Kontext des jeweiligen Benutzers erlaubt. Das einfache Anlegen einer App reicht dazu nicht aus – für das Abfragen des zum Anmelden notwendigen Tokens benötigen wir zwei Daten namens ClientID und ClientSecret. Wie wir das alles organisieren, zeigen wir im vorliegenden Artikel.Voraussetzung ist, dass bereits ein Google-Konto vorhanden ist, mit dem wir die App anlegen können. In weiteren Artikeln zeigen wir dann, wie wir ClientID und ClientSecret für die Abfrage des Tokens nutzen können wie wir damit schließlich auf die Rest-API von Google zugreifen können, um Daten des Google Calendars zu lesen, zu erstellen, zu bearbeiten und zu löschen.
Google-Token per DLL holen
Wenn wir Daten eines Google-Kontos wie beispielsweise Google Calendar programmieren wollen, um diese abzurufen oder zu bearbeiten, benötigen wir verschiedene Dinge. Das erste ist eine Anwendung, die wir wie im Artikel »Google Calendar programmieren: Vorbereitungen« erläutern. Das erste Resultat ist die Definition einer Anwendung. Das zweite, wichtige Ergebnis sind zwei für den Zugang notwendige Daten, nämlich ClientID und ClientSecret. Mit diesen können wir dann online ein OAuth2-Token holen, das wir wiederum für den Zugriff auf die Rest-API von Google benötigen. Im vorliegenden Artikel zeigen wir, wie man ClientID und ClientSecret nutzt, um das begehrte Token auszulesen. Dazu erstellen wir eine COM-DLL, die wir von Office-Anwendungen, VB6 oder twinBASIC aus nutzen können, um über die Rest-API von Google beispielsweise auf Kalenderdaten zugreifen zu können.
Google Calendar per Rest-API programmieren
Google-Kalender sind praktisch: Sie sind von überall erreichbar, können mit endlos vielen Schnittstellen und Diensten verbunden werden und bieten weitere Vorteile. Noch schöner wäre es natürlich, wenn wir auch per VBA auf diese Kalender zugreifen könnten. Die Vorbereitungen haben wir bereits in zwei weiteren Artikeln erledigt – damit haben wir eine App bei Google angelegt und eine COM-DLL programmiert, mit der wir ein Token für die Authentifizierung bei Google generieren können. Damit folgt nun die Kür: Wir erzeugen VBA-Prozeduren, um auf die verschiedenen Informationen der Google Calendar API zuzugreifen. Dazu gehören Kalender, Termine und vieles mehr. Welche Möglichkeiten sich zum Lesen, Schreiben, Ändern und Löschen von Terminen bieten, zeigen wir auf den folgenden Seiten.
Anwendungsdaten in der Registry
Wenn man es gewohnt ist, mit Access zu arbeiten, liegt es nahe, Anwendungsdaten wie Optionen et cetera in einer Tabelle der Datenbankdatei zu speichern. Unter Excel, Word, Outlook oder auch für twinBASIC-Anwendungen ist das nicht so einfach. Wir könnten zwar eine Datenbank zu diesem Zweck heranziehen, aber je nach Anwendungsfall gibt es praktischere Lösungen – zum Beispiel Textdateien, XML-Dateien oder auch die Registry. Letztere schauen wir uns in diesem Artikel an. Wie können wir dort Einstellungen sichern und wieder abrufen? Wo in der Registry landen diese dann? Können wir überhaupt per VB, VBA und twinBASIC darauf zugreifen? All dies klären wir auf den folgenden Seiten.
JSON-Dokumente per Objektmodell zusammenstellen
.NET bietet sehr viele Steuerelemente. Viel mehr als beispielsweise Microsoft Access. Und auch wenn man unter Access mit den eingebauten Steuerelementen die meisten Aufgaben im Bereich einer Datenbanksoftware erledigen kann, wünschen sich viele Entwickler, auch einmal andere Steuerelemente nutzen zu können. Wir untersuchen in diesem Artikel, ob und wie wir .NET-Steuerelemente unter Access einbinden und in Formularen anzeigen können.
OAuth2-Token für Google per .NET-App holen
Einer der wenigen Schritte, die wir nicht mit klassischem Visual Basic oder per VBA abgebildet haben, ist das Ermitteln eines OAuth2-Tokens für Rest-APIs wie die von Google oder anderen Anbietern. Die Aufgabe ist, mit den online einmalig ermittelten Daten Client-ID und Client-Secret ein Access-Token oder noch besser ein Refresh-Token zu holen. Das Access-Token ist in der Regel zeitlich begrenzt, das Refresh-Token ist haltbarer und ermöglicht es uns, neue Access-Token zu holen – dies übrigens mit einer reinen VB6/VBA-Prozedur. In diesem Artikel zeigen wir, wie wir eine kleine Anwendung mit Benutzeroberfläche auf Basis von WPF/VB.NET in Visual Studio erstellen. Diese soll die Eingabe von Client-ID und Client-Secret erlauben und dafür die Werte eines Refresh- und eines Access-Tokens zurückliefern.