Ereignistypen

Auf dieser Seite werden die eventType-Eigenschaft und die Spezifikationen von Ereignistypen erläutert. in der Google Calendar API verfügbar.

Mit Google Kalender können Nutzer allgemeine Termine erstellen sowie Termine, die für bestimmte Anwendungsfälle und mit benutzerdefinierten Eigenschaften.

Der Ereignistyp kann an den folgenden Stellen in der API gefunden werden:

  • Alle Ereignisse werden mit einem eventType zurückgegeben.
  • eventType muss beim Erstellen oder Aktualisieren einer Ereignisressource festgelegt werden. Ist kein Wert festgelegt, Typ 'default' wird verwendet.
  • eventTypes kann in einer Events:list angegeben werden. Aufruf zum Auflisten von Ereignissen bestimmter Typen. Wenn kein Typ angegeben ist, werden alle Ereignistypen zurückgegeben.
  • eventTypes kann in einer Events:watch -Aufruf, um Updates zu Ereignissen bestimmter Typen zu abonnieren. Wenn kein Typ angegeben ist, führt die Anfrage dazu, dass alle Ereignistypen abonniert werden.

Standardereignis

Ereignisse mit dem Ereignistyp default werden erstellt und als eine der Hauptereignisse verwendet. Ressourcen der Google Calendar API. Sie unterstützen ein breites Spektrum an Unterkünfte mit dem das Ereignis weiter angepasst werden kann.

Weitere Informationen finden Sie unter Ereignisse erstellen, um mit der Arbeit zu beginnen Google Kalender-Termine

Geburtstag

Geburtstage sind ganztägige besondere Ereignisse, die jährlich stattfinden. Sie haben die folgenden Spezifikationen:

  • eventType ist festgelegt auf 'birthday'.
  • start und end-Felder müssen Folgendes definieren: ganztägiges Ereignis, das genau einen Tag umfasst.
  • Feldwert visibility muss 'private' sein.
  • Feldwert transparency muss 'transparent' sein.
  • Es muss eine jährliche Wiederholung stattfinden, d. h. die Das Feld recurrence muss 'RRULE:FREQ=YEARLY'. Für Geburtstagstermine, die auf den 29. Februar fallen, müssen folgende Wiederholungsregel: 'RRULE:FREQ=YEARLY;BYMONTH=2;BYMONTHDAY=-1'
  • Kann colorId, summary und reminders
  • Andere Ereigniseigenschaften werden nicht unterstützt.

Termine aus Gmail

Automatisch aus Gmail generierte Ereignisse 'fromGmail' haben.

Mit der Google Calendar API können Sie diesen Termintyp nicht über die insert können.

Mit der API können Sie colorId, reminders, visibility, transparency, status, private und shared erweiterte Properties mithilfe der Aktualisierung und patch-Methoden.

Die API unterstützt get und list-Methoden zum Lesen von Ereignissen aus Google Mail. eventTypes kann sein auf 'fromGmail' gesetzt, um nur aus Gmail generierte Ereignisse aufzulisten. Wenn kein Typ werden Termine aus Gmail zusammen mit allen anderen Ereignistypen aufgelistet.

Die API unterstützt die Methode watch, können Sie Terminänderungen aus Gmail in Google Kalender abonnieren. Wenn kein Typ alle Ereignistypen, einschließlich 'fromGmail', abonniert werden.

Termine aus Gmail können gelöscht werden, indem Sie delete-Methode des Google Calendar API

Ändern des Organisators eines Termins in Gmail mithilfe von move oder update-Methoden werden nicht unterstützt.

Fokuszeit, Abwesenheit und Arbeitsort

Mit der Google Calendar API können Sie Termine erstellen und verwalten, Status von Google Kalender-Nutzern.

Diese Funktionen sind nur für primäre Kalender und für einige Google Kalender-Nutzer. Weitere Informationen finden Sie unter Fokuszeit, Abwesenheit und Arbeit verwalten Standortereignisse.

Ereignistypen in Google Apps Script entdecken

Google Apps Script ist eine JavaScript-basierte Cloud Scripting-Sprache, mit der Sie Geschäftsanwendungen erstellen können, die sich Google Workspace Skripts werden in einem browserbasierten Code-Editor entwickelt. werden sie auf den Servern von Google gespeichert und ausgeführt. Siehe auch Google Apps Script Apps Script, um Anfragen an die Google Calendar API zu senden

