Skip to content

After a client call, the team gets commitments, deadlines, and links to the relevant moments in the recording.

The system transcribes the call, identifies the speakers, and lists the commitments. Each one includes an owner, a deadline, and the relevant moment in the recording. Complaints, payments, and unclear dates always go to an employee.

Commitments from phone callsDemonstration systemReview one call and its commitments

What we measured

The reference implementation contains no client data, recordings, or credentials. It tests the full workflow, five required stops, and voice creation only after approval. It does not test reviewer identity or quality on real client calls.

Two recorded measurements
What we measured
9/9 structural checks · 12/12 live transcriptions
Commitments from phone calls
Verified
synthetic corpus

Problem, solution, and result

  1. The problem

    Important commitments remain inside a recording or in an employee's memory. When a customer returns weeks later, the team spends time listening again and may not know who promised the next action.

  2. How it works

    The system creates a speaker-separated transcript and links every commitment to the exact place in the recording. It then prepares an action list and a response draft. A person approves every spoken response before audio is created.

  3. What we tested across 12 calls

    The reference implementation contains no client data, recordings, or credentials. It tests the full workflow, five required stops, and voice creation only after approval. It does not test reviewer identity or quality on real client calls.

For whom

This system fits teams left with short call notes, missing deadlines, and spoken responses that must be approved by a named person.

Recording → commitments → release → voice

  1. 01Every commitment points to an owner, a date and a second in the audio
  2. 02A call held for review never reaches the synthesis provider
  3. 03Audio exists only after a recorded human release
Business type
Service businesses recording customer or technical-support calls
Input
Recorded phone calls; the reproduction runs on 12 two-speaker synthesized calls, 436.41 s and 855 words in total
Boundary
A call held for review (complaint, money, unresolved deadline, request for a human) cannot start synthesis; the voice comes from a closed catalogue, with no cloning
Cost
USD 0.047770 for the recorded run of 12 transcriptions and one approved spoken notice.
Security
A complaint, money issue, unresolved date, or request for a person stops preparation of a spoken response.
Speed
We measure transcription and response-preparation time in a pilot using the client’s recordings.
Trace
Every commitment points to the relevant moment in the call, and release requires recorded approval.
Similar system build
from €3,500 net (approx. $3,800) · 2–6 weeks

Reference exchange rates: USD 1 = PLN 3.72; EUR 1 = PLN 4.30. PLN amounts are rounded, with the measurement currency retained in parentheses.

The voice boundary

A person approves every spoken response

The system does not call back, send messages, or close cases. A complaint, payment matter, unresolved deadline, or request to speak with a person stays in review however good the transcript is. A named person releases the spoken reply, and that decision stays in the audit trail. The demonstrator records the approval but does not authenticate the approver. The target environment must separately define the lawful basis for recording, retention, authorization, and deletion on request.

Boundary
A call held for review (complaint, money, unresolved deadline, request for a human) cannot start synthesis; the voice comes from a closed catalogue, with no cloning
Cost
USD 0.047770 for the recorded run of 12 transcriptions and one approved spoken notice.
Security
A complaint, money issue, unresolved date, or request for a person stops preparation of a spoken response.
Speed
We measure transcription and response-preparation time in a pilot using the client’s recordings.

The first corpus went in the bin

The first set of recordings was generated locally with eSpeak and was worth nothing: a formant synthesizer is recognizable within two seconds, and the transcript of such a file says nothing about a call with a customer. We rebuilt the corpus on neural speech in 16 catalogue voices, and we still call it what it is. Hence the second caveat: only one of the 47 voices available on our key is verified for Polish in a male register, so some speakers carry a slight foreign accent. Speaker separation scores 100% because turns in this corpus are divided by silence; with overlapping voices it will drop, and that is the first thing we would measure on live calls.

Estimated impact

Calculate the impact at your volume

This estimate uses the stated volume. Enter your own numbers to assess the possible impact in your company. The result is confirmed only during a pilot.

  1. Today

    Current assumption: 90 h/month (18 min/recording)

  2. With the system

    After scenario: 30 h/month (6 min/recording)

  3. Time or cost saved

    Modelled outcome: 45-75 h/month, 60 h base case

Volume
Modelled scenario: 300 recordings/month
Formula
300 x (18 - 6) min / 60 = 60 h/month
Calculation status
medium

Data in the screenshots. The names, amounts, and documents shown in the screenshots are synthetic. Client data remains private. Measurements describe the demonstrator and are kept separate from production outcomes.

Working surfaces

The consultant works from commitments, and a named person releases any reply spoken in the company's voice.

The consultant starts the day with a list of commitments and their dates, and one click on any of them plays the second where it was said. Sensitive matters wait in review, and the only spoken replies that go out are the ones somebody released and signed with an audit entry. On your own traffic there is still work to measure that this reproduction does not: WER on production phone lines with noise, accent and overlapping speakers, the accuracy of commitment extraction, and the true cost per minute in both directions.

Three screens after the call: the tape, the commitments, the release.

Call tape

The waveform, the transcript and the commitments on one timeline; clicking a commitment plays the second where it was said.

