我正在展示一个轮播,其中包含一些产品,每个产品中都有一个带有代码的按钮。卡片操作类型为“ImBack”,但一旦通过 postAsync 方法显示轮播,单击按钮将再次调用根对话框。
有没有办法为按钮点击定义回调或显示相同的旋转木马但使用 PromptDialog ?
最佳答案
无法在卡片操作按钮上定义回调。当Card Action定义为ImBack时,点击后;它基本上会向机器人发布一条消息,因此它将由您在调用上下文时定义的方法处理。在发布轮播后等待。
这里的方法是使用另一种方法(与 MessageReceivedAsync 不同),只是为了保持代码干净,并在该方法上执行 context.Wait。然后,在该方法中,您基本上必须根据机器人收到的消息(这将是卡片操作的值(value))决定要做什么。
在ContosoFlowers sample 你会发现一个这样的例子。查看ContosoFlowersCategoriesDialog和 PagedCarouselDialog .
关于c# - 单击 Card Action - Bot Framework 时如何调用特定回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40808192/