Alanlara kullanıcı, Google Grubu veya Google Chat uygulaması davet etme ya da ekleme

Bu kılavuzda, membership kaynağında create yönteminin nasıl kullanılacağı açıklanmaktadır. Google Chat API'nin kullanıcıları, Google Grupları veya Bir alana Chat uygulamasını kullanarak üyeliği. Üyelik oluştururken, belirtilen üyenin otomatik kabul politikası devre dışı bırakıldı, ardından davet edilirler ve alanı kabul etmeleri gerekir davet edin. Aksi takdirde, üyelik oluşturulduğunda üye eklenir. doğrudan belirtilen alana ekleyebilirsiniz.

İlgili içeriği oluşturmak için kullanılan Membership kaynak bir gerçek kullanıcının veya Google Chat uygulamasının davet edilip edilmediğini bir alanın parçası olan ya da olmayan

Ön koşullar

Python

Node.js

Bir alana kullanıcı davet etme veya kullanıcı ekleme

Bir alana kullanıcı davet etmek veya bir alana kullanıcı eklemek için istek:

  • chat.memberships yetkilendirme kapsamını belirtin.
  • Şunu çağırın: create yöntem uygulamasında membership kaynak.
  • parent değerini, üyelik oluşturulacak alanın kaynak adı olarak belirleyin.
  • {user} kullanıcısının istediğiniz kişi olduğu member değerini users/{user} olarak ayarlayın ve şunlardan birini yapar:
    • için kimliği kişi ile iletişime geçin. Örneğin, People API kişi resourceName değeri people/123456789, ardından membership.member.name olarak ayarlandı users/123456789 adlı konuma.
    • için kimliği kullanıcı bulun.
    • Kullanıcının e-posta adresi. Örneğin, users/222larabrown@gmail.com veya users/larabrown@cymbalgroup.com. Kullanıcı bir Google Hesabı kullanıyorsa veya Google Workspace kuruluşuna aitse e-posta adresi.

Aşağıdaki örnekte bir alana kullanıcı eklenir:

Python

  1. Çalışma dizininizde şu ada sahip bir dosya oluşturun: chat_membership_user_create.py
  2. Aşağıdaki kodu chat_membership_user_create.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.memberships"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then adds a user to a Chat space by creating a membership.
        '''
    
        # 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().create(
    
            # The space in which to create a membership.
            parent = 'spaces/SPACE',
    
            # Specify which user the membership is for.
            body = {
              'member': {
                'name':'users/USER',
                'type': 'HUMAN'
              }
            }
    
        ).execute()
    
        # Prints details about the created membership.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Bu kodda, aşağıdakini değiştirin:

    • SPACE: bir alan adı; şuradan edinebilirsiniz: spaces.list yöntem API'den veya bir alanın URL'sinden.

    • USER: bir kullanıcı kimliği.

  4. Çalışma dizininizde örneği derleyin ve çalıştırın:

    python3 chat_membership_user_create.py

Node.js

  1. Çalışma dizininizde add-user-to-space.js adlı bir dosya oluşturun.
  2. Aşağıdaki kodu add-user-to-space.js bölümüne ekleyin:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Adds the user to the Chat space.
    * @return {!Promise<!Object>}
    */
    async function addUserToSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.memberships',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.members.create({
        parent: 'spaces/SPACE',
        requestBody: {member: {name: 'users/USER', type: 'HUMAN'}}
      });
    }
    
    addUserToSpace().then(console.log);
    
  3. Bu kodda, aşağıdakini değiştirin:

    • SPACE: şuradan edinebileceğiniz bir alan adı: spaces.list yöntem API'den veya bir alanın URL'sinden.

    • USER: bir kullanıcı kimliği.

  4. Çalışma dizininizde örneği çalıştırın:

    node add-user-to-space.js

Chat API, membership kullanıcı üyeliğinin ayrıntılarını içerir.

Alanlara Google Grubu davet etme veya ekleme

Bir alana Google Grubu eklemek veya bir Google Grubu'nu davet etmek için istek:

  • chat.memberships yetkilendirme kapsamını belirtin.
  • Şunu çağırın: create yöntem uygulamasında membership kaynak.
  • parent değerini, üyelik oluşturulacak alanın kaynak adı olarak belirleyin.
  • groupMember değerini groups/{group} olarak ayarlayın. Burada {group}, istediğiniz grup kimliğidir tercih edebilirsiniz. Grubun kimliği, Cloud Identity API. Örneğin, Cloud Identity API groups/123456789 adlı bir grup döndürür, ardından membership.groupMember.name - groups/123456789.

Google Grupları, grup sohbetine veya doğrudan mesaja eklenmez. Yalnızca belirli bir gruba eklenebilir. adlandırılmış alan. Aşağıdaki örnekte, adlandırılmış bir alana bir grup eklenir:

Python

  1. Çalışma dizininizde şu ada sahip bir dosya oluşturun: chat_membership_group_create.py
  2. Aşağıdaki kodu chat_membership_group_create.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.memberships"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then adds a group to a Chat space by creating a membership.
        '''
    
        # 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().create(
    
            # The named space in which to create a membership.
            parent = 'spaces/SPACE',
    
            # Specify which group the membership is for.
            body = {
              'groupMember': {
                'name':'groups/GROUP',
              }
            }
    
        ).execute()
    
        # Prints details about the created membership.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Bu kodda, aşağıdakini değiştirin:

    • SPACE: bir alan adı; şuradan edinebilirsiniz: spaces.list yöntem API'den veya bir alanın URL'sinden.

    • GROUP: Grup kimliği.

  4. Çalışma dizininizde örneği derleyin ve çalıştırın:

    python3 chat_membership_group_create.py

