Bu kılavuzda, alandaki kullanıcıları ve Chat uygulamasını alandaki üyeliklerin sayfalandırılmış, filtrelenebilir bir listesi olarak listelemek için Google Chat API'nin membership
kaynağındaki list
yönteminin nasıl kullanılacağı açıklanmaktadır. Uygulama kimlik doğrulamasıyla giriş yapma üyelikleri, Chat uygulamasının erişebildiği alanlardaki üyelikleri listeler ancak kendininkiler dahil olmak üzere Chat uygulaması üyeliklerini hariç tutar. Kullanıcı kimlik doğrulaması ile üyeliklerin listelenmesi, kimliği doğrulanan kullanıcının erişebildiği alanlardaki üyelikleri listeler.
Membership
kaynağı, bir insan kullanıcının veya Google Chat uygulamasının bir alana davet edildiğini, bir alanın bir parçası olduğunu ya da bir alanda bulunmadığını belirtir.
Ön koşullar
Python
- Python 3.6 veya sonraki sürümler
- pip paket yönetimi aracı
Python için en yeni Google istemci kitaplıkları. Bunları yüklemek veya güncellemek için komut satırı arayüzünüzde aşağıdaki komutu çalıştırın:
pip3 install --upgrade google-api-python-client google-auth-oauthlib google-auth
- Google Chat API'nin etkin ve yapılandırılmış olduğu bir Google Cloud projesi. Adımlar için Google Chat uygulaması oluşturma başlıklı makaleye göz atın.
Yetkilendirme, Chat uygulaması için yapılandırıldı. Giriş üyelikleri, aşağıdaki kimlik doğrulama yöntemlerinin her ikisini de destekler:
chat.memberships.readonly
veyachat.memberships
yetkilendirme kapsamıyla kullanıcı kimlik doğrulaması.chat.bot
yetkilendirme kapsamıyla uygulama kimlik doğrulaması.
Kullanıcı kimlik doğrulamalı bir alanda kullanıcıları ve Chat uygulamasını listeleme
Kimliği doğrulanmış kullanıcının erişebildiği bir alandaki kullanıcıları ve Chat uygulamasını listelemek için isteğinizde aşağıdakileri iletin:
- Kullanıcı kimlik doğrulaması kullanırken
chat.memberships.readonly
veyachat.memberships
yetkilendirme kapsamını belirtin. membership
kaynağındalist
yöntemini çağırın.
Aşağıdaki örnekte, filter
, ROLE_Member
olarak ayarlandığından kimliği doğrulanmış kullanıcının görebildiği insan alan üyeleri (alan yöneticileri değil) listelenmiştir:
Python
- Çalışma dizininizde
chat_member_list_user.py
adında bir dosya oluşturun. chat_member_list_user.py
içine şu kodu 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.memberships.readonly"] def main(): ''' Authenticates with Chat API via user credentials, then lists human space members (but not space managers) in a specified space. ''' # 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().members().list( # The space for which to list memberships. parent = 'spaces/SPACE', # An optional filter that returns only human space members. filter = 'member.type = "HUMAN" AND role = "ROLE_MEMBER"' ).execute() # Prints the list of memberships. print(result) if __name__ == '__main__': main()
Kodda,
SPACE
değerini Chat API'dekispaces.list
yönteminden veya alanın URL'sinden alabileceğiniz bir alan adıyla değiştirin.Çalışma dizininizde örneği derleyip çalıştırın:
python3 chat_member_list_user.py
Google Chat API, belirtilen alandaki insan alan üyelerinin (alan yöneticileri hariç) ve uygulama üyelerinin listesini döndürür.
Uygulama kimlik doğrulamalı bir alanda kullanıcıları ve Chat uygulamasını listeleme
Kimliği doğrulanmış uygulamanın erişebildiği bir alandaki kullanıcıları ve Chat uygulamasını listelemek için isteğinizde aşağıdakileri iletin:
- Uygulama kimlik doğrulaması ile
chat.bot
yetkilendirme kapsamını belirtin. member
kaynağındalist
yöntemini çağırın.
Aşağıdaki örnekte, Chat uygulamasının görebildiği insan alan üyeleri (alan yöneticileri değil) listelenmektedir:
Python
- Çalışma dizininizde
chat_member_list_app.py
adında bir dosya oluşturun. chat_member_list_app.py
içine şu kodu 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().members().list( # The space for which to list memberships. parent = 'spaces/SPACE', # An optional filter that returns only human space members. filter = 'member.type = "HUMAN" AND role = "ROLE_MEMBER"' ).execute() print(result)
Kodda,
SPACE
değerini Chat API'dekispaces.list
yönteminden veya alanın URL'sinden alabileceğiniz bir alan adıyla değiştirin.Çalışma dizininizde örneği derleyip çalıştırın:
python3 chat_member_list_app.py
Google Chat API, belirtilen alandaki insan alan üyelerinin (alan yöneticileri hariç) listesini döndürür.
Sayfalandırmayı özelleştirme veya listeye filtre uygulama
Üyelikleri listelemek için listelenen üyeliklerin sayfalandırmasını özelleştirmek veya bu üyelikleri filtrelemek amacıyla aşağıdaki sorgu parametrelerini iletin:
pageSize
: Döndürülecek maksimum üyelik sayısı. Hizmet bu değerden daha az sonuç döndürebilir. Belirtilmemesi durumunda en fazla 100 boşluk döndürülür. Maksimum değer 1.000'dir. 1.000'in üzerindeki değerler otomatik olarak 1.000'e değiştirilir.pageToken
: Önceki bir alan listesi çağrısından alınan sayfa jetonu. Sonraki sayfayı almak için bu jetonu sağlayın. Sayfalara ayırırken, filtre değeri sayfa jetonunu sağlayan çağrıyla eşleşmelidir. Farklı bir değer iletme, beklenmedik sonuçlara yol açabilir.filter
: Sorgu filtresi. Kullanıcı kimlik doğrulaması gerektirir. Desteklenen sorgu ayrıntıları içinspaces.members.list
yöntemini inceleyin.
İlgili konular
- Bir kullanıcının veya Chat uygulamasının üyeliğiyle ilgili ayrıntılı bilgi edinin.
- Bir alana kullanıcı veya Chat uygulaması davet etme ya da ekleme.
- Bir kullanıcının Google Chat alanındaki üyeliğini güncelleme.
- Bir kullanıcıyı veya Chat uygulamasını alandan kaldırma.