Просмотр сообщений
|
Страниц: [1]
|
1
|
Главная категория / Nodeny Plus / Re: Уведомления о сообщении
|
: 17 Декабря 2020, 11:47:57
|
Добрый день! Настроил в тестовом биллинге пуши (629 ревизия, настроен с нуля, сертификат честный) Отправляю сообщение на свою привязанную админскую учетку. Биллинг открыт в Хроме. Хром подписан на пуши от этого же сайта. Если у меня активная вкладка Хрома открыта на этом же сайте - уведомление не всплывает Если активна вкладка с любым другим сайтом - уведомление приходит нормально. Если активная вкладка на биллинге, но само окно свернуто в таскбар - уведомление приходит. Уведомления, которые не пришли - не приходят совсем, даже с запозданием. Типа их приняли и проигнорили. Пробовал на Винде 7, пробовал на Линукс Минте. На винде Хром последний, на Минте - старый. Поведение везде одинаковое.
Кто-то сталкивался с таким поведением?
|
|
|
2
|
Главная категория / Модули NodenyPlus / Re: Модуль Omega TV
|
: 30 Мая 2019, 16:59:43
|
Всё, нашли, в январском (553 ревизия) апдейте services.pm был решен вопрос с сортировкой порядка вызова методов модуля, похоже правка именно под этот модуль Жалко, что не указана минимальная ревизия биллинга или не приложен патч файла services.pm к модулю, хотя бы readme какой-нибудь, пришлось по тексту ориентироваться
|
|
|
3
|
Главная категория / Модули NodenyPlus / Re: Модуль Omega TV
|
: 28 Мая 2019, 16:04:32
|
Модуль скачивали 8 мая, файлы create.nod.omegatv.pm и create.services.omegatv.pm в архиве от 20 января 2019
Включил логгирование в _omegatv.pm, установил конец тарифного периода в (сейчас+1 минута) и подождал
24.05.2019 16:46:28 uid=1194 id=247786 service_id=259 t=1558705502 start=1558698540 end=1558705500 24.05.2019 16:46:28 omegatv api: uid=1194 /customer/tariff/set start 24.05.2019 16:46:28 omegatv api: uid=1194 /customer/tariff/set completed 24.05.2019 16:46:29 omegatv api: uid=1194 /customer/activate start 24.05.2019 16:46:29 omegatv api: uid=1194 /customer/activate completed 24.05.2019 16:46:29 omegatv api: uid=1194 /customer/block block 24.05.2019 16:46:30 omegatv api: uid=1194 /customer/block completed
Если вручную удалить / добавить услугу в учетке, все ОК
|
|
|
4
|
Главная категория / Модули NodenyPlus / Re: Модуль Omega TV
|
: 28 Мая 2019, 11:40:21
|
Купили модуль, обнаружили проблему. При переходе на следующий месяц модулем _omegatv.pm сначала отправляется команда на ВКЛЮЧЕНИЕ абонента, а потом через секунду - на ОТКЛЮЧЕНИЕ, в результате у абонента в кабинете билинга услуга типа включена, а в кабинете Омеги - выключена. Биллинг настроен на заморозку услуг (wait_pos_balance)
|
|
|
5
|
Главная категория / Nodeny Plus / Re: Условия выбора тарифа - проблемы с переходом на новый период
|
: 17 Мая 2018, 11:23:45
|
С id этого клиента в kernel.log нашлась единственная запись (при ручном включении тарифа оператором) kernel.log:14.04.2018 15:38:51 Заблокирован доступ клиенту id=9871, баланс -90.00 < 0.00 web.log: 14.04.2018 15:38 Adm maytome(id=12, ip=10.11.3.31) операция с услугами uid=9871, cmd=add, id=0, service_id=71 web.log: 14.04.2018 15:39 Adm maytome(id=12, ip=10.11.3.31) посмотрел пароль uid=9871 web.log: 14.04.2018 15:39 Adm wolfzp(id=11, ip=10.11.3.26) создал платеж id=366474 категории 69, cash=90, uid=9871 web.log: 14.04.2018 15:39 Adm maytome(id=12, ip=10.11.3.31) посмотрел пароль uid=9871 web.log: 14.04.2018 15:43 Adm maytome(id=12, ip=10.11.3.31) добавил ip=10.13.98.110 клиенту id=9871 Лог моего скрипта файрволла fw.log: Apr 14 15:43:05 fw.sh: ON IPS=[10.13.98.110] UID=[9871] XID=[268f] SPEED_IN=[50000000] SPEED_OUT=[25000000] GRP=[11] SRV=[71] TARIF=[] TABLE=[] fw.log: Apr 28 14:06:46 fw.sh: ON IPS=[10.13.98.110] UID=[9871] XID=[268f] SPEED_IN=[50000000] SPEED_OUT=[25000000] GRP=[11] SRV=[71] TARIF=[] TABLE=[] После чего абону пополнили счет, доступ включился После окончания тарифного периода ядро не может перейти на новый период. ------------------------- Upd Нашел, где ошибка высвечивается Карточка абонента (операторская сторона) -> Тариф (ajUserSrvInfo) -> Заказ следующей (ajUserSrvAdd) -> Продлить текущей -> Ошибка: ошибка получения данных клиента
Если ошибка устойчивая - к администратору (см. Debug)
Прикладываю Debug.txt (хотя там на мой взгляд ничего по этой ошибке нету) В _ajUserSrvAdd.pl этот кусок кода мне ответил при ручном продлении тарифа: # add - подключение услуги # set_next - изменение поля 'следующая услуга' в существующей услуге my $cmd = ses::input('cmd') eq 'set_next'? 'set_next' : 'add'; ... my %param = ( cmd => $cmd, id => $id, uid => $uid, ... my $err = services->proc( %param );
if( $err ) { return _('[span error]:[p][p]', $lang::error, $lang::services_pm->{$err->{for_adm}} || $err->{for_adm}, L('Если ошибка устойчивая - к администратору (см. Debug)') ); }
|
|
|
6
|
Главная категория / Nodeny Plus / Условия выбора тарифа - проблемы с переходом на новый период
|
: 17 Мая 2018, 09:45:20
|
Начали использовать поле "Условия" в настройках тарифов (услуг) Наткнулись на баг Если уже установленный абоненту тариф не подходит под прописанные условия, то биллинг не может его корректно завершить и продлить на следующий месяц. Когда оператор смотрит, что же с тарифом (ajUserSrvInfo.pl) ему сообщают: Старт 14.04.2018 15:38 Конец 14.05.2018 15:38 Будет завершена с минуты на минуту
И тариф не завершается Подозреваю, виноват следующий фрагмент: services.pm: ... # --- Подключение услуги / установка поля `следующая услуга`
{ $cmd =~ /^(add|set_next)$/ or last; $service_id or last; ... my $conditions = $service_new{conditions}? "AND $service_new{conditions}" : ''; my %u = Db->line("SELECT * FROM users u JOIN data0 d ON u.id=d.uid WHERE u.id=? $conditions LIMIT 1", $uid); %u or return { for_adm => 'ошибка получения данных клиента', for_usr => '', };
Что любопытно, эта ошибка нигде не высвечивается Нужно ли здесь проверять, соответствует ли установленный тариф условиям?
|
|
|
8
|
Главная категория / Модули NodenyPlus / Re: netflow
|
: 01 Декабря 2017, 12:16:29
|
Апну тему с несколькими аплинками на одном устройстве. Мы решили проблему так: в конфиге коллектора номера интерфейсов перечисляются через запятую: netflow.pm сравнивает $src_iface и $dst_iface по списку: $res .= $h."2\n" if (",${ext_iface}," =~ /,${src_if},/); # Если в списке ",1,2,3," встречается подстрока /,3,/ $res .= $h."1\n" if (",${ext_iface}," =~ /,${dst_if},/); # $res .= $h."2\n" if $ext_iface == $src_if; # $res .= $h."1\n" if $ext_iface == $dst_if;
|
|
|
10
|
Главная категория / Nodeny Plus / Re: FAQ. Несколько ip на PPPoE
|
: 18 Мая 2017, 13:40:20
|
В такой реализации, как приведена в этой ветке, очень смущает строчка "WHERE uid = user_id AND type='static' ORDER BY ip " То есть если добавить еще один адрес, меньший, чем последний, то все привязки поплывут Никаких других механизмов фиксации ip по передаваемому логину не придумали? Для нас тема очень актуальна, т.к. в N50.32 существует куча "корпоративных" абонентов, с индивидуальными логинами на общем счёте и не можем их нормально перенести Насчет RADIUS - я у себя сделал так /* For RADIUS 1.X */ DROP PROCEDURE IF EXISTS `radcheck`;
DELIMITER $$ CREATE PROCEDURE `radcheck` (IN login VARCHAR(64)) BEGIN SELECT id,name,'Password' AS Attribute,AES_DECRYPT(passwd,'XXXXXX') AS Value,'==' FROM users WHERE name=login; END$$ DELIMITER ;
/* For RADIUS 2.X */ DROP PROCEDURE IF EXISTS `radcheck2`;
DELIMITER $$ CREATE PROCEDURE `radcheck2` (IN login VARCHAR(64)) BEGIN SELECT id,name,'Cleartext-Password' AS Attribute,AES_DECRYPT(passwd,'XXXXXX') AS Value,':=' FROM users WHERE name=login; END$$ DELIMITER ;
Для второго Радиуса нужно указывать не '==', а ':=', ну и как было указано выше, 'Cleartext-Password' вместо 'Password'
|
|
|
11
|
Главная категория / Nodeny 50 / Re: Производительность биллинговой машины.
|
: 10 Ноября 2010, 09:07:09
|
Эмм .. вопрос .. А приложения вообще собраны с поддержкой кучи процов ? Везде галка [THREAD] стоит ?
Система, о которой пишет glat. perl был собран без тредирования. bash> ps -wwuH -p 19536 USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND root 19536 66.4 8.2 280392 277900 ?? R< Mon10PM 623:58.14 perl nodeny.pl (perl5.8.9)
Наблюдаем периодический рост потребления ЦПУ (фактически 1 из 4) от ~0% до 60-70% (сейчас, утром, не в час пик), прочие параметры не меняются. Тред единственный. Тот же mysql на ps -H показывает кучу тредов. Имеет ли смысл пересобрать perl, если "use threads" не используется (иначе бы и не работало)? (железо все то же, Phenom 4-хядерный, FreeBSD 7.2 под i386)
|
|
|
|