Pular para o conteúdo principal

Gateway OmniMessage SMPP

Visão Geral do Produto

O Gateway OmniMessage SMPP é um dos vários protocolos de frontend para a plataforma OmniMessage.

Ele permite a troca de mensagens SMS conectando sua infraestrutura a redes móveis usando o protocolo SMPP (Short Message Peer-to-Peer) padrão da indústria.

Importante: Este gateway é um frontend de protocolo sem estado. Como outros frontends do OmniMessage (Diameter, MAP, IMS), ele simplesmente traduz mensagens de protocolo para/de a API do OmniMessage para roteamento e processamento.

Principais Capacidades

  • Mensagens SMPP Bidirecionais: Enviar e receber mensagens SMS via SMPP como um SMSc ou ESME (Cliente ou Servidor)
  • Múltiplas Conexões: Conectar-se a/de vários operadores simultaneamente
  • Alto Desempenho: Processar milhares de mensagens por segundo
  • Cache Local de Mensagens: Continuar aceitando mensagens durante interrupções da API com tentativa automática
  • Monitoramento: Métricas Prometheus integradas e painel da web
  • Confiabilidade: Reconexão automática e tentativa de reenvio de mensagens
  • Operação Sem Estado: Todo o processamento delegado ao backend do OmniMessage

Quem Deve Usar Este Guia?

Este guia é para equipes de operações responsáveis por:

  • Instalar e configurar o gateway
  • Monitorar o tráfego de mensagens
  • Gerenciar conexões SMPP
  • Solucionar problemas

Início Rápido

Configuração Inicial

  1. Acessar o Painel da Web: https://your-server:8087
  2. Verificar o Status do Sistema: Navegar para SMPP → Status Ao Vivo
  3. Revisar Configuração: Veja CONFIGURATION.md
  4. Configurar Monitoramento: Veja MONITORING.md

Operações Diárias

Tarefas operacionais comuns:

TarefaAção
Verificar status da conexãoUI da Web → SMPP → Status Ao Vivo
Visualizar tráfego de mensagensUI da Web → Fila
Monitorar saúde do sistemaUI da Web → Logs ou métricas Prometheus
Adicionar/modificar conexõesUI da Web → SMPP → Pares Cliente/Servidor

Veja USAGE.md para procedimentos detalhados.

Arquitetura do Sistema

O Gateway SMPP é um tradutor de protocolo sem estado que opera como parte da plataforma OmniMessage:

Conceitos Chave:

  • Gateway SMPP: Tradutor de protocolo apenas - sem processamento de mensagens, armazenamento ou lógica de negócios
  • OmniMessage: Plataforma central que lida com toda a lógica de mensagens, roteamento e armazenamento
  • Comunicação API: O gateway recupera mensagens para enviar do OmniMessage e relata o status de entrega

Integração OmniMessage

O Gateway OmniMessage SMPP é um frontend de protocolo para a plataforma de mensagens OmniMessage. É um dos vários tipos de frontend idênticos que se conectam a redes móveis usando diferentes protocolos:

FrontendProtocoloPropósito
Gateway SMPPSMPP (SMS)Mensagens SMS via protocolo SMPP
Gateway DiameterDiameterMensagens baseadas em IMS
Gateway MAPMAPSinalização de rede móvel
Gateway IMSIMSSubsistema Multimídia IP

Todos os frontends compartilham a mesma arquitetura: Eles são tradutores de protocolo sem estado que delegam toda a inteligência ao Core OmniMessage.

Como Funciona

Fluxo de Mensagem de Entrada (Sistema Externo → Operadora):

Fluxo de Mensagem de Saída (Operadora → Gateway SMPP):

O Que o Gateway Faz

  • Recebe PDUs SMPP de operadoras e clientes externos
  • Analisa e valida mensagens de protocolo SMPP
  • Traduz o formato SMPP para o formato interno do OmniMessage
  • Chama a API REST do OmniMessage com os dados da mensagem
  • Recebe mensagens do OmniMessage via polling da API
  • Converte o formato OmniMessage de volta para PDUs SMPP
  • Relata recibos de entrega de volta ao OmniMessage

O Que o Gateway NÃO Faz

  • ❌ Sem armazenamento ou persistência de mensagens
  • ❌ Sem decisões de roteamento (OmniMessage decide)
  • ❌ Sem limitação de taxa (OmniMessage aplica)
  • ❌ Sem validação de número (OmniMessage valida)
  • ❌ Sem rastreamento de estado (OmniMessage mantém o estado)
  • ❌ Sem lógica de negócios (OmniMessage lida com toda a lógica)

API REST do OmniMessage

O gateway se comunica com o Core OmniMessage via API REST:

Configuração:

config :omnimessage_smpp,
api_base_url: "https://omnimessage-core.example.com:8443"

Principais Operações da API:

  • GET /api/message_queue?destination_smsc=<bind_name> - Recuperar mensagens pendentes
  • PUT /api/messages/<id>/delivery_status - Relatar recibo de entrega
  • GET /api/system/health - Verificação de saúde

Formato da Mensagem: Mensagens na fila contêm todas as informações necessárias para entrega:

  • Número de destino
  • Corpo da mensagem
  • Número de origem
  • Prioridade
  • Período de validade
  • SMSC alvo (nome de ligação da operadora)

O gateway simplesmente recupera essas, formata-as como SMPP, envia-as para a operadora e relata o status.

Estrutura da Documentação

Esta documentação está organizada nos seguintes guias:

Pontos de Acesso

Painel da Web

  • URL: https://your-server:8087
  • Recursos:
    • Verificar status da conexão SMPP
    • Monitorar fila de mensagens
    • Visualizar logs do sistema
    • Configurar pares SMPP
    • Acessar documentação

Métricas Prometheus

  • URL: http://your-server:4000/metrics
  • Formato: Formato de texto Prometheus
  • Uso: Integração com Grafana/Prometheus

Endpoint da API

  • URL: Configurado em API_BASE_URL
  • Propósito: Integração de backend da fila de mensagens

Referência Rápida

Tarefas Comuns

TarefaComando/Localização
Iniciar gatewaysystemctl start omnimessage-smpp
Parar gatewaysystemctl stop omnimessage-smpp
Reiniciar gatewaysystemctl restart omnimessage-smpp
Ver logsjournalctl -u omnimessage-smpp -f
Verificar statusUI da Web → SMPP → Status Ao Vivo
Ver métricascurl http://localhost:4000/metrics
Editar configuração/opt/omnimessage-smpp/config/runtime.exs

Arquivos Importantes

ArquivoProp��sito
/opt/omnimessage-smpp/config/runtime.exsConfiguração principal
/opt/omnimessage-smpp/priv/cert/Certificados SSL
/var/log/omnimessage-smpp/Logs da aplicação
/etc/systemd/system/omnimessage-smpp.serviceDefinição do serviço

Notas de Segurança

  • UI da Web: Usa HTTPS com seus certificados SSL
  • Comunicação API: Pode verificar SSL ou usar certificados autoassinados
  • SMPP: Protocolo em texto simples - use segurança de rede
  • Credenciais: Armazenadas no arquivo de configuração - proteja o acesso

Próximos Passos

  1. Revise CONFIGURATION.md para todas as opções de configuração
  2. Configure MONITORING.md com Prometheus
  3. Familiarize-se com USAGE.md para tarefas diárias
  4. Adicione TROUBLESHOOTING.md aos favoritos para referência rápida
  5. Revise GLOSSARY.md para terminologia