We Just Shipped What OpenAI, Google, and Anthropic Have Not. Here Are 6 Updates.

This post is a tight walkthrough of 6 updates we just shipped at Backboard.io that directly target developer pain.

And we’re thrilled to support the Major League Hacking or DEV community, so much so that we’re going to offer an incredible perk. We’re now releasing a free state management on Backboard for life tier (limited to state management features) plus $5 in dev credits (about one free month). No catch. No expiration on the state tier, powered by MLH.

This, combined with our existing BYOK feature means that every major platform’s API is now stateful for free. OpenRouter, Anthropic, OpenAI, Cohere, stateful… free… yup, LFG.

Now, the actual shipping.

The 6 Updates (One-Line Summary)

  1. Adaptive context management: truncate, summarize, reshape, automatically.
  2. Memory tiers: Light vs Pro for cost, latency, accuracy.
  3. New navigation + organizations + docs overhaul: faster to build, fewer dead ends.
  4. Custom memory orchestration per assistant: natural language rules for memory.
  5. Manual memory search via API: inspect and query what your agent stored.
  6. Portable parallel stateful tool calling: the orchestration layer nobody else ships.

If you only read one section, read #6.

1) Adaptive Context Management (Stop Losing the Plot)

Here is the crisis: context windows are finite, and your product is not.

When the thread gets long, most agents degrade quietly. They still answer confidently, but they are missing key facts. Developers respond by doing manual hacks:

  • truncating old messages
  • building their own summarizers
  • re-injecting user profile facts every time
  • praying the important stuff stays in the window

We shipped adaptive context management so your agent can truncate, summarize, and reshape the payload automatically before it hits the model.

That means:

  • less token waste
  • fewer hallucinations caused by missing history
  • better performance on long-running conversations
  • less custom logic in your app

Docs: Backboard docs

Hook for what is next: context control is useless if memory is too expensive or too slow. That is why we shipped tiers.

2) New Memory Versions: Light vs Pro (Cost, Latency, Accuracy)

Most teams hit this moment: you want memory everywhere, then you see the bill or feel the latency.

So we shipped two memory versions:

Memory Light

  • about 1/10th the cost and latency of Pro
  • still message level
  • built for teams that want speed and affordability without giving up persistent behavior

Memory Pro

  • highest accuracy and depth
  • built for use cases where memory precision matters and you do not want “close enough”

You choose what matters in each product stage: ship fast with Light, graduate to Pro where needed.

Docs: Backboard docs

Hook for what is next: a good memory system still fails if teams cannot find the right knobs quickly. So we rebuilt the surface area.

3) New Navigation, Organizations, and a Docs Overhaul (So You Can Actually Ship)

This one came from user feedback, directly.

Organizations

You can now create and manage organizations in the dashboard. Teams can collaborate in a structured workspace without awkward account sharing.

New navigation

We rebuilt navigation so you can get to what matters fast:

  • assistants
  • conversations
  • documents
  • memory
  • keys
  • settings

Documentation overhaul

We made the docs significantly more detailed. More examples, clearer architecture, and fewer “wait, what do I do next?” moments.

Docs: Backboard docs

Hook for what is next: even with great docs, memory still feels like a black box unless you can control the rules. That is the next shipment.

4) Custom Memory Orchestration (Per Assistant, Natural Language)

Most platforms give you memory as a feature.
We are treating memory as a system you can design.

We shipped the ability to define custom memory rules per assistant, using natural language.

When you create an assistant, you can now pass:

  • custom_fact_extraction_prompt (string)

    Custom memory fact extraction prompt

  • custom_update_memory_prompt (string)

    Custom memory update decisions prompt

This is the difference between:

  • “my assistant stores random stuff sometimes”
  • and “my assistant stores exactly what I consider durable, useful signal”

Examples of what this unlocks:

  • a support agent that remembers plan, product, and bugs, but ignores jokes
  • a sales agent that remembers stakeholders, objections, and timeline, not random chatter
  • a recruiting agent that remembers location, comp targets, and availability, and can justify updates

