Bland voice agent · Quality One Wireless + Once Upon a Coconut
One AI voice line fronts ~20 wireless brands and Once Upon a Coconut. It answers product questions from a knowledge base, opens support tickets when a human is needed, and quietly turns the questions it couldn't answer into tomorrow's answers.
01 · The big picture
Our own admin — OUAC's or Quality One's, by context — is the single source of truth. Approved answers sync down into Bland. Bland is just the voice arm: questions it can't answer join the ones arriving by email, DM, contact form, and from our CSR & QA teams, all flowing up into one queue. We answer once, approve, and it syncs down. The line never goes stale.
02 · Inside one call
The same flow serves every brand. The dialed number tells the agent which brand it is and which knowledge base to use — then it either answers, or takes down a callback and opens a ticket.
03 · One system, every brand
Once Upon a Coconut is one brand with one knowledge base. Quality One is ~19 brands sharing one phone system: each brand gets its own knowledge base, composed from a shared layer (shipping, policies) plus brand-specific answers — brand wins on any conflict. The dialed number picks which one.
Once Upon a Coconut
Single brand · one KB · the simplest case.
Quality One Wireless
~19 brands · one shared layer + per-brand answers → a composed KB each.
04 · Inside the admin
Nothing reaches the phone line unreviewed. A question is triaged, an answer is drafted, a person approves it — and only then does it sync down. Edit a live answer and it goes back through review, so what customers hear is always something we signed off on.
In plain terms
It answers, or it escalates — nothing falls through. A caller with a product question gets a real answer, spoken, drawn only from approved knowledge (it will never make up a price or a fact). A caller with a problem gets their details taken and a ticket opened for a human callback.
It improves itself — from every channel, not just the phone. Bland is the voice arm: every question it couldn't answer is surfaced to our team — Quality One's or OUAC's, depending on context — alongside the questions coming in by email, DM, and contact form. We write the answer once, approve it, and it's live on the phone line the next day — across every brand it applies to.
One build covers all of it. Once Upon a Coconut proves the machine; Quality One is the same machine with the brand dial turned up — no separate system to maintain.
For the Bland team · how it's wired
kb_id by dialed number.topic_key; per-brand excludes allowed). Bland only ever sees one flat KB per brand.condition (transcript-observable, never variable-introspecting) and its outgoing edge label both fire on the same turn. Route/Webhook nodes advance deterministically.GET /v1/knowledge/gaps) merge with every other intake channel — email, DMs, contact forms, CSR, QA — into one queue, get triaged (answer · route-to-tool · dismiss · merge), and are answered in the admin, into the shared or brand KB — never inline in Bland, or the next sync overwrites it.