Curtis — the Eventective and DJEP questions above are the right
ones. Two things nobody’s raised yet that will decide whether this
works or embarrasses you in front of a bride.
Texting is not a Twilio switch
You described SMS as the primary channel. In the US, sending
business texts to consumers requires A2P 10DLC registration — brand
registration plus campaign registration with the carriers. It takes
days to a few weeks, costs a small monthly fee, and unregistered
traffic gets filtered silently. Not blocked with an error.
Filtered, so you think it sent and the lead never saw it.
Your campaign use case here is conversational, and carriers scrutinise
AI-driven messaging. Worth starting registration now in parallel with
the build rather than discovering it at launch.
Practical route: build email-first, add SMS as a second channel once
registration clears. Same agent, same memory, different transport.
The pricing logic is the actual risk
Everyone’s treating “provides the appropriate pricing” as one bullet.
It’s the part that costs you money if it goes wrong.
Wedding DJ pricing usually has conditional structure — ceremony plus
reception versus reception only, hours, travel beyond a radius,
uplighting, a second setup for a different location, peak Saturday
versus a Tuesday in February. An LLM asked to “work out the price”
will interpolate confidently and quote something you never agreed to.
The fix is to not let it. Pricing sits in a lookup table or a
deterministic function. The AI collects the variables — venue,
distance, hours, ceremony yes or no — passes them to the calculation,
and reads back the result. It never calculates.
Same for availability. If the agent implies a date is free without
checking DJEP, you find out when two couples believe they’ve booked
the same Saturday.
Two more worth building in from the start
A hard handoff on booking intent. The moment a lead says anything
resembling “how do I pay” or “send me a contract”, the agent stops and
notifies you. Deposits and contracts are not places for an agent to
improvise.
A conversation cap. If a thread goes past six or seven exchanges
without reaching Calendly, hand it to a human. Long AI conversations
degrade, and the leads that ask the most questions are usually the
ones worth talking to yourself.
On the build itself — the memory piece you described is
straightforward, a state store keyed to the lead with full
conversation history, so a reply three weeks later continues rather
than restarts. We’ve built exactly that pattern, including the part
that matters here: routing anything the system is uncertain about to
a human rather than guessing.
I’d scope this as email-first with pricing as a deterministic lookup,
then layer SMS once 10DLC clears. Happy to write that up as a fixed
scope so you can compare it against the others properly.
Conner James
Parix.ai