Docs: Backboard docs

Hook for what is next: once you let developers write memory rules, they will ask the obvious question: what did the agent store? So we shipped search.

5) Manual Memory Search via API (Stop Guessing What Your Agent Knows)

If you have ever tried to debug memory, you know the pain:

  • “why is it bringing that up?”
  • “why did it forget that?”
  • “did it store the wrong fact?”

We shipped the ability to manually search memory via the API.

This is useful for:

  • debugging and QA
  • internal tooling and admin dashboards
  • user-facing “what I remember about you” experiences
  • compliance workflows where you need to inspect stored data

In other words: memory becomes queryable, not mystical.

Docs: Backboard docs

Hook for what is next: memory is only half the battle. The other half is orchestration, tool calling, and state. This is where most agents break.

6) Portable Parallel Stateful Tool Calling (The Thing Big Providers Still Do Not Offer)

This is the upgrade that changes what “agent” even means.

As of right now, no major AI provider offers portable, parallel, stateful tool calling as a first-class capability.

We do.

Here is what that actually means, in plain terms.

Parallel

Your assistant can request multiple tool calls at the same time, each with a unique tool_call_id.

If the agent needs to:

  • query a CRM
  • pull docs
  • check a billing system
  • run a calculation

It does not have to do those serially. It can do them concurrently.

Stateful

The assistant keeps the chain of reasoning intact across:

  • tool calls
  • multiple rounds
  • parallel branches

That state does not live in your app code. You are not rebuilding workflow state machines in your backend.

Portable

That state is not trapped inside one provider’s ecosystem.
It travels with the assistant across environments and model choices.

Loop until COMPLETED

The assistant can chain tool calls across rounds and keep going until:

  • status == COMPLETED

It can do multi-step work without you stitching together glue code and polling loops.

This is the difference between:

  • “a chat that can call one tool”
  • and “a system that can actually execute a workflow”

Docs: Backboard docs

Hook for what is next: if you want a fast way to try this without over-committing, we made the on-ramp free.

Free State Management for Life (Powered by MLH and DEV)

We partnered with Major League Hacking and DEV because builders need a real environment to ship in, not a 7-day trial that ends mid-project.

Through the partnership, participants get:

  • Free state management on Backboard for life (limited to state management features)
  • $5 in dev credits (roughly one free month on the full platform)

If you are building at hackathons, hack weeks, or DEV challenges, this is meant to remove friction so you can focus on shipping.

Start here: Backboard.io

Docs here: Backboard docs

Why This Matters (If You Are Building Under Pressure)

If you are in an “information crisis” building AI products, it is usually not because you cannot prompt.
It is because you are drowning in:

  • context limits
  • memory ambiguity
  • orchestration glue
  • tool call complexity
  • state bugs

These six shipments are us taking that burden off your plate.

If you want help picking the right memory tier, designing orchestration prompts, or validating an agent workflow, build something small and send it to us. We are optimizing for builders who ship.

Backboard.io

Docs

I Replaced Zapier with n8n for 12 Clients — Here’s What Actually Happened

I moved 12 small business clients from Zapier to self-hosted n8n in 2025. Total savings: $47,000/year. But it wasn’t all sunshine — here’s the honest breakdown of what worked, what broke, and what I’d do differently.

Why I Even Considered the Switch

One of my clients — a real estate agency with 8 agents — was paying $588/month for Zapier. Their workflows? Lead capture from WhatsApp, CRM sync, appointment reminders, and weekly reports. Nothing exotic.

When I mapped their actual usage: 12 workflows, ~3,000 tasks/month. On n8n self-hosted? That’s $0 in licensing (they already had a VPS at $20/month).

The math was too obvious to ignore.

The Migration: 3 Patterns That Kept Repeating

After migrating 12 clients across industries (real estate, clinics, e-commerce, law firms), I noticed three patterns:

