IMessage interface

在用户和机器人之间发送的聊天消息。 从机器人到用户的消息有两种风格:

  • 反应式消息 是从机器人发送到用户的消息作为用户传入消息的回复。
  • 主动消息 是从机器人发送到用户的消息,以响应某些外部事件(例如警报触发)。

在反应情况下,应将传入邮件中的 地址 字段复制到传出邮件(如果使用 Message builder 类,并在 会话 自动初始化该地址),然后设置 文本附件。 对于主动消息,需要将传入消息中的 地址 保存到某个位置的外部存储。 然后,可以将此项传递给 UniversalBot.beginDialog(),或将其复制到传递给 UniversalBot.send()的传出消息。

默认情况下,使用传入地址对象向用户撰写消息时,会在当前对话的上下文中向用户发送答复。 某些通道允许开始与用户进行新对话。 若要开始与用户进行新的主动对话,只需在撰写传出消息之前,先从地址对象中删除 会话 字段。

扩展

属性

address

事件地址路由信息。 将此字段保存到外部存储,以便稍后向用户撰写主动消息。

agent

正在处理事件的 SDK。 将始终为“botbuilder”。

attachmentLayout

提示客户端应如何布局多个附件。 默认值为“list”。

attachments

对于传入邮件,包含附件,如从用户发送的图像。 对于传出消息,包含要发送给用户的卡片或图像等对象。

entities

传递给机器人或用户的结构化对象。

source

活动的原始来源(即“facebook”、“skype”、“slack”等)

sourceEvent

源本机架构中的原始事件。 对于传出消息,可用于传递源特定事件数据,例如自定义附件。

summary

要通过回退和邮件内容的简短说明显示的文本,例如最近对话的列表。

text

消息文本。

textFormat

文本字段的格式。 默认值为“markdown”。

textLocale

消息文本的标识语言(如果已知)。

timestamp

聊天服务为传入消息提供的消息时间戳。

type

定义事件的类型。 应为 IMessage 的“message”。

user

对于传入消息,这是发送消息的用户。 默认情况下,这是 address.user 的副本,但你可以使用 lookupUser 函数配置机器人,以便将传入用户映射到内部用户 ID。

属性详细信息

address

事件地址路由信息。 将此字段保存到外部存储,以便稍后向用户撰写主动消息。

address: IAddress

属性值

agent

正在处理事件的 SDK。 将始终为“botbuilder”。

agent: string

属性值

string

attachmentLayout

提示客户端应如何布局多个附件。 默认值为“list”。

attachmentLayout: string

属性值

string

attachments

对于传入邮件,包含附件,如从用户发送的图像。 对于传出消息,包含要发送给用户的卡片或图像等对象。

attachments: IAttachment[]

属性值

entities

传递给机器人或用户的结构化对象。

entities: any[]

属性值

any[]

source

活动的原始来源(即“facebook”、“skype”、“slack”等)

source: string

属性值

string

sourceEvent

源本机架构中的原始事件。 对于传出消息,可用于传递源特定事件数据,例如自定义附件。

sourceEvent: any

属性值

any

summary

要通过回退和邮件内容的简短说明显示的文本,例如最近对话的列表。

summary: string

属性值

string

text

消息文本。

text: string

属性值

string

textFormat

文本字段的格式。 默认值为“markdown”。

textFormat: string

属性值

string

textLocale

消息文本的标识语言(如果已知)。

textLocale: string

属性值

string

timestamp

聊天服务为传入消息提供的消息时间戳。

timestamp: string

属性值

string

type

定义事件的类型。 应为 IMessage 的“message”。

type: string

属性值

string

user

对于传入消息,这是发送消息的用户。 默认情况下,这是 address.user 的副本,但你可以使用 lookupUser 函数配置机器人,以便将传入用户映射到内部用户 ID。

user: IIdentity

属性值