DEV Community

mattewens
mattewens

Posted on

Building the multi-tenant plumbing every voice-agent tutorial skips

Every voice-agent tutorial has the same arc.

You wire a browser mic into an LLM, add a pleasant synthetic voice, ask it to book an appointment, and declare victory somewhere around minute 37.

That's fine as a demo. It is not a product.

The gap shows up the first time you try to sell it to an actual customer. They do not want to open your web app and click a microphone button. They want a phone number. Their customers want to call it. You need to know which tenant owns that number, which assistant should answer, where the transcript goes, how long the call lasted, whether that usage should be billed, and what happens when someone texts STOP because the carrier rules are not optional.

That is the boring plumbing every tutorial skips.

And, annoyingly, it is most of the work.

The demo is easy. The tenant boundary is not.

A single-tenant voice agent can get away with a pile of environment variables:


bash
TWILIO_NUMBER=+15551234567
VAPI_ASSISTANT_ID=asst_abc123
STRIPE_PRICE_ID=price_xyz
Enter fullscreen mode Exit fullscreen mode

Top comments (0)