Bu kılavuzda, bir alandan üye kaldırmak (üyeliği silme olarak da bilinir) için Google Chat API'nin Membership
kaynağındaki delete()
yönteminin nasıl kullanılacağı açıklanmaktadır. Alandaki tek alan yöneticisi kaldırılamaz. Bu üyelikleri kaldırmadan önce başka bir kullanıcıyı alan yöneticisi olarak atayın.
Google Workspace yöneticisiyseniz Google Workspace kuruluşunuzdaki herhangi bir alandan kullanıcıları, Google Gruplar'ı veya Chat uygulamalarını kaldırabilirsiniz.
Membership
kaynağı, gerçek kullanıcıların veya Google Chat uygulamalarının bir alana davet edilip edilmediğini, alana dahil olup olmadığını ya da alandan ayrılıp ayrılmadığını gösterir.
Ön koşullar
Node.js
- Google Chat'e erişimi olan bir Business veya Enterprise Google Workspace hesabı
- Ortamınızı ayarlayın:
- Google Cloud projesi oluşturun.
- OAuth izin ekranını yapılandırın.
- Chat uygulamanız için bir ad, simge ve açıklamayla Google Chat API'yi etkinleştirip yapılandırın.
- Node.js Cloud İstemci Kitaplığı'nı yükleyin.
- Google Chat API isteğinizde kimliğinizi doğrulama yönteminize göre erişim kimlik bilgileri oluşturun:
- Chat kullanıcısı olarak kimlik doğrulamak için OAuth istemci kimliği kimlik bilgilerini oluşturun ve kimlik bilgilerini yerel dizininize
client_secrets.json
adlı bir JSON dosyası olarak kaydedin. - Chat uygulaması olarak kimlik doğrulamak için hizmet hesabı kimlik bilgileri oluşturun ve kimlik bilgilerini
credentials.json
adlı bir JSON dosyası olarak kaydedin.
- Chat kullanıcısı olarak kimlik doğrulamak için OAuth istemci kimliği kimlik bilgilerini oluşturun ve kimlik bilgilerini yerel dizininize
- Kullanıcı olarak mı yoksa Chat uygulaması olarak mı kimlik doğrulama yapmak istediğinize bağlı olarak bir yetkilendirme kapsamı seçin.
- Google Chat alanı. Google Chat API'yi kullanarak alan oluşturmak için Alan oluşturma başlıklı makaleyi inceleyin. Chat'te grup oluşturmak için Yardım Merkezi belgelerini inceleyin.
Kullanıcı olarak bir alanı üyeden kaldırma
Kullanıcı kimlik doğrulaması olan bir alandan kullanıcı, Google grubu veya Chat uygulamasını kaldırmak için isteğinizde aşağıdakileri iletin:
chat.memberships
yetkilendirme kapsamını belirtin. Yetki veren kullanıcının, kullanıcıyı veya Google grubunu alandan kaldırma izni olmalıdır. Bir Chat uygulamasını kaldırmak içinchat.memberships.app
yetkilendirme kapsamını belirtin (uygulamalar yalnızca kendi üyeliklerini silebilir, diğer uygulamaların üyeliklerini silemez). En iyi uygulama olarak, uygulamanızın çalışmaya devam etmesine izin veren en kısıtlayıcı kapsamı seçin.DeleteMembership()
yöntemini çağırın.- Silmek istediğiniz üyeliğin
name
değerini iletin. Üyelik, alandaki tek alan yöneticisine aitse bu üyeliği silmeden önce başka bir kullanıcıyı alan yöneticisi olarak atayın.
Kullanıcı kimlik doğrulaması ile üyeliği silme:
Node.js
Bu örneği çalıştırmak için aşağıdakileri değiştirin:
SPACE_NAME
: Alanınname
kimliği. Kimliği,ListSpaces()
metodunu çağırarak veya alanın URL'sinden alabilirsiniz.MEMBER_NAME
: Üyeninname
kimliği.ListMemberships()
yöntemini çağırarak kimliği elde edebilirsiniz.
İşlem başarılı olursa yanıt metni, üyeliğin 'state': 'NOT_A_MEMBER'
ile döndürülmesini sağlar. Bu, üyenin artık alanda olmadığını gösterir.
{ "name": "spaces/SPACE_NAME/members/MEMBER_NAME", "state": "NOT_A_MEMBER" }
Chat uygulaması olarak bir alanı kullanan üyeyi alandan kaldırma
Uygulama kimlik doğrulaması için tek seferlik yönetici onayı gerekir.
Uygulama kimlik doğrulaması olan bir alandan kullanıcı, Google grubu veya Chat uygulamasını kaldırmak için isteğinizde aşağıdakileri iletin:
chat.app.memberships
Yetkilendirme kapsamını belirtin. Alan yöneticisinin üyeliğini silme özelliği yalnızca Chat uygulamaları tarafından oluşturulan alanlarda desteklenir.membership
kaynağındadelete
yöntemini çağırın.- Silmek istediğiniz üyeliğin
name
değerini iletin. Üyelik, alandaki tek alan yöneticisine aitse bu üyeliği silmeden önce başka bir kullanıcıyı alan yöneticisi olarak atayın.
API anahtarı oluşturma
Geliştirici Önizlemesi API yöntemini çağırmak için API keşif belgesinin herkese açık olmayan bir Geliştirici Önizlemesi sürümünü kullanmanız gerekir. İsteğin kimliğini doğrulamak için bir API anahtarı göndermeniz gerekir.
API anahtarını oluşturmak için uygulamanızın Google Cloud projesini açıp aşağıdakileri yapın:
- Google Cloud Console'da Menü > API'ler ve Hizmetler > Kimlik bilgileri'ne gidin.
- Kimlik bilgileri oluştur > API anahtarı'nı tıklayın.
- Yeni API anahtarınız gösterilir.
- API anahtarınızı uygulamanızın kodunda kullanmak için Kopyala'yı seçin. API anahtarını, projenizin kimlik bilgilerinin "API anahtarları" bölümünde de bulabilirsiniz.
- Gelişmiş ayarları güncellemek ve API anahtarınızın kullanımını sınırlamak için Anahtarı kısıtla'yı tıklayın. Daha ayrıntılı bilgi için API anahtarı kısıtlamaları uygulama başlıklı makaleyi inceleyin.
Chat API'yi çağıran bir komut dosyası yazma
Uygulama kimlik doğrulaması ile üyeliği silme:
Python
- Çalışma dizininizde
chat_membership_delete_app.py
adlı bir dosya oluşturun. chat_membership_delete_app.py
dosyasına aşağıdaki kodu ekleyin:from google.oauth2 import service_account from apiclient.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.app.memberships"] def main(): ''' Authenticates with Chat API using app authentication, then deletes the specified membership. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds, discoveryServiceUrl='https://chat.googleapis.com/$discovery/rest?version=v1&labels=DEVELOPER_PREVIEW&key=API_KEY') # Use the service endpoint to call Chat API. result = chat.spaces().members().delete( # The membership to delete. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBER with a membership name. # Obtain the membership name from the memberships resource of # Chat API. To delete a Chat app's membership, replace MEMBER # with app; an alias for the app calling the API. name='spaces/SPACE/members/MEMBER' ).execute() # Print Chat API's response in your command line interface. # When deleting a membership, the response body is empty. print(result) if __name__ == '__main__': main()
Kodda aşağıdakileri değiştirin:
API_KEY
: Chat API için hizmet uç noktasını oluşturmak üzere oluşturduğunuz API anahtarı.SPACE
: Chat API'dekispaces.list
yönteminden veya bir alanın URL'sinden alabileceğiniz bir alan adı.MEMBER
: Chat API'dekispaces.members.list
yönteminden elde edebileceğiniz bir üyelik adı. Bir uygulamanın üyeliğini silmek içinMEMBER
yerineapp
yazın.
Çalışma dizininizde örneği derleyip çalıştırın:
python3 chat_membership_delete_app.py
İşlem başarılı olursa yanıt metni, üyeliğin 'state': 'NOT_A_MEMBER'
ile döndürülmesini sağlar. Bu, üyenin artık alanda olmadığını gösterir.
{ "name": "spaces/SPACE/members/MEMBER", "state": "NOT_A_MEMBER" }
Sınırlamalar ve dikkat edilmesi gereken hususlar
- Uygulama kimlik doğrulaması ile Chat uygulamaları kullanıcıları kaldırabilir ancak Google Grupları'nı kaldıramaz.
Google Workspace yöneticisi olarak kullanıcıları veya Google Gruplarını bir alandan kaldırma
Google Workspace yöneticisiyseniz kullanıcıları, Google Gruplar'ı veya Chat uygulamalarını Google Workspace kuruluşunuzdaki herhangi bir alandan kaldırmak için DeleteMembership()
yöntemini çağırabilirsiniz.
Bu yöntemi Google Workspace yöneticisi olarak çağırmak için aşağıdakileri yapın:
- Kullanıcı kimlik doğrulamasını kullanarak yöntemi çağırın ve yöntemin yönetici ayrıcalıkları kullanılarak çağrılmasını destekleyen bir yetkilendirme kapsamı belirtin.
- İsteğinizde
useAdminAccess
iletrue
arasındaki sorgu parametresini belirtin.
Daha fazla bilgi ve örnek için Google Chat alanlarını Google Workspace yöneticisi olarak yönetme başlıklı makaleyi inceleyin.
İlgili konular
- Bir kullanıcının veya Chat uygulamasının üyeliğiyle ilgili ayrıntıları alma.
- Alandaki üyeleri listeleyebilirsiniz.
- Bir kullanıcının Google Chat alanındaki üyeliğini güncelleyin.
- Bir kullanıcıyı veya Chat uygulamasını alana davet etme ya da ekleme