使用pyTelegramBotApi轮询时绑定到port telebot

时间:2019-01-31 07:02:33

标签: python heroku port telegram-bot

我正在尝试将我的Telebot部署在heroku上,但始终失败:

  

错误R10(引导超时)-> Web进程无法绑定到$ PORT   启动60秒

正如我从文档和Google上了解到的,发生这种情况是因为heroku为我的应用程序指定了端口,但我在一分钟之内没有绑定到它,因此崩溃了。由于heroku docs(https://devcenter.heroku.com/articles/dynos#local-environment-variables),似乎必须绑定到端口。

  1. 启动后一分钟内,我的机器人运行良好。
  2. 如果我在代码中放置了绑定到给定端口的http服务器实例,则不会发生此错误(但在用网络服务器https://docs.python.org/3.6/library/http.server.html#http.server.BaseHTTPRequestHandler锁定serve_forever调用执行之后)

这里有几个问题:

  1. 在python中模拟端口绑定的最简单方法是什么?
  2. 用Telebot绑定端口的唯一方法是使用webhook吗?
  3. 也许还有一种方法可以在heroku端跳过端口绑定?
  4. 在调查中我可能是完全错误的,还有另一种简单的方法可以在heroku上运行bot进行轮询吗?
  5. 我正在Atlas上使用mongodb。我试图像那里使用端口
  

client = pymongo.MongoClient(db_url,port = heroku_port)

但是没有帮助。 db_url使用'mongodb + srv'协议。有办法吗?

0 个答案:

没有答案