Utiliza tu sitio web para enviar SMS
Puedes agregar funcionalidad de SMS a tu sitio web. Este método muestra cómo usar un script PHP para comunicarse con la API HTTP de Ozeki SMS Gateway. Primero necesitas habilitar el soporte de scripts PHP en tu servidor web.
Descarga el ejemplo de envío de SMS en PHP:
sendsms.zip
El ejemplo presentado (script de envío de SMS en PHP) muestra cómo puede funcionar el envío de mensajes desde tu sitio web al hacer clic en 'Enviar'. La idea utiliza un formulario HTML. El usuario puede completar este formulario HTML y hacer clic en 'Enviar'. El script PHP procesa las dos variables en los cuadros de texto llamados 'Destinatario' y 'Mensaje'. También envía la URL de solicitud HTTP generada a la API HTTP de Ozeki SMS Gateway (Figura 1). Tu servidor web y Ozeki SMS Gateway pueden estar en dos máquinas diferentes o en la misma máquina.
Primero debes instalar Ozeki SMS Gateway y verificar si puedes enviar mensajes SMS manualmente desde él. Luego, por favor descarga el script HTML+PHP para crear y usar el formulario de envío de SMS.
![]() | Ozeki SMS Gateway se puede obtener abriendo la página de descarga: ¡Descarga Ozeki SMS Gateway! |
Crea el formulario HTML para el envío de SMS
Por favor, guarda sendsms.html para comenzar con esta solución. Debes guardarlo en el directorio 'WWW' de tu servidor web. ¿Qué contiene? Contiene el formulario HTML con un cuadro de texto para el destinatario y el mensaje, además de un botón 'Enviar' (Figura 2).
<html> <body> <h1>Mi formulario de SMS</h1> <form method=post action='sendsms.php'> <table border=0> <tr> <td>Destinatario</td> <td><input type='text' name='recipient'></td> </tr> <tr> <td>Mensaje</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>
Si has guardado este archivo correctamente en el directorio de tu servidor web, puedes abrirlo en cualquier navegador web (Figura 3). Puedes agregar cualquier número de teléfono al campo de destinatario (por ejemplo, +4407776134588) y escribir tu mensaje en el siguiente cuadro de texto.
El atributo action de la etiqueta form apunta a sendsms.php. Lo que significa que los datos ingresados en el formulario se enviarán a sendsms.php. Los datos se enviarán a la API HTTP si se presiona 'Enviar'.
Cómo preparar tu script de SMS en PHP
'sendsms.php' es el destino para los campos de destinatario y mensaje. Este script PHP puede construir una URL para la API HTTP de Ozeki SMS Gateway. Invocará la URL si se presiona 'Enviar'. No olvides configurar las variables $ozeki_user, $ozeki_password y $ozeki_url. En caso de que Ozeki SMS Gateway y tu servidor web estén en la misma máquina, puedes dejar $ozeki_url sin cambios. De lo contrario, debes cambiar la IP a la dirección IP de la máquina de Ozeki SMS Gateway. La versión más reciente de Ozeki SMS Gateway usa el puerto 9505, mientras que 9501 pertenece a la versión anterior. (Figura 4)
<?php ######################################################## # Información de inicio de sesión para el SMS Gateway ######################################################## $ozeki_user = "admin"; $ozeki_password = "abc123"; $ozeki_url = "http://127.0.0.1:9505/api?"; ######################################################## # Funciones utilizadas para enviar el mensaje 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 la URL para enviar el mensaje $response = httpRequest($urltouse); if ($debug) { echo "Response: <br><pre>". str_replace(array("<",">"),array("<",">"),$response). "</pre><br>"; } return($response); } ######################################################## # Obtiene datos de sendsms.html ######################################################## $phonenum = $_POST['recipient']; $message = $_POST['message']; $debug = true; ozekiSend($phonenum,$message,$debug); ?>
Después de copiar y modificar tanto sendsms.html como sendsms.php en *\WWW\, se puede enviar un mensaje SMS a través de la pasarela. Una vez que sea aceptado para su entrega, el SMS Gateway devolverá el número de referencia del mensaje en la respuesta (Figura 5). Los mensajes se rastrean en Ozeki SMS Gateway por su número de referencia.
Resumen
En este artículo, puedes ver cómo agregar funcionalidad de SMS a tu sitio web. Utiliza el ejemplo proporcionado de script de SMS en PHP para comunicarse con Ozeki SMS Gateway. Usar el SMS Gateway ofrece la capacidad de enrutar mensajes SMS entre varios puntos finales y te da la capacidad de controlar tus mensajes de texto a medida que pasan por el sistema, para poder llegar fácilmente a cualquier persona en tu organización.
Si deseas construir un sistema de comunicación SMS confiable y versátil, encuentra más información sobre esto en el sitio web de Ozeki. No dudes en consultar el artículo sobre enviar SMS desde un sitio web usando enviar SMS usando C#.
Para crear tu primer sistema de pasarela SMS de alto rendimiento, ¡ahora es el mejor momento para descargar Ozeki SMS Gateway!
More information
- Enviar SMS desde MySQL con PHP
- Enviar SMS desde un sitio web usando PHP y MySQL
- Enviar SMS desde un sitio web usando PHP y API HTTP
- Contraseña de un solo uso en PHP