在repl.it上保持Discord Bot在线

时间:2019-02-16 11:30:39

标签: python discord keep-alive

如何为我的Python Discord Bot使用repl.it,并使它保持24/7全天候运行。 我曾经使用keep_alive,但是由于某种原因它停止工作。

有人有什么建议吗?

我一直在控制台中收到此错误:

  

172.18.0.1--[16 / Feb / 2019 11:25:10]“ GET / HTTP / 1.1” 200-

1 个答案:

答案 0 :(得分:0)

要使您的repl.it bot 24/7保持在线,您必须做以下三件事:

  1. 使机器人保持活力
  2. 添加后台任务
  3. 将您的repl.it机器人与正常运行时间机器人链接

1。要使我们的机器人保持活力,我们必须在py文件的开头添加以下代码:

from flask import Flask
from threading import Thread

app = Flask('')

@app.route('/')
def main():
  return "Your Bot Is Ready"

def run():
  app.run(host="0.0.0.0", port=8000)

def keep_alive():
  server = Thread(target=run)
  server.start()

2。添加后台任务:

status = cycle(['with Python','JetHub'])

@bot.event
async def on_ready():
  change_status.start()
  print("Your bot is ready")

@tasks.loop(seconds=10)
async def change_status():
  await bot.change_presence(activity=discord.Game(next(status)))

3。设置Uptime Robot

  • 在正常运行时间的机器人上创建帐户。
  • 创建帐户后,转到仪表板,然后单击“添加新监视器(preview)
  • 选择监视器类型Http (preview)
  • 然后转到repl.it上的ur项目,并从控制台顶部复制url并将其粘贴到监视器(preview)的url部分中
  • 现在将监视时间间隔设置为每5分钟一次(这样它将每5分钟对bot进行一次ping操作),然后两次点击创建监视器(preview)
  • 就这样...现在在repl.it上进入您的项目,然后点击“运行”按钮

如果您是在 discord.js 中创建了不和谐的机器人,我会在其中写一篇中等文章:Host a Discord Bot 24/7 Online for FREE!