> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sentivue.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Inbound Calling

> Configure inbound calling for Twilio, Vonage, Plivo, Telnyx, Cloudonix, Vobiz, and Asterisk ARI providers in SentiVue Talk

## Overview

SentiVue Talk supports inbound calling across all supported telephony providers. When someone calls your configured phone number, your workflow automatically answers and handles the interaction. Inbound and outbound calls share the same telephony configuration.

## Supported Providers for Inbound Calls

<CardGroup cols={3}>
  <Card title="Twilio" href="/talk/integrations/telephony/twilio">
    Industry-leading platform with robust inbound call handling
  </Card>

  <Card title="Vonage" href="/talk/integrations/telephony/vonage">
    Application-level inbound routing with high-quality 16kHz audio
  </Card>

  <Card title="Plivo" href="/talk/integrations/telephony/plivo">
    Application-level inbound routing on Plivo's global voice cloud
  </Card>

  <Card title="Telnyx" href="/talk/integrations/telephony/telnyx">
    Application-level inbound via Telnyx Call Control API
  </Card>

  <Card title="Cloudonix" href="/talk/integrations/telephony/cloudonix">
    SIP-based inbound calling with flexible trunk configuration
  </Card>

  <Card title="Vobiz" href="/talk/integrations/telephony/vobiz">
    Cloud-based telephony with global reach and competitive pricing
  </Card>

  <Card title="Asterisk ARI" href="/talk/integrations/telephony/asterisk-ari">
    Connect to your own Asterisk PBX via the Asterisk REST Interface
  </Card>
</CardGroup>

## How Inbound Calling Works

SentiVue Talk exposes a **single inbound webhook URL** for the whole org:

```
https://app.sentivue.com/talk/api/v1/telephony/inbound/run
```

When a call arrives:

1. **Call Received**: Your telephony provider receives the incoming call
2. **Webhook Triggered**: The provider sends a webhook to `/inbound/run`
3. **Org & Agent Resolved**: SentiVue Talk identifies the org from the webhook's account credentials, then looks up which agent should answer based on the called number's **Inbound workflow** assignment in your telephony configuration
4. **Audio Streaming**: Real-time audio streams between caller and agent via WebSocket
5. **Conversation Handled**: Your workflow manages the entire conversation

You don't construct per-workflow URLs anymore — the routing is done by the called number's inbound workflow assignment in SentiVue Talk.

