• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Docker Telegram WakeBot
#1
Hola

Hace poco que en un grupo de Telegram han hablado de un docker que mediante un Bot de Telegram nos permite gestionar y lanzar órdenes de WOL a otros equipos de la red donde esté la nas.

EL docker original están en este enlace y su idea de funcionamiento es de Daniel que en Telegram es @dgongut

Como requisitos previos hemos de tener instalado en la nas la aplicación Docker Station y tener un bot de Telegram para poder gestionar y lanzar los comandos WOL.

El crear un bot es muy sencillo y hay mucha información en Internet de como hacerlo, en este enlace del foro también se contó (aunque ahora es mas fácil)

El código de creación del docker es muy sencillo, sólo hemos de abrir una consola en la nas (con putty por ejemplo) y lanzar la siguiente cadena:
Code:
docker run -d  --restart always --network=host  --name TelegramWakeBot  -v /share/DockerData/TelegramWakeBot:/app/data -e "TELEGRAM_TOKEN=0123456789:ABCDHIJKLMNOPQRSTUVXYZABCDEFGHIJKL" -e "TELEGRAM_ADMIN=1234567" -e "TZ=Europe/Madrid" dgongut/wakebot:latest
 
Nos apoyamos en una carpeta compartida DockerData y en su interior creamos otra carpeta llamada TelegramWakeBot. Esto lo podemos hacer desde QTS mediante las carpetas compartidas del panel de control  y desde File Station.

En esta carpeta quedará un archivo con los datos de las máquinas para lanzar el paquete WOL (éste archivo es creado por el docker). De esa forma, si eliminamos el docker y lo volvemos a crear, seguirán ahí los datos de las máquinas a las que queremos lanzar un WOL.

Las variables TELEGRAM_TOKEN y TELEGRAM_ADMIN se refieren a las variables del TOKEN del bot (que lo veremos en su creación desde el BotFather) y al ChatID del admin que se puede obtener fácilmente escribiendo "/id" al bot de Rose.

Una vez funcionado el bot podemos agregar equipos a despertar. Para ello necesitamos suministrar un nombre con el que idetificarlo, su dirección física MAC separando los valores con "." (punto) , no con los habituales dos puntos o un guion y también daremos la IP privada en formato IP v4.

Una vez tengamos activo es Bot, podremos despertar fácilmente equipos de nuestra red local a distancia. 
Hay otro magnífico Bot que es ControllerBot de Telegram que ya comentó Yeraycito del mismo Daniel ( acepta donaciones por su desinteresado trabajo ).

Su combinamos el uso de ambos Bots, podemos usar el controller para activar el docker Wakebot, lanzar el inicio de una máquina y volver a detener el WakeBot.


Y si habéis llegado hasta aquí he creado un QPKG para máquinas x86 que nos agrega un icono en el App Center para activar/desactivar el docker WakeBot de Telegram.

Vamos, que nos ahorramos la instalación y gestión del docker por comandos de consola, el uso de Portainer o el uso de Container Station.

El enlace de descarga del qpkg, está en este enlace de Mega.

Hacemos la instalación
   

   

   

   

   

   

   

Tras la instalación veremos que NO es iniciado el contenedor, aunque si la el paquete QPKG.

Esto es así ya que aún no hemos dado los valores de TOKEN del bot, ni del ChatID del admin, ni de la Zona horaria.

Para hacerlo, hemos primero de detener el QPKG. 
   

Luego editamos el archivo "valores.txt" que está en la carpeta "TelegramWakeBot" dentro de la carpeta compartida  "Public"
   

Lo cumplimentamos con los valores adecuados a nuestro Token y admin ChatID.
Por defecto viene con los valores ficticios siguientes:
Code:
TELEGRAM_TOKEN=0123456789:ABCDHIJKLMNOPQRSTUVXYZABCDEFGHIJKL
TELEGRAM_ADMIN=1234567
TZ=Europe/Madrid

Una vez aplicados los cambios, sólo hemos de activar el QPKG en el App Center 
   

Con esto ya tendremos nuestro docker y el bot de WakeBot operativos.

Si queremos eliminar todo, tan solo hemos de desinstalar el qpkg desde el App Center y eliminar la carpeta "TelegramWakeBot"  que está en la carpeta compartida "Public".
Un saludo

Agur eta ondo ibili

Ganekogorta (TS-469Pro, TVS-673e, QBoat Sunny, TS-453Be, TR-002 y QHora-301w) Ʀɐɯ0η
  Reply




Users browsing this thread: 1 Guest(s)