Compartir Imagenio usando Raspberry Pi

Compartir Imagenio usando Raspberry Pi

RapsberryMovistarImagenio es un servicio de Movistar que, mediante tecnología IP, permite ver televisión de pago mediante un decodificador. El “problema” es que sólo puedes verlo en un televisor a la vez. Mediante este tutorial aprenderemos a utilizar un pequeño RaspBerry Pi para hacer streaming a otros clientes y poder ver Imagenio desde varios puntos a la vez.

En particular, tengo dos requerimientos:

  1. A mi padre no le dejan ver la tele libremente (siempre está puesto Tele5…), por lo que necesito poder ver imagenio en una Tablet Android.
  2. Necesito poder gestionar el conjunto remotamente. No voy a ir a casa de mis padres cada vez que falle algo (80 Kms) por lo que me tengo poder conectar.

Como decía en la entrada, voy a usar una RaspBerry Pi. Para los que no lo conozcan, una RaspBerry es un miniordenador que corre Linux y usa los chips ARM (habituales en móviles y tablets) para meter en una pequeña cajita del tamaño de un paquete de tabaco un completo ordenador. En la siguiente imagen vemos las conexiones que tiene:

Raspberry Pi esquema

Como veis, tiene USB para alimentación y periféricos, HDMI y Video RCA para monitor/TV, Ethernet y una SD para su “disco duro”. La idea era hacer un PC de bajo coste para educación y tercer mundo y lo han conseguido, cosechando un éxito muy importante. Vale unos 40€

Requerimiento 1: Conexión Remota. Voy a hacer una pequeña chapucita, pero creo que me servirá para mis propósitos. El ADSL no tiene una IP fija, y aunque podría usar servicios de DNS Dinámico (los he usado en el pasado) aprovechando que tengo un hosting, pues me voy a subir por FTP la IP externa del hogar donde esté la RapsBerry. Para ello sigo los siguientes pasos.

1.- Preparar conexión remota mediante terminal server (por defecto, ya está puesto por SSH)

apt-get install xrdp

2.- Instalar el ncftp.

apt-get install ncftp

3.- Obtener la dirección IP externa del hogar, usando el sitio web ifconfig.me

curl ifconfig.me > /tmp/ipaddress

4.- Subirlo a un servidor (sitio.ftp.com) mediante el usuario USUARIO y la clave PASSWORD.

ncftpput -u USUARIO -p PASSWORD sitio.ftp.com / /tmp/ipaddress

5.- Configurar un script para que suba al FTP la dirección IP cada X tiempo y cuando arranca la RaspBerry.

Copiamos estas tres líneas en un script (arranque.sh, dentro del raíz del usuario pi):

date > /tmp/ipaddress
curl ifconfig.me >> /tmp/ipaddress
ncftpput -u usuario -p password SitioFTP /PATH /tmp/ipaddress

Con la primera línea mandamos la fecha al fichero ipaddress (para asegurarme que se está actualizando correctamente) y con la segunda la IP. Con la tercera, lo subo al sitio FTP.

Lo hacemos ejecutable

chmod +x arranque.sh

Y lo añadimos al crontab del Raspberry Pi, añadiendo en el crontab de root la ejecución:

sudo crontab -l
0 * * * * /home/pi/arranque.sh

Así, se ejecutará cada hora, subiendo la IP al servidor que hemos indicado.

6.- En el Router, ponerle una IP fija al Raspberry Pi, abrir los puertos necesarios y enfocarlos al RaspBerry Pi. En el caso particular de Imageneo, se suele hacer mediante el portal de Telefónica. En http://www.adslzone.net/imagenio-9.html tenéis un tutorial para hacerlo. En particular, le voy a poner una IP fija dentro de la red de casa (192.168.1.10) a la RaspBerry y voy a abrir los puertos 22 (SSH) y 3389 (Remote Desktop) para que una conexión a la IP pública a estos puertos acaben en la RaspBerry.

Y… listo. Ahora ya tenemos conexión remota desde cualquier parte de Internet por SSH y por RDP.  Probarlo antes, claro.

Requerimiento 2: Ver Imagenio por DLNA. Una empresa gallega proporciona un módulo para hacer lo que yo necesito. Lo podéis encontrar en http://es.infinbox.com/productos/modulo-ipna/mipna_descarga_trial. No voy a volver a explicar lo que ellos indican en su Web (está razonablemente bien explicado), pero básicamente se instala un programa en la RaspBerry que se conecta a los servidores de Telefónica para obtener las fuentes de la TV y las redistribuye en la red local, mediante el protocolo estándar DLNA. Muchas televisiones inteligentes, y programas para Android, iOS, Windows, OSX y casi cualquier sistema operativo lo soportan. Yo usaré XBMC.

XBMC es un portal multimedia que llevo usando desde sus versiones beta en Xbox. En las lejanas épocas de la primera Xbox (de la que fui usuario) se desarrolló el XBox Media Center. Permitía usar la XBox para reproducir muchos formatos de vídeo y música. Posteriormente, dieron el salto a muchos otros entornos y ahora es un sistema fantástico para reproducir medias.

En conjunción con el módulo IPNA, el resultado es este:

xbmcIPNA
Obtenido de http://es.infinbox.com/productos/modulo-ipna/mipna_descarga_trial

Compartir Imagenio: Objetivo (casi) conseguido. Digo casi porque tengo un error que todavía no me permite ver el video (aunque sí toda la parte de programación)… He contactado con la empresa que desarrolla el módulo IPNA, y espero que se solucione en breve… Ya actualizaré entonces.

2 thoughts on “Compartir Imagenio usando Raspberry Pi

  1. Lo de subir la ip a tu ftp no me parece buena idea ya que pasas la clave en texto plano. noip es lo ideal, si no te gusta lo ideal es mandar la ip por email. el control remoto que usas creo que lo puedes optimizar y matar 2 pajaros de un tiro. te olvidas del control remoto y le instalas un servidor pptp desde el cual puedes gestinarla en remoto y a su vez ver el imagenio asta desde 2 conexiones remotas a la vez probado (solo por ethernet). con fibra 100 claro esta.y por unicast. el ipna ese es un cagao. usa udpxy (es free) y luego lo abres con simple iptv (gratis tambien).

  2. Hola David,

    Completamente de acuerdo a lo de la IP. Fue lo más rápido (y chapucilla) que se me ocurrió para sacar la IP. Esto lo hice en casa de un familiar, y no iba sobrado de tiempo… Sobre las otras ideas que comentas, la verdad es que ya no las probé… Como Imagenio sacó una aplicación que permite conectarte desde otro sitio, la verdad es que ya no seguí investigando.

    Cuando tenga tiempo, exploraré tu idea, que parece bastante más simple. Gracias!
    Raúl

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *