c# - 使用 Direct Line API 为 Skype 发送主动消息
问题描述
我正在使用 Direct Line API v4 使用现有对话主动向我的网络聊天发送消息(通过传递现有对话 ID,在对话开始时保存)。
代码:
var client = new DirectLineClient("secreat");
var activity = new Activity();
activity.From = new ChannelAccount("userid");
activity.Type = "resume";
activity.ChannelId = "directline";
activity.Text = "Hi";
activity.Conversation = new ConversationAccount(id: "existingconverstaionid");
var result = client.Conversations.PostActivity("existingconverstaionid", activity);
此代码运行良好,我可以继续与我的网络聊天频道进行现有对话。我希望同样的功能适用于我的 Skype 频道,所以我已更换userid
并existingconversationid
从 Skype 对话中收到,但这不起作用......
解决方案
您不能使用 DirectLineClient 向 Skype 频道广播消息。这实际上非常简单,因为您可以使用 BotFramework SDK 发送主动消息,只要您保存了对话信息。
阅读有关使用BotFramework v4发送主动消息的更多信息或查看示例。
推荐阅读
- java - 如何在使用 java.time.LocalDateTime 时将脚本中的日期和时间插入 PostgreSQL 数据库
- python - 如何在python(apiview,django)中创建动态url?
- r - 有没有办法在 [R] Shiny 应用程序中上传多个 .zip 文件并选择要提取的特定文件类型?
- ruby-on-rails - Rails 中的模型范围(?)
- elasticsearch - 索引创建成功,但不会重新索引新数据
- html - 为什么无论我把它放在哪里,关闭 div 标签都不起作用?
- javascript - useEffect 没有在 Hoc 内部触发
- java - 这些 SQL 查询是否等效?哪个更好还是有更好的选择?
- java - 获取resttemplate请求期间的httpclienterror
- symfony - Symfony 4 路由问题 -- debug:router 显示路由,route:match 说'没有路由匹配路径 X'