首页 > 解决方案 > MS Bot Framework - 通过降价链接传递数据

问题描述

是否可以通过降价链接传递数据?例如:

 var html = "[link1](test1)  [link2](test2)";

 var reply = message.CreateReply();
 reply.Text = $"Welcome {newMember.Name + html}!";

 client.Conversations.ReplyToActivityAsync(reply);

有没有办法让我知道点击了哪个链接的点击事件?

标签: c#botframework

解决方案


在 bot 框架中,如果您尝试从链接单击(或该OpenUrl类型的按钮)中收集数据。推荐的方法是使用 302 重定向。这是因为正如 stuartd 所指出的那样,您通常无法从前端访问任何内容。例如,如果你有一个 facebook 机器人,你将如何捕捉用户点击的内容,因为没有任何东西发送给机器人?这是您遇到的问题。当用户单击链接时,您基本上必须向机器人发送活动,但无法访问 Facebook 前端,您如何在点击时发送该活动?

如果您想在机器人中查看 302 重定向的示例,我制作了这个同时具有 Node 和 C# 版本的示例。该项目展示了如何使用OpenUrlaction 类型的按钮执行此操作,但也可以应用于链接。


推荐阅读