Node.js

  1. Çalışma dizininizde add-group-to-space.js adlı bir dosya oluşturun.
  2. Aşağıdaki kodu add-group-to-space.js bölümüne ekleyin:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Adds the group to the Chat space.
    * @return {!Promise<!Object>}
    */
    async function addUserToSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.memberships',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.members.create({
        parent: 'spaces/SPACE',
        requestBody: {groupMember: {name: 'groups/GROUP'}}
      });
    }
    
    addUserToSpace().then(console.log);
    
  3. Bu kodda, aşağıdakini değiştirin:

    • SPACE: şuradan edinebileceğiniz bir alan adı: spaces.list yöntem API'den veya bir alanın URL'sinden.

    • GROUP: Grup kimliği.

  4. Çalışma dizininizde örneği çalıştırın:

    node add-group-to-space.js

Chat API, membership oluşturulan grup üyeliğinin ayrıntılarını içerir.

Alanlara Chat uygulaması ekleme

Bir Chat uygulaması, başka bir uygulamayı boşluk oluşturur. Bir alana Chat uygulaması eklemek için: veya iki gerçek kullanıcı arasındaki doğrudan mesajları iletmeniz halinde isteğinizde aşağıdakileri de iletin:

  • chat.memberships.app yetkilendirme kapsamını belirtin.
  • Şunu çağırın: create yöntem membership kaynağında.
  • parent değerini, üyelik oluşturulacak alanın kaynak adı olarak belirleyin.
  • member değerini users/app olarak ayarlayın; çağrıyı yapan uygulamayı temsil eden Chat API'ye gidin.

Aşağıdaki örnek, bir alana Chat uygulaması ekler:

Python

  1. Çalışma dizininizde şu ada sahip bir dosya oluşturun: chat_membership_app_create.py
  2. Aşağıdaki kodu chat_membership_app_create.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.memberships.app"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then adds the Chat app to a Chat 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().create(
    
            # The space in which to create a membership.
            parent = 'spaces/SPACE',
    
            # Set the Chat app as the entity that gets added to the space.
            # 'app' is an alias for the Chat app calling the API.
            body = {
                'member': {
                  'name':'users/app',
                  'type': 'BOT'
                }
            }
    
        ).execute()
    
        # Prints details about the created membership.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Kodda, SPACE öğesini bir alan adıyla değiştirin. şuradan edinebilirsiniz: spaces.list yöntem API'den veya bir alanın URL'sinden.

  4. Çalışma dizininizde örneği derleyin ve çalıştırın:

    python3 chat_membership_app_create.py

Node.js

  1. Çalışma dizininizde add-app-to-space.js adlı bir dosya oluşturun.
  2. Aşağıdaki kodu add-app-to-space.js bölümüne ekleyin:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Adds the app to the Chat space.
    * @return {!Promise<!Object>}
    */
    async function addAppToSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.memberships.app',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.members.create({
        parent: 'spaces/SPACE',
        requestBody: {member: {name: 'users/app', type: 'BOT'}}
      });
    }
    
    addAppToSpace().then(console.log);
    
  3. Kodda, SPACE öğesini bir alan adıyla değiştirin. şuradan edinebilirsiniz: spaces.list yöntem API'den veya bir alanın URL'sinden.

  4. Çalışma dizininizde örneği çalıştırın:

    node add-app-to-space.js

Chat API, membership ayrıntılı bir şekilde inceleyebilirsiniz.