REST Resource: spaces

资源:Space

Google Chat 中的聊天室。聊天室是两位或多位用户之间的对话,或用户与 Chat 应用之间的一对一消息。

JSON 表示法
{
  "name": string,
  "type": enum (Type),
  "spaceType": enum (SpaceType),
  "singleUserBotDm": boolean,
  "threaded": boolean,
  "displayName": string,
  "externalUserAllowed": boolean,
  "spaceThreadingState": enum (SpaceThreadingState),
  "spaceDetails": {
    object (SpaceDetails)
  },
  "spaceHistoryState": enum (HistoryState),
  "importMode": boolean,
  "createTime": string,
  "lastActiveTime": string,
  "adminInstalled": boolean,
  "membershipCount": {
    object (MembershipCount)
  },
  "accessSettings": {
    object (AccessSettings)
  },
  "spaceUri": string,

  // Union field space_permission_settings can be only one of the following:
  "predefinedPermissionSettings": enum (PredefinedPermissionSettings),
  "permissionSettings": {
    object (PermissionSettings)
  }
  // End of list of possible types for union field space_permission_settings.
}
字段
name

string

聊天室的资源名称。

格式:spaces/{space}

type
(deprecated)

enum (Type)

仅限输出。已弃用:请改用 spaceType。聊天室的类型。

spaceType

enum (SpaceType)

聊天室的类型。创建聊天室或更新聊天室的聊天室类型时必填。仅用于其他用途的输出。

singleUserBotDm

boolean

可选。聊天室是否为 Chat 应用和单人之间的直接消息。

threaded
(deprecated)

boolean

仅限输出。已弃用:请改用 spaceThreadingState。消息是否会在此聊天室中以会话串形式显示。

displayName

string

聊天室的显示名称。创建聊天室时必填。如果您在创建聊天室或更新 displayName 时收到 ALREADY_EXISTS 错误消息,请尝试其他 displayName。Google Workspace 组织中的现有聊天室可能已经在使用此显示名称。

对于私信,此字段可能为空。

最多支持 128 个字符。

externalUserAllowed

boolean

不可变。此聊天室是否允许任何 Google Chat 用户加入。在 Google Workspace 组织中创建聊天室时输入内容。在以下情况下创建聊天室时,请忽略此字段:

  • 通过身份验证的用户使用的是消费者账号(非受管用户账号)。默认情况下,由个人帐号创建的聊天室允许所有 Google Chat 用户创建聊天室。

  • 该聊天室用于将数据导入 Google Chat,因为导入模式聊天室只能允许来自同一 Google Workspace 组织的成员。不过,根据 Google Workspace 开发者预览版计划,导入模式聊天室可以允许任何 Google Chat 用户,因此可以为导入模式聊天室设置此字段。

对于现有聊天室,此字段仅为输出内容。

spaceThreadingState

enum (SpaceThreadingState)

仅限输出。Chat 聊天室中的消息串状态。

spaceDetails

object (SpaceDetails)

聊天室的详细信息,包括说明和规则。

spaceHistoryState

enum (HistoryState)

此聊天室中的消息和消息串的消息记录状态。

importMode

boolean

可选。此聊天室是在将数据迁移到 Google Workspace 的过程中在Import Mode中创建的。如果聊天室正在导入,则在导入完成之前,用户将无法看到聊天室。

createTime

string (Timestamp format)

可选。不可变。对于在 Chat 中创建的聊天室,该值为聊天室的创建时间。此字段仅输出,但在“导入模式聊天室”中使用时除外。

对于“导入”模式的聊天室,请将此字段设置为在来源中创建聊天室时的历史时间戳,以保留原始创建时间。

仅当 spaceTypeGROUP_CHATSPACE 时,才在输出中填充。

lastActiveTime

string (Timestamp format)

仅限输出。聊天室中最后一条消息的时间戳。

adminInstalled

boolean

仅限输出。对于包含 Chat 应用的私信 (DM) 聊天室,该聊天室是否由 Google Workspace 管理员创建。管理员可以代表组织中的用户安装和设置 Chat 应用的私信。

如要支持管理员安装,您的 Chat 应用必须具备私信功能。

membershipCount

object (MembershipCount)

仅限输出。加入的会员数量(按成员类型分组)。当 spaceTypeSPACEDIRECT_MESSAGEGROUP_CHAT 时填充。

accessSettings

object (AccessSettings)

可选。指定聊天室的访问权限设置。仅当 spaceTypeSPACE 时填充。

spaceUri

string

仅限输出。聊天室的 URI。

联合字段 space_permission_settings。表示聊天室的权限设置。仅当 space_typeSPACE 时填充。space_permission_settings 只能是下列其中一项:
predefinedPermissionSettings

enum (PredefinedPermissionSettings)

可选。仅限输入。聊天室权限设置。用于创建聊天室的输入内容。如果未设置此字段,系统会创建协作聊天室。创建聊天室后,系统会将设置填充到 PermissionSettings 字段中。

permissionSettings

object (PermissionSettings)

可选。可设置以更新聊天室的精确权限设置。输入字段,用于更新聊天室。否则,仅显示输出。如要创建聊天室,请改用 predefinedPermissionSettings

类型

已弃用:请改用 SpaceType

枚举
TYPE_UNSPECIFIED 预留。
ROOM 两个或多个人之间的对话。
DM 真人与 Chat 应用之间的一对一私信,所有消息均为平面消息。请注意,这不包括两个人之间的私信。

SpaceType

聊天室的类型。创建或更新聊天室时必填。仅用于其他用途的输出。

