Spaces:
Running
Running
<h1 align="center"> | |
<b> Gojo_Satarou </b> | |
<!---</h1> | |
<h1 align="center"><img src="https://media.giphy.com/media/GL42TduR8AkNq1xRog/giphy.gif" /></h1> ---> | |
<h1 align="center"><img src="https://te.legra.ph/file/4bf3b88115068d41efadd.jpg" /></h1> | |
------ | |
<!--- | |
[](https://github.com/iamgojoof6eyes/Gojo_Satarou/fork) | |
[](https://github.com/iamgojoof6eyes/Gojo_Satarou/stargazers) | |
 | |
 | |
[](https://github.com/iamgojoof6eyes/Gojo_Satarou/master/LICENSE) | |
[](https://www.python.org/) | |
 | |
 | |
-----> | |
**A python and [pyrogram](https://github.com/iamgojoof6eyes/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` | |
``` | |
This bot is mixture of the many bots and have some extra plugins so it is quite better than other bots. | |
``` | |
--------- | |
## Group Management | |
The Gojo Satarou is a powerful Group Management bot. | |
Can be found on telegram as a management bot for groups. | |
**If you counter any problem or face any bugs for help join π [Gojo Updates](https://t.me/gojo_updates) π and then join the gc and ask your problem.** | |
## Features | |
<h1 align="center"><img src="https://media.giphy.com/media/hbKBe6j3JLsNnb4h53/giphy.gif" /></h1> | |
* Modern | |
* Fast | |
* Fully asynchronous | |
* Fully open-source | |
* Frequently updated | |
***Can be found on Telegram as __[@iamgojoof6eyes_bot](https://t.me/iamgojoof6eyes)__*** | |
--------- | |
# DEPLOYMENT π | |
## Deploy To Heroku | |
**Make Sure you have Heroku account** | |
If you don't have heroku account what are you waiting for click [here](https://id.heroku.com/login) 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 π | |
[](https://heroku.com/deploy?template=https://github.com/iamgojoof6eyes/Gojo_Satarou.git) | |
------- | |
## Deploy To Railway | |
[](https://railway.app) | |
### How To Deploy On Railway | |
* **Make Sure You have an github account which is minimum 30 days old.** | |
* Fork the repo by clicking [here](https://github.com/iamgojoof6eyes/Gojo_Satarou/fork) | |
* Click on [deploy](https://railway.app) 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 below](#Variables) | |
* `All keys` are listed [here](https://telegra.ph/Captain-03-27) | |
* ***The bot can be used by provideing mandotry variables only..*** | |
-------- | |
<!---## Deploy To Okteto | |
[](https://cloud.okteto.com/deploy?repository=https://github.com/iamgojoof6eyes/Gojo_Satarou) | |
### How To Deploy On Okteto | |
* **Make sure you have an github account.** | |
* [Fork](https://github.com/iamgojoof6eyes/Gojo_Satarou/fork) the repo and give a star to repo | |
* Click on [deploy](https://cloud.okteto.com/deploy?repository=https://github.com/iamgojoof6eyes/Gojo_Satarou) button provided above... | |
* Login using github. | |
* 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. | |
* If logs show error click on redeploy then ``variable`` if the variable is not there fill it and then click ``relaunch`` | |
* ``Mandaotry`` keys are [given below](#Variables) | |
* ``All keys`` are listed [here](https://telegra.ph/Captain-03-27) | |
* ***The bot can be used by provideing mandotry variables only..*** | |
***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](#Variables) 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/iamgojoof6eyes/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` | |
<!---### Using docker | |
* Clone the repo and enter into it | |
* Install [Docker](https://www.docker.com/) | |
* Fill in the `sample.env` file and rename it to `main.env`. | |
* Now follow the steps: | |
To build the docker image **(The dot '.' at last is necessary!)**: | |
``` | |
docker build -t gojo_satarou:latest . | |
``` | |
To run copy and paste the following commang | |
``` | |
docker run --env-file main.env gojo_satarou | |
``` | |
If all works well, bot should send message to the MESSAGE_DUMP Group!---> | |
## Variables | |
`BOT_TOKEN` You can get your bot token at [@BotFather](https://t.me/BotFather) | |
`API_ID` You can get your api id [here](my.telegram.org) | |
`API_HASH` You can get your api hash [here](my.telegram.org) | |
`PREFIX_HANDLER` Your bot handler which will activate commands | |
`DB_URI` Your [MongoDB](https://www.mongodb.com/) connection string. | |
To get a list of all variable click [here](https://telegra.ph/Captain-03-27) | |
--------- | |
# Adding your own plugin | |
To add your very own plugin just use the format given below and go through the [utils](https://github.com/iamgojoof6eyes/Gojo_Satarou/blob/master/Powers/utils) and [custom_filters](https://github.com/iamgojoof6eyes/Gojo_Satarou/blob/master/Powers/utils/custom_filters.py) | |
```python | |
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>] # Use this if you want that the command can't be used in supergroups | |
__alt_name__ = [<command as string>] # Use this for the command that can be used in groups as well as supergroup | |
__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](https://github.com/iamgojoof6eyes/Gojo_Satarou/tree/master/Powers/plugins) section | |
## **Note** : Don't use <> this bracket while writing the code... | |
-------- | |
<!---# Contributors | |
 | |
---------> | |
# Special Thanks β€οΈ | |
<!---[](https://github.com/iamPSYREX) | |
# [PSYREX](https://github.com/iamPSYREX)---> | |
<p align='center'> | |
<a href="https://github.com/iamPSYREX"><img src="https://avatars.githubusercontent.com/u/90316018?v=4" alt="PSYREX"></a></br></br> | |
</p> | |
<h1 align="center"><i><a href="https://github.com/iamPSYREX">PSYREX</a></i></h1> | |
--------- | |
# Powered by [HELL](https://github.com/The-HellBot) | |
[](https://github.com/The-HellBot) | |