ติดตามกิจกรรมใน Google Chat

หน้านี้จะอธิบายถึงกิจกรรมใน Google Chat ที่แอป Google Chat สามารถสมัครใช้บริการได้โดยใช้ Google Workspace Events API หลังจากเลือกประเภทกิจกรรมที่ต้องการแล้ว ให้สร้างการสมัครใช้บริการเพื่อเริ่มรับกิจกรรมจาก Google Chat

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

ทรัพยากรเป้าหมายของ Chat ที่รองรับ

Google Workspace Events API รองรับการสมัครใช้บริการดังต่อไปนี้

  • พื้นที่ทำงาน ซึ่งแสดงเป็นทรัพยากร space
  • ผู้ใช้ซึ่งแสดงเป็นทรัพยากร user ของ Cloud Identity API

กิจกรรมใน Chat ที่รองรับ

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

  • ข้อความใหม่ อัปเดต หรือลบในพื้นที่ทำงาน
  • รีแอ็กชันใหม่หรือที่ถูกนำออก ต่อข้อความ
  • สมาชิกใหม่ ที่อัปเดต หรือถูกนำออกในพื้นที่ทำงาน
  • การเปลี่ยนแปลงพื้นที่ทำงานที่คุณสมัครใช้บริการ เช่น ชื่อหรือคำอธิบายพื้นที่ทำงานที่อัปเดตแล้ว

ประเภทเหตุการณ์สำหรับการสร้างการสมัครใช้บริการ

เมื่อสร้างการสมัครใช้บริการ คุณจะใช้ช่อง eventTypes[] เพื่อระบุประเภทเหตุการณ์ที่ต้องการรับ ประเภทเหตุการณ์จะได้รับการจัดรูปแบบตามข้อกำหนดของ CloudEvents เช่น google.workspace.APPLICATION.RESOURCE.VERSION.ACTION

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

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

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

google.workspace.chat.message.v1.created

space.message

ข้อความได้รับการอัปเดตแล้ว

google.workspace.chat.message.v1.updated

space.message

ข้อความถูกลบ

google.workspace.chat.message.v1.deleted

space.message

ระบบจะสร้างความรู้สึก

google.workspace.chat.reaction.v1.created

space.message.reaction

ระบบจะลบความรู้สึก

google.workspace.chat.reaction.v1.deleted

space.message.reaction

เพิ่มสมาชิกไปยังพื้นที่ทำงานแล้ว

google.workspace.chat.membership.v1.created

space.membership

มีการอัปเดตสมาชิกในพื้นที่ทำงาน

google.workspace.chat.membership.v1.updated

space.membership

ระบบนำสมาชิกออกจากพื้นที่ทำงาน

google.workspace.chat.membership.v1.deleted

space.membership

อัปเดตพื้นที่ทำงานแล้ว

google.workspace.chat.space.v1.updated

space

พื้นที่ทำงานถูกลบแล้ว

google.workspace.chat.space.v1.deleted

space

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

สมาชิกใหม่บางรายเท่านั้นเรียกใช้เหตุการณ์ โปรดดูรายละเอียดที่ข้อจำกัด

google.workspace.chat.membership.v1.created

space.membership

ระบบจะอัปเดตการเป็นสมาชิกพื้นที่ทำงานของผู้ใช้

google.workspace.chat.membership.v1.updated

space.membership

ระบบจะนำผู้ใช้ออกจากการเป็นสมาชิกโดยตรงของพื้นที่ทำงาน

google.workspace.chat.membership.v1.deleted

space.membership

ประเภทเหตุการณ์แบบกลุ่ม (เอาต์พุตเท่านั้น)

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

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

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

ตารางต่อไปนี้แสดงเหตุการณ์แบบกลุ่มที่เป็นไปได้สำหรับการสมัครใช้บริการ

ประเภทเหตุการณ์เป็นกลุ่ม รูปแบบ
มีการโพสต์ข้อความหลายรายการ

google.workspace.chat.message.v1.batchCreated

ระบบจะอัปเดตข้อความหลายรายการ

google.workspace.chat.message.v1.batchUpdated

ระบบจะลบข้อความหลายรายการ

google.workspace.chat.message.v1.batchDeleted

สร้างความรู้สึกหลายรายการ

google.workspace.chat.reaction.v1.batchCreated

ระบบจะลบการแสดงความรู้สึกหลายรายการ

google.workspace.chat.reaction.v1.batchDeleted

ระบบจะเพิ่มสมาชิกหลายคนไปยังพื้นที่ทำงานที่สมัครรับข้อมูล หรือผู้ใช้ที่สมัครรับข้อมูลถูกเพิ่มไปยังพื้นที่ทำงานหลายแห่ง

google.workspace.chat.membership.v1.batchCreated

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

google.workspace.chat.membership.v1.batchUpdated

ระบบจะนำสมาชิกหลายคนออกจากพื้นที่ทำงานที่สมัครรับข้อมูล หรือนำผู้ใช้ที่ติดตามออกจากพื้นที่ทำงานหลายแห่ง

google.workspace.chat.membership.v1.batchDeleted

พื้นที่ทำงานมีการอัปเดตหลายรายการ

google.workspace.chat.space.v1.batchUpdated

ข้อมูลเหตุการณ์

ส่วนนี้จะอธิบายข้อมูลเหตุการณ์และตัวอย่างเปย์โหลดสำหรับกิจกรรมใน Chat

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

ข้อมูลทรัพยากรในเพย์โหลดเหตุการณ์

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

ตารางต่อไปนี้มีตัวอย่างของเพย์โหลด JSON สำหรับการสมัครใช้บริการพื้นที่ใน Chat spaces/AAAABBBBBB สำหรับแต่ละเหตุการณ์ที่การสมัครใช้บริการได้รับ เพย์โหลดจะปรากฏในช่อง data ของเหตุการณ์ ดังนี้

ตัวอย่าง ประเภทเหตุการณ์ เพย์โหลด JSON

ผู้ใช้โพสต์ข้อความในพื้นที่ทำงานที่เขียนว่า "สวัสดีชาวโลก"

google.workspace.chat.message.v1.created

รวมข้อมูลทรัพยากร
{
    "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"
    }
}
      
ผู้ใช้จะเป็นผู้จัดการพื้นที่ทำงาน

google.workspace.chat.membership.v1.updated

รวมข้อมูลทรัพยากร
{
    "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.workspace.chat.spaces.v1.updated)
  • หากต้องการรับกิจกรรมการเป็นสมาชิก ผู้ใช้ต้องเป็นสมาชิกโดยตรงของพื้นที่ทำงาน หากมีการเพิ่ม อัปเดต หรือนำผู้ใช้ออกจากพื้นที่ทำงานโดยอ้อมผ่าน Google Group การสมัครใช้บริการจะไม่ได้รับกิจกรรมการเป็นสมาชิกเหล่านั้น หากต้องการทำความเข้าใจวิธีการทำงานของการเป็นสมาชิกกลุ่มของ Google โปรดดู เพิ่ม Google Group ในพื้นที่ทำงาน