Gerenciar espaços, participantes e mensagens do Chat.
O Serviço avançado de chat permite usar a API Google Chat no Google Apps Script. Essa API permite que os scripts encontrem, criem e modifiquem espaços do Chat, adicionem ou removam participantes e leiam ou postem mensagens com texto, cards, anexos e reações.
Pré-requisitos
- Um app do Google Chat do Apps Script configurado na página de configuração da API Chat no console do Google Cloud. O projeto do Apps Script do app precisa usar um projeto padrão do Google Cloud em vez do padrão criado automaticamente para projetos do Apps Script. Para criar um app do Google Chat compatível, consulte Criar um app do Google Chat com o Google Apps Script.
- Autenticação configurada para o app Chat. A realização de uma ação em nome de um usuário exige a autenticação do usuário. Para realizar uma ação como o app Chat, é necessário autenticar o app com uma conta de serviço. Para verificar qual forma de autenticação um método da API Chat oferece suporte, consulte Tipos de autenticação necessários para chamadas da API Google Chat.
Esse é um serviço avançado que você precisa ativar antes de usar.
Referência
Para mais informações sobre esse serviço, consulte a documentação de referência da API Chat. Como todos os serviços avançados no Apps Script, o serviço Chat usa os mesmos objetos, métodos e parâmetros da API pública.
Exemplo de código
Estes exemplos mostram como realizar ações comuns da API Google Chat usando o serviço avançado.
Postar uma mensagem com credenciais de usuário
O exemplo a seguir demonstra como postar uma mensagem em um espaço do Chat em nome do usuário.
Adicione o escopo de autorização
chat.messages.createao arquivoappsscript.jsondo projeto do Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.create" ]Adicione uma função como esta ao código do projeto do Apps Script:
Postar uma mensagem com credenciais do app
O exemplo a seguir demonstra como postar uma mensagem em um espaço do Chat em nome do app. O uso do serviço avançado de chat com uma conta de serviço não exige que você especifique escopos de autorização em appsscript.json. Para mais detalhes sobre
a autenticação com contas de serviço, consulte
Autenticar como um app do Google Chat.
Receber um espaço
O exemplo a seguir demonstra como receber informações sobre um espaço do Chat.
Adicione o escopo de autorização
chat.spaces.readonlyao arquivoappsscript.jsondo projeto do Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.readonly" ]Adicione uma função como esta ao código do projeto do Apps Script:
Criar um espaço
O exemplo a seguir demonstra como criar um espaço do Chat.
Adicione o escopo de autorização
chat.spaces.createao arquivoappsscript.jsondo projeto do Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.create" ]Adicione uma função como esta ao código do projeto do Apps Script:
Listar associações
O exemplo a seguir demonstra como listar todos os participantes de um espaço do Chat.
Adicione o escopo de autorização
chat.memberships.readonlyao arquivoappsscript.jsondo projeto do Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.memberships.readonly" ]Adicione uma função como esta ao código do projeto do Apps Script:
Resolver problemas
Se você encontrar Error 400: invalid_scope com a mensagem de erro Some requested scopes cannot be shown, isso significa que você não especificou nenhum escopo de autorização no arquivo appsscript.json do projeto do Apps Script. Na maioria dos casos, o Apps Script determina automaticamente quais escopos um script precisa, mas, ao usar o serviço avançado de chat, é necessário adicionar manualmente os escopos de autorização que o script usa ao arquivo de manifesto do projeto do Apps Script. Consulte
Definir escopos explícitos.
Para resolver o erro, adicione os escopos de autorização apropriados ao arquivo appsscript.json do projeto do Apps Script como parte da matriz oauthScopes. Por exemplo, para chamar o
spaces.messages.create
método, adicione o seguinte:
"oauthScopes": [
"https://www.googleapis.com/auth/chat.messages.create"
]
Limites e considerações
O Serviço avançado de chat não oferece suporte a:
- O método da API Chat
media.download. - Métodos da API Chat disponíveis em prévia para desenvolvedores
Para fazer o download de um anexo de mensagem ou chamar um método de prévia para desenvolvedores, use
UrlFetchApp em vez disso.