Skip to content

Every 5 minutes

Sort voicemails into urgent and not urgent

Each voicemail gets a one-line summary, urgent ones go to Slack and the rest arrive by email.

Runs
Every 5 minutes
Apps
Twilio
AI
Yes, uses the built-in AI allowance
Access
read

Send this to your assistant

Create a ClickRuntime automation: summarise each new voicemail on my Twilio number in one line; if it sounds urgent, post it to #on-call in Slack, otherwise email it to me.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

Voicemail is a poor way to run a business. A property manager comes back from a viewing to nine messages, each thirty seconds of rambling, and has to listen to all of them to find the tenant reporting a burst pipe. Meanwhile the supplier asking about next week's order waits just as long. Urgent calls get the same slow treatment as trivial ones.

Every five minutes, this checks Twilio for new voicemail transcriptions. An AI step reads each transcript, writes a one-line summary and decides whether it is urgent. Urgent voicemails are posted to Slack straight away, while the others go into an email, so you read the important ones first.

It is aimed at small teams on call, such as repair services, clinics and property managers. Nobody needs to listen to every recording to find the urgent one.

What you get out of it

  • Urgent messages reach you first

    A burst pipe or a missed delivery slot gets posted to Slack within minutes of the call. The tenant is called back before the damage spreads, rather than after you have worked through the whole queue.

  • Read ten voicemails in a minute

    One-line summaries let you scan the day's calls quickly. You decide what to answer first without listening to every recording, which matters when messages ramble or the audio is poor.

  • Two lanes for two kinds of message

    Urgent items go to the channel your team watches, and the rest go to an email you read at a calmer moment. Nobody has to monitor everything to avoid missing the one call that matters.

  • Fewer missed emergencies

    Without triage, a serious message can sit unheard behind trivial ones. An explicit urgency tag reduces the chance that a call about a safety issue is found a day late.

  • A written record of every call

    Summaries and transcripts are kept in Slack and email, so anyone can search for what a caller said. That helps when a customer disputes what they reported and when handing over between shifts.

How it works

What happens, step by step

  1. Every 5 minutes, ClickRuntime checks your Twilio number for new voicemail transcripts. Ones it has already handled are skipped.

  2. AI reads each transcript, sums it up in one line and decides whether it is urgent.

  3. Urgent voicemails are posted to your #support Slack channel with the caller's number, such as "Urgent voicemail: Burst pipe at Northwind's office".

  4. Everything else arrives in your inbox as an email with the summary.

Before it runs live

  • Connect Twilio

What you get

RunsEvery 5 minutes
Sort voicemails into urgent and not urgenttoday, 9:00Succeeded
Slack · #support🚨 Urgent voicemail from +447700900456: Burst pipe at Northwind's office, needs someone today.

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • 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 Twilio steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
ai_voicemail_summary_and_urgency_tag.pyexample
from clickruntime import on_trigger, credentials, http, state, ai, notify, report_fetched

@on_trigger
def run(event):
    sid = credentials.secret("TWILIO_ACCOUNT_SID")
    base, auth = f"https://api.twilio.com/2010-04-01/Accounts/{sid}", (sid, credentials.secret("TWILIO_AUTH_TOKEN"))
    items = http.get(f"{base}/Transcriptions.json", auth=auth, params={"PageSize": 20}).json()["transcriptions"]
    seen = state.get("seen") or []
    new = [t for t in items if t["sid"] not in seen and t["status"] == "completed"]
    report_fetched(len(new))
    if not new:
        return {"summary": "Nothing new"}
    for t in new:
        rec = http.get(f"{base}/Recordings/{t['recording_sid']}.json", auth=auth).json()
        caller = http.get(f"{base}/Calls/{rec['call_sid']}.json", auth=auth).json()["from"]
        out = ai.generate(t["transcription_text"] or "", system="Summarise this voicemail in one line and say if it is urgent.",
                          json_schema={"type": "object", "properties": {"summary": {"type": "string"}, "urgent": {"type": "boolean"}}}, max_output_tokens=80).json
        if out["urgent"]:
            notify.slack(f"🚨 Urgent voicemail from {caller}: {out['summary']}", channel="#support")
        else:
            notify.email_me(f"Voicemail from {caller}", out["summary"])
        seen.append(t["sid"])
    state.set("seen", seen[-500:])
    return {"processed": len(new)}

FAQ

Common questions

How does the AI decide what is urgent?
It follows the rules you give it, such as treating leaks, no heating, safety concerns or angry repeat callers as urgent. You can tune the wording over time. Anything uncertain can be marked urgent, so it errs on the side of caution.
What if the transcription is wrong?
Twilio's transcription can misread names and numbers, especially on poor lines. The summary is based on that text, so the email also includes the recording link, letting you listen to anything that sounds odd or important.
Does it call people back?
No. It only summarizes, tags and notifies. Calling back involves judgment and a human voice, so it stays with your team. The message gives them the caller's number and the reason for the call. Your team still decides who to ring and what to say.
What permissions does it need?
read. Nothing else in your accounts is used.
Does it need AI?
Yes. It uses ClickRuntime's built-in AI, so you don't need an OpenAI or Anthropic key. Every plan includes a monthly AI allowance.
How many runs does it use?
One run each time it checks. Checks that find nothing new and stop right away aren't counted.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Sort voicemails into urgent and not urgent” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.