lunes, 23 de febrero de 2015

Tus propias Notificaciones Inteligentes - Parte 2 Pushetta

Tener nuestras propias notificaciones inteligentes es posible ya hemos hablado de Pushover, el mayor problema es que se debe pagar, lo cual limita a muchos a pesar que su precio es pequeño.

Hoy hablaremos de Pushetta.


Básicamente Pushetta permite crear de manera  gratuita canales para enviar notificaciones a varios dispositivos (Android, iOS, Windows Phone y Chrome)



Pushetta trabaja por suscripciones, así que debes buscar el canal del cual quieres recibir las notificaciones y con un simple tap te suscribes.

Para crear nuestro propio canal nos dirigimos primero a www.pushetta.com y nos registramos (como dato la página esta en ingles, si necesitas ayuda con eso puedes usar el traductor de google.)

Una vez Registrados vamos a la opción de menú "Channels" para presionar el botón "Add a Channel", esta acción nos va a cargar el formulario de creación de canales.



Nota: Es muy importante que sepan que al momento de escribir este artículo, los canales no se pueden modificar, por lo que la información que pongan aquí luego no se puede variar.

Para "Channel Icon" vamos a necesitar una imagen o un icono de 256x256 px

En "Channel Name" debemos poner el nombre de nuestro canal, si dejan espacio en blanco aquí vas a tener que sustituirlos por caracteres especial por ejemplo: tengo un canal que se llama "Tipo de Cambio en CR" a la hora de usar el nombre en la API debo poner Tipo%20de%20Cambio%20en%20CR

En "Description" esta claro que debemos poner una descripción de lo que notificara el canal.

En "Kind" aquí decidimos si el canal el público o privado.
  • El público permite que cualquiera se registre al canal
  • El Privado envía una petición al dueño del canal para autorizar que reciba las notificaciones.
Y Finalmente "Hidden", con esta opción marcada para encontrar nuestro canal la persona que nos busca debe saber el nombre exacto del mismo, si la opción se queda sin marcar cualquiera que haga búsquedas en la lista de canales podrá ver el nuestro.



Una vez listo nuestro canal, nos dará un URL que podemos compartir con la opción para que se registren desde chrome. 

También tendremos un espacio llamado "Push a Message" para enviar mensajes de prueba o generales a nuestros suscriptores, además de una lista los últimos suscriptores y los últimos mensajes.

Para enviar mensajes de cualquier dispositivo pueden ver el api o la documentación con ejemplos

A la hora de crear el Scritp necesitamos tener dos cosas claras
  1. El Api Key: este se lo verán en la opción de Menú "DashBoard"
  2. Y el nombre del canal.



El código de ejemplo para cUrl es

 curl -H "Authorization: Token {API KEY}" -H "Content-Type: application/json" -X POST  -d "{ \"body\" : \"Hello World\", \"message_type\" : \"text/plain\" }"\
                 http://api.pushetta.com/api/pushes/{Channel Name}/

Donde 
  • {API KEY} lo cambiamos por nuestra api key
  • {Channel Name} por el nombre de nuestro canal recordar cambiar los espacio en blanco por %20
  • Hello World, lo reemplazamos por el mensaje que queremos que envié.

La web de Documentación incluye códigos para linux, Arduino, Python, .net, PowerShell, PHP y JAVA

Pushetta es totalmente gratuito y no tiene limite de notificaciones al momento de escribir este post. 

Espero sus comentarios sobre los dos artículos y les dejó como suscribirse a nuestro canal de tipo de cambio.




lunes, 16 de febrero de 2015

Tus propias Notificaciones Inteligentes - Parte 1 PushOver

Actualmente necesitamos estar enterados de muchas cosas en nuestro trabajo en especial si eres informático, saber si algun programa se ejecuta de manera correcta o si por alguna razón fallo en el momento es muy importante.

Crear una plataforma propia es un gran esfuerzo que puede ser molesto y caro, ya que es muy probable que tengamos que crear nuestra propia app con todo lo que eso con lleva.

Ahora existen soluciones que nos permiten por poco dinero o ninguno poder crear nuestras propias notificaciones.




