jueves, 30 de agosto de 2012

Entérate cuando pierde la cobertura tu Android

Alerta Cobertura!

He preparado una aplicación para los moviles con Android llamada Alerta Cobertura. Este es el link de Google Play https://play.google.com/store/apps/details?id=com.endika_iglesias.alerta.cobertura 
Y este es el texto de descripción: Tienes miedo de perder la cobertura y no darte cuenta de ello. Prueba Alerta Cobertura! la aplicación que he desarrollado es muy limitada pero hace su cometido. Emite un sonido fuerte cuando la cobertura se pierde y una campanilla cuando se recupera. Si teneis alguna duda o sugerencia estoy encantado de atenderlas, contactar conmigo en @endika_iglesias muchas gracias ;)
Por último aquí esta el evento creado en Weertik.
Un saludo

sábado, 25 de agosto de 2012

Eliminar ficheros de los Bucket de Amazon S3 con PHP

Buenas hace un tiempo publique en este blog Usar la SDK de Amazon S3 para subir ficheros ahora toca aprender a eliminarlos. Os dejo un ejemplo:
<?php
error_reporting(-1);
header("Content-type: text/html; charset=utf-8");
require_once 'sdk.class.php';
$ec2 = new AmazonEC2();
$bucket = 'NombreDelBucket';
authenticate($bucket, AmazonS3::ACL_PUBLIC);

//indicamos la ruta donde se localiza el fichero en el bucket.
   $response = $s3->delete_object($bucket, 'ruta/del/Fichero.txt');
//ejecutamos
   var_dump($response->isOk());
?>

viernes, 24 de agosto de 2012

Eliminar instancia EC2 con PHP parte 3 de 3

Y para terminar en esta última parte mostramos como eliminar una instancia con Amazon EC2. Para seguir las anteriores publicaciones:
crear instancia ec2 con php parte 1 de 3
editar instancia ec2 con pho parte 2 de 3

<?php
error_reporting(-1);
header("Content-type: text/html; charset=utf-8");
require_once 'sdk.class.php';
$ec2 = new AmazonEC2();
//SI QUEREMOS ELIMINAR (TERMINATE) UNA INSTANCIA EJECUTAMOS
$response = $ec2->terminate_instances('ID_DE_LA_INSTANCIA');
var_dump($response->isOK());

//EJEMPLO DE LA WEB OFICIAL
//$response = $ec2->terminate_instances('i-1f549375');
//var_dump($response->isOK()); 
Adiós nos vemos pronto.

jueves, 23 de agosto de 2012

Editar instancia EC2 con PHP Parte 2 de 3

Al igual que en el post anterior (crear instancia ec2 con php parte 1 de 3) en este editamos una instancia ya creada
<?php
error_reporting(-1);
header("Content-type: text/html; charset=utf-8");
require_once 'sdk.class.php';
$ec2 = new AmazonEC2();
//Editamos una máquina.
$response = $ec2->modify_instance_attribute('ID_DE_LA_INSTANCIA', array(
    'InstanceType.Value' => 'c1.medium'
));
var_dump($response->isOK());//True o False si todo ha ido bien o mal.

//EJEMPLO DE LA PÁGINA OFICIAL
//$response = $ec2->modify_instance_attribute('i-1f549375', array(
//    'InstanceType.Value' => 'c1.medium'
//));
//var_dump($response->isOK());
Gracias por leerme.

miércoles, 22 de agosto de 2012

Crear instancia EC2 con PHP parte 1 de 3

Muy buenas a todos, hace tiempo que quería publicar estos post. La pena es que actualmente no funcionan al 100% pero no tengo encuentro la forma ni el error. Sigo al pie de la letra toda la documentación de la API de Amazon EC2. 

En el siguiente ejemplo se verá como crearemos una instancia en EC2, con mis comentarios y ejemplos de la web oficial.

Según la ayuda y la info de la web está todo correcto no hay errores. Pero en mi caso no me crea la máquina. Cuando saque tiempo investigaré más en el asunto. Y os preguntareis si está mal por que lo publicas!! pues me repito diciendo que según la ayuda de los técnicos y la documentación de la web de Amazon AWS está correcto. Quiero pensar que el problema es mio por no abrir algún puerto o permisos.
<?php
error_reporting(-1);
header("Content-type: text/html; charset=utf-8");
require_once 'sdk.class.php';

//creamos una máquina a partir de una plantilla ya creada para ello rellenamos los siguientes datos recogidos por POST

$ami = $_POST['amis']; //IDENTIFICADOR DE LA AMIs

$instancetype = $_POST['instancetype']; //TYPO DE INSTANCIA MYCRO,SMALL...

$keyname = $_POST['key']; //NOMBRE DE LA CLAVE DE ACCESO

$securitygroup = $_POST['securitygroups']; //ID DEL GRUPO DE SEGURIDAD

$ec2 = new AmazonEC2();

$response = $ec2->run_instances($ami, 1, 1, array(

    'KeyName' => $keyname,

    'InstanceType' => $instancetype,

    'SecurityGroupId' => $securitygroup,

));

//ejemplo de la web oficial
//$response = $ec2 -> run_instances(
//'ami-38fe7308', 1, 1,
//array(
//'InstanceType' => 'm1.small',
//'KeyName' => 'my-php-key-pair',
//'SecurityGroup' => 'my-php-security-group'));

if (!($response->isOK())) {
    echo "<p class='error'>ERROR! No se ha podido crear la instancia!</p>";
return;}

$instance = $response->body->instancesSet->item->instanceId;
$message = "<p>La instancia se a creado correctamente.</p>";
$message .= ("<p>Instancia ID: <b>$instance</b></p>");

$response = $ec2->describe_instances(array(
    'Filter' => array(
       array('Name' => 'instance-id', 'Value' => "$instance"),
    )
));

if (!($response->isOK())){
    echo "<p class='error'>ERROR! No se puede recibir el hostname de la instancia!</p>";
return;}

$hostname = $response->body->reservationSet->item->instancesSet->item->dnsName;
$message .= "<p>Host de la instancia: <b>$hostname</b></p>";
$message .= "<p>Para conectarte usa el comando:".
"<b>ssh -i $keyname.pem usuario@".$hostname."</b></p>";
echo $message;
Cuando de con mi error actualizaré la información. De todas formas espero que os ayude a vosotros.