Pattern 1: The “Simple” Workflows Were Actually Simple

About 60% of workflows were straightforward: webhook trigger → transform data → HTTP request to CRM/WhatsApp. These migrated in under 30 minutes each.

// n8n webhook → WhatsApp notification (simplified)
{
  "nodes": [
    {
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "parameters": {
        "path": "new-lead",
        "httpMethod": "POST"
      }
    },
    {
      "name": "Send WhatsApp",
      "type": "n8n-nodes-base.httpRequest",
      "parameters": {
        "url": "https://waha-api.example.com/api/sendText",
        "method": "POST",
        "body": {
          "chatId": "={{$json.phone}}@c.us",
          "text": "New lead: {{$json.name}} - {{$json.email}}"
        }
      }
    }
  ]
}

Pattern 2: Zapier Multi-Step Workflows Became Single n8n Workflows

In Zapier, complex logic requires multiple Zaps chained together (or expensive Paths). In n8n, one workflow handles everything with IF/Switch nodes.

Real example — lead routing:

  • Lead comes in from form
  • IF budget > ₪10K → assign to senior agent + send premium template
  • ELSE IF returning customer → assign to their previous agent
  • ELSE → round-robin assignment + standard template
  • ALL paths → log to Google Sheets + notify on WhatsApp

In Zapier: 3 Zaps + Paths add-on ($73/month extra). In n8n: 1 workflow, 0 extra cost.

Pattern 3: Error Handling is Where n8n Destroys Zapier

Zapier’s error handling is binary: retry or stop. n8n gives you:

  • Error triggers that catch failures and route them
  • Retry with backoff on specific nodes
  • Dead letter queues for manual review
  • Custom error notifications via WhatsApp/email
// n8n error workflow — notify on WhatsApp when any workflow fails
{
  "name": "Error Handler",
  "type": "n8n-nodes-base.errorTrigger",
  "position": [250, 300]
}
// → Format error message → Send WhatsApp alert to admin

This alone saved one client 4 hours/week of manually checking for failed automations.

The Honest Downsides

I’d be lying if I said the migration was painless. Here’s what actually went wrong:

1. Initial Setup Complexity

Zapier: sign up, connect apps, done. n8n self-hosted: VPS setup, Docker, SSL, reverse proxy, backups. For non-technical users, this is a dealbreaker.

My solution: I handle all infrastructure. Client never touches a terminal. They get a URL, log in, and see their workflows.

2. Some Integrations Don’t Exist

Zapier has 6,000+ integrations. n8n has ~400 built-in + community nodes. For 3 clients, I needed custom HTTP nodes for Israeli CRMs (Priority, Rivhit) that had native Zapier integrations.

Time cost: ~2 hours per custom integration. But once built, reusable across all clients.

3. Updates Require Management

Zapier auto-updates. Self-hosted n8n needs manual updates (or a cron job). I’ve set up automated updates with health checks — but it’s still my responsibility, not Zapier’s.

The Numbers After 12 Months

Metric Zapier (before) n8n (after)
Monthly cost (all 12 clients) $4,200 $240 (VPS hosting)
Annual savings — $47,520
Avg. workflows per client 8 14 (+75%)
Task failures/month ~45 ~12
Recovery time (avg) 4 hours 15 minutes
Custom integrations 0 (limited to catalog) 11

The 75% increase in workflows happened because clients started asking “can you also automate X?” when the marginal cost was zero. On Zapier, every new workflow meant higher billing.

Who Should NOT Switch to n8n

Let me be clear: n8n isn’t for everyone.

Stay on Zapier if:

  • You’re non-technical and don’t have someone to manage infrastructure
  • You use 30+ different SaaS tools (Zapier’s integration catalog is unbeatable)
  • Uptime SLA is critical and you can’t manage your own infrastructure
  • Your budget is under $50/month (Zapier’s free tier might suffice)

