Cómo invitar a usuarios a un evento

Crear un evento

Si tienes acceso de escritura al Calendario de Google del organizador, puedes agregar un evento con el método Events: insert.

Este método agrega el evento directamente al calendario del organizador, independientemente de su configuración para agregar invitaciones.

Agregar asistentes

Con este método, también puedes agregar asistentes al mismo evento. Para ello, agrega sus direcciones de correo electrónico a la propiedad attendees del evento. Los cambios futuros que realice el organizador en el evento se propagarán a los asistentes.

Los asistentes recibirán la invitación desde la dirección de correo electrónico del organizador. Los usuarios del Calendario de Google reciben la invitación en su correo electrónico o calendario, según la configuración de los eventos en la configuración del Calendario de Google:

  • Si tiene el parámetro de configuración From everyone, el evento se agrega directamente a su calendario.
  • Si tienen el parámetro de configuración Only if the sender is known, el evento se agrega directamente a su calendario si ya interactuó con el organizador, si este pertenece a la misma organización o si está en sus Contactos de Google. Si el organizador no es conocido, puede hacer clic en Conozco a este remitente o confirmar asistencia haciendo clic en o Tal vez en el correo electrónico de invitación. Luego, el evento se agrega a su calendario.
  • Si los usuarios tienen el parámetro de configuración When I respond in email, no todas las invitaciones se agregarán a su calendario hasta que el usuario confirme su asistencia. Para ello, debe hacer clic en , Tal vez o No en el correo electrónico de invitación.

Para obtener más información sobre cómo se agregan las invitaciones al Calendario de Google, consulta Administra las invitaciones en Calendario.

No configures la respuesta del asistente con la propiedad attendees[].responseStatus en una respuesta distinta de needsAction. Prepropagar la respuesta de los asistentes no agrega automáticamente el evento a los calendarios de los usuarios.

Mostrar el evento directamente en los calendarios de los asistentes

Si quieres mostrar un evento directamente en los calendarios de los asistentes de Calendario de Google para cualquier configuración que tengan los asistentes, puedes configurar su confirmación de asistencia o importar una copia del evento directamente en su calendario. Para ambos métodos, necesitas acceso de escritura a los calendarios de los asistentes. De lo contrario, considera agregar el organizador a los contactos de los asistentes, lo que podría requerir acceso de escritura a los contactos de los asistentes.

Configurar la confirmación de asistencia de los asistentes

Para definir la confirmación de asistencia de un asistente, sigue estos pasos:

  1. Crea el evento en el calendario del organizador del Calendario de Google y agrega los asistentes (ver arriba).
  2. Usa el método Events: update para establecer la confirmación de asistencia del asistente en accepted o tentative. Debes tener acceso de escritura al calendario del asistente. Es posible que haya una pequeña demora antes de que el evento aparezca en el calendario del asistente. Obtén más información para usar el método Events: update.

Este método agrega el evento al calendario del asistente, pero es posible que este siga viendo el banner en su correo electrónico que indica que la invitación se envió desde una dirección que antes no conoce.

Importar una copia del evento directamente en el calendario de los asistentes

Para importar una copia de un evento al calendario de un asistente, sigue estos pasos:

  1. Si tienes acceso de escritura al Calendario de Google del organizador, importa una copia del evento con el método Events: import.
  2. Importa otra copia del mismo evento en el calendario del asistente con Events: import. Debes tener acceso de escritura al calendario de los asistentes. Usa el mismo ID de evento (iCalUID) en las copias del organizador y de los asistentes, y asegúrate de especificar el organizador en la copia de los asistentes.

Con este método, el asistente puede ver el evento en su calendario, pero no recibe un correo electrónico de invitación del Calendario de Google.

Agregar al organizador a los contactos del asistente

Si no tienes las credenciales del asistente, puedes indicarle al asistente o a su organización que agregue la dirección de correo electrónico del organizador a sus contactos de Google con anticipación para mostrar un evento directamente en su calendario. Puede haber una leve demora para que un contacto recién creado surta efecto.

  • Pídele al usuario de Calendario de Google que agregue al organizador a sus Contactos de Google.
  • Si los asistentes pertenecen a una organización, puedes pedirle al administrador de la organización que agregue de manera programática direcciones de correo electrónico a los contactos de sus usuarios. Pídele al administrador que habilite la delegación de todo el dominio, suplante la identidad de los usuarios y use el método People: createContact para crear contactos para cada usuario a fin de garantizar que las invitaciones futuras de estas direcciones de correo electrónico aparezcan automáticamente en los calendarios de sus usuarios.
  • Si tienes acceso a los contactos del asistente, también puedes agregar la dirección de correo electrónico del organizador a los contactos del asistente con el método People: createContact.

Invitar a un usuario desde una dirección de correo electrónico

