Настройка действий на сервере доступа.
ExpertBilling взаимодействует с серверами доступа посредством протоколов RADIUS, SNMP, NetFlow, TrafficFlow, SSH, RouterOS API. При использовании способа доступа IPN или, если для другого типа доступа выбрана опция "Производить IPN действия"
управление сервером доступа происходит также по протоколу SSH. Ядро посылает на сервер доступа определённые команды, когда абонент добавляется в систему, становится неактивным или его нужно удалить. Стоит отметить, что для способов доступа PPTP/PPPOE биллинг так же посылает на сервер доступа команды, если необходимо сбросить активную сессию пользователя или изменить ему скорость.
В системе предусмотрено 12 типов команд:
- Добавить абонента
- Добавить субаккаунт
- Удалить абонента
- Удалить субаккаунт
- Включить абонента
- Включить субаккаунт
- Отключить абонента
- Отключить субаккаунт
- Установить скорость для VPN
- Установить скорость для IPN аккаунта
- Установить скорость для IPN субаккаунта
- Сбросить сессию
Каждая команда является строкой символов, в которой все переменные вида $имя_переменной заменены на значения (варианты переменных см.ниже.).
Добавить абонента
Команда выполняется при создании пользователя в системе, если у него в сетевых параметрах указан сервер доступа и опция "Производить IPN действия" (в т.ч. на IPN тарифе) . По-умолчанию команда не указана. При создании команды можно использовать переменные *Аккаунт* и *Сервер доступа*.
Доступные переменные
- Аккаунт
acc_account_id acc_ballance acc_credit acc_datetime - дата подключения на текущий тариф acc_tarif_id acc_access_parameters_id acc_time_access_service_id acc_traffic_transmit_service_id acc_cost acc_reset_tarif_cost acc_settlement_period_id acc_tarif_active acc_acctf_id acc_account_created acc_disabled_by_limit acc_balance_blocked acc_nas_id acc_vpn_ip_address acc_ipn_ip_address acc_ipn_mac_address acc_assign_ipn_ip_from_dhcp acc_ipn_status acc_ipn_speed acc_vpn_speed acc_ipn_added acc_ps_null_ballance_checkout acc_tarif_deleted acc_allow_express_pay acc_account_status acc_allow_vpn_null acc_allow_vpn_block acc_username acc_password acc_require_tarif_cost acc_periodical_billed acc_current_acctf acc_end_date acc_allow_ipn_with_null acc_allow_ipn_with_minus acc_allow_ipn_with_block acc_radius_traffic_transmit_service_id
- Субаккаунт
subacc_id subacc_account_id subacc_username subacc_password subacc_vpn_ip_address subacc_ipn_ip_address subacc_ipn_mac_address subacc_nas_id subacc_ipn_added subacc_ipn_enabled subacc_need_resync subacc_speed subacc_switch_id subacc_switch_port subacc_allow_dhcp subacc_allow_dhcp_with_null subacc_allow_dhcp_with_minus subacc_allow_dhcp_with_block subacc_allow_vpn_with_null subacc_allow_vpn_with_minus subacc_allow_vpn_with_block subacc_associate_pptp_ipn_ip subacc_associate_pppoe_ipn_mac subacc_ipn_speed subacc_vpn_speed subacc_allow_addonservice subacc_allow_ipn_with_null subacc_allow_ipn_with_minus subacc_allow_ipn_with_block subacc_vlan subacc_vpn_ipv6_ip_address
- Сервер доступа
nas_id nas_type nas_name nas_ipaddress nas_secret nas_login nas_password nas_allow_pptp nas_allow_pppoe nas_allow_ipn nas_user_add_action nas_user_enable_action nas_user_disable_action nas_user_delete_action nas_vpn_speed_action nas_ipn_speed_action nas_reset_action nas_confstring nas_multilink nas_speed_vendor_1 nas_speed_vendor_2 nas_speed_attr_id1 nas_speed_attr_id2 nas_speed_value1 nas_speed_value2 nas_identify nas_subacc_add_action nas_subacc_enable_action nas_subacc_disable_action nas_subacc_del_action nas_subacc_ipn_speed_action nas_acct_interim_interval