Enviar SMS con SOAP y PHP

El envío de SMS con SOAP y php puede realizarse a través de la pasarela web service SOAP SMS de Altiria.

Te proporcionamos código de ejemplo para utilizar el protocolo de comunicación SOAP desde php y la pasarela web service SMS de Altiria para conseguir enviar SMS con PHP.

Para tener conocimiento de todos los detalles de cómo funciona el servicio de pasarela conviene revisar la documentación técnica de envío de SMS, API SMS.

Desarrollador

Código de ejemplo para enviar SMS con SOAP y PHP

El siguiente ejemplo es funcional y puedes utilizarlo directamente una vez sustituyas los valores de los parámetros proporcionados por Altiria para acceder a la pasarela. Si encuentras dificultades para integrar el envío de SMS masivo con SOAP – php, te recomendamos revisar con cuidado la especificación técnica o consulta nuestra página de preguntas frecuentes de integración de envío de SMS.

Código de ejemplo de PHP para el envío de SMS con SOAP:

<?php 
require_once('nusoap-0.9.5/lib/nusoap.php');
//Se fija la URL de los servicios web
//Como ejemplo se suministra la URL del fichero WSDL www.altiria.net/sustituirWSDLUrl?wsdl
//Se debe reemplazar la cadena /sustituirWSDLUrl por la parte correspondiente
//de la URL suministrada por Altiria para el fichero WSDL en SOAP 1.1 al dar de alta el servicio
//y solicitar una cuenta de prueba
$client = new nusoap_client('http://www.altiria.net/sustituirWSDLUrl?wsdl', true);

//conection timeout = 5 segundos
$client->timeout = 5;

//timeout de espera de respuesta = 60 segundos
$client->response_timeout = 60;

//Codificacion UTF-8
$client->soap_defencoding = 'UTF-8';
$client->decode_utf8 = true;

$err = $client->getError();
if($err){
echo 'Constructor error'.$err;
}

//Se preparan los datos del servicio web
//YY y ZZ se corresponden con los valores de identificacion del usuario en el sistema
//proporcionados por Altiria al dar de alta el servicio
//y solicitar una cuenta de prueba
$operation = 'sendSms';
$credentials = array('login'=>'YY','passwd'=>'ZZ');
//Se incluye el remitente autorizado por Altiria al dar de alta el servicio.
//Omitir el parametro senderId si no se cuenta con ninguno.
$message = array('msg'=>'Mensaje de prueba', 'senderId'=>'remitente');
$destination = array ('346xxxxxxxx','34yyyyyyyy');
$params = array(array('credentials'=>$credentials,'destination'=>$destination,'message'=>$message));
//llamada al web service
$result = $client->call($operation, $params);

print_r($result);
echo "<br?-->";

if($client->fault){
echo ('Fault: ');
print_r($result);
}else{
$err = $client->getError();
if($err){
if (strpos($err,"timed out"))
//error response timeout
echo ('ERROR TimeOut');
else
//error en la conexion o de connetion timeout
echo ('Error: '.$err);
}else{
//Evaluamos la respuesta de Altiria
if($result['status']!='000'){
echo 'ERROR. Codigo de Altiria: '.$result['status'];
}else{
foreach ($result as $clave => $val){
if($clave=='details') {
//Array ([status]=>000 [details]=>Array ([destination]=>34xxxxxxxx [status]=>000))
if(sizeof($destination)==1) {
if ($val['status']=='000')
echo $val['destination']." OK
";
else
echo $val['destination']." ERROR. Codigo de error de Altiria: ".$val['status']."
";
}
//Array ( [status] => 000
// [details] => Array (
// [0] => Array ( [destination] => 346xxxxxxxx [status] => 000 )
// [1] => Array ( [destination] => 346yyyyyyyy [status] => 000 ) )
// )
else {
foreach ($val as $clave2 => $val2){
if ($val2['status']=='000')
echo $val2['destination']." OK
";
else
echo $val2['destination']." ERROR. Codigo de error de Altiria: ".$val2['status']."
";
}
}
}
}
}
}
}

?>

Protocolos de comunicación soportados

La API SMS se puede utilizar con los siguientes protocolos de comunicación:

Características

Descubre las funcionalidades avanzadas de Altiria para el envío de SMS

Confirmación entrega SMS

Confirmación de entrega

Remitente SMS

Remitente personalizado

Estadísticas

Estadísticas

Programación envío SMS

Programación de envíos

SMS concatenados

SMS largos, más de 160 caracteres

Landing SMS

Editor de landing

SMS Unicode

Unicode. Acentos y otros alfabetos

Eliminar duplicados

Elimina teléfonos duplicados

SMS personalizados

Textos personalizados

Plantillas SMS

Plantillas de mensajes

Recordatorio citas SMS

Recordatorio de citas

Pruébalo gratis