使用 Bot Connector API 实现特定于通道的功能
一些通道提供的功能无法通过仅使用消息文本和附件来实现。 若要实现特定于通道的功能,可以将本机元数据传递给 Activity 对象的 channelData
属性中的通道。 例如,机器人可使用 channelData
属性来指示 Telegram 发送贴纸或指示 Office365 发送电子邮件。
本文介绍如何使用消息活动的 channelData
属性来实现此通道特定的功能:
Channel | 功能 |
---|---|
电子邮件 | 发送和接收包含正文、主题和重要性元数据的电子邮件 |
注意
Activity
对象的 channelData
属性的值是一个 JSON 对象。
JSON 对象的结构将根据所执行的通道和功能而变化,如下所述。
创建自定义电子邮件
要创建电子邮件,请将 Activity
对象的 channelData
属性设置为包含以下属性的 JSON 对象:
{
"type": "ActivityTypes.Message",
"locale": "en-Us",
"channelID": "email",
"fromName": { "id": "mybot@mydomain.com", "name": "My bot"},
"recipientName": { "id": "joe@otherdomain.com", "name": "Joe Doe"},
"conversation": { "id": "123123123123", "topic": "awesome chat" },
"channelData":
{
"htmlBody": "<html><body style = \"font-family: Calibri; font-size: 11pt;\" >This is more than awesome.</body></html>",
"importance": "high",
"ccRecipients": "Yasemin@adatum.com;Temel@adventure-works.com",
}
}
此代码段显示了自定义“电子邮件”消息的 channelData
属性示例。
"channelData":
{
"htmlBody": "<html><body style = \"font-family: Calibri; font-size: 11pt;\" >This is more than awesome.</body></html>",
"importance": "high",
"ccRecipients": "Yasemin@adatum.com;Temel@adventure-works.com"
}