rss2twitter: un pequeño proyecto …

27 Dic

perl…. para mi consumo personal.

Y es que resulta que he visto en MetaCPAN un buen número de módulos Perl listos para emplearse en tareas reales relacionados con el tema: crear tweets cada vez que alguien publica algo nuevo vía un feed RSS (o Atom).

Tengo curiosidad por ver si, partiendo de los paquetes Debian correspondientes -sin instalaciones extrañas-, consigo crear algo simple que funcione sin más problemas que los de acceso a las cuentas. Estaría bien que, para variar, las cosas fuesen lo bastante estables como para centrarnos en el problema y no en las herramientas.

Objetivos

El programa (un script más bien) debe ser capaz de:

  1. Leer un feed regularmente y extraer las nuevas publicaciones.
  2. Conectar con una cuenta Twitter con las credenciales adecuadas y por cada nuevo contenido hallado:
    1. Crear un URL corto para el contenido.
    2. Crear un tweet dentro de los límites
    3. Publicar el tweet
  3. Informar vía correo electrónico de la actividad realizada.

Herramientas

  • Los siguientes módulos Perl ya empaquetados en Debian Wheezy:
  • Módulos Perl no empaquetados para Debian Wheezy pero fáciles de construir como paquetes:
    • MooseX::App para construir el armazón del programa. Algo lento pero fácil de mantener.

Con respecto a los módulos no empaquetados tengo que reconocer dos cosas: la primera es que incluir MooseX::App es por puro capricho, me gusta mucho su enfoque, y la segunda es que es bastante fácil construirlos empleando la herramienta dh-make-perl junto con apt-file para encontrar las dependencias.

En el caso de MooseX::App sólo me he encontrado con lo siguiente:

  • Requiere la versión 6.59 de ExtUtils::Makemaker mientras que en Wheezy existe la 6.5705. Los test pasan correctamente así que, salvo error de concepción del autor, se pueden dar por válidos.
  • Las dependencias creadas automáticamente (junto con el archivo de copyright) son erróneas, pero es muy sencillo de arreglar.

Recursos y disposiciones

Muy simple: para empezar el desarrollo voy a necesitar de un repositorio Git en el que alojar el software. Afortunadamente tengo fácil acceso a uno: https://astillas.net/gitweb?p=rss2twitter.git.

Y ahora comencemos …