หน้านี้จะอธิบายวิธีแสดงการสมัครใช้บริการ Google Workspace โดยใช้วิธี subscriptions.list()
เมื่อคุณเรียกใช้เมธอดนี้ด้วยการตรวจสอบสิทธิ์ของผู้ใช้ เมธอดจะแสดงรายการการสมัครใช้บริการที่ได้รับอนุญาตจากผู้ใช้ เมื่อใช้การตรวจสอบสิทธิ์ของแอป วิธีการนี้จะแสดงรายการที่มีการสมัครใช้บริการของแอป
ข้อกำหนดเบื้องต้น
Apps Script
- การสมัครใช้บริการ Google Workspace ในการสร้างการสมัครใช้บริการ โปรดดูสร้างการสมัครใช้บริการ
กำหนดให้ต้องตรวจสอบสิทธิ์ผู้ใช้ด้วยขอบเขตที่รองรับเหตุการณ์ทุกประเภทสำหรับการสมัครใช้บริการอย่างน้อย 1 รายการ
- โปรเจ็กต์ Apps Script
- ใช้โปรเจ็กต์ Google Cloud แทนโปรเจ็กต์เริ่มต้นที่ Apps Script สร้างขึ้นโดยอัตโนมัติ
- สําหรับขอบเขตที่คุณเพิ่มเพื่อกําหนดค่าหน้าจอขอความยินยอม OAuth คุณต้องเพิ่มขอบเขตนั้นลงในไฟล์
appsscript.json
ในโปรเจ็กต์ Apps Script ด้วย เช่น - เปิดใช้บริการขั้นสูง
Google Workspace Events
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.readonly" ]
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
ในโปรเจ็กต์ 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 ChatTARGET_RESOURCE
: ทรัพยากรเป้าหมาย ที่จัดรูปแบบเป็นชื่อทรัพยากรแบบเต็ม เช่น หากต้องการกรองตามการติดตามสำหรับพื้นที่ใน Google Chat ให้ใช้//chat.googleapis.com/spaces/SPACE_ID
โดยที่spaces/SPACE_ID
แสดงถึงช่องname
สำหรับทรัพยากรSpace
หากต้องการแสดงรายการการสมัครใช้บริการ ให้เรียกใช้ฟังก์ชัน
listSubscriptions
ในโปรเจ็กต์ Apps Script
Python
สร้างไฟล์ชื่อ
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 ChatTARGET_RESOURCE
: ทรัพยากรเป้าหมาย ที่จัดรูปแบบเป็นชื่อทรัพยากรแบบเต็ม เช่น หากต้องการกรองตามการติดตามสำหรับพื้นที่ใน Google Chat ให้ใช้//chat.googleapis.com/spaces/SPACE_ID
โดยที่spaces/SPACE_ID
แสดงถึงช่องname
สำหรับทรัพยากรSpace
ในไดเรกทอรีทํางาน ให้ตรวจสอบว่าคุณได้จัดเก็บข้อมูลเข้าสู่ระบบรหัสไคลเอ็นต์ OAuth และตั้งชื่อไฟล์เป็น
client_secrets.json
แล้ว ตัวอย่างโค้ดใช้ไฟล์ JSON นี้เพื่อตรวจสอบสิทธิ์กับ Google Workspace และรับข้อมูลเข้าสู่ระบบของผู้ใช้ โปรดดูวิธีการที่หัวข้อสร้างข้อมูลเข้าสู่ระบบรหัสไคลเอ็นต์ OAuthหากต้องการแสดงรายการการสมัครใช้บริการ ให้เรียกใช้คำสั่งต่อไปนี้ในเทอร์มินัล
python3 list_subscriptions.py
Google Workspace Events API จะแสดงผลอาร์เรย์ Subscription
ที่แบ่งเป็นหน้าซึ่งตรงกับตัวกรองสำหรับคำค้นหา