# Recibir llamadas

Un número de tu espacio de trabajo puede responder una llamada entrante de tres formas: entregarla a uno de tus trunks SIP, reenviarla a un número que hayas verificado, o rechazarla. La respuesta es un ajuste del número, y un número tiene exactamente una respuesta a la vez.

Todos los números comienzan en rechazar, así que un número que nadie ha configurado rechaza a los que llaman en lugar de quedarse sin respuesta.

## Requisitos previos

Antes de apuntar un número a una respuesta:

- **Un número que pueda recibir llamadas.** Abre **Voice** > [**Numbers**](https://bird.com/dashboard/w/voice/numbers) y comprueba en la columna **Directions** que tenga una marca de entrada. Un número que registraste como caller ID de otro operador no recibe llamadas aquí: ese operador enruta las llamadas dirigidas a él, así que no tiene respuesta.
- **Para entregar a un trunk:** un [trunk SIP](/docs/guides/voice/sip-trunks) con llamadas entrantes activadas y al menos un gateway de entrega.
- **Para un reenvío:** un [caller ID verificado](/docs/guides/voice/caller-ids) al que reenviar.
- **Para cambiar el ajuste a través de la API o CLI:** una clave API con el alcance `voice_management` en nivel de escritura. Ese alcance cubre la configuración de voz; el alcance `voice` cubre el tráfico de llamadas y las estadísticas, así que leer el registro de llamadas requiere el otro.

## Entregar llamadas a un trunk SIP

La entrega llama a tu propio sistema telefónico en las direcciones que declaras en el trunk. Activa la dirección primero, porque un número solo se puede apuntar a un trunk que ya acepte llamadas entrantes.

1. Abre **Voice** > [**SIP Trunks**](https://bird.com/dashboard/w/voice/sip-trunks), abre el trunk y en **Inbound calling** selecciona **Enable inbound**.
2. Añade al menos un gateway en la misma sección. Un trunk sin gateway rechaza todas las llamadas entrantes a los números que responde.
3. Abre **Voice** > [**Numbers**](https://bird.com/dashboard/w/voice/numbers), abre el número y en **Inbound routing** elige **Deliver to a SIP trunk**.
4. Elige el trunk y selecciona **Save**. Solo aparecen en la lista los trunks con llamadas entrantes activadas.

La columna **Used for** en la lista de **Numbers** muestra entonces el número como entregado a ese trunk, y la página del trunk lista los números que responde.

### Qué necesita un gateway

Un gateway es una dirección a la que se entrega una llamada, y cómo ese par quiere que se escriban los dos números de la llamada:

| Ajuste                 | Qué es                                                                                                                                                     |
| ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **URI SIP**            | El host de tu sistema telefónico, con un puerto opcional, como en `sip:pbx.example.com:5060`. Indica solo el host: se rechaza un URI que incluya user part |
| **Priority**           | El orden en que se prueban los gateways, del más bajo al más alto                                                                                          |
| **Destination format** | Cómo se escribe el número marcado para este par. Por defecto, E.164                                                                                        |
| **Origination format** | Cómo se escribe el número que llama para este par, en la cabecera `P-Asserted-Identity` de la llamada entregada. Por defecto, E.164                        |

Los gateways que comparten prioridad reciben una parte igual de las llamadas, y cualquiera de ellos puede ser el primero en una llamada dada. Para pasar la entrega a una segunda dirección, asigna a ese gateway un número de prioridad mayor: se prueba cuando el primero no responde.

Ambos formatos de número son plantillas sobre un marcador de posición, `{number}`, que representa el número sin su `+` inicial. El formato de destino se coloca antes del host del URI SIP, así que `1234#{number}` entrega una llamada a `+31201234567` como `sip:1234#31201234567@pbx.example.com:5060`. El valor por defecto de ambos es `+{number}`, que es E.164. Un formato que no contenga ningún `{number}` envía todos los números que el trunk responde a una única dirección fija.

> **Warning:** turning inbound calling off on a trunk, or deleting the trunk, puts every number pointing at it back on reject. Turning inbound back on does not restore them, so each number has to be pointed at a trunk again.

## Reenviar llamadas a otro número

Un reenvío responde la llamada entrante y realiza una segunda llamada a un número que hayas verificado, y luego conecta las dos.

1. Abre **Voice** > [**Numbers**](https://bird.com/dashboard/w/voice/numbers), abre el número y en **Inbound routing** elige **Forward to another number**.
2. Elige el número al que reenviar. La lista contiene tus caller IDs verificados, porque un reenvío solo puede apuntar a un número que hayas demostrado que controlas.
3. Elige qué número muestra la llamada reenviada como el que llama y selecciona **Save**.

El destino del reenvío se comprueba cuando lo configuras y de nuevo en cada llamada que reenvía. Un caller ID que elimines después deja de reenviar en lugar de continuar, y las llamadas entrantes se rechazan a partir de ese momento.

La llamada reenviada suena durante 45 segundos antes de darse por perdida, más tiempo que una entrega a trunk, porque el extremo remoto suele ser el teléfono de una persona y no un sistema telefónico.

Un reenvío realiza una llamada, así que las reglas de salida se aplican al segundo tramo: reenviar a un país que no hayas activado en [Destinations](/docs/guides/voice/destinations) se rechaza con `destination_not_enabled`.

### Un reenvío, dos registros de llamada

Una llamada reenviada produce dos registros que comparten un `session_id`:

| Registro             | Qué es                                                                                                                                            |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| La llamada entrante  | `direction` es `inbound`, y `route` indica que el número estaba configurado para reenviar, a qué número, y qué número presentó el tramo reenviado |
| La llamada reenviada | `direction` es `outbound`, desde el número que el tramo presentó hasta el número al que reenvías. No tiene `route` propio                         |

Agrúpalos por `session_id` para ver la llamada completa. El registro de la llamada entrante es el que indica cómo estaba configurado el número.

## Elegir qué número muestra una llamada reenviada como el que llama

Una llamada reenviada tiene dos números que podría presentar a quien responda, y la elección cambia tanto lo que ven como la probabilidad de que un operador interfiera con la llamada:

- **Calling number** es el número propio de quien llama, así que el teléfono suena como si hubiera marcado directamente y la llamada se puede devolver desde el registro de llamadas. Como el número no es tuyo, algunos operadores, sobre todo en EE. UU. y partes de Europa, marcan esas llamadas como no verificadas, reemplazan el número o las filtran.
- **Dialed number** es el número que marcó quien llama, que es uno de los tuyos. Quien responda ve cuál de tus números se marcó, en lugar de quién llamó.

No hay valor por defecto. Indica la elección en cada reenvío que escribas a través de la API o CLI.

Los valores que tu espacio de trabajo puede establecer están indicados en el propio número, en `forward_as_options` de su `inbound_configuration`. Presentar el número marcado requiere que tu espacio de trabajo esté aprobado para realizar llamadas desde números que nos compraste, y esa aprobación aún no está disponible, así que `forward_as_options` ofrece solo el número que llama y el reenvío presenta el número propio de quien llama. Establecer el número marcado se rechaza hasta entonces.

En una lectura, `forward_as` es el valor que las llamadas realmente llevan, que puede diferir del último valor escrito.

## Consultar qué hizo un número con una llamada

El registro de una llamada entrante lleva un `route` junto a su estado, y `route` es lo que el número estaba configurado para hacer en el momento en que se gestionó la llamada. Cambiar el ajuste del número después no cambia lo que dicen sus llamadas anteriores.

| `route.type` | Qué hizo el número                                                                     |
| ------------ | -------------------------------------------------------------------------------------- |
| `trunk`      | La llamada se entregó al trunk SIP indicado en `trunk_id`                              |
| `forward`    | La llamada se reenvió al número en `forward_to`, presentando el número en `forward_as` |
| `reject`     | El número rechazó la llamada                                                           |

`route` indica lo que el número estaba configurado para hacer, no que haya funcionado. Una ruta `trunk` en una llamada que nunca se conectó es un número apuntado a un trunk que no aceptó la llamada, y el estado de la llamada es lo que refleja el resultado. `route` está ausente en llamadas salientes y en llamadas registradas antes de que existiera el campo.

En el panel, abre la llamada desde **Voice** > [**Calls**](https://bird.com/dashboard/w/voice/calls) y consulta la fila **Inbound route**, que enlaza al número cuya configuración la decidió. A través de la API, `route` está en [`GET /v1/voice/calls/{call_id}`](/docs/api/reference/get-voice-call) y [`GET /v1/voice/calls`](/docs/api/reference/list-voice-calls), y `direction` filtra la lista a llamadas entrantes.

## Diagnosticar una llamada entrante rechazada

Una llamada entrante que fue rechazada se registra con el estado `rejected`. Dos cosas distintas lo producen, y `rejection_reason` es lo que las distingue:

- **Rechazada sin `rejection_reason`.** El propio número rechazó la llamada. La llamada no falló ninguna comprobación nuestra, por lo que no indica motivo, y `route` dice lo que el número estaba configurado para hacer. Una ruta `reject` es un número que nadie ha apuntado a ningún sitio, o uno configurado deliberadamente para rechazar.
- **Rechazada con `rejection_reason`.** La llamada falló una de nuestras comprobaciones antes de llegar a tu sistema telefónico. El motivo indica la comprobación. [Rejected calls](/docs/guides/voice/call-log#rejected-calls) lista todos los motivos y su solución.

`failed` es un estado diferente y no significa rechazada: significa que se intentó la llamada y no funcionó, con `sip_response_code` indicando la respuesta recibida.

Lee `route` y `rejection_reason` juntos para distinguir los rechazos:

| `route` y motivo                     | Causa                                                                                                                                                                                                                |
| ------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `reject`, sin motivo                 | El número no está apuntado a ninguna respuesta. Eliminar un trunk, o desactivar sus llamadas entrantes, devuelve aquí todos los números que apuntaban a él, así que un número que antes funcionaba puede acabar aquí |
| `trunk`, `no_route_found`            | El número está apuntado a un trunk, y ese trunk no tiene un gateway al que entregar la llamada. Añade uno en la página del trunk                                                                                     |
| `forward`, sin motivo                | El destino del reenvío ya no es un caller ID verificado. Verifícalo de nuevo en [Caller IDs](/docs/guides/voice/caller-ids), o reenvía a otro número                                                                 |
| `forward`, `destination_not_enabled` | No se pudo realizar el segundo tramo hacia el país del destino del reenvío. Activa ese país en [Destinations](/docs/guides/voice/destinations)                                                                       |

Los límites de la cuenta también se aplican a las llamadas entrantes: si superas el saldo de tu monedero, el límite diario de gasto en voz de tu organización, o tus límites de concurrencia y por segundo, la llamada entrante se rechaza con el motivo correspondiente. [Voice overview](/docs/guides/voice/overview#limits) cubre los propios límites.

## Comprobar cuánto cuesta una llamada recibida

Recibir una llamada tiene coste. La tarifa depende del país y tipo del número que la recibe, y se publica por país en **Receiving calls** en la [página de precios de voz](/pricing/voice), junto a las tarifas de las llamadas que realizas.

Un reenvío se factura como dos llamadas: la llamada entrante a la tarifa de recepción, y el tramo que realizamos a la tarifa de salida del número al que reenvías. Se cobra una única tarifa de gestión por la llamada, no una por tramo.

El monedero se comprueba antes de entregar una llamada entrante, así que un saldo que no pueda cubrirla significa que la llamada se rechaza en lugar de facturársete después. [Cost and billing](/docs/guides/voice/placing-calls#cost-and-billing) cubre cómo funcionan el tiempo facturable, las tarifas y el monedero en ambas direcciones.

## Próximos pasos

| Página                                                             | Qué cubre                                                                 |
| ------------------------------------------------------------------ | ------------------------------------------------------------------------- |
| [Trunks SIP](/docs/guides/voice/sip-trunks)                        | Crear un trunk, sus dos direcciones y controlar quién puede enviar        |
| [Caller IDs](/docs/guides/voice/caller-ids)                        | Registrar un número y demostrar que lo controlas                          |
| [Registro de llamadas](/docs/guides/voice/call-log)                | Todos los campos de un registro de llamada y todos los motivos de rechazo |
| [Eventos de voz](/docs/guides/voice/events)                        | Recibir resultados de llamadas en tus propios sistemas                    |
| [Solución de problemas de voz](/docs/guides/voice/troubleshooting) | Diagnosticar una llamada que no se completa, a partir de su síntoma       |

## Related resources

- [What is a voice API?](/explained/voice/what-is-a-voice-api) (answer)
- [Voice](/products/voice) (product)

[Get an implementation brief](/learn/workspace?topic=voice)
