Archivo de la etiqueta: Linux

Instalar Whatsapp en un Linux

@cmdearcos
Grupo TIECs

 

¿Para qué queremos instalar un Whatsapp en un Linux?. Hace tiempo me pregunté que si en vez de mandar correos (que ya no los leo en el móvil por la cantidad ingente de los mismos) o SMS de forma automática cada vez que algún sistema tiene una incidencia por qué no mando un Whatsapp al móvil. Y desde entonces todos los sistemas que instalo en Raspberry Pi dan las incidencias vía Whatsapp.

Os voy a dejar un pequeño Howto o “guía burros” que os ayude a instalar el whatsapp en vuestro pidgin de ubuntu.

El primer paso para esto es actualizar los paquetes que necesitamos para la instalación. Para ello ejecutamos el siguiente comando desde un terminal:

– sudo apt-get install git pidgin python2.7 python-dateutil python-argparse libglib2.0.0 libglib2.0-dev libpurple-dev git make g++

Una vez instalado todos los paquetes que necesitamos nos descargamos las aplicaciones Whatsapp-purple y yowsup:

– sudo git clone https://github.com/davidgfnet/whatsapp-purple
– sudo git clone https://github.com/tgalal/yowsup.git

Estos dos comandos nos crearan las carpetas whatsapp-purple y yowsup en el directorio donde nos encontremos en el momento de ejecutarlo.

El siguiente paso es entrar en la carpeta whatsapp-purple y compilar la librería dinámica. Para ello una vez dentro del directorio es necesario ejecutar el comando make. Generada la librería dinámica es necesario copiarla en el directorio de pidgin /usr/lib/pidgin/ para que pueda utilizarlo

– sudo cp -rf libwhatsapp.so /usr/lib/pidgin/

Posteriormente es necesario dar permisos al script de python yowsup con el comando:

– sudo chmod +x ../yowsup/src/yowsup-cli

Una vez que el script tiene permisos de ejecución es necesario dar de alta el fichero de configuración donde están los datos de nuestro teléfono. Para ellos ejecutamos el siguiente comando:

– sudo nano ../yowsup/src/whatsapp_config.txt

El fichero tendrá el siguiente formato, donde debéis sustituir el teléfono 612345678 por el vuestro.

cc=34
phone=34612345678
id=
password=

Una vez que tenemos el fichero de configuración es necesario registrar el teléfono. Para ello ejecutáis los siguientes comandos:

– cd ../yowsup/src/
– sudo ./yowsup-cli -c whatsapp_config.txt –requestcode sms

Pasado unos segundos (no he tenido que esperar mucho) recibiréis un SMS con un código que tiene el formato XXX-XXX, donde cada X es un número. Con dicho código es necesario ejecutar el siguiente comando:

– sudo ./yowsup-cli -c whatsapp_config.txt –register XXX-XXX

El comando devolverá una salida similar a la siguiente:

status: ok
kind: free
pw: warK5+Uo5ohj0eOobair6e=
price: 0,89 €
price_expiration: 1206749205
currency: EUR cost: 0.89
expiration: 1749384503
login: 612345678
type: existing

Por último es necesario copiar el dato pw en el fichero de configuración whatsapp_config.txt quedando éste de la siguiente forma

cc=34
phone=34612345678
id=
password=warK5+Uo5ohj0eOobair6e=

Para comprobar que todo está bien podemos mandar un mensaje vía comando a un número conocido (por ejemplo 687654321), Para ello es necesario ejecutar el comando:

– python yowsup-cli -c whatsapp_config.txt -w -s 687654321 “Mensaje de prueba” 

Si se recibe el mensaje de “was” es que todo esta bien y es el momento de entrar en pidgin para empezar a utilizarlo. Entrando en Cuentas -> Gestionar cuentas podremos añadir los datos de la cuenta de Whatsapp. En el campo usuario pondremos nuestro teléfono con el 34 delante (en nuestro ejemplo 34687654321) y en el campo contraseña la que nos ha llegado por SMS (en nuestro ejemplo warK5+Uo5ohj0eOobair6e=). Llegados a este punto es necesario añadir en pidgin aquellos contactos con los que queramos comunicarnos para poder realizarlo.

Y, ¿Dónde consigo un número de teléfono diferente al que uso habitualmente para poder mandar las incidencias de los sistemas?. Aquí os dejo una posibilidad que yo he utilizado: FonYou.

Si lo ponéis en marcha me gustaría saber vuestra opinión.

 

@cmdearcos
Grupo TIECs

Raspberry y Arduino: un tándem perfecto

@cmdearcos
Grupo TIECs

 

Cada vez somos más los que utilizamos para diferentes soluciones y proyectos Arduino y Raspberry Pi. Hace unos días un antiguo compañero se puso en contacto conmigo para que le ayudara a iniciarse en este mundillo porque entendía, después de haber leído algunas cosas sobre estos entornos, que podría utilizar estas herramientas como solución en un problema. Le mande un correo con varios links que he convertido en artículo y que espero pueda ayudar a los que se introducen en este campo.

La plataforma Arduino es uno de los productos de hardware de código abierto más populares que han llegado al mercado. Consta de un una tecnología hardware de código abierto, un lenguaje de programación y un entorno de desarrollo.

