使用 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"
}

其他资源