คู่มือนี้อธิบายวิธีใช้เมธอด
list()
ในทรัพยากร SpaceEvent
ของ Google Chat API เพื่อแสดงการเปลี่ยนแปลงใน
ทรัพยากรในพื้นที่ทำงาน
SpaceEvent
ทรัพยากร
แสดงถึงการเปลี่ยนแปลงในพื้นที่เป้าหมาย รวมถึงทรัพยากรย่อยของพื้นที่
เช่น ข้อความ รีแอ็กชัน และการเป็นสมาชิก ดูข้อมูลเพิ่มเติมเกี่ยวกับ
รายการประเภทเหตุการณ์และเพย์โหลดเหตุการณ์ที่รองรับได้ที่ฟิลด์
eventType
และ
payload
ของเอกสารประกอบข้อมูลอ้างอิงทรัพยากร SpaceEvent
คุณแสดงกิจกรรมได้สูงสุด 28 วันก่อนเวลาที่ส่งคำขอ เซิร์ฟเวอร์
จะแสดงเหตุการณ์ที่มีทรัพยากรที่ได้รับผลกระทบเวอร์ชันล่าสุด
เช่น หากคุณแสดงกิจกรรมเกี่ยวกับสมาชิกใหม่ในพื้นที่ทำงาน เซิร์ฟเวอร์จะแสดงMembership
ทรัพยากรที่มีรายละเอียดการเป็นสมาชิกล่าสุด หากมีการนำสมาชิกใหม่
ออกในช่วงระยะเวลาที่ขอ เพย์โหลดของเหตุการณ์จะมีทรัพยากร Membership
ที่ว่างเปล่า
หากต้องการแสดงกิจกรรมจากพื้นที่ทำงาน ผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์หรือ แอป Chat ต้องเป็นสมาชิกของพื้นที่ทำงาน
ข้อกำหนดเบื้องต้น
Node.js
- บัญชี Google Workspace สำหรับธุรกิจหรือองค์กร ที่มีสิทธิ์เข้าถึง Google Chat
- ตั้งค่าสภาพแวดล้อม โดยทำดังนี้
- สร้างโปรเจ็กต์ Google Cloud
- กำหนดค่าหน้าจอขอความยินยอม OAuth
- เปิดใช้และกำหนดค่า Google Chat API พร้อมชื่อ ไอคอน และคำอธิบายสำหรับแอป Chat
- ติดตั้ง Node.js Cloud Client Library
- สร้างข้อมูลเข้าสู่ระบบเพื่อเข้าถึงตามวิธีที่คุณต้องการตรวจสอบสิทธิ์ในคำขอ Google Chat API
ดังนี้
- หากต้องการตรวจสอบสิทธิ์ในฐานะผู้ใช้ Chat ให้
สร้างรหัสไคลเอ็นต์ OAuthและบันทึกข้อมูลเข้าสู่ระบบเป็นไฟล์ JSON ชื่อ
credentials.json
ในไดเรกทอรีในเครื่อง - หากต้องการตรวจสอบสิทธิ์ในฐานะแอป Chat ให้
สร้างบัญชีบริการ
ข้อมูลเข้าสู่ระบบ แล้วบันทึกข้อมูลเข้าสู่ระบบเป็นไฟล์ JSON ชื่อ
credentials.json
- หากต้องการตรวจสอบสิทธิ์ในฐานะผู้ใช้ Chat ให้
สร้างรหัสไคลเอ็นต์ OAuthและบันทึกข้อมูลเข้าสู่ระบบเป็นไฟล์ JSON ชื่อ
- เลือกขอบเขตการให้สิทธิ์ตามว่าคุณต้องการตรวจสอบสิทธิ์ในฐานะผู้ใช้หรือ แอปใน Chat
Python
- บัญชี Google Workspace สำหรับธุรกิจหรือองค์กร ที่มีสิทธิ์เข้าถึง Google Chat
- ตั้งค่าสภาพแวดล้อม โดยทำดังนี้
- สร้างโปรเจ็กต์ Google Cloud
- กำหนดค่าหน้าจอขอความยินยอม OAuth
- เปิดใช้และกำหนดค่า Google Chat API พร้อมชื่อ ไอคอน และคำอธิบายสำหรับแอป Chat
- ติดตั้ง Python Cloud Client Library
- สร้างข้อมูลเข้าสู่ระบบเพื่อเข้าถึงตามวิธีที่คุณต้องการตรวจสอบสิทธิ์ในคำขอ Google Chat API
ดังนี้
- หากต้องการตรวจสอบสิทธิ์ในฐานะผู้ใช้ Chat ให้
สร้างรหัสไคลเอ็นต์ OAuthและบันทึกข้อมูลเข้าสู่ระบบเป็นไฟล์ JSON ชื่อ
credentials.json
ในไดเรกทอรีในเครื่อง - หากต้องการตรวจสอบสิทธิ์ในฐานะแอป Chat ให้
สร้างบัญชีบริการ
ข้อมูลเข้าสู่ระบบ แล้วบันทึกข้อมูลเข้าสู่ระบบเป็นไฟล์ JSON ชื่อ
credentials.json
- หากต้องการตรวจสอบสิทธิ์ในฐานะผู้ใช้ Chat ให้
สร้างรหัสไคลเอ็นต์ OAuthและบันทึกข้อมูลเข้าสู่ระบบเป็นไฟล์ JSON ชื่อ
- เลือกขอบเขตการให้สิทธิ์ตามว่าคุณต้องการตรวจสอบสิทธิ์ในฐานะผู้ใช้หรือ แอปใน Chat
แสดงรายการเหตุการณ์ในพื้นที่ (การตรวจสอบสิทธิ์ผู้ใช้)
หากต้องการแสดงกิจกรรมในพื้นที่ทำงานจากพื้นที่ทำงานใน Chat ให้ส่งข้อมูลต่อไปนี้ในคำขอ
ระบุขอบเขตการให้สิทธิ์อย่างน้อย 1 รายการเพื่อรองรับเหตุการณ์แต่ละประเภทในคำขอ แนวทางปฏิบัติแนะนำคือเลือกขอบเขตที่จำกัดที่สุดซึ่งยังคง อนุญาตให้แอปทำงานได้ หากต้องการเลือกขอบเขต โปรดดูภาพรวมการตรวจสอบสิทธิ์และการให้สิทธิ์
เรียกใช้เมธอด
ListSpaceEvents()
โดยส่งfilter
ของประเภทเหตุการณ์ที่จะแสดงรายการ คุณต้องระบุประเภทเหตุการณ์อย่างน้อย 1 ประเภท และยังกรองตามวันที่ได้ด้วย ดูรายการประเภทเหตุการณ์ที่รองรับได้ในเอกสารอ้างอิงของฟิลด์eventType
ของSpaceEvent
ทรัพยากร
ตัวอย่างต่อไปนี้แสดงรายการเหตุการณ์เกี่ยวกับการเป็นสมาชิกใหม่และข้อความใน พื้นที่
Node.js
หากต้องการเรียกใช้ตัวอย่างนี้ ให้แทนที่ SPACE_NAME
ด้วยรหัสจาก
พื้นที่
name
คุณรับรหัสได้โดยเรียกใช้เมธอด
ListSpaces()
หรือจาก URL ของพื้นที่ทำงาน
Chat API จะแสดงรายการ รายการเหตุการณ์ในพื้นที่ที่แบ่งหน้า เกี่ยวกับการเป็นสมาชิกและข้อความใหม่
แสดงรายการเหตุการณ์ในพื้นที่ทำงาน (การตรวจสอบสิทธิ์แอป Chat)
การตรวจสอบสิทธิ์แอปต้องมีการอนุมัติจากผู้ดูแลระบบแบบครั้งเดียว
หากต้องการแสดงกิจกรรมในพื้นที่ทำงานจากพื้นที่ทำงานที่มี การตรวจสอบสิทธิ์แอปและ Chat REST API ให้ส่ง ข้อมูลต่อไปนี้ในคำขอ
- ระบุขอบเขตการให้สิทธิ์อย่างน้อย 1 รายการเพื่อรองรับเหตุการณ์แต่ละประเภทในคำขอ
แนวทางปฏิบัติแนะนำคือเลือกขอบเขตที่จำกัดที่สุดซึ่งยังคง
อนุญาตให้แอปทำงานได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับการเลือกขอบเขตได้ที่ภาพรวมการตรวจสอบสิทธิ์และการให้สิทธิ์
https://www.googleapis.com/auth/chat.app.memberships
https://www.googleapis.com/auth/chat.app.messages.readonly
https://www.googleapis.com/auth/chat.app.spaces
- เรียกใช้เมธอด
list
ในspaceEvents
ทรัพยากร - ส่ง
name
ของพื้นที่ทำงานเพื่อแสดงรายการข้อความ - ส่ง
filter
เพื่อค้นหาประเภทเหตุการณ์ที่เฉพาะเจาะจง
สร้างคีย์ API
หากต้องการเรียกเมธอด API ของรุ่นตัวอย่างสำหรับนักพัฒนาซอฟต์แวร์ คุณต้องใช้เอกสารการค้นพบ API เวอร์ชันตัวอย่างสำหรับนักพัฒนาซอฟต์แวร์ที่ไม่ใช่แบบสาธารณะ หากต้องการตรวจสอบสิทธิ์คำขอ คุณต้องส่งคีย์ API
หากต้องการสร้างคีย์ API ให้เปิดโปรเจ็กต์ Google Cloud ของแอป แล้วทำดังนี้
- ในคอนโซล Google Cloud ให้ไปที่เมนู > API และบริการ > ข้อมูลเข้าสู่ระบบ
- คลิกสร้างข้อมูลเข้าสู่ระบบ > คีย์ API
- ระบบจะแสดงคีย์ API ใหม่
- คลิกคัดลอก เพื่อคัดลอกคีย์ API สำหรับใช้ ในโค้ดของแอป คุณยังดูคีย์ API ได้ในส่วน "คีย์ API" ของข้อมูลเข้าสู่ระบบของโปรเจ็กต์ ด้วย
- เราขอแนะนำให้จำกัดตำแหน่งและ API ที่ใช้คีย์ API ได้เพื่อป้องกันการใช้งานที่ไม่ได้รับอนุญาต ดูรายละเอียดเพิ่มเติมได้ที่ เพิ่มการจำกัด API
เขียนสคริปต์ที่เรียกใช้ Chat API
วิธีแสดงกิจกรรมในพื้นที่โดยใช้ การตรวจสอบสิทธิ์แอปและ Chat REST API มีดังนี้
Python
- สร้างไฟล์ชื่อ
chat_spaceevents_list_app.py
ในไดเรกทอรีการทำงาน ใส่รหัสต่อไปนี้ใน
chat_spaceevents_list_app.py
from google.oauth2 import service_account from apiclient.discovery import build # Define your app's authorization scopes. # Set authorization scopes based on the # event type. For example, if you are getting a space event # about a new membership, use the `chat.app.memberships.readonly` scope. # # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.app.memberships", "https://www.googleapis.com/auth/chat.app.messages.readonly", "https://www.googleapis.com/auth/chat.app.spaces"] def main(): ''' Authenticates with Chat API using app authentication, then lists space events from a specified space. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds, discoveryServiceUrl='https://chat.googleapis.com/$discovery/rest?version=v1&labels=DEVELOPER_PREVIEW&key=API_KEY') # Use the service endpoint to call Chat API. result = chat.spaces().spaceEvents().list( # The space to list events from. # # Replace SPACE_NAME with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE_NAME', # A required filter. Filters events by event type. # # Update this filter to match your requirements. filter='eventTypes:"google.workspace.chat.message.v1.created"' ).execute() # Print Chat API's response in your command line interface. print(result) if __name__ == '__main__': main()
ในโค้ด ให้แทนที่ค่าต่อไปนี้
API_KEY
: คีย์ API ที่คุณสร้างขึ้นเพื่อสร้าง ปลายทางบริการสำหรับ Chat APISPACE_NAME
: ชื่อพื้นที่ ซึ่งคุณรับได้จากเมธอดspaces.list
ใน Chat API หรือจาก URL ของพื้นที่
ในไดเรกทอรีการทำงาน ให้สร้างและเรียกใช้ตัวอย่างโดยทำดังนี้
python3 chat_spaceevents_list_app.py
Chat API จะแสดงรายการ รายการเหตุการณ์ในพื้นที่ที่แบ่งหน้า เกี่ยวกับการเป็นสมาชิกและข้อความใหม่