我正在使用Microsoft Bot框架开发Bots,并且有一个用例,其中我的机器人必须向我的应用程序发送自定义上下文信息。我正在考虑使用如下所示的ChannelData。 这是正确的占位符吗?
Dictionary<string, string> context = new Dictionary<string, string>{
{ "foo","bar" }};
Dictionary<string, object> channelinfo = new Dictionary<string, object>
{{ "context", context }};
ResponseActivity.ChannelData = channelinfo;
答案 0 :(得分:0)
您可以通过创建自定义商店中间件来修改用户发送的活动,从而将自定义渠道数据添加到外发活动中。通道数据是特定于通道的属性包,可用于发送非标准的带内数据。要实现特定于通道的功能,可以将元数据传递到活动对象的通道数据属性中的通道。看看 Backchannel Piggyback on Outgoing Activities 网络聊天示例,其中在机器人上发送的所有“ DIRECT_LINE / POST_ACTIVITY”都将向该频道数据添加一封电子邮件。
根据正在使用的通道,可以使用channel数据属性来指示您的通道实现功能。 This文档提供了有关如何为不同渠道创建自定义消息的详细说明。
此blogpost中详细说明了NodeJS和C#中通过Facebook Messenger传递消息的通道数据的简单示例。
希望这会有所帮助。