phone_setVoiceAi
Set up the shop's own voice AI agent to answer calls: provider (elevenlabs or grok) and the agent's SIP address. Doing Work answers each call, says it is an AI assistant and that the call is transcribed, then connects the agent with a token for this call only (SIP header X-DW-Token). The agent's tools are at tools_base. For ElevenLabs, give the post-call webhook secret so call summaries and spoken stops come back. share_job_status false hides job status from callers. booking_mode (off by default): open_slots lets the agent book a caller into a time the shop marked open with schedule.addOpenSlots (book_open_slots true is the same); live lets it book a visit straight onto a worker's calendar, only for job types set with phone.saveVoiceJobType, only for ZIP codes in service_zips, at least lead_minutes ahead (default 120), not the same day after same_day_cutoff (default 15:00) and at most 14 days out. The agent says no price except a fixed fee the shop set on a job type (phone.saveVoiceJobType). on_call_phone is where handoff sends emergencies. live_tools has the tool schemas to give the agent; otherwise it only takes a preferred time for the office. Then set the route to voice_ai with phone.setRoute. Owner only.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| shop_id | Yes | ||
| sip_uri | Yes | ||
| provider | Yes | ||
| booking_mode | No | ||
| lead_minutes | No | ||
| service_zips | No | ||
| on_call_phone | No | ||
| webhook_secret | No | ||
| book_open_slots | No | ||
| same_day_cutoff | No | ||
| share_job_status | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||