Si no tienes acceso de escritura al Calendario de Google del organizador o no quieres exponer su dirección de correo electrónico, usa el protocolo iCalendar (RFC-5545) para invitar a usuarios por correo electrónico mediante un archivo .ICS.

Si el asistente es un usuario de Calendario de Google con el parámetro de configuración Only if the sender is known y nunca interactuó con ella ni la grabó con anterioridad, la invitación no se agregará a su calendario hasta que haga clic en Conozco a este remitente o hasta que confirme su asistencia al evento.

Como alternativa, si deseas que a los usuarios del Calendario de Google les resulte más fácil agregar un evento único y sin mantenerlo actualizado, puedes proporcionar un vínculo con un evento completado previamente para que el usuario se agregue a sí mismo. Este método crea un evento distinto en el calendario del usuario, que no podrás actualizar, a menos que tengas acceso al calendario del usuario.

Usa la siguiente plantilla de vínculo:


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

actualizando la siguiente información:

  • Fechas y horas de inicio y finalización: Usa el formato ISO 8601. En el ejemplo anterior, reemplaza 20230325T224500Z y 20230326T001500Z.
  • Zonas horarias de inicio y finalización: Usa el formato de un nombre de la base de datos de zonas horarias de IANA. Coloca las zonas horarias en los campos stz y etz.
  • Descripción del evento: Debe estar codificada para URL.
  • Ubicación del evento: Debe tener codificación URL.
  • Título del evento: Debe tener codificación URL.

Ejemplo

Consideremos el ejemplo de cómo crear un servicio de reserva de citas para ayudar a los usuarios a reservar citas con una empresa. Cuando un usuario reserva una cita, quieres que tu servicio agregue un evento a los Calendarios de Google de la empresa y del usuario que reserva.

Para obtener la mejor experiencia del usuario, recomendamos que la empresa otorgue acceso de escritura a su calendario, de modo que puedas agregar el evento directamente al calendario de la empresa (Crear evento) y, luego, invitar a la persona que hace la reserva a ese evento (Agrega asistentes). Para asegurarte de que el usuario que reserva vea el evento en su calendario y se lo recuerde, infórmale que debe revisar sus correos electrónicos y confirmar al evento inmediatamente después de hacer la reserva. Una vez que confirmen su asistencia al evento, recibirán notificaciones de eventos del Calendario de Google según su configuración de notificaciones.

Si deseas agregar el evento directamente al calendario del usuario que reserva, infórmales que agreguen a sus contactos la dirección de correo electrónico desde la que recibirán la invitación. Como alternativa, puedes pedirles a los usuarios que reserven acceso de escritura a su calendario para confirmar la asistencia de manera programática en su nombre (Configura la confirmación de asistencia del asistente) y enviarles una notificación por correo electrónico sobre la reserva confirmada.

Si la empresa no desea exponer su dirección de correo electrónico, usa una dirección de correo electrónico específica del usuario para enviar el evento al usuario que reserva mediante correo electrónico (Invitar a un usuario desde una dirección de correo electrónico).

Propagación de eventos

En el siguiente diagrama, se explica la dinámica. Primero, Jack crea un evento en su calendario principal (y, por lo tanto, posee la copia del organizador). Luego, invita al calendario secundario del grupo de lecciones de violonchelo y a Susan, que tiene la configuración de eventos Only if the sender is known. Las copias de los asistentes se crean en el calendario secundario del grupo de la lección de violonchelo y en el calendario de Susan si conoce a Jack; de lo contrario, cuando confirma su asistencia o indica que conoce a Jack. Cuando Susan responde, el cambio de confirmación de asistencia se propaga al organizador y se actualiza la copia con la respuesta de Susan. Los cambios realizados en la copia del evento del organizador se propagan a los demás asistentes.

Diagrama que muestra la dinámica del evento o los asistentes

Propiedades de eventos compartidos

El calendario donde se crea el evento es el calendario organizador. Este calendario posee la información del evento compartido, incluido el ID, la hora de inicio y finalización, el resumen y la descripción. Cuando se actualiza esta información en el calendario del organizador, los cambios se propagan a las copias de los asistentes.

Propiedades de eventos privados

No se comparte toda la información entre todas las copias del evento. Algunas propiedades son privadas, como los recordatorios, colorId, la transparencia o la propiedad extendedProperties.private. Estas propiedades se controlan mediante la configuración del asistente y no por el calendario del organizador.

Los asistentes también pueden cambiar las propiedades compartidas del evento. Sin embargo, estos cambios solo se reflejan en su propia copia y pueden perderse si el organizador realiza un cambio.

El único cambio de evento que se propaga desde los asistentes hasta el organizador es el estado de respuesta de los asistentes, que se almacena en la propiedad attendees[].responseStatus.