Ir al contenido
Guía

Agente telefónico en hindi y malayalam con sarvam en Wixzel Voice

Tendrás dos agentes telefónicos en Wixzel Voice, uno que habla hindi y otro malayalam, ambos con el motor sarvam: el reconocimiento de voz Saaras de Sarvam, el modelo de lenguaje Sarvam-105B y la voz Bulbul en un solo pipeline. Con una troncal SIP ya conectada lleva unos 20 minutos, con cURL. El motor sarvam cuesta $0.0617 por minuto conectado, unos $0.19 por una llamada de tres minutos, facturado por segundo desde un saldo prepago, más la tarifa de tu operador por la línea.

Por · Publicado el · Actualizado el

Duración
Unos 20 minutos con una troncal ya conectada
Motor
sarvam
Tiempo de motor
$0.0617 por minuto conectado

¿Qué necesitas antes de empezar?

  • Una clave de API de Wixzel Voice con crédito, exportada como WIXZEL_API_KEY.
  • Una troncal SIP con un número. Para números de la India, un operador como Exotel o Vobiz, con el KYC y el registro DLT que corresponda ya completados: una cuenta que no los haya terminado puede tener saldo y aun así ver bloqueadas todas sus llamadas salientes.
  • curl, jq y uuidgen.

¿Cómo construyes esto en Wixzel Voice, paso a paso?

  1. 01Comprueba los idiomas y las voces que ofrece el motor

    Pregúntale a la API en lugar de escribir cualquiera de las dos listas en el código:

    shell
    curl https://api.voice.wixzel.com/v1/engines/sarvam/languages \
      -H "Authorization: Bearer $WIXZEL_API_KEY"
    
    curl https://api.voice.wixzel.com/v1/engines/sarvam/voices \
      -H "Authorization: Bearer $WIXZEL_API_KEY"

    El endpoint de idiomas devuelve hoy 11 códigos: en-IN, hi-IN, bn-IN, gu-IN, kn-IN, ml-IN, mr-IN, od-IN, pa-IN, ta-IN, te-IN. El hindi es hi-IN y el malayalam es ml-IN. Las voces son nombres de hablantes de Bulbul v3, como priya, kavya y shubh; Sarvam publica solo los nombres, así que escucha una voz antes de elegirla.

  2. 02Crea el agente en hindi

    Tres ajustes determinan el idioma. voice.stt.language fija el reconocimiento y la voz en hindi; el language del agente le dice al modelo que responda en ese idioma; y las instrucciones y la frase de apertura están escritas como debe sonar el agente. Las tres etapas son modelos de Sarvam, porque el proveedor de voz a texto elige el pipeline y las otras dos deben ser de la misma familia.

    shell
    curl https://api.voice.wixzel.com/v1/agents \
      -H "Authorization: Bearer $WIXZEL_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "Hindi reception",
        "language": "hi-IN",
        "system_prompt": "You answer the phone for Sharma Dental Clinic, in Hindi. Speak the everyday Hindi callers use, English words included. Keep replies to one or two short sentences.",
        "opening_message": "नमस्ते, शर्मा डेंटल क्लिनिक में आपका स्वागत है। बताइए, मैं आपकी क्या मदद करूँ?",
        "voice": {
          "stt": { "model": "sarvam/saaras-v3-realtime", "language": "hi-IN" },
          "llm": { "model": "sarvam/sarvam-105b" },
          "tts": { "model": "sarvam/bulbul-v3", "voice": "priya" }
        }
      }'

    Guarda el id de la respuesta como HINDI_AGENT_ID. Un idioma o una voz que el motor no ofrece se rechaza al crear el agente, y el error lista los válidos.

  3. 03Crea el agente en malayalam

    La misma estructura, con ml-IN en ambos sitios y una frase de apertura en malayalam:

    shell
    curl https://api.voice.wixzel.com/v1/agents \
      -H "Authorization: Bearer $WIXZEL_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "Malayalam reception",
        "language": "ml-IN",
        "system_prompt": "You answer the phone for a dental clinic in Kochi, in Malayalam. Speak the everyday Malayalam callers use, English words included. Keep replies to one or two short sentences.",
        "opening_message": "നമസ്കാരം, കൊച്ചി ഡെന്റൽ ക്ലിനിക്കിലേക്ക് സ്വാഗതം. ഞാൻ എങ്ങനെ സഹായിക്കാം?",
        "voice": {
          "stt": { "model": "sarvam/saaras-v3-realtime", "language": "ml-IN" },
          "llm": { "model": "sarvam/sarvam-105b" },
          "tts": { "model": "sarvam/bulbul-v3", "voice": "kavya" }
        }
      }'

    Guarda este id como MALAYALAM_AGENT_ID. Cada agente habla un solo idioma: el motor sarvam no tiene modo de detección automática, así que atender a los dos grupos de personas significa un número por idioma para las llamadas entrantes y elegir el agente en cada llamada saliente.

  4. 04Enruta llamadas entrantes o haz una saliente

    Asigna a un número el agente en hindi para las llamadas entrantes, o llama a alguien con el de malayalam:

    shell
    # Inbound: calls to this number reach the Hindi agent
    jq -n --arg agent "$HINDI_AGENT_ID" '{inbound_agent_id: $agent}' |
      curl -X PATCH https://api.voice.wixzel.com/v1/phone-numbers/$NUMBER_ID \
        -H "Authorization: Bearer $WIXZEL_API_KEY" \
        -H "Content-Type: application/json" \
        -d @-
    
    # Outbound: the Malayalam agent rings $TO (E.164, for example +91 and ten digits)
    jq -n --arg to "$TO" --arg agent "$MALAYALAM_AGENT_ID" --arg from "$NUMBER_ID" \
      '{to: $to, agent_id: $agent, from_number_id: $from}' |
      curl https://api.voice.wixzel.com/v1/calls \
        -H "Authorization: Bearer $WIXZEL_API_KEY" \
        -H "Idempotency-Key: $(uuidgen)" \
        -H "Content-Type: application/json" \
        -d @-

    Idempotency-Key es obligatorio en POST /v1/calls: un reintento con la misma clave devuelve la llamada original en lugar de marcar dos veces.

  5. 05Prueba con la forma real de hablar de quienes llaman

    La mayoría de quienes llaman mezclan inglés con el hindi o el malayalam: fechas, números, marcas, palabras como "appointment" y "cancel". Los modelos de Sarvam manejan el habla con mezcla de idiomas, como el hinglish, dentro de lo que los modelos cubren, así que escribe las instrucciones para permitirla en lugar de prohibirla.

    Lo que el agente no puede hacer es seguir a alguien que cambia por completo a otro idioma de la India, porque el reconocimiento queda fijado en voice.stt.language al empezar la llamada. Haz unas cuantas llamadas con frases reales antes de enrutar tráfico real, y lee lo que se oyó en la transcripción de GET /v1/calls/{id}.

