Диагностика соединения
По умолчанию в биллинге используется команда ping для диагностики соединения. Можно расширить инструменты диагностики за счет внешних программ или Perl-модулей при помощи опции INTERNET_EXTERNAL_DIAGNOSTIC
| $conf{INTERNET_EXTERNAL_DIAGNOSTIC}='-' | Внешняя диагностика соединения. |
|---|
Объявление для внешней программы:
NAME:CMD ARGS::QINDEX:MODAL_TPL
| NAME | Имя команды |
|---|---|
| CMD | Команда |
| ARGS | Аргументы |
| QINDEX | Параметр, указывающий, нужно ли отображать страницу с диагностикой через qindex. "qindex" - отображать через qindex, пустое поле - отображать через index |
| MODAL_TPL | Название шаблона с формой. Если задано, при нажатии кнопки диагностики появится всплывающее окно с этой формой. Параметры, введенные пользователем в форме могут быть переданы как параметры программе для диагностики. |
Объявление для Perl-модуля:
NAME:package:MODULE:QINDEX
| NAME | Имя команды |
|---|---|
| MODULE | Название Perl-модуля |
| QINDEX | Параметр, указывающий, нужно ли отображать страницу с диагностикой через qindex. "qindex" - отображать через qindex, пустое поле - отображать через index |
Для разделения диагностических команд используется точка с запятой (;)
Список возможных аргументов:
USER_NAME
SESSION_START
ACCT_SESSION_TIME
ACCT_INPUT_OCTETS
ACCT_OUTPUT_OCTETS
EX_INPUT_OCTETS
EX_OUTPUT_OCTETS
CONNECT_TERM_REASON
FRAMED_IP_ADDRESS
LAST_UPDATE
NAS_PORT
NAS_IP_ADDRESS
CALLING_STATION_ID
CONNECT_INFO
ACCT_SESSION_ID
NAS_ID
ACCT_SESSION_STARTED
ACCT_INPUT_GIGAWORDS
ACCT_OUTPUT_GIGAWORDS
FILTER_ID
Любые, введенные пользователем. См. MODAL_TPL.
Пример Использование ARP Ping
$conf{INTERNET_EXTERNAL_DIAGNOSTIC}='ARPPING:arping %CALLING_STATION_ID%';
Если нужно обьявить несколько внешних программ - это можно сделать через точку с запятой (;)
...
$conf{INTERNET_EXTERNAL_DIAGNOSTIC}='TCPDUMP:/usr/bin/ssh -o StrictHostKeyChecking=no -i /usr/abills/Certs/id_rsa.abillsacp_kazna_admin39 abillsacp_kazna_admin@%NAS39@%NAS_IP_ADDRESS% "/usr/bin/sudo /usr/sbin/tcpdump -c 3 -vv host %FRAMED_IP_ADDRESS%"';...
Запустите visudo, добавьте строку (в этом примере имя пользователя - abillsacp_kazna_admin39):
abillsacp_kazna_admin39 ALL = NOPASSWD: /usr/sbin/tcpdump
...
$conf{INTERNET_WARNING_EXPR}='CMD:/usr/abills/Abills/modules/Internet/internet_warning.pl LOGIN=%LOGIN% LANGUAGE=%language% USER_PORTAL=%USER_PORTAL%';| LOGIN= | Логин абонента |
| LANGUAGE= | язык интерфейса |
| USER_PORTAL= | 0 - Запуск с админ. интерфейса 1 - Запуск с портала абонента |
Привязка MAC адреса в аккаунте пользователя
...
