eggdrop.автозапуск.

Для автоматического запуска Eggdrop в случае, если по какой-то причине процесс завершен, существует файл botchk, который находится в директории «/scripts», для его работы необходимо сделать следующее:

  1. Скопировать файл botchk в директорию в которой находится бот и его конфигурационный файл.
  2. Отредактировать его следующим образом:
    Путь в которой лежит бот: botdir=«/home/eggdrop»

    Файл бота botscript=«eggdrop», в случае если запускаем через конфиг, то botscript=«eggdrop» имя_конфига

    Ник бота, с соблюдением регистра botname=«Botnick»

    Файл пользователей userfile=«file.user»

    Пид-файл pidfile=«pid.Botnick»

    сохраняем файл.

  3. сменить режим файла chmod +x botchk
  4. Запускаем редактрирование crontab пишем crontab -e
  5. Вписываем туда следующую строку: */5 * * * * /home/eggdrop/botchk >/home/eggdrop/myfile.log 2>&1, теперь проверка работы бота будет осуществляться каждые 5 минут, лог будет записываться в файл «myfile.log», отчет не будет присылаться на почту.

В случае с Windrop данный файл использовать не представляется возможным, в виду принципиального различия работы систем, поэтому рекомендую использоватья программу nncron.

Для автоматичекского запуска Windrop можно добавить следующий скрипт:

#( Windrop_cron

RunMissed       /запускать просроченную задачу

AsLoggedUser       /запускать от имени пользователя авторизованного в системе

Time: */3 * * * * *       /проверка каждые 3 минуты

VARIABLE botpid       /объявление переменной botpid

Rule: HOST-EXIST: «ip-адрес_хоста_где_сидит_бот»       /правило: при существующем интернет-соединении

Action:

FILE-EXIST: «<путь_до_ПИД-файла>\pid.Botnick»       /проверка наличия ПИД-файла

IF

S»<путь_до_ПИД-файла>\pid.Botnick» FILE S>NUM botpid !       /првоерка наличия ПИД бота

PROC-EXIST: «%botpid @%»       /в списке процессов

IF       /если есть

EXIT       /выход

ELSE       /если нет

FILE-DELETE: «<путь_до_ПИД-файла>\pid.Botnick»       /удаляем ПИД-файл

THEN

THEN

SWHide NormalPriority

StartIn: «путь_до_Windrop»

START-APP: путь_до_Windrop\eggdrop.exe       /снова запускем бота

)#

Скрипт далеко не идеален, например, если бот упал, по какой-либо причине, ПИД, записанный в файле, может совпадать с ПИД вновь запущенного процесса, поэтому повторного запуска не произойдёт.