ใช้งานกิจกรรมจาก Google Chat

หน้านี้อธิบายวิธีที่แอป Google Chat สามารถรับและตอบสนองต่อเหตุการณ์ใน Google Chat

เหตุการณ์ Google Chat แสดงถึงกิจกรรมหรือการเปลี่ยนแปลงใน Chat เช่น ข้อความใหม่ในพื้นที่ทำงาน แอปใน Chat สามารถใช้เหตุการณ์เพื่อทำความเข้าใจสิ่งที่เกิดขึ้นและดำเนินการหรือตอบกลับในลักษณะที่มีความหมายต่อผู้ใช้

ตัวอย่างวิธีใช้เหตุการณ์มีดังนี้

  • ตรวจสอบและตอบกลับข้อความใหม่ในพื้นที่ทำงาน เช่น ตรวจสอบคีย์เวิร์ดหรือวลี
  • ส่งข้อความต้อนรับผู้ใช้เมื่อเข้าร่วมพื้นที่ทำงานเพื่ออธิบายหลักเกณฑ์ของพื้นที่ทำงานหรือแชร์เคล็ดลับเกี่ยวกับวิธีใช้แอปใน Chat อย่างมีประสิทธิภาพ
  • ติดตามและวิเคราะห์กิจกรรมใน Chat เช่น เพื่อส่งรายงานรายเดือนเกี่ยวกับสมาชิกใหม่หรือข้อความที่ได้รับการแสดงความรู้สึกหรือการตอบกลับมากที่สุด
  • สื่อสารข้ามแพลตฟอร์มรับส่งข้อความ ตัวอย่างเช่น ผู้ใช้สามารถส่งและรับข้อความจากผู้ใช้ในแพลตฟอร์มการรับส่งข้อความอื่นได้โดยไม่ต้องออกจาก Chat

วิธีการทำงานของกิจกรรม

เมื่อใดก็ตามที่มีเหตุการณ์เกิดขึ้นใน Google Chat ระบบจะสร้าง อัปเดต หรือลบทรัพยากร Google Chat API Chat ใช้เหตุการณ์เพื่อส่งข้อมูลไปยังแอปใน Chat เกี่ยวกับประเภทกิจกรรมที่เกิดขึ้นและทรัพยากร Chat API ที่ได้รับผลกระทบ

ตัวอย่างวิธีที่ข้อความที่โพสต์ไปยังพื้นที่ใน Google Chat ทริกเกอร์เหตุการณ์
รูปที่ 1 ผู้ใช้โพสต์ข้อความในพื้นที่ใน Chat ซึ่งจะสร้างทรัพยากร Message จากนั้น Chat จะสร้างเหตุการณ์ที่มีข้อมูลเกี่ยวกับข้อความใหม่

Chat จะจัดหมวดหมู่เหตุการณ์ตามประเภท ประเภทเหตุการณ์ช่วยให้คุณกรองและรับเฉพาะประเภทข้อมูลที่ต้องการ และช่วยให้คุณจัดการกิจกรรมที่คล้ายกันในลักษณะเดียวกันได้

ตารางต่อไปนี้แสดงให้เห็นว่ากิจกรรมใน Chat ส่งผลต่อทรัพยากร Chat API ที่เกี่ยวข้องอย่างไร และประเภทเหตุการณ์ที่แอปใน Chat ของคุณได้รับ

กิจกรรม แหล่งข้อมูล Chat API ประเภทของกิจกรรม
ผู้ใช้โพสต์ข้อความในพื้นที่ใน Chat ระบบจะสร้างทรัพยากร Message ข้อความใหม่
ผู้ใช้กลายเป็นผู้จัดการพื้นที่ทำงาน มีการอัปเดตทรัพยากร Membership อัปเดตการเป็นสมาชิกแล้ว
ผู้ใช้แสดงความรู้สึกต่อข้อความ ระบบจะสร้างทรัพยากร Reaction รีแอ็กชันใหม่
ผู้ใช้ออกจากพื้นที่ทำงาน ระบบจะลบทรัพยากร Membership ลบการเป็นสมาชิกแล้ว

รับเหตุการณ์จาก Google Chat

