Automediacenter
@darchapMas contenido de este tipo en el canal de telegram Transkodi https://t.me/joinchat/AAAAAEncnxMkxSkQgU2PqA

En este tutorial voy a documentar la instalacion del instalador que he creado, asi como de la configuracion que yo utilizo. No soy ningun experto asi que muchas de las cosas que explicare seguramente se puedan hacer de otra manera.
Automediacenter como ya he dicho es un instalador, crea contenedores de imagenes de docker. Por aclarar el tema de imagenes y contenedores; una imagen seria un coche, y un contenedor una persona. Pueden conducir varias personas ese coche, al igual que podemos crear varios contenedores de una misma imagen. Espero que quede un poco mas claro.
Antes de empezar:
- Necesario tener docker instalado previamente.
- Si ya tienes rclone instalado, debes desinstalarlo. Si tienes el archivo rclone.conf copialo, asi no tendras que volver a configurarlo.
- Si ya tienes transmission instalado, debes desinstalarlo. Si tienes el archivo settings.json copialo, asi no tendras que volver a configurarlo.
- Exactamente lo mismo para todo lo demas si ya tienes ese servicio instalado.
Vamos a comenzar descargando la imagenes y el instalador:
Para conocer tu arquitectura escribir este comando por ssh: uname -m
LINK: https://mega.nz/#F!aRsR2AIB!tiLE3waIV5H12P9wUQYd3w
Una vez descargados los archivos, los colocamos en el equipo donde se vaya a instalar, no importa la ruta mientras esten juntos. Nos conectamos por ssh y damos permisos 777 a amc.sh, lo ejecutamos y aparecera el menu principal.

(El instalador se ira actualizando y puede que cambien las opciones del menu)
A partir de aqui, ejecutar ordenadamente las opciones 1-4, si no, no funcionara correctamente.
En el apartado 1) se pediran tres rutas, la carpeta donde queremos montar Google Drive, en la segunda se montaran varios archivos importantes del contenedor (logs, rclone, transmission, scripts...), y la tercera ruta a indicar es la de nuestro disco duro, pendrive, sd... para tenerlo accesible desde el contenedor.
En el apartado 2) se comprueba que se haya instalado correctamente el contenedor
En el apartado 3) se configura Rclone

-Si ya hemos configurado rclone en otro equipo no es necesario volver a hacerlo, simplemente necesitaremos el rclone.conf copiado en la misma ruta que el instalador, y ejecutar la opcion 2. Puedes saltar el siguiente paso.
-Si no lo tenemos o queremos volver a configurarlo ejecutar la opcion 1.
Pasos a seguir para configurar rclone si no lo hemos hecho antes (es la manera mas simple y rapida, pero no la mejor)
Ejecutamos la opcion de Configurar rclone.conf. Tendremos esta pantalla.
- Pulsamos n para añadir una nueva conexion y le damos un nombre (gdrive, remotegd...). Enter.

- Opcion 12 (Google Drive)

- Pulsar enter cuando pide client_id y client_secret. Seleccionamos opcion 1 y enter. Pulsar enter en las 2 lineas siguientes. Cuando hace la pregunta Edit advanced config seleccionar n.

- En la pregunta use autoconfig seleccionar n. Nos saldra un link que tendremos que seleccionar y pegar en el navegador, nos logueamos con la cuenta de gdrive y nos proporcionara un codigo, copiamos y pegamos (con el boton derecho se pega en putty)
- Nos preguntara si queremos configurar nuestra cuenta como un teamdrive, seleccionar n. El siguiente paso es para confirmar que todo este bien, si es asi pulsar y. Rclone ya esta configurado.
-En la opcion 3 hay que escribir el nombre que le dimos a nuesta conexion de Google Drive cuando lo configuramos, para que se monte rclone al arrancar el contenedor.
En el apartado 4) se configura Transmission

- Basicamente lo mismo que con rclone, si tenemos el archivo lo copiamos junto al instalador, si no, lo editamos. Ejecutar tambien las opciones 3 y 4.
Para configurar transmission, hay que editar el archivo settings.json, desde el instalador se puede hacer comodamente en la opcion 1), simplemente indicamos la ruta en la que montamos la carpeta de amc.
WIKI transmission: https://github.com/transmission/transmission/wiki/Editing-Configuration-Files
Yo lo configuro con limites de descarga y subida, para evitar cuelgues y que vaya lo mejor posible. Esto se utilizaba antes pero con las velocidades que hay ahora no es necesario, y como he dicho antes no soy ningun experto, simplemente hago lo que a mi me funciona mejor.
Vamos a esta pagina http://infinite-source.de/az/az-calc.html

Arriba introducimos la velocidad que le llega a nuestro equipo, NO LA QUE TENEMOS CONTRATADA, que se mide en Mbps, Mb (megabit) y no MB (megabyte)

Podeis hacer la conversion con esta calculadora http://www.matisse.net/bitcalc/
Una vez sabeis vuestra velocidad de subida y la teneis introducida en Azureus os dara los valores optimos, los de la foto son de ejemplo.

