Saltar al contenido principal

Puerta de enlace OmniMessage SMPP

Descripción del Producto

La Puerta de enlace OmniMessage SMPP es uno de varios protocolos frontend para la plataforma OmniMessage.

Permite la mensajería SMS conectando su infraestructura a redes móviles utilizando el protocolo SMPP (Protocolo de Mensajes Cortos de Par a Par) estándar de la industria.

Importante: Esta puerta de enlace es un frontend de protocolo sin estado. Al igual que otros frontends de OmniMessage (Diameter, MAP, IMS), simplemente traduce mensajes de protocolo hacia/desde la API de OmniMessage para el enrutamiento y procesamiento.

Capacidades Clave

  • Mensajería SMPP Bidireccional: Enviar y recibir mensajes SMS a través de SMPP como un SMSc o ESME (Cliente o Servidor)
  • Conexiones Múltiples: Conectar con múltiples operadores simultáneamente
  • Alto Rendimiento: Manejar miles de mensajes por segundo
  • Caché de Mensajes Local: Continuar aceptando mensajes durante interrupciones de la API con reintentos automáticos
  • Monitoreo: Métricas de Prometheus integradas y panel web
  • Confiabilidad: Reconexión automática y reintentos 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 la puerta de enlace
  • Monitorear el tráfico de mensajes
  • Gestionar conexiones SMPP
  • Solucionar problemas

Inicio Rápido

Configuración Inicial

  1. Acceder al Panel Web: https://your-server:8087
  2. Verificar el Estado del Sistema: Navegar a SMPP → Estado en Vivo
  3. Revisar la Configuración: Ver CONFIGURATION.md
  4. Configurar Monitoreo: Ver MONITORING.md

Operaciones Diarias

Tareas operativas comunes:

TareaAcción
Verificar el estado de la conexiónInterfaz Web → SMPP → Estado en Vivo
Ver tráfico de mensajesInterfaz Web → Cola
Monitorear la salud del sistemaInterfaz Web → Registros o métricas de Prometheus
Agregar/modificar conexionesInterfaz Web → SMPP → Pares Cliente/Servidor

Ver USAGE.md para procedimientos detallados.

Arquitectura del Sistema

La Puerta de enlace SMPP es un traductor de protocolo sin estado que opera como parte de la plataforma OmniMessage:

Conceptos Clave:

  • Puerta de enlace SMPP: Traductor de protocolo únicamente - 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: La puerta de enlace recupera mensajes para enviar desde OmniMessage y reporta el estado de entrega

Integración de OmniMessage

La Puerta de enlace SMPP de OmniMessage es un frontend de protocolo para la plataforma de mensajer��a OmniMessage. Es uno de varios tipos de frontend idénticos que se interfazan con redes móviles utilizando diferentes protocolos:

FrontendProtocoloPropósito
Puerta de enlace SMPPSMPP (SMS)Mensajería SMS a través del protocolo SMPP
Puerta de enlace DiameterDiameterMensajería basada en IMS
Puerta de enlace MAPMAPSeñalización de red móvil
Puerta de enlace IMSIMSSubsistema Multimedia IP

Todos los frontends comparten la misma arquitectura: Son traductores de protocolo sin estado que delegan toda la inteligencia al Core de OmniMessage.

Cómo Funciona

Flujo de Mensajes Entrantes (Sistema Externo → Operador):

Flujo de Mensajes Salientes (Operador → Puerta de enlace SMPP):

Lo que Hace la Puerta de Enlace

  • 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 sondeo de API
  • Convierte el formato de OmniMessage de nuevo a PDUs SMPP
  • Reporta recibos de entrega de vuelta a OmniMessage

Lo que la Puerta de Enlace NO Hace

  • ❌ No almacenamiento o 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

La puerta de enlace se comunica con el Core de OmniMessage 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 pendientes
  • PUT /api/messages/<id>/delivery_status - Reportar recibo de entrega
  • GET /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)

La puerta de enlace 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:

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

TareaComando/Ubicación
Iniciar puerta de enlacesystemctl start omnimessage-smpp
Detener puerta de enlacesystemctl stop omnimessage-smpp
Reiniciar puerta de enlacesystemctl restart omnimessage-smpp
Ver registrosjournalctl -u omnimessage-smpp -f
Verificar estadoInterfaz Web → SMPP → Estado en Vivo
Ver métricascurl http://localhost:4000/metrics
Editar configuración/opt/omnimessage-smpp/config/runtime.exs

Archivos Importantes

ArchivoPropósito
/opt/omnimessage-smpp/config/runtime.exsConfiguración principal
/opt/omnimessage-smpp/priv/cert/Certificados SSL
/var/log/omnimessage-smpp/Registros de la aplicación
/etc/systemd/system/omnimessage-smpp.serviceDefinición del servicio

Notas de Seguridad

  • Interfaz Web: Utiliza HTTPS con sus 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

  1. Revisar CONFIGURATION.md para todas las opciones de configuración
  2. Configurar MONITORING.md con Prometheus
  3. Familiarizarse con USAGE.md para tareas diarias
  4. Marcar TROUBLESHOOTING.md para referencia rápida
  5. Revisar GLOSSARY.md para terminología