หากต้องการรับเหตุการณ์ แอปใน Chat สามารถทำอย่างใดอย่างหนึ่งต่อไปนี้

  • สมัครรับข้อมูลกิจกรรมโดยใช้ Google Workspace Events API เพื่อรับกิจกรรมเมื่อเกิดขึ้น
  • ค้นหาเหตุการณ์ล่าสุดโดยเรียกใช้ Chat API

ตารางต่อไปนี้อธิบายความแตกต่างและเหตุผลในการค้นหาหรือสมัครรับข้อมูลเหตุการณ์

สมัครรับข้อมูลเหตุการณ์ ค้นหาเหตุการณ์
กรณีการใช้งาน
  • ประมวลผลหรือตอบสนองต่อเหตุการณ์แบบเรียลไทม์
  • ตรวจสอบกิจกรรมการเป็นสมาชิกของผู้ใช้และค้นพบพื้นที่ทำงานใหม่ๆ ที่จะตรวจสอบ
  • ประมวลผลหรือตอบสนองต่อเหตุการณ์เป็นระยะๆ หรือผ่านทริกเกอร์
  • ดึงข้อมูลเหตุการณ์ที่พลาดไปจากการสมัครใช้บริการ (เนื่องจากระบบหยุดทำงานหรือการสมัครใช้บริการไม่มีการใช้งาน)
API Google Workspace Events API Chat API
แหล่งที่มาของเหตุการณ์ พื้นที่ทำงาน ผู้ใช้ และองค์กร Google Workspace ( เวอร์ชันตัวอย่างสำหรับนักพัฒนาซอฟต์แวร์) Spaces เท่านั้น
เหตุการณ์ที่รองรับ
  • ข้อความ
  • การเป็นสมาชิก
  • รีแอ็กชัน
  • Space

ดูรายการประเภทเหตุการณ์ที่รองรับได้ที่ ประเภทเหตุการณ์สำหรับการสร้างการสมัครใช้บริการในเอกสารประกอบของ Google Workspace Events API
  • ข้อความ
  • การเป็นสมาชิก
  • รีแอ็กชัน
  • Space

ดูรายการประเภทเหตุการณ์ที่รองรับได้ที่ แหล่งข้อมูล spaceEvents ในเอกสารอ้างอิง Chat API
รูปแบบกิจกรรม ข้อความ Google Cloud Pub/Sub ที่จัดรูปแบบตามข้อกำหนด CloudEvent โปรดดูรายละเอียดที่หัวข้อโครงสร้างของเหตุการณ์ Google Workspace ทรัพยากร Chat API ( spaces.spaceEvent)
ข้อมูลเหตุการณ์ สตริงที่เข้ารหัส Base64 โดยมีหรือไม่มีข้อมูลทรัพยากร ดูตัวอย่างเพย์โหลดได้ที่ข้อมูลเหตุการณ์ เพย์โหลด JSON ที่มีข้อมูลทรัพยากร เหตุการณ์บางประเภทมีเฉพาะฟิลด์ทรัพยากรบางฟิลด์เท่านั้น ดูตัวอย่างเพย์โหลดได้ใน เอกสารอ้างอิง

ตัวอย่าง: ค้นหาหรือสมัครรับข้อมูลกิจกรรมเกี่ยวกับการเป็นสมาชิกในพื้นที่ทำงาน

ในตัวอย่างนี้ แอปใน Chat ต้องการรับข้อมูลเกี่ยวกับการเปลี่ยนแปลงสมาชิกของพื้นที่ทำงานใน Chat ในพื้นที่ทำงาน กิจกรรมการเป็นสมาชิกต่อไปนี้จะเกิดขึ้น

  • ผู้ใช้เข้าร่วมพื้นที่ทำงาน ซึ่งจะสร้างทรัพยากร Membership และทริกเกอร์เหตุการณ์สมาชิกใหม่
  • ผู้ใช้กลายเป็นผู้จัดการพื้นที่ทำงาน ซึ่งจะอัปเดตทรัพยากร Membership สำหรับผู้ใช้และทริกเกอร์เหตุการณ์สมาชิกที่อัปเดต
  • ผู้ใช้ออกจากพื้นที่ทำงาน ซึ่งจะลบทรัพยากร Membership สำหรับผู้ใช้และทริกเกอร์เหตุการณ์การลบสมาชิก

