> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Monitorización en tiempo real

La monitorización en tiempo real permite observar en directo las conversaciones de los agentes mediante WebSocket y controlar a distancia las llamadas activas. Esta función ofrece visibilidad en tiempo real de los eventos de conversación y permite intervenir mediante comandos de control.

> **Note**
>
> Esta función solo está disponible para empresas.

## Descripción general

Las sesiones de monitorización transmiten eventos de conversación en tiempo real, incluidas transcripciones, respuestas del agente y correcciones. También puedes enviar comandos de control para finalizar llamadas, transferirlas a números de teléfono o activar la intervención humana durante conversaciones de chat activas.

## Ruta de WebSocket

Conéctate a una conversación en directo mediante la ruta de monitorización:

```
wss://api.elevenlabs.io/v1/convai/conversations/{conversation_id}/monitor
```

Sustituye `{conversation_id}` por el ID de la conversación que quieras monitorizar.

## Autenticación

La autenticación requiere:

* **Permisos de clave de API**: tu clave de API debe tener el ámbito `ElevenLabs Agents Write`
* **Acceso al espacio de trabajo**: debes tener acceso `EDITOR` al espacio de trabajo del agente
* **Formato de cabecera**: incluye tu clave de API mediante la cabecera `xi-api-key`

### Ejemplo de conexión

```javascript
const ws = new WebSocket('wss://api.elevenlabs.io/v1/convai/conversations/conv_123/monitor', {
  headers: {
    'xi-api-key': 'your_api_key_here',
  },
});
```

```python
import websockets
import asyncio

async def monitor_conversation():
    uri = "wss://api.elevenlabs.io/v1/convai/conversations/conv_123/monitor"
    headers = {
        "xi-api-key": "your_api_key_here"
    }

    async with websockets.connect(uri, extra_headers=headers) as websocket:
        # Connection established
        pass
```

## Configuración

Antes de monitorizar conversaciones, activa esta función en la configuración de tu agente:

### Ve a la configuración del agente

Abre la página de configuración de tu agente en el panel.

### Activa la monitorización

En el panel de configuración avanzada, activa la opción «Monitoring».

![Interruptor de monitorización en la configuración del agente](/docs/_fern-img/1a4b5507a39ddf6a517772b8c01ede5f7d12429175fdf89e04c8ba910f646f8e.webp)

### Selecciona eventos

Elige los eventos que quieres monitorizar. Consulta [Eventos de cliente](/docs/es/eleven-agents/customization/events/client-events) para ver una lista completa de los eventos disponibles.

> **Warning**
>
> No se pueden monitorizar los siguientes eventos: puntuaciones de VAD, métricas de probabilidad de turno y pings.

> **Info**
>
> La conversación debe estar activa antes de que puedas conectarte para monitorizarla. No puedes monitorizar una
> conversación antes de que empiece.

## Comandos de control

Envía comandos JSON mediante WebSocket para controlar la conversación:

#### Finalizar llamada

Finaliza la conversación activa inmediatamente.

```javascript
// End the active conversation
ws.send(JSON.stringify({
  command_type: "end_call"
}));
```

```python
import json

# End the active conversation
await websocket.send(json.dumps({
    "command_type": "end_call"
}))
```

#### Transferir a un número de teléfono

Transfiere la llamada a un número de teléfono especificado.

```javascript
// Transfer to a phone number
ws.send(JSON.stringify({
  command_type: "transfer_to_number",
  parameters: {
    phone_number: "+1234567890"
  }
}));
```

```python
import json

# Transfer to a phone number
await websocket.send(json.dumps({
    "command_type": "transfer_to_number",
    "parameters": {
        "phone_number": "+1234567890"
    }
}))
```

> **Note**
>
> La herramienta de sistema `transfer_to_number` ya debe estar configurada en el agente.

#### Actualización contextual en tiempo real

Introduce contexto o instrucciones en la conversación activa para que el agente pueda usar la nueva
información en sus respuestas.

```javascript
// Send a contextual update to the agent
ws.send(JSON.stringify({
  command_type: "contextual_update",
  parameters: {
    contextual_update: "<your update text>"
  }
}));
```