¿Cuánto cuesta esto en Wixzel Voice?

Tiempo de motor para llamadas de 3 minutos con el motor sarvam a $0.0617 por minuto conectado: unos $0.19 por llamada. La telefonía es tu propia troncal con la tarifa de tu operador y no está incluida.

Costo mensual de motor de lo que construye esta guía
Llamadas al mesMinutos conectadosCosto de motor al mes
5001500$92.55
25007500$463
10.00030.000$1,851

El motor sarvam cuesta $0.0617 por minuto conectado, incluida la cuota de orquestación; el motor classic, en comparación, cuesta $0.0867, así que un minuto en hindi o malayalam con Sarvam cuesta menos que uno en inglés con classic. Cada etapa se mide en su propia unidad mientras la llamada está en curso, así que una llamada con poca conversación cuesta menos que la estimación y una con mucha conversación, más. Tu operador factura la línea por separado.

Prepago, sin suscripción y sin plan gratuito: agrega crédito desde $5 y el uso lo va consumiendo. Calcula tu propia combinación.

¿Qué límites de Wixzel Voice se aplican a esto?

  • Un idioma por agente. El motor sarvam no tiene detección automática de idioma, así que no sigue a quien cambia por completo a otro idioma.
  • Sarvam procesa la voz y el texto en la India durante la llamada. El registro de la llamada, la transcripción y cualquier grabación se guardan en servidores en la India.
  • Las voces Bulbul vienen solo con nombre, sin descripción de género ni de acento. Escuchar una implica una llamada de prueba, que hace sonar un teléfono real y gasta crédito.
  • Los operadores de la India condicionan las llamadas salientes al KYC y, a menudo, al registro DLT. Una llamada que tu operador bloquea por ese motivo falla en el operador, y nada en la plataforma puede arreglarlo.
  • Por defecto, cada cuenta puede tener cinco llamadas en curso a la vez; el límite se amplía a petición.

