หน้านี้อธิบายเหตุการณ์ Google Chat ที่แอป Google Chat สามารถสมัครรับข้อมูลได้โดยใช้ Google Workspace Events API หลังจากเลือกประเภทเหตุการณ์ที่ต้องการแล้ว ให้สร้างการสมัครใช้บริการเพื่อเริ่มรับเหตุการณ์จาก Google Chat
นอกจากการติดตามเหตุการณ์แล้ว คุณยังค้นหาเหตุการณ์ได้โดยเรียกใช้ Chat API การเรียกใช้ Chat API ช่วยให้คุณเรียกข้อมูลเหตุการณ์เป็นระยะๆ หรือติดตามเหตุการณ์ที่คุณอาจพลาดจากการสมัครใช้บริการเนื่องจากระบบหยุดทำงาน หากต้องการดูวิธีรับและตอบสนองต่อเหตุการณ์ใน Chat โปรดดูทํางานกับเหตุการณ์จาก Google Chat ในเอกสารประกอบของ Chat
เหตุการณ์ใน Chat ที่รองรับ
การสมัครใช้บริการ Google Workspace ช่วยให้คุณได้รับเหตุการณ์เกี่ยวกับการเปลี่ยนแปลงประเภทต่อไปนี้ใน Chat
- ข้อความใหม่ อัปเดต หรือลบไปแล้วในพื้นที่ทำงาน
- ความรู้สึกใหม่หรือที่นําออกจากข้อความ
- สมาชิกใหม่ อัปเดต หรือนำออกในพื้นที่ทำงาน
- การเปลี่ยนแปลงพื้นที่ทำงานที่คุณติดตาม เช่น ชื่อหรือคำอธิบายพื้นที่ทำงานที่อัปเดต
ทรัพยากรที่คุณสามารถตรวจสอบเหตุการณ์ได้
หากต้องการรับเหตุการณ์ คุณต้องระบุทรัพยากร Chat เพื่อตรวจสอบ ซึ่งเรียกว่าทรัพยากรเป้าหมายของการสมัครใช้บริการ
Google Workspace Events API รองรับทรัพยากรเป้าหมายต่อไปนี้สำหรับ Chat
ทรัพยากรเป้าหมาย | รูปแบบ | ข้อจำกัด |
---|---|---|
Space |
โดยที่ SPACE คือรหัสใน
ชื่อทรัพยากรของทรัพยากร |
ผู้ใช้ Chat ที่ให้สิทธิ์การสมัครใช้บริการต้องเป็นสมาชิกของพื้นที่ทำงานผ่านบัญชี Google Workspace หรือบัญชี Google |
พื้นที่ทำงานทั้งหมดของผู้ใช้ |
|
การติดตามจะรับเฉพาะกิจกรรมของพื้นที่ทำงานที่ผู้ใช้เป็นสมาชิกผ่านบัญชี Google Workspace หรือบัญชี Google เท่านั้น |
ผู้ใช้ |
โดยที่ USER คือรหัสใน
ชื่อทรัพยากรของทรัพยากร |
การสมัครใช้บริการจะรับเฉพาะเหตุการณ์เกี่ยวกับผู้ใช้ที่อนุญาตให้สมัครใช้บริการเท่านั้น ผู้ใช้ไม่สามารถให้สิทธิ์การสมัครใช้บริการในนามของผู้ใช้รายอื่นได้ |
ประเภทเหตุการณ์สําหรับการสร้างการสมัครใช้บริการ
เมื่อสร้างการสมัครใช้บริการ คุณจะใช้ช่อง eventTypes[]
เพื่อระบุประเภทเหตุการณ์ที่ต้องการรับ ประเภทเหตุการณ์จะได้รับการรูปแบบตามข้อกำหนดของ CloudEvents เช่น google.workspace.APPLICATION.RESOURCE.VERSION.ACTION
ตัวอย่างเช่น หากต้องการรับเหตุการณ์เกี่ยวกับผู้ใช้ที่เข้าร่วมพื้นที่ใน Chat ให้ระบุพื้นที่เป็นทรัพยากรเป้าหมายและประเภทเหตุการณ์เป็นgoogle.workspace.chat.membership.v1.created
หากต้องการรับเหตุการณ์เกี่ยวกับผู้ใช้ที่เข้าร่วมพื้นที่ทำงาน ให้ระบุผู้ใช้เป็นทรัพยากรเป้าหมายและประเภทเหตุการณ์เป็น google.workspace.chat.membership.v1.created
ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำงานของกิจกรรมได้ที่โครงสร้างของกิจกรรม Google Workspace
ตารางต่อไปนี้แสดงประเภทเหตุการณ์ที่รองรับสำหรับการติดตามสเปซและการติดตามผู้ใช้ ดูข้อมูลเกี่ยวกับข้อยกเว้นเกี่ยวกับสิ่งที่ทริกเกอร์เหตุการณ์ได้ที่ข้อจํากัด
ประเภทเหตุการณ์ | รูปแบบ | ข้อมูลทรัพยากร | ||
---|---|---|---|---|
การติดตามพื้นที่ทำงาน | ||||
โพสต์ข้อความแล้ว |
|
|
||
อัปเดตข้อความแล้ว |
|
|
||
ลบข้อความแล้ว |
|
|
||
ระบบจะสร้างรีแอ็กชัน |
|
|
||
ลบรีแอ็กชัน |
|
|
||
ระบบจะเพิ่มสมาชิกไปยังพื้นที่ทำงาน |
|
|
||
อัปเดตสมาชิกในพื้นที่ทำงาน |
|
|
||
นำสมาชิกออกจากพื้นที่ทำงาน |
|
|
||
พื้นที่ทำงานได้รับการอัปเดตแล้ว |
|
|
||
ระบบจะลบพื้นที่ทำงาน |
|
|
||
การติดตามผู้ใช้ | ||||
ผู้ใช้กลายเป็นสมาชิกของพื้นที่ทำงาน
สมาชิกใหม่บางรายอาจไม่ได้ทริกเกอร์เหตุการณ์ โปรดดูรายละเอียดที่หัวข้อข้อจำกัด |
|
|
||
ระบบจะอัปเดตการเป็นสมาชิกของผู้ใช้ในพื้นที่ทำงาน |
|
|
||
ระบบจะนำผู้ใช้ออกจากการเป็นสมาชิกโดยตรงของพื้นที่ทำงาน |
|
|
ประเภทเหตุการณ์แบบเป็นกลุ่ม (เอาต์พุตเท่านั้น)
นอกจากจะได้รับเหตุการณ์ประเภทที่คุณสมัครใช้บริการแล้ว แอปแชทอาจยังได้รับเหตุการณ์แบบเป็นกลุ่มด้วย เหตุการณ์กลุ่มคือเหตุการณ์ที่แสดงถึงเหตุการณ์หลายรายการประเภทเดียวกันที่เกิดขึ้นในช่วงเวลาสั้นๆ เพย์โหลดของเหตุการณ์กลุ่มจะมีรายการทรัพยากรทั้งหมดที่มีการเปลี่ยนแปลง
ตัวอย่างเช่น หากผู้ใช้เพิ่มผู้ใช้ 20 คนในพื้นที่ทำงานพร้อมกัน แอป Chat อาจได้รับเหตุการณ์กลุ่ม (google.workspace.chat.membership.v1.batchCreated
) เพย์โหลดของเหตุการณ์ประกอบด้วยรายการทรัพยากร Membership
ใหม่ทั้งหมดที่สร้างเมื่อผู้ใช้เพิ่มสมาชิกในพื้นที่ทำงาน
คุณจะได้รับเหตุการณ์กลุ่มสําหรับเหตุการณ์ประเภทใดก็ตามที่คุณสมัครรับข้อมูล คุณจึงไม่ต้องระบุเหตุการณ์กลุ่มเมื่อสร้างการสมัครใช้บริการ ตัวอย่างเช่น หากคุณสมัครรับความรู้สึกใหม่ (google.workspace.chat.reaction.v1.created
) ระบบจะกำหนดค่าแอป Chat ให้รับเหตุการณ์ความรู้สึกแบบเป็นกลุ่ม (google.workspace.chat.reaction.v1.batchCreated
) โดยอัตโนมัติ
ตารางต่อไปนี้แสดงเหตุการณ์กลุ่มที่เป็นไปได้สำหรับการสมัครใช้บริการ
ประเภทเหตุการณ์กลุ่ม | รูปแบบ |
---|---|
มีการโพสต์ข้อความหลายรายการ |
|
อัปเดตข้อความหลายรายการ |
|
ลบข้อความหลายรายการ |
|
มีการสร้างรีแอ็กชันหลายรายการ |
|
ระบบจะลบรีแอ็กชันหลายรายการ |
|
มีการเพิ่มสมาชิกหลายคนไปยังพื้นที่ทำงานที่สมัครใช้บริการ หรือมีการเพิ่มผู้ใช้ที่สมัครใช้บริการไปยังพื้นที่ทำงานหลายแห่ง |
|
ระบบจะอัปเดตการเป็นสมาชิกหลายรายการในพื้นที่ทำงานที่สมัครใช้บริการหรือสำหรับผู้ใช้ที่สมัครใช้บริการ |
|
มีการนำสมาชิกหลายคนออกจากพื้นที่ทำงานที่ติดตาม หรือนำผู้ใช้ที่ติดตามออกจากพื้นที่ทำงานหลายแห่ง |
|
พื้นที่ทำงานมีการอัปเดตหลายรายการ |
|
ข้อมูลเหตุการณ์
ส่วนนี้อธิบายข้อมูลเหตุการณ์และตัวอย่างเพย์โหลดสําหรับเหตุการณ์ใน Chat
เมื่อการสมัครใช้บริการ Google Workspace ได้รับเหตุการณ์จาก Chat ช่อง data
จะมีเพย์โหลดสำหรับเหตุการณ์นั้น เพย์โหลดนี้มีข้อมูลเกี่ยวกับทรัพยากร Google Workspace ที่มีการเปลี่ยนแปลง เช่น หากคุณสมัครรับข้อมูลเหตุการณ์การเป็นสมาชิกในพื้นที่ทำงาน พัลย์โหลดของเหตุการณ์เหล่านี้จะมีข้อมูลเกี่ยวกับทรัพยากร spaces.membership
ที่เปลี่ยนแปลง
ข้อมูลทรัพยากรในเพย์โหลดเหตุการณ์
เมื่อสร้างการสมัครใช้บริการ คุณสามารถระบุได้ว่าต้องการให้เพย์โหลดมีรายละเอียดเกี่ยวกับทรัพยากรหรือแค่ชื่อทรัพยากร ตัวอย่างเช่น หากต้องการรับเหตุการณ์เกี่ยวกับสมาชิกในพื้นที่ทำงานของ Chat คุณสามารถระบุช่องของทรัพยากรการเป็นสมาชิกที่ต้องการรับในเพย์โหลดเหตุการณ์
ตารางต่อไปนี้แสดงตัวอย่างเพย์โหลด JSON สำหรับการติดตามพื้นที่ใน Chat spaces/AAAABBBBBB
สำหรับแต่ละเหตุการณ์ที่การสมัครใช้บริการได้รับ พัลส์จะปรากฏในช่อง data
ของเหตุการณ์
ตัวอย่าง | ประเภทเหตุการณ์ | เพย์โหลด JSON |
---|---|---|
ผู้ใช้โพสต์ข้อความในพื้นที่ทำงานว่า "สวัสดี" |
|
มีข้อมูลทรัพยากร
{ "message": { "name": "spaces/AAAABBBBBB/messages/CCCCCCCCC.DDDDDDDDD", "sender": { "name": "users/1234567890987654321", "type": "HUMAN" }, "createTime": "2023-09-07T21:37:36.260127Z", "text": "Hello world", "thread": { "name": "spaces/AAAABBBBBB/threads/EEEEEEEEEEEE" }, "space": { "name": "spaces/AAAABBBBBB" }, "argumentText": "Hello world" } } ไม่รวมข้อมูลทรัพยากร
{ "message": { "name": "spaces/AAAABBBBBB/messages/CCCCCCCCC.DDDDDDDDD" } } |
ผู้ใช้กลายเป็นผู้จัดการพื้นที่ทำงาน |
|
มีข้อมูลทรัพยากร
{ "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321", "state": "JOINED", "member": { "name": "users/1234567890987654321", "type": "HUMAN" }, "createTime": "1970-01-01T00:00:00Z", "role": "ROLE_MANAGER" } } ไม่รวมข้อมูลทรัพยากร
{ "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321" } } |
ผู้ใช้อัปเดตคำอธิบายของพื้นที่ทำงานเป็น "ทีมขายของ Cymbal Labs" | google.workspace.chat.space.v1.updated |
มีข้อมูลทรัพยากร
{ "space": { "name": "spaces/AAAABBBBBB", "displayName": "Cymbal Sales", "spaceThreadingState": "THREADED_MESSAGES", "spaceType": "SPACE", "spaceDetails": { "description": "Sales team for Cymbal Labs." }, "spaceHistoryState": "HISTORY_ON" } } ไม่รวมข้อมูลทรัพยากร
{ "space": { "name": "spaces/AAAABBBBBB" } } |
มีการเพิ่มผู้ใช้ Chat 2 รายในพื้นที่ทำงานพร้อมกัน | google.workspace.chat.membership.v1.batchCreated |
มีข้อมูลทรัพยากร
{ "memberships": [ { "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321", "state": "JOINED", "member": { "name": "users/1234567890987654321", "type": "HUMAN" }, "createTime": "1970-01-01T00:00:00Z", "role": "ROLE_MEMBER" } }, { "membership": { "name": "spaces/AAAABBBBBB/members/987654321234567890", "state": "JOINED", "member": { "name": "users/987654321234567890", "type": "HUMAN" }, "createTime": "1970-01-01T00:00:00Z", "role": "ROLE_MEMBER" } } ] } ไม่รวมข้อมูลทรัพยากร
{ "memberships": [ { "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321" } }, { "membership": { "name": "spaces/AAAABBBBBB/members/98765432123456789019" } } ] } |
ผู้ใช้แสดงความรู้สึกต่อข้อความด้วยอีโมจิ 😊 | google.workspace.chat.reaction.v1.created |
มีข้อมูลทรัพยากร
{ "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222", "user": { "name": "users/1234567890987654321", "type": "HUMAN" }, "emoji": { "unicode": "😊" } } } ละเว้นข้อมูลทรัพยากร
{ "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222" } } |
ผู้ใช้แสดงความรู้สึกต่อข้อความด้วยอีโมจิ 😊 และ 😸 | google.workspace.chat.reaction.v1.batchCreated |
มีข้อมูลทรัพยากร
{ "reactions": [ { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222", "user": { "name": "users/1234567890987654321", "type": "HUMAN" }, "emoji": { "unicode": "😊" } } }, { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/3333333333333333.444444444444444", "user": { "name": "users/98765431234564321", "type": "HUMAN" }, "emoji": { "unicode": "😸" } } } ] } ละเว้นข้อมูลทรัพยากร
{ "reactions": [ { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222" }, "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/3333333333333333.444444444444444", } } ] } |
ข้อจำกัด
-
สำหรับการติดตามผู้ใช้ เหตุการณ์เกี่ยวกับสมาชิกใหม่ในข้อความส่วนตัวหรือแชทเป็นกลุ่มที่ไม่มีชื่อ (
google.workspace.chat.membership.v1.created
) จะทริกเกอร์หลังจากมีการโพสต์ข้อความแรกเท่านั้น - หากต้องการรับกิจกรรมการเป็นสมาชิก ผู้ใช้ต้องเป็นสมาชิกโดยตรงของพื้นที่ทำงาน หากมีการเพิ่ม อัปเดต หรือนำผู้ใช้ออกจากพื้นที่ทำงานผ่าน Google Group โดยอ้อม การสมัครใช้บริการจะไม่ได้รับการแจ้งเตือนกิจกรรมการเป็นสมาชิกเหล่านั้น หากต้องการทำความเข้าใจวิธีการทำงานของการเป็นสมาชิก Google Group โปรดดูหัวข้อเพิ่ม Google Group ในพื้นที่ทำงาน
หัวข้อที่เกี่ยวข้อง
- โครงสร้างของกิจกรรมใน Google Workspace
- เลือกขอบเขต OAuth
- สร้างการสมัครใช้บริการเพื่อรับเหตุการณ์ใน Chat