Bu kılavuzda, list
kaynağının Space
kaynağında nasıl kullanılacağı açıklanmaktadır.
Google Chat API'yi kullanın. Alanları listelemek, sayfalara ayrılmış, filtrelenebilir bir sayfa döndürüyor
alan listesidir.
İlgili içeriği oluşturmak için kullanılan
Space
kaynak
kullanıcıların ve Chat uygulamalarının mesaj gönderebildiği,
dosya paylaşabilir ve ortak çalışabilirsiniz. Birkaç alan türü vardır:
- Doğrudan mesajlar (DM'ler), iki kullanıcı veya bir kullanıcı arasındaki görüşmelerdir. Chat uygulaması
- Grup sohbetleri üç veya daha fazla kullanıcı ile Sohbet uygulamaları.
- Adlandırılmış alanlar kullanıcıların mesaj gönderdiği, dosya paylaştığı, ve ortak çalışma yapabilirsiniz.
Şununla alanları listeleme: uygulama kimlik doğrulaması Chat uygulamasının erişebildiği alanları listeler. Giriş şunun olduğu alanlar: Kullanıcı kimlik doğrulaması Kimliği doğrulanmış kullanıcının erişebildiği alanları listeler.
Ön koşullar
Python
- İşletme veya Kuruluş Şuna erişimi olan Google Workspace hesabı: Google Chat.
- Ortamınızı ayarlayın:
- Bir Google Cloud projesi oluşturun.
- OAuth izin ekranını yapılandırın.
- Google Chat API'yi etkinleştirin ve yapılandırın. Bunun için bir ad girin, Chat uygulamanızın simgesi ve açıklaması.
- Şunu yükleyin: Python Google API İstemci Kitaplığı.
- Google Chat API'nizde nasıl kimlik doğrulama yapmak istediğinize bağlı olarak erişim kimlik bilgilerini oluşturun
istek:
- Chat kullanıcısı olarak kimliğinizi doğrulamak için:
OAuth istemci kimliği oluştur
kimlik bilgilerini iki kez tıklayın ve kimlik bilgilerini
client_secrets.json
dosyasını yerel dizininize ekleyin. - Chat uygulaması olarak kimliğinizi doğrulamak için:
hizmet hesabı oluştur
kimlik bilgilerini iki kez tıklayın ve kimlik bilgilerini
credentials.json
.
- Chat kullanıcısı olarak kimliğinizi doğrulamak için:
OAuth istemci kimliği oluştur
kimlik bilgilerini iki kez tıklayın ve kimlik bilgilerini
- Kimlik doğrulamasını kullanıcı olarak mı yoksa Chat uygulaması.
Node.js
- İşletme veya Kuruluş Şuna erişimi olan Google Workspace hesabı: Google Chat.
- Ortamınızı ayarlayın:
- Bir Google Cloud projesi oluşturun.
- OAuth izin ekranını yapılandırın.
- Google Chat API'yi etkinleştirin ve yapılandırın. Bunun için bir ad girin, Chat uygulamanızın simgesi ve açıklaması.
- Şunu yükleyin: Node.js Google API İstemci Kitaplığı.
- Google Chat API'nizde nasıl kimlik doğrulama yapmak istediğinize bağlı olarak erişim kimlik bilgilerini oluşturun
istek:
- Chat kullanıcısı olarak kimliğinizi doğrulamak için:
OAuth istemci kimliği oluştur
kimlik bilgilerini iki kez tıklayın ve kimlik bilgilerini
client_secrets.json
dosyasını yerel dizininize ekleyin. - Chat uygulaması olarak kimliğinizi doğrulamak için:
hizmet hesabı oluştur
kimlik bilgilerini iki kez tıklayın ve kimlik bilgilerini
credentials.json
.
- Chat kullanıcısı olarak kimliğinizi doğrulamak için:
OAuth istemci kimliği oluştur
kimlik bilgilerini iki kez tıklayın ve kimlik bilgilerini
- Kimlik doğrulamasını kullanıcı olarak mı yoksa Chat uygulaması.
Kullanıcı kimlik doğrulamasıyla alanları listeleyin
Google Chat'te alanları listelemek için istek:
- Entegre
kullanıcı kimlik doğrulaması,
chat.spaces.readonly
veyachat.spaces
yetkilendirme kapsamını belirtin. - Şunu çağırın:
list
yöntem uygulamasındaSpace
kaynak.
Aşağıdaki örnekte adlandırılmış alanlar ve grup sohbetleri listelenmektedir (doğrudan değil). kullanıcı tarafından görülebilecek filtre sayısını gösterir:
Python
- Çalışma dizininizde
chat_space_list.py
adlı bir dosya oluşturun. Aşağıdaki kodu
chat_space_list.py
bölümüne ekleyin:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.spaces.readonly"] def main(): ''' Authenticates with Chat API via user credentials, then lists named spaces and group chats (but not direct messages) visible to the authenticated user. ''' # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().list( # An optional filter that returns named spaces or unnamed group chats, # but not direct messages (DMs). filter='spaceType = "SPACE" OR spaceType = "GROUP_CHAT"' ).execute() # Prints the returned list of spaces. print(result) if __name__ == '__main__': main()
Çalışma dizininizde örneği derleyin ve çalıştırın:
python3 chat_space_list.py
Node.js
- Çalışma dizininizde
list-spaces.js
adlı bir dosya oluşturun. Aşağıdaki kodu
list-spaces.js
bölümüne ekleyin:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * List Chat spaces. * @return {!Promise<!Object>} */ async function listSpaces() { const scopes = [ 'https://www.googleapis.com/auth/chat.spaces.readonly', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.list({ filter: 'spaceType = "SPACE" OR spaceType = "GROUP_CHAT"' }); } listSpaces().then(console.log);
Çalışma dizininizde örneği çalıştırın:
node list-spaces.js
Chat API, adlandırılmış alanlar ve grup sohbetlerinden oluşan sayfalara ayrılmış bir dizi.
Uygulama kimlik doğrulamasıyla alanları listeleyin
Google Chat'te alanları listelemek için istek:
- Entegre
uygulama kimlik doğrulaması,
chat.bot
yetkilendirme kapsamını belirtin. - Şunu çağırın:
list
yöntem uygulamasındaSpace
kaynak.
Aşağıdaki örnekte adlandırılmış alanlar ve grup sohbetleri listelenmektedir (doğrudan değil). Chat uygulamasında görünür:
Python
- Çalışma dizininizde
chat_space_list_app.py
adlı bir dosya oluşturun. Aşağıdaki kodu
chat_space_list_app.py
bölümüne ekleyin:from google.oauth2 import service_account from apiclient.discovery import build # Specify required scopes. SCOPES = ['https://www.googleapis.com/auth/chat.bot'] # Specify service account details. CREDENTIALS = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build the URI and authenticate with the service account. chat = build('chat', 'v1', credentials=CREDENTIALS) # Use the service endpoint to call Chat API. result = chat.spaces().list( # An optional filter that returns named spaces or unnamed # group chats, but not direct messages (DMs). filter='spaceType = "SPACE" OR spaceType = "GROUP_CHAT"' ).execute() print(result)
Çalışma dizininizde örneği derleyin ve çalıştırın:
python3 chat_space_list_app.py
Node.js
- Çalışma dizininizde
app-list-spaces.js
adlı bir dosya oluşturun. Aşağıdaki kodu
app-list-spaces.js
bölümüne ekleyin:const chat = require('@googleapis/chat'); /** * List Chat spaces. * @return {!Promise<!Object>} */ async function listSpaces() { const scopes = [ 'https://www.googleapis.com/auth/chat.bot', ]; const auth = new chat.auth.GoogleAuth({ scopes, keyFilename: 'credentials.json', }); const authClient = await auth.getClient(); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.list({ filter: 'spaceType = "SPACE" OR spaceType = "GROUP_CHAT"' }); } listSpaces().then(console.log);
Çalışma dizininizde örneği çalıştırın:
node app-list-spaces.js
Chat API, sayfalara ayrılmış bir dizi alan döndürür.
Sayfalara ayırma veya listeyi filtreleme
Google Chat'te alanları listelemek için aşağıdaki isteğe bağlı belgeleri iletin listelenen alanları sayfalandırmayı özelleştirmek veya filtrelemek için sorgu parametrelerini tıklayın:
pageSize
: Döndürülecek maksimum boşluk sayısı. Hizmet geri dönebilir daha az olmalıdır. Belirtilmezse en fazla 100 alan döndürülür. İlgili içeriği oluşturmak için kullanılan maksimum değer 1.000'dir; 1.000'in üzerindeki değerler otomatik olarak 1.000.pageToken
: Önceki bir alan liste çağrısından alınan sayfa jetonu. Sonraki sayfayı almak için bu jetonu sağlayın. Sayfalara ayırırken, filtre değerinin, sayfa jetonunu sağlayan çağrıyla eşleşmesi gerekir. Doğru cevap beklenmedik sonuçlara yol açabilir.filter
: Sorgu filtresi. Desteklenen sorgu ayrıntıları için bkz.spaces.list
yöntemini kullanın.
İlgili konular
- Alan oluşturun.
- Alan oluşturun.
- Bir alanla ilgili ayrıntıları öğrenin.
- Alan güncelleme
- Alanı silebilirsiniz.
- Doğrudan mesaj alanı bulun.