Method: spaces.messages.create

在 Google Chat 聊天室中创建消息。如需查看示例,请参阅发送消息

create() 方法需要进行用户身份验证应用身份验证。Chat 会根据您在请求中使用的身份验证类型,以不同的方式为消息发件人分配属性。

下图展示了当您使用应用身份验证时,Chat 如何为消息添加属性。Chat 会将 Chat 应用显示为消息发件人。消息内容可以包含文本 (text)、卡片 (cardsV2) 和配件微件 (accessoryWidgets)。

使用应用身份验证发送的邮件

下图展示了 Chat 在您使用用户身份验证时如何为消息添加属性。Chat 会将用户显示为消息发送者,并通过显示其名称将 Chat 应用归因于消息。消息内容只能包含文本 (text)。

通过用户身份验证发送的邮件

包括邮件内容在内的邮件大小上限为 32,000 字节。

对于 webhook 请求,响应不包含完整的消息。除了请求中的信息之外,响应只会填充 namethread.name 字段。

HTTP 请求

POST https://chat.googleapis.com/v1/{parent=spaces/*}/messages

网址采用 gRPC 转码语法。

路径参数

参数
parent

string

必需。要在其中创建消息的聊天室的资源名称。

格式:spaces/{space}

查询参数

参数
threadKey
(deprecated)

string

可选。已弃用:请改用 thread.thread_key。线程的 ID。最多支持 4,000 个字符。如需发起或添加会话,请创建消息并指定 threadKeythread.name。如需查看用法示例,请参阅发起或回复消息串

requestId

string

可选。此消息的唯一请求 ID。指定现有请求 ID 会返回使用该 ID 创建的消息,而不是创建新消息。

messageReplyOption

enum (MessageReplyOption)

可选。指定相应消息是发起会话还是回复会话。仅在命名空间中受支持。

响应用户互动时,系统会忽略此字段。对于会话中的互动,系统会在同一会话中创建回复。否则,系统会将回复创建为新会话。

messageId

string

可选。消息的自定义 ID。让 Chat 应用可获取、更新或删除消息,而无需在消息的资源名称(在消息 name 字段中表示)存储系统分配的 ID。

此字段的值必须满足以下要求:

  • client- 开头。例如,client-custom-name 是有效的自定义 ID,但 custom-name 不是。
  • 最多包含 63 个字符,且只能包含小写字母、数字和连字符。
  • 在聊天室中是唯一的。聊天应用无法为不同的消息使用相同的自定义 ID。

有关详情,请参阅为消息命名

请求正文

请求正文包含一个 Message 实例。

响应正文

如果成功,响应正文将包含一个新创建的 Message 实例。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.create

如需了解详情,请参阅授权指南

MessageReplyOption

指定如何回复消息。我们日后可能会添加更多州。

枚举
MESSAGE_REPLY_OPTION_UNSPECIFIED 默认。启动新线程。使用此选项会忽略包含的任何 thread IDthreadKey
REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD 将消息创建为对 thread IDthreadKey 指定的会话的回复。如果失败,消息会改为启动新线程。
REPLY_MESSAGE_OR_FAIL 创建消息,作为对 thread IDthreadKey 指定的会话的回复。如果使用了新的 threadKey,系统会创建一个新线程。如果消息创建失败,则会返回 NOT_FOUND 错误。