Os complementos do Google Workspace podem fornecer interfaces personalizadas quando o usuário está visualizando ou editando agendas e eventos do Agenda. Isso permite fornecer ao usuário mais informações relevantes, automatizar tarefas e conectar sistemas de terceiros ao Google Agenda.
Ao criar uma interface de complemento do Google Workspace para o Agenda, você pode fornecer uma página inicial. Você pode usar a mesma página inicial para vários hosts ou criar uma específica para o Google Agenda.
Seu complemento também pode definir uma interface que aparece quando o usuário tem um evento da Agenda aberto.
Acessar a interface do complemento
Sua interface pode aparecer de várias maneiras, dependendo do contexto. Por exemplo, um complemento pode definir uma interface da página inicial, uma interface de evento da Agenda, uma interface de seleção de anexos ou todas as três:
- Se um usuário clicar no ícone do complemento em uma visualização de calendário, o complemento vai executar a função
calendar.homepageTriggercorrespondente (se houver). Essa função cria e retorna um card da página inicial para o Google Agenda. Se nenhuma funçãocalendar.homepageTriggerfor definida, um card genérico da página inicial será exibido. - Se o usuário abrir um evento da Agenda e clicar no ícone do complemento ou se o complemento estiver aberto quando o usuário abrir um evento, o complemento vai executar a função
eventOpenTriggercorrespondente (se houver). Essa função cria a interface de eventos da agenda do complemento e retorna ao Google Agenda para exibição. - Se o complemento definir uma função
eventAttachmentTrigger, ele vai aparecer como um provedor de anexos quando o usuário clicar em Adicionar anexo ao editar um evento da Agenda. Quando o complemento é selecionado, a funçãoeventAttachmentTriggercria a interface de seleção de anexos do complemento e a retorna ao Google Agenda para exibição.
Criar a interface do complemento da Agenda
Siga estas etapas para criar sua interface. Para estender o Google Agenda com um complemento do Google Workspace, siga estas etapas:
- Decida se você quer que o complemento tenha uma página inicial específica do Google Agenda. Decida também se você quer fornecer uma interface personalizada enquanto o usuário edita eventos da Agenda.
- Adicione os campos
addOns.commoneaddOns.calendarapropriados ao manifesto do projeto de script do complemento, incluindo os escopos necessários. - Se você estiver fornecendo uma página inicial específica do Google Agenda, implemente a função
calendar.homepageTriggerpara criar essa interface. Também é possível usar a interfacecommon.homepageTriggerpara vários aplicativos host. - Se você estiver fornecendo uma interface de eventos da Agenda, implemente uma
função
calendar.eventOpenTriggerpara criar essa interface. Consulte Como estender a interface de eventos do Google Agenda para mais detalhes. - Implemente as funções de callback associadas necessárias para responder às interações do usuário na interface, como cliques em botões.
Páginas iniciais do Google Agenda
Os complementos oferecem suporte à exibição de páginas iniciais de complementos do Google Workspace. Para mostrar a página inicial comum do complemento no Google Agenda, verifique se há um campo addOns.calendar no manifesto do complemento.
Como alternativa, adicione um
calendar.homepageTrigger
ao manifesto do complemento para fornecer uma
página inicial específica da Agenda.
Em qualquer caso, você precisa fornecer o nome de uma função de gatilho da página inicial no projeto de script do
complemento. Essa função é
chamada automaticamente para criar a página inicial do Google Agenda quando ela é
necessária. Implemente essa função para criar e retornar um único
Card ou uma matriz de
objetos Card que compõem a
página inicial. A função de acionamento da página inicial recebe um objeto de evento como parâmetro que contém algumas informações gerais, como a plataforma do cliente. Use os dados do objeto de evento para personalizar a construção da página inicial.
Estender a interface de eventos do Google Agenda
O Google Agenda usa um gatilho contextual para determinar qual interface (se houver) mostrar quando o usuário edita um evento da Agenda. Quando o gatilho é disparado, ele executa a função de gatilho contextual
especificada pelo campo
calendar.eventOpenTrigger
no manifesto do complemento.
Implemente a função nomeada no campo
calendar.eventOpenTrigger. Essa função aceita um objeto de evento como argumento e precisa retornar um único objeto Card ou uma matriz de objetos Card para que o Google Agenda mostre enquanto o usuário tiver o evento aberto.
Objetos de evento
Um objeto de evento é criado e transmitido para a função de acionamento contextual calendar.eventOpenTrigger quando um usuário abre um evento da Agenda.
A função de acionamento pode usar as informações nesse objeto de evento para determinar como construir cards de complemento ou controlar o comportamento do complemento. Objetos de evento também são criados e
transmitidos para
funções homepageTrigger
quando um complemento é aberto pela primeira vez e quando o
usuário clica ou seleciona widgets interativos.
A estrutura completa dos objetos de evento é descrita em Objetos de evento. Quando a Agenda é o app host do complemento, os objetos de evento de interação de widget e gatilho contextual incluem o campo objeto de evento da Agenda, que contém informações específicas do cliente da Agenda.
Atualizar eventos da agenda
Além do
calendar.eventOpenTrigger
contextual que é acionado quando um usuário abre um evento da Agenda para edição, você
também pode definir um
calendar.eventUpdateTrigger
que é acionado quando o usuário atualiza e salva um evento da Agenda.
Esse gatilho só é acionado se o usuário fizer uma ou mais das seguintes edições:
- Adiciona um ou mais participantes.
- Remove um ou mais participantes.
- Adiciona ou muda para outra solução de videoconferência.
Quando esse gatilho é disparado, ele executa a função especificada pelo campo
calendar.eventUpdateTrigger
do manifesto. A função é executada antes que a edição do evento da Agenda seja
salva.
O
calendar.eventUpdateTrigger
é usado para fazer uma ou mais das seguintes ações:
- Atualize a interface do evento da agenda do complemento em resposta às mudanças feitas pelo usuário no evento da agenda.
- Sincronize os dados de eventos da Agenda com um sistema de terceiros, como um sistema de videoconferências conectado à Agenda.
Se você precisar que o complemento faça ajustes nos dados de um evento da Agenda (como a lista de convidados), defina o campo de manifesto calendar.currentEventAccess do complemento como WRITE ou READ_WRITE. Isso também exige que o
complemento tenha o
https://www.googleapis.com/auth/calendar.addons.current.event.write
escopo.
Adicionar soluções de videoconferência
Se você tiver um sistema de videoconferência de terceiros, poderá integrá-lo ao Agenda adicionando soluções de videoconferência. Esse recurso estava anteriormente na versão Beta como Complementos de videoconferência do Google Agenda.
As soluções de videoconferência representam opções de terceiros que os usuários podem anexar a eventos da Agenda. A documentação Visão geral das conferências de terceiros explica como criar um complemento que adiciona novas soluções de conferência. Não é necessário criar uma interface para esse tipo de extensão. As soluções adicionadas aparecem como opções no menu suspenso da interface de eventos do Google Agenda.