อัปเดตการเป็นสมาชิกของผู้ใช้ในพื้นที่ของ Google Chat

คำแนะนำนี้จะอธิบายวิธีใช้เมธอด update() ในทรัพยากร Membership ของ Google Chat API เพื่อเปลี่ยนแอตทริบิวต์เกี่ยวกับการเป็นสมาชิก เช่น การเปลี่ยนสมาชิกพื้นที่ทำงานเป็นผู้จัดการพื้นที่ทำงาน หรือเปลี่ยนผู้จัดการพื้นที่ทำงานเป็นสมาชิกพื้นที่ทำงาน

หากคุณเป็นผู้ดูแลระบบ Google Workspace คุณสามารถเรียกใช้เมธอด update() เพื่ออัปเดตการเป็นสมาชิกของพื้นที่ทำงานในองค์กร Google Workspace ของคุณ

แหล่งข้อมูล Membership แสดงให้เห็นว่าผู้ใช้ที่เป็นมนุษย์หรือแอป Google Chat ได้รับเชิญ เข้าร่วม หรือไม่ได้อยู่ในพื้นที่ทำงาน

ข้อกำหนดเบื้องต้น

Node.js

  • บัญชี Google Workspace รุ่น Business หรือ Enterprise ที่มีสิทธิ์เข้าถึง Google Chat

อัปเดตการเป็นสมาชิก

หากต้องการอัปเดตการเป็นสมาชิกพื้นที่ทำงาน ให้ส่งข้อมูลต่อไปนี้ในคำขอ

  • ระบุขอบเขตการให้สิทธิ์ ดังนี้
  • เรียกใช้เมธอด UpdateMembership()
  • ส่ง membership เป็นอินสแตนซ์ของ Membership พร้อมข้อมูลต่อไปนี้
    • ฟิลด์ name ที่ตั้งค่าเป็นข้อมูลการเป็นสมาชิกที่จะอัปเดต ซึ่งรวมถึงรหัสพื้นที่ทำงานและรหัสสมาชิก
    • ตั้งค่าช่องการเป็นสมาชิกที่จะอัปเดตเป็นค่าใหม่
  • ส่ง updateMask เพื่อระบุแง่มุมของการเป็นสมาชิกที่จะอัปเดต ซึ่งรวมถึงข้อมูลต่อไปนี้
    • role: บทบาทของผู้ใช้ภายในพื้นที่ใน Chat ซึ่งจะกำหนดการดำเนินการที่ได้รับอนุญาตในพื้นที่ทำงานดังกล่าว ค่าที่เป็นไปได้มีดังนี้
      • ROLE_MEMBER: สมาชิกของพื้นที่ทำงาน ผู้ใช้มีสิทธิ์พื้นฐาน เช่น ส่งข้อความไปยังพื้นที่ทำงาน ทุกคนมีบทบาทนี้ในการสนทนาแบบ 1:1 และการสนทนากลุ่มที่ไม่มีชื่อ
      • ROLE_MANAGER: ผู้จัดการพื้นที่ทำงาน ผู้ใช้จะมีสิทธิ์พื้นฐานทั้งหมด รวมถึงสิทธิ์ระดับผู้ดูแลระบบที่ช่วยให้จัดการพื้นที่ทำงานได้ เช่น เพิ่มหรือนำสมาชิกออก ใช้ได้เฉพาะในพื้นที่ทำงานที่ spaceType เป็น SPACE (พื้นที่ทำงานที่มีชื่อ)

กำหนดให้สมาชิกพื้นที่ทำงานปกติเป็นผู้จัดการพื้นที่ทำงานในฐานะผู้ใช้

ตัวอย่างต่อไปนี้เรียกใช้ Chat API โดยใช้การตรวจสอบสิทธิ์ผู้ใช้เพื่อทำให้สมาชิกพื้นที่ทำงานทั่วไปเป็นผู้จัดการพื้นที่ทำงานโดยระบุ role เป็น ROLE_MANAGER

Node.js

