SMSC vs gateway SMS vs servidor SMPP: o que cada um realmente faz
Três termos usados como se fossem uma coisa só. O que é um SMSC, o que um gateway SMS faz, o que um servidor SMPP acrescenta e quais deles você precisa operar.
Neste guia
- SMSC vs gateway SMS vs servidor SMPP em um parágrafo
- SMSC: a máquina de armazenar e encaminhar da operadora
- Gateway SMS: o roteador, o livro-razão e o painel
- Servidor SMPP: a porta onde os seus clientes fazem bind
- Como os três se conectam no caminho real de uma mensagem
- Quem opera cada um
- Quais deles você precisa operar
- Uma observação sobre os nomes que os fornecedores usam
Pergunte a três fornecedores o que eles vendem e você poderá ouvir “um SMSC”, “um gateway SMS” e “um servidor SMPP” para o que parece ser o mesmo produto. Os termos não são intercambiáveis, e a confusão custa dinheiro: há quem compre um servidor SMPP achando que ele vai chegar aos aparelhos, ou quem reserve orçamento para “um SMSC” quando o que precisa é de um gateway e de dois contratos com operadoras. Este guia resolve a questão SMSC vs gateway SMS vs servidor SMPP com definições simples, mostra como os três se conectam no caminho real de uma mensagem e termina com quais deles você de fato precisa operar.
SMSC vs gateway SMS vs servidor SMPP em um parágrafo
Um SMSC fica dentro da rede de uma operadora móvel e entrega mensagens de texto aos telefones. Um gateway SMS fica fora da rede, recebe mensagens de aplicações e de clientes, encaminha essas mensagens para a conexão certa com a operadora e coleta as confirmações de entrega. Um servidor SMPP é um componente de um gateway que permite que outros sistemas se conectem ao gateway pelo protocolo SMPP, do mesmo modo que o gateway se conecta às operadoras. As operadoras mantêm SMSCs. As empresas que enviam ou revendem mensagens operam gateways. Os gateways que atendem clientes técnicos também operam servidores SMPP.
O restante deste guia é esse mesmo parágrafo, com os detalhes.
SMSC: a máquina de armazenar e encaminhar da operadora
O SMSC (Short Message Service Centre) é a parte da rede móvel responsável pelo SMS. Quando um telefone envia uma mensagem de texto, ela vai para o SMSC da operadora do remetente; o SMSC armazena a mensagem, localiza onde está o telefone do destinatário e a encaminha, tentando novamente se o telefone estiver desligado ou fora da área de cobertura. Esse comportamento de “armazenar e encaminhar” é o motivo pelo qual uma mensagem chega quando você liga o telefone de novo, e quem faz isso é o SMSC.
Daí decorrem três pontos. O SMSC se comunica com os aparelhos pelo núcleo de sinalização da rede (SS7, ou Diameter nos núcleos mais recentes), o que é uma relação de telecomunicações, e não um protocolo de internet. O SMSC pertence à operadora, e cada operadora tem o seu; não existe um SMSC global. E o SMSC é o único elemento deste artigo capaz de colocar uma mensagem em um telefone. Todo o resto é uma forma de fazer uma mensagem chegar a um SMSC.
As empresas chegam a um SMSC de duas formas: por meio de um agregador que já tem conexões com muitas operadoras, ou diretamente, com um contrato e um bind SMPP fornecido pela operadora. Nos dois casos, a empresa é cliente do SMSC, e não quem o opera. Os produtos anunciados como “um SMSC para empresas” são gateways que aceitam binds SMPP; eles não entregam mensagens aos aparelhos por conta própria.
Gateway SMS: o roteador, o livro-razão e o painel
Um gateway SMS é o sistema que uma empresa opera para enviar mensagens em escala e, se ela revende, para permitir que os próprios clientes enviem. O trabalho do gateway é tudo o que acontece entre “uma mensagem foi submetida” e “aqui está a confirmação”:
- Aceitar mensagens de um console web, de uma API HTTP, de um upload de arquivo ou de um bind SMPP.
- Validar as mensagens: regras de ID de remetente, codificação, tamanho, saldo do cliente.
- Rotear: escolher qual conexão com operadora ou agregador leva esta mensagem para este destino, por preço, qualidade ou contrato.
- Entregar pela conexão escolhida, normalmente por SMPP a uma operadora ou a um agregador, às vezes por HTTP a um fornecedor, respeitando a taxa e a janela da conexão.
- Coletar as confirmações e associá-las às mensagens, para que “entregue”, “com falha” ou “expirada” chegue ao cliente e ao livro-razão.
- Faturar: cobrar o cliente por mensagem, registrar o custo da rota e mostrar a margem.
- Gerar relatórios para o cliente e para quem opera o gateway.
O gateway pode ser um único motor (o Kannel é o mais conhecido entre os de código aberto; ele cuida de binds, filas e confirmações e de nada acima disso) ou uma plataforma completa, na qual o motor é uma camada abaixo de um portal, de uma tabela de roteamento, de três modelos de faturamento e de um conjunto de relatórios. A página da plataforma mostra essa arquitetura completa do Smppcube em um único diagrama: NGINX, o console PHP e o pipeline Node.js, as filas do Redis, o MySQL como sistema de registro, o MongoDB para arquivamento, o Elasticsearch para busca e, por baixo, o Kannel se comunicando com os SMSCs. Tudo isso junto é “o gateway SMS”. O Kannel sozinho é o motor de entrega.
Um gateway também abriga as partes do negócio que não têm nada a ver com protocolos: contas de clientes, tabelas de tarifas por destino, saldos pré-pagos e pós-pagos, faturas, portais de revendedores e a margem por rota, que decide se a operação dá lucro. São essas partes que fazem da compra de um gateway uma decisão diferente de baixar um motor.
Servidor SMPP: a porta onde os seus clientes fazem bind
O SMPP, o protocolo que as operadoras adotam como padrão, é um protocolo cliente-servidor. Quando o seu gateway faz bind com uma operadora, o lado da operadora é o servidor SMPP e o seu é o cliente. Quando os seus próprios clientes querem fazer bind com você por SMPP, você precisa ser o servidor. Esse componente é o servidor SMPP: ele escuta em uma porta (por convenção, a 2775), autentica os binds com um system_id e uma senha, aceita pacotes submit_sm, devolve os IDs das mensagens, aplica a vazão por conta e envia as confirmações de entrega de volta pela sessão.
Em outras palavras, é mais uma via de entrada no gateway. As mensagens que chegam pelo servidor SMPP vão para a mesma fila, a mesma tabela de roteamento e o mesmo livro-razão que as mensagens da API HTTP e do console; o guia SMPP versus HTTP explica por que uma plataforma precisa dos dois e como eles diferem na prática. O que um servidor SMPP não é: uma rota até os aparelhos. Ele é uma porta de entrada, não de saída. Uma empresa que só precisa enviar nunca precisa de um. Uma empresa que quer ter bancos, fornecedores de OTP e outros agregadores como clientes precisa de um no dia em que o primeiro deles pedir.
Como os três se conectam no caminho real de uma mensagem
Juntando os três, uma mensagem que vai do cliente de um revendedor até um telefone segue este caminho:
- O cliente submete a mensagem ao gateway do revendedor, pelo console web, pela API HTTP ou por um bind com o servidor SMPP do revendedor.
- O gateway valida a mensagem, debita o saldo do cliente e escolhe uma rota para o destino.
- O motor do gateway envia a mensagem por um bind SMPP (ou por uma chamada HTTP) a um agregador ou diretamente à operadora de destino.
- O SMSC da operadora armazena a mensagem, localiza o telefone e faz a entrega.
- O SMSC devolve uma confirmação de entrega pela mesma cadeia; o gateway a associa à mensagem, liquida o lançamento no livro-razão e a repassa ao cliente (como um deliver_sm no bind SMPP dele ou como um webhook na API dele).
Duas observações. Primeira: o servidor SMPP do revendedor e o SMSC da operadora nunca se comunicam diretamente; o gateway entre eles fala SMPP como cliente no sentido upstream e como servidor no sentido downstream, e é por isso que os termos se confundem. Segunda: o mesmo gateway pode ser cliente de vários SMSCs e agregadores ao mesmo tempo, e essa é toda a base do roteamento: a mensagem segue pela conexão mais barata, pela melhor ou pela contratada para aquele destino.
Quem opera cada um
| SMSC | Gateway SMS | Servidor SMPP | |
|---|---|---|---|
| Onde fica | Dentro do núcleo da rede de uma operadora móvel | Em um servidor que a empresa controla (ou alugado como SaaS) | Dentro do gateway, como uma das suas vias de entrada |
| Quem opera | Operadoras móveis | Empresas, revendedores, agregadores, plataformas CPaaS | Gateways que atendem clientes técnicos |
| Comunica-se com | Aparelhos (via SS7/Diameter) e gateways conectados | SMSCs, agregadores e fornecedores HTTP no sentido upstream; clientes no sentido downstream | Clientes que fazem bind por SMPP |
| Chega a um telefone por conta própria | Sim | Somente por meio de um SMSC | Não |
| Exemplos | Os sistemas das próprias operadoras | Kannel (motor); plataformas completas como o Smppcube | Integrado a uma plataforma ou adicionado sobre um motor |
A observação “alugado como SaaS” na coluna do gateway aponta a outra confusão comum: um painel SMS hospedado também é um gateway, só que operado por outra empresa e acessado por você como tenant. O guia do gateway self-hosted traz a comparação honesta entre operar um gateway por conta própria e alugar um acesso ao gateway de outra empresa.
Quais deles você precisa operar
Se você envia mensagens a partir de uma única aplicação (OTPs, alertas, notificações) e não tem clientes próprios, não precisa de nenhum deles. A API HTTP de um agregador é um gateway do qual você é cliente; a sua única decisão é qual fornecedor escolher.
Se você revende mensageria, executa campanhas para terceiros ou opera a mensageria de muitas equipes internas, você precisa de um gateway. Alugado ou self-hosted é a próxima pergunta, e a resposta depende de dados, margem e dependência de fornecedor, e não de tecnologia; uma licença de pagamento único, como a do Smppcube, no seu próprio servidor, é o lado self-hosted dessa escolha.
Se entre os seus clientes há alguém com uma biblioteca cliente SMPP (bancos, fornecedores de OTP, plataformas de marketing, outros agregadores), o seu gateway precisa de um servidor SMPP. Algumas plataformas já trazem um; com um motor puro, você mesmo precisa adicioná-lo.
Você não precisa de um SMSC. Não é possível operar um sem ser uma operadora, e isso não é necessário: o SMSC de qualquer operadora pode ser alcançado por um bind ou por um agregador. Na prática, “precisamos de um SMSC” quase sempre significa “precisamos de um gateway com um servidor SMPP e dois ou três contratos com operadoras”, um problema muito menor e muito mais barato.
Ninguém fora de uma operadora opera um SMSC. O que as empresas operam é um gateway, e o que os clientes técnicos usam para fazer bind é o servidor SMPP desse gateway. Organize o vocabulário e a lista de compras se organiza sozinha.
Uma observação sobre os nomes que os fornecedores usam
Como os termos se sobrepõem no marketing, leia a lista de recursos, e não o rótulo. Um produto chamado “software de SMSC” que lista binds SMPP, roteamento e faturamento é um gateway. Um “servidor SMPP” que lista contas de clientes, tabelas de tarifas e um portal é um gateway com uma via de entrada SMPP. Um “gateway SMS” que é apenas um endpoint REST, sem tabela de roteamento, é a API de um único fornecedor. Não é errado comprar nenhum deles; o importante é saber o que cada um faz antes de comparar preços e verificar, seja qual for a sua escolha, se ele fica em um servidor ao qual você tem acesso e se mantém registros que você pode exportar.
PERGUNTAS
Um gateway SMS é a mesma coisa que um SMSC?
Não. Um SMSC (Short Message Service Centre, a central de mensagens curtas) é o sistema da operadora móvel que armazena e encaminha as mensagens de texto dentro da rede móvel e se comunica com os aparelhos. Um gateway SMS fica fora da rede: ele recebe mensagens de aplicações ou de clientes, decide qual conexão com uma operadora usar, entrega as mensagens ao SMSC dessa operadora (ou a um agregador que chega até ele) e coleta as confirmações de entrega. As operadoras mantêm os SMSCs; todos os demais operam gateways.
O que é um servidor SMPP e eu preciso de um?
Um servidor SMPP é o componente que permite que outros sistemas façam bind com você pelo protocolo SMPP, do mesmo modo que você faz bind com uma operadora. Você só precisa de um se os seus próprios clientes quiserem se conectar por SMPP em vez de uma API HTTP: bancos, fornecedores de OTP, outros agregadores. A maioria dos revendedores começa sem ele e o adiciona quando um cliente técnico pede. Uma plataforma que já traz um servidor SMPP poupa você de escrever uma pilha de protocolo mais tarde.
Posso operar o meu próprio SMSC?
Somente se você for uma operadora móvel ou tiver uma conexão SS7 ou Diameter direta com uma rede móvel, o que é uma relação regulada de telecomunicações, e não a compra de um software. O que uma empresa pode operar é um gateway que se conecta aos SMSCs das operadoras por SMPP ou HTTP. Os produtos anunciados como um SMSC para empresas são, na prática, gateways com servidores SMPP acoplados.
Qual é o papel do Kannel nesse cenário?
O Kannel é um motor de gateway SMS de código aberto que fala SMPP e outros protocolos de operadora e cuida do trabalho de entrega de baixo nível: binds, filas, novas tentativas, confirmações. Ele é o motor, não o negócio. Uma plataforma completa envolve um motor como o Kannel com o portal do cliente, as regras de roteamento, o faturamento, os relatórios e o servidor SMPP no qual os seus clientes fazem bind, que é a parte que leva anos para ser escrita por conta própria.