我们正在将以前的 MS Enterprise Bot 应用程序(不建议使用)迁移到新的 MS Virtual Assistant 。默认模板在Bot Emulator v4上在本地运行良好,但是当我在 Web Chat 或 Microsoft Teams 中对其进行测试时,我们会收到未经授权的响应。
将此消息发送到您的机器人时出错:HTTP状态代码 未经授权
使用Bot仿真器上已部署的机器人URL(https://your-proj-name.azurewebsites.net/api/messages),即可获得。
机器人的Microsoft应用ID或Microsoft应用密码不正确
我迷路了,因为我确定我拥有正确的 MS App ID 和 MS App Password ,因为我们在当前的Enterprise Bot中一直在使用它部署。
有人遇到同样的问题吗?非常感谢您的建议。
答案 0 :(得分:0)
我最终从MS Virtual Assistant github存储库复制了最新的〜/ Deployment / Scripts(那里的所有文件)。那里最近的更新很少,然后,使用最新的补丁尝试了部署,一切正常。
我不确定部署脚本的哪一部分失败,但是使用最新的修复程序和更新确实可以解决我遇到的问题。
希望这可以帮助遇到此问题的任何人。
部署的先决条件:
部署步骤(用于初始部署):
az login
,输入凭据,然后关闭浏览器,然后在确认之后显示.\Deployment\Scripts\deploy.ps1
,然后输入每个参数的值。确保将上面复制的值用于要求的指定参数更新现有部署的步骤:
az login
,输入凭据,然后关闭浏览器,然后在确认之后显示.\Deployment\Scripts\publish.ps1 -name YOUR_PROJECT_NAME -resourceGroup YOUR_PROJECT_RESOURCE_GROUP
答案 1 :(得分:0)
我遇到了完全相同的问题。我尝试了您建议的解决方案:
但是发生相同的问题。我什至尝试完全删除AppId和App Password,但仍然无法正常工作。 同样奇怪的是,即使我关闭了应用程序并强制关闭IIS,也会显示相同的错误消息。这很奇怪。
答案 2 :(得分:0)
我找到了问题的根本原因。 如screenshot所示,脚本在输入密码后不久会打印出以下错误消息。
'us@' is not recognized as an internal or external command,
如果您查看我输入的密码短语
K7 = 6HMCwE4&us @
您已经可以猜测这里发生了什么。
密码短语中的某些字符似乎会引起问题。 到目前为止,我已经将“&”和“ @”标识为有问题的字符。 由于脚本结束时没有任何其他错误消息,并且其他所有内容似乎都可以正常工作,因此并不是很明显。