chat/client-libraries/cloud/update-membership-user-cred.js
import {createClientWithUserCredentials} from './authentication-utils.js';

const USER_AUTH_OAUTH_SCOPES = ['https://www.googleapis.com/auth/chat.memberships'];

// This sample shows how to update a membership with user credential
async function main() {
  // Create a client
  const chatClient = await createClientWithUserCredentials(USER_AUTH_OAUTH_SCOPES);

  // Initialize request argument(s)
  const request = {
    membership: {
      // Replace SPACE_NAME and MEMBER_NAME here
      name: 'spaces/SPACE_NAME/members/MEMBER_NAME',
      // Replace ROLE_NAME here with ROLE_MEMBER or ROLE_MANAGER
      role: 'ROLE_NAME'
    },
    updateMask: {
      // The field paths to update.
      paths: ['role']
    }
  };

  // Make the request
  const response = await chatClient.updateMembership(request);

  // Handle the response
  console.log(response);
}

main().catch(console.error);

หากต้องการเรียกใช้ตัวอย่าง ให้แทนที่ข้อมูลต่อไปนี้

  • SPACE_NAME: รหัสจาก name ของพื้นที่ทำงาน คุณรับรหัสได้โดยเรียกใช้เมธอด ListSpaces() หรือจาก URL ของพื้นที่ทำงาน
  • MEMBER_NAME: รหัสจากnameของโปรแกรมการเป็นสมาชิก คุณสามารถรับรหัสได้โดยเรียกใช้เมธอด ListMemberships() หรือจากเนื้อหาการตอบกลับที่ส่งคืนหลังจากสร้างการเป็นสมาชิกแบบอะซิงโครนัสด้วย Chat API
  • ROLE_NAME: บทบาทที่อัปเดต ROLE_MANAGER

Google Chat API จะอัปเดตการเป็นสมาชิกที่ระบุเป็นผู้จัดการพื้นที่ทำงานและแสดงผลอินสแตนซ์ของ Membership

กำหนดให้ผู้จัดการพื้นที่ทำงานเป็นสมาชิกทั่วไปในฐานะผู้ใช้

ตัวอย่างต่อไปนี้เรียกใช้ Chat API โดยใช้การตรวจสอบสิทธิ์ผู้ใช้เพื่อทำให้ผู้จัดการพื้นที่ทำงานเป็นสมาชิกพื้นที่ทำงานปกติโดยระบุ role เป็น ROLE_MEMBER

Node.js

chat/client-libraries/cloud/update-membership-user-cred.js
import {createClientWithUserCredentials} from './authentication-utils.js';

const USER_AUTH_OAUTH_SCOPES = ['https://www.googleapis.com/auth/chat.memberships'];

// This sample shows how to update a membership with user credential
async function main() {
  // Create a client
  const chatClient = await createClientWithUserCredentials(USER_AUTH_OAUTH_SCOPES);

  // Initialize request argument(s)
  const request = {
    membership: {
      // Replace SPACE_NAME and MEMBER_NAME here
      name: 'spaces/SPACE_NAME/members/MEMBER_NAME',
      // Replace ROLE_NAME here with ROLE_MEMBER or ROLE_MANAGER
      role: 'ROLE_NAME'
    },
    updateMask: {
      // The field paths to update.
      paths: ['role']
    }
  };

  // Make the request
  const response = await chatClient.updateMembership(request);

  // Handle the response
  console.log(response);
}

main().catch(console.error);

หากต้องการเรียกใช้ตัวอย่าง ให้แทนที่ข้อมูลต่อไปนี้

  • SPACE_NAME: รหัสจากname ของพื้นที่ทำงาน คุณรับรหัสได้โดยเรียกใช้เมธอด ListSpaces() หรือจาก URL ของพื้นที่ทำงาน
  • MEMBER_NAME: รหัสจากnameของโปรแกรมการเป็นสมาชิก คุณสามารถรับรหัสได้โดยเรียกใช้เมธอด ListMemberships() หรือจากเนื้อหาการตอบกลับที่ส่งคืนหลังจากสร้างการเป็นสมาชิกแบบอะซิงโครนัสด้วย Chat API
  • ROLE_NAME: บทบาท ROLE_MEMBER ที่อัปเดตแล้ว

