Neste tutorial, mostramos como criar um app do Google Chat que responda a incidentes em tempo real. Ao responder a um incidente, o app cria e preenche um espaço do Chat, facilita a resolução de incidentes com mensagens, comandos de barra e caixas de diálogo e usa a IA para resumir a resposta a incidentes em um documento do Documentos Google.
Um incidente é um evento que requer a atenção imediata de uma equipe de pessoas para resolver. Exemplos de incidentes incluem:
- Um caso urgente é criado em uma plataforma de gestão de relacionamento com o cliente (CRM), exigindo que uma equipe de serviço colabore em uma resolução.
- Um sistema fica off-line, alertando um grupo de engenheiros de confiabilidade do site (SREs, na sigla em inglês) para que possam trabalhar juntos e colocá-lo on-line novamente.
- Ocorre um terremoto de alta magnitude, e os socorristas precisam coordenar a resposta.
Para os fins deste tutorial, o alerta de incidente é iniciado quando alguém informa o incidente com um clique de botão a partir de uma página da Web. A página da Web simula um incidente pedindo que os usuários insiram informações básicas sobre ele: título, descrição e endereços de e-mail dos responsáveis pela resposta.
Confira o app do Chat de gerenciamento de incidentes em ação:
-
Figura 2. Notificação de que um espaço do Chat de incidente foi criado. -
Figura 3. O espaço do Chat de resposta a incidentes. -
Figura 4. Resolver o incidente com um comando de barra. -
Figura 5. Caixa de diálogo de resolução de incidentes. -
Figura 6. Resolução de incidentes compartilhado no espaço com um arquivo do Documentos Google. -
Figura 7. O resumo de IA sobre resolução de incidentes no documento Google.
Pré-requisitos
Se você precisar ativar algum destes pré-requisitos para sua organização, peça ao administrador do Google Workspace para ativá-lo:
- Uma conta do Google Workspace com acesso ao Google Chat.
- Ativar o Diretório (compartilhamento de contatos) no Google Workspace. O app do incidente usa o diretório para procurar as informações de contato dos responsáveis pela resposta, como o nome e o endereço de e-mail. Os responsáveis pela resposta a incidentes precisam ser usuários com uma conta do Google Chat na organização do Google Workspace.
Objetivos
- Crie um app do Chat que responda a incidentes.
- Para ajudar os usuários a responder a incidentes, faça o seguinte:
- Criar espaços de resposta a incidentes.
- Postar mensagens resumindo incidentes e respostas.
- Possibilitar a colaboração com recursos interativos do app do Chat.
- Resuma conversas e resoluções com a Vertex AI.
Arquitetura
O diagrama a seguir mostra a arquitetura dos recursos do Google Workspace e do Google Cloud usados pelo app Google Chat de resposta a incidentes.
A arquitetura mostra como o app Google Chat de resposta a incidentes processa um incidente e uma resolução.
Um usuário inicia um incidente de um site externo hospedado no Apps Script.
O site envia uma solicitação HTTP assíncrona para o app Google Chat, também hospedado no Apps Script.
O app Google Chat de resposta a incidentes processa a solicitação:
O serviço do SDK Admin do Apps Script recebe informações dos membros da equipe, como ID do usuário e endereço de e-mail.
Com um conjunto de solicitações HTTP para a API Chat usando o serviço Advanced Chat do Apps Script, o app Google Chat de resposta a incidentes cria um espaço do Chat de incidente, o preenche com membros da equipe e envia uma mensagem para o espaço.
Os membros da equipe discutem o incidente no espaço do Chat.
Um membro da equipe invoca um comando de barra para sinalizar uma resolução para o incidente.
Uma chamada HTTP para a API do Chat que usa o serviço avançado de chat do Apps Script lista todas as mensagens do espaço do Chat.
A Vertex AI recebe as mensagens listadas e gera um resumo.
O serviço
DocumentApp
do Apps Script cria um documento do Documentos e adiciona o resumo da Vertex AI a ele.O app Google Chat de resposta a incidentes chama a API Chat para enviar uma mensagem com um link para o documento de resumo do Documentos Google.
prepare o ambiente
Nesta seção, mostramos como criar e configurar um projeto do Google Cloud para o app do Chat.
Criar um projeto do Google Cloud
Console do Google Cloud
- No console do Google Cloud, acesse Menu > IAM e administrador > Criar um projeto.
-
No campo Nome do projeto, digite um nome descritivo para o projeto.
Opcional: para mudar o ID do projeto, clique em Editar. O ID do projeto não pode ser alterado após a criação dele. Portanto, escolha um ID que atenda às suas necessidades durante a vida útil do projeto.
- No campo Local, clique em Procurar para exibir possíveis locais para seu projeto. Em seguida, clique em Selecionar.
- Clique em Criar. O console do Google Cloud navega até a página "Painel", e seu projeto é criado em alguns minutos.
CLI da gcloud
Em um dos seguintes ambientes de desenvolvimento, acesse a CLI do Google Cloud ("gcloud"):
-
Cloud Shell: para usar um terminal on-line com a CLI gcloud
já configurada, ative o Cloud Shell.
Ative o Cloud Shell -
Shell local: para usar um ambiente de desenvolvimento local,
instale e
initialize
a CLI gcloud.
Para criar um projeto do Cloud, use o comando "gcloud projects create":gcloud projects create PROJECT_ID
Ativar o faturamento para o projeto do Cloud
Console do Google Cloud
- No console do Google Cloud, acesse Faturamento. Clique em Menu > Faturamento > Meus projetos.
- Em Selecionar uma organização, escolha a organização associada ao seu projeto do Google Cloud.
- Na linha do projeto, abra o menu Ações ( ), clique em Alterar faturamento e escolha a conta do Cloud Billing.
- Clique em Definir conta.
CLI da gcloud
- Para listar as contas de faturamento disponíveis, execute:
gcloud billing accounts list
- Vincule uma conta de faturamento a um projeto do Google Cloud:
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID
Substitua:
PROJECT_ID
é o ID do projeto do Cloud em que você quer ativar o faturamento.BILLING_ACCOUNT_ID
é o ID da conta de faturamento que será vinculada ao projeto do Google Cloud.
Ativar as APIs
Console do Google Cloud
No console do Google Cloud, ative a API Google Chat, a API Google Docs, a API Admin SDK e a API Vertex AI.
Confirme se você está ativando as APIs no projeto correto do Cloud e clique em Próxima.
Confirme se você ativou as APIs corretas e clique em Ativar.
CLI da gcloud
Se necessário, defina o projeto atual do Cloud para aquele que você criou com o comando
gcloud config set project
:gcloud config set project PROJECT_ID
Substitua PROJECT_ID pelo ID do projeto do projeto do Cloud que você criou.
Ative as APIs Google Chat, API Google Docs, API Admin SDK e API Vertex AI com o comando
gcloud services enable
:gcloud services enable chat.googleapis.com docs.googleapis.com admin.googleapis.com aiplatform.googleapis.com
Configurar a autenticação e a autorização
A autenticação e a autorização permitem que o app do Chat acesse recursos no Google Workspace e no Google Cloud para processar uma resposta a incidentes.
Neste tutorial, você publica o app internamente, então não há problema em usar informações de marcador. Antes de publicar o app externamente, substitua as informações do marcador por informações reais para a tela de consentimento.
No console do Google Cloud, acesse Menu > APIs e serviços > Tela de permissão OAuth.
Em Tipo de usuário, selecione Interno e clique em Criar.
Em Nome do app, digite
Incident Management
.Em E-mail para suporte do usuário, selecione seu endereço de e-mail ou um Grupo do Google apropriado.
Em Dados de contato do desenvolvedor, insira seu endereço de e-mail.
Clique em Save and continue.
Clique em Adicionar ou remover escopos. Um painel aparece com uma lista de escopos para cada API ativada no projeto do Cloud.
Em Adicionar escopos manualmente, cole os seguintes escopos:
https://www.googleapis.com/auth/chat.spaces.create
https://www.googleapis.com/auth/chat.memberships
https://www.googleapis.com/auth/chat.memberships.app
https://www.googleapis.com/auth/chat.messages
https://www.googleapis.com/auth/documents
https://www.googleapis.com/auth/admin.directory.user.readonly
https://www.googleapis.com/auth/script.external_request
https://www.googleapis.com/auth/userinfo.email
https://www.googleapis.com/auth/cloud-platform
Clique em Adicionar à tabela.
Clique em Atualizar.
Clique em Save and continue.
Leia o resumo do registro do aplicativo e clique em Voltar para o painel.
crie e implante o app do Chat
Na seção a seguir, você vai copiar e atualizar um projeto inteiro do Apps Script que contém todo o código necessário para o app do Chat. Assim, não é preciso copiar e colar cada arquivo.
Algumas funções incluem sublinhados no final dos nomes, como processSlashCommand_()
de ChatApp.gs
. Ele oculta a função da página da Web de inicialização do incidente quando está aberta em um navegador. Para mais
informações, consulte
Funções privadas.
O Apps Script é compatível com dois tipos de arquivo: scripts .gs
e arquivos .html
. Para respeitar esse suporte, o JavaScript do lado do cliente do app é incluído
nas tags <script />
, e o CSS é incluído nas tags <style />
em
um arquivo HTML.
Outra opção é conferir o projeto inteiro no GitHub.
Aqui está uma visão geral de cada arquivo:
Consts.gs
Define as constantes referenciadas por outros arquivos de código, incluindo o ID do projeto do Cloud, o ID de local da Vertex AI e o ID de comando da barra para fechar um incidente.
Mostrar código do
Consts.gs
ChatApp.gs
Processa eventos de interação do Chat, incluindo mensagens, cliques no cartão, comandos de barra e caixas de diálogo. Responde ao comando de barra
/closeIncident
abrindo uma caixa de diálogo para coletar detalhes de resolução de incidentes. Lê mensagens no espaço chamando o métodospaces.messages.list
na API Chat. Recebe os IDs dos usuários usando o serviço de diretório do SDK Admin no Apps Script.Mostrar código do
ChatApp.gs
ChatSpaceCreator.gs
Recebe os dados do formulário inseridos pelos usuários na página da Web de inicialização do incidente e os usa para configurar um espaço do Chat, criando e preenchendo esse espaço. Em seguida, publica uma mensagem sobre o incidente.
Mostrar código do
ChatSpaceCreator.gs
DocsApi.gs
Chama a API Google Docs para criar um documento do Documentos Google no Google Drive de um usuário e grava um resumo das informações do incidente, criadas em
VertexAiApi.gs
, no documento.Mostrar código do
DocsApi.gs
VertexAiApi.gs
Resume a conversa no espaço do Chat usando a Vertex AI. Esse resumo é postado em um documento criado especialmente em
DocsAPI.gs
.Mostrar código do
VertexAiApi.gs
WebController.gs
Veicula o site de inicialização do incidente.
Mostrar código do
WebController.gs
Index.html
O HTML que compreende o site de inicialização do incidente.
Mostrar código do
Index.html
JavaScript.html
Processa o comportamento do formulário, incluindo envios, erros e limpezas, para o site de inicialização do incidente. Ela é incluída no
Index.html
pela funçãoinclude
personalizada noWebController.gs
.Mostrar código do
JavaScript.html
Stylesheet.html
O CSS do site de inicialização do incidente. É incluído no
Index.html
pela funçãoinclude
personalizada emWebController.gs
.Mostrar código do
Stylesheet.html
Encontrar o número e o ID do projeto do Cloud
No console do Google Cloud, acesse seu projeto do Cloud.
Clique em Configurações e utilitários > Configurações do projeto.
Anote os valores nos campos Número do projeto e ID do projeto. Você os usará nas seções a seguir.
Criar o projeto do Apps Script
Para criar um projeto do Apps Script e conectá-lo ao seu projeto do Cloud:
- Clique no botão a seguir para abrir o projeto do Apps Script Responder a incidentes com o Google Chat.
Abrir o projeto - Clique em Visão geral.
- Na página de visão geral, clique em Fazer uma cópia.
Nomeie sua cópia do projeto do Apps Script:
Clique em Cópia de "Responder a incidentes com o Google Chat".
Em Título do projeto, digite
Incident Management Chat app
.Clique em Renomear.
Na sua cópia do projeto do Apps Script, acesse o arquivo
Consts.gs
e substituaYOUR_PROJECT_ID
pelo ID do seu projeto do Cloud.
Definir o projeto do Cloud do projeto do Apps Script
- No projeto do Apps Script, clique em Configurações do projeto.
- Em Projeto do Google Cloud Platform (GCP), clique em Mudar projeto.
- Em Número do projeto do GCP, cole o número do seu projeto do Cloud.
- Clique em Configurar projeto. O projeto do Cloud e o do Apps Script agora estão conectados.
Criar uma implantação do Apps Script
Agora que todo o código está pronto, implante o projeto do Apps Script. Use o ID de implantação ao configurar o app do Chat no Google Cloud.
No Apps Script, abra o projeto do app de resposta a incidentes.
Clique em Implantar > Nova implantação.
Se Complemento e App da Web ainda não estiverem selecionados, ao lado de Selecionar tipo, clique nos tipos de implantação e selecione Complemento e App da Web.
Em Descrição, insira uma descrição para essa versão, como
Complete version of incident management app
.Em Executar como, selecione Usuário acessando o app da Web.
Em Quem pode acessar, selecione Qualquer pessoa na sua organização do Workspace, em que "sua organização do Workspace" é o nome da organização do Google Workspace.
Selecione Implantar. O Apps Script relata a implantação bem-sucedida e fornece um ID de implantação e um URL para a página da Web de inicialização do incidente.
Anote o URL do app da Web para acessar mais tarde, ao iniciar um incidente. Copie o ID da implantação. Use esse ID ao configurar o app do Chat no console do Google Cloud.
Clique em Concluído.
Configurar o app Chat no console do Google Cloud
Nesta seção, mostramos como configurar a API Google Chat no console do Google Cloud com informações sobre o app do Chat, incluindo o ID da implantação que você acabou de criar do seu projeto do Apps Script.
No console do Google Cloud, clique em Menu > Mais produtos > Google Workspace > Biblioteca de produtos > API Google Chat > Gerenciar > Configuração.
Em Nome do app, digite
Incident Management
.No URL do avatar, digite
https://developers.google.com/chat/images/quickstart-app-avatar.png
.Em Descrição, digite
Responds to incidents.
.Clique no botão Ativar recursos interativos para ativar essa opção.
Em Funcionalidade, selecione Receber mensagens individuais, Participar de espaços e conversas em grupo.
Em Configurações de conexão, selecione Projeto do Apps Script.
Em ID da implantação, cole o ID de implantação do Apps Script que você copiou da implantação do projeto do Apps Script.
Registre um comando de barra que o app Chat totalmente implementado usa:
Em Comandos de barra, clique em Adicionar um comando de barra.
Em Nome, digite
/closeIncident
.Em ID do comando, digite
1
.Em Descrição, digite
Closes the incident being discussed in the space.
Selecione Abre uma caixa de diálogo.
Clique em Concluído. O comando de barra está registrado e listado.
Em Visibilidade, selecione Disponibilizar este app do Chat para pessoas e grupos específicos no Seu domínio do Workspace e digite seu endereço de e-mail.
Em Registros, selecione Registrar erros no Logging.
Clique em Salvar. Uma mensagem de configuração salva será exibida, indicando que o app está pronto para teste.
Teste o app do Chat
Para testar o app do Chat de gerenciamento de incidentes, inicie um incidente na página da Web e verifique se ele funciona conforme o esperado:
Acesse o URL do app da Web de implantação do Apps Script.
Quando o Apps Script pedir permissão para acessar seus dados, clique em Analisar permissões, faça login com uma Conta do Google apropriada no seu domínio do Google Workspace e clique em Permitir.
A página da Web de inicialização do incidente é aberta. Insira as informações do teste:
- Em Título do incidente, digite
The First Incident
. - Opcionalmente, em Responsáveis pela resposta a incidentes, insira os endereços de e-mail de seus colegas responsáveis pela resposta a incidentes. Eles precisam ser usuários com uma conta do Google Chat na sua organização do Google Workspace. Caso contrário, a criação do espaço falhará. Não insira seu próprio endereço de e-mail, porque ele é incluído automaticamente.
- Em Mensagem inicial, digite
Testing the incident management Chat app.
- Em Título do incidente, digite
Clique em Criar espaço do Chat. Uma mensagem
creating space
será exibida.Depois que o espaço é criado, uma mensagem
Space created!
aparece. Clique em Abrir espaço para abrir o espaço no Chat em uma nova guia.Opcionalmente, você e os outros responsáveis pela resposta a incidentes podem enviar mensagens no espaço. O app resume essas mensagens usando a Vertex AI e compartilha um documento de retrospectiva.
Para encerrar a resposta a incidentes e iniciar o processo de resolução, no espaço do Chat, digite
/closeIncident
. Uma caixa de diálogo de gerenciamento de incidentes é aberta.Em Fechar incidente, insira uma descrição para a resolução de incidentes, como
Test complete
.Clique em Fechar incidente.
O app de gerenciamento de incidentes lista as mensagens no espaço, as resume com a Vertex AI, cola o resumo em um documento Google e compartilha o documento no espaço.
Limpar
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste tutorial, recomendamos que você exclua o projeto do Cloud.
- No Console do Google Cloud, acesse a página Gerenciar recursos. Clique em Menu > IAM e administrador > Gerenciar recursos.
- Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
- Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.
Temas relacionados
- Responder perguntas com base nas conversas do Chat com um app Gemini AI Chat
- Gerencie projetos com o Google Chat, a Vertex AI e o Firestore
- O app de resposta a incidentes faz a autenticação usando credenciais de usuário
para chamar APIs e invocar serviços do Google Cloud, como as APIs Chat e Vertex AI.
Isso significa que o usuário que inicializa um incidente precisa ter acesso a esses serviços. Para tornar o app mais robusto, chame a API Vertex AI
como conta de serviço, em vez de usar as credenciais do usuário que invoca
o comando de barra
/closeIncident
. Se precisar de ajuda para configurar uma conta de serviço para a API Vertex AI, consulte Usar uma conta de serviço personalizada.