Method: spaces.setup

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

หากต้องการระบุสมาชิกที่เป็นบุคคลที่จะเพิ่ม ให้เพิ่มการเป็นสมาชิกด้วย membership.member.name ที่เหมาะสม หากต้องการเพิ่มผู้ใช้ที่เป็นบุคคล ให้ใช้ users/{user} โดยที่ {user} อาจเป็นอีเมลของผู้ใช้ สำหรับผู้ใช้ในองค์กร Workspace เดียวกัน {user} อาจเป็น id ของบุคคลจาก People API หรือ id ของผู้ใช้ใน Directory API ก็ได้ ตัวอย่างเช่น หากรหัสโปรไฟล์บุคคลของ People API สำหรับ user@example.com คือ 123456789 คุณสามารถเพิ่มผู้ใช้ลงในพื้นที่ทำงานได้โดยตั้งค่า membership.member.name เป็น users/user@example.com หรือ users/123456789

หากต้องการระบุ Google Groups ที่จะเพิ่ม ให้เพิ่มการเป็นสมาชิกด้วย membership.group_member.name ที่เหมาะสม หากต้องการเพิ่มหรือเชิญ Google Groups ให้ใช้ groups/{group} โดยที่ {group} คือ id ของกลุ่มจาก Cloud Identity Groups API ตัวอย่างเช่น คุณสามารถใช้ Cloud Identity Groups Lookup API เพื่อดึงข้อมูลรหัส 123456789 สำหรับอีเมลกลุ่ม group@example.com จากนั้นคุณจะเพิ่มกลุ่มลงในพื้นที่ทำงานได้โดยตั้งค่า membership.group_member.name เป็น groups/123456789 ระบบไม่รองรับอีเมลกลุ่ม และจะเพิ่ม Google Groups เป็นสมาชิกได้เฉพาะในพื้นที่ทำงานที่มีชื่อเท่านั้น

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

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

หากต้องการสร้าง DM ระหว่างผู้ใช้ที่เรียกใช้กับแอปที่เรียกใช้ ให้ตั้งค่า Space.singleUserBotDm เป็น true และอย่าระบุการเป็นสมาชิก คุณใช้วิธีนี้เพื่อตั้งค่า DM กับแอปที่เรียกใช้ได้เท่านั้น หากต้องการเพิ่มแอปที่เรียกใช้เป็นสมาชิกของพื้นที่ทำงานหรือ DM ที่มีอยู่ระหว่างผู้ใช้ที่เป็นบุคคล 2 ราย โปรดดูเชิญหรือเพิ่มผู้ใช้หรือแอปไปยังพื้นที่ทำงาน

หากมี DM อยู่แล้วระหว่างผู้ใช้ 2 ราย แม้ว่าผู้ใช้รายหนึ่งจะบล็อกอีกรายในขณะที่ส่งคำขอ ระบบก็จะแสดง DM ที่มีอยู่

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

ต้องมีการตรวจสอบสิทธิ์ผู้ใช้ด้วยขอบเขตการให้สิทธิ์รายการใดรายการหนึ่งต่อไปนี้:

  • https://www.googleapis.com/auth/chat.spaces.create
  • https://www.googleapis.com/auth/chat.spaces

คำขอ HTTP

POST https://chat.googleapis.com/v1/spaces:setup

URL ใช้ไวยากรณ์การแปลงรหัส gRPC

เนื้อความของคำขอ

เนื้อหาของคำขอมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้

การแสดง JSON
{
  "space": {
    object (Space)
  },
  "requestId": string,
  "memberships": [
    {
      object (Membership)
    }
  ]
}
ช่อง
space

object (Space)

ต้องระบุ ต้องระบุช่อง Space.spaceType

หากต้องการสร้างพื้นที่ทำงาน ให้ตั้งค่า Space.spaceType เป็น SPACE และตั้งค่า Space.displayName หากได้รับข้อความแสดงข้อผิดพลาด ALREADY_EXISTS เมื่อตั้งค่าพื้นที่ทำงาน ให้ลองใช้ displayName อื่น พื้นที่ทำงานที่มีอยู่ภายในองค์กร Google Workspace อาจใช้ชื่อที่แสดงนี้อยู่แล้ว

หากต้องการสร้างแชทเป็นกลุ่ม ให้ตั้งค่า Space.spaceType เป็น GROUP_CHAT อย่าตั้งค่า Space.displayName

หากต้องการสร้างการสนทนาแบบ 1:1 ระหว่างบุคคล ให้ตั้งค่า Space.spaceType เป็น DIRECT_MESSAGE และตั้งค่า Space.singleUserBotDm เป็น false อย่าตั้งค่า Space.displayName หรือ Space.spaceDetails

หากต้องการสร้างการสนทนาแบบ 1:1 ระหว่างบุคคลกับแอป Chat ที่เรียกใช้ ให้ตั้งค่า Space.spaceType เป็น DIRECT_MESSAGE และ Space.singleUserBotDm เป็น true อย่าตั้งค่า Space.displayName หรือ Space.spaceDetails