Google Chat API จะอัปเดตการเป็นสมาชิกที่ระบุเป็นผู้จัดการพื้นที่ทำงานและแสดงผลอินสแตนซ์ของ Membership

กำหนดให้สมาชิกพื้นที่ทำงานปกติเป็นผู้จัดการพื้นที่ทำงานในฐานะแอป Chat

การตรวจสอบสิทธิ์แอปต้องการอนุมัติจากผู้ดูแลระบบแบบครั้งเดียว

สร้างคีย์ API

หากต้องการเรียกใช้เมธอด API ของรุ่นตัวอย่างสำหรับนักพัฒนาซอฟต์แวร์ คุณต้องใช้เอกสารการค้นพบ API เวอร์ชันตัวอย่างสำหรับนักพัฒนาซอฟต์แวร์แบบไม่สาธารณะ หากต้องการตรวจสอบสิทธิ์คำขอ คุณต้องส่งคีย์ API

หากต้องการสร้างคีย์ API ให้เปิดโปรเจ็กต์ Google Cloud ของแอปแล้วทําดังนี้

  1. ในคอนโซล Google Cloud ให้ไปที่เมนู > API และบริการ > ข้อมูลเข้าสู่ระบบ

    ไปที่ข้อมูลเข้าสู่ระบบ

  2. คลิกสร้างข้อมูลเข้าสู่ระบบ > คีย์ API
  3. คีย์ API ใหม่จะปรากฏขึ้น
    • คลิกคัดลอก เพื่อคัดลอกคีย์ API ไปใช้ในโค้ดของแอป คุณยังดูคีย์ API ได้ในส่วน "คีย์ API" ของข้อมูลเข้าสู่ระบบของโปรเจ็กต์
    • คลิกจํากัดคีย์เพื่ออัปเดตการตั้งค่าขั้นสูงและจํากัดการใช้คีย์ API ดูรายละเอียดเพิ่มเติมได้ที่การใช้ข้อจำกัดของคีย์ API

เขียนสคริปต์ที่เรียกใช้ Chat API

ตัวอย่างต่อไปนี้เรียกใช้ Chat API โดยใช้การตรวจสอบสิทธิ์ของแอปเพื่อทำให้สมาชิกพื้นที่ทำงานทั่วไปเป็นผู้จัดการพื้นที่ทำงานโดยระบุ role เป็น ROLE_MANAGER ใน body ที่ระบุแอตทริบิวต์การเป็นสมาชิกที่อัปเดตแล้ว