เหตุการณ์สมัครรับข้อมูลการเป็นสมาชิก

หากต้องการรับเหตุการณ์แบบเรียลไทม์ แอปใน Chat จะเรียกใช้เมธอด subscriptions.create() ของ Google Workspace Events API เพื่อสมัครรับข้อมูลพื้นที่ทำงานสำหรับเหตุการณ์การเป็นสมาชิกทุกประเภท หลังจากสร้างการสมัครใช้บริการแล้ว แอปใน Chat จะเริ่มรับเหตุการณ์การเป็นสมาชิกได้

แอปใน Chat ที่สมัครรับข้อมูลกิจกรรมโดยใช้ Google Workspace Events API
รูปที่ 2 แอปใน Chat จะได้รับเหตุการณ์การเป็นสมาชิกผ่านการสมัครใช้บริการโดยใช้ Google Workspace Events API

ในรูปที่ 2 แอปใน Chat มีการสมัครใช้บริการพื้นที่ทำงานอยู่ แอปจึงได้รับเหตุการณ์เมื่อใดก็ตามที่การเป็นสมาชิกในพื้นที่ทำงานมีการเปลี่ยนแปลง จากนั้นแอปใน Chat จะประมวลผลหรือตอบสนองต่อกิจกรรมต่างๆ แบบเรียลไทม์ได้ เช่น โพสต์ข้อความต้อนรับส่วนตัวถึงสมาชิกที่เข้าร่วมพื้นที่ทำงาน

ดูข้อมูลเกี่ยวกับการสร้างการสมัครใช้บริการโดยใช้ Google Workspace Events API ได้ที่เอกสารประกอบของ Google Workspace Events API

ค้นหากิจกรรมล่าสุดเกี่ยวกับการเป็นสมาชิก

แทนที่จะรับเหตุการณ์การเป็นสมาชิกเมื่อเกิดขึ้น แอปใน Chat สามารถเรียกใช้ Chat API เพื่อแสดงรายการเหตุการณ์ล่าสุดในพื้นที่ทำงานที่เกี่ยวข้องกับกิจกรรมการเป็นสมาชิกได้

แอปใน Chat ที่ค้นหากิจกรรมโดยใช้ Chat API
รูปที่ 3 แอปใน Chat จะได้รับเหตุการณ์การเป็นสมาชิกล่าสุดโดยการค้นหาเหตุการณ์ในพื้นที่ทำงานโดยใช้ Chat API

ในรูปที่ 3 แอป Chat จะเรียกใช้เมธอด spaces.spaceEvents.list() ของ Chat API หลังจากที่กิจกรรมการเป็นสมาชิกทั้งหมดเกิดขึ้นแล้ว และกรองการค้นหาสำหรับเหตุการณ์การเป็นสมาชิกใหม่ เหตุการณ์การเป็นสมาชิกที่อัปเดต และเหตุการณ์การเป็นสมาชิกที่ถูกลบ Chat API จะแสดงรายการทรัพยากร spaceEvent ที่แสดงถึงการเปลี่ยนแปลงการเป็นสมาชิกแต่ละรายการ จากนั้นแอปใน Chat จะประมวลผลหรือตอบกลับตามกิจกรรมล่าสุดได้ เช่น การโพสต์ข้อความรายสัปดาห์พร้อมสรุปกิจกรรมการเป็นสมาชิกของพื้นที่ทำงานในช่วง 7 วันที่ผ่านมา

หากต้องการค้นหากิจกรรมโดยใช้ Chat API โปรดดูหัวข้อแสดงรายการกิจกรรมจากพื้นที่ทำงานใน Google Chat

ข้อจำกัดและลักษณะการแสดงโฆษณา

