Os complementos do Google Workspace podem oferecer interfaces personalizadas quando o usuário vê ou edita agendas e eventos do Google Agenda. Com isso, é possível fornecer ao usuário mais informações relevantes, automatizar tarefas e conectar sistemas de terceiros ao Google Agenda.
Ao criar uma interface de complemento para o Google Agenda, você pode fornecer uma página inicial. Você pode usar a mesma página inicial para vários hosts ou criar uma página específica para o Google Agenda.
Seu complemento também pode definir uma interface que aparece quando o usuário abre um evento do Google Agenda.
Como acessar a IU do complemento
Dependendo de como ele é aberto, um complemento do Google Workspace pode definir a interface da página inicial, uma interface de eventos do Google Agenda, uma interface de seleção de anexos ou essas três opções:
- Se um usuário clicar no ícone do complemento em uma visualização da agenda, o complemento vai executar
a função
calendar.homepageTrigger
correspondente (se houver). Essa função cria e retorna um cartão de página inicial ao Google Agenda para exibição. Se nenhuma funçãocalendar.homepageTrigger
for definida, um card genérico de página inicial vai ser mostrado. - Se o usuário abrir um evento do Agenda e clicar no ícone de complemento, ou
se o complemento for aberto ao abrir um evento, o complemento
vai executar a função
eventOpenTrigger
correspondente, se houver. Essa função cria a interface de eventos do Agenda do complemento e retorna ao Google Agenda para exibição. - Se o complemento definir uma função
eventAttachmentTrigger
, ele será exibido como um provedor de anexo quando o usuário clicar em Adicionar anexo ao editar um evento do Google Agenda. Quando o complemento é selecionado, a funçãoeventAttachmentTrigger
cria a interface de seleção de anexo do complemento e a retorna ao Google Agenda para exibição.
Como criar a interface do complemento Agenda
Você pode estender o Google Agenda com um complemento do Google Workspace seguindo estas etapas:
- Decida se você quer que seu complemento tenha uma página inicial específica do Google Agenda. Decida também se você quer oferecer uma interface personalizada enquanto o usuário estiver editando eventos do Google Agenda.
- Adicione os campos
addOns.common
eaddOns.calendar
apropriados ao manifesto do projeto de script de complemento, incluindo todos os escopos necessários. - Se você estiver fornecendo uma
página inicial específica do Google Agenda,
implemente a
função
calendar.homepageTrigger
para criar essa interface. Também é possível usar a interfacecommon.homepageTrigger
para vários hosts do Google Workspace. - Se você estiver fornecendo uma interface de evento do Google Agenda, implemente uma
função
calendar.eventOpenTrigger
para criar essa interface. Consulte Como estender a interface de eventos do Google Agenda para mais detalhes. - Implemente as funções de callback associadas e necessárias para responder às interações da IU do usuário, como cliques em botões.
Páginas iniciais do Google Agenda
É possível exibir as páginas iniciais dos complementos do Google Workspace no Google Agenda.
Para mostrar a página inicial comum do complemento no Google Agenda, verifique se há
um campo addOns.calendar
no manifesto do complemento.
Se preferir, adicione um
calendar.homepageTrigger
ao manifesto do complemento para fornecer uma página inicial específica para o Google Agenda.
Em ambos os casos, é necessário 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 necessário. 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 acionador da página inicial recebe um
objeto de evento
como um 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.
Extensão da interface de eventos do Google Agenda
O Google Agenda usa um acionador contextual para determinar qual interface
(se houver) será exibida quando o usuário editar um evento do Google Agenda. Quando o acionador
é disparado, ele executa a função de acionador 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 o Google Agenda exibir enquanto o usuário estiver com o evento aberto.
Objetos de evento
Um objeto de evento é criado e
transmitido para a função de gatilho contextual
calendar.eventOpenTrigger
quando um usuário abre
um evento do Google Agenda. A função de acionamento pode usar as informações nesse objeto de evento para determinar como criar cartões de complementos ou controlar o comportamento do complemento. Os objetos de evento também são criados e transmitidos para as 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 o Agenda é o app host de ação do complemento, os objetos de evento de interação do gatilho contextual e do widget incluem o campo objeto de evento do Agenda que carrega informações do cliente específicas do Agenda.
Atualização de eventos do Google Agenda
Além do
calendar.eventOpenTrigger
contextual que é acionado quando um usuário abre
um evento do Google Agenda para edição, você também pode definir um
calendar.eventUpdateTrigger
que é acionado quando o usuário atualiza e salva um evento do Google Agenda. Esse acionador só
será disparado 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 é disparado, ele executa a
função de acionador especificada pelo
campo de manifesto
calendar.eventUpdateTrigger
. A função é executada antes de a edição do evento do Google Agenda ser salva.
O calendar.eventUpdateTrigger
normalmente é usado para realizar uma ou mais das seguintes ações:
- Atualize a interface de evento do Agenda do complemento em resposta às alterações do usuário no evento do Agenda.
- sincronizar dados de eventos do Google Agenda com um sistema de terceiros, como um sistema de videoconferência conectado ao Google Agenda;
Se você precisar que seu complemento faça ajustes nos dados de um evento do Google Agenda (como
a lista de participantes), defina o campo de manifesto
calendar.currentEventAccess
do complemento como WRITE
ou READ_WRITE
. Isso também
exige que o complemento tenha o
escopo
https://www.googleapis.com/auth/calendar.addons.current.event.write
.
Como adicionar soluções de videoconferência
As soluções de videoconferência representam opções de videoconferência de terceiros que os usuários podem anexar aos eventos do Google Agenda. A documentação Visão geral de videoconferência de terceiros fornece detalhes sobre como criar um complemento que adiciona novas soluções de videoconferência. Não é necessário criar uma IU para esse tipo de extensão. As soluções adicionadas simplesmente aparecem como opções no menu suspenso da IU de eventos do Google Agenda.