6 dic 2017

IBM i : Creando códigos QR fácilmente



Uno de mis primeros trabajos en sistemas fue dando mantenimiento a un sistema de producción. Este sistema usaba códigos de barras que eran leidos por hand-helds, las cuales enviaban la información al sistema. Obviamente soñaba con códigos de barra.
Cuando teníamos una contingencia soñaba con la posibilidad de que algún día mi celular pudiera leer los códigos de barra para poder trabajar de forma simple y sin depender de los costosos y complejos hand-helds, que tenían una aplicación hecha a pedida.
El tiempo pasó y los celulares incorporaron navegación, luego teclado, finalmente pantallas de múltiples líneas. Desarrollé un sistema simple para la entrega de documentos que nunca se puso en producción, pero seguía pensando que debía existir una forma más elegante o seria de hacer las cosas si usáramos códigos de barras en los documentos/sobres y lectores "pegados" a los teléfono-radios de aquel entonces.
Hasta que un día vi en un cartel un código QR, pero ya no trabajaba en distribución ...
La verdad es que los códigos QR se pueden emplear de muchas formas muy interesantes: compartir contactos, confirmar información en documentos, seguridad en un esquema 2FA, recepción de documentos, etc. Y ya podemos generalos en IBM i.
Como siempre he dicho, IBM i es tan flexible como quieras hacerlo. Hace ya tiempo que alguien se tomó la molestia de compilar herramientas open source para que corran en IBM i, y desarrolló una serie de herramientas para poder usarlas.
Lo que deben hacer es ir a la página http://yips.idevcloud.com/wiki/index.php/pase/opensourcebinaries y descargar las herramientas: download-2.0.tar.zip y setup2.sh y descargarlo en un directorio del IFS, digamos /tmp. Con un usuario *SECOFR debemos hacer lo siguiente:
QSH

cd /tmp
jar -xvf download-2.0.tar.zip
cd /QOpenSys
tar xvf /tmp/download-2.0.tar
cd /QOpenSys/download
cp /tmp/setup2.sh .
./setup.sh
./setup2.sh
Eso instalará las herramientas de descarga de programas open source, antecesores del 5770-OPS.
Ahora viene lo entretenido, debemos instalar el programa "QREnconde". Este programita me permite generar códigos QR en diferentes formatos gráficos (PNG por default). Para poder instalarlo haremos:
QSH

cd /QOpenSys/download
./wwwperzl.sh aix61 wget qrencode-3.4.3-1
./wwwperzl.sh aix61 rpm  qrencode-3.4.3-1
Listo, ya tenemos instalado el qrencode. Qué podemos hacer con él?
QSH

qrencode -o qr-esselware.png http://www.esselware.com.mx

Con esto generamos una imagen qr-esselware.png con la siguiente imagen
O bien, puedo crear una vCard para que sea fácilmente incorporada en la lista de contactos de mi celular, crean un archivo de texto con el siguiente contenido:
BEGIN:VCARD
N:Diego E. KESSELMAN
URL:http://www.esselware.com.mx
EMAIL:dkesselman@esselware.com.mx
TEL:+54-55-9000-1729
END:VCARD
y luego haremos lo siguiente:
cat test.vcard | qrencode -o qr_dkesselman.png 
Esto nos generará la siguiente imagen:
Obviamente esto se puede incorporar en un reporte, en una página web, en una aplicación , etc.
Espero que les sea de utilidad

Cómo conectarme a un servidor remoto en una red protegida - Versión actualizada

En un artículo anterior describí cómo conectarse a un equipo remoto en una red protegida http://diego-k.blogspot.mx/2014/12/como-conectarme...