Commitment list

Commitments with owner, deadline and confidence, with sensitive matters set aside for review.

Reply release

The draft, the reason for the hold, the reviewer field and the release history, each item with its audit entry.

System screens

See how the system works in practice

These desktop and mobile screenshots come from the running application. They show the process and the points where a person makes the decision.

Screens
11
px
1440 · 390
011440×1100
The listening desk: the recording's waveform, tapes with commitment confidence, and the counter of items to assess.
390390×844
  1. 021440×1100
    A tape, the transcript, and voice release behind the human gate.
  2. 031440×1100
    The listening desk framed on a phone.
Open the remaining screen archive (8)
  1. 041440×1100
    A request for a human
  2. 051440×1100
    Commitments
  3. 061440×1100
    For review
  4. 071440×1100
    Voice releases
  5. 081440×1100
    A ready release
  6. 091440×1100
    A held release
  7. 101440×1100
    A recorded release
  8. 111440×1100
    Measurement register

Technology stack

The whole difficulty sits in one condition before synthesis, so the stack stays short.

There is no loop to orchestrate here: a call goes through transcription, commitment extraction and one conditional release transaction, so FastAPI and PostgreSQL are enough and a graph would be ballast. Polish speech with a timestamp on every word and separated speakers is specialist work, which is why ElevenLabs carries both directions through an EU data-residency endpoint. An audit starts by reading one condition in the code and running the structural checks, which pass without a provider key, so maintenance does not depend on account access.

ElevenLabs Scribe v2
writes the Polish call into words with timestamps and separated speakers
ElevenLabs eleven_multilingual_v2
synthesizes the reply using only a voice from a closed catalogue list
FastAPI (Python 3.13)
holds the release gate and the audio and text caps applied before any request
PostgreSQL 17
state for calls, commitments and drafts plus the append-only audit chain
MinIO
private buckets for source and released audio, served through a proxy
Next.js 16
the six listening-desk screens, rendering fully from the corpus seed

The client takes over the code, the prompts, the evaluation data and the documentation, and the whole thing runs as a set of containers in their own infrastructure. We use ElevenLabs through an EU data-residency endpoint, and the synthesis interface accepts no voice sample, because no such parameter exists in it.

Technical details and measurements

The working loop

The recording, the words and accountability stay on one timeline.

Every commitment leads back to its fragment of audio, and every spoken reply leads back to the person who released it. The release gate is one condition inside a database transaction, so it can be read and tested without a provider key.

01

Call recording in isolated storage

02

A timestamp on every word → commitments with an owner and a date

03

Complaint, money, unresolved deadline, request for a human → review

Reply draft → a recorded release by a reviewer

04

Voice with an audible notice and a hash-chain entry

System architecture

Audio storage, transcript, release gate and audit chain.

Files in private MinIO buckets, call and draft state in PostgreSQL, the speech provider behind an EU data-residency endpoint, and the release condition enforced on the server, out of the interface's reach.

  1. 01

    Material

    The recording is tied to the case.

    The audio file sits in a private MinIO bucket and is served through a path-validating proxy. The call, the transcript and the commitments point at the same source. Caps of 60 seconds of audio and 360 characters of text apply before any provider request. The reference implementation does not evidence access control over recordings.

  2. 02

    Commitments

    Words have time; commitments have an owner.

    Scribe v2 returns a timestamp on every word and separates the speakers, so a commitment points to the exact span of the recording, the responsible person and the deadline. A structural check confirms that every commitment quotes the stored transcript word for word.

  3. 03

    Gate

    Release is atomic and conditional.

    A draft moves from pending to releasing in a single write, exactly once, and only when the call is not held. The synthesis client is constructed inside the release handler alone, so the draft path has no access to the code that speaks. The reviewer entry stays in the audit, and the reproduction does not authenticate it.

  4. 04

    Notice and trace

    The voice introduces itself; the audit remembers.

    The synthesis text opens with an audible statement that a system is speaking, and the voice comes from a closed catalogue: the interface has no parameter through which someone's voice sample could be supplied. The release and the tool calls join a contiguous hash chain.

Why the voice stands behind several gates

A sentence spoken in the company's voice cannot be recalled like an email, so the system uses several gates: draft state, hold policy, recorded release, a closed voice catalogue and a mandatory notice. The process fits one condition and one transaction, so it needs neither a graph nor an agent loop. Structural checks therefore run without a provider key.

  • Audio does not exist before the recorded release
  • A held draft is refused before the provider is called
  • The voice comes from a closed catalogue, with no cloning
  • The system notice is part of every synthesis
  • Caps of 60 s of audio and 360 characters apply before the request

Want to assess a similar process in your company?

  • A 30-minute call with the engineer who would lead the work.
  • A review of the processes that cost you the most time and money.
  • A written summary of what to automate first and the likely cost range.
€030 minutes · written takeaway within 2 business days
Book a free process scan (30 min)

Times are shown in your own time zone. We work with clients across time zones.

The scan is free and creates no obligation. If automation is unlikely to pay off, the written recommendation will say so.