7

最近,我正在尝试为自己构建一个机器人。当我使用 ngrok 在本地测试我的机器人时,它可以完美运行,但是当我部署到 AWS 时,我开始偶尔看到下面捕获的错误,并导致没有从 Facebook 向我的服务器发送 webhook 请求。我不知道可能出什么问题。我也用 tcpflow 检查了发送到我的服务器的请求,但是运气不好,看起来 Facebook 只是没有将那个特定的请求发送到我的服务器。这是一个非常奇怪的问题,在我的机器人对话流程的任何特定点都不会发生。我总是需要重复我的答案或我的回发才能让它工作。

一些基本的服务器信息(不知道这是否重要):

  1. 可用区:ap-southeast-1b
  2. 类型:t2.micro
  3. CPU 使用率(当时):4%

如果有人能解开我的谜团,我将不胜感激。谢谢。

仅供参考,我已将此报告给 Facebook:https ://developers.facebook.com/bugs/1825253057751227

连接错误示例

4

2 回答 2

0

如果您的错误是偶然的,我建议将您的实例大小从 Micro 提高到至少 Medium 或 Large 并使其成为专用实例。运行letsencrypt客户端所需的资源,加上你的机器人流量和嘈杂的邻居可能会克服共享的微实例。

于 2016-12-07T11:32:11.713 回答
0

您的 webhook 服务器必须通过有效的https(非自签名)工作。

我的建议 - 将 https 添加到 webhook 服务器,使用cloudflare 服务(它是免费的),或者使用letsencrypt获得免费的有效证书

于 2016-12-05T09:28:00.990 回答