我正在尝试让一个以Azure / Azure托管,以Node / Javascript编写的机器人在Microsoft Teams中工作。
要消除此问题是我的代码,我目前正试图托管一个Microsoft示例机器人。 https://github.com/microsoft/BotBuilder-Samples/tree/master/samples/javascript_nodejs/07.using-adaptive-cards
我发现该机器人正在localhost上运行。它还可以通过NGROK进行工作,如果我使用机器人模拟器并从Azure端点加载机器人... 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的bot服务控制台中,在Web聊天通道中进行测试时,出现错误“将此消息发送到您的机器人时发生错误:HTTP状态码未授权”
但是我的团队频道中没有记录任何错误。我已经检查了端点,它们都与我在Bot仿真器中使用的端点匹配,并且我不确定还要检查什么。
在团队中,当我用@mention召唤我的机器人时,机器人未按预期响应。该机器人完全没有响应。
我在chrome中使用Teams网络应用程序,并且提琴手希望它会返回HTTP错误404、500,但那里没有任何输出。
如果有人在节点中部署了Azure应用程序并使用Teams App Studio,我将不胜感激。
预先感谢:) 安迪
有更多信息,这是Web Chat中的测试返回的内容
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,所以如果发现任何问题,我将发布更多信息。
答案 0 :(得分:0)
我决定从头开始,但是这次我从Web App Bot创建了我的机器人。天蓝色的创作者。以前,我曾将该机器人构建为Azure托管的Web应用程序并进行了注册。我使用的bot模板是Echo Bot。
最初,直到我下载了代码,一切都没有。我没有改变任何我只想看看的东西。我决定使用VS Code Azure extension重新部署相同的代码。
现在这似乎可以在Emulator,localhost和在App Studio中创建的Teams应用程序中使用。
我上面没有做过的事情是使用appId和PW / Secret来保护应用程序的安全。