Preguntas frecuentes

¿Cómo creo un agente telefónico en hindi en Wixzel Voice?

Crea un agente con el motor sarvam, con voice.stt.language y el language del agente en hi-IN, una frase de apertura en hindi y una voz Bulbul; después asigna a un número su inbound_agent_id o haz una llamada con POST /v1/calls. El agente mantiene llamadas telefónicas en hindi por tu troncal SIP, o sesiones en tus apps web y móviles por WebSocket, a $0.0617 por minuto conectado.

¿Puede un agente telefónico de IA hablar malayalam?

Sí. Configura voice.stt.language y el language del agente en ml-IN en un agente sarvam, escribe la frase de apertura en malayalam y elige una voz Bulbul. El reconocimiento, el modelo de lenguaje y la voz funcionan con modelos de Sarvam, creados para idiomas de la India.

¿Puede un mismo agente hablar hindi y malayalam?

No. El idioma de reconocimiento es fijo para cada agente desde que empieza la llamada, y el motor sarvam no tiene modo de detección. Crea un agente por idioma y enruta cada número, o cada llamada saliente, al que corresponda.

¿Un agente sarvam de Wixzel Voice entiende hinglish?

Dentro de lo que manejan los modelos de Sarvam, sí: entienden habla con mezcla de idiomas, como palabras en inglés dentro de frases en hindi. Prueba con frases reales de quienes llaman antes de salir a producción, y lee las transcripciones para ver qué se oyó.

¿Los datos de llamadas de la India se quedan en la India?

Sarvam procesa la voz y el texto en la India mientras dura la llamada. El registro de la llamada, la transcripción y cualquier grabación se guardan en la India. La Política de privacidad y el DPA indican cada encargado del tratamiento y su ubicación.

Dónde leer más

  • Motores de vozdocumentación

    Las dos formas de voz, las listas de voces y los endpoints de idiomas.

  • Componer un motor de vozdocumentación

    Familias, ids de modelo y cómo se calcula el precio de un minuto compuesto.

  • Troncales SIPdocumentación

    Configuración de Exotel y Vobiz, y las comprobaciones de KYC y DLT.

  • Agentesdocumentación

    Cada campo del agente y de dónde salen sus valores válidos.

API para telefonía con agentes

Acerca de Wixzel Voice

Wixzel Voice es una API de IA de voz para crear agentes de IA que hacen y contestan llamadas telefónicas reales a través de tu propia troncal SIP, o que hablan con personas en tus apps web y móviles. Una clave de API y un saldo prepagado cubren todos los motores de voz, con cobro por segundo de uso real.

Dale a Claude una línea telefónica con el MCP de Wixzel Voice

Claude, en Claude Code o claude.ai, haciendo una llamada real por tu troncal SIP y leyéndote la transcripción, con una confirmación antes de marcar.

Recepcionista con IA para Twilio en Node.js con Wixzel Voice

Tu número actual de Twilio atendido por un recepcionista de IA que agenda citas en la API, hecho en Node.js.

Añade un agente de voz a Flutter por WebSocket con Wixzel Voice

Una app Flutter en la que los usuarios hablan con tu agente de voz por WebSocket, con la clave de API guardada en tu servidor y sin ningún número de teléfono.

Gemini Live en una llamada real con la API de Wixzel Voice

Un agente Gemini Live llamando a un teléfono real por tu troncal SIP a partir de cuatro peticiones cURL, y el registro de la llamada con su transcripción y su costo.

Haz una campaña de calificación de leads con IA con Wixzel Voice

Una lista de leads llamados por tu agente a través de tu troncal SIP, en lotes ajustados a tu límite de llamadas simultáneas, con el estado y la transcripción de cada llamada.

Añade una mascota de IA que habla a tu web con Wixzel Voice

Una mascota que habla en la esquina de tu sitio web, a la que los visitantes llaman desde el navegador, limitada a tus dominios y a tus límites diarios, con cada persona que llama registrada.

Muestra la mascota de tu agente en Flutter con Wixzel Voice

Una pantalla de Flutter con la mascota de tu agente, que mueve la boca con la voz del agente durante una llamada en tiempo real, con tu clave de API guardada en tu servidor.