Как должен работать billd checkmpd NAS_IDS=1

Ответить
kaats
Сообщения: 99
Зарегистрирован: Пн ноя 19, 2007 8:43 pm
Контактная информация:

Как должен работать billd checkmpd NAS_IDS=1

Сообщение kaats »

Здравствуйте.
Freebsd 11.0
Биллинг: Бесплатная версия, скачан с sourceforge.net версия abills-0.75.110.tgz
Сервер доступа и биллинг на одном сервере.
mpd5-5.8
freeradius-2.2.9
/usr/abills/misc# ./perldeps.pl test
Authen::Captcha...............[ OK ]
Crypt::DES....................[ OK ]
Crypt::OpenSSL::X509..........[ OK ]
DBD::mysql....................[ OK ]
DBI...........................[ OK ]
Devel::NYTProf................[ OK ]
Digest::MD4...................[ OK ]
Digest::MD5...................[ OK ]
Digest::SHA1..................[ OK ]
Imager::QRCode................[ OK ]
JSON..........................[ OK ]
LWP::UserAgent................[ OK ]
URI...........................[ OK ]
PDF::API2.....................[ OK ]
Perl::GD......................[ OK ]
Spreadsheet::WriteExcel.......[ OK ]
Time::HiRes...................[ OK ]
XML::Simple...................[ OK ]
LWP::Protocol::https..........[ OK ]
IO::Socket::SSL...............[ OK ]
Ситуация такая: Пользователь подключен (pppoe). Все работает.
hangup с админки билинга работает.
telnet 127.0.0.1 5005 на консоль мпд тоже работает , вручную можно скинуть пользователя.
Пользователь подключен и работает, я очищаю таблицу dv_calls
TRUNCATE TABLE `dv_calls
`
Пользователь продолжает работать (как и ожидается)
а биллинг уже не знает о том что пользователь продолжает работать (тоже как и ожидалось)

Вопрос: Входит ли в обязанности скрипта
/usr/abills/libexec/billd checkmpd NAS_IDS=1
Вернуть "заблудшего юзера в систему" ?

Вот попытки запустить скрипт
/usr/abills/libexec/billd checkmpd NAS_IDS=1
Can't use string ("0") as a HASH ref while "strict refs" in use at /usr/abills/libexec/..//lib/Abills/Nas/Control.pm line 104.
/usr/abills/libexec/billd checkmpd NAS_IDS=1 DEBUG=7
Debug mode 7
<pre><code>
SELECT INET_NTOA(c.framed_ip_address) AS client_ip, service.port, c.nas_id,
c.uid,c.nas_id,c.acct_session_id,c.user_name
FROM dv_calls c
LEFT JOIN users u ON (u.uid=c.uid)
LEFT JOIN dv_main service ON (service.uid=u.uid)

WHERE c.nas_id='1' AND ((c.status=1 OR c.status>=3) AND c.status<11)
ORDER BY 1
;
</code></pre>
Killed IP: 195.95.171.11 IF: 0 PID: '0' -- (2017-03-11 12:53:56)
Unallow ips: 1
GT: 0.04557
Все конфиги радиуса и мпд пытались быть максимально точно скопированы с /usr/abills/misc/...
без вольностей и отступлений от оригинала :)

Если скрипт должен этим заниматься - то подскажите где я мог ошибиться, или может в фриверсии этот функционал неработает ?
Вот он пытается сбросить юзера
Killed IP: 195.95.171.11 IF: 0 PID: '0' -- (2017-03-11 12:53:56)
но интерфейс ng0 продолжает быть активным...
Спасибо

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Как должен работать billd checkmpd NAS_IDS=1

Сообщение ~AsmodeuS~ »

/usr/abills/libexec/billd checkmpd2 NAS_IDS=1

поправлено


Вы можите включить опцию $conf{rt_billing}=1;

и тогда пропавшие онлайн сессии при получении алайва будут возвращаться в билинг

kaats
Сообщения: 99
Зарегистрирован: Пн ноя 19, 2007 8:43 pm
Контактная информация:

Re: Как должен работать billd checkmpd NAS_IDS=1

Сообщение kaats »

Да! :)
Дюкую. Крутецько все працює.

Ответить