คู่มือนี้อธิบายวิธีใช้เมธอด list
ในทรัพยากร SpaceEvent
ของ Google Chat API เพื่อแสดงการเปลี่ยนแปลงของทรัพยากรในพื้นที่ทำงาน
ทรัพยากร SpaceEvent
แสดงถึงการเปลี่ยนแปลงในพื้นที่ทำงานเป้าหมาย รวมถึงทรัพยากรย่อยของพื้นที่ทำงาน เช่น ข้อความ ความรู้สึก และการเป็นสมาชิก ดูข้อมูลเพิ่มเติมเกี่ยวกับรายการประเภทเหตุการณ์และเพย์โหลดเหตุการณ์ที่รองรับได้ที่ช่อง eventType
และ payload
ของเอกสารอ้างอิงทรัพยากร SpaceEvent
คุณแสดงกิจกรรมได้สูงสุด 28 วันก่อนเวลาที่ขอ โดยเซิร์ฟเวอร์จะแสดงผลเหตุการณ์ที่มีทรัพยากรที่ได้รับผลกระทบเวอร์ชันล่าสุด
ตัวอย่างเช่น หากคุณแสดงกิจกรรมเกี่ยวกับสมาชิกใหม่ของพื้นที่ทำงาน เซิร์ฟเวอร์จะแสดงผลทรัพยากร Membership
ที่มีรายละเอียดการเป็นสมาชิกล่าสุด หากสมาชิกใหม่ถูกนำออกในช่วงเวลาที่ขอ เพย์โหลดของเหตุการณ์จะมีทรัพยากร Membership
ที่ว่างเปล่า
หากต้องการเรียกใช้วิธีการนี้ คุณต้องใช้การตรวจสอบสิทธิ์ผู้ใช้ หากต้องการแสดงเหตุการณ์จากพื้นที่ทำงาน ผู้ใช้ที่ผ่านการตรวจสอบสิทธิ์ต้องเป็นสมาชิกของพื้นที่ทำงานนั้น
ข้อกำหนดเบื้องต้น
Python
- Python 3.6 ขึ้นไป
- เครื่องมือการจัดการแพ็กเกจ pip
ไลบรารีของไคลเอ็นต์ Google ล่าสุดสำหรับ Python หากต้องการติดตั้งหรืออัปเดต ให้เรียกใช้คำสั่งต่อไปนี้ในอินเทอร์เฟซบรรทัดคำสั่ง
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- โปรเจ็กต์ Google Cloud ที่เปิดใช้และกำหนดค่า Google Chat API โปรดดูขั้นตอนที่หัวข้อสร้างแอป Google Chat
กำหนดค่าการให้สิทธิ์สำหรับแอป Chat แล้ว ทรัพยากร
SpaceEvent
รายการรองรับวิธีการตรวจสอบสิทธิ์ต่อไปนี้- การตรวจสอบสิทธิ์ผู้ใช้: ต้องมีขอบเขตที่รองรับประเภทเหตุการณ์ที่ขอ หากต้องการระบุขอบเขต โปรดดูขอบเขตตามประเภทเหตุการณ์
แสดงรายการเหตุการณ์ในพื้นที่ทำงาน
หากต้องการแสดงรายการกิจกรรมของพื้นที่ทำงานจากพื้นที่ใน Chat ให้ทำดังนี้
- เรียกเมธอด
list
ในทรัพยากรSpaceEvent
- ระบุประเภทเหตุการณ์ที่จะแสดงรายการโดยใช้ช่อง
filter
คุณต้องระบุประเภทเหตุการณ์อย่างน้อย 1 ประเภทและจะกรองตามวันที่ได้ด้วย ดูรายการประเภทเหตุการณ์ที่รองรับได้ที่ช่องeventType
- เมื่อใช้การตรวจสอบสิทธิ์ผู้ใช้ ให้ระบุขอบเขตการให้สิทธิ์อย่างน้อย 1 รายการเพื่อรองรับเหตุการณ์แต่ละประเภทในคำขอ แนวทางปฏิบัติแนะนำคือขอบเขตที่จำกัดที่สุดที่ยังทำให้แอปทำงานได้ หากต้องการเลือกขอบเขต โปรดดูภาพรวมการตรวจสอบสิทธิ์และการให้สิทธิ์
ในตัวอย่างโค้ดต่อไปนี้ คุณแสดงเหตุการณ์เกี่ยวกับการเป็นสมาชิกใหม่และข้อความในพื้นที่ทำงาน
Python
- สร้างไฟล์ชื่อ
chat_space_event_list.py
ในไดเรกทอรีการทำงาน ใส่รหัสต่อไปนี้ใน
chat_space_event_list.py
:"""Lists SpaceEvent resources from the Chat API.""" 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.readonly", "https://www.googleapis.com/auth/chat.messages.readonly"] # 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().spaceEvents().list( # The space from which to list events. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE', # A required filter. Filters and returns events about new memberships and messages filter='event_types:"google.workspace.chat.membership.v1.created" OR event_types:"google.workspace.chat.message.v1.created"' ).execute() # Prints details about the created space events. print(result)
ในโค้ด ให้แทนที่ส่วนต่อไปนี้
SPACE
: ชื่อพื้นที่ทำงาน ซึ่งจะดูได้จากเมธอดspaces.list
ใน Chat API หรือจาก URL ของพื้นที่ทำงาน
สร้างและเรียกใช้ตัวอย่างในไดเรกทอรีการทำงาน
python3 chat_space_event_list.py
Chat API จะแสดงรายการเหตุการณ์ทรัพยากร SpaceEvent
รายการ
เกี่ยวกับการเป็นสมาชิกและข้อความใหม่
ปรับแต่งการใส่เลขหน้า
(ไม่บังคับ) ส่งพารามิเตอร์การค้นหาต่อไปนี้เพื่อปรับแต่งการใส่เลขหน้า
pageSize
: จำนวนทรัพยากรสูงสุดSpaceEvent
รายการที่จะแสดงผล บริการอาจแสดงผลน้อยกว่าค่านี้ ค่าเชิงลบจะแสดงผลข้อผิดพลาดINVALID_ARGUMENT
pageToken
: โทเค็นหน้าเว็บที่ได้รับจากการเรียกเหตุการณ์ในพื้นที่รายการก่อนหน้านี้ ระบุโทเค็นนี้เพื่อเรียกหน้าถัดไป เวลาใส่เลขหน้า ค่าตัวกรองควรตรงกับการเรียกที่ให้โทเค็นของหน้าเว็บ การส่งต่อค่าที่ต่างกันอาจทําให้เกิดผลลัพธ์ที่ไม่คาดคิด