Como enviar um SMS agendado
Este guia fornece informações sobre como enviar uma mensagem SMS agendada e como obter relatórios do Ozeki SMS Gateway quando a mensagem é enviada para a rede móvel e quando é entregue ao destinatário. (Vídeo 1, Figura 1)
Passo 1 - Instalar o Usuário HTTP API
Você pode simplesmente instalar o Usuário HTTP API no console de Gerenciamento clicando em Adicionar novo usuário/aplicação... no painel Usuários/Aplicações. Uma interface será aberta com dois painéis. O painel direito contém os usuários e aplicações que você pode instalar, com uma breve descrição ao lado de cada um. Encontre o Usuário HTTP API e clique no botão azul 'instalar' ao lado dele (Figura 2).
Na seção Nome, forneça um nome único para o Usuário HTTP API e defina um nome de usuário e senha para autenticação (Figura 3).
Passo 2 - Ativar Log de eventos de comunicação
Para poder ver a comunicação HTTP na aba Eventos do usuário HTTP API, você precisa ativar o log de eventos de comunicação. Para fazer isso, abra a aba Configurar do usuário HTTP. Nela, na aba Avançado, na seção Nível de Log, marque a opção Log de eventos de comunicação, como mostra a Figura 4.
Passo 3 - Criar código PHP para enviar mensagem
O próximo passo é criar os arquivos PHP na raiz www do servidor web Apache. Vá para a pasta /var/www/html e crie o arquivo index.php (Figura 5).
Depois de colar o código PHP, modifique a conexão do Servidor, alterando a URL, nome de usuário e senha para o IP do seu SMS Gateway e as credenciais do usuário HTTP API. Em seguida, modifique os IPs das URLs de Relatório para o IP do servidor web Apache (Figura 6).
Exemplo de código para enviar um SMS agendado
<!DOCTYPE html> <html> <head> <title>Requisição HTTP</title> </head> <body> <?php //Detalhes da conexão do servidor $httpurl = "https://192.168.93.133:9509/"; $username = "ht1"; $password = "qwe123"; //Destinatário e texto da mensagem SMS $recipient = urlencode("+36201324567"); $messagedata = urlencode("Olá mundo"); //Agendar para 5 minutos a partir de agora $date = strtotime(date("Y-m-d H:i:s")." +5 minutes"); $sendondate = urlencode(date("Y-m-d H:i:s",$date)); //URLs de relatório $reportto = 'http://192.168.93.242/report.php?'. 'reporttype=$reporttype&messageid=$messageid'; $reporturl = urlencode($reportto); //Construir a requisição $sendString = $httpurl."api?action=sendmessage". "&username=".$username. "&password=".$password. "&recipient=".$recipient. "&recipient=".$recipient. "&sendondate=".$sendondate. "&reporturl=".$reporturl. "&messagedata=".$messagedata; echo '<p><b> Enviando requisição HTTP:</b><br> '.$sendString.'</p>'; $aContext = array( 'http' => array( 'method' => 'GET', ), 'ssl' => array( 'verify_peer' => false, 'verify_peer_name' => false, ) ); $cxContext = stream_context_create($aContext); $response = file_get_contents($sendString, true, $cxContext); echo '<p><b> Resposta HTTP recebida:</b> </p>'; echo '<xmp>' . $response. '</xmp>'; ?> </body> </html>
Passo 4 - Criar código PHP para relatórios de mensagem
Agora crie o arquivo PHP de relatório no diretório raiz www do servidor web Apache. Na pasta /var/www/html, crie o arquivo report.php como você pode ver na Figura 7.
No arquivo report.php, cole o código PHP abaixo para receber o relatório de SMS. Este código salva todos os relatórios de SMS recebidos em um arquivo smsreport.txt na pasta tmp (Figura 8).
Exemplo de código para processar relatórios recebidos
<!DOCTYPE html> <html> <head> <title>Manipulador de relatório de envio HTTP</title> </head> <body> <?php $file = "tmp/smsreport.txt"; $date = date("Y-m-d H:i:s"); $messageid = $_GET["messageid"]; $reporttype = $_GET["reporttype"]; $line = $date." ".$messageid." ".$reporttype."\r\n"; file_put_contents($file, $line, FILE_APPEND); echo "Registrado: $line"; ?> </body> </html>
Passo 5 - Enviar mensagem SMS
Após a criação dos arquivos PHP no servidor Apache, você poderá enviar SMS usando-o. Em um navegador, abra o index.php e você verá a requisição HTTP enviada e a resposta HTTP do gateway de SMS (Figura 9).
Na aba de eventos do Ozeki SMS Gateway, você também pode ver a comunicação HTTP (Figura 10).
Se você abrir a pasta de saída do Ozeki SMS Gateway, poderá ver que a mensagem está armazenada na pasta Postponed (Adiadas) porque será enviada no futuro (Figura 11).
Na aba Tags dos detalhes da mensagem, você pode verificar quando o SMS será enviado e a URL de relatório que será chamada pelo Ozeki SMS Gateway se o SMS for enviado. (Figura 12)
Finalmente, você verá que o Ozeki SMS Gateway enviará a mensagem na data e hora programadas, como você pode ver na Figura 13.
Passo 5 - Relatório de mensagem recebido
Em seguida, o relatório de SMS é enviado de volta para o servidor web Apache e armazenado no arquivo smsreport.txt (Figura 14).
Exemplo de arquivo de relatório
2020-08-22 09:06:27 9b457df4-7a38-4fef-b03f-a11d4cf73e70 accepted 2020-08-22 09:07:11 9b457df4-7a38-4fef-b03f-a11d4cf73e7 accepted 2020-08-22 09:07:54 617c6ec4-5844-4895-9a5c-af98d3ecace5 accepted 2020-08-22 09:10:33 617c6ec4-5844-4895-9a5c-af98d3ecace5 delivered 2020-08-22 09:10:40 9b457df4-7a38-4fef-b03f-a11d4cf73e70 delivered 2020-08-22 09:10:54 0f9603b3-ce53-4c28-bbe5-1c69d855e2ee accepted 2020-08-22 09:10:56 0f9603b3-ce53-4c28-bbe5-1c69d855e2ee undelivered 2020-08-22 09:11:27 f531af05-462d-4a74-8eb2-40ad29f06351 accepted 2020-08-22 09:11:32 f531af05-462d-4a74-8eb2-40ad29f06351 delivered 2020-08-22 09:13:34 7ad2c5e2-fa46-472f-adc1-fe2a28bbfa7c accepted 2020-08-22 09:13:45 7ad2c5e2-fa46-472f-adc1-fe2a28bbfa7c delivered 2020-08-22 09:14:35 0e2286bb-5a29-4d59-b636-ff42e2eec375 accepted 2020-08-22 09:17:35 4079feb1-2cf5-4d0f-92e6-4d97e086b918 accepted 2020-08-22 09:17:40 4079feb1-2cf5-4d0f-92e6-4d97e086b918 undelivered
Resumo
Você aprendeu sobre o envio de mensagens SMS agendadas no artigo acima. O envio de mensagens SMS agendadas pode otimizar seu plano de marketing de SMS em massa, enviando mensagens quando o cliente pode realmente se concentrar nas informações que você deseja transmitir. Além disso, se você tiver alguma informação importante para enviar a um destinatário, pode configurar um SMS agendado. Dessa forma, você não esquecerá de enviar a mensagem.
Se você quiser saber mais sobre a tecnologia por trás da função de SMS agendado, visite a página da web da Ozeki, onde encontrará artigos úteis sobre muitos tópicos. Primeiro, você deve começar com receber SMS em PHP. Se você quiser usar recursos de SMS com outras linguagens de programação, talvez comece com o artigo SMS com Java.
Não perca mais tempo. Baixe o Ozeki SMS Gateway e comece a enviar SMS agora!
More information
- Receber SMS em PHP
- Como enviar um SMS agendado