b128c993345209dd6c3d42e9aa65bd5a41121729
Telemovris 2.0 - Telegram TTS Call Bot
A dockerized application that converts text to audio (using Piper Neural TTS) and calls a Telegram user to play the message. Includes a modern Web Dashboard for management.
Features
- High Quality TTS: Uses Piper with
es_ES-sharvard-mediummodel for human-like speech. - Web Dashboard: Manage queue, view history, and test voices via browser.
- Web-based Login: Log in to your Telegram account directly from the UI (supports 2FA).
- Web-based Configuration: Set
API_IDandAPI_HASHwithout touching config files. - Real-time Queue: Redis-backed queue with history and error reporting.
- Smart Dialing: Waits for the user to answer before playing audio.
- Legacy API Support: Compatible with simple GET requests.
Prerequisites
- Docker & Docker Compose
Installation
-
Clone the repository:
git clone https://gitlab.com/your/telemovris2.git cd telemovris2 -
Ensure Piper binaries are present: The project expects the Piper TTS binary and model in the
piper/directory.piper/piper/piper(Executable)piper/es_ES-sharvard-medium.onnx(Model)piper/es_ES-sharvard-medium.onnx.json(Config)
-
Start the container:
docker compose up -d --build
Configuration & Usage
1. Initial Setup
- Open your browser and navigate to
http://localhost:8234. - You will be prompted to enter your Telegram API ID and API Hash.
- Get these from my.telegram.org.
- Click Save Configuration. The worker will restart.
2. Login
- After configuration, the dashboard will show a Login Now button.
- Enter your Phone Number (international format, e.g.,
+34...). - Scan the QR Code using your Telegram Mobile App (Settings > Devices > Link Desktop Device).
- Note: If the QR code expires or fails, check
docker logs telemovris_appfor details.
- Note: If the QR code expires or fails, check
3. Sending Messages
- Via Dashboard: Use the "Queue New Task" form.
- Via Legacy API:
GET http://localhost:8234/sendmessage?user=@username&message=Hello+World&audio=yes
Development
- Reset Config: If you need to change accounts or keys, click the "Reset Config" button in the dashboard (when disconnected).
- Logs: Check worker logs for debugging:
docker logs -f telemovris_app
Persistence
- Session: Telegram session is stored in
./data/session.madeline. - Redis: Job queue and history are persisted in
./redis_data. - Config: API credentials are stored in
./data/config.json.
License
MIT
Description
Languages
Hack
51.9%
PHP
45.3%
Shell
1.4%
Dockerfile
1.3%
Roff
0.1%