Skip to end of metadata
Go to start of metadata

Описание

Функция разрешает запустить внешние команды на время оплаты абонентом через портал или другую интернет систему платежей. 

Настройка

Чтоб воспользоваться данным функционалом, нужно зайти в Настройка>Платежные системы>Внешняя команда.

Увидим следующую панель настроек.


Описание параметров

ПараметрОписаниеПример
Команда начала оплатыКоманда, которая выполнится, когда абонент выберет платежную систему для оплаты в кабинете абонента
start_script.pl
Команда окончания оплатыКоманда, которая выполнится, спустя время, заданное в графе «Время»end_script.pl
Команда осуществления оплатыКоманда выполняемая при оплате для абонентомpayment_script.pl
ИспользованийКоличество возможностей использования этих команд абонентом за месяц15
ВремяПромежуток времени между первой и последней командой(в минутах)5

Дополнительно

Внимание

Если вы пишите скрипт для Команды начала оплаты, в него, по необходимости, можно передать Логин, UID и IP абонента, для этого нужно прописать следующее:

start_script.pl %LOGIN% %UID% %IP%

И когда запустится команда, вашему скрипту будет передан массив значений, в том порядке, в котором вы прописали. То есть, в скрипт start_script.pl будут переданы 3 параметра:

$ARGV[0]Логин абонента
$ARGV[1]UID абонента
$ARGV[2]

IP адрес абонента


Если вы пишите скрипт для Команды окончания оплаты, в него, по необходимости, можно передать UID и IP абонента, для этого нужно прописать следующее:

start_script.pl %UID% %IP%

И когда запустится команда, вашему скрипту будет передан массив значений, в том порядке, в котором вы прописали. То есть, в скрипт end_script.pl будут переданы 3 параметра:

$ARGV[0]UID абонента
$ARGV[1]IP адрес абонента

Возврат кодов из скрипта

Также система может следить за выполнением скрипта и реагировать на ошибки. Если скрипт возвращает текст в формате Номер:текст система отобразит текст в сообщении и прекртатит работу.

Номера, при которых, система сделает условленные действия:

1Покажет кнопку для установки кредита абонентом. В тексте, который возвращает скрипт, можно написать, например, следующее - «Доступ в Интернет ограничен. Воспользуйтесь кредитом!»

Запуск плагина, который будет мониторить и запускать команду окончания оплат.

Можно запускать в ручную или добавить в crontab.

/etc/contab
*/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}

/usr/abills/libexec/billd paysys_external_commands UID=%UID% START=1 NAS_TYPE=me60 SKIPPID=1


Стоп скрипт:

При стопе абонента система возвращает на user_ugrop - guest

/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

/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

/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 - на какой тариф менять

config.pl
$conf{PAYSYS_FROM_TARIFF_AFTER_PAYMENT} = 1;
$conf{PAYSYS_TO_TARIFF_AFTER_PAYMENT} = 2;

Добавить команду окончания оплаты

Можно добавить параметр GET_ABON=1, автоматически сделает активацию и списание за услугу

perl /usr/abills/Abills/modules/Paysys/paysys_change_tariff.pl

Автоматическое переключение после оплаты, даже если недостаточно денег

config.pl
$conf{PAYSYS_FORCE_CHANGE_TP_AFTER_PAYMENT}=1;
  • No labels