2017-06-15 43 views
3

我的問題:回傳的Bot框架事件?

我有一個自適應卡片,帶有一個回傳按鈕,其值爲「thisIsMyPostback」。現在,我想按照這種方式採取行動。

問題是這個回傳也可以輸入到達到相同的結果。換句話說,單擊該按鈕並直接發送我的機器人「thisIsMyPostback」直接導致同樣的事情。

有沒有辦法從'message_received'中分離回發信息?這樣直接向用戶發送消息「thisIsMyPostback」不會像點擊按鈕那樣產生同樣的結果。

謝謝!

+1

@Fabian你可以在這裏發佈一個代碼示例,或者將其放入公共回購站,以便我們看看? – JasonSowers

+0

他正在使用節點(每個問題標籤) –

回答

1

在BotFramework網上聊天GitHub庫自適應卡自述GitHub repo狀態:

行動的數據屬性可以是字符串或它可能是 是一個對象。一個字符串作爲一個Bot Builder SDK返回到你的機器人,並且一個對象作爲回發活動傳遞。 imBack活動作爲用戶輸入的 答覆出現在聊天流中。不會顯示回發活動。

"actions": [ 
      { 
      "type": "Action.Submit", 
      "title": "Next", 
      "data": { "postBack": "thisIsMyPostback" } 
      } 
     ] 

如果活動的價值沒有一個對象,然後將用戶沒有點擊該按鈕。

1

有沒有辦法將postback消息與'message_received'分開?這樣直接向用戶發送消息「thisIsMyPostback」不會像點擊按鈕那樣產生同樣的結果。

沒有,現在沒有可能的,因爲所有的消息,用戶或imBack /回傳,是類型「消息」,所以沒有辦法分辨,除非你把一些特殊文本回傳和配置triggerAction的承認它。

有關使用觸發操作的更多信息,請參見: https://docs.microsoft.com/en-us/bot-framework/nodejs/bot-builder-nodejs-global-handlers#trigger-a-help-dialog