forum.bitel.ru
http://forum.bitel.ru/

Не закрывается шлюз
http://forum.bitel.ru/viewtopic.php?f=7&t=2670
Страница 1 из 1

Автор:  Heggi [ 31 июл 2009, 20:05 ]
Заголовок сообщения:  Не закрывается шлюз

Есть договор, где подключено сразу несколько модулей, в частности DialUp и IPN.
Так же есть несколько тарифных планов. Некоторые ТП используют только диалап модуль, другие только IPN. Так вот, если в текущий момент нет ТП, использующего модуль ИПН, но баланс положительный, шлюз открыт и интернет прет (на халяву).
Как пофиксить?

Автор:  stark [ 03 авг 2009, 13:02 ]
Заголовок сообщения: 

у нас тариф используется только для обсчета . Задача проверки шлюза не обращается к трифу и не проверяет его наличие на текущйи момент

Автор:  Heggi [ 03 авг 2009, 18:06 ]
Заголовок сообщения: 

А такой функционал планируется? Или это можно как-нить самому прикрутить?

Автор:  stark [ 03 авг 2009, 19:27 ]
Заголовок сообщения: 

Heggi писал(а):
А такой функционал планируется? Или это можно как-нить самому прикрутить?


тут проблема не в налчии тарифа . А в общем балансе .Т.к вас клиент не может одновремнно тпользоваться dialup и IPN? т.е вы отключаете одно и включаете другое . Если есть деньги на договре, то для ipn это признак чтобы открыть шлюз
Можете добавить субдоговра с независмым балансом , тогда каждый баланс будет отдельно учитываться .

Автор:  stark [ 03 авг 2009, 19:35 ]
Заголовок сообщения: 

кстати IPN умеет ттолко закрывать . т.е задаяча прроверки шлюзов закрывает .
а открывается во всех модулях по событию прихода платежа если статус -активен и баланс > лимита .. Можно как вариант нам добавить опциональную возможность отключить эту логику , а вам написать свой обработчик прихода платежа

Автор:  Heggi [ 04 авг 2009, 02:27 ]
Заголовок сообщения: 

stark писал(а):
тут проблема не в налчии тарифа . А в общем балансе .Т.к вас клиент не может одновремнно тпользоваться dialup и IPN? т.е вы отключаете одно и включаете другое . Если есть деньги на договре, то для ipn это признак чтобы открыть шлюз
Можете добавить субдоговра с независмым балансом , тогда каждый баланс будет отдельно учитываться .


В том-то и дело, что пользователь может одновременно пользоваться и тем и тем, сменив ТП с начала суток, т.е. у него безлим (IPN) и помегабайтный тариф (dialup-VPN). И получается, когда он врубает себе Помегабайтный тариф, безлимитка не только не отключается, но и прекращается насчитываться абонплата...
Кст когда тарифа, использующего модуль Dialup нет - авторизация не проходит. Может стоит сделать нечто подобное и для модуля IPN? Т.е. условие открытия шлюза не только положительный баланс, но и наличие тарифа, по которому будет проводится тарификация.
У нас-то конечно безлим и на тарификацию пофиг, но у других и помегабайтные тарифы есть. А там пропуск трафика без назначенного тарифа чревато последствиями...

Автор:  stark [ 04 авг 2009, 13:23 ]
Заголовок сообщения: 

в общесм случае тариф для шлюза IPN не обязателен . Мы можем убрать открывание шлюза , точнее заблокировать возможность открывания всех мождулей по приходу платежа с помощью специальное опции в конифигурации . для dialup там все равно ничего не делается.

Автор:  Heggi [ 04 авг 2009, 19:00 ]
Заголовок сообщения: 

Лучше возможность встраивания собственного обработчика.
Типа так: платеж пришел или еще какое событие по которому шлюз должен открыться, передается управление в обработчик события, в котором можно самому писать что угодно (например проверка наличия нужного ТП), и обработчик возвращает 1 в случае, если шлюз можно открыть, или 0 - если нельзя.
Но обработку платежей и т.д. (все как есть) оставить. Просто перед самым открытием шлюза провести еще одну проверку внешним скриптом.

Автор:  stark [ 04 авг 2009, 19:33 ]
Заголовок сообщения: 

