Saltar al contenido principal

Guía de Operaciones

📖 Volver a la Documentación Principal

Este documento cubre las características de monitoreo y gestión operativa disponibles en el Panel de Control.

Documentación Relacionada

Documentación Principal

Herramientas de Monitoreo y Pruebas

Procesamiento de Llamadas y Servicios

Interfaces de Integración


Operaciones

Esta sección cubre las características de monitoreo y gestión operativa disponibles en el Panel de Control de OmniTAS.

Tabla de Contenidos

Vista de Suscriptores

La vista de Suscriptores proporciona monitoreo en tiempo real de las registraciones de suscriptores IMS almacenadas en la base de datos de registración SIP de Sofia.

Acceso: Navega a /subscribers en el Panel de Control

Características

  • Lista de Registraciones: Ver todas las registraciones de suscriptores activas
  • Detalles de Registración: Haz clic en cualquier registración para ver detalles completos incluyendo:
    • Usuario SIP y Dominio
    • URI de Contacto
    • Estado y expiración de registración
    • Información de red (IP, puerto, nombre de host)
    • Detalles de autenticación
    • Ubicación de la torre celular (cuando esté disponible a través de P-Access-Network-Info)
      • MCC/MNC, Tipo de Radio, TAC/LAC, ID de Celda
      • Coordenadas geográficas y rango de cobertura
      • Vista de mapa interactivo impulsada por datos de OpenStreetMap y OpenCellID

Vista de Suscriptores

Detalles de Registración

Fuente de Datos

Los datos de registración se consultan directamente de la base de datos de registración de Sofia, proporcionando visibilidad en tiempo real sobre el estado de adjunto de los suscriptores. Las ubicaciones de las torres celulares se resuelven utilizando la base de datos de OpenCellID cuando los suscriptores proporcionan encabezados P-Access-Network-Info en sus mensajes SIP REGISTER.

Casos de Uso

  • Monitorear registraciones de suscriptores activas
  • Verificar el estado de adjunto de los suscriptores
  • Solucionar problemas de registración
  • Auditar la conectividad de los suscriptores

Registros de Detalle de Llamadas (CDR)

La vista de CDR proporciona acceso a los registros de detalle de llamadas almacenados por TAS para facturación, solución de problemas y análisis.

Acceso: Navega a /cdr en el Panel de Control

Vista CDR

Características

  • Vista Paginada: Navega a través de los registros de llamadas (100 por página con controles de Anterior/Siguiente)
  • Búsqueda Avanzada: Búsqueda potente con soporte para coincidencia exacta, inversa/excluir y múltiples términos
  • Selección de Columnas: Personaliza qué campos mostrar
    • Haz clic en el botón "Columnas" para abrir el modal de selección de columnas
    • Selecciona/deselecciona columnas individuales
    • Acciones rápidas Seleccionar Todo / Deseleccionar Todo
    • La selección persiste entre sesiones (guardada en localStorage del navegador)
    • Muestra el contador "X / Y columnas"
  • Columnas Ordenables: Haz clic en cualquier encabezado de columna para ordenar (ascendente/descendente)
    • Indicadores visuales (▲ ascendente, ▼ descendente)
    • Columna ordenada resaltada en azul
    • Se restablece a la página 1 cuando cambian los criterios de ordenamiento
  • Múltiples Opciones de Filtro:
    • Búsqueda de Texto: Busca en todos los campos con operadores avanzados
    • Filtro de Rango de Fechas: Filtra por fecha y hora de inicio/fin (selector de fecha y hora)
    • Filtro Específico de Campo: Filtra por valor exacto de campo (causa de colgado, ID de llamada, destino, contexto)
    • Visualización de Filtros Activos: Chips visuales muestran los filtros activos actualmente
    • Limpiar Todo: Eliminación de un clic de todos los filtros activos
  • Información Detallada: Haz clic en cualquier fila de CDR para expandir y ver todos los campos:
    • Partes de la llamada (nombre/número de ID de llamada, número de destino)
    • Tiempos (inicio, respuesta, fin)
    • Duración y segundos facturados
    • Causa de colgado (código de colores: verde=normal, amarillo=cancelado, rojo=error)
    • UUIDs de llamada (A-leg y B-leg)
    • Contexto y código de cuenta
    • Todos los campos de la base de datos disponibles en orden alfabético
  • Causas de Colgado Codificadas por Color:
    • 🟢 Verde: NORMAL_CLEARING
    • 🟡 Amarillo: Llamadas canceladas
    • 🔴 Rojo: Condiciones de error
  • Conteo Total: Visualización en tiempo real del total de registros coincidentes
  • Diseño Responsivo: Los filtros se ajustan adecuadamente en pantallas más pequeñas

Cómo Usar

  1. Visualización Básica:

    • La página se carga con los últimos 100 registros CDR (ordenados por start_stamp en orden descendente)
    • El conteo total de registros se muestra en la esquina superior derecha
    • Usa los botones Anterior / Siguiente para navegar entre páginas
    • Haz clic en cualquier fila para expandir y ver todos los campos
  2. Personalizar Columnas:

    • Haz clic en el botón "Columnas" en la esquina superior derecha
    • El modal muestra todos los campos disponibles
    • Marca/desmarca campos para mostrar/ocultar columnas
    • Usa "Seleccionar Todo" o "Deseleccionar Todo" para selección rápida
    • La configuración se guarda automáticamente en el navegador
    • Cierra el modal para aplicar los cambios
  3. Ordenar Datos:

    • Haz clic en cualquier encabezado de columna para ordenar por ese campo
    • Primer clic: Descendente (▼)
    • Segundo clic: Ascendente (▲)
    • Tercer clic: Regresar a descendente
    • Columna ordenada resaltada en azul
  4. Buscar Registros:

    • Ingresa la consulta de búsqueda en el cuadro "Buscar"
    • Soporta operadores avanzados (ver Sintaxis de Búsqueda a continuación)
    • Busca en múltiples campos: caller_id_number, destination_number, uuid, caller_id_name, hangup_cause
    • Haz clic en "Aplicar" para ejecutar la búsqueda
  5. Filtrar por Rango de Fechas:

    • Usa los selectores de fecha y hora "Fecha de Inicio" y "Fecha de Fin"
    • Ambas fechas son necesarias para el filtrado por fecha
    • Soporta selección de fecha y hora
    • Haz clic en "Aplicar" para filtrar
  6. Filtrar por Campo Específico:

    • Selecciona el campo del desplegable "Seleccionar Campo para Filtrar":
      • Causa de Colgado
      • ID de Llamante
      • Destino
      • Contexto
    • Ingresa el valor exacto en "Ingresar Valor de Filtro"
    • Haz clic en "Aplicar" para filtrar
  7. Combinar Filtros:

    • Todos los filtros se pueden usar simultáneamente:
      • Búsqueda de texto + Rango de fechas + Filtro de campo funcionan juntos
    • Los filtros activos se muestran como chips debajo del formulario de filtro
    • Haz clic en "Limpiar Todo" para eliminar todos los filtros de una vez
  8. Ver Detalles:

    • Haz clic en cualquier fila de CDR para expandir
    • Muestra todos los campos de la base de datos en un diseño de cuadrícula
    • Los campos se muestran en orden alfabético
    • La causa de colgado está codificada por colores para una identificación rápida
    • Haz clic en la fila nuevamente para colapsar

Sintaxis de Búsqueda Avanzada

El cuadro de búsqueda soporta una potente sintaxis de consulta para un filtrado preciso de registros a través de múltiples campos simultáneamente.

Cómo Funciona la Búsqueda:

