Tipi di evento

Questa pagina illustra la proprietà eventType e le specifiche dei tipi di evento disponibili nell'API Google Calendar.

Google Calendar consente agli utenti di creare eventi generici, nonché eventi che sono progettate per casi d'uso specifici e con proprietà personalizzate.

Il tipo di evento può essere rilevato nelle seguenti posizioni dell'API:

  • Tutti gli eventi vengono restituiti con un elemento eventType.
  • eventType deve essere impostato durante la creazione o l'aggiornamento di una risorsa evento. Se non viene configurato, Verrà utilizzato il tipo 'default'.
  • eventTypes può essere specificato in un elenco Events:list per elencare eventi di tipo specifico. Se non viene specificato alcun tipo, tutti i tipi di evento verrà restituito.
  • eventTypes può essere specificato in un parametro Events:watch per ricevere aggiornamenti su eventi di tipo specifico. Se nessun tipo è specificato, la richiesta comporterà l'iscrizione a tutti i tipi di eventi.
di Gemini Advanced.

Evento predefinito

Gli eventi con tipo di evento default vengono creati e utilizzati come uno dei principali tutte le risorse dell'API Google Calendar. Supportano un'ampia gamma di proprietà che può essere utilizzato per personalizzare ulteriormente l'evento.

Consulta: Crea eventi con cui iniziare a lavorare Eventi di Google Calendar.

Compleanno

I compleanni sono eventi speciali che durano tutto il giorno con ricorrenza annuale. Hanno le seguenti specifiche:

  • Il campo eventType è impostato su 'birthday'.
  • start e I campi end devono definire un evento che dura tutto il giorno che dura esattamente un giorno.
  • Valore campo visibility deve essere 'private'.
  • Valore campo transparency deve essere 'transparent'.
  • Bisogna avere una ricorrenza annuale, il che significa che Il campo recurrence deve essere 'RRULE:FREQ=YEARLY'. Gli eventi di compleanno che cadono il 29 febbraio devono avere la seguente regola di ricorrenza: 'RRULE:FREQ=YEARLY;BYMONTH=2;BYMONTHDAY=-1'.
  • Può avere un colorId, summary e reminders
  • Non supporta altre proprietà degli eventi.

Eventi da Gmail

Eventi generati automaticamente da Gmail hanno il tipo di evento 'fromGmail'.

L'API Google Calendar non consente di creare questo tipo di evento utilizzando insert.

L'API consente di aggiornare colorId, reminders, visibility, transparency, status, private e shared proprietà estese utilizzando l'aggiornamento e patch.

L'API supporta i comandi get e metodi list per la lettura degli eventi da Gmail. eventTypes può essere impostato su 'fromGmail' per elencare solo gli eventi generati da Gmail. Se nessun tipo è specificati, gli eventi da Gmail saranno elencati accanto a tutti gli altri tipi di eventi.

L'API supporta il metodo watch per iscriversi alle modifiche agli eventi da Gmail su Google Calendar. Se nessun tipo è specificato, verrà effettuato l'abbonamento a tutti i tipi di eventi, incluso 'fromGmail'.

Gli eventi da Gmail possono essere eliminati utilizzando delete del metodo API Google Calendar.

Modifica dell'organizzatore di un evento da Gmail utilizzando move o I metodi update non sono supportati.

Momento di concentrazione, fuori sede e luogo di lavoro

L'API Google Calendar può essere utilizzata per creare e gestire eventi che mostrano stato degli utenti di Google Calendar.

Queste funzioni sono disponibili solo nei calendari principali e in alcuni Utenti di Google Calendar. Vedi Gestire il momento di concentrazione, fuori sede e lavoro eventi posizione per scoprire di più.

Esplorare i tipi di eventi in Google Apps Script

Google Apps Script è un servizio cloud basato su JavaScript un linguaggio di scripting che consente di creare applicazioni aziendali che si integrano con Google Workspace. Gli script sono sviluppati in un editor di codice basato su browser e vengono archiviati ed eseguiti sui server di Google. Vedi anche Google Apps Script guida rapida per iniziare a utilizzare Apps Script per inviare richieste all'API Google Calendar.

Le seguenti istruzioni descrivono come leggere e gestire gli eventi utilizzando L'API Google Calendar come servizio avanzato in Google Apps Script. Per un elenco completo delle risorse e dei metodi dell'API Google Calendar, consulta la documentazione di riferimento.

Crea e configura lo script

  1. Per creare uno script, vai a script.google.com/create.
  2. Nel riquadro a sinistra accanto a Servizi, fai clic su Aggiungi un servizio. .
  3. Seleziona API Google Calendar e fai clic su Aggiungi.
  4. Dopo l'abilitazione, l'API viene visualizzata nel riquadro a sinistra. Metodi disponibili e I corsi nell'API possono essere elencati utilizzando la parola chiave Calendar nell'editor.

(Facoltativo) Aggiorna il progetto Google Cloud

A ogni progetto Google Apps Script è associato un progetto Google Cloud. Il tuo lo script può usare il progetto predefinito che Google Apps Script può crea. Se vuoi utilizzare un progetto Google Cloud personalizzato, consulta Passare a un diverso progetto Cloud standard. Dopo aver impostato il progetto Google Cloud, seleziona Editor a sinistra per tornare alla dell'editor di codice.

Aggiungi codice allo script

L'esempio di codice seguente mostra come elencare, leggere e creare eventi con valori eventType diversi.

  1. Incolla il codice seguente nell'editor di codice.

    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);
      }
    }
    

    Sostituisci quanto segue:

    • CALENDAR_ID: indirizzo email del calendario a recuperare e creare eventi. Questa costante è inizialmente impostata su 'primary', che è una parola chiave per accedere al calendario principale dell'evento che ha eseguito l'accesso. La modifica di questo valore consente di leggere gli eventi sui calendari di altri utenti a cui hai accesso.
    • EVENT_ID: ID dell'evento. Puoi chiamare il Events:list per recuperare gli ID degli eventi.

Esegui l'esempio di codice

  1. Sopra l'editor di codice, seleziona la funzione da eseguire dal menu a discesa, e fai clic su Esegui.
  2. Nella prima esecuzione, ti viene chiesto di autorizzare l'accesso. Rivedi e consenti Apps Script per accedere al tuo calendario.
  3. Puoi esaminare i risultati dell'esecuzione dello script nella Log di esecuzione visualizzato nella parte inferiore della finestra.