แสดงรายการการสมัครใช้บริการ Google Workspace

หน้านี้จะอธิบายวิธีแสดงการสมัครใช้บริการ Google Workspace โดยใช้วิธี subscriptions.list()

เมื่อคุณเรียกใช้เมธอดนี้ด้วยการตรวจสอบสิทธิ์ของผู้ใช้ เมธอดจะแสดงรายการการสมัครใช้บริการที่ได้รับอนุญาตจากผู้ใช้ เมื่อใช้การตรวจสอบสิทธิ์ของแอป วิธีการนี้จะแสดงรายการที่มีการสมัครใช้บริการของแอป

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

Apps Script

  • โปรเจ็กต์ Apps Script
    • ใช้โปรเจ็กต์ Google Cloud แทนโปรเจ็กต์เริ่มต้นที่ Apps Script สร้างขึ้นโดยอัตโนมัติ
    • สําหรับขอบเขตที่คุณเพิ่มเพื่อกําหนดค่าหน้าจอขอความยินยอม OAuth คุณต้องเพิ่มขอบเขตนั้นลงในไฟล์ appsscript.json ในโปรเจ็กต์ Apps Script ด้วย เช่น
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages.readonly"
      ]
          
    • เปิดใช้บริการขั้นสูง Google Workspace Events

Python

  • Python 3.6 ขึ้นไป
  • เครื่องมือจัดการแพ็กเกจ pip
  • ไลบรารีของไคลเอ็นต์ Google ล่าสุดสำหรับ Python หากต้องการติดตั้งหรืออัปเดต ให้เรียกใช้คำสั่งต่อไปนี้ในอินเทอร์เฟซบรรทัดคำสั่ง
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      
  • การสมัครใช้บริการ Google Workspace ในการสร้างการสมัครใช้บริการ โปรดดูสร้างการสมัครใช้บริการ

  • ต้องมีการตรวจสอบสิทธิ์ดังนี้

    • สำหรับการตรวจสอบสิทธิ์ผู้ใช้ ต้องมีขอบเขตที่รองรับเหตุการณ์อย่างน้อย 1 ประเภทสำหรับการสมัครใช้บริการ หากต้องการทราบขอบเขต โปรดดูหัวข้อขอบเขตตามประเภทเหตุการณ์
    • สำหรับการตรวจสอบสิทธิ์แอป ต้องใช้ขอบเขต chat.bot (แอป Google Chat เท่านั้น)

แสดงรายการการสมัครใช้บริการที่ผู้ใช้ให้สิทธิ์

หากต้องการแสดงรายการการติดตาม คุณต้องกรองตามประเภทเหตุการณ์อย่างน้อย 1 ประเภท นอกจากนี้ คุณยังกรองการค้นหาตามทรัพยากรเป้าหมายได้ ดูข้อมูลเกี่ยวกับตัวกรองการค้นหาที่รองรับได้ที่เอกสารประกอบของเมธอด list()

ตัวอย่างโค้ดต่อไปนี้แสดงอาร์เรย์ของออบเจ็กต์ Subscription ที่กรองตามประเภทเหตุการณ์และทรัพยากรเป้าหมาย เมื่อตรวจสอบสิทธิ์เป็นผู้ใช้ เมธอดจะแสดงเฉพาะรายการการติดตามที่ผู้ใช้ให้สิทธิ์แอปสร้างเท่านั้น

วิธีแสดงรายการการสมัครใช้บริการสำหรับประเภทเหตุการณ์และทรัพยากรเป้าหมายที่ระบุ

