Запуск скриптов происходит в нескольких, специально предназначенных для этого местах. Исходя из этого различается и назначение скриптов. В версии 0.4 с помощью скриптов есть возможность выполнять следующие функции:
- Функции перед запуском бота, и перед его остановкой. Называются соответственно: "./services/имя_сервиса/scripts/start.bsh", "./services/имя_сервиса/scripts/stop.bsh".
- Скрипт, полностью реализующий всю логику обработки команд вашего бота (анекбот, автоответчик, электронный магазин, болтун, викторина и т.п.). Называется соответственно: "./services/имя_сервиса/scripts/main.bsh".
- Расширения команд для чат-бота. Каждый скрипт реализует отдельную команду. Находятся в папке: "./services/имя_сервиса/scripts/command/*.bsh". Распознаются и устанавливаются в качестве обработчиков команд при запуске бота.
- Обработка сообщений чата и их изменение. Скрипт вызывается перед попаданием строки в общий чат, и может модифицировать сообщения. Находится в папке "./services/имя_сервиса/scripts/messages.bsh"
- Обработка http-запросов. Можно создавать свои веб-странички, или веб-сервисы для обработки запросов от внешних систем. Скрипты находятся в папке: "./scripts/http/*.bsh". Каждый скрипт вызывается по своему имени в http-запросе. Например, для скрипта test.bsh достаточно набрать "http:\\localhost:8888\test".
Все скрипты читаются "на лету". Кешируются в памяти. При модификации файла на диске происходит его повторное чтение. Таким образом, возможно обновление функционала бота в режиме on-line без остановки и перезагрузки (разумеется за исключением тех скриптов, которые выполняются только один раз - при запуске бота).
