Nutzer zu einem Termin einladen

Ereignisse erstellen

Wenn Sie Schreibzugriff auf den Google Kalender des Organisators haben, können Sie einen Termin mit der Methode Events: insert hinzufügen.

Bei dieser Methode wird der Termin direkt zum Kalender des Organisators hinzugefügt, unabhängig von seiner Einstellung zum Hinzufügen von Einladungen.

Teilnehmer hinzufügen

Mit dieser Methode können Sie auch Teilnehmer zum selben Termin hinzufügen, indem Sie ihre E-Mail-Adresse in die Property attendees des Termins einfügen. Alle zukünftigen Änderungen des Organisators werden für die Teilnehmer übernommen.

Die Teilnehmer erhalten die Einladung über die E-Mail-Adresse des Organisators. Google Kalender-Nutzer erhalten die Einladung je nach Termineinstellungen in ihren Google Kalender-Einstellungen per E-Mail und/oder in ihrem Kalender:

  • Wenn sie die Einstellung From everyone haben, wird der Termin direkt ihrem Kalender hinzugefügt.
  • Wenn die Einstellung Only if the sender is known festgelegt ist, wird der Termin dem Kalender direkt hinzugefügt, wenn er bereits mit dem Organisator interagiert hat, sich in derselben Organisation befindet oder der Organisator in seinen Google-Kontakten aufgeführt ist. Wenn der Organisator dem Organisator nicht bekannt ist, kann er auf Ich kenne diesen Absender klicken oder die Einladung annehmen, indem er in der Einladungs-E-Mail auf Ja oder Vielleicht klickt. Dann wird der Termin in den Kalender eingetragen.
  • Wenn Nutzer die Einstellung When I respond in email verwenden, werden dem Kalender erst alle Einladungen hinzugefügt, wenn der Nutzer in der Einladungs-E-Mail auf Ja, Vielleicht oder Nein klickt.

Weitere Informationen zum Hinzufügen von Einladungen zu Google Kalender finden Sie unter Einladungen in Google Kalender verwalten.

Legen Sie für die Antwort des Gastes mit dem Attribut attendees[].responseStatus keinen anderen Wert als needsAction fest. Dadurch wird der Termin nicht automatisch den Kalendern der Nutzer hinzugefügt.

Termin direkt in den Kalendern der Teilnehmer anzeigen

Um einen Termin direkt in den Kalendern der Google Kalender-Teilnehmer anzuzeigen, können Sie die Antwort des Gastes 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. Falls nicht, sollten Sie den Organisator zu den Kontakten des Teilnehmers hinzufügen. Dafür ist möglicherweise Schreibzugriff auf die Kontakte des Teilnehmers erforderlich.

Antwort des Gastes festlegen

So legen Sie die Antwort eines Teilnehmers auf einen Termin fest:

  1. Erstellen Sie den Termin im Kalender des Google Kalender-Organisators und fügen Sie Teilnehmer hinzu (siehe oben).
  2. Verwenden Sie die Methode Events: update, um die Antwort des Teilnehmers auf accepted oder tentative festzulegen. Sie benötigen Schreibzugriff auf den Kalender der Teilnehmer. Es kann etwas dauern, bis die Veranstaltung im Kalender der Teilnehmer erscheint. Weitere Informationen zur Verwendung der Methode Events: update

Mit dieser Methode wird der Termin dem Kalender des Teilnehmers hinzugefügt. Möglicherweise sieht der Teilnehmer jedoch weiterhin das Banner in seiner E-Mail, dass die Einladung von einer vorher 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:

  1. Wenn Sie Schreibzugriff auf den Google-Kalender des Organisators haben, importieren Sie mit der Methode Events: import eine Kopie des Termins.
  2. 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 für die Kopien des Organisators und des Gastes dieselbe Termin-ID (iCalUID). Geben Sie außerdem in der Kopie des Gastes den Organisator an.

Mit 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 zu den Kontakten des Teilnehmers hinzu.

Wenn Sie die Anmeldedaten des Gastes nicht haben, können Sie den Teilnehmer oder seine Organisation anweisen, die E-Mail-Adresse des Organisators im Voraus zu seinen Google-Kontakten hinzuzufügen, um einen Termin direkt in seinem Kalender anzuzeigen. Es kann etwas dauern, bis ein neu erstellter Kontakt wirksam 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, E-Mail-Adressen programmatisch zu den Kontakten seiner Nutzer hinzuzufügen. Bitten Sie den Administrator, die domainweite Delegierung zu aktivieren, die Identität der Nutzer zu übernehmen und mit der Methode People: createContact Kontakte für jeden Nutzer zu erstellen. So sorgen Sie dafür, dass zukünftige Einladungen von diesen E-Mail-Adressen automatisch in den Kalendern der Nutzer angezeigt werden.
  • Wenn Sie Zugriff auf die Kontakte des Gastes haben, können Sie die E-Mail-Adresse des Organisators auch mit der Methode People: createContact den Kontakten des Gastes 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 offenlegen möchten, verwenden Sie das iCalendar-Protokoll (RFC-5545), um Nutzer mit E-Mails über eine ICS-Datei einzuladen.