Apps Script

  1. ในโปรเจ็กต์ Apps Script ให้สร้างไฟล์สคริปต์ใหม่ชื่อ listSubscriptions แล้วเพิ่มโค้ดต่อไปนี้

    function listSubscriptions() {
      // Filter for event type (required).
      const eventType = 'EVENT_TYPE';
    
      // Filter for target resource (optional).
      const targetResource = 'TARGET_RESOURCE';
    
      const filter = `event_types:"${eventType}" AND target_resource="${targetResource}"`
    
      // Call the Workspace Events API using the advanced service.
      const response = WorkspaceEvents.Subscriptions.list({ filter });
      console.log(response);
    }
    

    แทนที่ค่าต่อไปนี้

    • EVENT_TYPE: ประเภทเหตุการณ์ที่จัดรูปแบบตามข้อกําหนดของ CloudEvents เช่น หากต้องการกรองการติดตามที่ได้รับเหตุการณ์เกี่ยวกับการเป็นสมาชิกใหม่ใน google.workspace.chat.message.v1.created พื้นที่ทำงานของ Google Chat
    • TARGET_RESOURCE: ทรัพยากรเป้าหมาย ที่จัดรูปแบบเป็นชื่อทรัพยากรแบบเต็ม เช่น หากต้องการกรองตามการติดตามสำหรับพื้นที่ใน Google Chat ให้ใช้ //chat.googleapis.com/spaces/SPACE_ID โดยที่ spaces/SPACE_ID แสดงถึงช่อง name สำหรับทรัพยากร Space
  2. หากต้องการแสดงรายการการสมัครใช้บริการ ให้เรียกใช้ฟังก์ชัน listSubscriptions ในโปรเจ็กต์ Apps Script

Python

  1. สร้างไฟล์ชื่อ list_subscriptions.py และเพิ่มโค้ดต่อไปนี้ในไดเรกทอรีการทำงาน

    """List subscriptions."""
    
    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # Specify required scopes.
    SCOPES = ['SCOPE']
    
    # Authenticate with Google Workspace and get user authentication.
    flow = InstalledAppFlow.from_client_secrets_file('client_secrets.json', SCOPES)
    CREDENTIALS = flow.run_local_server()
    
    # Call the Workspace Events API using the service endpoint.
    service = build(
        'workspaceevents',
        'v1',
        credentials=CREDENTIALS,
    )
    
    # Filter for event type (required).
    EVENT_TYPE = 'EVENT_TYPE'
    
    # Filter for target resource (optional).
    TARGET_RESOURCE = 'TARGET_RESOURCE'
    
    FILTER = f'event_types:"{EVENT_TYPE}" AND target_resource="{TARGET_RESOURCE}"'
    response = service.subscriptions().list(filter=FILTER).execute()
    print(response)
    

    แทนที่ค่าต่อไปนี้

    • SCOPE: ขอบเขต OAuth ที่รองรับเหตุการณ์อย่างน้อย 1 ประเภทจากการสมัครใช้บริการ เช่น หากการสมัครใช้บริการได้รับกิจกรรมจากพื้นที่ใน Chat ที่อัปเดตแล้ว https://www.googleapis.com/auth/chat.spaces.readonly
    • EVENT_TYPE: ประเภทเหตุการณ์ที่จัดรูปแบบตามข้อกําหนดของ CloudEvents เช่น หากต้องการกรองการติดตามที่ได้รับเหตุการณ์เกี่ยวกับการเป็นสมาชิกใหม่ใน google.workspace.chat.message.v1.created พื้นที่ทำงานของ Google Chat
    • TARGET_RESOURCE: ทรัพยากรเป้าหมาย ที่จัดรูปแบบเป็นชื่อทรัพยากรแบบเต็ม เช่น หากต้องการกรองตามการติดตามสำหรับพื้นที่ใน Google Chat ให้ใช้ //chat.googleapis.com/spaces/SPACE_ID โดยที่ spaces/SPACE_ID แสดงถึงช่อง name สำหรับทรัพยากร Space
  2. ในไดเรกทอรีทํางาน ให้ตรวจสอบว่าคุณได้จัดเก็บข้อมูลเข้าสู่ระบบรหัสไคลเอ็นต์ OAuth และตั้งชื่อไฟล์เป็น client_secrets.json แล้ว ตัวอย่างโค้ดใช้ไฟล์ JSON นี้เพื่อตรวจสอบสิทธิ์กับ Google Workspace และรับข้อมูลเข้าสู่ระบบของผู้ใช้ โปรดดูวิธีการที่หัวข้อสร้างข้อมูลเข้าสู่ระบบรหัสไคลเอ็นต์ OAuth

  3. หากต้องการแสดงรายการการสมัครใช้บริการ ให้เรียกใช้คำสั่งต่อไปนี้ในเทอร์มินัล

    python3 list_subscriptions.py

Google Workspace Events API จะแสดงผลอาร์เรย์ Subscription ที่แบ่งเป็นหน้าซึ่งตรงกับตัวกรองสำหรับคำค้นหา