#!/bin/bash # === Настройки === BOT_SCRIPT_URL="https://gitea.creative-tg1.ru/CREATIVE_tg1/server-bot-python/raw/branch/main/bash/bash-tg-bot.sh" BOT_SCRIPT_NAME="bash_tg_bot.sh" SCRIPT_PATH="$(cd "$(dirname "$0")" && pwd)" BOT_SCRIPT="$SCRIPT_PATH/$BOT_SCRIPT_NAME" SERVICE_FILE="/etc/systemd/system/bash_tg_bot.service" set -e # === Справка === show_help() { echo "Usage: $0 --token TELEGRAM_BOT_TOKEN --user_id ALLOWED_TELEGRAM_ID" exit 1 } # === Разбор аргументов === while [[ $# -gt 0 ]]; do case "$1" in --token) TG_TOKEN="$2"; shift 2;; --user_id) USER_ID="$2"; shift 2;; *) show_help;; esac done [ -z "$TG_TOKEN" ] && show_help [ -z "$USER_ID" ] && show_help # === Проверка и установка jq === if ! command -v jq >/dev/null 2>&1; then echo "Не найден jq. Устанавливаю..." if command -v apt-get >/dev/null; then sudo apt-get update && sudo apt-get install -y jq elif command -v yum >/dev/null; then sudo yum install -y jq elif command -v dnf >/dev/null; then sudo dnf install -y jq else echo "Пакетный менеджер не найден. Установите jq вручную." exit 1 fi fi # === Скачивание bash-скрипта бота === if [ ! -f "$BOT_SCRIPT" ]; then echo "Скачиваю бота из $BOT_SCRIPT_URL..." curl -fsSL "$BOT_SCRIPT_URL" -o "$BOT_SCRIPT" || { echo "Ошибка загрузки $BOT_SCRIPT_URL" exit 1 } fi chmod +x "$BOT_SCRIPT" # === Создание systemd-сервиса === cat < /dev/null [Unit] Description=Telegram Bash Control Bot After=network.target [Service] Type=simple WorkingDirectory=$SCRIPT_PATH ExecStart=$BOT_SCRIPT $TG_TOKEN $USER_ID Restart=always User=$USER [Install] WantedBy=multi-user.target EOF sudo systemctl daemon-reload sudo systemctl enable bash_tg_bot sudo systemctl restart bash_tg_bot echo "Бот установлен и добавлен в автозапуск!" echo "Проверьте статус: sudo systemctl status bash_tg_bot"