คู่มือนี้จะอธิบายวิธีใช้เมธอด list
ในทรัพยากร SpaceEvent
ของ Google Chat API เพื่อแสดงรายการการเปลี่ยนแปลงทรัพยากรในพื้นที่ทำงาน
แหล่งข้อมูลของ SpaceEvent
แสดงการเปลี่ยนแปลงพื้นที่ทำงานเป้าหมาย รวมถึงทรัพยากรย่อยของพื้นที่ทำงาน
เช่น ข้อความ รีแอ็กชัน และการเป็นสมาชิก ดูข้อมูลเพิ่มเติมเกี่ยวกับ
รายการประเภทเหตุการณ์และเพย์โหลดเหตุการณ์ที่รองรับ โปรดดู eventType
และ
payload
ช่องของทรัพยากร SpaceEvent
เอกสารอ้างอิง
คุณระบุกิจกรรมได้ล่วงหน้าสูงสุด 28 วันก่อนจะมีการส่งคำขอ เซิร์ฟเวอร์
จะแสดงเหตุการณ์ที่มีเวอร์ชันล่าสุดของทรัพยากรที่ได้รับผลกระทบ
เช่น หากคุณแสดงเหตุการณ์เกี่ยวกับสมาชิกใหม่ในพื้นที่ทำงาน เซิร์ฟเวอร์จะส่งกลับ
แหล่งข้อมูล Membership
รายการที่มีรายละเอียดการเป็นสมาชิกล่าสุด หากมีการนำสมาชิกใหม่ออกในช่วงที่ขอ เพย์โหลดเหตุการณ์จะมีทรัพยากร Membership
ว่างเปล่า
หากต้องการเรียกใช้เมธอดนี้ คุณต้องใช้ user authentication รายการ เหตุการณ์จากพื้นที่ทำงาน ผู้ใช้ที่ตรวจสอบสิทธิ์แล้วจะต้องเป็นสมาชิกของพื้นที่ทำงานนั้น
ข้อกำหนดเบื้องต้น
Python
- ธุรกิจหรือองค์กร บัญชี Google Workspace ที่มีสิทธิ์เข้าถึง Google Chat
- ตั้งค่าสภาพแวดล้อมโดยทำดังนี้
- สร้างโปรเจ็กต์ Google Cloud
- กำหนดค่าหน้าจอขอความยินยอม OAuth
- เปิดใช้และกำหนดค่า Google Chat API โดยใช้ชื่อ ไอคอนและคำอธิบายสำหรับแอป Chat
-
สร้างข้อมูลเข้าสู่ระบบรหัสไคลเอ็นต์ OAuth สำหรับแอปพลิเคชันบนเดสก์ท็อป หากต้องการเรียกใช้ตัวอย่างใน
ให้บันทึกข้อมูลเข้าสู่ระบบเป็นไฟล์ JSON ชื่อ
client_secrets.json
ลงในไฟล์ ไดเรกทอรีในเครื่อง
- เลือกขอบเขตการให้สิทธิ์ที่รองรับการตรวจสอบสิทธิ์ผู้ใช้
แสดงรายการเหตุการณ์ในพื้นที่ทำงาน
หากต้องการแสดงรายการเหตุการณ์ในพื้นที่ทำงานจากพื้นที่ใน Chat ให้ทำดังนี้
- เรียกใช้เมธอด
list
ในSpaceEvent
ทรัพยากร - ระบุประเภทเหตุการณ์ที่จะแสดงรายการโดยใช้
filter
ด้วย คุณต้องระบุประเภทเหตุการณ์อย่างน้อย 1 ประเภท และคุณยังสามารถกรองตาม วันที่ ดูรายการประเภทเหตุการณ์ที่รองรับได้ที่eventType
field - เมื่อใช้การตรวจสอบสิทธิ์ผู้ใช้ ให้ระบุขอบเขตการให้สิทธิ์อย่างน้อย 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
: โทเค็นหน้าเว็บที่ได้รับจากการเรียกเหตุการณ์พื้นที่รายการก่อนหน้านี้ ระบุโทเค็นนี้เพื่อเรียกข้อมูลหน้าถัดไป เมื่อใส่เลขหน้า พารามิเตอร์ ค่าตัวกรองควรตรงกับการเรียกใช้ที่ระบุโทเค็นหน้าเว็บ การส่งค่าอื่นอาจทำให้เกิดผลลัพธ์ที่ไม่คาดคิด