Con poco conocimiento en electrónica (algunos habíamos pedido mucha habilidad con el paso de los años) se pueden desarrollar proyectos muy interesantes y ampliar funcionalidad gracias a los escudos (shields). Estos escudos son elementos hardware que amplían la funcionalidad de la placa Arduino.

La placa Arduino no dispone de un sistema operativo.

En cambio la placa Raspberry Pi es un ordenador como tal, con todo el potencial de un sistema operativo (Linux). Y, ¿qué pasa si combinamos una Raspbarry con Arduino?. Que se nos abre un mundo nuevo para abordar nuevos proyectos, como bien había deducido mi antiguo compañero.

Para poder utilizar los escudos de Arduino con la Raspberry Pi necesitamos el “raspberry pi to arduino shields connection bridge”. Aquí os dejo información de la placa.

¿Cómo instalar las librerías ArduPi para poder utilizar los escudos Arduinos con la Raspberry Pi?.

Lo primero que debemos hacer es bajar la librería. En el tutorial de la placa que os he dejado antes esta la última versión de la librería (1.5 en el momento de escribir este artículo). Para bajarse la librería a la Raspberry Pi podéis ejecutar el siguiente comando: “wget www.cooking-hacks.com/skin/frontend/
default/cooking/images/catalog/documentation/
raspberry_arduino_shield/arduPi_1-5.tar.gz
”.

Una vez tenemos el fichero en la Raspberry Pi desempaquetamos el fichero: “tar xzvf arduPi_1-5.tar.gz”.

Después de desempaquetar la librería veréis que esta solo tiene 3 ficheros: arduPi.cpp, arduPi.h y arduPi_template.cpp. Los dos primeros ficheros son la librería propiamente dicha, mientras que el último fichero es una plantilla para realizar los programas en c++ para utilizar la librería para acceder a los escudos arduinos. Para tener la librería debéis de compilarla: “g++ arduPi.cpp -o arduPi.o”.

Ahora es el momento de hacer un programa. Tenéis varios ejemplos en la página WEB de Arduino que podéis utilizar como ejemplo. Si utilizáis el ejemplo del parpadeo de un LED y llamáis al fichero blink.cpp (utilizando la plantilla arduPi_template.cpp) la compilación del programa en Raspberry sería: “g++ -lrt -lpthread blink.cpp arduPi.o -o blink”.

Ya solo queda ejecutar el programa: “sudo ./blink”.

No es objetivo de este artículo entrar en la programación sino ayudar a los programadores a acceder rápidamente a la información básica para que puedan empezar. Espero que os ayude a los que empezáis con Raspberry Pi.

 

@cmdearcos
Grupo TIECs

Sistemas empotrados: Raspberry pi una solución

@cmdearcos
Grupo TIECs

 

Antes del boom de las .com poca gente en España hablaba de sistemas empotrados, aunque a finales de los 90 ya se hablaba mucho de Linux y empezabamos a conocer sus versiones para sistemas empotrados, al menos en los entornos más técnicos (universidad).

Mi primera experiencia con sistemas empotrados fue en un proyecto para la Armada Española, donde la electrónica era propietaria, al igual que los sistemas operativos (en realidad librerías con funcionalidades básicas) y los entornos de desarrollo. Mirando hacia atrás vemos que se ha evolucionado con este tipo de sistemas y ahora hablamos de Arduino, hardware libre y Raspberry pi, todo un ordenador que se puede encontrar por 25,00 €.

¿Para qué queremos un sistema empotrado?. Un sistema empotrado es un sistema que sirve para realizar unas pocas funciones dedicadas, a diferencia de un ordenador que es un sistema de propósito general. Actualmente hay muchos sistemas de control y gestión de la eficiencia energética que tienen sistema hardware de propósito general, que encarecen el producto final y del que no se aprovecha más del 20 o el 30% de su potencialidad. Todos estos sistemas son susceptibles de mejorarse con sistemas empotrados al menos en dos líneas diferentes:

  • Disminución del coste de la solución final.
  • Menos consumo eléctrico de los dispositivos (el tamaño hardware es acorde a los usos). Estos sistemas suelen estar encendidos 24×7 por lo que un menor consumo supone un ahorro importante.

Raspberry pi es una herramienta que permite desarrollos potentes con un coste mínimo para proyectos de todo tipo, incluidos proyectos TIECs. Esta placa consume como máximo 5W (1A/5V) y dispone de toda la funcionalidad de un sistema operativo Linux. Aquí os dejo una quick-start para aquellos que no conocen este “nuevo” ordenador y quieren ampliar información.

Uno de los problemas actuales de los proyectos TIECs es el elevado coste de algunas soluciones hardware del mercado. En estos momentos, junto con AICE, estoy desarrollando una solución domótica basada en Raspberry pi para comunidades de vecinos.

Me consta que ideas para desarrollar nuevos productos y servicios en este tipo de herramientas existen. Personalmente tengo diferentes ideas para distintos sectores que por falta de inversión no he podido desarrollar. Actualmente estamos utilizando estas herramientas como soluciones low cost para la integración de sistemas, lo que nos ha permitido adquirir el Know how suficiente para proponer productos y servicios a la espera de que la mejora económica permita al usuario final adquirirlo.

En próximas entradas ampliaremos información sobre Arduino, Raspberry pi y las nuevas herramientas que vayan apareciendo.

 

@cmdearcos
Grupo TIECs