Bu kılavuzda, üyelikle ilgili özellikleri değiştirmek için Google Chat API'nin Membership kaynağında update() yönteminin nasıl kullanılacağı açıklanmaktadır. Örneğin, alan üyesini alan yöneticisine veya alan sahibine dönüştürme.
Google Workspace yöneticisiyseniz Google Workspace kuruluşunuzdaki herhangi bir alanın üyeliğini güncellemek için update() yöntemini çağırabilirsiniz.
Membership resource
bir insan kullanıcının veya Google Chat uygulamasının bir alana davet edilip edilmediğini, alanda bulunup bulunmadığını ya da alanda bulunmadığı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 kullanıcı rızası ekranını yapılandırın.
- Google Chat API'yi etkinleştirin ve yapılandırın. Chat uygulamanız için ad, simge ve açıklama ekleyin.
- Node.js Cloud İstemci Kitaplığı'nı yükleyin.
- Google Chat API isteğinizde kimlik doğrulaması yapmak istediğiniz yönteme göre erişim kimlik bilgileri oluşturun:
- Chat kullanıcısı olarak kimlik doğrulamak için OAuth istemci kimliği kimlik bilgileri oluşturun ve kimlik bilgilerini yerel dizininize
credentials.jsonadlı bir JSON dosyası olarak kaydedin. - Chat uygulaması olarak kimlik doğrulamak için hizmet hesabı kimlik bilgileri oluşturun ve kimlik bilgilerini
credentials.jsonadlı bir JSON dosyası olarak kaydedin.
- Chat kullanıcısı olarak kimlik doğrulamak için OAuth istemci kimliği kimlik bilgileri oluşturun ve kimlik bilgilerini yerel dizininize
- Kullanıcı veya Chat uygulaması olarak kimliğinizi doğrulamak isteyip istemediğinize bağlı olarak bir yetkilendirme kapsamı seçin.
Üyeliği güncelleme
Alan üyeliğini güncellemek için isteğinizde aşağıdakileri iletin:
- Yetkilendirme kapsamı belirtin:
- Kullanıcı kimlik doğrulaması ile
chat.membershipsyetkilendirme kapsamını belirtin. - Uygulama kimlik doğrulaması ile
chat.app.membershipsyetkilendirme kapsamını belirtin. Uygulama kimlik doğrulamasıyla üyelik güncellerken yalnızca Chat uygulamaları tarafından oluşturulan alanlardaki üyelikleri güncelleyebilirsiniz. Uygulama kimlik doğrulaması için tek seferlik yönetici onayı gerekir.
- Kullanıcı kimlik doğrulaması ile
UpdateMembership()yöntemini çağırın.- Aşağıdaki bilgilerle
membershipöğesiniMembershipörneği olarak iletin:- Güncellenecek üyeliğe ayarlanmış
namealanı (alan kimliği ve üye kimliği içerir). - Güncellenecek üyelik alanları yeni değerlere ayarlanır.
- Güncellenecek üyeliğe ayarlanmış
- Güncellenecek üyelik özelliklerini belirtmek için
updateMaskparametresini iletin. Bu parametre şunları içerir:role: Kullanıcının Chat alanındaki rolü. Bu rol, kullanıcının alanda yapmasına izin verilen işlemleri belirler. İzinlerle ilgili ayrıntılı açıklamalar için Chat API referans dokümanlarındakiMembershipRolebölümüne bakın. Olası değerler:ROLE_MEMBER: Alanın bir üyesi. Chat kullanıcı arayüzünde bu role Üye adı verilir.ROLE_ASSISTANT_MANAGER: Alan yöneticisi. Sohbet kullanıcı arayüzünde bu role Yönetici adı verilir.ROLE_MANAGER: Alan sahibi. Sohbet kullanıcı arayüzünde bu role Sahip adı verilir.
Üyeyi sahip olarak değiştirme (kullanıcı kimlik doğrulaması)
Aşağıdaki örnekte, role değerini ROLE_MANAGER olarak belirterek normal bir alan üyesini alan sahibi yapmak için kullanıcı kimlik doğrulaması kullanılarak Chat API çağrılıyor:
Node.js
Örneği çalıştırmak için aşağıdakileri değiştirin:
SPACE_NAME: Alanınnamekimliği. KimliğiListSpaces()yöntemini çağırarak veya alanın URL'sinden alabilirsiniz.MEMBER_NAME: Üyeliğinnamekimliği. Kimliği,ListMemberships()yöntemini çağırarak veya Chat API ile eşzamansız olarak üyelik oluşturulduktan sonra döndürülen yanıt gövdesinden alabilirsiniz.ROLE_NAME: Güncellenen rol,ROLE_MANAGER. Bu değeriMembershipRoledeğerlerinden herhangi birine ayarlayabilirsiniz. Örneğin, normal bir üyeyi alan yöneticisi yapmak içinROLE_NAMEyerineROLE_ASSISTANT_MANAGERolarak değiştirin.
Google Chat API, belirtilen üyeliği alan sahibi olarak günceller ve Membership örneğini döndürür.
Sahibi üyeye dönüştürme (kullanıcı kimlik doğrulaması)
Aşağıdaki örnekte, role değerini ROLE_MEMBER olarak belirterek alan sahibini normal alan üyesi yapmak için kullanıcı kimlik doğrulaması kullanılarak Chat API çağrılıyor:
Node.js
Örneği çalıştırmak için aşağıdakileri değiştirin:
SPACE_NAME: Alanınnamekimliği. KimliğiListSpaces()yöntemini çağırarak veya alanın URL'sinden alabilirsiniz.MEMBER_NAME: Üyeliğinnamekimliği. Kimliği,ListMemberships()yöntemini çağırarak veya Chat API ile eşzamansız olarak üyelik oluşturulduktan sonra döndürülen yanıt gövdesinden alabilirsiniz.ROLE_NAME: Güncellenen rol,ROLE_MEMBER.
Google Chat API, belirtilen üyeliği alan sahibi olarak günceller ve Membership örneğini döndürür.
Üyeyi sahip olarak değiştirme (Sohbet uygulaması kimlik doğrulaması)
Uygulama kimlik doğrulaması için tek seferlik yönetici onayı gerekir.
Chat API'yi çağıran bir komut dosyası yazın
Aşağıdaki örnekte, güncellenen üyelik özelliklerini belirten body içinde role, ROLE_MANAGER olarak belirtilerek normal bir alan üyesini alan sahibi yapmak için uygulama kimlik doğrulaması kullanılarak Chat API çağrılıyor:
Python
- Çalışma dizininizde
chat_membership_update_to_owner_app.pyadlı bir dosya oluşturun. chat_membership_update_to_owner_app.py'ya 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 updates a specified space member to change it from a regular member to a space owner. ''' # 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) # Use the service endpoint to call Chat API. result = chat.spaces().members().patch( # The membership to update, and the updated role. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBERSHIP with a membership name. # Obtain the membership name from the membership of Chat API. name='spaces/SPACE/members/MEMBERSHIP', updateMask='role', # Replace ROLE with a MembershipRole value. # Obtain the MembershipRole values from the membership of Chat API. body={'role': 'ROLE'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()Koddaki aşağıdaki yerleri değiştirin:
SPACE: Chat API'dekispaces.listyöntemiyle veya bir alanın URL'sinden alabileceğiniz bir alan adı.MEMBERSHIP: Chat API'dekispaces.members.listyöntemiyle alabileceğiniz bir üyelik adı.ROLE: Güncellenen rol,ROLE_MANAGER. Bu değeriMembershipRoledeğerlerinden herhangi birine ayarlayabilirsiniz. Örneğin, normal bir üyeyi alan yöneticisi yapmak içinROLEyerineROLE_ASSISTANT_MANAGERolarak değiştirin.
Çalışma dizininizde örneği oluşturun ve çalıştırın:
python3 chat_membership_update_to_owner_app.py
Sahibi üyeye dönüştürme (Sohbet uygulaması kimlik doğrulaması)
Uygulama kimlik doğrulaması için tek seferlik yönetici onayı gerekir.
Chat API'yi çağıran bir komut dosyası yazın
Aşağıdaki örnekte, güncellenen üyelik özelliklerini belirten body içinde role değerini ROLE_MEMBER olarak belirterek alan sahibini normal alan üyesi yapmak için uygulama kimlik doğrulaması kullanılarak Chat API çağrılıyor:
Python
- Çalışma dizininizde
chat_membership_update_to_member_app.pyadlı bir dosya oluşturun. chat_membership_update_to_member_app.py'ya 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 via user credentials, then updates a specified space owner to change it to a regular member. ''' # 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) # Use the service endpoint to call Chat API. result = chat.spaces().members().patch( # The membership to update, and the updated role. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBERSHIP with a membership name. # Obtain the membership name from the membership of Chat API. name='spaces/SPACE/members/MEMBERSHIP', updateMask='role', body={'role': 'ROLE_MEMBER'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()Koddaki aşağıdaki yerleri değiştirin:
SPACE: Chat API'dekispaces.listyöntemiyle veya bir alanın URL'sinden alabileceğiniz bir alan adı.MEMBERSHIP: Chat API'dekispaces.members.listyöntemiyle alabileceğiniz bir üyelik adı.
Çalışma dizininizde örneği oluşturun ve çalıştırın:
python3 chat_membership_update_to_member_app.py
Google Workspace yöneticisi olarak üyelikleri güncelleme
Google Workspace yöneticisiyseniz Google Workspace kuruluşunuzdaki herhangi bir alanın üyeliklerini güncellemek için update()
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ıyla 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,
useAdminAccesssorgu parametresinitrueolarak belirtin.
Daha fazla bilgi ve örnek için Google Workspace yöneticisi olarak Google Chat alanlarını yönetme başlıklı makaleyi inceleyin.
İlgili konular
- Bir kullanıcıyı veya Google Chat uygulamasını alana davet etme ya da ekleme
- Kullanıcı veya Chat uygulaması üyeliği hakkında ayrıntılı bilgi edinin.
- Bir alandaki üyeleri listeleme
- Bir kullanıcıyı veya Chat uygulamasını alandan kaldırma