Créer un événement
Si vous disposez d'un accès en écriture à l'agenda Google Agenda de l'organisateur, vous pouvez ajouter un événement à l'aide de la méthode Events: insert
.
Cette méthode ajoute l'événement directement à l'agenda de l'organisateur, indépendamment de son paramètre d'ajout des invitations.
Ajouter des participants
Cette méthode vous permet également d'ajouter des participants au même événement en ajoutant leur adresse e-mail à la propriété attendees
de l'événement. Toute modification apportée ultérieurement à l'événement par l'organisateur est propagée aux participants.
Les participants reçoivent l'invitation à partir de l'adresse e-mail de l'organisateur. Les utilisateurs de Google Agenda reçoivent l'invitation dans leur e-mail et/ou dans leur agenda, selon les paramètres des événements dans leurs paramètres Google Agenda :
- Si le paramètre
From everyone
est activé, l'événement est ajouté directement à son agenda. - Si le paramètre
Only if the sender is known
est activé, l'événement est ajouté directement à l'agenda de l'invité s'il a déjà communiqué avec l'organisateur, si l'organisateur appartient à la même organisation ou s'il figure dans ses contacts Google. Si l'organisateur ne leur est pas connu, ils peuvent cliquer sur Ajouter à l'agenda ou répondre en cliquant sur Oui ou Peut-être dans l'e-mail d'invitation. L'événement est ensuite ajouté à son agenda. - Si les utilisateurs ont activé le paramètre
When I respond in email
, toutes les invitations ne sont ajoutées à leur agenda que lorsqu'ils y répondent en cliquant sur Oui, Peut-être ou Non dans l'e-mail d'invitation.
Pour en savoir plus sur l'ajout d'invitations à Google Agenda, consultez Gérer les invitations dans Agenda.
Afficher l'événement directement dans l'agenda des participants
Pour afficher un événement directement dans l'agenda Google des participants, quel que soit le paramètre qu'ils ont défini, vous pouvez définir leur réponse ou importer une copie de l'événement directement dans leur agenda. Pour les deux méthodes, vous devez disposer d'un accès en écriture aux agendas des participants. Si ce n'est pas le cas, envisagez d'ajouter l'organisateur aux contacts du participant, ce qui peut nécessiter un accès en écriture aux contacts du participant.
Définir la réponse d'un participant
Pour définir la réponse d'un participant à un événement, procédez comme suit :
- Créez l'événement dans l'agenda de l'organisateur Google Agenda et ajoutez des participants (voir ci-dessus).
- Utilisez la méthode
Events: update
pour définir la réponse de l'invité suraccepted
outentative
. Vous devez disposer d'un accès en écriture à l'agenda du participant. Il peut y avoir un léger délai avant que l'événement n'apparaisse dans l'agenda du participant. Découvrez comment utiliser la méthodeEvents: update
.
Cette méthode ajoute l'événement à l'agenda du participant, mais il est possible qu'il voie toujours la bannière dans l'e-mail indiquant que l'invitation a été envoyée depuis une adresse qu'il ne connaissait pas auparavant.
Importer une copie de l'événement directement dans l'agenda du participant
Pour importer une copie d'un événement dans l'agenda d'un participant, procédez comme suit :
- Si vous disposez d'un accès en écriture à l'agenda Google de l'organisateur, importez une copie de l'événement à l'aide de la méthode
Events: import
. - Importez une autre copie du même événement dans l'agenda du participant à l'aide de
Events: import
. Vous devez avoir un accès en écriture à l'agenda du participant. Utilisez le même ID d'événement (iCalUID
) pour les copies de l'organisateur et du participant, et assurez-vous de spécifier l'organisateur dans la copie du participant.
Avec cette méthode, le participant peut voir l'événement dans son agenda, mais ne reçoit pas d'e-mail d'invitation de Google Agenda.
Ajouter l'organisateur aux contacts du participant
Si vous ne disposez pas des identifiants du participant, vous pouvez lui demander ou demander à son organisation d'ajouter l'adresse e-mail de l'organisateur à ses contacts Google à l'avance pour que l'événement s'affiche directement dans son agenda. Il se peut que la prise en compte d'un contact nouvellement créé prenne un certain temps.
- Demandez à l'utilisateur Google Agenda d'ajouter l'organisateur à ses contacts Google.
- Si les participants appartiennent à une organisation, vous pouvez demander à l'administrateur de l'organisation d'ajouter par programmation des adresses e-mail aux contacts de ses utilisateurs. Demandez à l'administrateur d'activer la délégation à l'échelle du domaine, d'usurper l'identité des utilisateurs et d'utiliser la méthode
People: createContact
pour créer des contacts pour chaque utilisateur. Cela permettra de s'assurer que les futures invitations envoyées depuis ces adresses e-mail s'affichent automatiquement dans l'agenda de leurs utilisateurs. - Si vous avez accès aux contacts du participant, vous pouvez également ajouter l'adresse e-mail de l'organisateur à ses contacts à l'aide de la méthode
People: createContact
.
Inviter un utilisateur à partir d'une adresse e-mail
Si vous ne disposez pas d'un accès en écriture à l'agenda Google de l'organisateur ou si vous ne souhaitez pas exposer son adresse e-mail, utilisez le protocole iCalendar (RFC-5545) pour inviter des utilisateurs par e-mail à l'aide d'un fichier .ICS.
Si le participant utilise Google Agenda et que le paramètre Only if the sender
is known
est activé, l'invitation n'est ajoutée à son agenda que s'il a déjà interagi avec l'adresse ou l'a enregistrée comme connue. Sinon, il doit cliquer sur Ajouter à l'agenda ou répondre à l'événement.
Fournir un lien permettant aux utilisateurs d'ajouter l'événement
Si vous souhaitez permettre aux utilisateurs de Google Agenda d'ajouter un événement ponctuel sans le tenir à jour, vous pouvez fournir un lien avec un événement prérempli que l'utilisateur pourra ajouter lui-même. Cette méthode crée un événement distinct dans l'agenda de l'utilisateur, que vous ne pouvez pas modifier, sauf si vous avez accès à son agenda.
Utilisez le modèle de lien suivant :
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
en modifiant les informations suivantes :
- Dates et heures de début et de fin : utilisez le format ISO 8601. Dans l'exemple ci-dessus, remplacez
20230325T224500Z
et20230326T001500Z
. - Fuseaux horaires de début et de fin : indiquez le nom du fuseau horaire au format de la base de données des fuseaux horaires IANA.
Placez les fuseaux horaires dans les champs
stz
etetz
. - Description de l'événement : doit être encodée au format URL.
- Lieu de l'événement : doit être encodé au format URL.
- Titre de l'événement : doit être encodé au format URL.
Exemple
Prenons l'exemple de la création d'un service de réservation de rendez-vous pour aider les utilisateurs à prendre rendez-vous avec une entreprise. Lorsqu'un utilisateur prend un rendez-vous, vous souhaitez que votre service ajoute un événement aux agendas Google Agenda du client et de l'entreprise.
Pour une expérience utilisateur optimale, nous recommandons à l'établissement d'accorder un accès en écriture à son agenda. Vous pourrez ainsi ajouter l'événement directement à l'agenda de l'établissement (Créer un événement) et y inviter le client (Ajouter des participants). Pour vous assurer que la personne qui a effectué la réservation voit l'événement dans son agenda et reçoit un rappel, demandez-lui de consulter ses e-mails et de répondre Oui à l'événement immédiatement après avoir effectué la réservation. Une fois qu'ils ont répondu à l'événement, ils reçoivent des notifications d'événement de Google Agenda en fonction de leurs paramètres de notification.
Si vous souhaitez ajouter l'événement directement à l'agenda du responsable de la réservation, demandez-lui d'ajouter à ses contacts l'adresse e-mail à partir de laquelle il recevra l'invitation. Vous pouvez également demander aux personnes qui réservent un accès en écriture à leur agenda pour répondre de manière programmatique en leur nom (Définir la réponse de l'invité) et leur envoyer une notification par e-mail concernant la réservation confirmée.
Si l'établissement ne souhaite pas communiquer son adresse e-mail, utilisez une adresse e-mail spécifique à l'utilisateur pour envoyer l'événement au client par e-mail (Inviter un utilisateur à partir d'une adresse e-mail).
Propagation d'événements
Le diagramme suivant explique la dynamique. Tout d'abord, Jack crée un événement dans son agenda principal (il en est donc l'organisateur). Il invite ensuite l'agenda secondaire du groupe de cours de violoncelle et Susan, dont le paramètre d'événement est défini sur Only if the sender is known
. Les copies des participants sont créées dans l'agenda secondaire du groupe de cours de violoncelle et dans l'agenda de Susan si elle connaît Jack, ou lorsqu'elle confirme sa présence ou indique qu'elle connaît Jack. Lorsque Susan répond, la modification de la réponse est renvoyée à l'organisateur, qui met à jour sa copie avec la réponse de Susan. Les modifications apportées à la copie de l'événement de l'organisateur sont ensuite propagées aux autres participants.
Propriétés d'événement partagées
L'agenda dans lequel l'événement est créé est l'agenda de l'organisateur. Cet agenda est propriétaire des informations partagées sur l'événement, y compris l'ID, l'heure de début et de fin, le récapitulatif et la description. Lorsque ces informations sont mises à jour dans l'agenda de l'organisateur, les modifications sont propagées aux copies des participants.
Propriétés des événements privés
Toutes les informations ne sont pas partagées entre toutes les copies d'un événement. Certaines propriétés sont privées, comme les rappels, colorId
, la transparence ou la propriété extendedProperties.private
. Ces propriétés sont contrôlées par les paramètres du participant et non par l'agenda de l'organisateur.
Les participants peuvent également modifier les propriétés partagées de l'événement. Toutefois, ces modifications ne sont appliquées qu'à leur propre copie et peuvent être perdues si l'organisateur apporte une modification.
La seule modification d'événement qui est propagée des participants à l'organisateur est l'état de réponse du participant, stocké dans la propriété attendees[].responseStatus
.