Articulo resumen y guía rápida

  1. Instalar Raspbmc en la tarjeta SD mediante el método que más nos guste. Enlace: http://www.raspbmc.com/download/
  2. Iniciar el sistema conectado con el cable de red y todos los discos enchufados, y esperar a que termine de configurarse.
  3. Conectar el dongle WiFi y reiniciar habiendo desconectado el cable de red.
  4. Configuración adicional de XBMC:
    1. Habilitar bob light support (para hacer un ambilight en el futuro).
    2. Cambiar región.
    3. Cambiar país.
    4. Deshabilitar Ignorar los artículos al ordenar (cuestión de gustos).
    5. Habilitar Permitir el renombrado y borrado de archivos (para poder borrar archivos después de verlos).
    6. Habilitar Actualizar la colección en el arranque (nunca viene mal).
    7. Seleccionar la acción por defecto: mostrar información (nuevamente, cuestión de gustos).
    8. Idioma de subtitulo preferido: english (cada cual que elija el idioma que quiera).
    9. Servicio de tv por defecto: conseguir más > opensubtitles.org > instalar (para poder bajar los subtítulos de las series).
    10. Seleccionar ubicación para el tiempo (me gusta poder ver la previsión).
    11. Instalar Add-on de Youtube (para poder ver los trailers).
    12. Habilitar AirPlay (aunque aun no he sido capaz de hacerlo funcionar).
  5. Reiniciar el sistema para aplicar los cambios.
  6. Añadir los vídeos a la biblioteca indicando si las carpetas son de series o de películas. Enlace: Añadir contenido a XBMC
  7. Revisar si hay series o películas que ha cogido mal o no ha reconocido y arreglarlo.
  8. Actualizar el sistema mediante el comando sudo apt-get update && sudo apt-get upgrade
  9. Instalar transmission mediante el comando sudo apt-get install transmission-daemon Enlace: Instalación de transmission
  10. Parar transmission-daemon mediante sudo /etc/init.d/transmission-daemon stop para configurar el fichero /var/lib/transmission-daemon/info/settings.json y luego re-arrancarlo con sudo /etc/init.d/transmission-daemon start
  11. Instalar sendemail mediante el comando sudo apt-get install libio-socket-ssl-perl libnet-ssleay-perl perl sendemail Enlace: Recibir un email al finalizar una descarga
  12. Arreglar sendemail con sudo nano +1907 /usr/bin/sendemail y modificar la linea donde dice SSLv3 TSLV1 para dejar solamente SSLv3
  13. Instalar flexget mediante sudo apt-get install python python-setuptools ; sudo easy_install flexget mechanize transmissionrpc
  14. Comprobar que flexget se ha instalado bien ejecutando flexget -V
  15. Crear un directorio de configuracion de flexget con mkdir /home/pi/.flexget y editar la configuracion con nano /home/pi/.flexget/config.yml
  16. Editar el fichero config.yml para que envíe un email al encontrar un fichero, la frecuencia del daemon y añadir todas las series a seguir. Enlace: Instalación de flexget y configuración (I): series.
  17. Comprobar la sintaxis de la configuracion mediante flexget check
  18. Hacer un test de descarga mediante flexget –test execute
  19. Indicar el punto donde tiene que empezar a descargar las series mediante flexget series begin “<SERIE>” S<temporada>E<capitulo>” Enlace: Cómo decirle a flexget que ya hemos visto un capítulo
  20. Iniciar el daemon mediante flexget daemon start -d Enlace: FlexGet en Daemon mode y Scheduling
  21. Instalar curl
  22. Configurar fichero de download_complete para mover los archivos .mkv, borrar carpeta bajada y actualizar la librería con curl. Enlace: Movimientos de ficheros y auto-actualizacion de librería
  23. Ejecutar ssh-keygen para generar las claves y añadir la clave pública de nuestro equipo al archivo /home/pi/.ssh/authorized_keys de la raspberry. Enlace: Utilización de claves pública y privada

 

Contenido fichero download_complete.sh

#!/bin/bash

#Se envia un email de que ha finalizado la descarga
USUARIO="<usuario>"
PASSWORD="<contraseña>"
DIRECCION="$USUARIO@gmail.com"
ASUNTO="[Transmission] Descarga finalizada"
MENSAJE="Se ha completado la descarga del trabajo \n$TR_TORRENT_NAME\nHora: $TR_TIME_LOCALTIME\nFolder: $TR_TORRENT_DIR\nID: $TR_TORRENT_ID"
SERVIDOR="smtp.gmail.com:587"
sendemail -f $DIRECCION -t $DIRECCION -u $ASUNTO -m $MENSAJE -s $SERVIDOR -xu $USUARIO -xp $PASSWORD -v -o username=$USUARIO -o password=$PASSWORD -o tls=yes