<Note>
  The steps above describe the **Standard** setup. Twilio numbers using the [Advanced setup](/talk/integrations/telephony/twilio#call-handling-setup) receive calls over a SIP trunk instead of this webhook, but resolve their agent from the same **Inbound workflow** assignment. Nothing changes in how you configure them here.
</Note>

## Configuration in SentiVue Talk

Setting up inbound calling takes three steps:

### Step 1: Configure Telephony Provider

The telephony configuration for inbound calling is **identical** to outbound calling. Add (or open) a configuration at **/telephony-configurations** following your provider's documentation:

* [Twilio Configuration](/talk/integrations/telephony/twilio#configuration)
* [Vonage Configuration](/talk/integrations/telephony/vonage#configuration)
* [Plivo Configuration](/talk/integrations/telephony/plivo#configuration)
* [Telnyx Configuration](/talk/integrations/telephony/telnyx#configuration)
* [Cloudonix Configuration](/talk/integrations/telephony/cloudonix#configuration)
* [Vobiz Configuration](/talk/integrations/telephony/vobiz#configuration)
* [Asterisk ARI Configuration](/talk/integrations/telephony/asterisk-ari#configuration-in-sentivue)

### Step 2: Assign an Inbound Workflow to the Phone Number

1. Go to **/telephony-configurations** and open your configuration
2. In the **Phone numbers** section, edit the number that should receive inbound calls
3. Set its **Inbound workflow** to the agent that should answer
4. Save

This is what tells SentiVue Talk which agent to run when a call comes in for that number.

### Step 3: Point Your Provider at `/inbound/run`

Each provider needs its inbound webhook (Twilio Voice URL / Vonage Answer URL / etc.) set to the global SentiVue Talk endpoint:

```
https://app.sentivue.com/talk/api/v1/telephony/inbound/run
```

The exact place to set this varies by provider — follow the provider-specific instructions:

* [Twilio Inbound Setup](/talk/integrations/telephony/twilio#inbound-calling-setup)
* [Vonage Inbound Setup](/talk/integrations/telephony/vonage#inbound-calling-setup)
* [Plivo Inbound Setup](/talk/integrations/telephony/plivo#inbound-calling-setup)
* [Telnyx Inbound Setup](/talk/integrations/telephony/telnyx#inbound-calling-setup)
* [Cloudonix Inbound Setup](/talk/integrations/telephony/cloudonix#inbound-calling-setup)
* [Vobiz Inbound Setup](/talk/integrations/telephony/vobiz#inbound-calling-setup)
* [Asterisk ARI Inbound Setup](/talk/integrations/telephony/asterisk-ari#inbound-calling)

## Testing Inbound Calls

After completing both the SentiVue Talk configuration and provider-specific setup:

1. **Test Call**: Call your configured phone number from another phone
2. **Verify Connection**: Ensure your workflow answers and responds appropriately
3. **Check Logs**: Monitor call logs in both SentiVue Talk and your provider's dashboard
4. **Audio Quality**: Verify clear two-way audio communication

## Troubleshooting Common Issues

<AccordionGroup>
  <Accordion title="Calls go to voicemail instead of agent">
    * Verify the webhook URL at your provider is exactly `https://app.sentivue.com/talk/api/v1/telephony/inbound/run`
    * Ensure phone numbers are properly linked to your application
    * Check your provider's logs for the call: they record the response to each webhook attempt, which is the fastest way to see whether the call reached SentiVue Talk
  </Accordion>

  <Accordion title="Agent doesn't respond to incoming calls">
    * Confirm the called number has an **Inbound workflow** assigned in **/telephony-configurations**
    * Confirm your workflow is properly configured
    * Check webhook signature validation is working
  </Accordion>

  <Accordion title="Provider mismatch error">
    * **Error**: "Configuration error: This phone number is configured for a different telephony provider"
    * **Solution**: Check your dashboard settings and update your webhook URL configuration to match the correct provider
    * Ensure the phone number is configured for the same provider in both SentiVue Talk and your telephony console
  </Accordion>

  <Accordion title="Workflow not found error">
    * **Error**: "Workflow not found"
    * **Solution**: Open the called number in **/telephony-configurations** and confirm an **Inbound workflow** is assigned. Without an assignment, SentiVue Talk has no agent to route the call to.
    * Verify the assigned workflow still exists in your dashboard
  </Accordion>

  <Accordion title="Account validation failed">
    * **Error**: "Authentication error: Account credentials do not match"
    * **Solution**: Verify your account SID/credentials configuration in SentiVue Talk matches your telephony provider settings
    * Re-enter your provider credentials in the telephony configuration page
  </Accordion>

  <Accordion title="Phone number not configured">
    * **Error**: "Phone number not configured: This number is not set up for inbound calls"
    * **Solution**: Add this phone number under **Phone numbers** in your telephony configuration at **/telephony-configurations**
    * Ensure the phone number is also linked to your provider account
  </Accordion>

  <Accordion title="Signature validation failed">
    * **Error**: "Security error: Webhook signature validation failed"
    * **Solution**: Verify your auth token configuration in SentiVue Talk matches your provider settings
    * Confirm the webhook URL at your provider matches exactly, including the `/inbound/run` path — a mismatched URL changes the signature
    * If you recently rotated the token at your provider, re-enter it in your telephony configuration
  </Accordion>

  <Accordion title="Quota exceeded error">
    * **Error**: "Service temporarily unavailable: Your account has exceeded usage limits"
    * **Solution**: Contact your administrator or upgrade your plan to continue receiving calls
    * Check your provider account billing and usage limits
  </Accordion>

  <Accordion title="General authentication failed">
    * **Error**: "Authentication failed"
    * **Solution**: Check your webhook URL configuration and ensure your telephony provider settings match your dashboard configuration
    * Verify all credentials are entered correctly and haven't expired
    * Check your provider's logs for the response SentiVue Talk returned to the webhook — it names the credential that failed
  </Accordion>

  <Accordion title="Poor audio quality on inbound calls">
    * Check your provider's call quality metrics for the affected calls
    * Verify the number's codec and region settings at your provider
  </Accordion>
</AccordionGroup>

## Best Practices

* **Single Configuration**: Use the same telephony configuration for both inbound and outbound calls
* **Testing**: Always test inbound calling after configuration changes
* **Monitoring**: Monitor both SentiVue Talk logs and provider dashboards for call analytics
* **Security**: Ensure webhook signature verification is enabled for security

## Next Steps

1. Choose your telephony provider and complete the basic configuration
2. Follow the provider-specific setup instructions
3. Assign an inbound workflow to each phone number that should accept calls
4. Test your inbound calling setup
