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

หน้านี้อธิบายเหตุการณ์ 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

//chat.googleapis.com/spaces/SPACE

โดยที่ SPACE คือรหัสใน ชื่อทรัพยากรของทรัพยากร space ใน Chat API คุณดูรหัสได้จาก URL ของพื้นที่ทำงานหรือใช้เมธอด spaces.list()

ผู้ใช้ Chat ที่ให้สิทธิ์การสมัครใช้บริการต้องเป็นสมาชิกของพื้นที่ทำงานผ่านบัญชี Google Workspace หรือบัญชี Google
พื้นที่ทำงานทั้งหมดของผู้ใช้

//chat.googleapis.com/spaces/-

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

//cloudidentity.googleapis.com/users/USER

โดยที่ USER คือรหัสใน ชื่อทรัพยากรของทรัพยากร user ใน Chat API โปรดดูรายละเอียดที่หัวข้อระบุและระบุผู้ใช้ Google 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

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

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

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