Usługa Zaawansowany Chat umożliwia korzystanie z interfejsu Google Chat API w Apps Script. Ten interfejs API umożliwia skryptom znajdowanie, tworzenie i modyfikowanie pokoi w Chat, dodawanie i usuwanie użytkowników z pokoi oraz odczytywanie i publikowanie wiadomości tekstowych, kart, załączników i reakcji.
Wymagania wstępne
- Aplikacja Google Chat w Apps Script skonfigurowana na stronie konfiguracji interfejsu Chat API w Google Cloud Console. Projekt Apps Script aplikacji musi korzystać ze standardowego projektu Google Cloud zamiast domyślnego projektu utworzonego automatycznie dla projektów Apps Script. Aby utworzyć zgodną aplikację Google Chat, zapoznaj się z artykułem Tworzenie aplikacji Google Chat za pomocą Google Apps Script.
- Uwierzytelnianie skonfigurowane dla aplikacji Google Chat. Wykonywanie działania w imieniu użytkownika wymaga uwierzytelnienia użytkownika. Wykonanie działania jako aplikacji do obsługi czatu wymaga uwierzytelnienia aplikacji za pomocą konta usługi. Aby sprawdzić, jaką formę uwierzytelniania obsługuje metoda interfejsu Google Chat API, zapoznaj się z artykułem Rodzaje wymaganego uwierzytelniania w przypadku wywołań interfejsu Google Chat API.
Dokumentacja
Więcej informacji o tej usłudze znajdziesz w dokumentacji interfejsu Chat API. Podobnie jak wszystkie usługi zaawansowane w Apps Script, usługa Chat korzysta z tych samych obiektów, metod i parametrów co publiczny interfejs API.
Przykładowy kod
Te przykłady pokazują, jak za pomocą usługi zaawansowanej wykonywać typowe działania w interfejsie Google Chat API.
Opublikuj wiadomość z danymi logowania użytkownika
Poniższy przykład pokazuje, jak opublikować wiadomość w pokoju na czacie w imieniu użytkownika.
Dodaj zakres autoryzacji
chat.messages.create
do plikuappsscript.json
projektu Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.create" ]
Dodaj do kodu projektu Apps Script funkcję podobną do tej:
Wysyłanie wiadomości z informacjami o aplikacji
Poniższy przykład pokazuje, jak opublikować wiadomość na czacie w imieniu aplikacji. Korzystanie z zaawansowanej usługi Chat z kontem usługi nie wymaga określania zakresów autoryzacji w appsscript.json
. Więcej informacji o uwierzytelnianiu za pomocą kont usługi znajdziesz w artykule Uwierzytelnianie jako aplikacja Google Chat.
Uzyskiwanie dostępu do pokoju
Poniższy przykład pokazuje, jak uzyskać informacje o przestrzeni w Chat.
Dodaj zakres autoryzacji
chat.spaces.readonly
do plikuappsscript.json
projektu Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.readonly" ]
Dodaj do kodu projektu Apps Script funkcję podobną do tej:
Utwórz pokój
Poniższy przykład pokazuje, jak utworzyć pokój w Google Chat.
Dodaj zakres autoryzacji
chat.spaces.create
do plikuappsscript.json
projektu Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.create" ]
Dodaj do kodu projektu Apps Script funkcję podobną do tej:
Wyświetlanie listy subskrypcji
Ten przykład pokazuje, jak wyświetlić listę wszystkich użytkowników pokoju w Google Chat.
Dodaj zakres autoryzacji
chat.memberships.readonly
do plikuappsscript.json
projektu Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.memberships.readonly" ]
Dodaj do kodu projektu Apps Script funkcję podobną do tej:
Rozwiązywanie problemów
Jeśli zobaczysz znak Error 400: invalid_scope
z komunikatem o błędzie Some requested scopes cannot be shown
, oznacza to, że w pliku appsscript.json
projektu Apps Script nie określono żadnych zakresów autoryzacji. W większości przypadków Apps Script automatycznie określa zakresy, których potrzebuje skrypt, ale gdy używasz usługi zaawansowanej Google Chat, musisz ręcznie dodać zakresy autoryzacji używane przez skrypt do pliku manifestu projektu Apps Script. Zobacz Ustawianie jawnych zakresów.
Aby naprawić ten błąd, dodaj odpowiednie zakresy autoryzacji do pliku appsscript.json
projektu Apps Script w ramach tablicy oauthScopes
. Aby na przykład wywołać metodę
spaces.messages.create
, dodaj ten kod:
"oauthScopes": [
"https://www.googleapis.com/auth/chat.messages.create"
]
Limity i kwestie do rozważenia
Usługa Zaawansowany czat nie obsługuje:
- Metoda interfejsu Chat API
media.download
. - Metody interfejsu Chat API dostępne w wersji przedpremierowej dla deweloperów
Aby pobrać załącznik do wiadomości lub wywołać metodę w wersji przedpremierowej, użyj
UrlFetchApp
.