Wenn der Teilnehmer ein Google Kalender-Nutzer mit der Einstellung Only if the sender is known ist und zuvor noch nicht mit der Adresse interagiert oder diese als ihm bekannt aufgezeichnet hat, wird die Einladung erst in seinen Kalender eingetragen, wenn er auf Ich kenne diesen Absender klickt oder auf den Termin geantwortet hat.

Wenn Sie es Google Kalender-Nutzern erleichtern möchten, einen einmaligen Termin hinzuzufügen, ohne ihn aktuell zu halten, können Sie einen Link mit einem vorausgefüllten Termin bereitstellen, den die Nutzer selbst hinzufügen können. Mit dieser Methode wird im Kalender des Nutzers ein eindeutiges Ereignis erstellt, das nur aktualisiert werden kann, 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

indem Sie die folgenden Informationen aktualisieren:

  • Start- und Enddatum und Uhrzeit: Verwenden Sie das Format ISO 8601. Ersetzen Sie im obigen Beispiel 20230325T224500Z und 20230326T001500Z.
  • Zeitzonen für Start und Ende: Verwenden Sie den Namen der IANA-Zeitzonendatenbank. Tragen Sie die Zeitzonen in die Felder stz und etz ein.
  • Ereignisbeschreibung: Muss URL-codiert sein.
  • Ereignisspeicherort: Muss URL-codiert sein.
  • Ereignistitel: Muss URL-codiert sein.

Beispiel

Sehen wir uns das Beispiel an, mit dem ein Terminbuchungsservice erstellt wird, mit dem Nutzer Termine bei einem Unternehmen buchen können. Wenn ein Nutzer einen Termin bucht, soll Ihr Dienst dem Google-Kalender des buchenden Nutzers und des Unternehmens einen Termin hinzufügen.

Für eine optimale Nutzererfahrung empfehlen wir, dass das Unternehmen Schreibzugriff auf seinen Kalender gewährt, damit du den Termin direkt dem Unternehmenskalender hinzufügen kannst (Termin erstellen) und die buchende Person zu diesem Termin einladen kannst (Teilnehmer hinzufügen). Damit der buchende Termin im Kalender sichtbar und daran erinnert wird, bitte ihn, seine E-Mails zu prüfen und direkt nach der Buchung mit Ja auf den Termin 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 der buchenden Person hinzufügen möchten, bitten Sie die Bucher, die E-Mail-Adresse, von der sie die Einladung erhalten, zu ihren Kontakten hinzuzufügen. Alternativ können Sie die Buchungenden um Schreibzugriff auf ihren Kalender bitten, in ihrem Namen programmatisch auf Ihre Einladung zu antworten (Antwort des Gastes festlegen) und ihnen eine E-Mail-Benachrichtigung über die bestätigte Buchung zu senden.

Wenn das Unternehmen seine E-Mail-Adresse nicht offenlegen möchte, können Sie eine nutzerspezifische E-Mail-Adresse verwenden, um die Veranstaltung per E-Mail an den Organisator zu senden (Nutzer über eine E-Mail-Adresse einladen).

Ereignisweitergabe

Das folgende Diagramm erläutert die Dynamik. Zuerst erstellt Jack einen Termin in seinem primären Kalender (und ist somit Eigentümer der Kopie des Organisators). Dann lädt er den sekundären Kalender für die Cello-Unterrichtsgruppe und Susan, die die Termineinstellung Only if the sender is known hat, ein. Die Kopien der Teilnehmer werden im sekundären Kalender der Cello-Unterrichtsgruppe und, wenn sie Jack kennt, in Susans Kalender erstellt. Andernfalls werden sie bei einer Antwort oder einem Hinweis darauf erstellt, dass sie Jakob kennt. Wenn Susan antwortet, wird die Änderung der Einladung an den Organisator weitergegeben und die Kopie des Organisators wird mit Susannes Antwort aktualisiert. Diese Änderungen, die an der Terminkopie des Organisators vorgenommen werden, werden dann für die anderen Teilnehmer übernommen.

Diagramm zur Dynamik von Veranstaltungen/Teilnehmern

Gemeinsame Ereigniseigenschaften

Der Kalender, in dem der Termin erstellt wird, ist der Kalender des Organisators. Dieser Kalender enthält die freigegebenen Termininformationen, einschließlich ID, Start- und Endzeit, Zusammenfassung und Beschreibung. Wenn diese Informationen im Organisatorkalender aktualisiert werden, werden die Änderungen auf die Kopien der Teilnehmer übertragen.

Eigenschaften für private Veranstaltungen

Nicht alle Informationen werden zwischen allen Ereigniskopien ausgetauscht. Einige Properties sind privat, z. B. Erinnerungen, colorId, Transparenz oder die Property extendedProperties.private. Diese Eigenschaften werden von den Einstellungen des Teilnehmers und nicht vom Kalender des Organisators gesteuert.

Gäste können auch die gemeinsamen Eigenschaften des Termins ändern. Diese Änderungen werden jedoch nur in der eigenen Kopie berücksichtigt und gehen möglicherweise verloren, wenn der Organisator eine Änderung vornimmt.

Die einzige Terminänderung, die von Teilnehmern an den Organisator zurückgeschickt wird, ist der Antwortstatus des Gastes, der im Attribut attendees[].responseStatus gespeichert ist.