Use seu site para enviar SMS

Você pode adicionar funcionalidade de SMS ao seu site. Este método apresenta como usar um script PHP para se comunicar com a API HTTP do Ozeki SMS Gateway. Primeiro, você precisa habilitar o suporte a scripts PHP no seu servidor web.

Baixe o exemplo de envio de SMS em PHP: sendsms.zip

Vídeo 1 - Como usar seu site para enviar SMS (Tutorial em vídeo)

O exemplo apresentado (script de envio de SMS em PHP) mostra como o envio de mensagens pode funcionar a partir do seu site ao clicar em 'Enviar'. A ideia usa um formulário HTML. O usuário pode preencher este formulário HTML e clicar em 'Enviar'. O script PHP processa as duas variáveis nas caixas de texto chamadas 'Destinatário' e 'Mensagem'. Ele também envia a URL de requisição HTTP gerada para a API HTTP do Ozeki SMS Gateway (Figura 1). Seu servidor web e o Ozeki SMS Gateway podem estar em duas máquinas diferentes ou na mesma máquina.

como um sms pode ser enviado do seu site
Figura 1 - Como um SMS pode ser enviado do seu site

Você deve instalar o Ozeki SMS Gateway primeiro e verificar se pode enviar mensagens SMS manualmente a partir dele. Em seguida, por favor baixe o script HTML+PHP para criar e usar o formulário de envio de SMS.

O Ozeki SMS Gateway pode ser obtido
abrindo a página de download:
Baixe o Ozeki SMS Gateway!
Crie o Formulário HTML para envio de SMS

Por favor, salve sendsms.html para começar com esta solução. Você deve salvá-lo no diretório 'WWW' do seu servidor web. O que ele contém? Ele contém o formulário HTML com uma caixa de texto para o destinatário e a mensagem, além de um botão 'Enviar' (Figura 2).


<html>
 <body>
   <h1>Meu formulário de SMS</h1>
   <form method=post action='sendsms.php'>
   <table border=0>
   <tr>
     <td>Destinatário</td>
     <td><input type='text' name='recipient'></td>
   </tr>
   <tr>
     <td>Mensagem</td>
     <td><textarea rows=4 cols=40 name='message'></textarea></td>
   </tr>
   <tr>
     <td> </td>
     <td><input type=submit name=submit value=Enviar></td>
   </tr>
   </table>
   </form>
 </body>
</html>
Figura 2 - O código-fonte de *\WWW\sendsms.html

Se você salvou este arquivo com sucesso no diretório do seu servidor web, você pode abri-lo em qualquer navegador web (Figura 3). Você pode adicionar qualquer número de telefone ao campo destinatário (por exemplo, +4407776134588) e escrever o texto da sua mensagem na próxima caixa de texto.

como o formulário de sms deve parecer
Figura 3 - Como o formulário de SMS deve parecer

O atributo action da tag form aponta para sendsms.php. O que significa que os dados inseridos no formulário serão encaminhados para sendsms.php. Os dados serão enviados para a API HTTP se 'Enviar' for pressionado.

Como preparar o seu script PHP para SMS

'sendsms.php' é o destino para os campos de destinatário e mensagem. Este script PHP pode construir um URL para a API HTTP do Ozeki SMS Gateway. Ele irá invocar o URL se 'Enviar' for pressionado. Não se esqueça de configurar as variáveis $ozeki_user, $ozeki_password e $ozeki_url. Caso o Ozeki SMS Gateway e o seu servidor web estejam na mesma máquina, pode deixar o $ozeki_url inalterado. Caso contrário, deve alterar o IP para o endereço IP da máquina do Ozeki SMS Gateway. A versão mais recente do Ozeki SMS Gateway utiliza a porta 9505, enquanto a 9501 pertence à versão mais antiga. (Figura 4)


<?php

########################################################
# Informações de login para o SMS Gateway
########################################################

$ozeki_user = "admin";
$ozeki_password = "abc123";
$ozeki_url = "http://127.0.0.1:9505/api?";

########################################################
# Funções utilizadas para enviar a mensagem SMS
########################################################
function httpRequest($url){
    $pattern = "/http...([0-9a-zA-Z-.]*).([0-9]*).(.*)/";
    preg_match($pattern,$url,$args);
    $in = "";
    $fp = fsockopen("$args[1]", $args[2], $errno, $errstr, 30);
    if (!$fp) {
       return("$errstr ($errno)");
    } else {
        $out = "GET /$args[3] HTTP/1.1\r\n";
        $out .= "Host: $args[1]:$args[2]\r\n";
        $out .= "User-agent: Ozeki PHP client\r\n";
        $out .= "Accept: */*\r\n";
        $out .= "Connection: Close\r\n\r\n";

        fwrite($fp, $out);
        while (!feof($fp)) {
           $in.=fgets($fp, 128);
        }
    }
    fclose($fp);
    return($in);
}



function ozekiSend($phone, $msg, $debug=false){
      global $ozeki_user,$ozeki_password,$ozeki_url;
	  
      $url= 'action=sendmessage';
      $url.= '&username='.$ozeki_user;
      $url.= '&password='.$ozeki_password;      
      $url.= '&messagetype=SMS:TEXT';
      $url.= '&recipient='.urlencode($phone);
      $url.= '&messagedata='.urlencode($msg);

      $urltouse =  $ozeki_url.$url;
      if ($debug) { echo "Request: <br>$urltouse<br><br>"; }

      //Abre o URL para enviar a mensagem
      $response = httpRequest($urltouse);
      if ($debug) {
           echo "Response: <br><pre>".
           str_replace(array("<",">"),array("&lt;","&gt;"),$response).
           "</pre><br>"; }

      return($response);
}

########################################################
# Obtém dados do sendsms.html
########################################################

$phonenum = $_POST['recipient'];
$message = $_POST['message'];
$debug = true;

ozekiSend($phonenum,$message,$debug);

?>
Figura 4 - O código fonte do script *\WWW\sendsms.php

Depois de ambos sendsms.html e sendsms.php serem copiados e modificados em *\WWW\, uma mensagem SMS pode ser submetida pelo gateway. Depois de ser aceite para entrega, o SMS Gateway irá retornar o número de referência da mensagem na resposta (Figura 5). As mensagens são rastreadas no Ozeki SMS Gateway pelo seu número de referência.

xml de resposta do ozeki sms gateway
Figura 5 - XML de resposta do Ozeki SMS Gateway

Resumo

Neste artigo, pode ver como adicionar funcionalidade SMS ao seu website. Utiliza o exemplo fornecido do script PHP para SMS para aceder ao Ozeki SMS Gateway. Usar o SMS Gateway oferece a capacidade de encaminhar mensagens SMS entre vários pontos finais e dá-lhe a capacidade de controlar as suas mensagens de texto à medida que passam pelo sistema, para poder alcançar facilmente qualquer pessoa na sua organização.

Se quiser construir um sistema de comunicação SMS fiável e versátil, encontre mais informações sobre isso no website da Ozeki. Sinta-se à vontade para consultar o artigo sobre enviar SMS a partir de um website usando enviar SMS usando C#.

Para criar o seu primeiro sistema de SMS gateway de alto desempenho, agora é o melhor momento para descarregar Ozeki SMS Gateway!

More information