#mueve los ficheros mkv de la carpeta de descarga a su carpeta padre
find "$TR_TORRENT_DIR/$TR_TORRENT_NAME" -name "*.mkv" ! -name *sample* -exec mv {} "$TR_TORRENT_DIR" \; | logger

#borra los archivos y carpetas que no son mkv de la carpeta de descarga
find "$TR_TORRENT_DIR/$TR_TORRENT_NAME" ! -name "*.mkv" -exec sudo rm -r {} \; | logger #debian-transmission tiene que ser sudoer para borrar

#Actualizacion de la libreria de video
curl --data-binary '{ "jsonrpc": "2.0", "method": "VideoLibrary.Scan", "id": "mybash"}' -H 'content-type: application/json;' http://localhost/jsonrpc

 

Contenido fichero config.yml

schedules:
 - tasks: '*'
 interval:
 hours: 2

tasks:

  tv-shows:
    series_premiere: no

    email:
      from: <usuario>@gmail.com
      to: <usuario>@gmail.com
      smtp_host: smtp.gmail.com
      smtp_port: 587
      smtp_username: <usuario>
      smtp_password: <contrasena>
      smtp_tls: yes

    transmission:
      path: /media/e864a2d9-5479-41a6-852f-4dbd2166cd12/tvshows
      host: localhost
      port: 9091
      username: transmission
      password: <contraseña de transmssion>
      addpaused: no

    rss: http://rss.thepiratebay.se/208

    thetvdb_lookup: yes

    quality: 720p HDTV h264

    regexp:
      reject:
        - SUB
        - DUAL
        - WEB
        - CENSORED
        - SCREENER
        - LATINO
        - PSYPHER

    content_filter:
      reject:
        - '*.avi'
        - '*.mpg'
        - '*.mpeg'

    series:
      - 12 Monkeys:
        path: "/media/My\ Book/tvshows/12 Monkeys"
        set:
          tvdb_id: 272644
      - 2 Broke Girls:
        path: "/media/My\ Book/tvshows/2 Broke Girls"
        set:
          tvdb_id: 248741
Anuncios

Instalación de Transmission

Bueno, tal como comenté en la última entrada, ahora que hemos terminado de configurar nuestra Raspberry como mediacenter y le hemos enlazado toda nuestra librería, es hora de hacer que también funcione como gestor de descargas.

Para ello yo voy a utilizar Transmission, que es un cliente bastante ligero y que funciona muy bien. Además, existe posibilidad de ir añadiendo ficheros desde cualquier otro equipo mediante su interfaz web. Yo esto lo he utilizado incluso para añadir descargas desde fuera de mi red local, lo cual es muy útil en algunos casos.

Creo que XBMC da la posibilidad de instalar Transmission como un programa dentro del propio mediacenter, pero esto es algo que no he probado y no sé muy bien cómo funciona, quizás lo investigue en profundidad en el futuro.

Antes de instalar nada nuevo siempre me gusta cerciorarme de que el sistema está totalmente actualizado. Esto nos ayudará a que no haya problemas de compatibilidad de paquetes a la hora de instalar algo nuevo.

Usando XBian, la forma de hacerlo será yendo a Sistema > Ajustes > XBian > Update

20131228-203802.jpg

20131228-203826.jpg

20131228-203840.jpg

Aquí podemos ver tanto si el kernel de nuestro sistema está actualizado como si lo están los paquetes adicionales.

20131228-204429.jpg

En mi caso tengo pendientes de instalar algunos paquetes. Podríamos ir uno a uno diciéndole que los instale, pero la forma más rápida de instarlos todos es bajando hasta el final de la lista, donde nos da una opción para actualizarlos todos.

20131228-204453.jpg

20131228-204531.jpg

Después de instalar las actualizaciones, salimos del menú. XBian hará una comprobación para ver si alguna de las actualizaciones hace necesario un reinicio del sistema. En caso de ser necesario, nos presentaría una ventana preguntando si queremos reiniciar ahora.

Una vez reiniciado (en caso de haberlo hecho), nos conectamos mediante terminal usando el comando ssh xbian@[dirección IP]

Captura de pantalla 2013-12-29 a la(s) 11.14.46

Ahora procedemos con la instalación de nuestro cliente. En nuestro caso se llama transmission-daemon, y lo instalamos con el comando sudo apt-get install transmission-daemon

