ติดตามกิจกรรมใน 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 ในพื้นที่ทำงาน