Microsoft Bot Framework。隐藏用户的短信

时间:2016-12-07 11:15:36

标签: botframework

使用Microsoft Bot Framework时遇到问题。我开发了一个可以在Skype上运行的机器人。我需要创建一个带有两个按钮的英雄卡(是/否),并将其发送给用户。 我不得不说,使用Microsoft Bot Framework API和Python(但我认为语言并不重要)。 使用类型 - ' imBack'和 - 字符串。 按下按钮时,消息将显示在聊天中,并带有。 这对我不好。我希望在这种情况下隐藏来自用户的消息是它只收到了我的skype bot。 根据{{​​3}}可以做到。但我不是为我工作的。

  

使用操作发送上下文

     

将上下文发送回您的机器人(例如请求ID)会很有用   没有在消息中向用户显示此信息。去做这个   您可以将隐藏的XML附加到向用户显示的可见字符串,   这只是你的机器人看到的。

     

可见消息< context hiddenId =' 10' />

它写在文档中。 我非常感谢你的帮助。

2 个答案:

答案 0 :(得分:2)

如果您想要隐藏最终用户的消息,您会想要使用postBack而不是imBack:

  

postBack()和imBack()动作之间的差异很微妙。该   意图是imBack()将显示发送给bot的消息   在用户feed中,postBack()将隐藏发送的消息   用户。并非所有频道(如Skype)目前都支持postBack()   这些渠道将简单地回归到使用imBack()。这一般   不会改变你的机器人的行为方式,但它确实意味着,如果你是   包括postBack()中的订单ID等数据,它可能是可见的   在某些渠道上,当你没想到它时。

答案 1 :(得分:0)

只是一个可以节省我一些时间的小费。截至今天,Skype支持postBack。但是,与模拟器相比,行为存在差异。

在模拟器中,放置在卡片操作按钮的Value属性中的对象将出现在message.Value属性中。在Skype的情况下,该对象将作为message.Text属性中的字符串。

虽然这无助于区分用户是单击按钮还是写入某些文本(与模拟器中发生的事情相反),但这仍然比直接编写隐藏的xml更好,imo。

相关问题