Está en la página 1de 2

http://lopezivan.blogspot.com/2007/05/usando-el-api-de-google-calendar.

html --
original
http://elias.badenes.es/zend-framework/alarmas-sms-gracias-a-google

Alarmas Sms (gracias a google)


JUL 04
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.

Posted by Elias google

También podría gustarte