Envío de un sms wap push desde php

Ya vimos hace tiempo el envío de sms de texto con php. La función que presentamos hoy permite realizar el envío de sms con php de tipo wappush. De esta forma tu código php corriendo en tu servidor podrá enviar contenidos o urls a los usuarios de tu página php que les sean útiles

Como en anteriores ejemplos, para hacer real el envío, es necesario un proveedor sms que sirve de intermediario entre nuestro servidor php y los operadores de telefonía móvil. El ejemplo utiliza la pasarela de envío de sms masivo de Altiria con php.

El protocolo http es el utilizado para las comunicaciones con el proveedor.

Este método se puede llamar desde cualquier parte de tu servidor para hacer el envío de sms. Integrar el envío de sms con php se hará, por ejemplo, con el siguiente código que envía un sms a los números 34600111222 y 34600111333. El sms enviado de tipo wap push será  mostrando un texto en caso de que el envío del sms se haya realizado correctamente y el texto de error generado en caso de error en el envío de sms.

Un mensaje wap push se compone de la url a la que se conectará el teléfono móvil más una alerta que es el aviso que le aparecerá en el móvil al usuario.

<!--? // sDestination: lista de núumeros, comenzando por 34 y separados por comas // sMessage: hasta 160 caracteres // XX, YY y ZZ se corresponden con los valores de identificación del // usuario en el sistema. // Como ejemplo la petición se envía a www.pasarelasms.net/sustituirPOSTsms // Se debe reemplazar la cadena ’/sustituirPOSTsms’ por la parte correspondiente // de la URL suministrada por Altiria al dar de alta el servicio function AltiriaSMS($sDestination,$sMessage,$sUrl) { $sData = "cmd=sendwappush&domainId=XX&login=YY&passwd=ZZ&dest=".str_replace(",","&dest=",$sDestination)."&msg=".urlencode(utf8_encode(substr($sMessage,0,30)))."&url=".urlencode(utf8_encode(substr($sUrl,0,85))); $fp = fsockopen("www.pasarelasms.net", 80); // Reemplazar la cadena ’/sustituirPOSTsms’ por la parte correspondiente // de la URL suministrada por Altiria al dar de alta el servicio $buf = "POST /sustituirPOSTsms HTTP/1.0\r\n"; $buf .= "Host: www.pasarelasms.net\r\n"; $buf .= "Content-type: application/x-www-form-urlencoded; charset=UTF-8\r\n"; $buf .= "Content-length: ".strlen($sData)."\r\n"; $buf .= "\r\n"; $buf .= $sData; fputs($fp, $buf); $buf = ""; while (!feof($fp)) $buf .= fgets($fp,128); fclose($fp); if (strstr($buf,"ERROR")) return $buf; else return ""; } /* $resp= AltiriaSMS("34600111222,34600111333", "Texto de prueba", "http://www.pasarelasms.es"); if (!$resp) print "Mensaje enviado correctamente!\n"; else echo strstr($resp,"ERROR"); */ ?-->