枚举
SPACE_TYPE_UNSPECIFIED 预留。
SPACE 用户可在其中发送消息、共享文件和开展协作。SPACE 可以包含 Chat 扩展应用。
GROUP_CHAT 3 人或更多人的群组对话。GROUP_CHAT 可以包含 Chat 扩展应用。
DIRECT_MESSAGE 两个人或一个人和一个 Chat 应用之间的一对一消息。

SpaceThreadingState

指定 Chat 聊天室中的消息串状态类型。

枚举
SPACE_THREADING_STATE_UNSPECIFIED 预留。
THREADED_MESSAGES 支持消息串的已命名聊天室。当用户回复消息后,他们可以在会话内回复,这样他们的回复就会以原始消息为准。
GROUPED_MESSAGES 按主题整理对话的命名聊天室。主题及其回复会归为一组。
UNTHREADED_MESSAGES 两人之间的私信 (DM),以及三人或多人之间的群组对话。

SpaceDetails

聊天室的详细信息,包括说明和规则。

JSON 表示法
{
  "description": string,
  "guidelines": string
}
字段
description

string

可选。聊天室的说明。例如,描述聊天室的讨论主题、功能用途或参与者。

最多支持 150 个字符。

guidelines

string

可选。空间的规则、预期和礼仪。

最多支持 5,000 个字符。

HistoryState

消息和聊天室的聊天记录状态。指定邮件和会话串创建后保留的时长。

枚举
HISTORY_STATE_UNSPECIFIED 默认值。请勿使用。
HISTORY_OFF 聊天记录功能已关闭。消息和消息串会保留 24 小时
HISTORY_ON 聊天记录功能已开启。单位的保险柜保留规则指定了邮件/消息/帖子和会话的保留时长。

MembershipCount

表示聊天室的成员数量(按类别分组)。

JSON 表示法
{
  "joinedDirectHumanUserCount": integer,
  "joinedGroupCount": integer
}
字段
joinedDirectHumanUserCount

integer

直接加入聊天室的真人用户数,不包括因具有已加入的群组而加入的用户数。

joinedGroupCount

integer

直接加入聊天室的所有群组的数量。

AccessSettings

表示聊天室的访问权限设置

JSON 表示法
{
  "accessState": enum (AccessState),
  "audience": string
}
字段
accessState

enum (AccessState)

仅限输出。指示聊天室的访问状态。

audience

string

可选。可访问聊天室的目标对象群组的资源名称。请将此字段设为有效的目标对象群组 ID 以将聊天室设为开放型聊天室,或使用 audiences/default 别名在管理控制台中使用默认访问权限设置设置聊天室。如需了解详情,请参阅将聊天室设为可供目标对象群组开放。取消设置此字段可限制聊天室。仅在聊天室可供搜索时填充。格式:audiences/{audience}audiences/default 可用作默认 Chat 共享设置的别名。

AccessState

表示聊天室的访问状态。

枚举
ACCESS_STATE_UNSPECIFIED 访问状态未知或此 API 不支持。
PRIVATE 已添加或受邀的成员或群组可以找到聊天室。
DISCOVERABLE 所选目标对象群组以及添加或邀请的成员或群组可以发现聊天室。

PredefinedPermissionSettings

您在创建命名聊天室时可以指定的聊天室权限设置。日后可能会添加更多设置。如需详细了解已命名聊天室的权限设置,请参阅了解聊天室

枚举
PREDEFINED_PERMISSION_SETTINGS_UNSPECIFIED 未指定。请勿使用。
COLLABORATION_SPACE 此设置用于将聊天室设为协作聊天室,所有成员都可以在其中发帖。
ANNOUNCEMENT_SPACE 此设置用于将聊天室设为通知聊天室,只有聊天室管理员可以在其中发布消息。

PermissionSettings

已命名聊天室的权限设置。如需在创建聊天室时设定权限设置,请在请求中指定 PredefinedPermissionSettings 字段。

JSON 表示法
{
  "manageMembersAndGroups": {
    object (PermissionSetting)
  },
  "modifySpaceDetails": {
    object (PermissionSetting)
  },
  "toggleHistory": {
    object (PermissionSetting)
  },
  "useAtMentionAll": {
    object (PermissionSetting)
  },
  "manageApps": {
    object (PermissionSetting)
  },
  "manageWebhooks": {
    object (PermissionSetting)
  },
  "postMessages": {
    object (PermissionSetting)
  },
  "replyMessages": {
    object (PermissionSetting)
  }
}
字段
manageMembersAndGroups

object (PermissionSetting)

此设置用于管理聊天室中的成员和群组。

modifySpaceDetails

object (PermissionSetting)

用于更新聊天室名称、头像、说明和指南的设置。

toggleHistory

object (PermissionSetting)

用于开启或关闭聊天室聊天记录的设置。

useAtMentionAll

object (PermissionSetting)

在聊天室中使用“@all”的设置。

manageApps

object (PermissionSetting)

此设置用于在聊天室中管理应用。

manageWebhooks

object (PermissionSetting)

用于管理聊天室中的网络钩子的设置。

postMessages

object (PermissionSetting)

仅限输出。用于在聊天室中发布消息的设置。

replyMessages

object (PermissionSetting)

用于在聊天室中回复消息的设置。

PermissionSetting

表示聊天室权限设置。

JSON 表示法
{
  "managersAllowed": boolean,
  "membersAllowed": boolean
}
字段
managersAllowed

boolean

聊天室管理员是否拥有此权限。

membersAllowed

boolean

非管理员成员是否拥有此权限。

方法

completeImport

完成指定空间的导入过程,并让用户可见。

create

创建命名聊天室。

delete

删除已命名的聊天室。

findDirectMessage

返回与指定用户的现有私信。

get

返回聊天室的相关详细信息。

list

列出调用方所属的聊天室。

patch

更新聊天室。

setup

创建聊天室并向其中添加指定用户。