El motor de búsqueda revisa todos los campos buscables en cada registro CDR. Un registro se incluye en los resultados cuando coincide con tus criterios de búsqueda en cualquiera de estos campos:

  • caller_id_number
  • destination_number
  • uuid
  • caller_id_name
  • hangup_cause

Operadores de Búsqueda (se pueden combinar):

  1. Búsqueda Contiene (por defecto):

    • Sintaxis: término (sin comillas)
    • Coincide: Registros donde cualquier campo contiene el término en cualquier parte
    • SQL: Usa LIKE '%término%' en todos los campos buscables unidos con OR
    • Ejemplo: 61480 coincide con "61480123456", "55561480999", etc.
  2. Coincidencia Exacta:

    • Sintaxis: "término" (con comillas dobles)
    • Coincide: Registros donde cualquier campo es exactamente igual al término
    • SQL: Usa = 'término' en todos los campos buscables unidos con OR
    • Ejemplo: "911" coincide solo con exactamente "911", no "9115" o "1911"
  3. Inversa/Excluir:

    • Sintaxis: !término (prefijo de signo de exclamación, sin comillas)
    • Coincide: Registros donde ningún campo contiene el término
    • SQL: Usa NOT LIKE '%término%' en todos los campos buscables unidos con AND
    • Ejemplo: !NORMAL excluye cualquier registro con "NORMAL" en cualquier campo
  4. Inversa Exacta/Excluir:

    • Sintaxis: !"término" (signo de exclamación + comillas dobles)
    • Coincide: Registros donde ningún campo es exactamente igual al término
    • SQL: Usa != 'término' en todos los campos buscables unidos con AND
    • Ejemplo: !"NORMAL_CLEARING" excluye registros donde cualquier campo es exactamente "NORMAL_CLEARING"
  5. Múltiples Términos con AND:

    • Sintaxis: término1 AND término2 (AND sin distinción de mayúsculas)
    • Coincide: Registros que coinciden con todos los términos (cada término puede coincidir con diferentes campos)
    • Cada término se procesa con su propio operador (comillas, !, etc.)
    • Los términos se combinan con AND en SQL
    • Ejemplo: "911" AND "12345" encuentra registros con "911" en un campo Y "12345" en otro

Lógica de Ejecución de Búsqueda:

Para cada registro CDR:
Para búsqueda normal (sin !):
- Verifica si CUALQUIER campo contiene/es igual al término → Incluir si es VERDADERO
- SQL: field1 LIKE '%término%' OR field2 LIKE '%término%' OR ...

Para búsqueda inversa (!):
- Verifica si TODOS los campos NO contienen/son iguales al término → Incluir si es VERDADERO
- SQL: field1 NOT LIKE '%término%' AND field2 NOT LIKE '%término%' AND ...

Para búsquedas AND:
- Cada término se evalúa por separado
- Todas las condiciones de término deben ser VERDADERAS → Incluir si es VERDADERO
- SQL: (término1_conditions) AND (término2_conditions) AND ...

Ejemplos de Búsqueda Compleja:

ConsultaCómo FuncionaResultado
61480Búsqueda contiene en todos los camposTodos los registros con "61480" en cualquier parte (llamante, destino, UUID, etc.)
"911"Coincidencia exacta en todos los camposRegistros donde cualquier campo es exactamente "911"
!NORMAL_CLEARINGBúsqueda inversa contieneExcluye registros con "NORMAL_CLEARING" en CUALQUIER campo (llamadas fallidas)
!"NORMAL_CLEARING"Inversa exactaExcluye registros donde cualquier campo es exactamente "NORMAL_CLEARING"
"911" AND "12345"Exacto "911" Y exacto "12345"Registros con ambos valores (por ejemplo, llamante="12345", destino="911")
!NORMAL AND 61480Inversa contiene "NORMAL" Y contiene "61480"Llamadas no normales que involucran "61480"
!"ANSWER" AND !NORMALInversa exacta "ANSWER" Y inversa contiene "NORMAL"Excluir llamadas respondidas y cualquier cosa con "NORMAL"
61480 AND !NORMAL_CLEARINGContiene "61480" Y inversa contiene "NORMAL_CLEARING"Llamadas fallidas que involucran "61480"

Casos de Uso Prácticos:

  • Encontrar un número específico: 61480123456 - Búsqueda contiene encuentra coincidencias parciales
  • Encontrar llamadas de emergencia exactas: "911" - Solo llamadas a exactamente "911"
  • Todas las llamadas fallidas: !NORMAL_CLEARING - Excluir llamadas exitosas
  • Llamadas fallidas de un llamante específico: "61480123456" AND !NORMAL - Combinar llamante exacto con inversa
  • Excluir números de prueba: !test AND !demo - Múltiples búsquedas inversas
  • Depuración compleja: 61480 AND !"ANSWER" AND !CANCEL - Contiene un término, excluye exactos y parciales otros

Fuente de Datos

Los datos de CDR se consultan directamente de la base de datos SQLite de CDR de TAS.

El esquema puede variar entre implementaciones según los requisitos específicos.

Opciones de Exportación de CDR

Importante: Los registros CDR se pueden exportar en varios formatos para soportar la integración con sistemas de facturación, plataformas de análisis y herramientas de informes.

El esquema de base de datos de CDR y los formatos de exportación son específicos de la implementación. Al configurar tu sistema, por favor solicita los formatos de salida de CDR específicos que necesitas a tu ingeniero de integración. Los formatos de exportación comunes incluyen:

  • CSV (Valores Separados por Comas)
  • JSON (para integración API)
  • XML
  • Acceso directo a la base de datos
  • Exportaciones con formato personalizado

Tu ingeniero de integración puede configurar mecanismos de exportación de CDR adaptados a tus requisitos operativos y de facturación.

Casos de Uso

  • Solución de Problemas de Llamadas: Busca llamadas específicas por número o UUID para depurar problemas
  • Conciliación de Facturación: Filtra por rango de fechas para coincidir con períodos de facturación
  • Análisis de Calidad: Filtra por causa de colgado para identificar patrones problemáticos
  • Auditoría de Llamadas de Emergencia: Busca "911" para verificar el manejo de llamadas de emergencia
  • Soporte al Cliente: Busca llamadas de clientes específicos por ID de llamante o destino
  • Análisis de Patrones: Ordena por duración o tiempos para identificar anomalías
  • Cumplimiento y Mantenimiento de Registros: Filtros de rango de fechas para informes regulatorios
  • Análisis de Llamadas Fallidas: Usa !NORMAL_CLEARING para encontrar todas las llamadas fallidas
  • Informes Basados en Contexto: Filtra por contexto para analizar flujos de llamadas específicos

Configuración

Columnas Visibles por Defecto

Puedes configurar qué campos de CDR se muestran por defecto en el LiveView configurando cdrs_field_list en tu config/runtime.exs:

config :tas,
cdrs_field_list: [
"caller_id_number",
"destination_number",
"start_stamp",
"duration",
"hangup_cause"
]

Comportamiento:

  • Si cdrs_field_list no está configurado: Todos los campos de CDR disponibles se muestran por defecto
  • Si cdrs_field_list está configurado: Solo se muestran los campos especificados por defecto, pero todos los demás campos siguen disponibles en el selector de columnas
  • Si un campo en la lista no existe en los datos de CDR, se omitirá automáticamente
  • Los nombres de los campos se pueden especificar como cadenas o átomos
  • Los usuarios pueden seleccionar manualmente columnas adicionales del selector de columnas en cualquier momento

Casos de Uso:

  • Establecer una vista predeterminada limpia con solo los campos esenciales visibles
  • Reducir la sobrecarga de información para nuevos usuarios
  • Estandarizar el diseño de columnas inicial entre todos los usuarios
  • Mantener ocultos los campos avanzados por defecto pero aún accesibles

Ejemplo de Configuración:

# Mostrar solo información de llamadas esenciales por defecto
cdrs_field_list: [
"start_stamp",
"caller_id_number",
"destination_number",
"duration",
"billsec",
"hangup_cause"
]

Nota: Esta configuración establece las columnas visibles por defecto. Todos los campos de CDR permanecen disponibles en el selector de "Columnas" - los usuarios pueden mostrar/ocultar manualmente cualquier campo que necesiten.

Solución de Problemas

No se Encontraron Resultados
  1. Verifica si hay errores tipográficos en los términos de búsqueda
  2. Intenta eliminar las comillas para una búsqueda más amplia
  3. Verifica que el término exista en los campos buscables
  4. Asegúrate de que el rango de fechas no sea demasiado restrictivo
Demasiados Resultados
  1. Agrega más términos AND para reducir
  2. Usa coincidencia exacta con comillas
  3. Aplica filtros de rango de fechas
  4. Usa filtros específicos de campo
Resultados Inesperados
  1. Recuerda que la búsqueda se aplica a TODOS los campos buscables
  2. Verifica si el término aparece en un campo inesperado (como UUID)
  3. Usa coincidencia exacta para evitar coincidencias parciales
  4. Verifica la lógica inversa (AND vs OR)

Consejos

  • Selección de Columnas: Oculta columnas no utilizadas para enfocarte en datos relevantes y mejorar el rendimiento
  • Combina Filtros: Usa búsqueda + rango de fechas + filtro de campo juntos para consultas precisas
  • Rendimiento del Rango de Fechas: Rango de fechas más estrecho devuelve resultados más rápido para bases de datos grandes
  • Ordena para Análisis: Ordena por duración para encontrar llamadas largas/cortas, o por timestamp para ver patrones de llamadas
  • Chips de Filtros Activos: Usa chips visuales para verificar qué filtros están activos actualmente
  • Configuraciones Persistentes: Las selecciones de columnas se guardan por navegador, útil para diferentes tareas de análisis
  • Codificación por Color: Escanea rápidamente las causas de colgado - verde es bueno, rojo necesita investigación
  • Detalles Expandibles: Haz clic en las filas para ver todos los campos sin desordenar la vista principal
  • Operadores de Búsqueda: Domina la sintaxis de búsqueda para un filtrado potente:
    • Usa comillas para coincidencias exactas: "911"
    • Usa ! para excluir: !NORMAL_CLEARING
    • Combina con AND: "61480" AND !NORMAL
  • Paginación: Recuerda que los filtros persisten entre páginas - usa la paginación para revisar grandes conjuntos de resultados

Monitoreo de Llamadas Activas

La vista de Llamadas Activas muestra información en tiempo real sobre las llamadas en curso a través del sistema.

Acceso: Navega a /calls en el Panel de Control

Características

  • Estado en Tiempo Real: Vista en vivo de sesiones de llamadas activas
  • Detalles de Llamadas: Ver variables de canal e información del estado de la llamada
  • Seguimiento de UUID: Monitorea tanto los identificadores de llamada A-leg como B-leg

Servidor de Conferencias IMS

El Servidor de Conferencias IMS proporciona capacidades de conferencias multiparte en cumplimiento con los estándares IMS de 3GPP (RFC 4579, RFC 4575, TS 24.147).

Acceso: Navega a /conference en el Panel de Control

Documentación: Consulta la Guía del Usuario del Servidor de Conferencias IMS para documentación detallada

Características

  • Monitoreo en Tiempo Real: Vista en vivo de conferencias activas y participantes
  • Tablero de Estadísticas de Conferencias:
    • Conteo de conferencias activas
    • Total de participantes en todas las conferencias
    • Conteo de conferencias de video
    • Conteo de conferencias bloqueadas
    • Detalles de configuración del servidor (dominio, MNC/MCC, máximo de participantes)
  • Lista de Conferencias: Ver todas las conferencias activas con:
    • ID de conferencia y URI SIP
    • Conteo actual de participantes
    • Identidad del creador de la conferencia
  • Detalles de la Conferencia: Haz clic en cualquier conferencia para expandir y ver:
    • Información completa de la conferencia (estado, estado de video, estado bloqueado, estado de grabación)
    • Lista completa de participantes con roles y estados
    • Estado de video de los participantes
  • Acciones de Control de Conferencia:
    • Bloquear/Desbloquear conferencias para controlar el acceso
    • Habilitar/Deshabilitar video para conferencias
    • Actualizaciones de estado en tiempo real con retroalimentación de acciones
  • Auto-Actualización: Auto-actualización configurable (por defecto: 5 segundos) para monitoreo en tiempo real

Gestión de Consola de OmniTAS

Todas las operaciones de conferencia también están disponibles a través de la consola de OmniTAS usando el comando ims_conference:

ims_conference list                    # Lista todas las conferencias activas
ims_conference info <conf_id> # Muestra detalles de la conferencia
ims_conference stats # Muestra estadísticas del servidor
ims_conference lock <conf_id> # Bloquea una conferencia
ims_conference unlock <conf_id> # Desbloquea una conferencia
ims_conference video <conf_id> on|off # Controla el video
ims_conference record <conf_id> start|stop # Controla la grabación
ims_conference add <conf_id> <sip_uri> # Agrega participante
ims_conference remove <conf_id> <uuid> # Elimina participante
ims_conference destroy <conf_id> # Termina la conferencia

Casos de Uso

  • Monitoreo Operativo: Visibilidad en tiempo real de conferencias activas y uso de recursos
  • Gestión de Capacidad: Monitorea conteos de participantes y uso de video para gestionar el ancho de banda
  • Solución de Problemas: Diagnostica problemas de acceso a conferencias, problemas de conexión de participantes
  • Control de Conferencias: Bloquear conferencias para privacidad, gestionar video para controlar el ancho de banda
  • Cumplimiento: Monitorea y graba conferencias para cumplimiento regulatorio

Cumplimiento con 3GPP

El servidor de conferencias implementa especificaciones clave de conferencias IMS de 3GPP:

  • TS 24.147: Conferencias usando el subsistema de red central IM
  • RFC 4579: Control de Llamadas SIP - Conferencias para Agentes de Usuario
  • RFC 4575: Paquete de Eventos SIP para el Estado de Conferencia
  • RFC 5239: Marco para Conferencias Centralizadas

Estado del Gateway

Monitorea el estado y la salud de los gateways/troncos SIP conectados a TAS.

Acceso: Navega a /gw en el Panel de Control

Características

  • Estado de Registración: Ver estado de registración del gateway
  • Estadísticas de Llamadas: Rastrear llamadas entrantes/salientes y fallos
  • Monitoreo de Ping: Tiempos de ping SIP OPTIONS y alcanzabilidad
  • Detalles del Gateway: Información completa de configuración y estado

Métricas Monitoreadas

  • Estado de registración SIP
  • Tiempo de ping (tiempo promedio de respuesta SIP OPTIONS)
  • Tiempo de actividad (segundos desde el reinicio del perfil)
  • Llamadas Entrantes / Llamadas Salientes
  • Llamadas Fallidas Entrantes / Llamadas Fallidas Salientes
  • Último tiempo de ping y frecuencia

Estado del Par de Diámetro

Monitorea la conectividad del par de Diámetro para las interfaces Sh y Ro.

Acceso: Navega a /diameter en el Panel de Control

Características

  • Estado del Par: Estado de conexión para cada par configurado
  • Soporte de Aplicaciones: Ver aplicaciones de Diámetro soportadas (Sh, Ro)
  • Estado del Vigilante: Monitoreo del vigilante de Diámetro

Visor de Registros del Sistema

Visor de registros unificado en tiempo real tanto para el Backend de TAS (Elixir) como para los registros de Procesamiento de Llamadas de TAS (FreeSWITCH).

