หน้านี้จะอธิบายวิธีแสดงรายการการสมัครใช้บริการ Google Workspace โดยใช้เมธอด subscriptions.list()
เมื่อเรียกใช้เมธอดนี้โดยมีการตรวจสอบสิทธิ์ผู้ใช้ เมธอดจะแสดงผลการสมัครใช้บริการที่ผู้ใช้ให้สิทธิ์ไว้ เมื่อใช้การตรวจสอบสิทธิ์แอป เมธอดดังกล่าวจะแสดงรายการที่มีการสมัครใช้บริการของแอปนั้นๆ
ข้อกำหนดเบื้องต้น
Apps Script
- การสมัครใช้บริการ Google Workspace หากต้องการสร้างการสมัครใช้บริการ โปรดดูหัวข้อสร้างการสมัครใช้บริการ
ต้องมีการตรวจสอบสิทธิ์ผู้ใช้ที่มีขอบเขตที่รองรับเหตุการณ์ทุกประเภทสำหรับการสมัครใช้บริการอย่างน้อย 1 รายการ
- โปรเจ็กต์ 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 ประเภท นอกจากนี้ คุณยังกรองการค้นหาตามทรัพยากรเป้าหมายอย่างน้อย 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 Chatgoogle.workspace.chat.message.v1.created
TARGET_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 Chatgoogle.workspace.chat.message.v1.created
TARGET_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 Event API จะแสดงผลอาร์เรย์ที่มีเลขหน้าของออบเจ็กต์ Subscription
รายการที่ตรงกับตัวกรองสำหรับการค้นหาของคุณ