Switch to n8n if:

  • You’re spending $200+/month on Zapier/Make
  • You need complex logic (branching, loops, error handling)
  • You work with APIs not in Zapier’s catalog
  • Data privacy matters (self-hosted = your data stays on your servers)
  • You have someone technical to manage it (or hire someone like me)

The Tool I Actually Recommend for Most Israeli SMBs

For my Israeli clients specifically, the sweet spot is usually:

  1. n8n self-hosted for the automation engine ($20/month VPS)
  2. WAHA for WhatsApp API (self-hosted, ~$0 vs Twilio’s per-message pricing)
  3. Supabase for database (free tier covers most SMBs)
  4. Monday/HubSpot for CRM (what the team actually sees)

Total infrastructure cost: $20-40/month vs $500-2,000/month for the equivalent SaaS stack.

What’s your automation stack? Still on Zapier, moved to Make, or went self-hosted? I’m genuinely curious what the cost difference looked like for your setup.

I’m Achiya, an automation consultant based in Israel specializing in WhatsApp bots and business workflow automation. I’ve built 50+ automation systems for Israeli SMBs. If you’re considering the switch, feel free to reach out.

AWS vs Azure vs GCP: A batalha definitiva explicada como se fossem restaurantes

Imagina que você está com fome. Tem dinheiro no bolso e três restaurantes na sua frente. É exatamente assim que as empresas se sentem quando precisam escolher um provedor de nuvem.

🍽️ O restaurante AWS: O buffet gigante

AWS é aquele buffet enorme que tem absolutamente tudo. Sushi, tacos, pasta, comida indiana, sobremesas francesas… e 47 tipos de arroz que você nem sabia que existiam.

Vantagem: Se existe, a AWS provavelmente tem. Com mais de 200 serviços, é o cardápio mais extenso do mercado.

Problema: O cardápio tem 200 páginas. Você precisa de 30 minutos só para entender as categorias. E quando chega a conta… bom, você precisa de outro serviço da AWS só para entender a fatura.

“Quer um banco de dados? Temos RDS, DynamoDB, Aurora, Neptune, DocumentDB, ElastiCache, Keyspaces, Timestream, QLDB, MemoryDB…”

“Eu só queria guardar uns emails.”

Perfeito para: Empresas que precisam de tudo, startups que querem escalar sem limites, e pessoas que curtem ler documentação às 3 da manhã.

🏢 O restaurante Azure: A franquia corporativa

Azure é como ir a um restaurante dentro de um hotel de negócios. Tudo está integrado, o WiFi funciona perfeitamente com seu notebook Windows, e eles já te conhecem porque você usa Office 365.

Vantagem: Se a sua empresa já vive no ecossistema Microsoft (e, sejamos honestos, quem não tem Excel?), o Azure parece chegar em casa. A integração com Active Directory, Teams e Office é simplesmente natural.

Problema: O cardápio muda de nome a cada 6 meses. O que ontem era “Azure AD” hoje é “Microsoft Entra ID”. Você senta, pede algo, e o garçom diz: “Ah, isso agora tem outro nome, mas é a mesma coisa… mais ou menos.”

“Quero o serviço que usei mês passado.”

“Qual era o nome?”

“Não sei, mudaram de novo.”

“De novo.”

Perfeito para: Grandes empresas com infraestrutura Microsoft, governos, e qualquer um que já tenha 47 licenças de Office que não sabe como cancelar.

☕ O restaurante GCP: O café hipster do Vale do Silício

GCP é aquele café moderno onde o barista tem doutorado em ciência de dados, o cardápio está escrito numa lousa minimalista, e o café é genuinamente o melhor que você já tomou.

Vantagem: BigQuery é mágica. Kubernetes nasceu aqui (GKE). Se você trabalha com dados, machine learning ou analytics, é difícil superar o GCP. Além disso, a interface é limpa e elegante — porque, bom, é o Google.

Problema: O cardápio é mais curto. E às vezes, sem aviso prévio, tiram seu prato favorito do menu permanentemente.

“Eu adorava aquele serviço…”

