Skip to content
Sign upLog in
← Back to Community

How can I make a discordpy bot update/restart itself without stopping the Flask server

Profile icon
SpaceFire

I want to make a command something like [prefix]restart so that my bot doesn't go offline with every little update I make.

Voters
Profile icon
CLyBerGaming
Profile icon
EnZon3
Profile icon
SpaceFire
Comments
hotnewtop
Profile icon
leon332157

Just make 2 different threads one handles the bot restart another one handles the bot itself.

Profile icon
Killenemy45

Use client.stop() and done

Profile icon
Coder100

Might want to look at crosis

Profile icon
CodeLongAndPros

If you are in the repl, Press Ctrl-Enter. Fast restart and virtually 0 downtime. (1-2 seconds)

Profile icon
JoshuaGottfried

Make a command only you can use called restart. Then use await client/bot.logout... If you are hosting using repl it will automatically restart

Profile icon
SpaceFire

@JoshuaGottfried
this does log my bot out which is half the job but does not reactivate it

Profile icon
JoshuaGottfried

@SpaceFire
Hmmmmmm. Could you send me the code via Discord? Nuggets#0001

Profile icon
SpaceFire
Profile icon
Codemonkey51

i have an idea run a flask server in one tread: make repl run start.sh on start and have that start keep_alive.py which makes a flask server then runs it in a thred then start main.py and have the restart command use os.system('python main.py') and then on the newline exit()
so the restart command would look ike this:

import os # -- rest of code-- #restart command os.system('python main.py') exit()

so then the thread is always running but the bot can restart itself

Profile icon
CodeLongAndPros

@Codemonkey51
That would cause recursion.

Not a fork bomb, but nested copy's.

Profile icon
adl212

I actually don't think this is possible.