หากมีพื้นที่ทำงาน DIRECT_MESSAGE อยู่แล้ว ระบบจะแสดงพื้นที่ทำงานนั้นแทนที่จะสร้างพื้นที่ทำงานใหม่

requestId

string

ไม่บังคับ รหัสที่ไม่ซ้ำกันสำหรับคำขอนี้ เราขอแนะนำให้ใช้ UUID แบบสุ่ม การระบุรหัสคำขอจะทำให้คำขอเป็น Idempotent ซึ่งช่วยให้มั่นใจได้ว่าคำขอที่เหมือนกันหลายรายการที่มีรหัสคำขอเดียวกันจะส่งผลให้มีการสร้างพื้นที่ทำงานเพียงแห่งเดียว คำขอที่ตามมาซึ่งมีรหัสคำขอเดียวกันจะแสดงพื้นที่ทำงานที่มีอยู่และไม่อัปเดตพื้นที่ทำงาน แม้ว่ารายละเอียดที่ขอจะแตกต่างจากสถานะปัจจุบันก็ตาม

วิธีใช้ช่องนี้อย่างมีประสิทธิภาพ

  • ตรวจสอบว่าคำขอที่ตามมาเหมือนกันและใช้ข้อมูลเข้าสู่ระบบการตรวจสอบสิทธิ์เดียวกันกับคำขอเดิม
  • หากมีการสร้างพื้นที่ทำงานด้วยรหัสคำขอที่ระบุไว้แล้ว คำขอจะแสดงพื้นที่ทำงานนั้น โปรดทราบว่าพื้นที่ทำงานที่แสดงอาจมีข้อมูลไม่ครบถ้วน เนื่องจาก API จะแสดงพื้นที่ทำงานในคำขอของคุณพร้อมชื่อทรัพยากรที่ระบบกำหนด หากต้องการดึงข้อมูลเมตาล่าสุดสำหรับพื้นที่ทำงาน ให้เรียก spaces.get
  • การนำรหัสคำขอที่มีอยู่กลับมาใช้ซ้ำกับผู้ใช้ที่ผ่านการตรวจสอบสิทธิ์รายอื่นจะทำให้เกิดข้อผิดพลาด
memberships[]

object (Membership)

ไม่บังคับ ผู้ใช้หรือกลุ่ม Google Chat ที่จะเชิญให้เข้าร่วมพื้นที่ทำงาน ละเว้นผู้ใช้ที่เรียกใช้ เนื่องจากระบบจะเพิ่มผู้ใช้ดังกล่าวโดยอัตโนมัติ

ปัจจุบันชุดนี้อนุญาตการเป็นสมาชิกได้สูงสุด 49 รายการ (นอกเหนือจากผู้โทร)

สำหรับการเป็นสมาชิกที่เป็นบุคคล ช่อง Membership.member ต้องมี user ที่มี name (รูปแบบ: users/{user}) และตั้งค่า type เป็น User.Type.HUMAN คุณจะเพิ่มผู้ใช้ที่เป็นบุคคลได้เฉพาะเมื่อตั้งค่าพื้นที่ทำงาน (ระบบรองรับการเพิ่มแอป Chat สำหรับการตั้งค่าข้อความส่วนตัวกับแอปการโทรเท่านั้น) นอกจากนี้ คุณยังเพิ่มสมาชิกได้โดยใช้อีเมลของผู้ใช้เป็นชื่อแทนสำหรับ {user} ตัวอย่างเช่น user.name อาจเป็น users/example@gmail.com หากต้องการเชิญผู้ใช้ Gmail หรือผู้ใช้จากโดเมน Google Workspace ภายนอก คุณต้องใช้อีเมลของผู้ใช้สำหรับ {user}

สำหรับการเป็นสมาชิก Google Groups ช่อง Membership.group_member ต้องมี group ที่มี name (รูปแบบ groups/{group}) คุณจะเพิ่ม Google Groups ได้เฉพาะเมื่อตั้งค่า Space.spaceType เป็น SPACE

ไม่บังคับเมื่อตั้งค่า Space.spaceType เป็น SPACE

ต้องระบุเมื่อตั้งค่า Space.spaceType เป็น GROUP_CHAT พร้อมกับการเป็นสมาชิกอย่างน้อย 2 รายการ

ต้องระบุเมื่อตั้งค่า Space.spaceType เป็น DIRECT_MESSAGE กับผู้ใช้ที่เป็นบุคคล พร้อมกับการเป็นสมาชิก 1 รายการ

ต้องว่างเปล่าเมื่อสร้างการสนทนาแบบ 1:1 ระหว่างบุคคลกับแอป Chat ที่เรียกใช้ (เมื่อตั้งค่า Space.spaceType เป็น DIRECT_MESSAGE และ Space.singleUserBotDm เป็น true)

เนื้อหาการตอบกลับ

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ Space

ขอบเขตการให้สิทธิ์

ต้องใช้ขอบเขต OAuth รายการใดรายการหนึ่งต่อไปนี้

  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.create

ดูข้อมูลเพิ่มเติมได้ที่คู่มือการให้สิทธิ์