Telegram bot voice messages with AI voices
A bot that answers with a voice message feels alive: a morning briefing read aloud, a reply in a character’s voice, a pronunciation example for a language learner. Cloud speech APIs charge for every message and see every text.
The free SuperClonica engine voices the bot’s text on your own server, in natural or character voices. This guide shows how to turn a reply into a Telegram voice message, how to keep the bot fast and how to use voices fairly.
What a voice bot can do
Short replies work best: a voice message of a few sentences is easier to listen to than a long monologue.
- Answer questions with a voice message instead of a wall of text.
- Read news, posts or a daily summary aloud.
- Speak as a character in a game or fan community bot.
- Give language learners example sentences in 31 languages.
Hear the voices free online
On the page of any voice, type a typical bot reply of 30 to 100 characters, choose the language and press Voice it. In a few seconds you hear how your bot would sound, with no account.
Turn text into a voice message
Keep the WAV only as an intermediate file; the Opus file is small and plays inline in every Telegram app.
- Install the engine once: python -m pip install superclonica-cpu.
- Create it once, tts = Superclonica(), and voice each reply: audio, rate = tts.synthesize("Good morning! Here is your summary for today.", voice="F1", lang="en"); tts.save("reply.wav", audio).
- Telegram shows voice messages for OGG files encoded with Opus, so convert with ffmpeg: ffmpeg -i reply.wav -c:a libopus -b:a 48k reply.ogg.
- Send the file with the voice-message method of your bot library, which calls sendVoice in the Telegram Bot API.
Keep the bot fast
Loading the engine takes a few seconds, each reply after that a fraction of a second: in our tests a short phrase took 0.43 s on four CPU threads. With an asynchronous library such as aiogram or python-telegram-bot, run synthesis in a worker thread so the bot keeps answering other chats. Cache replies that repeat, since the same text, voice and seed always give the same audio. If your bot is not written in Python, run the engine as a local HTTP service with the Docker image superclonica/superclonica:cpu and call POST /synthesize.
Voices, used fairly
The ten stock voices of the model, M1 to M5 and F1 to F5, are free and fit any bot. Character voices from the catalog are fan-made, so use them for fun bots in fan communities, not to impersonate anyone or to look official. Tell users that the voice is generated, and for a brand or a public bot with many users, train an original voice from a speaker who agreed or order one on the exchange.