使用DirectLine处理AdaptiveCard动作的正确方法是什么?

时间:2018-12-04 16:03:31

标签: botframework direct-line-botframework adaptive-cards

使用DirectLine在客户端上处理AdaptiveCard操作的正确方法是什么?我应该手动建立"value"来进行活动吗?

如果是这样,我意识到对于不同的通道,多重选择的值将以不同的方式进行处理(BotFrameworkEmulator发送的值以逗号分隔,而WebChat使用分号)。我应该选择哪种格式?这种不一致不是错误吗?

2 个答案:

答案 0 :(得分:0)

从某种意义上说,仿真器是WebChat的一种形式。我不认为不一致是一个错误,但是如果您在不同地方看到WebChat,那么它可能是不同的版本,因此可能会有不同的行为。

幸运的是,您的机器人代码可以随意解释接收到的值,但是您希望这样做。如果您的漫游器可能在多个渠道上运行,那么您可能希望使漫游器足够聪明,以解决多个可能的选择分隔符。否则,您只需确保您的机器人正在为要在其上运行它的通道寻找正确的分隔符即可。

据我所知,逗号是更标准的最新分隔符,因此最好使用这些分隔符。但是,如果您要创建自己的Direct Line客户端,那么最终由您决定如何格式化客户端发送给bot的活动。

答案 1 :(得分:0)

我会说不一致不是错误,这只是数据通过不同渠道发送回的方式。请记住,自适应卡是在用户和机器人代码之间交换数据的一种相当新的概念。如何通过每个通道渲染和发布这些值以使其成为一种通用格式仍然需要时间。话虽这么说,我不会过分考虑这个问题。 在确定发布僵尸程序的渠道后,应该总是在上确定该僵尸程序的设计模式。通道固定后,只需进行编码即可处理将回发数据发送回bot的各种方式