Se você gerencia um negócio de serviços locais, como uma clínica médica, escola de reforço ou oficina mecânica, saber se seus clientes realmente visualizam suas mensagens é fundamental. Neste tutorial, explicaremos como obter o status do SMS (se foi lido ou não) a partir do gateway de SMS, esclareceremos as limitações técnicas dos protocolos de SMS e mostraremos como implementar um rastreamento confiável de entrega e leitura para suas notificações enviadas.
Step 1: Understand the Difference Between SMS Delivered and Read Status
Antes de mergulhar nas integrações de API, é vital entender a diferença técnica entre o status de SMS entregue e lido. A tecnologia tradicional de SMS é baseada em protocolos de rede celular desenvolvidos há décadas. Nesse ambiente, "os usuários podem se comunicar usando atualizações rápidas de status de 160 caracteres ou menos." Devido a essa infraestrutura legada, a rede global de telecomunicações suporta apenas confirmações de entrega, não confirmações de abertura ou leitura.
Isso é muito diferente dos aplicativos modernos de mensagens instantâneas (como WhatsApp, iMessage ou RCS), onde "este diálogo de fluxo livre permite enviar mensagens, fotos e vídeos para qualquer pessoa" com indicadores de digitação nativos e os ticks azuis de "lido". O SMS padrão das operadoras não possui um pacote de rede nativo que informe ao gateway quando um usuário tocou em uma mensagem de texto para abri-la.
Em vez disso, dependemos do significado do status do gateway de SMS mapeado pelo seu provedor. Veja o que esses status normalmente significam nos logs do seu gateway de SMS:
| Status | Significado Técnico | Significa "Lido"? |
|---|---|---|
| Sent | A mensagem saiu do gateway e foi aceita pela rede da operadora de celular. | Não. O telefone pode até estar desligado. |
| Delivered | O aparelho celular do destinatário enviou uma confirmação de volta para a operadora confirmando o recebimento. Este é o seu status de confirmação de SMS. | Não necessariamente. Está no dispositivo dele, mas ele pode ainda não ter aberto. |
| Failed | A mensagem não pôde chegar ao aparelho (ex: número desativado, erro de roteamento de rede). | Não. |
Para rastrear com precisão se uma mensagem foi realmente lida, as empresas usam uma combinação de relatórios de entrega no nível da operadora e links de rastreamento inteligentes no nível da aplicação, que configuraremos nas etapas a seguir.
Step 2: Set Up Your Android SMS Gateway to Check SMS Delivery Status
Para começar a rastrear suas mensagens, você precisa de um gateway de SMS que exponha nativamente relatórios de entrega sem escondê-los atrás de contratos corporativos caros. Gateways tradicionais como o Twilio exigem um registro complexo de A2P 10DLC, aprovação da operadora e cobram taxas altas por segmento. Uma alternativa mais simples e econômica para pequenas empresas é o MySMSGate.
O MySMSGate transforma seu próprio telefone Android e cartão SIM em um gateway de SMS. Como você envia a partir do seu próprio número de telefone local, você ignora os bloqueios de registro das operadoras e pode facilmente verificar o status de entrega do SMS diretamente do seu painel ou API.
Para configurar seu gateway e começar a rastrear o status de entrega, siga estas etapas:
- Acesse a Página de Registro do MySMSGate e crie uma conta gratuita.
- Baixe e instale o aplicativo Android do MySMSGate no seu telefone.
- Escaneie o código QR exibido no seu painel web usando o aplicativo móvel para vincular instantaneamente seu telefone. Nenhuma chave de API precisa ser digitada manualmente.
- Envie um SMS de teste a partir do painel web.
Assim que a mensagem for enviada, seu telefone Android retornará o relatório de entrega da operadora de volta para o seu painel do MySMSGate em tempo real. Se uma mensagem falhar, o MySMSGate reembolsa automaticamente o seu saldo, protegendo seus custos operacionais.
Step 3: Configure the Android SMS Gateway Delivery Reports Status Callback Webhook
Para desenvolvedores que integram notificações de SMS em seus próprios CRMs, sistemas de reserva ou softwares personalizados, fazer requisições constantes (polling) a um endpoint de API para verificar o status de entrega é ineficiente. Em vez disso, você deve configurar um callback de status de relatórios de entrega do gateway de SMS Android usando webhooks.
Esta seção explica como obter o status de entrega de SMS a partir de configurações de webhook de API. Quando seu telefone Android conectado entrega a mensagem ao aparelho do destinatário, ele recebe um relatório de entrega interno da operadora local. O MySMSGate captura esse evento e envia instantaneamente a atualização de status para o seu servidor.
Aqui está um exemplo de como lidar com o payload do callback de status de relatórios de entrega do gateway de SMS Android em uma aplicação Flask em Python:
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/webhooks/sms-status', methods=['POST'])
def handle_sms_status_callback():
data = request.json
# Extract key parameters from the MySMSGate webhook payload
message_id = data.get('message_id')
status = data.get('status') # e.g., 'delivered', 'failed', 'sent'
recipient = data.get('to')
error_code = data.get('error_code')
print(f"Message {message_id} to {recipient} updated to status: {status}")
if status == 'delivered':
# Update your database to mark notification as delivered
# update_booking_notification_status(message_id, 'Delivered')
pass
elif status == 'failed':
# Handle failed delivery (e.g., alert staff, retry via alternative channel)
# log_failed_delivery(message_id, error_code)
pass
return jsonify({"status": "success"}), 200
if __name__ == '__main__':
app.run(port=5000)Ao implementar este callback, sua aplicação de backend sempre estará em sincronia com o status em tempo real de suas mensagens enviadas, permitindo que você crie fluxos de trabalho de acompanhamento automatizados para entregas que falharam.
Step 4: Track Actual "Read" Status Using Smart Link Tracking
Como os protocolos de SMS padrão não suportam uma confirmação de "Leitura" nativa, como as empresas de serviços inteligentes rastreiam se um cliente abriu e leu a mensagem? A solução padrão do setor é o Smart Link Tracking (Rastreamento por Link Inteligente).
Em vez de enviar uma mensagem de texto simples, você inclui um link de rastreamento exclusivo e encurtado no seu SMS. Quando o destinatário toca no link, ele é brevemente direcionado pelo seu servidor de rastreamento antes de ser redirecionado para o destino final (como uma fatura, confirmação de reserva ou página de detalhes do agendamento). Esse redirecionamento ocorre em milissegundos e funciona como sua "Confirmação de Leitura".
Aqui está o fluxo de trabalho passo a passo para implementar isso:
- Gere um token exclusivo: Para cada SMS enviado, gere um identificador curto e exclusivo (ex:
myshop.co/r/x89D2). - Mapeie o token no seu banco de dados: Associe
x89D2ao número de telefone do destinatário, à mensagem específica enviada e a um status "Lido" inicializado comoFalse. - Envie o SMS: Envie a mensagem contendo a URL curta por meio da API ou painel do MySMSGate.
- Registre o redirecionamento: Quando o usuário toca no link, seu servidor registra a solicitação recebida para
x89D2, atualiza o registro do banco de dados paraRead = Truejunto com o carimbo de data/hora (timestamp) e redireciona imediatamente o usuário para a página de destino real.
Este método oferece um rastreamento de leitura 100% preciso e fornece dados valiosos sobre o engajamento do usuário, ajudando você a otimizar seus modelos de comunicação.
Step 5: Compare SMS Status Tracking Across Gateways
Ao selecionar uma plataforma para o seu negócio, é útil analisar como diferentes gateways lidam com o rastreamento de entrega, preços e complexidade do sistema. Embora muitos desenvolvedores procurem por um tutorial de callback de status de entrega de SMS do Twilio, eles frequentemente descobrem que configurar e manter a infraestrutura de nuvem do Twilio para notificações locais básicas é excessivamente complexo e caro.
Abaixo está uma comparação direta dos recursos e capacidades de rastreamento entre o MySMSGate e os gateways de nuvem tradicionais:
| Recurso | MySMSGate | Gateways de Nuvem Tradicionais (Twilio / Plivo) |
|---|---|---|
| Rastreamento de Status de Entrega | Em tempo real via webhooks e painel | Em tempo real via webhooks |
| Modelo de Preço | Tarifa fixa de $0.02 por SMS. Sem taxas mensais. | Variável ($0.05 - $0.08+ por SMS) + aluguel mensal de número |
| Cobrança por Tamanho de Mensagem | Uma única tarifa fixa por mensagem, independentemente do tamanho | Cobrado por segmento de 160 caracteres (mensagens concatenadas custam o dobro/triplo) |
| Sender ID e Registro 10DLC | Nenhum necessário. Envia a partir do seu próprio SIM Android. | Registro obrigatório, taxas de operadora e atrasos rigorosos de aprovação |
| Reembolso de Mensagens com Falha | Reembolso automático em caso de falha na entrega | Sem reembolsos. Você paga pelas tentativas que falharam. |
| Complexidade de Configuração | Escaneie o código QR no telefone Android | Configuração de API altamente técnica e verificação regulatória |
Para empresas de serviços locais que operam fora dos Estados Unidos, o MySMSGate oferece uma abordagem muito mais prática. Você pode ler mais sobre opções alternativas em nosso guia completo sobre comparação de alternativas ao Twilio ou conferir nosso guia de API de SMS mais barata para otimizar seu orçamento de comunicação.
Perguntas Frequentes
Aqui estão as respostas para as dúvidas mais comuns sobre entrega de SMS e rastreamento de status de leitura.
É possível ver se um SMS foi lido ou aberto?
Não, o protocolo de SMS celular padrão não suporta confirmações de leitura nativas. Para rastrear se um SMS foi lido, você deve incluir um link de rastreamento exclusivo e encurtado no corpo da mensagem e monitorar quando o destinatário toca nesse link.
Qual é a diferença entre o status de entregue e lido?
O status entregue significa que a rede da operadora transferiu com sucesso a mensagem de texto para o aparelho celular do destinatário. O status lido significa que o usuário abriu e visualizou ativamente a mensagem. O SMS padrão rastreia apenas a entrega; links de rastreamento no nível da aplicação são necessários para rastrear o status de leitura.
Como obtenho relatórios de entrega em tempo real usando o MySMSGate?
O MySMSGate encaminha os relatórios de entrega diretamente da rede da operadora do seu telefone Android de volta para a sua conta. Você pode visualizar esses status de entrega em tempo real no seu painel web ou configurar um webhook de retorno de status para receber requisições POST instantâneas no seu servidor.
Preciso de aprovação da operadora ou registro 10DLC para rastrear o status de entrega?
Não. Quando você usa o MySMSGate, você envia mensagens através do seu próprio telefone Android e cartão SIM. Como você está usando sua própria linha móvel pessoal ou comercial, não precisa de registro 10DLC, verificação de marca ou aprovação da operadora para enviar e rastrear suas mensagens.
Comments (0)
Be the first to comment!