Alarmas Sms (gracias a google)

Hola el otro día vi en el blog de Ivan López como usaba las alarmas del google calendar, para enviarse SMS al móvil con ‘alertas’, y así poder tener controlado sus servidores.
El ‘problema’, es que esta en java, así que decidí hacer lo mismo pero en php, para que mas gente pudiese usarlo.

El modo de empleo es el mismo, necesitas PHP 5.1.4 o superior (son las necesarias para usar la API) y las librerías ZEND de Gdata.

Para mas información del uso de la API se puede mirar directamente a la web de google code.

/*
** Generador de alertas sms a traves de google
** Basado en el de Ivan Lopez (lopezivan.blogspot.com)
** Elias Badenes, 2007
** elias (at) badenes (dot) es
*/
require_once 'Zend/Loader.php';
Zend_Loader::loadClass('Zend_Gdata');
Zend_Loader::loadClass('Zend_Gdata_AuthSub');
Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
Zend_Loader::loadClass('Zend_Gdata_Calendar');

function crearAlerta($cliente, $texto) {
$dia  = date('Y-m-d');
$hIni = date('H:i', strtotime('now +6 minutes'));
$hFin = date('H:i', strtotime('now +7 minute'));

$gdataCal = new Zend_Gdata_Calendar($cliente);
$evento   = $gdataCal->newEventEntry();
$startDate = $dia;
$endDate   = $dia;
$tzOffset  = '+02'; //en verano '+02' en invierno '+01'
$startTime = $hIni;
$endTime   = $hFin;

//asigno el texto
$evento->title = $gdataCal->newTitle($texto);

//Asigno el tiempo
$cuando = $gdataCal->newWhen();
$cuando->startTime = "{$startDate}T{$startTime}:00.000{$tzOffset}:00";
$cuando->endTime = "{$endDate}T{$endTime}:00.000{$tzOffset}:00";

//alerta sms
$metodo = 'sms'; //alert, email o sms
$alerta = $gdataCal->newReminder();
$alerta->setMinutes(5);
$alerta->setMethod('sms');
$cuando->setReminders(array($alerta));

$evento->when = array($cuando);

echo 'Insertando Alerta: '.$texto."n";
$a = $gdataCal->insertEvent($evento);
}

if(count($argv) < 4) {
echo "Uso: $argv[0] <usuario> <password> <texto>n";
die();
}

$usuario  = $argv[1];
$password = $argv[2];
$texto    = '';
$argc     = count($argv);

for( $i=3; $i>$argc; $i++) {
$texto .= $argv[$i].' ';
}

$servicio = Zend_Gdata_Calendar::AUTH_SERVICE_NAME;
$cliente  = Zend_Gdata_ClientLogin::getHttpClient($usuario, $password, $servicio);
crearAlerta($cliente, trim($texto));

Espero que lo disfruteis.

18 Responses to Alarmas Sms (gracias a google)
  1. Trackback: meneame.net
    Alarmas Sms (gracias a google)... Pequeño script en PHP para mandarte alertas SMS....... meneame.net/story/alarmas-sms-gracias-a-google
  2. [...] correos, pop-ups cuando estas en la cuenta o bien envio de mensajes al celular. En esta otra Web, Elias ... marcosdonoso.cl/?p=89

Deja una respuesta

Your email address will not be published. Please enter your name, email and a comment.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.