In der folgenden Anleitung wird beschrieben, wie Sie Ereignisse mithilfe des Google Calendar API als erweiterter Dienst in Google Apps Script. Eine vollständige Liste der Ressourcen und Methoden der Google Calendar API finden Sie in der Referenzdokumentation.

Script erstellen und einrichten

  1. Erstellen Sie ein Skript, indem Sie script.google.com/create.
  2. Klicken Sie im linken Bereich neben Dienste auf „Dienst hinzufügen“.
  3. Wählen Sie Google Calendar API aus und klicken Sie auf Hinzufügen.
  4. Nach der Aktivierung wird die API im linken Bereich angezeigt. Verfügbare Methoden und Klassen in der API können mit dem Schlüsselwort Kalender im Editor aufgelistet werden.

(Optional) Google Cloud-Projekt aktualisieren

Jedes Google Apps Script-Projekt ist mit einem Google Cloud-Projekt verknüpft. Ihr Skript kann das Standardprojekt verwenden, das Google Apps Script automatisch erstellt. Wenn Sie ein benutzerdefiniertes Google Cloud-Projekt verwenden möchten, finden Sie weitere Informationen unter Zu einem verschiedenen Cloud-Standardprojekten. Wählen Sie nach dem Einrichten des Google Cloud-Projekts links Editor aus, um zum Code-Editor verwenden.

Code in das Skript einfügen

Das folgende Codebeispiel zeigt, wie Ereignisse mit verschiedene eventType-Werte.

  1. Fügen Sie Folgendes in den Code-Editor ein.

    const CALENDAR_ID = 'CALENDAR_ID' || 'primary';
    
    /** Lists default events. */
    function listDefaultEvents() {
      listEvents('default');
    }
    
    /** Lists events from Gmail. */
    function listEventsFromGmail() {
      listEvents('fromGmail');
    }
    
    /**
      * Lists events with the given event type. If no type is specified, lists all events.
      * See https://developers.google.com/calendar/api/v3/reference/events/list
      */
    function listEvents(eventType = undefined) {
      // Query parameters for the list request.
      const optionalArgs = {
        eventTypes: eventType ? [eventType] : undefined,
        singleEvents: true,
        timeMax: '2024-07-30T00:00:00+01:00',
        timeMin: '2024-07-29T00:00:00+01:00',
      }
      try {
        var response = Calendar.Events.list(CALENDAR_ID, optionalArgs);
        response.items.forEach(event => console.log(event));
      } catch (exception) {
        console.log(exception.message);
      }
    }
    
    /**
      * Reads the event with the given eventId.
      * See https://developers.google.com/calendar/api/v3/reference/events/get
      */
    function readEvent() {
      try {
        var response = Calendar.Events.get(CALENDAR_ID, 'EVENT_ID');
        console.log(response);
      } catch (exception) {
        console.log(exception.message);
      }
    }
    
    /** Creates a default event. */
    function createDefaultEvent() {
      const event = {
        start: { dateTime: '2024-07-30T10:30:00+01:00'},
        end: { dateTime: '2024-07-30T12:30:00+01:00'},
        description: 'Created from Apps Script.',
        eventType: 'default',
        summary: 'Sample event',
      }
      createEvent(event);
    }
    
    /**
      * Creates a Calendar event.
      * See https://developers.google.com/calendar/api/v3/reference/events/insert
      */
    function createEvent(event) {
    
      try {
        var response = Calendar.Events.insert(event, CALENDAR_ID);
        console.log(response);
      } catch (exception) {
        console.log(exception.message);
      }
    }
    

    Ersetzen Sie Folgendes:

    • CALENDAR_ID: E-Mail-Adresse des Kalenders an Ereignisse abzurufen und zu erstellen. Diese Konstante ist anfangs auf 'primary', mit dem Sie auf den Hauptkalender der angemeldeter Nutzer. Wenn Sie diesen Wert ändern, können Sie Termine in den Kalendern Ihrer andere Nutzer, auf die Sie Zugriff haben.
    • EVENT_ID: ID des Ereignisses. Sie können die Methode Events:list, um Ereignis-IDs abzurufen.

Codebeispiel ausführen

  1. Wählen Sie über dem Code-Editor die auszuführende Funktion aus dem Dropdown-Menü aus. und klicken Sie auf Ausführen.
  2. Bei der ersten Ausführung werden Sie aufgefordert, den Zugriff zu autorisieren. Prüfen und erlauben Apps Script, um auf Ihren Kalender zuzugreifen.
  3. Die Ergebnisse der Skriptausführung können Sie in der Ausführungsprotokoll, das unten im Fenster angezeigt wird.