Los complementos de Google Workspace pueden proporcionar interfaces personalizadas cuando el usuario ve o edita calendarios y eventos de Calendario. Esto te permite proporcionar al usuario información adicional pertinente, automatizar tareas y conectar sistemas de terceros a Calendar.
Cuando compilas una interfaz de complemento de Google Workspace para Calendario, puedes proporcionar una página principal. Puedes usar la misma página principal para varios hosts o diseñar una específica para el Calendario.
Tu complemento también puede definir una interfaz que aparece cuando el usuario tiene abierto un evento de Calendario.
Accede a la IU del complemento
Tu IU puede aparecer de varias maneras según el contexto. Por ejemplo, un complemento puede definir una interfaz de página principal, una interfaz de eventos de Calendario, una interfaz de selección de archivos adjuntos o las tres:
- Si un usuario hace clic en el ícono del complemento mientras está en una vista de calendario, el complemento ejecuta la función
calendar.homepageTriggercorrespondiente (si está presente). Esta función compila y devuelve una tarjeta de la página principal para que se muestre en Calendar. Si no se define ninguna función decalendar.homepageTrigger, se mostrará una tarjeta genérica de la página principal. - Si el usuario abre un evento del Calendario y, luego, hace clic en el ícono del complemento, o si el complemento está abierto cuando el usuario abre un evento, el complemento ejecuta la función
eventOpenTriggercorrespondiente (si está presente). Esta función compila la interfaz de eventos de calendario del complemento y vuelve al Calendario para mostrarla. - Si el complemento define una función
eventAttachmentTrigger, aparecerá como proveedor de archivos adjuntos cuando el usuario haga clic en Agregar archivo adjunto mientras edita un evento de Calendar. Cuando se selecciona el complemento, la funcióneventAttachmentTriggercompila la interfaz de selección de archivos adjuntos del complemento y la devuelve a Calendario para que se muestre.
Cómo compilar la interfaz del complemento de Calendario
Sigue estos pasos para compilar tu IU. Para extender Calendar con un complemento de Google Workspace, sigue estos pasos:
- Decide si quieres que tu complemento tenga una página principal específica para el Calendario. También decide si deseas proporcionar una interfaz personalizada mientras el usuario edita eventos del Calendario.
- Agrega los campos
addOns.commonyaddOns.calendarcorrespondientes al manifiesto del proyecto de secuencia de comandos del complemento, incluidos los permisos necesarios. - Si proporcionas una página principal específica del Calendario, implementa la función
calendar.homepageTriggerpara compilar esta interfaz. También puedes usar la interfazcommon.homepageTriggerpara varias aplicaciones host. - Si proporcionas una interfaz de eventos de calendario, implementa una función
calendar.eventOpenTriggerpara compilar esta interfaz. Consulta Cómo extender la interfaz de eventos del Calendario para obtener más detalles. - Implementa las funciones de devolución de llamada asociadas necesarias para responder a las interacciones del usuario con la IU, como los clics en botones.
Páginas principales del calendario
Los complementos admiten la visualización de las páginas principales de los complementos de Google Workspace. Para mostrar la página principal común de tu complemento en Calendario, asegúrate de que haya un campo addOns.calendar en el manifiesto del complemento.
Como alternativa, agrega un calendar.homepageTrigger al manifiesto del complemento para proporcionar una página principal específica del Calendario.
En cualquier caso, debes proporcionar el nombre de una función de activación de la página principal en el proyecto de secuencia de comandos de tu complemento. Se llama automáticamente a esta función para compilar la página principal del Calendario cuando es necesario. Implementa esta función para compilar y devolver un solo objeto Card o un array de objetos Card que componen la página principal. A la función de activación de la página principal se le pasa un objeto de evento como parámetro que contiene información general, como la plataforma del cliente. Usa los datos del objeto de evento para personalizar la creación de la página principal.
Extiende la interfaz del evento de Calendario
Calendario se basa en un activador contextual para determinar qué interfaz (si corresponde) mostrar cuando el usuario edita un evento del Calendario. Cuando se activa el activador, se ejecuta la función de activación contextual especificada por el campo calendar.eventOpenTrigger en el manifiesto del complemento.
Implementa la función que se nombra en el campo calendar.eventOpenTrigger. Esta función acepta un objeto de evento como argumento y debe devolver un solo objeto Card o un array de objetos Card para que Calendar los muestre mientras el usuario tiene el evento abierto.
Objetos de eventos
Se crea un objeto de evento y se pasa a la función de activación contextual calendar.eventOpenTrigger cuando un usuario abre un evento de Calendario.
La función de activación puede usar la información de este objeto de evento para determinar cómo construir tarjetas de complementos o controlar el comportamiento del complemento. Los objetos de eventos también se crean y se pasan a las funciones de homepageTrigger cuando se abre un complemento por primera vez y cuando el usuario hace clic en widgets interactivos o los selecciona.
La estructura completa de los objetos de evento se describe en Objetos de evento. Cuando Calendario es la app host del complemento, los objetos de eventos de interacción con widgets y activadores contextuales incluyen el campo objeto de evento de Calendario, que contiene información específica del cliente de Calendario.
Actualiza eventos del Calendario
Además del calendar.eventOpenTrigger contextual que se activa cuando un usuario abre un evento del Calendario para editarlo, también puedes definir un calendar.eventUpdateTrigger que se active cuando el usuario actualiza y guarda un evento del Calendario.
Este activador solo se activa si el usuario realiza uno o más de los siguientes cambios:
- Agrega uno o más asistentes.
- Quita uno o más asistentes.
- Agrega o cambia a otra solución para reuniones.
Cuando se activa este activador, se ejecuta la función de activación especificada por el campo de manifiesto calendar.eventUpdateTrigger. La función se ejecuta antes de que se guarde la edición del evento de Calendar.
Por lo general, el objeto calendar.eventUpdateTrigger se usa para realizar una o más de las siguientes acciones:
- Actualiza la interfaz del evento de Calendario del complemento en respuesta a los cambios que el usuario realice en el evento de Calendario.
- Sincronizar los datos de eventos de calendario con un sistema de terceros, como un sistema de conferencias conectado al Calendario
Si necesitas que tu complemento realice ajustes en los datos de un evento del Calendario (como su lista de asistentes), configura el campo del manifiesto calendar.currentEventAccess del complemento como WRITE o READ_WRITE. Esto también requiere que el complemento tenga el alcance https://www.googleapis.com/auth/calendar.addons.current.event.write.
Agregar soluciones para reuniones
Si mantienes un sistema de reuniones de terceros, puedes integrarlo con Calendario agregando soluciones de reuniones. Anteriormente, esta función estaba en versión beta como complementos de conferencias de Calendario.
Las soluciones de conferencias representan opciones de conferencias de terceros que los usuarios pueden adjuntar a los eventos del Calendario. En la documentación de la Descripción general de la conferencia de terceros, se proporcionan detalles para crear un complemento que agregue nuevas soluciones de conferencia. No es necesario compilar una IU para este tipo de extensión. Las soluciones agregadas aparecen como opciones en el menú desplegable de la IU del evento de Calendario.