Child pages
  • События для внешних обработчиков
Skip to end of metadata
Go to start of metadata

При возникновении определённых событий система может вызывать внешние программы их обработки. 
Для вызова таких программ, нужно прописать в конфигурационном файле название файла обработки и путь к нему. При определении внешних обработчиков можно указывать дополнительные флаги. 
При вызове внешних обработчиков, система передаёт им определенный параметры и ожидает ответа в формате: 

флаг_успешного_выполнения:информационное_сообщение_для_системы

флаг_успешного_выполнения1 - Операция выполнена успешно
0 - Операция не выполнена
информационное_сообщение_для_системыНабор пар НАЗВАНИЕ=ПАРАМЕТРЫ


Пример ответа об успешном выполнении внешнего обработчика: 
1:INFO=Операция выполнена

Пример программы . Возвращает код успешного выполнения:

#!/bin/sh
# External operation example

echo "1:INFO=Operation complite. Arguments: '$@'";

Система может обрабатывать следующие события:

$conf{external_useradd}Создание пользователя.
Вызывается после успешного заведения пользователя в системе
Пример файла: abills/misc/external_adduser
$conf{external_userdel}Удаление пользователя.
Вызывается поле удаления пользователя из системы
$conf{external_userchange}Изменение учетных данных 

Параметры передаваемые команде

DOMAIN_ID=0 
ACTIVATE=0000-00-00 
UID=1356 
LOGIN=VarfolomeevaNG 
REDUCTION=1 
CREDIT=0.00 
ACTION_COMMENTS= 
REDUCTION_DATE=0000-00-00 
CREDIT_DATE=0000-00-00 
GID=0 
EXPIRE=0000-00-00 
DEPOSIT=208.930789 
COMPANY_ID= 
$conf{external_payments}Изменение баланса внесение суммы 

Параметры передаваемые команде

DOMAIN_ID=0 
ORDER= 
ACCOUNT_ID=417 
UID=3434 
DATE=2010-09-21 14:01:55 
LOGIN=casper 
ER= 
CREDIT=180.00 
INNER_DESCRIBE= 
CUSTOMER=- 
GID=0 
OP_SID=nUGgWkGQYUHhZ5bB 
SUM=12 
DEPOSIT=273.004166 
COMPANY_ID=0 
DESCRIBE= 
CREATE_INVOICE=1 
METHOD=0 
EXT_ID= 
QUICK=1 
$conf{external_fees}Изменение баланса (списание суммы)
$conf{external_userdisable}Блокировка пользователя
  • No labels