【问题标题】:Microsoft Teams bot working from emulator and localhost but not teams appMicrosoft Teams 机器人在模拟器和本地主机上工作,但不是团队应用程序
【发布时间】:2020-01-01 14:59:48
【问题描述】:

我正在尝试让一个机器人在 Microsoft Teams 中工作,托管在 Azure 中,用 Node / Javascript 编写。

为了消除我的代码问题,我目前只是尝试托管其中一个 microsoft 示例机器人... https://github.com/microsoft/BotBuilder-Samples/tree/master/samples/javascript_nodejs/07.using-adaptive-cards

我发现机器人正在本地主机上运行。它也通过 NGROK 工作,如果我使用机器人模拟器并在端点从天蓝色加载机器人...... https://cnbeaconbot.azurewebsites.net/api/messages 这也有效。

当我通过 app studio 应用程序将机器人添加到我的 MS Teams 应用程序时,无法正常工作。最初,为了让演示工作,我现在还没有向我的机器人添加秘密/密码或身份验证。我正在寻找可以构建的最简单的演示。

我还没有对 MS 示例进行任何自定义,代码可以在这里找到...https://github.com/microsoft/BotBuilder-Samples/tree/master/samples/javascript_nodejs/07.using-adaptive-cards

在 Azure 的机器人服务控制台中,在 Web 聊天频道中的测试中出现错误“向您的机器人发送此消息时出错:HTTP 状态代码未经授权”

但我的 Teams 频道中没有记录任何错误。我检查了端点,它们都与我在 Bot 模拟器中使用的匹配,我不确定还要检查什么。

在团队中,当我使用 @提及来召唤我的机器人时,它没有按预期响应。机器人根本没有响应。

我在 chrome 中使用 Teams Web 应用程序和提琴手,希望它会返回 HTTP 错误 404、500,但那里没有任何输出。

如果有人在节点中部署了 Azure 应用并使用 Teams App Studio,我将不胜感激。

在此先感谢 :) 安迪

了解更多信息,这是网络聊天中的测试返回的内容

Utj-TW1baCBV.js:9 [Microsoft_Azure_BotService]  1:01:13 PM 
MsPortalFx.Base.Diagnostics.ErrorReporter 1         
MsPortalFx.Base.Diagnostics.ErrorReporter: _errorData: undefined
_sourceErrorLevel: undefined
baseTypes: ["MsPortalFx.Errors.AjaxError","MsPortalFx.Errors.Error"]
code: undefined
data {"uri":"https://botservice.hosting.portal.azure.net/botservice/api/ClientTrace","type":"POST","pathAndQuery":"","requestId":"5738e762-2aa1-4640-b086-495936e70007","failureCause":"","sessionId":"40a3f6eb3b284c5fa66db8b8fe21a06a","status":404,"statusText":"error","duration":47.82500024884939}
errorLevel: 2
errorThrown: 
extension: Microsoft_Azure_BotService
handled: undefined
innerErrors: []
jqXHR: {"readyState":4,"responseText":"Not 
Found","status":404,"statusText":"error"}
message: ajaxExtended call failed
name: Error
source: undefined
stack: null
textStatus: error
timestamp: 80466.26000013202
type: MsPortalFx.Errors.AjaxError https://webchat.botframework.com/v3/directline/conversations/8hFWddDOnZm5fuIih3b4Sz-a/activities 502

还有……

b2bn3_EAuRkB.js:19 POST https://botservice.hosting.portal.azure.net/botservice/api/ClientTrace 404

那里似乎同时提到了 502 和 404,所以如果我发现了什么,我会发布更多信息。

【问题讨论】:

  • 我现在正在考虑是否缺少身份验证是问题所在。我最初没有对 Web 应用程序进行任何身份验证,以便让它与在进一步开发机器人之前添加它的计划一起工作。看起来错误可能是由于缺乏加密。

标签: botframework microsoft-teams azure-app-service-envrmnt


【解决方案1】:

我决定从头开始,但这次我从 Web App Bot 创建了我的机器人。天蓝色的创造者。以前我一直将机器人构建为 Azure 托管的 Web 应用程序并进行注册。我使用的机器人模板是 Echo Bot。

在我下载代码之前,最初没有任何效果。我没有改变任何东西,我只是想看看它。我决定使用 VS Code Azure extension 重新部署相同的代码。

这现在似乎可以在模拟器、本地主机和在 app studio 中创建的 Teams 应用中运行。

在上述工作中我没有做的事情是使用 appId 和 PW/Secret 来保护应用程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多