Zaawansowany czat pozwala korzystać z interfejsu Google Chat API w Apps Script. Ten interfejs API umożliwia skryptom znajdowanie, tworzenie i modyfikowanie pokoi czatu, dodawanie i usuwanie użytkowników pokoi oraz odczytywanie lub publikowanie wiadomości z tekstem, kartami, załącznikami i reakcjami.
Wymagania wstępne
- aplikację Apps Script Google Chat skonfigurowaną na stronie konfiguracji interfejsu Chat API w konsoli Google Cloud, Projekt Apps Script aplikacji musi korzystać ze standardowego projektu Google Cloud, a nie z domyślnego projektu utworzonego automatycznie dla projektów Apps Script. Informacje o tworzeniu zgodnej aplikacji Google Chat znajdziesz w artykule Tworzenie aplikacji Google Chat przy użyciu Apps Script.
- Skonfigurowano uwierzytelnianie dla aplikacji Google Chat. Wykonywanie czynności w imieniu użytkownika wymaga uwierzytelniania użytkownika. Wykonanie działania w trybie aplikacji Google Chat wymaga uwierzytelniania aplikacji za pomocą konta usługi. Aby sprawdzić, jaką formę uwierzytelniania obsługuje metoda Google Chat API, przeczytaj artykuł Typy wymaganych 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 Google Chat używa tych samych obiektów, metod i parametrów co publiczny interfejs API.
Przykładowy kod
Te przykłady pokazują, jak wykonywać typowe działania w interfejsie Google Chat API za pomocą usługi zaawansowanej.
Opublikuj wiadomość z danymi logowania użytkownika
Przykład poniżej pokazuje, jak opublikować wiadomość w pokoju czatu 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 funkcję podobną do tej do kodu projektu Apps Script:
Opublikuj wiadomość z danymi logowania do aplikacji
Przykład poniżej pokazuje, jak opublikować wiadomość w pokoju czatu w imieniu aplikacji. Używanie zaawansowanej usługi Google 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 aplikacji Google Chat.
Znajdź pokój
Z przykładu poniżej dowiesz się, jak uzyskać informacje o pokoju czatu.
Dodaj zakres autoryzacji
chat.spaces.readonly
do plikuappsscript.json
projektu Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.readonly" ]
Dodaj funkcję podobną do tej do kodu projektu Apps Script:
Utwórz pokój
Przykład poniżej pokazuje, jak utworzyć pokój czatu.
Dodaj zakres autoryzacji
chat.spaces.create
do plikuappsscript.json
projektu Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.create" ]
Dodaj funkcję podobną do tej do kodu projektu Apps Script:
Wyświetlanie listy członków
Poniższy przykład pokazuje, jak wyświetlić listę wszystkich użytkowników pokoju czatu.
Dodaj zakres autoryzacji
chat.memberships.readonly
do plikuappsscript.json
projektu Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.memberships.readonly" ]
Dodaj funkcję podobną do tej do kodu projektu Apps Script:
Rozwiązywanie problemów
Jeśli Error 400: invalid_scope
z komunikatem o błędzie Some requested scopes cannot be shown
wyświetla się, oznacza to, że w pliku appsscript.json
projektu Apps Script nie zostały określone żadne zakresy autoryzacji. W większości przypadków Apps Script automatycznie określa zakresy, których potrzebuje skrypt. Jeśli jednak korzystasz z usługi zaawansowanej Google Chat, musisz ręcznie dodać zakresy autoryzacji używane przez skrypt do pliku manifestu projektu Apps Script. Zobacz Ustawianie zakresów jawnych.
Aby naprawić ten błąd, dodaj odpowiednie zakresy autoryzacji do pliku appsscript.json
projektu Apps Script w tablicy oauthScopes
. Aby np. wywołać metodę spaces.messages.create
, dodaj ten kod:
"oauthScopes": [
"https://www.googleapis.com/auth/chat.messages.create"
]
Ograniczenia i uwagi
Usługa czatu zaawansowanego nie obsługuje:
- metoda Google Chat API
media.download
, - Metody Chat API dostępne w wersji przedpremierowej dla programistów
Aby pobrać załącznik do wiadomości lub wywołać metodę podglądu dewelopera, użyj metody UrlFetchApp
.