Simple wake-on-lan telegram bot
  • Go 81.3%
  • Dockerfile 18.7%
Find a file
2025-08-14 02:30:39 +03:00
.github Update docker.yml 2025-03-21 15:21:26 +03:00
cmd add cron jobs test 2025-04-12 16:00:52 +03:00
internal add cron jobs test 2025-04-12 16:00:52 +03:00
.dockerignore add docker 2024-12-21 23:18:26 +03:00
.gitignore init 2024-12-21 22:58:01 +03:00
compose.yml remove ping functionality 2024-12-22 04:31:18 +03:00
Dockerfile fix icmp ping in docker 2025-01-03 04:11:29 +03:00
go.mod Bump github.com/spf13/cast from 1.8.0 to 1.9.2 2025-06-05 16:16:12 +00:00
go.sum Bump github.com/spf13/cast from 1.8.0 to 1.9.2 2025-06-05 16:16:12 +00:00
README.md Update README.md 2025-05-16 08:35:33 +03:00

Wol-E

Simple Telegram bot for turning PCs with WoL. Простой телеграм бот для включения компьютеров в сети с помощью Wake-on-LAN.

Running

  1. Configuration example (config.yml) | Образец конфигурации
# list of devices, that will be available for the bot
# список устройств, к которым у бота будет доступ
devices:
  - name: 'main'
    ip: '192.168.0.*'
    mac: 'A0:B1:C2:D3:E4:F5'

# telegram bot settings
# настройки бота
bot:
  token: "token from https://t.me/botfather" # токен для работы
  admins: # list of unique telegram IDs of users, that can use the bot | список уникальных ID пользователей, которые смогут пользоваться ботом
    - 1234567890

# application settings
# настройки приложения
settings:
  debug: true # for development | для отладки
  timezone: "GMT+3" # for time in logs | для показа времени в логах
  1. Command | Команда для запуска
./wol-e -config ./config.yml
  1. OpenWRT service | OpenWRT сервис
#!/bin/sh /etc/rc.common
USE_PROCD=1  # Enable procd
START=95     # Start order (higher = later)
STOP=01      # Stop order (lower = earlier)

start_service() {
    procd_open_instance
    procd_set_param command /bin/wol-e -config /root/wol-e.yml  # Command to run
    procd_set_param respawn                      # Auto-respawn if crashed
    procd_set_param respawn_retry 5              # Retry 5 times before stopping
    procd_set_param stdout 1                     # Redirect stdout to log
    procd_set_param stderr 1                     # Redirect stderr to log
    procd_set_param user root                  # Run as user "nobody"
    procd_close_instance
}

Для запуска через systemd, вы можете написать свой сервис