Estos ajustes en transmission se llaman:
peer-limit-global(maximum number of connections globally), peer-limit-per-torrent(maximum number of connections per torrent), upload-slots-per-torrent(max uploads slots per torrent), download-queue-size(max simultaneous downloads), speed-limit-up(kB's max upload speed)
El unico ajuste que no esta disponible en transmission es "Max active torrents".
Ya estaria transmission configurado, si quereis configurar algo que no he explicado teneis el link de la wiki de transmission en el punto 4, donde se explica cada apartado.
3. Una vez configuradas las opciones esenciales ya podemos acceder a transmission y newpct-total desde el navegador web:
TRANSMISISON ip:9091/transmission/web/
NEWPCT ip:3000


NEWPCT-TOTAL
Se ejecuta automaticamente al inicio y es bastante intuitivo, no hay mucho que explicar
- Accedemos a la web en el puerto 3000, y pinchamos en la ruleta arriba a la derecha
- Para añadir una serie hay que definir un titulo y ponerle filtros

esto es valido para cualquier serie, sobra decir lo que teneis que hacer si la quereis en 1080 o en otro idioma.
Si quereis que se baje todas las series, cosa que no recomiendo si no teneis un script de renombrado automatico este seria el filtro:

He puesto los filtros desordenados para que veais que no influye en nada.
Y ya tenemos todo configurado, cuando newpct encuentre algo que concuerde con nuestros filtros le mandara el torrent a transmission y se descargara en la ruta definida en settings.json.
A partir de aqui los siguientes puntos son opcionales, para usuarios que quieran exprimir Automediacenter al maximo
CRON
-En el apartado 5) se configuran las tareas de cron
No voy a explicar como funciona cron porque hay mil tutoriales en internet. Pero si os doy un consejo importante para evitar que el contenedor colapse y luego digais que va lento.
Imaginemos que tenemos un script para subir nuestros archivos a Google Drive con rclone y lo ejecutamos con cron cada 30 minutos.
La sentencia en cron seria */30 * * * * /config/scripts/tu_script.sh
El problema de tenerlo asi es que, si el script a los 30 min no ha terminado su ejecucion se va a ejecutar otra vez, en otra nueva instancia, ralentizando el primer script. Si a los 30 min siguen ejecutandose los 2 primeros se va a ejecutar otra vez otra nueva instancia del script y se convierte en un bucle que colapsa todo.
Una opcion para evitar esto (no se si es la mejor pero a mi me funciona) seria emplear esta sentencia:
*/30 * * * * pgrep tu_script.sh > /dev/null || /config/scripts/tu_script.sh
de tal manera que si en los procesos se encuentra al script corriendo se aborta la tarea.
FILEBOT
Adjunto un texto con explicaciones y directo para copiar, para quien no sepa como funciona, pero recomiendo leer tanto la wiki de filebot como el foro para entender lo que hace cada comando. Lo ideal es tener un script que se ejecute con cron.
https://www.filebot.net/cli.html
https://www.filebot.net/forums/viewtopic.php?t=215#p1561
https://www.filebot.net/naming.html
En este hilo la gente pone sus expresiones de renombrado:
https://www.filebot.net/forums/viewtopic.php?f=5&t=2
Poner tags (remastered, directors cut, extended):
https://www.filebot.net/forums/viewtopic.php?t=10843
--------------------Sentencia PELIS : Con explicaciones y posibles cambios------------------
Lo ideal, antes de empezar, es bajaros el programa NOTEPAD++ , gratuito
https://notepad-plus-plus.org/download/v7.4.2.html
Este es mas propio, para modificaciones, e inclusive recomiendo a las personas, que estén teniendo problemas al copiar la sentencia al filebot..
Una vez, instalado, elegir VISTA, lenguaje, JAVA
Mínima información de Programación :
Todo código de programación ira dentro de { } , todo lo que escribamos fuera, será interpretado como texto, aunque sean números. Ejemplo:
Hola{n} // nos pondrá Hola Avatar, ya que la n es el campo nombre de la película
{hola n } // nos dará fallo , ya que hola, no existe como código de programación, para que aparezca debemos poner en '' hola''
---------------------------------------------------------------------------------------------------------------
{ny} Nos proporciona el nombre y año película
{fn.match(/3D/)} Nos añade la letra “-“, y analiza el nombre actual del fichero, si contiene 3D-3-D, añade 3D si contiene 4K, deja 4K
{vf == '1080p' ? (bitrate / 1e6d).round(1) > 7.0 ? '1080p' : 'm1080p' : (bitrate / 1e6d).round(1) > 4.0 ? '720p' : 'm720p'} Se analiza por medio de vf, la resolución. Y se analiza el bitrate medio general ( Video+Pista audio) por medio de bitrate, como viene en bps, se divide en /1e6d ( formato hexadecimal), y su valor se redondea a un solo decimal , por medio de round(1). Si el video es 1080p , tiene un flujo menor de 7 , nos pondrá m1080p, si el flujo es 720p y es menor de 4.0Mpbs, nos pondrá m720p
{vc} Nos indica el códec de video utilizado, si quereis que solo aparezcan aquellos códec distintos al x264, podeis cambiar la sentencia por esta {vc == 'x264' ? ' ' : vc}
--------------------------------------SENTENCIAS SIN EXPLICACION----------------------------------
--------------------------------------COPIAR DE AQUI HACIA ABAJO----------------------------------
{ny} - {fn.match(/3D/)} {fn.match(/4K/)} - {vf == '1080p' ? (bitrate / 1e6d).round(1) > 7.0 ? '1080p' : 'm1080p' : (bitrate / 1e6d).round(1) > 4.0 ? '720p' : 'm720p'} - {vc}
-------------------------------------------------FIN DE COPIADO--------------------------------------------
----------------------------------------------------SERIES-----------------------------------------------------
{n} - {s00e00} - {t} - {fn.match(/3D/)} {fn.match(/4K/)} - {vf == '1080p' ? (bitrate / 1e6d).round(1) > 7.0 ? '1080p' : 'm1080p' : (bitrate / 1e6d).round(1) > 4.0 ? '720p' : 'm720p'} - {vc}
-------------------------------------------------FIN DE COPIADO--------------------------------------------