Python

  1. สร้างไฟล์ชื่อ chat_membership_update_to_manager_app.py ในไดเรกทอรีทํางาน
  2. ใส่รหัสต่อไปนี้ใน chat_membership_update_to_manager_app.py

    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 manager.
        '''
    
        # 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().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_MANAGER'}
    
          ).execute()
    
        # Prints details about the updated membership.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. แทนที่ข้อมูลต่อไปนี้ในโค้ด

    • API_KEY: คีย์ API ที่คุณสร้างเพื่อสร้างปลายทางบริการสำหรับ Chat API

    • SPACE: ชื่อพื้นที่ทำงาน ซึ่งคุณรับได้จากเมธอด spaces.list ใน Chat API หรือจาก URL ของพื้นที่ทำงาน

    • MEMBERSHIP: ชื่อการเป็นสมาชิก ซึ่งคุณรับได้จากเมธอด spaces.members.list ใน Chat API

  4. ในไดเรกทอรีการทำงาน ให้สร้างและเรียกใช้ตัวอย่างด้วยคำสั่งต่อไปนี้

    python3 chat_membership_update_to_manager_app.py

ตั้งค่าผู้จัดการพื้นที่ทำงานให้เป็นสมาชิกทั่วไปในแอป Chat

การตรวจสอบสิทธิ์แอปต้องการอนุมัติจากผู้ดูแลระบบแบบครั้งเดียว

สร้างคีย์ API

หากต้องการเรียกใช้เมธอด API ของรุ่นตัวอย่างสำหรับนักพัฒนาซอฟต์แวร์ คุณต้องใช้เอกสารการค้นพบ API เวอร์ชันตัวอย่างสำหรับนักพัฒนาซอฟต์แวร์แบบไม่สาธารณะ หากต้องการตรวจสอบสิทธิ์คำขอ คุณต้องส่งคีย์ API

หากต้องการสร้างคีย์ API ให้เปิดโปรเจ็กต์ Google Cloud ของแอปแล้วทําดังนี้

  1. ในคอนโซล Google Cloud ให้ไปที่เมนู > API และบริการ > ข้อมูลเข้าสู่ระบบ

    ไปที่ข้อมูลเข้าสู่ระบบ

  2. คลิกสร้างข้อมูลเข้าสู่ระบบ > คีย์ API
  3. คีย์ API ใหม่จะปรากฏขึ้น
    • คลิกคัดลอก เพื่อคัดลอกคีย์ API ไปใช้ในโค้ดของแอป คุณยังดูคีย์ API ได้ในส่วน "คีย์ API" ของข้อมูลเข้าสู่ระบบของโปรเจ็กต์
    • คลิกจํากัดคีย์เพื่ออัปเดตการตั้งค่าขั้นสูงและจํากัดการใช้คีย์ API โปรดดูรายละเอียดเพิ่มเติมที่หัวข้อการใช้ข้อจำกัดของคีย์ API

เขียนสคริปต์ที่เรียกใช้ Chat API

ตัวอย่างต่อไปนี้เรียกใช้ Chat API โดยใช้การตรวจสอบสิทธิ์ของแอปเพื่อทําให้ผู้จัดการพื้นที่ทํางานเป็นสมาชิกพื้นที่ทำงานปกติโดยระบุ role เป็น ROLE_MEMBER ใน body ที่ระบุแอตทริบิวต์การเป็นสมาชิกที่อัปเดตแล้ว

Python

  1. สร้างไฟล์ชื่อ chat_membership_update_to_member_app.py ในไดเรกทอรีทํางาน
  2. ใส่รหัสต่อไปนี้ใน chat_membership_update_to_member_app.py

    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 member to change
        it from a regular member to a space manager.
        '''
    
        # 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().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()
    
  3. แทนที่ข้อมูลต่อไปนี้ในโค้ด

    • API_KEY: คีย์ API ที่คุณสร้างเพื่อสร้างปลายทางบริการสำหรับ Chat API

    • SPACE: ชื่อพื้นที่ทำงาน ซึ่งคุณรับได้จากเมธอด spaces.list ใน Chat API หรือจาก URL ของพื้นที่ทำงาน

    • MEMBERSHIP: ชื่อการเป็นสมาชิก ซึ่งคุณรับได้จากเมธอด spaces.members.list ใน Chat API

  4. ในไดเรกทอรีทํางาน ให้สร้างและเรียกใช้ตัวอย่าง ดังนี้

    python3 chat_membership_update_to_member_app.py

อัปเดตการเป็นสมาชิกในฐานะผู้ดูแลระบบ Google Workspace

หากคุณเป็นผู้ดูแลระบบ Google Workspace คุณสามารถเรียกใช้update()วิธีนี้เพื่ออัปเดตการเป็นสมาชิกของพื้นที่ทำงานใดก็ได้ในองค์กร Google Workspace

หากต้องการเรียกใช้เมธอดนี้ในฐานะผู้ดูแลระบบ Google Workspace ให้ทำดังนี้

โปรดดูข้อมูลเพิ่มเติมและตัวอย่างที่หัวข้อจัดการพื้นที่ทำงานของ Google Chat ในฐานะผู้ดูแลระบบ Google Workspace