ข้อจำกัดทั่วไป

  • หากต้องการรับเหตุการณ์การเป็นสมาชิก ผู้ใช้หรือแอปใน Chat ต้องเป็นสมาชิกโดยตรงของพื้นที่ทำงาน หากมีการเพิ่ม อัปเดต หรือนำผู้ใช้ออกจากพื้นที่ทำงานโดยอ้อมผ่าน Google Group การสมัครใช้บริการจะไม่ได้รับเหตุการณ์การเป็นสมาชิกเหล่านั้น ดูวิธีทำงานของการเป็นสมาชิก Google Group ได้ที่หัวข้อเพิ่ม Google Group ในพื้นที่ทำงาน

การสมัครใช้บริการของผู้ใช้

  • สำหรับการสมัครใช้บริการของผู้ใช้ เหตุการณ์เกี่ยวกับสมาชิกใหม่ในข้อความส่วนตัวหรือแชทเป็นกลุ่มที่ไม่มีชื่อ (google.workspace.chat.membership.v1.created) จะทริกเกอร์หลังจากโพสต์ข้อความแรกเท่านั้น

การสมัครใช้บริการของลูกค้า

การสมัครใช้บริการของลูกค้ามีข้อจำกัดดังต่อไปนี้

  • องค์กร Google Workspace ต้องมีใบอนุญาต SKU ของ Enterprise อย่างน้อย 1 ใบ
  • แอปใน Chat จะสร้างการสมัครใช้บริการของลูกค้าได้เพียงรายการเดียวสำหรับองค์กร Google Workspace หนึ่งๆ องค์กร Google Workspace มีการสมัครใช้บริการของลูกค้าได้สูงสุด 5 รายการ (สร้างโดยแอปใน Chat ที่แตกต่างกัน)

สำหรับการสมัครใช้บริการของลูกค้า การส่งเหตุการณ์จะเป็นไปตามกฎทั่วไปต่อไปนี้

  • เหตุการณ์ในพื้นที่ทำงาน: ระบบจะส่งเหตุการณ์ก็ต่อเมื่อเหตุการณ์เกิดขึ้นในพื้นที่ทำงานที่จัดการโดยองค์กร Google Workspace ของคุณ
  • เหตุการณ์ของผู้ใช้: ระบบจะส่งเหตุการณ์ก็ต่อเมื่อเหตุการณ์นั้นเกิดขึ้นกับผู้ใช้ที่อยู่ในองค์กร Google Workspace ของคุณ

ข้อยกเว้นเพียงอย่างเดียวสำหรับกฎเหล่านี้คือกิจกรรมการเป็นสมาชิก การสมัครใช้บริการของคุณจะรับเหตุการณ์การเป็นสมาชิกได้จากทั้งพื้นที่ทำงานที่จัดการโดยองค์กรของคุณและพื้นที่ทำงานที่จัดการโดยองค์กรภายนอก แต่วิธีการส่งจะขึ้นอยู่กับองค์กรที่จัดการพื้นที่ทำงาน ดังนี้

พื้นที่ทำงานที่จัดการโดยองค์กร Google Workspace ของคุณ

หากมีการเปลี่ยนแปลงการเป็นสมาชิกในพื้นที่ทำงานที่จัดการโดยองค์กร Google Workspace ระบบจะส่งการเปลี่ยนแปลงดังกล่าวเป็นเหตุการณ์ในพื้นที่ทำงาน

ชื่อทรัพยากรของเหตุการณ์ในพื้นที่ทำงานจะใช้รูปแบบต่อไปนี้

spaces/{spaceId}/spaceEvents/{spaceEventId}

พื้นที่ทำงานที่จัดการโดยองค์กรภายนอก

หากการเป็นสมาชิกของผู้ใช้ที่จัดการโดยองค์กร Google Workspace ของคุณมีการเปลี่ยนแปลงในพื้นที่ทำงานที่จัดการโดยองค์กรภายนอก (เช่น พื้นที่ทำงานที่มีชื่อภายนอกหรือข้อความส่วนตัวที่สร้างโดยผู้ใช้ภายนอก) การสมัครใช้บริการของคุณจะได้รับเหตุการณ์นี้เป็นเหตุการณ์ของผู้ใช้

ชื่อทรัพยากรของเหตุการณ์ของผู้ใช้จะใช้รูปแบบต่อไปนี้

users/{userId}/userEvents/{userEventId}