Introducción
Si alguna vez quisiste tener un robot personal, entonces estás leyendo un artículo correcto. Este tutorial es una breve demostración de la facilidad con la que puede configurar su robot personal o de empresa y, poco después, conectarlo con uno de los adaptadores disponibles como:shell, campfire, hipchat, irc, gtalk o skype. En este tutorial, le enseñaré cómo configurar Hubot con su adaptador Shell predeterminado. Aunque es la opción más sencilla, es la base sólida para futuras modificaciones.
Hubot configurado y conectado correctamente puede mejorar y reducir drásticamente la eficiencia de los empleados, así como brindarle a su empresa mucha diversión. Además, puede proporcionarle a su equipo los canales RSS más recientes o enviar notificaciones cruciales. Tenga en cuenta que Hubot fue desarrollado por el equipo de Github, por lo que son los siguientes profesionales para dedicar un tiempo a las investigaciones.
Entonces, ¿qué es Hubot?
Hubot es de código abierto, escrito en CoffeeScript en Node.js. Se puede implementar fácilmente en plataformas PaaS como Heroku. Hubot viene preinstalado con varios scripts básicos como matemáticas, ping, ayuda, traducir o youtube.
Además, puede visitar el repositorio de la comunidad que proporciona muchos otros scripts interesantes (p. ej.:ascii, coin, deployment, dice o jenkins). Si esta lista aún no cumple con sus expectativas, siéntase libre de escribir su propio guión usando CoffeScript.
Para empezar, quería presentar algunos ejemplos que espero arrojen algo de luz sobre este tema.
Hubot> hubot convert me 56MB KB Hubot> 57 344 kilobytes Hubot> hubot mustache me linuxconfig.org Hubot> http://mustachify.me/2?src=http://img1.tuicool.com/aqi6r52.jpg#.png Hubot> hubot translate me praktyczne Hubot> "praktyczne" is Polish for " Practical " Hubot> hubot image me niagara falls Hubot> http://www.niagarafallslive.com/images/HorseshoefromSkylon.jpg#.png Hubot> hubot convert me 5 years days Hubot> 1 826.21099 days Hubot> hubot math me 2(3+7)/4 Hubot> 5 Hubot> hubot die Hubot> Goodbye, cruel world.
La siguiente captura de pantalla ilustra los comandos básicos de Hubot:
En la siguiente imagen se presenta una configuración más avanzada que muestra una situación en la que Hubot se configuró con el adaptador Hipchat (chat de grupo privado y mensajería instantánea) y estoy en medio de una conversación privada con Bolo Bot.
Configuración de Ubuntu para Hubot
Antes de darle instrucciones detalladas sobre cómo configurar Ubuntu para Hubot, creemos la lista de requisitos previos:
- entorno node.js
- gestor de paquetes de nodos
- comandos git, café y pastel
Instalar Ubuntu
Instale Ubuntu Desktop de 32 bits 12.04 LTS.
Actualizar repositorios
En primer lugar, una vez finalizada la instalación de Ubuntu, actualice todos sus repositorios para los paquetes más recientes:
$ sudo apt-get update
Instalar requisitos previos
Luego, asegúrese de tener el paquete build-essential.
$ sudo apt-get install build-essential
Instalar Node.js
Ya es hora de instalar el entorno Nodejs, por lo que sugiero elegir la versión estable más nueva para Ubuntu. En primer lugar, compruebe su situación actual:
$ sudo apt-cache show nodejs | grep Version
Probablemente verá 0.6.12~dfsgq-1ubuntu1, que es bastante antiguo. Sería mucho mejor usar una versión más nueva, así que agregue un repositorio privado haciendo:
$ sudo add-apt-repository -m ppa:chris-lea/node.js
En caso de que no tenga el comando add-apt-repository, haga lo siguiente:
$ sudo apt-get install python-software-properties
Si ve /etc/apt/sources.list.d/chris-lea-node_js-precise.list archivo, significa que lo ha agregado correctamente. A continuación, actualice todos sus repositorios nuevamente y descargue todo desde chris-lea archivos de paquetes personales con:
$ sudo apt-get update
A partir de ahora, está listo para instalar la versión más reciente de Nodejs para Ubuntu con el simple comando:
$ sudo apt-get install nodejs
Compruebe su versión ejecutando:
$ node -v
luego intente crear un script simple que configure el servidor http para probar sus acciones anteriores.
cat > ~/server.js <<EOF
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(1337, "127.0.0.1");
console.log('Server running at http://127.0.0.1:1337');
EOF
A continuación, después de ejecutar node ~/server.js, visite su navegador favorito y escriba la siguiente URL:http://127.0.0.1:1337 . Deberías ver Hello World text, que indica que ha instalado Nodejs correctamente.
También deberá instalar el administrador de paquetes de nodos para administrar fácilmente todos los módulos de nodejs.
$ sudo apt-get install npm
A partir de ahora debería poder ejecutar:
$ npm -v
Instalación de concentrador
Antes de instalar Hubot, necesitará git , el sistema de gestión de código fuente distribuido. Solo haz el comando simple:
$ sudo apt-get install git-core
y está listo para clonar todos los repositorios públicos que aloja Github. Esas y muchas más.
Ya es hora de instalar el robot Hubot, ¡así que hagámoslo! Instale todos los paquetes necesarios haciendo:
$ sudo apt-get install libssl-dev redis-server libexpat1-dev
Con el uso del administrador de paquetes de nodos, también deberá instalar globalmente terminales de café y pasteles.
$ sudo npm install -g coffee-script
Desde ahora, puede usar los comandos de café y pasteles en toda su instalación de ubuntu. Ya es hora de descargar el último código fuente de Hubot de Github. He decidido ponerlo ahí:
$ cd /opt && sudo git clone git://github.com/github/hubot.git
lo que crea /opt/hubot carpeta. A continuación, utilice el administrador de paquetes de nodos para descargar todas las bibliotecas necesarias en las que se basa Hubot haciendo lo siguiente:
$ cd /opt/hubot && sudo npm install
También puede buscar y obtener más información sobre los paquetes a través de la exploración del sitio web de registro de npm. Mientras tanto, una vez que finalice el proceso de instalación, ejecútelo desde /opt/hubot directorio de trabajo:
$ npm ls
y pronto debería ver el árbol de paquetes similar al que se muestra a continuación.
hubot@hubot-nest:/opt/hubot$ npm ls [email protected] /opt/hubot ├── [email protected] ├─┬ [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ └── [email protected] ├── [email protected] ├── [email protected] ├── [email protected] └── [email protected]
Si su respuesta a ¿Desea tener su propio robot personal? la pregunta es afirmativa, ejecute:
cd /opt/hubot && ./bin/hubot
y en un abrir y cerrar de ojos aterrizarás en la terminal de Hubot, donde podrás jugar.
Hubot> hubot echo “I did it” Hubot> hubot who is Hubot
La mejor manera de descubrir todas las opciones de hubot es escribiendo:
Hubot> hubot help
Una vez que se familiarice con los comandos de hubot y las secuencias de comandos básicas, podrá convertir valores, realizar cálculos matemáticos simples o buscar imágenes con google. Podrá ver películas de YouTube, especificar ubicaciones en Google Maps o incluso dibujar bigotes en la imagen de alguien como se mostró en capturas de pantalla antes. Al enseñarle a su robot más scripts, pronto verá cómo convertir el texto a ascii o saludar a alguien con cerveza. Esta y muchas más funciones te están esperando.
Conclusión
Es solo la punta del iceberg. El código fuente de Hubot se actualiza constantemente, por lo que puede seguir los cambios de su repositorio en Github. También puede consultar su página Wiki para ver cuántos adaptadores se escribieron hasta ahora. Si lograste probar otros adaptadores además de Shell o Hipchat antes que yo, con gusto escucharé tus sentimientos y consejos.