Dashboard
Call Volume
Recent Activity
Call Log
| Caller | Time | Duration | Outcome | Summary |
|---|---|---|---|---|
|
MJ
Marcus Johnson
+1 (813) 441-2290
|
9:32 AM | Booked |
Scheduled discovery call Thu 2pm | |
|
SL
Sarah Lin
+1 (404) 555-7832
|
9:18 AM | Took message, pricing inquiry | ||
|
?
Unknown Caller
+1 (727) 892-3401
|
8:47 AM | Missed |
Recovery text sent automatically | |
|
DT
David Torres
+1 (305) 210-4441
|
8:04 AM | Booked |
Booked onboarding — next Monday 10am |
Call Log
| Caller | Time | Duration | Outcome | Summary |
|---|---|---|---|---|
| Loading… | ||||
Contacts
Upcoming Calls
SMS Log
Your AI assistant on every channel
Dottie is one brain that answers your phone, texts, emails, and dashboard chat. She runs on a Cloudflare Worker and reaches the world through Vapi (voice), Twilio (caller texts), Poke (your alerts), Bland.ai (outbound AI calls), and a stack of action tools (Linear, Notion, AgentMail, Zernio, Calendar).
How to reach Dottie
What happens when someone calls
In English: Twilio hands the call to Vapi. Vapi sends what the caller said through Deepgram (transcription), passes the text to Claude (the brain), gets a response, plays it back through ElevenLabs. When Claude wants to DO something — book a meeting, file a ticket, schedule a wake-up — Vapi pings the worker, the worker fires the tool, and replies back through the chain.
Why Poke isn't replacing Twilio (and why that's correct)
The simple version: Poke is a personal account — only Drey can receive Poke messages because Poke is logged in as Drey. Twilio is a phone number — anyone can text or be texted, like a real cell line.
So when Dottie wants to say something to you, she goes through Poke (no auth-token rotation, no carrier hassles). When she needs to text someone you've never met — say, the prospect who just called and asked for a link — she has to use Twilio (or Telnyx if/when you switch).
Today's status: all 6 of Dottie's "ping Drey" sites already use Poke (took out Twilio there last night). The 3 caller-facing texts still use Twilio because there's no other option for arbitrary phone numbers.
The 22 things Dottie can do
The stack — every external service Dottie uses
The webhook hub (optional)
Dottie has an inbound endpoint at https://dottie-webhook.dreytools.com/webhook/inbound/<source>. If you want Stripe (failed payments), GitHub (CI failures), Sentry (crashes), Uptime Kuma (site down), or anything else to send you alerts — point their webhook URL at this endpoint with a secret query string, set the matching WEBHOOK_SECRET_<SOURCE> in wrangler, and Dottie forwards a 600-char summary to your Poke inbox.
It's optional and idle until you actually configure a source. Each source gets its own secret so a Stripe leak doesn't compromise your GitHub flow.