Avance punto por punto y marque cada casilla.
Señalización y control de llamadas
Las API de voz están basadas en eventos: la plataforma le notifica a medida que avanza la llamada.
- Comprenda los eventos del ciclo de vida de la llamada (iniciada, sonando, contestada, finalizada) que emite su API.Su manejador de webhooks es, en efecto, la máquina de estados del flujo de llamada — diséñelo como tal.
- Modele el control de llamadas como manejadores de webhooks idempotentes que puedan tolerar reintentos y eventos fuera de orden.
- Decida entre documentos declarativos de flujo de llamada y control en vivo por API, evento a evento, según el caso de uso.
- Gestione los conceptos de SIP que no puede evitar: early media, DTMF, transferencia y la semántica de re-INVITE.
- Planifique la estrategia de numeración (E.164), la presentación del caller ID y las reglas de caller ID por mercado.
Medios, códecs y calidad
- Elija los códecs de forma deliberada: G.711 para calidad, G.729/Opus donde el ancho de banda esté limitado.Presupueste el ancho de banda incluyendo la sobrecarga de IP/UDP/RTP, no solo la tasa de bits del códec.
- Establezca un intervalo de empaquetado razonable (habitualmente 20 ms) equilibrando la sobrecarga frente a la latencia.
- Diseñe teniendo en cuenta el jitter, la pérdida de paquetes y la latencia: búferes de jitter y expectativas realistas de MOS.
- Planifique la gestión de DTMF (RFC 2833 / SIP INFO / en banda) de forma consistente a lo largo del camino.
- Decida pronto las necesidades de grabación y transcripción — afectan al enrutamiento de medios y al almacenamiento.
Webhooks e integración
- Verifique las firmas de los webhooks y rechace eventos sin firmar u obsoletos.Un webhook de control de llamadas sin autenticar es un riesgo de toma de control.
- Responda a los webhooks con rapidez y realice el trabajo pesado de forma asíncrona para no bloquear la llamada.
- Haga que los manejadores sean idempotentes y deduplique por ID de evento, ya que se esperan reintentos.
- Correlacione los tramos de la llamada con un ID de llamada/sesión estable a través de transferencias y conferencias.
Capacidad y escalado
- Dimensione los canales concurrentes a partir de CPS × duración media de la llamada, y añada margen para el pico.Llamadas concurrentes ≈ llamadas por segundo × duración media en segundos.
- Aprovisione la capacidad de troncal / canal y confirme los límites de concurrencia y CPS del proveedor.
- Escale los manejadores de webhooks horizontalmente y manténgalos sin estado detrás de una cola.
- Realice pruebas de carga en la concurrencia pico y confirme una degradación gradual, no un fallo abrupto.
Seguridad, fiabilidad y observabilidad
- Cifre la señalización (SIP sobre TLS) y los medios (SRTP) donde se ofrezca; restrinja mediante lista blanca de IP.
- Protéjase contra el fraude de tarificación (toll fraud) y el Wangiri: limite la tasa y restrinja los destinos de tarificación especial de alto riesgo.
- Diseñe la conmutación por error entre regiones/proveedores para que una sola interrupción no haga caer todas las llamadas.
- Registre los detalles por llamada (CDR) y los eventos, y conserve el audio solo conforme a sus reglas de cumplimiento.
- Instrumente métricas de calidad (MOS, ASR, ACD) y genere alertas ante caídas por ruta.
- RFC 3261 · SIP: Session Initiation Protocol
- RFC 3550 · RTP: A Transport Protocol for Real-Time Applications
- ITU-T · Códec G.711
Normas y referencias regulatorias citadas en esta guía. BroadNet es miembro asociado de la GSMA y miembro del MEF y opera mensajería de nivel operador desde 2003.