Invitare utenti a un evento

Creare un evento

Se disponi dell'accesso in scrittura al Google Calendar dell'organizzatore, puoi aggiungere un evento utilizzando il metodo Events: insert.

Questo metodo aggiunge l'evento direttamente al calendario dell'organizzatore, indipendentemente dalla sua impostazione di aggiunta degli inviti.

Aggiungi partecipanti

Con questo metodo, puoi anche aggiungere partecipanti allo stesso evento aggiungendo il loro indirizzo email alla proprietà attendees dell'evento. Eventuali modifiche future apportate dall'organizzatore all'evento vengono propagate ai partecipanti.

I partecipanti ricevono l'invito dall'indirizzo email dell'organizzatore. Gli utenti di Google Calendar ricevono l'invito nell'email e/o nel calendario, a seconda delle impostazioni relative agli eventi nelle impostazioni di Google Calendar:

  • Se l'utente ha l'impostazione From everyone, l'evento viene aggiunto direttamente al suo calendario.
  • Se hanno l'impostazione Only if the sender is known, l'evento viene aggiunto direttamente al loro calendario se hanno precedentemente interagito con l'organizzatore, se l'organizzatore fa parte della stessa organizzazione o se l'organizzatore è tra i suoi contatti Google. Se l'organizzatore non è noto, può fare clic su Conosco questo mittente o Rispondi all'invito facendo clic su o Forse nell'email di invito. Quindi l'evento viene aggiunto al loro calendario.
  • Se gli utenti hanno l'impostazione When I respond in email, tutti gli inviti non vengono aggiunti al loro calendario finché l'utente non risponde facendo clic su , Forse o No nell'email di invito.

Per ulteriori informazioni su come gli inviti vengono aggiunti a Google Calendar, vedi Gestire gli inviti in Calendar.

Non impostare la risposta del partecipante utilizzando la proprietà attendees[].responseStatus su qualcosa di diverso da needsAction. La precompilazione della risposta del partecipante non aggiunge automaticamente l'evento ai calendari degli utenti.

Visualizzare l'evento direttamente nei calendari dei partecipanti.

Per visualizzare un evento direttamente nei calendari dei partecipanti di Google Calendar per qualsiasi impostazione del partecipante, puoi impostare la risposta RSVP del partecipante o importare una copia dell'evento direttamente nel suo calendario. Per entrambi i metodi, è necessario l'accesso in scrittura ai calendari dei partecipanti. In caso contrario, valuta la possibilità di aggiungere l'organizzatore ai contatti del partecipante, che potrebbe richiedere l'accesso in scrittura ai contatti del partecipante.

Imposta la risposta RSVP del partecipante

Per impostare la risposta RSVP di un partecipante a un evento, procedi nel seguente modo:

  1. Crea l'evento nel calendario dell'organizzatore di Google Calendar e aggiungi i partecipanti (vedi sopra).
  2. Utilizza il metodo Events: update per impostare la risposta dell'utente su accepted o tentative. Devi avere accesso in scrittura al calendario del partecipante. Potrebbe verificarsi un leggero ritardo prima che l'evento venga visualizzato nel calendario dei partecipanti. Scopri di più su come utilizzare il metodo Events: update.

Questo metodo consente di aggiungere l'evento al calendario del partecipante, ma quest'ultimo potrebbe continuare a vedere il banner nell'email che indica che l'invito è stato inviato da un indirizzo precedentemente sconosciuto.

Importa una copia dell'evento direttamente nel calendario del partecipante

Per importare una copia di un evento nel calendario di un partecipante, procedi nel seguente modo:

  1. Se disponi dell'accesso in scrittura al Google Calendar dell'organizzatore, importa una copia dell'evento utilizzando il metodo Events: import.
  2. Importa un'altra copia dello stesso evento nel calendario del partecipante utilizzando Events: import. Devi disporre dell'accesso in scrittura al calendario del partecipante. Utilizza lo stesso ID evento (iCalUID) per le copie dell'organizzatore e del partecipante e assicurati di specificare l'organizzatore nella copia del partecipante.

Con questo metodo, il partecipante può vedere l'evento nel proprio calendario, ma non riceve un'email di invito da Google Calendar.

Aggiungi l'organizzatore ai contatti del partecipante

Se non hai le credenziali del partecipante, puoi chiedere al partecipante o alla sua organizzazione di aggiungere in anticipo l'indirizzo email dell'organizzatore ai propri contatti Google per visualizzare un evento direttamente nel suo calendario. Potrebbe verificarsi un leggero ritardo prima che un contatto appena creato abbia effetto.

  • Chiedi all'utente di Google Calendar di aggiungere l'organizzatore ai propri contatti Google.
  • Se i partecipanti appartengono a un'organizzazione, puoi chiedere all'amministratore dell'organizzazione di aggiungere in modo programmatico gli indirizzi email ai contatti dei suoi utenti. Chiedi all'amministratore di attivare la delega a livello di dominio, impersonare gli utenti e di utilizzare il metodo People: createContact per creare contatti per ciascun utente, in modo da garantire che gli inviti futuri provenienti da questi indirizzi email vengano automaticamente visualizzati nei calendari degli utenti.
  • Se hai accesso ai contatti del partecipante, puoi anche aggiungere l'indirizzo email dell'organizzatore ai contatti del partecipante utilizzando il metodo People: createContact.

