forum.bitel.ru http://forum.bitel.ru/ |
|
[5.2]Не потерять Radius сессии http://forum.bitel.ru/viewtopic.php?f=6&t=8587 |
Страница 1 из 1 |
Автор: | Cobra57 [ 16 окт 2013, 17:44 ] |
Заголовок сообщения: | [5.2]Не потерять Radius сессии |
В случае если логи радиус сервера не соответствуют ни одному Алиасу они просто теряются, т.е. в базу не заносятся. Возможно ли как-то фиксировать их в базе, например вешать на какой-нить договор или заносить в таблицу log_session без идентификатора договора? |
Автор: | Cobra57 [ 17 окт 2013, 11:48 ] |
Заголовок сообщения: | Re: [5.2]Не потерять Radius сессии |
![]() Разобрался, вот что получилось. Возможно решение и топорное, но судите сами. Решил все с помощью скрипта предобработки, выглядит так: Код: import bitel.billing.server.radius.*;
import ru.bitel.bgbilling.kernel.network.radius.*; FromNumber = request.getStringAttribute(RadiusStandartAttributes.Calling_Station_Id); VirtualAlias = "4000"; //Назначаем выиртуальный алиас, для тех звонков которые случайным образом идут, а своего Алиаса не имеют if (FromNumber.startsWith("233")) //Проверяем что это наша нумерация, т.е. начинается на 233 { moySQL = "select * from user_alias_8 where login_alias = '" + FromNumber + "'"; //Создаем запрос и выполняем rs=con.prepareStatement(moySQL).executeQuery(); if (rs.next()) //Если истинно значит запрос пришел не нустой, т.е. Алиас такой у нас есть. { } else //Запрос пустой, подменяем параметр User-Name на выдуманный Алиас подключенный к служебному договору. { request.setStringAttribute( RadiusStandartAttributes.User_Name, VirtualAlias); } } |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |