OmniMessage SMPP Gateway - Guía de Operaciones
¿Qué es el OmniMessage SMPP Gateway?
El OmniMessage SMPP Gateway es uno de varios protocolos frontend para la plataforma de telecomunicaciones OmniMessage. Permite el envío de mensajes SMS al conectar tu infraestructura a redes móviles utilizando el protocolo SMPP (Short Message Peer-to-Peer) estándar de la industria.
Importante: Este gateway es un frontend de protocolo sin estado. No tiene lógica de negocio, procesamiento de mensajes ni capacidades de almacenamiento. Toda la inteligencia proviene de OmniMessage, accesible a través de la API REST. Al igual que otros frontends de OmniMessage (Diameter, MAP, IMS), simplemente traduce mensajes de protocolo hacia/desde el formato interno de OmniMessage.
Capacidades Clave
- Mensajería SMPP Bidireccional: Enviar y recibir mensajes SMS a través de SMPP
- Conexiones Múltiples: Conectar a múltiples operadores simultáneamente
- Alto Rendimiento: Manejar miles de mensajes por segundo
- Monitoreo: Métricas de Prometheus integradas y panel web
- Confiabilidad: Reconexión automática y reintento de mensajes
- Operación Sin Estado: Todo el procesamiento delegado al backend de OmniMessage
¿Quién Debe Usar Esta Guía?
Esta guía es para equipos de operaciones responsables de:
- Instalar y configurar el gateway
- Monitorear el tráfico de mensajes
- Gestionar conexiones SMPP
- Solucionar problemas
Inicio Rápido
Configuración Inicial
- Acceder al Panel Web:
https://your-server:8087 - Verificar el Estado del Sistema: Navegar a SMPP → Estado en Vivo
- Revisar la Configuración: Ver CONFIGURATION.md
- Configurar Monitoreo: Ver MONITORING.md
Operaciones Diarias
Tareas operativas comunes:
| Tarea | Acción |
|---|---|
| Verificar estado de conexión | Interfaz Web → SMPP → Estado en Vivo |
| Ver tráfico de mensajes | Interfaz Web → Cola |
| Monitorear salud del sistema | Interfaz Web → Registros o métricas de Prometheus |
| Agregar/modificar conexiones | Interfaz Web → SMPP → Clientes/Servidores |
Ver OPERATIONS.md para procedimientos detallados.
Arquitectura del Sistema
El SMPP Gateway es un traductor de protocolo sin estado que opera como parte de la plataforma OmniMessage:
Conceptos Clave:
- SMPP Gateway: Solo traductor de protocolo - sin procesamiento de mensajes, almacenamiento o lógica de negocio
- OmniMessage: Plataforma central que maneja toda la lógica de mensajería, enrutamiento y almacenamiento
- Comunicación API: El gateway recupera mensajes a enviar de OmniMessage y reporta el estado de entrega
Integración con OmniMessage
El OmniMessage SMPP Gateway es un frontend de protocolo para la plataforma de mensajería OmniMessage. Es uno de varios tipos de frontend idénticos que interfazan con redes móviles utilizando diferentes protocolos:
| Frontend | Protocolo | Propósito |
|---|---|---|
| SMPP Gateway | SMPP (SMS) | Mensajería SMS a través del protocolo SMPP |
| Diameter Gateway | Diameter | Mensajería basada en IMS |
| MAP Gateway | MAP | Señalización de red móvil |
| IMS Gateway | IMS | Subsistema Multimedia IP |
Todos los frontends comparten la misma arquitectura: Son traductores de protocolo sin estado que delegan toda la inteligencia al OmniMessage Core.
Cómo Funciona
Flujo de Mensajes Entrantes (Sistema Externo → Operador):
Flujo de Mensajes Salientes (Operador → SMPP Gateway):
Lo Que Hace el Gateway
- Recibe PDUs SMPP de operadores y clientes externos
- Analiza y valida mensajes de protocolo SMPP
- Traduce el formato SMPP al formato interno de OmniMessage
- Llama a la API REST de OmniMessage con los datos del mensaje
- Recibe mensajes de OmniMessage a través de polling de API
- Convierte el formato de OmniMessage de vuelta a PDUs SMPP
- Reporta recibos de entrega de vuelta a OmniMessage
Lo Que NO Hace el Gateway
- ❌ No almacenamiento ni persistencia de mensajes
- ❌ No decisiones de enrutamiento (OmniMessage decide)
- ❌ No limitación de tasa (OmniMessage aplica)
- ❌ No validación de números (OmniMessage valida)
- ❌ No seguimiento de estado (OmniMessage mantiene el estado)
- ❌ No lógica de negocio (OmniMessage maneja toda la lógica)
API REST de OmniMessage
El gateway se comunica con OmniMessage Core a través de la API REST:
Configuración:
config :omnimessage_smpp,
api_base_url: "https://omnimessage-core.example.com:8443"
Operaciones Clave de la API:
GET /api/message_queue?destination_smsc=<bind_name>- Recuperar mensajes pendientesPUT /api/messages/<id>/delivery_status- Reportar recibo de entregaGET /api/system/health- Verificación de salud
Formato del Mensaje: Los mensajes en la cola contienen toda la información necesaria para la entrega:
- Número de destino
- Cuerpo del mensaje
- Número de origen
- Prioridad
- Período de validez
- SMSC objetivo (nombre de enlace del operador)
El gateway simplemente recupera estos, los formatea como SMPP, los envía al operador y reporta el estado.
Estructura de la Documentación
Esta documentación está organizada en las siguientes guías:
- CONFIGURATION.md - Referencia completa de configuración con todos los parámetros explicados
- MONITORING.md - Guía de métricas de Prometheus y alertas
- OPERATIONS.md - Procedimientos operativos diarios
- TROUBLESHOOTING.md - Problemas comunes y soluciones
- GLOSSARY.md - Términos y definiciones
Puntos de Acceso
Panel Web
- URL:
https://your-server:8087 - Características:
- Ver estado de conexión SMPP
- Monitorear cola de mensajes
- Ver registros del sistema
- Configurar pares SMPP
- Acceder a la documentación
Métricas de Prometheus
- URL:
http://your-server:4000/metrics - Formato: Formato de texto de Prometheus
- Uso: Integración con Grafana/Prometheus
Endpoint de API
- URL: Configurado en
API_BASE_URL - Propósito: Integración del backend de la cola de mensajes
Referencia Rápida
Tareas Comunes
| Tarea | Comando/Ubicación |
|---|---|
| Iniciar gateway | systemctl start omnimessage-smpp |
| Detener gateway | systemctl stop omnimessage-smpp |
| Reiniciar gateway | systemctl restart omnimessage-smpp |
| Ver registros | journalctl -u omnimessage-smpp -f |
| Verificar estado | Interfaz Web → SMPP → Estado en Vivo |
| Ver métricas | curl http://localhost:4000/metrics |
| Editar configuración | /opt/omnimessage-smpp/config/runtime.exs |
Archivos Importantes
| Archivo | Propósito |
|---|---|
/opt/omnimessage-smpp/config/runtime.exs | Configuración principal |
/opt/omnimessage-smpp/priv/cert/ | Certificados SSL |
/var/log/omnimessage-smpp/ | Registros de la aplicación |
/etc/systemd/system/omnimessage-smpp.service | Definición del servicio |
Notas de Seguridad
- Interfaz Web: Usa HTTPS con tus certificados SSL
- Comunicación API: Puede verificar SSL o usar certificados autofirmados
- SMPP: Protocolo de texto plano - usar seguridad de red
- Credenciales: Almacenadas en el archivo de configuración - proteger el acceso
Próximos Pasos
- Revisa CONFIGURATION.md para todas las opciones de configuración
- Configura MONITORING.md con Prometheus
- Familiarízate con OPERATIONS.md para tareas diarias
- Marca TROUBLESHOOTING.md para referencia rápida
- Revisa GLOSSARY.md para terminología