“É, descontinuamos. Mas olha esse outro que faz algo parecido. Por enquanto.”

Perfeito para: Empresas focadas em dados e IA, startups que amam Kubernetes, e pessoas que confiam que o Google não vai cancelar seu serviço favorito (boa sorte com isso).

📊 A comparação honesta

Categoria AWS Azure GCP
Fatia de mercado 👑 #1 (31%) #2 (25%) #3 (11%)
Quantidade de serviços 200+ (precisa de todos?) 200+ (com nomes novos todo mês) Menos, mas potentes
Melhor para Tudo (literalmente) Empresas Microsoft Dados e IA
Interface Funcional (sendo generoso) Decente A mais limpa
Faturamento Precisa de diploma em contabilidade Confuso mas familiar Mais transparente
Certificações As mais procuradas no mercado Crescendo rápido Menos conhecidas mas valiosas
Comunidade Enorme Grande e corporativa Menor mas técnica

🤔 Qual escolher?

A resposta honesta: depende.

  • “Minha empresa usa Microsoft pra tudo” → Azure, sem pensar
  • “Preciso da maior flexibilidade e variedade de serviços” → AWS
  • “Trabalho com dados, IA e quero simplicidade” → GCP
  • “Quero a certificação mais reconhecida” → AWS (CLF-C02 é o ponto de partida perfeito)
  • “Quero aprender as três” → Comece por uma, entenda os conceitos, e vai ver que 80% se traduz entre as três

A verdade que ninguém conta

As três são excelentes. A “guerra” entre nuvens é mais marketing do que realidade. A maioria das grandes empresas usa multi-cloud — um pouco de cada uma conforme a necessidade.

O mais importante não é qual nuvem você escolhe, mas sim entender os conceitos fundamentais: redes, segurança, armazenamento, computação. Esses são universais.

Estudando para alguma certificação cloud? Estou construindo uma plataforma gratuita com questões de prática para AWS, Azure e GCP em português, inglês, coreano e espanhol. Se tiver interesse, deixa um comentário.

Qual é a sua nuvem favorita e por quê? Comenta aí! 👇

ChanSpy, Whisper, and Barge: The Agent Coaching Features Nobody Uses Right

VICIdial has three real-time coaching modes built in: silent monitor, whisper, and barge-in. They’re free. They work on every VICIdial installation. And most call centers use them for maybe 30 minutes a week, if that. Then managers wonder why agent performance stays flat quarter after quarter.

The technology isn’t the hard part. Building a coaching process that supervisors actually follow — that’s the hard part.

How ChanSpy Works Under the Hood

Every time a supervisor clicks “Monitor” in VICIdial’s real-time report, a specific chain fires inside Asterisk. VICIdial’s PHP layer originates a new channel to the supervisor’s phone, then bridges it into Asterisk’s ChanSpy() application targeting the agent’s active channel.

The three modes differ in their ChanSpy flags:

Silent Monitor: ChanSpy(SIP/agent_phone,qw)   # hear both sides, nobody hears you
Whisper:        ChanSpy(SIP/agent_phone,qwW)   # your audio goes to agent only
Barge-In:       ChanSpy(SIP/agent_phone,qwB)   # 3-way conference, all parties hear all parties

The q flag suppresses the connection beep. The capital W flag does private whisper — supervisor audio goes to the agent’s earpiece only. Important gotcha: in Asterisk 16+, lowercase w and uppercase W behave differently. Using the wrong one can leak supervisor audio to the caller, which is a very bad surprise for everyone.

The audio paths are clever. For whisper, Asterisk maintains separate audio streams for each leg of a bridged call and injects the supervisor’s audio into only the agent’s receive path. The caller’s bridge leg never sees it. For barge-in, Asterisk tears down the two-party bridge and rebuilds it as a three-way ConfBridge — which is why barge sometimes causes a brief audio interruption.

Permissions

