diff --git a/README.md b/README.md index 63de649..b0c7ac6 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,32 @@ -# welcome-bot-deployer - WelcomeBotDeployer - скрипт по быстрому развороту ботов-приветствий в Telegram + +# WelcomeBotDeployer + + + +Этот скрипт предназначен для автоматического развертывания и настройки Telegram-ботов, который приветствует новых пользователей. С помощью этого скрипта вы сможете легко и быстро настроить бота-приветствие без лишних усилий. + +### Основные функции + +- **Автоматическая настройка**: Скрипт автоматически создает необходимые файлы и конфигурации для работы бота. +- **Отправка сообщений**: Бот отправляет приветственные сообщения новым пользователям в чате. +- **Легкая интеграция**: Просто настройте ваш токен, и бот готов к работе. + +### Системные требования + +Любой веб-хостинг/веб-сервер с поддержкой PHP 7.4+ + +### Установка + +1. Скачиваем файл `index.php` и кладем на веб-сервер с установленным PHP 7.4+ с незаметным названием _(Например: `domain.com/b/`)_ + +2. Заходим в редактор кода и меняем `admin@123` на другой пароль + +3. Заходим на скрипт с браузера и начинаем настройку ботов по инструкции + +### Поддержка + +Если у вас возникли вопросы или проблемы, не стесняйтесь связываться с нами в Telegram. Всегда будем рады помочь! :) + +--- + +Сделано с ❤️ командой diff --git a/index.php b/index.php new file mode 100644 index 0000000..fc904b7 --- /dev/null +++ b/index.php @@ -0,0 +1,171 @@ + $message, + 'token' => $token + ); + + $configJson = json_encode($configData, JSON_PRETTY_PRINT); + + file_put_contents("$folderName/config.json", $configJson); +} + +function copySourceFile($folderName) { + copy('source.php', "$folderName/index.php"); +} + +function scanFolders($directory) { + $folders = array(); + $files = scandir($directory); + foreach ($files as $file) { + $filePath = $directory . '/' . $file; + if (is_dir($filePath) && $file != '.' && $file != '..') { + $folders[] = $file; + } + } + return $folders; +} + +function parseJson($folderName) { + $configFile = "$folderName/config.json"; + if (file_exists($configFile)) { + $configJson = file_get_contents($configFile); + return json_decode($configJson, true); + } else { + return false; + } +} + +function deleteBot($folderName) { + $configFile = "$folderName/config.json"; + if (file_exists($configFile)) { + unlink($configFile); + } + + $files = glob("$folderName/*"); + foreach ($files as $file) { + if (is_file($file)) { + unlink($file); + } + } + + rmdir($folderName); +} + +if ($_SERVER["REQUEST_METHOD"] == "POST") { + $action = $_POST['action'] ?? ''; + + if ($action === 'deploy') { + + if($_POST['pw'] != LOGIN_PASSWORD){ + die('Неверный пароль!'); + } + + $message = str_ireplace(PHP_EOL, "
", $_POST['message']) ?? ''; + $token = $_POST['token'] ?? ''; + + $folderName = createFolder(); + if ($folderName) { + createConfig($folderName, $message, $token); + copySourceFile($folderName); + $message = "Бот успешно развёрнут. Нажми ОК чтобы активировать."; + echo ""; + } else { + $message = "Ошибка: Folder with the same name already exists."; + } + } elseif ($action === 'delete') { + + $botToDelete = $_POST['botToDelete'] ?? ''; + if ($botToDelete) { + deleteBot($botToDelete); + $message = "Бот '$botToDelete' удалён."; + } else { + $message = "Бот не найден."; + } + } +} + +?> + + + + + + + Telegram Bot Management + + + + +

Дашборд ботов

+
+

Развернуть нового бота

+
+ +
+

+
+

+
+ +
+ +
+

Развернутые боты

+ "; + foreach ($deployedBots as $bot) { + $tmp = json_decode(file_get_contents($bot . "/config.json"),1); + echo "

$bot

Токен: ${tmp['token']}

Сообщение:

${tmp['message']}

"; + } + echo ""; + } else { + echo "

Ботов нет.

"; + } + ?> + + + + + + \ No newline at end of file diff --git a/wallpaper.jpg b/wallpaper.jpg new file mode 100644 index 0000000..15732c8 Binary files /dev/null and b/wallpaper.jpg differ