Invitare un utente da un indirizzo email

Se non disponi dell'accesso in scrittura al Google Calendar dell'organizzatore o se non vuoi esporre l'indirizzo email dell'organizzatore, utilizza il protocollo iCalendar (RFC-5545) per invitare gli utenti con email utilizzando un file .ICS.

Se il partecipante è un utente di Google Calendar con l'impostazione Only if the sender is known e non ha mai interagito o registrato l'indirizzo come noto, l'invito non viene aggiunto al suo calendario finché non fa clic su Conosco il mittente o non risponde all'evento.

In alternativa, se vuoi consentire agli utenti di Google Calendar di aggiungere più facilmente un evento una tantum senza mantenerlo aggiornato, puoi fornire un link con un evento precompilato che gli utenti possano aggiungere autonomamente. Questo metodo crea un evento distinto nel calendario dell'utente, che non puoi aggiornare se non hai accesso al calendario dell'utente.

Utilizza il seguente modello di link:


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

aggiornando le seguenti informazioni:

  • Date e ore di inizio e di fine: utilizza il formato ISO 8601. Nell'esempio precedente, sostituisci 20230325T224500Z e 20230326T001500Z.
  • Fusi orari di inizio e di fine: formatta come nome di un database di fusi orari IANA. Inserisci i fusi orari nei campi stz e etz.
  • Descrizione dell'evento: deve essere codificato nell'URL.
  • Posizione dell'evento: deve essere codificato nell'URL.
  • Titolo dell'evento: deve essere codificato nell'URL.

Esempio

Consideriamo l'esempio di creazione di un servizio di prenotazione di appuntamenti per aiutare gli utenti a prenotare appuntamenti con un'attività. Quando un utente prenota un appuntamento, vuoi che il tuo servizio aggiunga un evento ai calendari Google dell'utente che ha prenotato e dell'attività.

Per la migliore esperienza utente, consigliamo all'attività di concedere l'accesso in scrittura al proprio calendario, in modo che tu possa aggiungere l'evento direttamente al calendario dell'attività (Crea evento) e invitare l'utente che ha prenotato all'evento (Aggiungi partecipanti). Per assicurarti che l'utente che prenotare vedrà l'evento nel proprio calendario e riceva un promemoria, chiedigli di controllare le email e di rispondere all'evento subito dopo aver effettuato la prenotazione. Dopo aver risposto all'invito all'evento, riceveranno le notifiche dell'evento da Google Calendar in base alle loro impostazioni di notifica.

Se vuoi aggiungere l'evento direttamente al calendario della persona che ha prenotato, chiedi di aggiungere ai propri contatti l'indirizzo email da cui riceveranno l'invito. In alternativa, chiedi agli utenti che hanno prenotato l'accesso in scrittura al loro calendario per rispondere in modo programmatico all'invito per conto (Imposta la risposta RSVP del partecipante) e inviare loro una notifica email sulla prenotazione confermata.

Se l'attività non vuole esporre il proprio indirizzo email, utilizza un indirizzo email specifico dell'utente per inviare l'evento all'autore della prenotazione tramite l'email (Invita un utente da un indirizzo email).

Propagazione eventi

Il seguente diagramma spiega le dinamiche. Innanzitutto, Jack crea un evento nel suo calendario principale (e quindi è il proprietario della copia dell'organizzatore). Invita quindi il calendario secondario del gruppo della lezione Cello e Susan, che ha l'impostazione evento Only if the sender is known. Le copie dei partecipanti vengono create nel calendario secondario del gruppo della lezione di violoncello e nel calendario di Susan se conosce Jack, altrimenti quando risponde o indica di conoscere Jack. Quando Susan risponde, la modifica relativa alla risposta viene propagata all'organizzatore, aggiornando la copia dell'organizzatore con la risposta di Susan. Queste modifiche apportate alla copia dell'evento dell'organizzatore vengono poi propagate agli altri partecipanti.

Diagramma che mostra le dinamiche dell'evento/dell'invitato

Proprietà degli eventi condivisi

Il calendario in cui viene creato l'evento è il calendario dell'organizzatore. Questo calendario è proprietario delle informazioni sugli eventi condivisi, tra cui ID, ora di inizio e di fine, riepilogo e descrizione. Quando queste informazioni vengono aggiornate nel calendario dell'organizzatore, le modifiche vengono propagate alle copie dei partecipanti.

Proprietà di eventi privati

Non tutte le informazioni vengono condivise tra tutte le copie dell'evento. Alcune proprietà sono private, come promemoria, colorId, trasparenza o la proprietà extendedProperties.private. Queste proprietà sono controllate dalle impostazioni dell'invitato e non dal calendario dell'organizzatore.

I partecipanti possono anche modificare le proprietà condivise dell'evento. Tuttavia, queste modifiche si riflettono solo sulla propria copia e potrebbero andare perse se l'organizzatore apporta una modifica.

L'unica modifica dell'evento che viene propagata dai partecipanti all'organizzatore è lo stato della risposta del partecipante, archiviato nella proprietà attendees[].responseStatus.