#i have a conversational ai configured with transfer to number tool. i want to transfer to specific
1 messages · Page 1 of 1 (latest)
Short answer: Yes—route by schedule using either (a) multiple Transfer-to-Human rules with clear, time-based conditions, plus dynamic variables for timezone, or (b) a Workflow that branches on business-hours conditions to different Transfer-to-Number nodes.
How to set it up
- In your agent, add the Transfer to Human tool and create one rule per destination. For each rule, set:
- Destination: phone in E.164 (+15551234567) or SIP URI.
- Transfer type: Conference (default) or SIP REFER.
- Condition: natural‑language criteria like “If local time is Mon–Fri 09:00–17:00 in America/New_York, route to Sales; otherwise route to After‑Hours.” The LLM evaluates these conditions across the rules. (elevenlabs.io)
- Provide a precise tool description that tells the LLM exactly how to choose between destinations (e.g., which days/hours map to which number). This reduces ambiguity and misroutes. (elevenlabs.io)
- Make time unambiguous with dynamic variables:
- system__time and system__timezone are available to the agent; set system__timezone (e.g., America/New_York) at call start so “current time” is interpreted correctly. You can inject dynamic variables in prompts and tool calls. (elevenlabs.io)
- If you receive calls via Twilio, return dynamic variables (including timezone) from your inbound webhook so every call carries the right local time context. (elevenlabs.io)
Alternative (visual) routing
- Use Agent Workflows: add an LLM Condition edge that checks your business‑hours rule, then branch to separate “Transfer to number” nodes (e.g., business‑hours vs after‑hours). This keeps rules mutually exclusive and easier to debug. (elevenlabs.io)
Common reasons it “messes up” and how to fix
- Ambiguous or overlapping conditions: Make rules mutually exclusive (explicit days AND times per rule) and reinforce in the tool description. (elevenlabs.io)
- Wrong timezone: Set system__timezone via dynamic variables (webhook/SDK) so the LLM evaluates the correct local time. (elevenlabs.io)
- Testing in chat: Transfer-to-number only works on phone calls, not the chat widget. (elevenlabs.io)
- Using Twilio “register call”: Transfers are disabled in this integration path; import numbers or use SIP instead if you need transfers. (elevenlabs.io)
- Number format: Ensure E.164 for phone numbers and valid SIP URIs; otherwise transfers can fail. (elevenlabs.io)
Where to find the exact fields and API examples
- Transfer to Human tool (rules, conditions, API examples).
i have after hours, weekday number, weekend number give me sample prompt pls. also i am not using sdk. i am using elevenlabs conversational ai ui
Here’s a minimal, copy‑pasteable setup that works in the ElevenLabs Conversational AI UI with the Transfer to Human tool. It routes by weekday/weekend/after‑hours and tells the model exactly how to fill the tool’s parameters.
- Tool description (paste into the Transfer to Human tool’s Description)
- Purpose: Use transfer_to_number only to route calls to the correct human line based on schedule.
- Time/zone: Assume America/New_York. Determine the current local day/time and select one rule below.
- Rules:
- Mon–Fri, 09:00–17:00 local time → use the Weekday number.
- Sat–Sun, any time → use the Weekend number.
- Any other time → use the After‑hours number.
- When calling the tool, set:
- transfer_number: the exact destination from the matching rule.
- client_message: brief confirmation to the caller (e.g., “I’ll connect you to our weekday support line now.”).
- agent_message: 1–2 sentences summarizing caller’s issue for the human.
- Do not guess numbers; only use configured transfer destinations. Keep talking until the transfer connects, then exit.
Reference: how Transfer to Human works and the fields the tool expects (transfer_number, client_message, agent_message), and that decisions are driven by your Description + per‑rule Conditions. (elevenlabs.io)
- Transfer rules (add three rules under the tool)
- Rule 1 (Weekday line)
- Number type: Phone
- Phone number: +1XXXXXXXXXX (E.164)
- Transfer type: Conference (default)
- Condition: “If it’s Monday through Friday between 9:00 and 17:00 America/New_York, transfer to the weekday support line.”
- Rule 2 (Weekend line)
- Number type: Phone
- Phone number: +1YYYYYYYYYY (E.164)
- Transfer type: Conference
- Condition: “If it’s Saturday or Sunday in America/New_York, transfer to the weekend support line.”
- Rule 3 (After‑hours line)
- Number type: Phone
- Phone number: +1ZZZZZZZZZZ (E.164)
- Transfer type: Conference
- Condition: “If it is outside Monday–Friday 9:00–17:00 America/New_York, transfer to the after‑hours line.”
Notes and gotchas
- Phone numbers must be in E.164 format (e.g., +12125551234). (elevenlabs.io)
- If you prefer not to hardcode a timezone, you can pass one via dynamic variables and reference it in your Description (e.g., “Assume {{system__timezone}}; current time is {{system__time}}”). System dynamic variables include system__time and system__timezone. (elevenlabs.io)
- This tool works for phone calls (not chat). (elevenlabs.io)
Where this lives in the UI
- Agent → Tools → Add “Transfer to Human”, then paste the Description above and add the three rules with their Conditions and numbers. (elevenlabs.io)
If you need SIP or non‑Twilio routing, the same rules apply;
there is no after hours line
You’re right—there isn’t a dedicated “after-hours line” field in the UI. Transfers are configured via the Transfer to Human tool using multiple transfer rules, each with a natural‑language Condition. If you don’t have an after‑hours number, simply don’t create a rule for after hours; instead, state the expected fallback in the tool description or your agent’s system prompt so the LLM knows not to call the transfer tool outside business hours. (elevenlabs.io)
Implementation (UI, no SDK):
- Add Transfer to Human tool.
- Create two rules:
- Weekday number → Condition: “Only on Monday–Friday, 09:00–17:00 America/New_York.”
- Weekend number → Condition: “Only on Saturday–Sunday.”
- In the tool description or system prompt, include: “Current time: {{system__time}}. Outside Mon–Fri 09:00–17:00 America/New_York, do not transfer; inform the caller there’s no after‑hours line and provide next open hours.” The {{system__time}} (and optional {{system__timezone}} if you want to fix a timezone like America/New_York) dynamic variables are supported in prompts/tool parameters. (elevenlabs.io)
Docs:
- Transfer to Human (rules and Conditions). (elevenlabs.io)
- Dynamic variables ({{system__time}}, {{system__timezone}} usage in prompts/tools). (elevenlabs.io)
Sources:
Transfer to human | ElevenLabs Documentation
Dynamic variables | ElevenLabs Documentation
Transfer to human | ElevenLabs Documentation
Dynamic variables | ElevenLabs Documentation
what llm model do you recommend ?
Short answer:
- For reliable tool use (e.g., transfers), start with OpenAI GPT-4o or GPT-4o Mini—these are recommended for agent-to-agent transfers due to better tool calling. (elevenlabs.io)
- If you’re bringing your own model via Together AI, ElevenLabs recommends at least meta-llama/Meta-Llama-3.1-70B-Instruct-Turbo. Use models that support tool use/function calling. (elevenlabs.io)
- If lowest latency and cost are your top priorities, ElevenLabs-hosted LLMs are available and optimized for ultra‑low latency and reduced reasoning cost. (help.elevenlabs.io)
- More generally, pick based on task needs: higher-complexity → GPT‑4 series / Claude Sonnet / Gemini 2.5; lowest latency for realtime voice → Gemini Flash / Claude Haiku / GPT‑4o‑mini. (elevenlabs.io)
References:
- Models overview and selection guidance. (elevenlabs.io)
- Agent-to-agent transfer model recommendation (tool-calling). (elevenlabs.io)
- Together AI custom LLM recommendation. (elevenlabs.io)
- ElevenLabs-hosted LLMs (ultra-low latency/reduced reasoning cost). (help.elevenlabs.io)
Sources:
Agent transfer | ElevenLabs Documentation
Together AI | ElevenLabs Documentation
What can I create with ElevenLabs Agents (formerly Conversational AI) – ElevenLabs
Models | ElevenLabs Documentation
Models | ElevenLabs Documentation
Agent transfer | ElevenLabs Documentation
Together AI | ElevenLabs Documentation
What can I create with ElevenLabs Agents (formerly Conversational AI) – ElevenLabs
i chose gpt 5.2 but seems the latency incrweased why is that ?
Short answer: switching to a third‑party LLM can add noticeable end‑to‑end latency in ElevenLabs Agents.
What the docs say
- ElevenLabs Agents lets you pick the LLM. ElevenLabs‑hosted LLMs are explicitly optimized for ultra‑low latency; you can also pick leading models from providers like OpenAI/Anthropic/Google. Choosing a non‑hosted (external) LLM typically won’t be as low‑latency as the hosted option. (help.elevenlabs.io)
- If your agent’s voice uses Eleven v3 for TTS, note that v3 has higher latency and is not recommended for real‑time/conversational use. Prefer Turbo v2.5 or Flash v2.5 for low latency. (help.elevenlabs.io)
- Voices with Live Moderation enabled can introduce extra latency. (help.elevenlabs.io)
Recommended next steps (per docs)
- In the agent’s LLM setting, switch to an ElevenLabs‑hosted LLM for the lowest latency. (help.elevenlabs.io)
- Use a low‑latency TTS model (Flash v2.5 or Turbo v2.5) rather than v3. (help.elevenlabs.io)
- If you’re using a shared Library voice with Live Moderation, try a voice without moderation to avoid added delay. (help.elevenlabs.io)
If you still see slow responses after these changes, the general latency article has additional guidance (note: an older optimize_streaming_latency flag is deprecated). (help.elevenlabs.io)
Sources:
What can I create with ElevenAgents? – ElevenLabs
What is Eleven v3? – ElevenLabs
What is Live Moderation? – ElevenLabs
What can I create with ElevenAgents? – ElevenLabs
Do you offer an AI model for conversational purposes or for chatbots? – ElevenLabs
What is Live Moderation? – ElevenLabs
Can I reduce API latency? – ElevenLabs
can you order them by latency