Фоновые плагины
Работа фоновых плагинов поддерживается для продуктов версии COREmanager 5.377 и выше. Чтобы проверить версию COREmanager, выполните:
Описание
Во всех программных продуктах ISPsystem на базе COREmanager существует возможность выполнения определённых действий при наступлении событий. Например, при успешной авторизации пользователю может быть отправлено уведомление в Telegram.
В отличии от системы Event'ов, которая работает синхронно с наступлением событий и может повлиять на поведение системы, описанный в статье механизм запускается асинхронно с событием и не влияет на поведение системы.

Чтобы обрабатывать события панели управления, необходимо:
- Написать скрипт-обработчик события.
- Зарегистрировать свой скрипт-обработчик, связав его с обрабатываемыми событиями.
Формат общения
Скрипту-обработчику передаётся информация:
- в виде переменных окружения (env):
- параметры запроса c префиксом PARAM_;
- заголовки запроса;
- остальное;
- на вход stdin с результатами обработки события в формате xml, если событие зарегистрировано с атрибутом sessiondata. Без указания sessiondata переданы будут только переменные окружения.
Пример
Ниже приведен пример на простой задаче — отправка сотруднику в Telegram информации о зачислении платежа больше 5000 рублей.
Создание скрипта-обработчика
Создайте в директории /usr/local/mgr5/addon/ файл send_notify.sh со следующим содержимым:
CODEУстановите скрипту права на исполнения:
CODE
Регистрация скрипта-обработчика
Чтобы зарегистрировать скрипт-обработчик, создайте файл /usr/local/mgr5/etc/xml/billmgr_mod_send_notification.xml со следующим содержимым:
Пояснения к плагину
Блок, отвечающий за регистрацию обработчика:
Свойство name узла handler указывает файл, который выполняет обработку события. Этот файл разместите в директории /usr/local/mgr5/addon/, имя файла должно полностью совпадать с указанным в свойстве name.
Узел task специализирует событие для отслеживания и имеет следующие атрибуты:
name — событие, которое нужно отслеживать. Событиями выступают запросы к системе по протоколам http/https или CLI (/usr/local/mgr5/sbin/mgrctl). Чтобы посмотреть список всех событий, выполните:
CODE- get — нужно отслеживать событие без параметров sv_field={param} и sok=ok в запросе;
- setvalues — нужно отслеживать события с параметром sv_field={param} в запросе;
- submit — нужно отслеживать события с параметром sok=ok в запросе;
- sessiondata — в скрипт будет передан результат обработки события в формате xml.