```python
import json

# Send a contextual update to the agent
await websocket.send(json.dumps({
    "command_type": "contextual_update",
    "parameters": {
        "contextual_update": "<your update text>"
    }
}))
```

#### Activar intervención humana

Cambia del agente de IA al modo de operador humano para conversaciones de chat.

```javascript
// Enable human takeover
ws.send(JSON.stringify({
  command_type: "enable_human_takeover"
}));
```

```python
import json

# Enable human takeover
await websocket.send(json.dumps({
    "command_type": "enable_human_takeover"
}))
```

#### Enviar mensaje como humano

Envía un mensaje al usuario como operador humano en conversaciones de chat.

```javascript
// Send a message as a human operator
ws.send(JSON.stringify({
  command_type: "send_human_message",
  parameters: {
    text: "How can I help you?"
  }
}));
```

```python
import json

# Send a message as a human operator
await websocket.send(json.dumps({
    "command_type": "send_human_message",
    "parameters": {
        "text": "How can I help you?"
    }
}))
```

#### Desactivar intervención humana

Devuelve el control del operador humano al agente de IA.

```javascript
// Disable human takeover and return to AI
ws.send(JSON.stringify({
  command_type: "disable_human_takeover"
}));
```

```python
import json

# Disable human takeover and return to AI
await websocket.send(json.dumps({
    "command_type": "disable_human_takeover"
}))
```

## Casos de uso

La monitorización en tiempo real permite varios escenarios operativos:

#### Control de calidad

Monitoriza las conversaciones de los agentes en tiempo real para garantizar los estándares de calidad e identificar
oportunidades de formación.

#### Escalado a una persona

Detecta conversaciones que requieren intervención humana y toma el control del agente de IA sin interrupciones.

#### Paneles de analítica

Crea paneles de monitorización en tiempo real que agrupen métricas de conversación e indicadores
de rendimiento.

#### Supervisión de centros de llamadas

Supervisa varias conversaciones de agentes simultáneamente e intervén cuando sea necesario.

#### Intervención automatizada

Implementa sistemas automatizados que analicen el contenido de las conversaciones y activen acciones en función de
condiciones específicas.

#### Formación y acompañamiento

Usa conversaciones en directo como material de formación y proporciona comentarios en tiempo real para mejorar el
rendimiento del agente.

## Limitaciones

#### Entrega asíncrona de eventos

Los eventos de monitorización se envían de forma asíncrona a la conversación y puede que no lleguen en el mismo
orden que los eventos principales de la conversación. Al procesar eventos, no te bases en el orden de los eventos para
reconstruir la cronología exacta de la conversación.

#### Datos de audio no disponibles

La ruta de monitorización solo transmite eventos de texto y metadatos. Los datos de audio sin procesar no se incluyen en
los eventos de monitorización.

#### Límite de eventos históricos

Solo se almacenan en caché y están disponibles aproximadamente los últimos 100 eventos al conectarte a una conversación
activa. No se pueden recuperar eventos anteriores.

#### Restricciones de filtrado de eventos

Las puntuaciones de VAD, las métricas de probabilidad de turno y los eventos ping no se pueden monitorizar cuando está activada la
selección de eventos personalizada.

#### Momento de conexión

Debes conectarte después de que haya comenzado la conversación. La ruta de monitorización no se puede usar
antes de iniciar la conversación.

#### Permisos necesarios

Las claves de API deben tener el ámbito `ElevenLabs Agents Write`, y debes tener acceso `EDITOR` al espacio de trabajo
para monitorizar conversaciones.

## Recursos relacionados

#### [Webhooks posteriores a la llamada](/docs/es/eleven-agents/workflows/post-call-webhooks)

Recibe datos y análisis de conversaciones cuando terminan las llamadas.

#### [Análisis de agentes](/docs/es/eleven-agents/customization/agent-analysis)

Configura la evaluación de éxito y la recopilación de datos para las conversaciones.

#### [Eventos de cliente](/docs/es/eleven-agents/customization/events/client-events)

Comprende los eventos recibidos durante las aplicaciones conversacionales.

#### [API de WebSocket](/docs/es/eleven-agents/libraries/web-sockets)

Descubre la API de WebSocket para conversaciones en tiempo real.