0
我有一個帶有多個卡片和按鈕的HeroCard傳送帶。如果在顯示轉盤後立即點擊,這些按鈕將正確路由。但是,如果在對話的後期階段竊聽,路由不起作用。Bot Builder Messenger按鈕在點擊對話流時點擊時路由不正確
如何讓按鈕正確地路由對話,如果他們被反轉出來(即在一段時間以外的旋轉木馬顯示後立即點擊)?
我有一個帶有多個卡片和按鈕的HeroCard傳送帶。如果在顯示轉盤後立即點擊,這些按鈕將正確路由。但是,如果在對話的後期階段竊聽,路由不起作用。Bot Builder Messenger按鈕在點擊對話流時點擊時路由不正確
如何讓按鈕正確地路由對話,如果他們被反轉出來(即在一段時間以外的旋轉木馬顯示後立即點擊)?
我想通了。在Bot Builder的3.1版本中,我們有能力使用正則表達式來檢查與短語的匹配 - 請參閱IntentDialog。在對話流程中的任何地方使用這種方法,用戶可以輸入一個特定的階段(比如'help'),並且可以被重定向到該路線。
點擊按鈕時,我們可以使用相同的方法。重要的是要注意的是,點擊按鈕時返回的消息不是用戶看到的字符串。相反,它是按鈕希望指向的路線。
因此,您可以使用正則表達式來偵聽路由,然後重定向到該路由。例如:
var intents = new builder.IntentDialog();
bot.dialog('/', intents);
intents.matches(/^theRouteYourButtonIsDirectingTo\//i, [
function (session) {
// Whatever you want to return
},
]);