Heggi писал(а):
Лучше возможность встраивания собственного обработчика.
Типа так: платеж пришел или еще какое событие по которому шлюз должен открыться, передается управление в обработчик события, в котором можно самому писать что угодно (например проверка наличия нужного ТП), и обработчик возвращает 1 в случае, если шлюз можно открыть, или 0 - если нельзя.
Но обработку платежей и т.д. (все как есть) оставить. Просто перед самым открытием шлюза провести еще одну проверку внешним скриптом.


вы это можете и сейчас уже сделать в обработчике события прихода платежа

Автор:  Heggi [ 04 авг 2009, 20:10 ]
Заголовок сообщения: 

Тут не только обработка платежа...
Смена ТП
Завершение действия ТП (фактически пользователь остается без тарифных планов вообще)
Возможно еще какие-то события, которые я упустил из виду.

Автор:  stark [ 05 авг 2009, 13:02 ]
Заголовок сообщения: 

Heggi писал(а):
Тут не только обработка платежа...
Смена ТП

зачем ?
Heggi писал(а):
Завершение действия ТП (фактически пользователь остается без тарифных планов вообще)


зачем?этого события вообще нет у нас .

Автор:  Heggi [ 05 авг 2009, 13:14 ]
Заголовок сообщения: 

stark писал(а):
Heggi писал(а):
Тут не только обработка платежа...
Смена ТП

зачем ?


В первом посту написано зачем. Пользователь самостоятельно меняет ТП с помегабайтного (dialup) на безлимитный (IPN) и обратно.
stark писал(а):
Heggi писал(а):
Завершение действия ТП (фактически пользователь остается без тарифных планов вообще)


зачем?этого события вообще нет у нас .


Один раз получилось, что некий юзер оплатил ровно ххх руб за yyy дней. Счет ему пополнили на эти xxx дней, ТП указали с ... по ... (т.е. ровно yyy дней). По истечении этого периода у юзера на счету ноль, ТП закрылся, а шлюз... открыт... Пока не заметили - юзер нахаляву сидел в инете.

Автор:  Yagoda [ 06 авг 2009, 05:13 ]
Заголовок сообщения: 

Хм... А разве стандартная задача "Установка статусов договоров" это не отрабатывает?
При нуле на счете (т.е. меньше или равно лимита) она вроде должна заблокировать...

PS. А вообще, хорошо бы иметь событие "Закончился период действия тарифа". Или на крайний случай - параметр в договоре "Тариф по-умолчанию". Чтобы он действовал когда других тарифов на дату нет. Или какой-то механизм "замещения" тарифов.

Сейчас как раз с этим парюсь... Надо предоставлять тариф на определенное время. А когда это время закончится?

PPS. ;) Разобрался с "тарифом по умолчанию". Добавляю несколько тарифов на договор и этот дефолтный с большим номером позиции.

PPPS. В этом случае (если закончены все тарифы из группы), дальше клиент не может менять тариф... Упс.

Автор:  stark [ 06 авг 2009, 18:31 ]
Заголовок сообщения: 

Yagoda писал(а):
Хм... А разве стандартная задача "Установка статусов договоров" это не отрабатывает?
При нуле на счете (т.е. меньше или равно лимита) она вроде должна заблокировать...


так них нет проблем с блокированием . У них проблема с разблокированием . оно рабаотает стабильно - деньги есть , открываем шлюз . А им не нужно этого ..у них деньги за dialup типа ..т.е полуается что у их фактически 2 счета , а не один . а рабаотеют с однм счетом , в этом то и все проблема ..если 2 счета , то надо 2 договра разных - тогда проблем не будет .или субдоговр с зависымым балансом

Автор:  Heggi [ 06 авг 2009, 19:25 ]
Заголовок сообщения: 

stark писал(а):
так них нет проблем с блокированием . У них проблема с разблокированием . оно рабаотает стабильно - деньги есть , открываем шлюз .

Вы не правы. у нас нет проблем и с разблокированием.
У нас проблема в том, что шлюз открыт даже тогда, когда нет активного ТП, использующего этот модуль.

stark писал(а):
у них деньги за dialup типа ..т.е полуается что у их фактически 2 счета , а не один . а рабаотеют с однм счетом , в этом то и все проблема ..если 2 счета , то надо 2 договра разных - тогда проблем не будет .или субдоговр с зависымым балансом


В том то и дело, что 2 счета не катит. У нас пользователь выбирает один_из_двух тарифов. САМ. И счет должен быть общий. 2 тарифа одновременно быть не может.

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/