Iniciaremos con PushOver

PushOver nos permite de manera sencilla y rápida crear notificaciones desde casi cualquier plataforma, lo único que necesitas es acceso a Internet y que la plataforma pueda hacer peticiones http.

PushOver tiene bastantes apps conectadas a el y con las que podrás enviar notificaciones:

  • Por email
  • Ifttt
  • Adium
  • Botize
  • Github
  • Moodle
  • WordPress
  • Drupal
  • Estos por mencionar algunos.

Pero el verdadero potencial de PushOver esta en que puedes crear tus propias app.

Antes de ver eso vamos a hablar de la parte más fea, el costo, Pushover tiene soporte para dispositivos Android, iOS y navegadores web, la licencia para usar cada una de estas app es de $4.99 una sola vez, la licencia de este dispositivo estará ligada a tu cuenta por lo que no podrás transferirla a menos que vamos usen la misma cuenta, lo cual puede ser un poco confuso. También se ofrece descuento por cantidades de licencias.

Regresando al tema, la parte que realmente llama la atención es la de poder crear nuestras propias apps 

Nos podemos registrar en la web de pushover.net de manera gratuita, aunque deben recordar que hay que pagar por las apps. 

Para crear nuestra propia app de manera gratuita necesitamos los siguientes datos:
  • Nombre de la app
  • Tipo que podemos elegir entre: plugin, website, Aplicacion, Script y otro.
  • Una descripción
  • Y un icono png de 32x32 opcional.

Luego que damos clic para generar la app, nos va a dar un API Key que junto al user key nos permitirá enviar las notificaciones, muy importante es que PushOver nos da por app 7500 notificaciones al mes, si necesitas mas hay que pagar paquetes que van desde las 10.000 ($50) notificaciones en adelante.




También se permite crear tu canal para suscripciones y una función muy útil que es crear grupos  donde puedes agregar por medio de userkey a varias personas para recibir notificaciones.

Ya que hemos hablado un poco sobre PushOver y algunas cosas básica entremos en materia, las notificaciones.

Aqui les dejo un ejemplo en Bash linux 
 

URL="https://api.pushover.net/1/messages.json"
API_KEY="XXXXXXXXXXXXXXXXXXXXXXX"
USER_KEY="XXXXXXXXXXXXXXXXXXXXXXX"
DEVICE="all"
SOUND="siren"
PRIORITY="1"
TITLE="Desde Linux"
MESSAGE="Hola Mundo!"
curl \
  -F "token=${API_KEY}" \
        -F "user=${USER_KEY}" \
        -F "device=${DEVICE}" \
        -F "title=${TITLE}" \
        -F "message=${MESSAGE}" \
        -F "sound=${SOUND}" \
        -F "priority=${PRIORITY}" \
"${URL}" > /dev/null 2>&1


Como pueden ver en el ejemplo, se usa cURL para enviar la petición http

User y Api Key son los datos que nos da la web de pushover.

Usamos varios parámetros device nos va permitir escoger a cual o cuales dispositivos queremos enviar la alerta, en este caso tenemos "all", pero se puede poner el nombre del dispositivo para enviar a uno solo.

Sound no permite escoger entre mas de 15 sonidos diferentes, para personalizar aun más la notificación, se puede omitir en caso de no querer usarla y sonara el sonido por defecto.

Priority 1 envía la notificación como de alta importancia, se puede omitir si es necesario además que tiene -2 no crear una alerta, -1 notificación silenciosa, 2 requiere aprobación del usuario.

Titulo y mensaje pues para enviar lo que necesitamos.

para ver otros parámetros puedes visitar https://pushover.net/api

En ejemplo vimos como usarlo en linux específicamente lo tengo corriendo en una Raspberry Pi con Raspbian pero también puede usarlo en:
  • Sql
  • PRTG
  • Nagios
  • Arduino
  • DomotiGa
  • PlexWatch
  • PHP
  • Python
  • Entre muchos otros
Ojala que este breve introducción a PushOver les ayude en algún proyecto, y para los que no tengan dinero para invertir una app de estas no se preocupen en la Parte 2 tendremos una opción a pushover gratis.