Ereignis erstellen
Wenn Sie Schreibzugriff auf den Google-Kalender des Organisators haben, können Sie mit der Methode Events: insert
ein Ereignis hinzufügen.
Bei dieser Methode wird der Termin unabhängig von der Einstellung zum Hinzufügen von Einladungen direkt dem Kalender des Organisators hinzugefügt.
Teilnehmer hinzufügen
Mit dieser Methode können Sie demselben Termin auch Teilnehmer hinzufügen, indem Sie deren E-Mail-Adresse der Eigenschaft attendees
des Termins hinzufügen. Alle zukünftigen Änderungen, die der Organisator am Termin vornimmt, werden an die Teilnehmer weitergegeben.
Die Teilnehmer erhalten die Einladung von der E-Mail-Adresse des Organisators. Google Kalender-Nutzer erhalten die Einladung je nach den Einstellungen für Termine in den Google Kalender-Einstellungen in ihrer E-Mail-Adresse und/oder in ihrem Kalender:
- Wenn die Einstellung
From everyone
festgelegt ist, wird der Termin direkt dem Kalender der Person hinzugefügt. - Wenn die Einstellung
Only if the sender is known
festgelegt ist, wird der Termin dem Kalender des Nutzers direkt hinzugefügt, wenn er bereits mit dem Organisator interagiert hat, wenn der Organisator zur selben Organisation gehört oder wenn der Organisator in seinen Google-Kontakten ist. Wenn der Organisator nicht bekannt ist, kann er auf Zum Kalender hinzufügen klicken oder in der Einladungs-E-Mail auf Ja oder Vielleicht klicken, um zu antworten. Der Termin wird dann dem Kalender der Person hinzugefügt. - Wenn Nutzer die Einstellung
When I respond in email
haben, werden alle Einladungen erst dann ihrem Kalender hinzugefügt, wenn sie in der Einladungs-E-Mail auf Ja, Vielleicht oder Nein klicken.
Weitere Informationen dazu, wie Einladungen zu Google Kalender hinzugefügt werden, finden Sie unter Einladungen in Google Kalender verwalten.
Termin direkt in den Kalendern der Teilnehmer anzeigen
Wenn ein Termin unabhängig von den Einstellungen der Teilnehmer direkt in ihren Google Kalendern angezeigt werden soll, können Sie die Teilnahme des Teilnehmers festlegen oder eine Kopie des Termins direkt in den Kalender des Teilnehmers importieren. Für beide Methoden benötigen Sie Schreibzugriff auf die Kalender der Teilnehmer. Wenn Sie keinen Zugriff haben, können Sie den Organisator den Kontakten der Teilnehmer hinzufügen. Dazu ist möglicherweise Schreibzugriff auf die Kontakte der Teilnehmer erforderlich.
Antwort des Teilnehmers festlegen
So legen Sie die Antwort eines Teilnehmers auf eine Einladung zu einer Veranstaltung fest:
- Erstellen Sie den Termin im Google Kalender des Organisators und fügen Sie Teilnehmer hinzu (siehe oben).
- Verwenden Sie die Methode
Events: update
, um die RSVP des Teilnehmers aufaccepted
odertentative
festzulegen. Sie benötigen Schreibzugriff auf den Kalender des Teilnehmers. Es kann etwas dauern, bis der Termin im Kalender des Teilnehmers angezeigt wird. Weitere Informationen zur Verwendung derEvents: update
-Methode
Bei dieser Methode wird der Termin dem Kalender des Teilnehmers hinzugefügt. Der Teilnehmer sieht jedoch möglicherweise weiterhin das Banner in seiner E-Mail, dass die Einladung von einer ihm unbekannten Adresse gesendet wurde.
Eine Kopie des Termins direkt in den Kalender des Teilnehmers importieren
So importieren Sie eine Kopie eines Termins in den Kalender eines Teilnehmers:
- Wenn Sie Schreibzugriff auf den Google Kalender des Organisators haben, importieren Sie eine Kopie des Termins mit der Methode
Events: import
. - Importieren Sie mit
Events: import
eine weitere Kopie desselben Termins in den Kalender des Teilnehmers. Sie benötigen Schreibzugriff auf den Kalender des Teilnehmers. Verwenden Sie dieselbe Ereignis-ID (iCalUID
) für die Kopien des Organisators und der Teilnehmer und geben Sie in der Kopie des Teilnehmers den Organisator an.
Bei dieser Methode kann der Teilnehmer den Termin in seinem Kalender sehen, erhält aber keine Einladungs-E-Mail von Google Kalender.
Fügen Sie den Organisator den Kontakten des Teilnehmers hinzu.
Wenn Sie die Anmeldedaten des Teilnehmers nicht haben, können Sie den Teilnehmer oder seine Organisation bitten, die E-Mail-Adresse des Organisators vorab zu seinen Google-Kontakten hinzuzufügen, damit ein Termin direkt in seinem Kalender angezeigt wird. Es kann etwas dauern, bis ein neu erstellter Kontakt übernommen wird.
- Bitten Sie den Google Kalender-Nutzer, den Organisator seinen Google-Kontakten hinzuzufügen.
- Wenn die Teilnehmer zu einer Organisation gehören, können Sie den Administrator der Organisation bitten, den Kontakten der Nutzer programmatisch E-Mail-Adressen hinzuzufügen. Bitten Sie den Administrator, die domainweite Delegierung zu aktivieren, imitieren Sie die Nutzer und verwenden Sie die Methode
People: createContact
, um Kontakte für jeden Nutzer zu erstellen, damit zukünftige Einladungen von diesen E-Mail-Adressen automatisch in den Kalendern der Nutzer angezeigt werden. - Wenn Sie Zugriff auf die Kontakte des Teilnehmers haben, können Sie die E-Mail-Adresse des Organisators auch mit der Methode
People: createContact
zu den Kontakten des Teilnehmers hinzufügen.
Nutzer über eine E-Mail-Adresse einladen
Wenn Sie keinen Schreibzugriff auf den Google Kalender des Organisators haben oder die E-Mail-Adresse des Organisators nicht preisgeben möchten, verwenden Sie das iCalendar-Protokoll (RFC-5545), um Nutzer per E-Mail mit einer ICS-Datei einzuladen.
Wenn der Teilnehmer ein Google Kalender-Nutzer mit der Einstellung Only if the sender
is known
ist und zuvor nicht mit Ihnen interagiert oder die Adresse als bekannt gespeichert hat, wird die Einladung erst dann seinem Kalender hinzugefügt, wenn er auf Zum Kalender hinzufügen klickt oder auf die Veranstaltung antwortet.
Link zum Hinzufügen der Veranstaltung bereitstellen
Wenn Sie Google Kalender-Nutzern das Hinzufügen eines einmaligen Termins erleichtern möchten, ohne ihn ständig aktualisieren zu müssen, können Sie einen Link mit einem vordefinierten Termin bereitstellen, den der Nutzer selbst hinzufügen kann. Mit dieser Methode wird ein separates Ereignis im Kalender des Nutzers erstellt, das Sie nur aktualisieren können, wenn Sie Zugriff auf den Kalender des Nutzers haben.
Verwenden Sie die folgende Linkvorlage:
https://calendar.google.com/calendar/r/eventedit?action=TEMPLATE&dates=20230325T224500Z%2F20230326T001500Z&stz=Europe/Brussels&etz=Europe/Brussels&details=EVENT_DESCRIPTION_HERE&location=EVENT_LOCATION_HERE&text=EVENT_TITLE_HERE
Aktualisieren Sie dazu die folgenden Informationen:
- Start- und Enddatum und -zeit: Verwenden Sie das ISO 8601-Format. Ersetzen Sie im obigen Beispiel
20230325T224500Z
und20230326T001500Z
. - Start- und Endzeitzonen: Formatieren Sie sie als Namen aus der IANA-Zeitzonendatenbank.
Geben Sie die Zeitzonen in die Felder
stz
undetz
ein. - Ereignisbeschreibung: Muss URL-codiert sein.
- Ereignisort: Muss URL-codiert sein.
- Ereignistitel: Muss URL-codiert sein.
Beispiel
Betrachten wir das Beispiel eines Terminbuchungsdienstes, mit dem Nutzer Termine bei einem Unternehmen buchen können. Wenn ein Nutzer einen Termin bucht, soll Ihr Dienst den Google-Kalendern des Buchenden und des Unternehmens einen Termin hinzufügen.
Für eine optimale Nutzererfahrung empfehlen wir, dass das Unternehmen Schreibzugriff auf seinen Kalender gewährt, damit Sie den Termin direkt in den Kalender des Unternehmens eintragen (Termin erstellen) und den Bucher zu diesem Termin einladen können (Teilnehmer hinzufügen). Damit der Bucher den Termin in seinem Kalender sieht und daran erinnert wird, bitte ihn, seinen E-Mail-Posteingang zu prüfen und direkt nach der Buchung auf Ja zu antworten. Nachdem sie auf die Einladung geantwortet haben, erhalten sie gemäß ihren Benachrichtigungseinstellungen Terminbenachrichtigungen von Google Kalender.
Wenn Sie den Termin direkt dem Kalender des Buchers hinzufügen möchten, bitten Sie ihn, die E-Mail-Adresse, von der er die Einladung erhält, zu seinen Kontakten hinzuzufügen. Alternativ können Sie die Buchenden um Schreibzugriff auf ihren Kalender bitten, um die Antwort programmisch für sie zu senden (Antwort des Teilnehmers festlegen) und ihnen eine E-Mail-Benachrichtigung über die bestätigte Buchung zu senden.
Wenn das Unternehmen seine E-Mail-Adresse nicht preisgeben möchte, verwenden Sie eine nutzerspezifische E-Mail-Adresse, um den Termin per E-Mail an den Bucher zu senden (Nutzer über eine E-Mail-Adresse einladen).
Ereignisweitergabe
Das folgende Diagramm veranschaulicht die Dynamik. Zuerst erstellt Jack einen Termin in seinem primären Kalender und ist somit der Organisator. Anschließend lädt er den sekundären Kalender der Cello-Lerngruppe und Susan ein, die die Ereigniseinstellung Only if the sender is known
hat. Die Kopien der Teilnehmer werden im sekundären Kalender der Cello-Kursgruppe und in Susans Kalender erstellt, wenn sie Jack kennt. Andernfalls werden sie erstellt, wenn sie sich anmeldet oder angibt, dass sie Jack kennt. Wenn Susan antwortet, wird die Änderung der RSVP-Antwort an den Organisator zurückgesendet. Die Kopie des Organisators wird dann mit der Antwort von Susan aktualisiert. Diese Änderungen an der Kopie des Termins des Organisators werden dann an die anderen Teilnehmer weitergegeben.
Gemeinsame Ereigniseigenschaften
Der Kalender, in dem der Termin erstellt wird, ist der Kalender des Organisators. Diesem Kalender gehören die freigegebenen Ereignisinformationen, einschließlich ID, Beginn und Ende, Zusammenfassung und Beschreibung. Wenn diese Informationen im Kalender des Organisators aktualisiert werden, werden die Änderungen an die Kopien der Teilnehmer weitergegeben.
Eigenschaften für private Veranstaltungen
Nicht alle Informationen werden zwischen allen Ereigniskopien geteilt. Einige Properties sind privat, z. B. Erinnerungen, colorId
, Transparenz oder das Property extendedProperties.private
. Diese Eigenschaften werden von den Einstellungen der Teilnehmer und nicht vom Kalender des Organisators gesteuert.
Teilnehmer können auch die freigegebenen Eigenschaften des Termins ändern. Diese Änderungen werden jedoch nur in der eigenen Kopie übernommen und gehen möglicherweise verloren, wenn der Organisator eine Änderung vornimmt.
Die einzige Terminänderung, die von den Teilnehmern an den Organisator weitergegeben wird, ist der Antwortstatus des Teilnehmers, der in der Property attendees[].responseStatus
gespeichert ist.