The moment it happens
Turn voice notes into text with a reply
Send your bot a voice note and get the transcript back with a short answer.
- Runs
- The moment it happens
- Apps
- Telegram
- AI
- Yes, uses the built-in AI allowance
- Access
- bot token
Send this to your assistant
Create a ClickRuntime automation: when I send a voice message to my Telegram bot, transcribe it with my OpenAI key and reply with the text and a short answer.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
People who think out loud record voice notes for ideas, meeting recaps or questions, then never listen to them again. Replaying a three-minute note is slower than reading it, and searching a pile of audio for one detail is impossible. The idea captured on a walk stays locked in a file nobody opens.
When you send a voice note to your Telegram bot, ClickRuntime fetches the audio with getFile, transcribes it with your own OpenAI Whisper key and asks ClickRuntime's built-in AI to reply to what you said, whether that is a question or a request to clean up your notes. You receive both the transcript and the answer in the chat.
It suits busy people who talk faster than they type, such as drivers, parents and people on a commute.
What you get out of it
Spoken ideas become searchable text
Once the note is transcribed, you can search it in Telegram like any message. Finding what you said last Tuesday takes seconds instead of replaying files. Even a long ramble becomes a block of text you can scan, copy and send on to somebody else.
Speaking is faster than typing
Most people talk several times faster than they type on a phone. Capturing a long thought by voice saves time and keeps you from shortening it. Short notes recorded in a minute can hold what would take ten minutes to type.
You get an answer, not only a transcript
The AI replies to the content, answering a question or tidying rambling notes into a short list. The note becomes useful immediately. Questions get real answers, and a messy list of thoughts comes back as something you can use.
It works when your hands are busy
Walking, driving with a hands-free setup or cooking all leave your voice free. You capture ideas at the moment they appear. Ideas rarely arrive at a desk, and a hands-free route keeps them from being lost on the way.
Accuracy comes from Whisper
A well-known speech model handles accents and many languages. Using your own key means cost stays on your own account. Billing on your own account keeps the cost visible and entirely under your own control.
How it works
What happens, step by step
When you send a voice note to your Telegram bot, ClickRuntime downloads the audio straight away.
It turns the audio into text using your own OpenAI speech-to-text account.
AI writes a reply to what you said.
The bot sends back the transcript and the reply.
Before it runs live
- Connect Telegram
- Paste your automation's link into the other app's webhook settings
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Act only on the items that match your own rules, and skip the rest
- Change what the AI looks for, or how it writes the result
- Add another app, for example also send it to Slack
- Combine it with other Telegram steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_event, http, credentials, ai
def tg(method, **params):
r = http.post(f"https://api.telegram.org/bot{credentials.secret('TELEGRAM_BOT_TOKEN')}/{method}", json=params)
r.raise_for_status()
return r.json()["result"]
@on_event
def handle(event):
msg = (event.json or {}).get("message") or {}
if "voice" not in msg:
return {"replied": False}
token = credentials.secret("TELEGRAM_BOT_TOKEN")
path = tg("getFile", file_id=msg["voice"]["file_id"])["file_path"]
audio = http.get(f"https://api.telegram.org/file/bot{token}/{path}").content
text = http.post("https://api.openai.com/v1/audio/transcriptions",
headers={"Authorization": f"Bearer {credentials.secret('OPENAI_API_KEY')}"},
data={"model": "whisper-1"}, files={"file": ("voice.ogg", audio)}).json()["text"]
answer = ai.generate(text, system="Reply with a short, helpful answer.", max_output_tokens=200).text
tg("sendMessage", chat_id=msg["chat"]["id"], text=f"You said: {text}\n\n{answer}")
return {"chars": len(text)}FAQ
Common questions
Why do I need my own OpenAI key?
How long can a voice note be?
Can the transcript be sent to my email as well?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Have your Telegram bot answer messages
Anyone who messages your bot gets a helpful reply straight away, and the bot remembers the last few messages.
See how it worksSummarise any link with a bot command
Send /summary with a link and get a five-line summary of the page.
See how it worksTranslate messages you send your bot
Send your bot text in one language and get it back in another.
See how it worksKeep exploring
Set up “Turn voice notes into text with a reply” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.