-
Title: Call Transcription & Voice Analytics AI Agent
-
Category: Speech AI, Quality Assurance & Business Intelligence
-
Context: Customer support and sales calls for a confectionery/bakery business. Management needed to track customer feedback, delivery complaints, and call sentiment without listening to hundreds of call recordings manually.
-
Problem: Call logs accumulated in Google Sheets without structured analysis. Negative feedback and delivery issues were missed or identified too late, preventing timely resolution.
-
Solution: Developed a two-part automated architecture in n8n:
- An automated background pipeline that fetches audio calls from Google Sheets, transcribes audio to text via Speech-to-Text API, extracts sentiment & categories via LLM, and logs structured analytics to Data Tables.
- A conversational AI Agent for management that queries call analytics over dynamic date ranges using custom date math and tool execution.
-
Process & Workflow Architecture:
Part 1: Automated Call Processing Pipeline (Cron Workflow)
- Schedule Trigger: Runs every 2 minutes checking for unprocessed call records.
- Google Sheets Node: Reads rows filtering for unprocessed calls (
Status != 'Done', Limit: 1).
- Speech-to-Text Integration: Passes audio URLs to AssemblyAI API for full text transcription.
- LLM Information Extractor: Analyzes call transcripts using structured prompts to extract:
sentiment: positive, negative, or neutral
category: Short topic description (e.g., cake quality, delivery issue, pricing).
- n8n Data Tables: Inserts clean records (
call_url, sentiment, category, created_at).
- Google Sheets Update: Marks the processed row status as
Done.
Part 2: Subworkflow Tool (Get call stats)
- Execute Workflow Trigger: Accepts
startDate and endDate parameters (Format: YYYY-MM-DD).
- Data Tables Query: Filters records created between
startDate and endDate.
- JavaScript Code Node: Calculates total call volume, count of negative calls, and negative call percentage. Returns clean JSON analytics.
Part 3: Management AI Analytics Agent (Chat Workflow)
- Chat Trigger: Receives natural language queries from management (e.g., "How many negative calls did we have last week?").
- AI Agent & LLM Model: Uses dynamic system prompts containing the current date
{{ $now.format('YYYY-MM-DD') }} to calculate relative dates ("last month", "this week") and calls the get_call_stats tool.
- Interactive Output: Delivers concise, readable business analytics directly to leadership.
-
Results:
- 🎙️ 100% Call Coverage: Automated QA processes 100% of incoming customer calls without human involvement.
- 📊 Instant Leadership Insights: Management queries call sentiment and issue breakdowns via chat in seconds.
- 🚨 Early Complaint Detection: Negative sentiment trends (e.g., delivery delays) are spotted and addressed immediately.
-
Tech Stack: n8n (Schedule Trigger, Chat Trigger, Subworkflows), AssemblyAI API (Speech-to-Text), OpenAI / OpenRouter API, Google Sheets API, n8n Data Tables, JavaScript.
-
Visuals: