c# - 单击 Card Action - Bot Framework 时如何调用特定回调

标签 c# botframework chatbot

我正在展示一个轮播,其中包含一些产品,每个产品中都有一个带有代码的按钮。卡片操作类型为“ImBack”,但一旦通过 postAsync 方法显示轮播,单击按钮将再次调用根对话框。

有没有办法为按钮点击定义回调或显示相同的旋转木马但使用 PromptDialog ?

最佳答案

无法在卡片操作按钮上定义回调。当Card Action定义为ImBack时,点击后;它基本上会向机器人发布一条消息,因此它将由您在调用上下文时定义的方法处理。在发布轮播后等待。

这里的方法是使用另一种方法(与 MessageReceivedAsync 不同),只是为了保持代码干净,并在该方法上执行 context.Wait。然后,在该方法中,您基本上必须根据机器人收到的消息(这将是卡片操作的值(value))决定要做什么。

ContosoFlowers sample 你会发现一个这样的例子。查看ContosoFlowersCategoriesDialogPagedCarouselDialog .

关于c# - 单击 Card Action - Bot Framework 时如何调用特定回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40808192/

相关文章:

c# - 尝试为文件 <FILE> 附加自动命名的数据库失败。存在同名数据库

botframework - 禁用用户键入文本框 c#

c# - Xamarin Forms 应用入门

c# - Azure Bot Framework 模拟器错误 - System.ArgumentNullException : Value cannot be null

c# - 如何在机器人构建器框架 4.0 中发送不按顺序的消息和回复

node.js - 如何检测机器人何时被添加到对话和其他事件中?

node.js - 如何在 NodeJS 中构建我的 Messenger 聊天机器人?

javascript - 我可以使用 Watson Conversation 制作全页聊天机器人吗?

c# - WPF Datagrid 列的默认值

c# - 在 Metro App 中创建样式 BasedOn StandardStyles.xaml