The supervisor account needs User Level 7+ (Manager), Agent API Access enabled, Monitor Allowed set to Y, and Barge-In Allowed set to Y. These are separate permissions — a supervisor can have monitor access without barge access.

Verify permissions are set correctly:

SELECT user, full_name, user_level, monitor_allowed, barge_allowed
FROM vicidial_users
WHERE user_level >= 7
ORDER BY user_level DESC;

The supervisor also needs a registered phone (hardware SIP phone, softphone, or WebRTC) on the same Asterisk server as the agents being monitored. Cross-server monitoring works through IAX trunks but adds an audio hop that degrades quality and adds latency.

For pjsip endpoints, the supervisor’s phone config should include:

[supervisor1]
type=endpoint
direct_media=no    ; CRITICAL for monitoring
rtp_timeout=300

The Five Audio Problems You’ll Hit

Problem 1: The Beep. Agent hears a beep when monitoring starts, immediately knows they’re being watched. The q flag should prevent this, but custom dialplan entries in extensions_custom.conf sometimes invoke ChanSpy without it. Check with: asterisk -rx "dialplan show" | grep -i chanspy

Problem 2: One-Way Audio. Supervisor hears the agent but not the caller (or vice versa). Almost always a NAT issue — the ChanSpy channel’s RTP stream is going to the wrong IP. Critical fix: set direct_media=no on the supervisor’s PJSIP endpoint. If direct media is enabled, Asterisk routes RTP directly between endpoints, bypassing the server, and ChanSpy can’t tap a stream that doesn’t flow through Asterisk.

Problem 3: Echo. Supervisor hears their own voice doubled back. Usually a cheap headset with bad acoustic echo cancellation. Also check that the supervisor’s phone uses RFC2833 for DTMF, not SIP INFO — SIP INFO processing causes audio artifacts during ChanSpy sessions.

Problem 4: 2-5 Second Latency. In a cluster, the audio goes Caller > Carrier > Server B > IAX Trunk > Server A > Supervisor Phone. Each hop adds latency. Fix: keep supervisors on the same LAN as the Asterisk server handling their agents’ calls. For the supervisor’s softphone, set a shorter jitter buffer (20-40ms) — you want low latency over perfect audio when monitoring.

Problem 5: Monitoring Drops After 60 Seconds. Asterisk’s RTP timeout kills inactive streams after 60 seconds by default. Set rtptimeout=300 in your SIP configuration and reload with asterisk -rx "sip reload".

The Coaching Process

Daily Monitoring Schedule

For a team of 20 agents with 2 supervisors, allocate 3 hours per supervisor per day for monitoring. Sounds like a lot. It’s the minimum for coaching to actually move performance metrics. Thirty minutes a week doesn’t change anything.

Structure it:

Time Activity Mode
9:00-9:30 Bottom 3 agents by yesterday’s conversion rate Silent
9:30-10:00 New agents (under 30 days) Whisper ready
10:00-10:30 Targeted follow-up from last coaching session Silent
10:30-11:00 Random agents for QA scoring Silent
1:00-1:30 Afternoon round on bottom 3 again Silent/Whisper
3:00-3:30 Top performers — identify techniques to teach others Silent

The Whisper Rules

Whisper coaching is an art form. Done well, it saves calls. Done badly, it freezes the agent while the caller wonders why they went silent.

Rule 1: Five words or fewer. The agent is already in a live conversation. They cannot process a paragraph from you. Good: “Ask about the timeline.” “Price objection, use ROI.” “Slow down, you’re rushing.” Bad: “So what you want to do here is transition into the pricing discussion by first asking about their current solution costs…”

Rule 2: Timing over content. Whisper during natural pauses — while the caller is talking, during silence, after a question. Never while the agent is mid-sentence. They’ll stumble and the caller will hear it.

Rule 3: Pre-arrange signals. Before the first session, tell the agent: “If I say ‘take a breath,’ pause 2 seconds and let the caller talk. If I say ‘close,’ ask for the sale right now.” Pre-agreed short codes are 10x more effective than improvised instructions.

