Table of Contents |
---|
Описание
Функция разрешает запустить внешние команды на время оплаты абонентом через портал или другую интернет систему платежей.
Настройка
Чтоб воспользоваться данным функционалом, нужно зайти в Настройка>Платежные системы>Внешняя команда.
Увидим следующую панель настроек.
Описание параметров
Параметр | Описание | Пример |
---|---|---|
Команда начала оплаты | Команда, которая выполнится, когда абонент выберет платежную систему для оплаты в кабинете абонента | start_script.pl |
Команда окончания оплаты | Команда, которая выполнится, спустя время, заданное в графе «Время» | end_script.pl |
Команда осуществления оплаты | Команда выполняемая при оплате для абонентом | payment_script.pl |
Использований | Количество возможностей использования этих команд абонентом за месяц | 15 |
Время | Промежуток времени между первой и последней командой(в минутах) | 5 |
Дополнительно
Внимание
Если вы пишите скрипт для Команды начала оплаты, в него, по необходимости, можно передать Логин, UID и IP абонента, для этого нужно прописать следующее:
Code Block |
---|
start_script.pl %LOGIN% %UID% %IP% |
И когда запустится команда, вашему скрипту будет передан массив значений, в том порядке, в котором вы прописали. То есть, в скрипт start_script.pl будут переданы 3 параметра:
$ARGV[0] | Логин абонента |
---|---|
$ARGV[1] | UID абонента |
$ARGV[2] | IP адрес абонента |
Если вы пишите скрипт для Команды окончания оплаты, в него, по необходимости, можно передать UID и IP абонента, для этого нужно прописать следующее:
Code Block |
---|
start_script.pl %UID% %IP% |
И когда запустится команда, вашему скрипту будет передан массив значений, в том порядке, в котором вы прописали. То есть, в скрипт end_script.pl будут переданы 3 параметра:
$ARGV[0] | UID абонента |
---|---|
$ARGV[1] | IP адрес абонента |
Возврат кодов из скрипта
Также система может следить за выполнением скрипта и реагировать на ошибки. Если скрипт возвращает текст в формате Номер:текст система отобразит текст в сообщении и прекртатит работу.
Номера, при которых, система сделает условленные действия:
1 | Покажет кнопку для установки кредита абонентом. В тексте, который возвращает скрипт, можно написать, например, следующее - «Доступ в Интернет ограничен. Воспользуйтесь кредитом!» |
---|
Запуск плагина, который будет мониторить и запускать команду окончания оплат.
Можно запускать в ручную или добавить в crontab.
Code Block | ||
---|---|---|
| ||
*/10 * * * * root /usr/abills/libexec/billd paysys_external_commands |
Примеры:
Huawei ME60
Старт скрипт:
При старте гостевой абонент переключается на user_ugrop - ($conf{ME60_STATIC_USER_GROUP} или $conf{ME60_NAT_USER_GROUP})
В зависимости от того какой IP адрес у клиента подставляется следующая переманная.
статический -> $conf{ME60_STATIC_USER_GROUP}
серый → $conf{ME60_NAT_USER_GROUP}
Code Block |
---|
/usr/abills/libexec/billd paysys_external_commands UID=%UID% START=1 NAS_TYPE=me60 SKIPPID=1 |
Стоп скрипт:
При стопе абонента система возвращает на user_ugrop - guest
Code Block |
---|
/usr/abills/libexec/billd paysys_external_commands UID=%UID% STOP=1 NAS_TYPE=me60 SKIPPID=1 |
Juniper Mx
Старт скрипт:
При старте гостевой абонент переключается на профайл svc-guest-ipoe(svc-filter-in-paysys) для IPoE и svc-guest-pppoe(svc-filter-in-paysys) для PPPoE
Code Block |
---|
/usr/abills/libexec/billd paysys_external_commands UID=%UID% START=1 NAS_TYPE=mx80 SKIPPID=1 |
Стоп скрипт:
При стопе абонента система возвращает на профайл svc-guest-ipoe(svc-filter-in-nomoney) для IPoE и svc-guest-pppoe(svc-filter-in-nomoney) для PPPoE
Code Block |
---|
/usr/abills/libexec/billd paysys_external_commands UID=%UID% STOP=1 NAS_TYPE=mx80 SKIPPID=1 |
Paysys - смена тарифа после оплаты
При оплате абонентом любой суммы меняется интернет тариф из одного на другой.
Задать tp_id тарифного плана (смотреть в таблицу tarif_plans, поле tp_id) (из Настройка > Интернет > Тарифные планы) в файл config.pl
PAYSYS_FROM_TARIFF_AFTER_PAYMENT - из какого тарифа менять
PAYSYS_TO_TARIFF_AFTER_PAYMENT - на какой тариф менять
Code Block | ||||
---|---|---|---|---|
| ||||
$conf{PAYSYS_FROM_TARIFF_AFTER_PAYMENT} = 1; $conf{PAYSYS_TO_TARIFF_AFTER_PAYMENT} = 2; |
Добавить команду окончания оплаты
Можно добавить параметр GET_ABON=1, автоматически сделает активацию и списание за услугу
Code Block |
---|
perl /usr/abills/Abills/modules/Paysys/paysys_change_tariff.pl |
Автоматическое переключение и после оплаты, даже если недостаточно денег
Code Block | ||||
---|---|---|---|---|
| ||||
$conf{PAYSYS_FORCE_CHANGE_TP_AFTER_PAYMENT}=1; |