# Add a Phone Number Connect phone numbers to your AI voice agents for inbound and outbound calls ## Overview To enable your AI voice agents to make and receive phone calls, you need to connect a phone number. urvo supports two methods for adding phone numbers: - **Twilio Integration:** Import existing Twilio phone numbers for quick setup with full inbound and outbound support. Easy setup with Twilio credentials, verified caller IDs for outbound-only. - **SIP Trunking:** Connect your existing telephony infrastructure directly via SIP protocol. Use existing phone systems with TLS encryption support and custom SIP headers. ## Option 1: Twilio Integration Connect a Twilio phone number to your agent to handle both inbound and outbound calls. ### Phone Number Types & Capabilities urvo supports two types of Twilio phone numbers with different capabilities: | Type | Inbound Calls | Outbound Calls | Use Case | |---|---|---|---| | Purchased Twilio Numbers | ✓ Supported | ✓ Supported | Full phone system with AI agents | | Verified Caller IDs | ✗ Not supported | ✓ Supported | Use your existing business number for outbound AI calls | **Note:** During phone number import, urvo automatically detects the capabilities of your number based on its configuration in Twilio. ### Prerequisites - A Twilio account - Either: - A purchased & provisioned Twilio phone number (for inbound + outbound) - OR a verified caller ID in Twilio (for outbound only) ### Step 1: Import a Twilio Phone Number 1. In your urvo dashboard, go to the **Phone Numbers** tab. 2. Click **"Import Phone Number"** and select **Twilio**. 3. Fill in the following details: - **Label:** A descriptive name (e.g., "Customer Support Line") - **Phone Number:** The Twilio number you want to use - **Twilio SID:** Your Twilio Account SID - **Twilio Token:** Your Twilio Auth Token **Where to find your credentials:** You can find your Account SID and Auth Token in the [Twilio admin console](https://console.twilio.com). #### Applied Settings urvo automatically configures the Twilio phone number with the correct settings and detects whether your number supports: - **Inbound + Outbound:** Numbers purchased through Twilio - **Outbound Only:** Numbers verified as caller IDs in Twilio ### Step 2: Assign Your Agent (Inbound-capable numbers only) If your phone number supports inbound calls, you can assign an agent to handle incoming calls: 1. Select the phone number from your Phone Numbers list. 2. Click the **"Assign Agent"** dropdown. 3. Select the agent you want to handle inbound calls. **Note:** Numbers that only support outbound calls (verified caller IDs) cannot be assigned to agents and will show as disabled in the agent dropdown. Test the agent by giving the phone number a call. Your agent is now ready to handle inbound calls and engage with your customers. Monitor your first few calls in the **Calls History** dashboard to ensure everything is working as expected. ## Option 2: SIP Trunking SIP (Session Initiation Protocol) trunking allows you to connect your existing telephony infrastructure directly to urvo. This integration enables you to use your existing phone systems while leveraging urvo's advanced voice AI capabilities. ### Benefits of SIP Trunking 1. Connect your Private Branch Exchange (PBX) or SIP-enabled phone system 2. Route calls to AI agents without changing your existing phone infrastructure 3. Handle both inbound and outbound calls 4. Leverage encrypted TLS transport and media encryption for enhanced security ### Requirements 1. A SIP-compatible PBX or telephony system 2. Phone numbers that you want to connect to urvo 3. Administrator access to your SIP trunk configuration 4. Appropriate firewall settings to allow SIP traffic 5. **Audio codec compatibility:** Your system must support G711 or G722 audio codecs **TLS Support:** For enhanced security, ensure your SIP trunk provider supports TLS transport. ### Step 1: Navigate to Phone Numbers Go to the **Phone Numbers** section in your urvo dashboard. ### Step 2: Import SIP Trunk Click on **"Import a phone number from SIP trunk"** button to open the configuration dialog. ### Step 3: Enter Basic Configuration Complete the basic configuration with the following information: - **Label:** A descriptive name for the phone number - **Phone Number:** The E.164 formatted phone number (e.g., +15551234567) ### Step 4: Configure Transport and Encryption Configure the transport protocol and media encryption settings: #### Transport Type - **TCP:** Standard TCP transport - **TLS:** Encrypted TLS transport for enhanced security #### Media Encryption 1. **Disabled:** No media encryption 2. **Allowed:** Permits encrypted media streams 3. **Required:** Enforces encrypted media streams **Security Best Practice:** Use TLS transport with "Required" media encryption for maximum security. This ensures both signaling and media are encrypted end-to-end. ### Step 5: Configure Outbound Settings Configure where urvo should send calls for your phone number: - **Address:** Hostname or IP address where the SIP INVITE is sent (e.g., sip.telnyx.com). Enter only the hostname or IP address, not a full SIP URI. - **Transport Type:** Select TCP or TLS - **Media Encryption:** Configure encryption for RTP media streams ### Step 6: Add Custom Headers (Optional) If your SIP trunk provider requires specific headers for call routing or identification: 1. Click **"Add Header"** to add custom SIP headers. 2. Enter the header name and value as required by your provider. 3. You can add multiple headers as needed. Custom headers can be used for: - Call routing and identification - Billing and tracking purposes - Provider-specific requirements ### Step 7: Configure Authentication (Optional) Provide digest authentication credentials if required by your SIP trunk provider: - **SIP Trunk Username:** Username for SIP digest authentication - **SIP Trunk Password:** Password for SIP digest authentication **Authentication Methods:** Digest authentication uses username/password credentials (recommended). ACL authentication uses IP address allowlisting for access control. If left empty, ACL authentication will be used, which requires you to allowlist urvo IP addresses in your provider's settings. ### Step 8: Complete Setup Click **"Import"** to finalize the configuration. ## Making Calls to urvo SIP Trunk When initiating calls to urvo, use the proper SIP URI format: `sip:+19991234567@sip.rtc.elevenlabs.io:5060` Where: - `+19991234567` is the identifier (typically a phone number in E.164 format) - The identifier can also be any string value, such as `1000` or `john` **Common Mistake:** Do not initiate calls directly to `sip@sip.rtc.elevenlabs.io:5060` without an identifier. The SIP URI must include a phone number or identifier after the `sip:` prefix and before the `@` symbol. ## Assigning Agents to Phone Numbers After importing your phone number (via Twilio or SIP trunk), you can assign it to an agent: 1. Go to the **Phone Numbers** section in your dashboard. 2. Select your imported phone number. 3. Click **"Assign Agent"**. 4. Select the agent you want to handle calls to this number. ## Troubleshooting ### Connection Issues 1. Verify your firewall settings allow SIP traffic 2. Ensure the SIP trunk address is correct 3. Check that authentication credentials are valid ### No Audio or One-Way Audio 1. Verify your system supports G711 or G722 audio codecs 2. Check media encryption settings match between systems 3. Ensure RTP ports are open in your firewall ### TLS and Encryption Issues 1. Ensure your SIP trunk provider supports TLS 1.2 or higher 2. Verify SRTP compatibility if requiring media encryption ## Frequently Asked Questions ### Can I use my existing phone numbers with urvo? Yes! You can import existing Twilio numbers or connect your existing phone system via SIP trunking. ### What SIP trunk providers are compatible? urvo is compatible with most standard SIP trunk providers that support TCP or TLS transport and G711/G722 audio codecs. ### Should I use TLS transport? Yes, TLS transport is recommended for enhanced security. It encrypts the SIP signaling to protect your call data. ### How many concurrent calls are supported? Support for multiple concurrent calls depends on your subscription tier. Contact support for specific limits. ### Do I need to match the leading + format when importing phone numbers? Yes, phone numbers should be in E.164 format (e.g., +15551234567) for proper routing. ## Next Steps With your phone number configured, you're ready to: 1. [Create and configure your AI agent](/how-to/agent) 2. [Add a knowledgebase](/how-to/knowledgebase) for your agent 3. [Analyze calls](/how-to/analyze-calls) and monitor performance