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

# Telefonía (VoIP)

> Conecte Twilio, Ringostat o Binotel para llamadas telefónicas potenciadas por IA

## Proveedores Compatibles

| Proveedor     | Llamadas Entrantes | Llamadas Salientes | SMS | Configuración Automática de Webhook |
| ------------- | ------------------ | ------------------ | --- | ----------------------------------- |
| **Twilio**    | Sí                 | Sí                 | Sí  | Automática                          |
| **Ringostat** | Sí                 | Sí                 | No  | Manual                              |
| **Binotel**   | Sí                 | Sí                 | No  | Manual                              |

## Configuración

<Tabs>
  <Tab title="Twilio">
    ### Credenciales

    Necesita dos valores de la [Consola de Twilio](https://console.twilio.com/):

    | Campo           | Dónde encontrarlo        |
    | --------------- | ------------------------ |
    | **Account SID** | Dashboard → Account Info |
    | **Auth Token**  | Dashboard → Account Info |

    ### Pasos

    <Steps>
      <Step title="Agregar Integración">
        Vaya a **Integraciones** → **Agregar Integración** → seleccione **Twilio** de la categoría Telefonía.
      </Step>

      <Step title="Ingresar Credenciales">
        Elija una empresa, asigne un nombre a la integración (por ejemplo, "Línea Telefónica Principal") e ingrese su Account SID y Auth Token.
      </Step>

      <Step title="Verificar y Seleccionar Número">
        Haga clic en **Probar Conexión**. Revol obtiene sus números de teléfono disponibles. Seleccione el número a usar.
      </Step>

      <Step title="Guardar">
        Revol configura automáticamente la URL del webhook en el número de Twilio seleccionado. Las llamadas entrantes y SMS se enrutan a su agente.
      </Step>
    </Steps>

    <Note>
      Las URLs de webhook de Twilio se configuran automáticamente. No necesita configurar nada en la Consola de Twilio.
    </Note>
  </Tab>

  <Tab title="Ringostat">
    ### Credenciales

    | Campo                    | Dónde encontrarlo                                   |
    | ------------------------ | --------------------------------------------------- |
    | **Clave API (Auth-key)** | Dashboard de Ringostat → Configuración de API       |
    | **ID del Proyecto**      | Dashboard de Ringostat → Configuración del Proyecto |

    ### Pasos

    <Steps>
      <Step title="Agregar Integración">
        Vaya a **Integraciones** → **Agregar Integración** → seleccione **Ringostat**.
      </Step>

      <Step title="Ingresar Credenciales">
        Ingrese su Clave API e ID del Proyecto.
      </Step>

      <Step title="Verificar">
        Revol obtiene sus cuentas SIP para confirmar la conexión.
      </Step>

      <Step title="Configurar Webhook">
        En el dashboard de Ringostat, establezca la URL del webhook que se muestra en Revol después de la verificación.
      </Step>
    </Steps>
  </Tab>

  <Tab title="Binotel">
    ### Credenciales

    | Campo           | Dónde encontrarlo                          |
    | --------------- | ------------------------------------------ |
    | **Clave API**   | Dashboard de Binotel → Configuración → API |
    | **Secreto API** | Dashboard de Binotel → Configuración → API |

    ### Pasos

    <Steps>
      <Step title="Agregar Integración">
        Vaya a **Integraciones** → **Agregar Integración** → seleccione **Binotel**.
      </Step>

      <Step title="Ingresar Credenciales">
        Ingrese su Clave API y Secreto API.
      </Step>

      <Step title="Verificar">
        Revol obtiene sus números de teléfono internos para confirmar la conexión.
      </Step>

      <Step title="Configurar Webhook">
        En el dashboard de Binotel, establezca la URL del webhook que se muestra en Revol después de la verificación.
      </Step>
    </Steps>

    <Warning>
      Los webhooks de Binotel se validan por lista de IPs permitidas. Solo se aceptan solicitudes de los servidores de Binotel en producción.
    </Warning>
  </Tab>
</Tabs>

## Herramientas del Agente

Después de conectar un proveedor VoIP, las siguientes herramientas se provisionan automáticamente:

| Herramienta            | Twilio | Ringostat | Binotel | Descripción                                                                             |
| ---------------------- | ------ | --------- | ------- | --------------------------------------------------------------------------------------- |
| **make\_call**         | Sí     | Sí        | Sí      | Iniciar una llamada saliente con mensaje de saludo opcional                             |
| **send\_sms**          | Sí     | —         | —       | Enviar un mensaje SMS (selecciona automáticamente el número remitente)                  |
| **get\_call\_history** | Sí     | Sí        | Sí      | Obtener registros de llamadas recientes con filtros (teléfono, estado, rango de fechas) |

Estas herramientas se hacen disponibles en la pestaña **Herramientas** del agente y pueden agregarse a nodos del workflow.

## Flujo de Llamada de Voz

Cuando llega una llamada entrante, Revol la procesa a través del workflow del agente asignado:

<Steps>
  <Step title="Llamada Entrante">
    El proveedor VoIP envía una notificación webhook a Revol con la información del llamante.
  </Step>

  <Step title="Saludo">
    Revol genera un saludo de audio usando síntesis de voz (voz e idioma configurables) y lo reproduce al llamante.
  </Step>

  <Step title="Voz a Texto">
    El habla del llamante se captura y transcribe usando Whisper o Google STT.
  </Step>

  <Step title="Procesamiento IA">
    El texto transcrito se envía al workflow del agente. El agente lo procesa a través de nodos LLM, consultas a la base de conocimientos y llamadas a herramientas.
  </Step>

  <Step title="Texto a Voz">
    La respuesta de texto del agente se convierte en audio usando OpenAI TTS con voz y velocidad configurables.
  </Step>

  <Step title="Respuesta">
    El audio se reproduce al llamante. La conversación continúa en bucle hasta que finaliza la llamada.
  </Step>
</Steps>

## Uso de Herramientas en Nodos del Workflow

Para que su agente use herramientas VoIP durante conversaciones:

1. Vaya a la pestaña **Workflow** del agente
2. Cree o seleccione un **nodo personalizado** (con LLM)
3. En la configuración del nodo, habilite las herramientas VoIP (por ejemplo, `make_call`, `get_call_history`)
4. El LLM decidirá automáticamente cuándo invocar estas herramientas basándose en el contexto de la conversación

Por ejemplo, si un cliente pregunta "¿Puede devolverme la llamada al +380501234567?", el agente usará la herramienta `make_call` para iniciar una llamada saliente.

## Seguridad de Webhooks

| Proveedor | Método de Validación                                                      |
| --------- | ------------------------------------------------------------------------- |
| Twilio    | Verificación de firma HMAC-SHA1 (encabezado `X-Twilio-Signature`)         |
| Ringostat | Validación estructural de parámetros                                      |
| Binotel   | Lista de IPs permitidas (solo IPs de servidores de Binotel en producción) |

Todos los webhooks VoIP tienen un límite de **120 solicitudes por minuto** por canal.
