Reverts input functions to a simpler model by separating the `echo` of the prompt from the `read` command itself. This avoids using `read -p` with complex, colorized prompt strings, which can sometimes cause issues in specific terminal emulators or compatibility layers like those found in MobaXterm. This change aims to improve robustness of input handling by: 1. Using `echo -e -n` for displaying the prompt with colors. 2. Using a plain `read` or `read -s` for capturing user input. This is a further attempt to resolve issues where users might be unable to type or paste into prompts within the MobaXterm environment.
Ultroid - UserBot
A stable pluggable Telegram userbot + Voice & Video Call music bot, based on Telethon.
🚀 Getting Started
The easiest way to set up Ultroid is by using our unified setup script.
Run this command in your terminal:
bash <(curl -s https://raw.githubusercontent.com/overspend1/Ultroid-fork/main/ultroid_setup.sh)
Or, clone this repository and run the script:
git clone https://github.com/overspend1/Ultroid-fork.git
cd Ultroid-fork
bash ultroid_setup.sh
This script will guide you through choosing either a Docker-based or a local Python installation for this fork and help configure the necessary variables.
For other deployment options or more details, see below.
Other Deployment Options
Documentation
Tutorial
-
Tutorial to get Redis URL and password - here.
Deploy to Okteto
Get the Necessary Variables and then click the button below!
Manual Setup
If you prefer a manual setup or want to understand the components:
- Docker: Refer to DOCKER_DEPLOYMENT.md and README_DOCKER.md. The
ultroid_setup.shscript automates this using these Docker files. - Local Python: The
ultroid_setup.shscript automates the following general steps using this fork's code:- Clone this repository:
git clone https://github.com/overspend1/Ultroid-fork.git && cd Ultroid-fork - Create a Python virtual environment:
python3 -m venv .venv - Activate it:
source .venv/bin/activate - Install dependencies:
pip install -r requirements.txt - Configure your variables in a
.envfile (see Necessary Variables below). - Run the bot:
python3 -m pyUltroid
- Clone this repository:
Important: Necessary Variables
Whether using the setup script or a manual method, you will need the following:
SESSION: Your Telegram user account session string. The setup script and other utilities can help you generate this. See Session String for methods.
One of the following database:
- For Redis (tutorial here)
- For MONGODB
MONGO_URI- Get it from mongodb.
- For SQLDB
DATABASE_URL- Get it from elephantsql.
Session String
Different ways to get your SESSION:
- Linux :
wget -O session.py https://git.io/JY9JI && python3 session.py - PowerShell :
cd desktop ; wget https://git.io/JY9JI -OutFile session.py ; python session.py - Termux :
wget -O session.py https://git.io/JY9JI && python session.py - Telegram Bot : @SessionGeneratorBot
- Using
ultroid_setup.sh: The setup script will guide you through session generation if needed. - Using
generate-session.sh: This script in the repository provides various methods:bash generate-session.sh
Core Contributor Team
@xditya |
@1danish_00 |
@buddhhu |
@TechiError |
@New-dev0 |
@Arnab431 |
@sppidy |
@hellboi_atul |
@iAkashPattnaik |
Contributors
We are highly grateful for all the contributions made by our amazing community! ❤️
License

Ultroid is licensed under GNU Affero General Public License v3 or later.
Credits
- Lonami for Telethon.
- MarshalX for PyTgCalls.
Made with 💕 by @TeamUltroid.