Acceso: Navega a /logs en el Panel de Control

Vista de Registros

Características

  • Flujo de Registros Unificado: Ver registros tanto del Backend de TAS como del Procesamiento de Llamadas en una sola interfaz
  • Actualizaciones en Tiempo Real: Transmisión en vivo de mensajes de registro a medida que ocurren (auto-actualización cada 1 segundo)
  • Niveles de Registro Codificados por Color:
    • 🟣 Consola - Mensajes de consola (púrpura/magenta)
    • 🔴 Alerta/Critico - Problemas urgentes que requieren atención inmediata (rojo)
    • 🟠 Error - Condiciones de error (rojo claro)
    • 🟡 Advertencia - Mensajes de advertencia (amarillo)
    • 🔵 Aviso - Mensajes informativos notables (cyan)
    • 🔵 Info - Mensajes informativos generales (azul)
    • Depuración - Registro de depuración/verbose (gris)
  • Insignias de Fuente:
    • 🔵 Backend de TAS - Registros de la aplicación Elixir (insignia azul)
    • 🟣 Procesamiento de Llamadas de TAS - Registros de FreeSWITCH (insignia púrpura)
  • Indicadores de Borde Izquierdo: Borde izquierdo codificado por color que coincide con el nivel de registro para un escaneo visual rápido
  • Múltiples Filtros:
    • Filtro de Fuente: Todas las Fuentes / Backend de TAS / Procesamiento de Llamadas de TAS
    • Filtro de Nivel: Todos / Consola / Alerta / Crítico / Error / Advertencia / Aviso / Info / Depuración
    • Búsqueda de Texto: Búsqueda de palabras clave en tiempo real a través de mensajes de registro
  • Pausar/Reanudar: Congela la transmisión de registros para analizar entradas específicas sin perder contexto
  • Limpiar Registros: Elimina todas las entradas de registro actuales de la visualización
  • Contador de Registros: Muestra registros filtrados vs registros totales (por ejemplo, "Mostrando 150 de 500 registros")
  • Comportamiento de Tail: Mantiene las últimas 500 entradas de registro para un rendimiento óptimo
  • Visualización de Metadatos: Nombre de archivo y número de línea para referencias de código fuente (cuando estén disponibles)
  • Vista Desplazable: Contenedor de altura fija con desplazamiento automático para los últimos registros

Cómo Usar

  1. Visualización Básica:

    • La página se carga con las últimas 500 entradas de registro de ambas fuentes
    • Los registros aparecen en tiempo real a medida que se generan
    • Los registros más recientes aparecen en la parte superior
    • Se actualiza automáticamente cada 1 segundo
  2. Filtrar por Fuente:

    • Selecciona del desplegable "Fuente":
      • Todas las Fuentes - Muestra registros tanto del Backend de TAS como del Procesamiento de Llamadas
      • Backend de TAS - Solo registros de la aplicación Elixir
      • Procesamiento de Llamadas de TAS - Solo registros de FreeSWITCH/dialplan
    • El filtro se aplica de inmediato
  3. Filtrar por Nivel de Registro:

    • Selecciona del desplegable "Nivel":
      • Todos - Muestra todos los niveles de registro
      • Consola a Depuración - Muestra solo ese nivel específico
    • Útil para enfocarse en errores o depurar problemas específicos
  4. Buscar Palabras Clave:

    • Escribe en el cuadro "Buscar registros..."
    • Búsqueda sin distinción de mayúsculas a través de mensajes de registro
    • Filtra en tiempo real a medida que escribes
    • Se combina con filtros de fuente y nivel
  5. Pausar/Reanudar Transmisión:

    • Haz clic en el botón "Pausar" (naranja) para congelar las actualizaciones de registro
    • El indicador "PAUSADO" aparece en el encabezado
    • Revisa entradas de registro específicas sin que nuevos registros interrumpan
    • Haz clic en el botón "Reanudar" (verde) para reiniciar la transmisión en vivo
  6. Limpiar Registros:

    • Haz clic en el botón "Limpiar" (rojo) para eliminar todos los registros mostrados
    • Limpia tanto los registros del Backend de TAS como los del Procesamiento de Llamadas
    • Nuevos registros aparecerán a medida que se generen
  7. Leer Entradas de Registro:

    • Timestamp: Muestra el tiempo en formato HH:MM:SS.milliseconds
    • Insignia de Fuente: Indica Backend de TAS (azul) o Procesamiento de Llamadas (púrpura)
    • Nivel de Registro: Nivel codificado por color entre corchetes [ERROR], [INFO], etc.
    • Archivo/Línea: Ubicación del código fuente (cuando esté disponible)
    • Mensaje: El contenido real del mensaje de registro

Niveles de Registro Explicados

NivelColorCuándo se UsaEjemplo
ConsolaPúrpuraMensajes específicos de consolaSalida de consola de FreeSWITCH de alta prioridad
AlertaRojoAcción inmediata requeridaFallo de componente del sistema
CríticoRojoCondiciones críticasConexión a la base de datos perdida
ErrorRojo ClaroCondiciones de errorFalló al procesar la llamada, configuración inválida
AdvertenciaAmarilloCondiciones de advertenciaFunción obsoleta utilizada, intento de reintento
AvisoCyanEventos normales notablesConfiguración recargada, servicio iniciado
InfoAzulMensajes informativosLlamada conectada, solicitud Diameter enviada
DepuraciónGrisMensajes de nivel de depuraciónEntrada/salida de función, valores de variables

Casos de Uso

  • Solución de Problemas en Tiempo Real: Monitorea registros durante una llamada activa para depurar problemas
  • Investigación de Errores: Filtra por niveles de Error/Critico para encontrar problemas
  • Análisis de Flujo de Llamadas: Busca por Call-ID o número de teléfono para rastrear el camino de la llamada
  • Monitoreo de Rendimiento: Observa advertencias y errores durante pruebas de carga
  • Depuración de Integración: Filtra Backend de TAS para ver mensajes Diameter/Sh/Ro
  • Depuración de Dialplan: Filtra Procesamiento de Llamadas de TAS para ver el enrutamiento de llamadas de FreeSWITCH
  • Monitoreo de Salud del Sistema: Mantén los registros abiertos para observar anomalías
  • Desarrollo y Pruebas: Usa el nivel de Depuración para ver el comportamiento detallado de la aplicación

Consejos

  • Combina Filtros: Usa Fuente + Nivel + Búsqueda juntos para un filtrado preciso
    • Ejemplo: Fuente="Backend de TAS" + Nivel="Error" + Búsqueda="Diameter" → Encuentra errores de Diameter
  • Pausa Antes de Buscar: Pausa la transmisión antes de escribir la consulta de búsqueda para evitar que los registros se desplacen
  • Usa Depuración con Cuidado: El nivel de depuración es detallado - filtra a una fuente específica para reducir el ruido
  • Escaneo por Color: Escanea rápidamente los bordes izquierdos - los bordes rojos indican problemas
  • Insignias de Fuente: Insignias azules (Backend) para lógica de aplicación, Insignias púrpuras (Procesamiento de Llamadas) para llamadas
  • Precisión de Timestamp: Timestamps en milisegundos ayudan a correlacionar eventos a través de sistemas
  • Referencias de Archivo: Haz clic/anota referencias de archivo:línea para saltar al código fuente
  • Limpieza Regular: Limpia los registros al cambiar de contexto de investigación para mayor claridad
  • Buscar UUIDs: Busca por Call-ID/UUID para seguir una llamada específica a través de todo el sistema
  • Búsqueda de Emergencia: Busca "911" o "emergencia" para encontrar rápidamente el manejo de llamadas de emergencia

