[英]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.