Captura de pantalla 2013-12-29 a la(s) 11.15.19

El sistema comenzará con la instalación de Transmission, y una vez acabada arrancará el servicio que irá corriendo en background, llamado transmission-daemon.

Captura de pantalla 2013-12-29 a la(s) 11.15.42

Captura de pantalla 2013-12-29 a la(s) 11.16.39

En este punto tenemos nuestro gestor de descargas funcionando, pero tenemos que hacer cambios referentes a los directorios de descarga, acceso web y otros. Lo primero que haremos para realizar estos cambios será parar el servicio mediante el comando sudo /etc/init.d/transmission-daemon stop

Captura de pantalla 2013-12-29 a la(s) 11.17.07

Ahora ya podemos proceder con los cambios en la configuración, la cual se encuentra en un archivo llamado settings.json. Para editarlo ejecutamos el comento sudo nano /var/lib/transmission-daemon/info/settings.json

Captura de pantalla 2013-12-29 a la(s) 11.17.45

A continuación os pongo los cambios que he llevado yo a cabo, así como el significado de cada uno. Podéis ver que hay muchísimas más cosas a configurar, por lo que si tenéis interés podéis buscar sus significado en la página de Transmission aquí.

  1. “download-dir”: “/media/drive/torrent/finish”  <-este es el directorio por defecto de las descargas si no se indica lo contrario
  2. “download-queue-size”: 20 <-número de elementos simultáneos que se pueden descargar
  3. “incomplete-dir-enabled”: true <-esto sirve para que los archivos que aun se están descargando vayan a un directorio distinto de los ya descargados.
  4. “incomplete-dir”: “media/drive/torrent/temp” <-aquí es donde se almacenan los archivos incompletos
  5. “rpc-enabled”: true <-esto habilita la interfaz web para poder manejarlo desde un navegador
  6. “rpc-username”: “transmission” <-el nombre de usuario que usaremos para logarnos en la web
  7. “rpc-password”: “password” <-la contraseña para la interfaz web
  8. “rpc-whitelist-enabled”: false <-esto lo pondremos a true si queremos una whitelist, que sirve para que solamente ciertas direcciones IP puedan conectarse a la web de Transmission. Yo lo deshabilito porque como accedo desde el móvil y la IP cambia, entonces no podría hacerlo.
  9. “rpc-port”: 9091 <-el puerto para acceder a la web
  10. “script-torrent-done-enabled”: true <-esto es por si queremos que ejecute un script cada vez que termine una descarga.
  11. “script-torrent-done-filename”: “/home/xbian/scripts/download_complete.sh” <-este es el script. Lo explicaré más adelante en otra entrada
  12. “watch-dir”: “/var/flexshare/shares/watch-torrent” <-este es el directorio donde, si copiamos un archivo .torrent, Transmission lo añadirá automáticamente a la cola de descargas.
  13. “watch-dir-enabled”: true <-esta es la opción para habilitar la monitorización automática de un directorio en busca de archivos .torrent.

Captura de pantalla 2013-12-29 a la(s) 11.24.56

Salimos del editor mediante CTRL + C , le damos a Y cuando nos pregunte si queremos guardar y presionamos ENTER para confirmar que el nombre será el mismo.

Ahora que ya hemos hecho los cambios arrancamos de nuevo el cliente mediante el comando sudo /etc/init.d/transmission-daemon start

Captura de pantalla 2013-12-29 a la(s) 11.26.06

Si todo ha ido bien deberíamos poder acceder a la interfaz de Transmission entrando la dirección de la Raspberry en el navegador de cualquier otro equipo (ordenador, tablet o Smartphone) indicando el puerto 9091 (o el que pusierais en la configuración). Si accedeis desde el navegador de la propia Raspberry, entonces la dirección sería la localhost o 127.0.0.1 Si no lo habéis cambiado durante la configuración, el usuario por defecto es transmission y el password también es transmission

Captura de pantalla 2013-12-29 a la(s) 12.07.08Captura de pantalla 2013-12-29 a la(s) 12.07.17

Podéis hacer la prueba de añadir un archivo torrent y ver cómo empieza a bajar al directorio que habéis indicado por defecto. Lo bueno es que también admite magnet links.

Captura de pantalla 2013-12-29 a la(s) 12.08.40

Captura de pantalla 2013-12-29 a la(s) 12.10.21

Lo voy a dejar aquí de momento aunque seguro que hay una pregunta en vuestras cabezas: ¿cómo accedo al directorio donde se bajan los archivos? Esto lo veremos en la próxima entrada, aunque os adelanto la respuesta: SAMBA.