Detalles Técnicos

  • Límite de Registro: Se muestran un máximo de 500 registros (los más antiguos se descartan cuando se alcanza el límite)
  • Tasa de Actualización: Auto-actualización cada 1000ms (1 segundo)
  • Búsqueda: Coincidencia de subcadenas sin distinción de mayúsculas en el campo de mensaje únicamente
  • Filtrado Vacío: Filtra automáticamente mensajes de registro vacíos/placeholder
  • Detección de Fuente: Registros etiquetados con :elixir o :freeswitch como fuente
  • Ordenamiento: Registros ordenados por timestamp descendente (más recientes primero)
  • PubSub: Registros de Elixir entregados a través de Phoenix PubSub para actualizaciones en tiempo real
  • Registros de FreeSWITCH: Recopilados a través de la Interfaz de Socket de Eventos (ESI) oyente de registros

Base de Datos de Torres de Celular

Gestiona y consulta la base de datos de ubicación de torres de celular de OpenCellID para servicios de emergencia y características basadas en ubicación.

Acceso: Navega a /cell_towers en el Panel de Control

Base de Datos de Torres de Celular

Características

  • Estadísticas de la Base de Datos: Ver registros totales, cobertura por país/red
  • Búsqueda y Consulta:
    • Busca por MCC (Código de País Móvil)
    • Busca por MNC (Código de Red Móvil)
    • Busca por tipo de radio (GSM, UMTS, LTE)
    • Busca por cadena de ubicación
  • Gestión de la Base de Datos:
    • Importar datos de torres de celular
    • Volver a descargar el conjunto de datos más reciente de OpenCellID
    • Ver estado y progreso de importación
  • Resolución de Ubicación: Resuelve IDs de celdas a coordenadas geográficas

Casos de Uso

  • Determinación de ubicación de llamadas de emergencia
  • Seguimiento de ubicación de suscriptores (con consentimiento)
  • Análisis de cobertura de red
  • Solución de problemas de problemas de ubicación en roaming
  • Mantenimiento de la base de datos de torres de celular

Fuente de Datos

Los datos de torres de celular se obtienen de OpenCellID (https://opencellid.org/), un proyecto comunitario colaborativo para crear una base de datos gratuita de ubicaciones de torres de celular en todo el mundo.


Simulador de Llamadas

Herramienta de simulación de llamadas interactiva para probar la lógica del dialplan sin realizar llamadas reales.

Acceso: Navega a /simulator en el Panel de Control

Documentación Detallada: Consulta la Guía de HLR y Simulador de Llamadas

Características

  • Simular Tipos de Llamadas: Prueba llamadas MO, MT y de Emergencia
  • Parámetros Configurables:
    • Números de origen y destino
    • Dirección IP de origen (para simular SBC/CSCF)
    • Forzar una disposición de llamada específica
    • Saltar autorización OCS para pruebas más rápidas
  • Resultados Completos:
    • Salida completa de variables del dialplan
    • Resultados de búsqueda de Sh/HLR
    • Resultado de autorización OCS
    • Resultados de consulta SS7 MAP (si corresponde)
    • XML del dialplan generado
  • Procesamiento Paso a Paso: Ver cada etapa del procesamiento de la llamada

Casos de Uso

  • Probar cambios en el dialplan antes de la implementación
  • Verificar la provisión de suscriptores
  • Depurar problemas de enrutamiento de llamadas
  • Capacitar al personal sobre el flujo de llamadas
  • Validar la integración OCS/HLR
  • Probar el manejo de llamadas de emergencia

Pruebas HLR/MAP

Prueba operaciones SS7 MAP incluyendo consultas de Envío de Información de Enrutamiento (SRI) y Proporcionar Número de Roaming (PRN).

Acceso: Navega a /hlr en el Panel de Control

Documentación Detallada: Consulta la Guía de HLR y Simulador de Llamadas

Características

  • Consulta SRI: Prueba Envío de Información de Enrutamiento para el enrutamiento de llamadas
  • Consulta PRN: Prueba Proporcionar Número de Roaming para suscriptores en roaming
  • Resultados Reales: Consultas reales al gateway MAP configurado
  • Visualización de Respuestas: Ver MSRN, dirección MSC y estado de reenvío
  • Manejo de Errores: Visualización clara de errores y tiempos de espera de MAP

Casos de Uso

  • Verificar conectividad HLR
  • Probar la asignación de números de roaming
  • Depurar el enrutamiento de llamadas a suscriptores en roaming
  • Validar la configuración del gateway MAP
  • Solucionar problemas de desvío de llamadas

Pruebas OCS

Prueba operaciones de Solicitud de Control de Crédito (CCR) de Diámetro Ro (Carga en Línea) directamente contra tu OCS.

Acceso: Navega a /ocs_test en el Panel de Control

Vista de Prueba OCS

Características

  • Tipos de CCR Flexibles: Envía solicitudes de INICIAL, ACTUALIZACIÓN, TERMINACIÓN o EVENTO
  • Simulación de Sesión: Reutiliza el mismo ID de Llamada para simular un ciclo de vida completo de la sesión
  • Selección de Tipo de Evento: Prueba tanto SMS (basado en eventos) como Llamada (basado en sesiones)
  • Control de Dirección: Prueba tanto escenarios salientes (MO) como entrantes (MT)
  • Parámetros Opcionales: Especifica Destination-Host y Nombre de Usuario para pruebas avanzadas
  • Resultados en Tiempo Real: Ver respuestas completas de CCA (Respuesta de Control de Crédito)

Cómo Usar

  1. Ingresa Parámetros de Prueba:

    • MSISDN Llamado: El número de destino (por ejemplo, 61400123456)
    • MSISDN Llamante: El número de origen (por ejemplo, 61400987654)
    • Tipo de Evento: Elige sms o call
      • SMS por defecto es EVENT_REQUEST (tipo 4)
      • Llamada por defecto es INITIAL_REQUEST (tipo 1)
    • Dirección: out para MO o in para MT
  2. Configura Tipo de CCR:

    • Request-Type: Selecciona el tipo de CCR:
      • 1 — INITIAL_REQUEST - Inicia una nueva sesión
      • 2 — UPDATE_REQUEST - Re-autorización en medio de la sesión
      • 3 — TERMINATION_REQUEST - Finaliza la sesión e informa el uso
      • 4 — EVENT_REQUEST - Evento único (SMS, evento inmediato)
    • Request-Number: Comienza en 1, incrementa para cada solicitud en la misma sesión
  3. Pruebas de Sesión:

    • ID de Llamada: Identificador único generado automáticamente para correlación
    • Haz clic en "Nuevo ID" para generar un nuevo ID de Llamada para una nueva prueba
    • Mantén el mismo ID de Llamada para simular una sesión completa:
      • Primera solicitud: INITIAL_REQUEST (tipo 1, número 1)
      • En medio de la sesión: UPDATE_REQUEST (tipo 2, número 2, 3, 4...)
      • Solicitud final: TERMINATION_REQUEST (tipo 3, número N+1)
  4. Opciones Avanzadas:

    • Destination-Host: Dirige a un nodo OCS específico (opcional)
    • Nombre de Usuario: Sobrescribe el identificador del suscriptor (opcional)
  5. Ejecutar y Revisar:

    • Haz clic en "Ejecutar CCR" para enviar la solicitud
    • Ver la respuesta completa de CCA con todos los AVPs
    • Verifica el código de resultado, unidades concedidas y tiempo de validez
    • La última marca de tiempo de ejecución se muestra en la esquina superior derecha

Casos de Uso

  • Pruebas de Conectividad OCS: Verifica la conexión y autenticación de Diámetro Ro
  • Lógica de Control de Crédito: Prueba escenarios de asignación, consumo y agotamiento de crédito
  • Pruebas de Flujo de Sesión: Simula el ciclo de vida completo de la llamada (INICIAL → ACTUALIZACIÓN → TERMINACIÓN)
  • Validación de Tarifas: Verifica las tarifas de carga correctas para diferentes rangos de números
  • Pruebas de Failover: Prueba la redundancia de OCS dirigiendo a un Destination-Host específico
  • Depuración de Integración: Soluciona problemas de integración OCS con inspección detallada de AVP
  • Preparación para Pruebas de Carga: Valida el comportamiento de OCS antes de pruebas de carga
  • Exclusión de Números de Emergencia: Verifica que los números de emergencia eviten la carga correctamente

Consejos

  • Usa el mismo ID de Llamada con números de Solicitud incrementales para probar la continuidad de la sesión
  • Monitorea los registros de OCS simultáneamente para correlacionar solicitudes de prueba
  • Prueba solicitudes de ACTUALIZACIÓN para verificar la lógica de re-autorización en medio de la sesión
  • Verifica que las solicitudes de TERMINACIÓN cierren adecuadamente las sesiones y prevengan fugas
  • Prueba el agotamiento de crédito enviando solicitudes de ACTUALIZACIÓN después de consumir unidades concedidas

Pruebas de Interfaz Sh

Prueba operaciones de Solicitud de Datos de Usuario (UDR) de Diámetro Sh para recuperar datos de perfil de suscriptor del HSS.

Acceso: Navega a /sh_test en el Panel de Control

Vista de Prueba Sh

Características

  • Múltiples Referencias de Datos: Consulta más de 20 tipos diferentes de datos de suscriptor
  • Consultas HSS Reales: Solicitudes de Diámetro Sh en vivo a tu HSS configurado
  • Visualización Completa de Respuestas: Ver datos XML completos del suscriptor y AVPs
  • Seguimiento de Sesiones: Muestra el nombre de host del HSS, dominio y ID de sesión
  • Manejo de Errores: Visualización clara de códigos de resultado de Diámetro y condiciones de error

Cómo Usar

  1. Ingresa Identidad Pública:

    • Identidad Pública: La Identidad Pública IMS del suscriptor
    • Formato: sip:61400123456@ims.mncXXX.mccXXX.3gppnetwork.org
    • También se puede usar el formato tel:+61400123456
  2. Selecciona Referencia de Datos: Elige el tipo de datos de suscriptor a recuperar:

    • RepositoryData (0): Perfil completo del suscriptor
    • IMSPublicIdentity (10): Lista de identidades públicas
    • IMSUserState (11): Estado de registración
    • S-CSCFName (12): S-CSCF asignado
    • InitialFilterCriteria (13): iFC desencadenantes para servidores de aplicaciones
    • LocationInformation (14): Ubicación actual
    • ChargingInformation (16): Direcciones P-Carga
    • MSISDN (17): Número de teléfono
    • IMSI (32): Identidad Internacional de Suscriptor Móvil
    • IMSPrivateUserIdentity (33): Identidad privada del usuario
    • Y muchos más...
  3. Ejecutar y Revisar:

    • Haz clic en "Obtener Datos SH" para enviar la solicitud UDR
    • Ver la respuesta completa de User-Data-Answer (UDA)
    • Verifica el XML del perfil del suscriptor, datos de servicio y reglas de iFC
    • Los metadatos de sesión muestran qué HSS respondió

Casos de Uso

  • Verificación de Suscriptores: Confirma que el suscriptor esté provisionado en el HSS
  • Depuración de iFC: Revisa los Criterios de Filtro Inicial y puntos de activación
  • Solución de Problemas de Registración: Verifica el estado del usuario y la asignación de S-CSCF
  • Configuración de Carga: Verifica las Direcciones de Función de Carga P
  • Pruebas de Conectividad HSS: Valida la conexión de Diámetro Sh
  • Validación de Perfiles: Asegúrate de que se haya asignado el perfil de servicio correcto
  • Pruebas de Integración: Prueba la integración del HSS después de cambios en la provisión
  • Análisis de Roaming: Verifica información de ubicación y red de servicio

Consejos

  • Usa IMSPublicIdentity (10) para ver todos los alias de un suscriptor
  • Usa RepositoryData (0) para obtener el perfil completo del suscriptor en una sola consulta
  • Verifica IMSUserState (11) para confirmar si un suscriptor está registrado
  • InitialFilterCriteria (13) muestra qué servidores de aplicaciones se activarán
  • El ID de sesión se puede usar para correlacionar consultas en los registros del HSS
  • Las respuestas de error incluyen códigos de resultado de Diámetro (por ejemplo, 5001 = Usuario Desconocido)

Pruebas de Traducción de Números

Prueba reglas y formatos de traducción de números sin realizar llamadas reales.

Acceso: Navega a /translate en el Panel de Control

Vista de Traducción de Números

Características

  • Traducción en Tiempo Real: Traducción automática a medida que escribes
  • Soporte para Códigos de País: Prueba diferentes contextos de códigos de país
  • Consciente de Disposición: Aplica diferentes reglas según la disposición de la llamada
  • Resultados en Vivo: Retroalimentación inmediata con el número traducido
  • Información de Depuración: Ver valores de retorno en bruto para solucionar problemas

Cómo Usar

  1. Configura Parámetros:

    • Código de País: El contexto de marcado (por ejemplo, AU, US, NZ)
      • Por defecto, se configura el código de país en config/runtime.exs
      • Acepta formatos: AU, :AU, au
    • Número de Teléfono: El número a traducir
      • Ejemplos: +61400111222, 0400111222, 61400111222
    • Disposición: (Opcional) Contexto de llamada para reglas condicionales
      • Ejemplos: originate, route, emergency
  2. Probar Traducción:

    • Ingresa valores en el formulario
    • La traducción se ejecuta automáticamente a medida que escribes
    • O haz clic en "Traducir" para activar manualmente
    • Ver el resultado traducido de inmediato
  3. Revisar Resultados:

    • Traducido: Muestra el número de salida formateado
    • Error: Muestra errores de validación o fallos de traducción
    • Valor de retorno en bruto (depuración): Muestra la tupla completa de Elixir para depuración

Casos de Uso

  • Desarrollo de Dialplan: Prueba reglas de formato de números antes de la implementación
  • Validación de Formato: Verifica que la conversión E.164 esté funcionando correctamente
  • Pruebas de Código de País: Asegúrate de que se manejen correctamente los prefijos internacionales
  • Detección de Números de Emergencia: Verifica que los números de emergencia se identifiquen correctamente
  • Manejo de Códigos Cortos: Prueba códigos de servicio especiales (correo de voz, etc.)
  • Preparación de Troncos: Formatea números correctamente para requisitos de troncos SIP
  • Lógica de Disposición: Prueba diferentes reglas para escenarios MO vs MT
  • Solución de Problemas de Traducción: Soluciona por qué números específicos fallan en el enrutamiento

Consejos

  • Prueba tanto el formato local (0400111222) como el formato internacional (+61400111222)
  • Verifica que los números de emergencia (000, 112) se detecten correctamente
  • Usa el campo de disposición para probar diferentes escenarios de llamada (MO, MT, emergencia)
  • Verifica que los códigos cortos y los números internos se manejen adecuadamente
  • La salida de depuración muestra el valor de retorno en bruto - útil para investigar problemas
  • Prueba casos límite como ceros a la izquierda, prefijos internacionales y caracteres especiales

Gestión de Correo de Voz

Gestiona y escucha los mensajes de correo de voz almacenados en el sistema.

Acceso: Navega a /voicemail en el Panel de Control

Vista de Correo de Voz

Características

  • Lista Completa de Correos de Voz: Ver todos los mensajes de correo de voz en todos los buzones
  • Reproducción en el Navegador: Escucha grabaciones de correo de voz directamente en la interfaz web
  • Detalles del Mensaje: Ver nombre de usuario, UUID, marcas de tiempo, rutas de archivos y metadatos
  • Funcionalidad de Eliminación: Elimina mensajes de correo de voz individuales
  • Auto-Actualización: Botón de actualización para recargar los últimos datos de correo de voz
  • Columnas Dinámicas: Muestra automáticamente todos los campos de la base de datos disponibles

Cómo Usar

  1. Ver Lista de Correos de Voz:

    • La página se carga automáticamente con todos los registros de correo de voz
    • La tabla muestra todos los campos de la base de datos de correo de voz
    • Las marcas de tiempo se formatean automáticamente a partir de valores de época
    • Las rutas de archivos se acortan para mejorar la legibilidad
  2. Escuchar Mensajes:

    • Haz clic en el botón "▶ Reproducir" junto a cualquier correo de voz
    • Aparece un reproductor de audio con controles (reproducir, pausar, buscar, volumen)
    • Soporta formatos WAV, MP3 y OGG
    • Haz clic en "Detener" para cerrar el reproductor de audio
  3. Eliminar Mensajes:

    • Haz clic en el botón "Eliminar" para quitar un correo de voz
    • Un aviso de confirmación previene eliminaciones accidentales
    • La página se actualiza automáticamente después de una eliminación exitosa
  4. Actualizar Datos:

    • Haz clic en el botón "Actualizar" en la esquina superior derecha para recargar la lista de correos de voz
    • Útil después de que se dejen nuevos correos de voz

Detalles del Mensaje Mostrados

La tabla muestra dinámicamente todos los campos disponibles, típicamente incluyendo:

  • Nombre de Usuario: Propietario del buzón
  • UUID: Identificador único del mensaje
  • Época Creada: Cuando se dejó el mensaje (formateado automáticamente a fecha/hora legible)
  • Época Leída: Cuando se accedió al mensaje (si corresponde)
  • Ruta de Archivo: Ubicación del archivo de audio
  • Metadatos adicionales de la base de datos de correo de voz

Casos de Uso

  • Soporte a Suscriptores: Escucha mensajes de correo de voz para solucionar problemas
  • Pruebas de Entrega de Correo de Voz: Verifica que los correos de voz se almacenen correctamente
  • Gestión de Mensajes: Limpia mensajes de correo de voz antiguos o de prueba
  • Solución de Problemas de Grabación: Verifica rutas de archivos y confirma que existan archivos de audio
  • Mantenimiento de Buzones: Monitorea almacenamiento y uso de correo de voz
  • Aseguramiento de Calidad: Revisa mensajes grabados por calidad de audio

Consejos

  • Las rutas de archivos se acortan automáticamente para mostrar solo la porción relevante
  • Las marcas de tiempo en época se convierten automáticamente a formato legible por humanos
  • Una base de datos de correo de voz vacía muestra "No se encontraron registros de correo de voz"
  • La reproducción de audio utiliza el elemento de audio HTML5 - soportado en todos los navegadores modernos
  • La confirmación de eliminación previene la eliminación accidental de mensajes importantes

Gestión de Prompts TTS

Gestiona los prompts de audio generados por Texto a Voz (TTS) utilizados en todo el sistema.

Acceso: Navega a /prompts en el Panel de Control

Vista de Prompts

Características

  • Visualización de Configuración de Prompts: Ver voz TTS actual, formato de respuesta e instrucciones
  • Estado de Grabación: Ver qué prompts existen y cuáles faltan
  • Detalles del Archivo: Ver tamaño de archivo, tiempo de modificación y ruta para cada prompt
  • Reproducción en el Navegador: Escuchar prompts directamente en la interfaz web
  • Generar Faltantes: Crear automáticamente todos los archivos de prompt que faltan
  • Re-grabar Individual: Regenerar un prompt específico con configuraciones actualizadas
  • Re-grabar Todos: Regenerar todos los prompts (útil después de cambiar voz o configuraciones)

Cómo Usar

  1. Revisar Configuración de Prompts:

    • Voz: Voz TTS que se está utilizando (por ejemplo, alloy, nova, shimmer)
    • Formato de Respuesta: Formato de audio (por ejemplo, wav, mp3, opus)
    • Instrucciones: Instrucciones especiales pasadas al motor TTS
  2. Verificar Estado de Grabación:

    • Texto: El texto del prompt que se va a pronunciar
    • Ruta Relativa: Dónde se almacena el archivo de audio
    • Existe: Verde "Sí" si el archivo existe, Amarillo "No" si falta
    • Tamaño: Tamaño del archivo en bytes/KiB/MiB
    • Modificado: Marca de tiempo de la última modificación
  3. Generar Prompts:

    • Generar Faltantes: Crea solo los prompts que aún no existen
      • Útil para la configuración inicial o después de agregar nuevos prompts
    • Re-grabar Todos: Regenera todos los prompts independientemente de su existencia
      • Útil después de cambiar voz, formato o instrucciones
      • Usar con precaución ya que regenera todo
  4. Gestionar Prompts Individuales:

    • ▶ Reproducir: Escuchar el prompt (solo habilitado si el archivo existe)
    • 🔄 Re-grabar: Regenera solo este prompt
      • Útil si un prompt suena incorrecto
      • Usa la voz y configuraciones actuales
  5. Escuchar Prompts:

    • Haz clic en "▶ Reproducir" para escuchar el prompt
    • Aparece un reproductor de audio en la parte inferior con controles completos
    • Haz clic en "Detener" para cerrar el reproductor

Configuración de Prompts

Los prompts se configuran en la configuración de tu aplicación:

config :tas, :prompts,
voice: "nova",
response_format: "wav",
instructions: "Habla claramente y profesionalmente.",
recordings: [
%{path: "/sounds/en/us/callie/voicemail/vm-enter_id.wav",
text: "Por favor, ingresa tu ID de buzón seguido de la almohadilla"},
# ... más prompts
]

Casos de Uso

  • Configuración Inicial: Genera todos los prompts después de la instalación del sistema
  • Cambios de Voz: Re-graba todos los prompts con una voz TTS diferente
  • Mejora de Calidad: Corrige prompts individuales que no suenan bien
  • Actualizaciones de Formato: Regenera prompts en un formato de audio diferente (wav → mp3)
  • Actualizaciones de Texto: Re-graba después de cambiar el texto del prompt en la configuración
  • Pruebas de TTS: Previsualiza cómo sonarán los prompts antes de la implementación
  • Solución de Problemas de Reproducción: Verifica que los archivos de prompt existan y sean accesibles
  • Gestión de Almacenamiento: Verifica tamaños de archivos y gestiona el uso del disco

Consejos

  • Usa "Generar Faltantes" para la configuración inicial - no sobrescribirá los prompts existentes
  • Usa "Re-grabar Todos" después de cambiar voz o formato en la configuración
  • La "Re-grabación" individual es útil para iterar sobre prompts específicos
  • Escucha los prompts antes de la implementación para asegurar calidad
  • Los formatos de respuesta más grandes (wav) tienen mejor calidad pero utilizan más espacio en disco
  • El campo de instrucciones puede guiar al motor TTS sobre tono y ritmo
  • La re-grabación puede tardar tiempo si tienes muchos prompts - ten paciencia
  • Los prompts se almacenan en el directorio de sonidos de FreeSWITCH para fácil acceso

Plantillas XML del Dialplan

Ver e inspeccionar las plantillas XML del dialplan de FreeSWITCH utilizadas para el enrutamiento de llamadas.

Acceso: Navega a /routing en el Panel de Control

Plantillas del Dialplan

Características

  • Lista de Plantillas: Ver todas las plantillas XML de archivos del directorio priv/templates/
  • Detalles del Archivo: Ver nombre de archivo y marca de tiempo de la última modificación para cada plantilla
  • Resaltado de Sintaxis: Visualización de XML codificada por colores para una fácil lectura
    • Etiquetas en teal
    • Atributos en azul claro
    • Valores en naranja/tan
    • Comentarios en verde
  • Vista Expandible: Haz clic en cualquier plantilla para ver su contenido XML completo
  • Vista Solo Lectura: Inspección segura sin riesgo de modificación accidental
  • Contenido Desplazable: Plantillas grandes se desplazan dentro de un contenedor de altura fija (máx. 600px)

Cómo Usar

  1. Ver Lista de Plantillas:

    • La página se carga con todos los archivos .xml del directorio de plantillas
    • Ordenados alfabéticamente por nombre de archivo
    • Muestra la marca de tiempo de modificación para cada archivo
  2. Inspeccionar Plantilla:

    • Haz clic en cualquier fila para expandir y ver el contenido XML
    • La plantilla se muestra con resaltado de sintaxis
    • Haz clic nuevamente para colapsar
  3. Leer Contenido XML:

    • Etiquetas (teal): Nombres de elementos XML como <extension>, <condition>
    • Atributos (azul claro): Nombres de atributos como name=, field=
    • Valores (naranja): Valores de atributos como "public", "destination_number"
    • Comentarios (verde): Comentarios XML <!-- ... -->

Casos de Uso

  • Revisar Lógica del Dialplan: Inspeccionar reglas de enrutamiento y plantillas de flujo de llamadas
  • Solución de Problemas de Enrutamiento de Llamadas: Entender qué plantillas se utilizan para diferentes tipos de llamadas
  • Verificar Sintaxis de Plantillas: Comprobar la estructura XML antes de la implementación
  • Capacitación y Documentación: Compartir contenidos de plantillas con miembros del equipo
  • Auditoría de Cambios: Comparar marcas de tiempo de modificación para rastrear actualizaciones
  • Desarrollo de Plantillas: Referenciar plantillas existentes al crear nuevas

Consejos

  • Las plantillas se cargan desde priv/templates/ dentro de la aplicación TAS
  • Solo se muestran archivos con extensión .xml
  • Las plantillas son de solo lectura a través de la interfaz web
  • Las marcas de tiempo de modificación ayudan a identificar cambios recientes
  • Usa esta vista para verificar que las plantillas coincidan con tus expectativas de dialplan
  • El resaltado de sintaxis hace que XML complejo sea más fácil de analizar visualmente
  • Combina con la vista /logs para correlacionar el comportamiento de enrutamiento con plantillas

Detalles Técnicos

  • Ubicación: Plantillas almacenadas en el directorio priv/templates/
  • Formato: Formato XML del dialplan de FreeSWITCH
  • Extensión de Archivo: Solo se listan archivos .xml
  • Ordenamiento: Alfabético por nombre de archivo
  • Resaltado de Sintaxis: Colorización del lado del cliente usando patrones regex
  • Altura Máxima de Visualización: 600px con desplazamiento para archivos grandes

Ejecutador de Comandos ESL

Ejecuta comandos de FreeSWITCH Event Socket Layer (ESL) directamente desde la interfaz web.

Acceso: Navega a /command en el Panel de Control

Ejecutador de Comandos ESL

Características

  • Ejecución de Comandos: Ejecuta cualquier comando API de ESL/FreeSWITCH
  • Salida en Vivo: Ve los resultados de los comandos en tiempo real
  • Historial de Comandos: Desplegable de comandos recientes (últimos 10 comandos)
  • Listo para Autocompletar: Entrada en monoespaciado para una entrada precisa de comandos
  • Manejo de Errores: Visualización clara de errores y excepciones de comandos
  • Sin Auto-Ejecución: Seleccionar del historial llena la entrada pero requiere clic explícito en "Ejecutar"

Cómo Usar

  1. Ingresa Comando:

    • Escribe el comando ESL en el cuadro de entrada
    • Ejemplos:
      • status - Muestra el estado de FreeSWITCH
      • show channels - Lista llamadas activas
      • uuid_dump <uuid> - Vuelca todas las variables para una llamada
      • sofia status - Muestra el estado del perfil SIP
      • reloadxml - Recarga el dialplan XML
      • version - Muestra la versión de FreeSWITCH
  2. Ejecutar Comando:

    • Haz clic en el botón "Ejecutar" para ejecutar
    • El botón muestra "Ejecutando…" mientras se ejecuta
    • No se pueden ejecutar múltiples comandos simultáneamente
  3. Ver Salida:

    • Los resultados aparecen en la sección "Salida" a continuación
    • Comandos exitosos muestran la respuesta en bruto
    • Errores precedidos por "ERROR:"
    • La salida es desplazable con una altura máxima de 600px
    • Fuente monoespaciada para datos alineados
  4. Usar Historial de Comandos:

    • Los comandos recientes aparecen en el desplegable después de la primera ejecución
    • Selecciona del desplegable "Reciente:" para llenar el campo de entrada
    • El historial mantiene los últimos 10 comandos únicos
    • El comando más reciente está en la parte superior
    • Seleccionar del historial NO ejecuta automáticamente (característica de seguridad)

Comandos Comunes

ComandoDescripciónSalida de Ejemplo
statusEstado del sistema y tiempo de actividadInformación de FreeSWITCH en ejecución
show channelsLista todas las llamadas activasLista de canales o "0 total"
show callsResumen de llamadas activasResumen del conteo de llamadas
uuid_dump <uuid>Todas las variables para una llamadaVolcado completo de variables
uuid_kill <uuid>Cuelga una llamada específica"+OK" o error
sofia statusEstado del perfil SIPLista de perfiles y estados
sofia status profile <name>Detalles de perfil específicoConteo de registraciones, etc.
reloadxmlRecarga el dialplan XMLConfirmación "+OK"
versionInformación de versión de FreeSWITCHCadena de versión
global_getvar <var>Obtener variable globalValor de la variable
api helpLista de comandos disponiblesReferencia de comandos

Casos de Uso

  • Depuración de Llamadas: Obtén información detallada sobre llamadas activas con uuid_dump
  • Estado del Sistema: Verifica la salud de FreeSWITCH con status y show calls
  • Solución de Problemas SIP: Inspecciona perfiles SIP con sofia status
  • Recarga del Dialplan: Aplica cambios de configuración con reloadxml
  • Acciones de Emergencia: Cuelga llamadas atascadas con uuid_kill
  • Inspección de Variables: Verifica variables globales o de canal

Solución de Problemas

Suscriptores No Mostrados

  • Verifica que OmniTAS esté en ejecución
  • Comprueba que el perfil Sofia esté activo: sofia status profile internal
  • Verifica que la ruta de la base de datos en la configuración coincida con la ubicación real de la base de datos

Registros CDR No Aparecen

  • Confirma que el módulo CDR de OmniTAS esté cargado
  • Verifica que la base de datos CDR exista en la ruta configurada
  • Verifica la configuración del módulo CDR en OmniTAS

Consideraciones de Rendimiento

  • Bases de datos CDR grandes (>1M registros) pueden requerir indexación adicional para un rendimiento óptimo
  • Considera archivar registros CDR antiguos periódicamente
  • Las consultas de registración de suscriptores son típicamente rápidas ya que la base de datos de registración es pequeña

Configuración

Control de Acceso

El Panel de Control debe implementarse detrás de controles de acceso apropiados (firewall, VPN, autenticación) ya que proporciona visibilidad sobre la actividad de los suscriptores y los registros de llamadas.