dimonous
Пользователь
Карма: 0
Offline
Сообщений: 34
|
|
« : 29 Июля 2015, 15:10:34 » |
|
Добрый день, коллеги.
При переходе с Nodeny50 на Nodeny+ столкнулся с проблемой:
Описание: В старом биллинге абонентам было разрешено пользоваться услугами доступа в интернет при балансе до -10 грн., limit_balance = -10. В Nodeny+ же для продления услуги класса "inet_unlim" требуется чтобы на счету была положительная сумма размером "стоимость тарифного плана за период", ведь при продлении услуг поле "limit_balance" игнорируется. Абонплата суточная (в старом - через скрипт 8:* , в новом - услуга с периодом 24 часа).
Почитав документацию и форум, способы решения, частично решающие проблемы около: - разрешить залазить в минус: плохо, они залазят в -50 и потом кошмарят техподдержку "почему не заблокировало при -10, я не собираюсь платить"; - модуль "кредит": не пошел, абоненты как оказалось, не заходят в личный кабинет вообще, баланс смотрят в терминалах;
Решение: Пропатчил services/inet_unlim.pm, добавив условие проверки поля "inet_unlim": /usr/local/nodeny/services]# diff backup/inet_unlim.pm inet_unlim 139a140,150 > # set 0 for datail log > my $mode = 0; > my $log = Debug->new( > -type => 'file', > -file => '/var/log/debug.txt', > -drop_chain => 1, > -only_log => 1, > ); > > > 143c154 < if( $service_new->{param}{wait_pos_balance} && $user->{balance} < $service_new->{price} ) --- > if( $service_new->{param}{wait_pos_balance} && ($user->{balance} - $user->{limit_balance}) < $service_new->{price} ) 144a156 > $log->tolog("Не хватает денег на установку услуги: $uid $user->{balance} $user->{limit_balance} $service_new->{price}"); 158a171,172 > $log->tolog("action-pay"); > 165a180 > $log->tolog("actions-set_service");
Вопрос: Может быть в биллинге есть уже встроенное решение для эмуляции поведения "как в старом", как и в теме "Скрипт управления скоростью. Тег для трафика с начала месяца" ?
|