IMessage interface
在用户和机器人之间发送的聊天消息。 从机器人到用户的消息有两种风格:
- 反应式消息 是从机器人发送到用户的消息作为用户传入消息的回复。
- 主动消息 是从机器人发送到用户的消息,以响应某些外部事件(例如警报触发)。
在反应情况下,应将传入邮件中的 地址 字段复制到传出邮件(如果使用 Message builder 类,并在 会话 自动初始化该地址),然后设置 文本 或 附件。 对于主动消息,需要将传入消息中的 地址 保存到某个位置的外部存储。 然后,可以将此项传递给 UniversalBot.beginDialog(),或将其复制到传递给 UniversalBot.send()的传出消息。
默认情况下,使用传入地址对象向用户撰写消息时,会在当前对话的上下文中向用户发送答复。 某些通道允许开始与用户进行新对话。 若要开始与用户进行新的主动对话,只需在撰写传出消息之前,先从地址对象中删除 会话 字段。
- 扩展
属性
address | 事件地址路由信息。 将此字段保存到外部存储,以便稍后向用户撰写主动消息。 |
agent | 正在处理事件的 SDK。 将始终为“botbuilder”。 |
attachment |
提示客户端应如何布局多个附件。 默认值为“list”。 |
attachments | 对于传入邮件,包含附件,如从用户发送的图像。 对于传出消息,包含要发送给用户的卡片或图像等对象。 |
entities | 传递给机器人或用户的结构化对象。 |
source | 活动的原始来源(即“facebook”、“skype”、“slack”等) |
source |
源本机架构中的原始事件。 对于传出消息,可用于传递源特定事件数据,例如自定义附件。 |
summary | 要通过回退和邮件内容的简短说明显示的文本,例如最近对话的列表。 |
text | 消息文本。 |
text |
文本字段的格式。 默认值为“markdown”。 |
text |
消息文本的标识语言(如果已知)。 |
timestamp | 聊天服务为传入消息提供的消息时间戳。 |
type | 定义事件的类型。 应为 IMessage 的“message”。 |
user | 对于传入消息,这是发送消息的用户。 默认情况下,这是 address.user 的副本,但你可以使用 lookupUser 函数配置机器人,以便将传入用户映射到内部用户 ID。 |
属性详细信息
address
agent
正在处理事件的 SDK。 将始终为“botbuilder”。
agent: string
属性值
string
attachmentLayout
提示客户端应如何布局多个附件。 默认值为“list”。
attachmentLayout: string
属性值
string
attachments
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