forum.bitel.ru http://forum.bitel.ru/ |
|
Событие при смены зоны в ТП модуль DialUp http://forum.bitel.ru/viewtopic.php?f=5&t=4261 |
Страница 1 из 1 |
Автор: | focus [ 06 июл 2010, 14:45 ] |
Заголовок сообщения: | Событие при смены зоны в ТП модуль DialUp |
Здравствуйте. Есть ли (возможно ли добавить) событие, генерируемое при изменении зоны в тарифном плане (модуль DialUp). Ниже картинка, о какой зоне идет речь. Вложение: Нужно, это для того, чтобы оперативно среагировать на то, что пользователь исчерпал предоплаченный трафик и далее сообщить ему об этом. |
Автор: | Администратор [ 26 окт 2010, 10:21 ] |
Заголовок сообщения: | Re: Событие при смены зоны в ТП модуль DialUp |
http://www.bgbilling.ru/v5.1/javadoc/ru ... Event.html Сделали. |
Автор: | Cromeshnic [ 18 янв 2011, 13:44 ] |
Заголовок сообщения: | Re: Событие при смены зоны в ТП модуль DialUp |
Работает. Чтобы событие выстреливало, нужно указать в поле "Событие BGBS" какую-нибудь строку: Вложение: Эта строка передается в событие через getEventName() класса TariffZoneChangedEvent. Только вот есть баг интерфейса: указываю там стороку, закрываю вкладку "Редактор тарифных планов", открываю заново, открываю тариф - строка не прописана. В базе в это время она есть. Дальше понятно, что при нажатии "ОК" строка стирается. Плюс немного сбивает с толку название "Событие BGBS". Лучше было бы "Метка для события BGBS". |
Автор: | Cromeshnic [ 24 янв 2011, 16:07 ] |
Заголовок сообщения: | Re: Событие при смены зоны в ТП модуль DialUp |
^ - АП! Поправьте баг, редактироавть неудобно очень Цитата: Только вот есть баг интерфейса: указываю там стороку, закрываю вкладку "Редактор тарифных планов", открываю заново, открываю тариф - строка не прописана.
|
Автор: | Cromeshnic [ 11 фев 2011, 09:10 ] |
Заголовок сообщения: | Re: Событие при смены зоны в ТП модуль DialUp |
Всё отлично, но есть маааленькая хотелка: сделать метод ru.bitel.bgbilling.kernel.network.radius.nas.NasConnection.getNas() из protected -> public Иначе я в скрипте на событие смены зоны Nas могу получить только так: Код: DialUpSessionRealtime session = event.getSession();
if(session==null){ error("event.getSession() is null"); return; } int nas_id = session.getNasID(); if(nas_id==0){//Common law bug - всегда возвращает 0 - см http://forum.bgbilling.ru/viewtopic.php?f=5&t=5017&p=36153#p36153 PreparedStatement ps = con.prepareStatement("select nas_id from "+ServerUtils.getModuleMonthTableName("log_session", new Date(), setup.getModuleId())+" where id=?"); ps.setInt(1, session.getLogRecordId()); ResultSet rs = ps.executeQuery(); if(rs.next()){ nas_id=rs.getInt(1); } } Nas nas = NasList.getInstance().get(nas_id); |
Автор: | Администратор [ 25 фев 2011, 10:59 ] |
Заголовок сообщения: | Re: Событие при смены зоны в ТП модуль DialUp |
А с какой целью NAS получаете? |
Автор: | Cromeshnic [ 25 фев 2011, 11:12 ] |
Заголовок сообщения: | Re: Событие при смены зоны в ТП модуль DialUp |
Я на него произвольные CoA посылаю собственным сендером (глобальный Runnable объект в контексте радиуса, не связан с инспекторами) ![]() Через неделю вернусь с отпуска и выложу наверное всю нашу обвязку. |
Автор: | Администратор [ 25 фев 2011, 12:36 ] |
Заголовок сообщения: | Re: Событие при смены зоны в ТП модуль DialUp |
Обновление выложено. |
Автор: | Cromeshnic [ 25 фев 2011, 12:59 ] |
Заголовок сообщения: | Re: Событие при смены зоны в ТП модуль DialUp |
Спасибо! |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |