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}

其中 {space} 表示系统为聊天室分配的 ID。您可以通过调用 spaces.list() 方法或从聊天室网址获取聊天室 ID。例如,如果聊天室网址为 https://mail.google.com/mail/u/0/#chat/space/AAAAAAAAA,则聊天室 ID 为 AAAAAAAAA

type
(deprecated)

enum (Type)

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

spaceType

enum (SpaceType)

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

singleUserBotDm

boolean

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

threaded
(deprecated)

boolean

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

displayName

string

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

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

最多支持 128 个字符。

externalUserAllowed

boolean

不可变。此聊天室是否允许任何 Google Chat 用户加入。在 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 应用之间的 1 对 1 消息。

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

可选。可以发现聊天室、加入聊天室以及预览聊天室中消息的目标对象群组的资源名称。如果未设置此政策,则只有收到单独邀请或被添加到聊天室的用户或 Google 群组可以访问该聊天室。有关详情,请参阅将聊天室设置为向目标对象群组开放

格式:audiences/{audience}

如要使用 Google Workspace 组织的默认目标对象群组,请设置为“audiences/default”。

AccessState

表示聊天室的访问状态。

枚举
ACCESS_STATE_UNSPECIFIED 访问状态未知或此 API 不支持。
PRIVATE 只有由其他用户或 Google Workspace 管理员单独添加或邀请的用户或 Google 群组可以发现和访问该聊天室。
DISCOVERABLE 聊天室管理员已向目标对象群组授予聊天室的访问权限。单独添加或受邀加入聊天室的用户或 Google 群组也可以发现和访问聊天室。如需了解详情,请参阅将聊天室设为可供特定用户搜索

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

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