首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何找出我无法向我的机器人发送消息的原因?

我如何找出我无法向我的机器人发送消息的原因?
EN

Stack Overflow用户
提问于 2019-12-06 22:42:16
回答 2查看 294关注 0票数 1

我已经设置了一个连接到我的机器人端点的机器人注册通道。它在Bot Framework Emulator中工作得很好。

我在通过Azure门户上的“在网络聊天中测试”页面连接到我的机器人时遇到问题。我试图发送一条消息,但什么也没有发生,消息下面只看到“正在发送”。

然后,我将转到刀片中的"channels“选项卡,并看到web-chat的错误:There was an error sending this message to your bot: HTTP status code Unauthorized

当我尝试向微软团队中的机器人发送消息时,绝对没有任何反应。我甚至没有得到一个错误。在Azure门户上的健康状态下,它只显示"Running“。

不过,让我的机器人在网络聊天中工作并不是首要任务。我真的希望它最终能在团队中发挥作用。

EN

回答 2

Stack Overflow用户

发布于 2019-12-08 18:36:53

想要发表评论,但没有足够的分数。授权有几个不同的原因。当创建机器人注册时,有一个选项“只允许来自这个组织的帐户”,这需要额外的配置,所以如果你选择了这个,那么将它更改为任何帐户。

此外,您通常可以从服务器端获得更详细的错误消息(不会显示给使用403的用户)。转到Azure门户中机器人的应用程序服务,然后转到左侧菜单底部附近的“应用程序服务日志”。启用“应用程序日志(文件系统)”(我也希望设置为详细并启用“详细的错误消息”)。现在转到左侧菜单中的"Log stream“。它现在应该已连接。尝试再次访问bot,查看日志流中有哪些消息。

如果您启用Application Insights,这也会有所帮助

票数 1
EN

Stack Overflow用户

发布于 2019-12-22 17:27:59

机器人不被调用的主要原因是地址不正确(要么是地址的某个部分的根位置,这取决于你是如何托管它的。例如,一个Azure函数会自动在路径的前面添加一个额外的"/api“),或者,正如你所发现的,AppId和AppPassword没有被正确提取。

如果是后者,就像这里听起来的那样,那么原则上它是一个简单的修复-你只需要确保你的AppId和AppPassword是(a)来自门户的正确的和(b)在你的机器人配置中正确使用的。

问题出现在上面的(b)中--互联网上有一大堆不同的样本,来自微软和其他公司,用于C#和Node,他们使用大量不同的方法来实例化机器人并设置它的AppId和AppPassword。例如,其中一些示例在内部使用了“apppassword”的实现,它将尝试从配置文件中拉出appid/apppassword,但当然希望它们位于一组专门命名的值中(有关更多信息,请参阅here )。

那么,你能检查一下你是如何实现你的机器人的,看看凭证是在哪里设置的吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59215264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档