Rule 4: Cap at 15 minutes. After 15 minutes of whisper coaching, the agent’s cognitive load is maxed. They stop hearing you. End the session, send a message with 2-3 things they did well and one thing to work on.

When to Barge

Almost never. Three legitimate reasons: (1) compliance emergency — the agent made a statement that could create legal liability, (2) agent is completely lost — not struggling, lost, can’t form sentences, caller getting hostile, (3) high-value save — the caller is about to hang up on a $50K deal and your authority is the only play.

If you’re barging more than once per week across a 20-agent team, something else is broken — training, scripting, or hiring.

Escalation During a Session

Most people don’t know this: you can escalate modes during an active session. Start in silent monitor, decide the agent needs help, click the agent row in the real-time report again and select Whisper. VICIdial modifies the ChanSpy flags on the active channel. There’s a 1-2 second audio glitch during the transition, but the session continues without hanging up and redialing.

Measuring Impact

Without measurement, coaching is hope-based management. Pull a before-and-after comparison for each coached agent: total calls, average talk time, and conversion rate in the two weeks before coaching versus two weeks after.

The expected pattern: talk time goes up by 10-20 seconds (the agent is now handling objections instead of folding), conversion rate goes up meaningfully. Across real deployments, 40-65% conversion improvement is typical for underperforming agents who receive targeted whisper coaching.

At the team level, track weekly conversion rate and overlay coaching session dates. After 4-6 weeks of consistent daily coaching, you should see a clear upward trend. If you don’t, either the coaching content needs work or agents aren’t retaining the training between sessions.

Automated Monitoring Alerts

Instead of randomly picking agents to monitor, let the data tell you who needs attention right now:

SELECT user, COUNT(*) AS calls,
    ROUND(SUM(CASE WHEN status = 'SALE' THEN 1 ELSE 0 END) /
          COUNT(*) * 100, 2) AS conversion
FROM vicidial_log
WHERE call_date >= DATE_SUB(NOW(), INTERVAL 4 HOUR)
    AND campaign_id = 'OUTBOUND_B2B'
    AND length_in_sec > 0
GROUP BY user
HAVING calls >= 15 AND conversion < 3.0
ORDER BY conversion ASC;

Run this via cron every 30 minutes during business hours. The output is your coaching priority list — agents ranked by who’s struggling most. Now every monitoring session is targeted, not random.

The Culture Problem

The hardest part of whisper coaching isn’t configuring ChanSpy. It’s getting supervisors to actually do it. Every day. Most call center supervisors were promoted from the agent floor because they were good on the phone. That doesn’t make them good coaches. Many feel awkward listening to live calls and default to checking email instead of putting on a headset.

Three fixes: (1) block monitoring time as a non-negotiable calendar appointment — if they have meetings during coaching time, the meetings lose, (2) tie supervisor bonuses to bottom-quartile agent improvement, not team averages — if the bonus is based on the team average, they’ll rely on top performers to carry the number, (3) coach the coaches — have the operations manager listen to coaching sessions monthly to assess whether supervisors are giving actionable feedback or just saying “do better.”

VICIdial gives you every tool you need. Silent monitor, whisper, barge-in — all built in, all free. The investment is time and discipline. If you’re running a team of 20+ agents, try this: set up your supervisor’s phone on the same Asterisk server as your agents, verify the permissions are configured correctly, and block 3 hours on your supervisor’s calendar tomorrow for targeted monitoring. Start with your three lowest-converting agents in silent mode. Move to whisper only when you hear a specific fixable behavior. Run this for two weeks and compare your team’s conversion rate before and after.

Call centers that make that investment convert 2-3x better than those that don’t. The agents who get coached stay longer, perform better, and cost less. The ones who don’t either plateau or leave.

For the complete guide with API monitoring commands, Asterisk CLI debugging techniques, SQL queries for tracking coaching ROI, and Grafana integration for coaching dashboards, see the full guide at ViciStack.