簡體   English   中英

Bot在Microsoft Teams中的行為不同

[英]Bot acts differently in Microsoft Teams

我已將我的Bot部署到Webchat,Skype和MS團隊。

OnTurnAsync方法中我檢查,如果用戶輸入以bnr開頭,那么我調用一個特定的方法。

if (turnContext.Activity.Text.ToLower().StartsWith("bnr"))
{
    string msg = RequestHandler.BnrCaller(turnContext.Activity.Text);
    await turnContext.SendActivityAsync(msg);
    return;
}

它適用於Skype和Webchat,但是對於團隊而言,它不能100%工作,它有時會起作用。

[編輯]

我發現,如果我將輸入復制到輸入字段但是當我輸入它時,它不起作用,它工作正常!

來自團隊的消息具有不同的結構。 消息文本以<at>...</at>開頭。 您需要在中間件組件等中刪除此開頭。嘗試通過Web瀏覽器中的localhost:4040通過NGROK查看傳入消息。

所以,我通過app-insights發現了這個問題。

我添加了一個middleware ,它將請求正文記錄到app-insights中,並且意識到,當我復制/粘貼一條消息時,如“Hello”,它將被記錄在app-insight中,就像這樣的東西“\\ r \\” ñ\\ n \\ rHello \\ r \\ n \\ n \\ r \\ n”。 當我輸入它時,它會記錄得很好。 所以我jsut從請求中刪除這些符號,它的工作原理!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM