Spaces:
Sleeping
Gojo_Satarou
A python and pyrogram based group management bot for telegram. If you like the bot make sure to give a β star β to this respository and feel free to updating and sending pull requests
Inspiration β¨
Not a particular inspiration, inspired by many bots
Mainly:
About
The Gojo Satarou is a powerful Group Management bot with awesome plugins and features.
If you counter any problem or face any bugs for help join π Gojo Updates π and then join the gc and ask your problem.
Features
- Modern
- Fast
- Fully asynchronous
- Fully open-source
- Frequently updated
Can be found on Telegram as @iamgojoof6eyes_bot
β οΈ Note: The bot is not currently working due to some issues and I don't think I have that much extra time to solve it....If you think you can help me in fixing it just ib me on tg @iamgojoof6eyes
License
Licensed Under GNU General Public License v3
DEPLOYMENT π
Deploy To Heroku
Make Sure you have Heroku account
If you don't have heroku account what are you waiting for click here to make one or just deploy on other platform gudie is given below
Just click on the button it will redirect you to Heroku website and deploy your bot there....enjoy π
Deploy To Railway
How To Deploy On Railway
- Make Sure You have an github account which is minimum 30 days old.
- Fork the repo by clicking here
- Click on deploy button
- Login in railway using github account
- Now search the repo in the search bar given like iamgojoof6eyes/Gojo_Satarou replace iamgojoof6eyes with your github username.
- Now add the values and keys by creating values and keys Make sure to add keys as per given below I'll advide you to just copy and paste it
- Then wait for 10-15 minutes.
Mandaotry
keys are given belowAll keys
are listed here- The bot can be used by provideing mandotry variables only..
Deploy To Okteto
How To Deploy On Okteto
- Make sure you have an github account.
- Fork the repo and give a star to repo
- Click on deploy button provided above...
- Login using github.
- Fill the values
- Then wait for 10-15 minutes.
Mandaotry
keys are given belowAll keys
are listed here- If you want to add more data of yours just go to variable section and add the key and values to it then hit on
relaunch
In case the button doesn't work just fork the repo give it a star open okteto login using github give okteto access to your github account repo search for your bot repo add the key and values provided below and wait for few minutes
Deploy locally
Using git
- Install Python v3.7 or later from Python's Website
- Install virtualenv using
python3 -m pip -U install virtualenv
. - Fork or Clone the project using
git clone https://github.com/Gojo-Bots/Gojo_Satarou.git
- Create Virtualenv using:
virtualenv venv
- Install the requirements using
python3 -m pip install -r requirements.txt
- Fill in all the variables in Development class, not Config class. Sudo, Dev, Whitelist users are optional!!
- Change to virtualenv shell by using:
. venv/bin/activate (Linux) venv\Scripts\activate (Windows)
- Run the bot using
python3 -m Powers
Variables
BOT_TOKEN
You can get your bot token at @BotFather
API_ID
You can get your api id here
API_HASH
You can get your api hash here
PREFIX_HANDLER
Your bot handler which will activate commands
DB_URI
Your MongoDB connection string.
To get a list of all variable click here
Adding your own plugin
To add your very own plugin just use the format given below and go through the utils and custom_filters
from traceback import format_exc
from Powers.utils.custom_filters import command
from Powers import LOGGER
from Powers.bot_class import Gojo
# All the import provided above is mandotry in case you don't want to use logger remove the first and third import
# Import more funcs and module as per your need
@Gojo.on_message(command("<your command>")) # Pass additional filters if you need
async def <function name>(<arguments to take>):
<your code>
'''use logger to add log info using LOGGER.info(<string>) in the platfrom on which bot is running
and error as LOGGER.error(<string>) and after LOGGER.error() use
LOGGER.error(format_exc())'''
__PLUGIN__ = <name of plugin> # Pass the name of your plugin as string
_DISABLE_CMDS_ = [<command as string>] # Enter the commands if you want that they can be disabled if needed.
__alt_name__ = [<command as string>] # Alternative name of the plugin
__HELP__ = <string> # To tell about you plugin and commands you must use it
# See any plugin to get more information about how to make a plugin
Add plugins in plugin section
Note : Don't use <> this bracket while writing the code...
Contributors
Special Thanks β€οΈ
PSYREX
for logos
PyKeyboard
for pagination
Pyrogram
library