Биллинговая система Nodeny

Главная категория => Nodeny Plus => Тема начата: Efendy от 15 Сентября 2012, 22:41:06



Название: Вести с полей
Отправлено: Efendy от 15 Сентября 2012, 22:41:06
Как я говорил, постепенно буду держать в курсе дел о новинках NoDeny+. К финансовому отчету добавились графики. Графики можно строить на любой период, с и без накопления. С накоплением тоже интересные данные, например, на прикрепленном рисунке синий график - это общий доход сети, видно, что растет скачками т.к. свою сеть я начал строить на старом биллинге и все тарифы начинались с первого числа. Сейчас тарифы начинаются с момента подключения и до этого же числа в следующем месяце. На самом деле, существует 3 режима для тарифов (могут комбинироваться):
1) ровно месяц, например от 5го числа до 5го вне зависимости от того, сколько дней в месяце
2) время, указанное в тарифе
3) от момента активации до 1го числа 00:00 - эмуляция старого NoDeny
На рисунке также видно, что поначалу большим спросом пользовались платежные системы, у меня это Liqpay. По итогу карточки пополнения счета перетянули одеяло т.к. в Ликпее наблюдались сбои как раз в июне.


Название: Re: Вести с полей
Отправлено: Efendy от 15 Сентября 2012, 22:43:04
А вот график без накопления. Взял период 3 месяца. По графику можно смело утверждать, что большинство абонентов платят ровно тогда, когда приспичило - в момент снятия за услуги. Тем не менее видно, что некоторые платят наперед - смотрите перед пиками снятий идет подъем положительных платежей


Название: Re: Вести с полей
Отправлено: Efendy от 15 Сентября 2012, 22:48:18
А вот статистика с накоплением за месяц. По ней понимаем сколько денег приносят абоненты в месяц. Я добавил график оплаты наличностью, ею платят за подключение. Видно, что 2 сентября кучу народу подключили. На самом деле, в этот день были заключены договора со всеми, которые были подключены за предыдущие 15 дней.


Название: Re: Вести с полей
Отправлено: Efendy от 15 Сентября 2012, 22:50:55
А знали ли вы, что если нажать на кнопку "завершить услугу", то платеж, связанный с услугой, уменьшится и будет добавлен комментарий: досрочное завершение услуги, использовано 37.56% времени услуги?

Нафига это нужно? Пример. Звонит абонент и грит: зарплата 7го числа, временный платеж, плз. Зачем делать временный платеж каждый месяц? Завершаем услугу 7го числа и добавляем ее на полный месяц. По итогу у клиента расчетный период с 7го по 7-е


Название: Re: Вести с полей
Отправлено: Efendy от 25 Сентября 2012, 21:34:16
Добавил слайдер времени - теперь, двигая его, можно видеть авторизации в динамике, либо же просто узнать их на определенный момент времени.


Название: Re: Вести с полей
Отправлено: Efendy от 22 Ноября 2012, 18:27:37
Сделал возможность авторизоваться разными средствами/модулями.

В папке login лежат модуля авторизации (в данный момент 2): авторизация по паролю и авторизация по ip. Если ip  зарегистрирован в базе и клиент с него заходит - получает доступ. Это упрощает просмотр статистики и пополнение счета для тупых абонов, неспособных ввести логин/пароль (такие есть). С другой стороны, опасные операции (перевод бабла, пополнение мобильника) заблочены - требует перелогиниться под логином/паролем. Также разрешен вход  со статических ипов, т.е. можете для pppoe дать динамические и все будет ок.

Если вам не нужно такое - просто удаляете модуль и все.

В будущем прикручу oauth авторизацию, чтобы можно было авторизоваться через соцсети, гугл и т.д.

Залил сегодня. Тестирую и завтра буду тестировать. Если у вас боевой сервер - пока не заливайте. Подождите до завтра


Название: Re: Вести с полей
Отправлено: Efendy от 27 Ноября 2012, 11:16:12
Немного проапгрейдил структуру реестра плагинов. Дело в том, что уже давно была необходимость включения/выключения плагинов, при этом некоторые плагины не должны появляться в меню клиента, а действовать как дополнительные, ну, например, кнопка "ознакомлен с сообщением администрации" - это отдельный малюсенький плагин, но тем не менее, его не должно быть в меню. Поэтому ввел параметр nomenu. Также в веб-настройках отображается список всех плагинов с комментариями


Название: Re: Вести с полей
Отправлено: Efendy от 30 Ноября 2012, 18:04:40
Реализовал прием/отказ от передачи наличности между администраторами


Название: Re: Вести с полей
Отправлено: Efendy от 03 Декабря 2012, 19:18:12
Обновил доку по установке. Пожалуйста проверьте, я проверил почти все, но не все :)

Какие нюансы следует проверить: cgi-bin и htdocs файлы не записываю в /usr/local/www/..., а делаю мягкие ссылки. Не cgi файлы доступны (видимо по дефолту стоит фолоу символ линк в конфиге апача), cgi не проверял.

Запуск файла install.pl посже сделаю с проверкой на рута, чтоб при неправильном выставлении прав на файлы  нельзя было создать суперадмина


Название: Re: Вести с полей
Отправлено: stix от 05 Декабря 2012, 09:41:51
может кому пригодится, чтобы почистить директории от .svn директорий после checkout
Код:
rm -rf `find . -type d -name .svn`


Название: Re: Вести с полей
Отправлено: Efendy от 05 Декабря 2012, 11:04:52
Добавил такую фичу. Если идет удаление финансового платежа,  создается запись о том, что он удален таким-то админом с такого-то ипа тогда-то. Почти как в старом нодени, но лучше - сохраняется полная инфа, она же удобно выводится, причем в списке не тогда, когда была удалена, а когда создалась. Эту запись можно удалить. Полезно, когда абонам "прощаешь" задолженность и потом не помнишь почему у него не было никаких снятий 2 месяца...


Название: Re: Вести с полей
Отправлено: Efendy от 05 Декабря 2012, 12:46:07
может стоить внести пару параметров?
query_cache_size и thread_cache_size

потому как без кеширования запросов, бд может проседать.
то, что я не тестировал не могу рекомендовать. Если у тебя есть конкретные данные, особенно по N+ - приведи, обязательно добавлю в доку


Название: Re: Вести с полей
Отправлено: stix от 05 Декабря 2012, 14:38:16
кто-нибудь, сдедайте в mysql консоле
SHOW VARIABLES LIKE 'query_cache_%';

если
query_cache_type             | ON
значит кеширование работает

query_cache_size,покажет размер кеша.

покрайней мере на базе с >7k юзеров ощутимо даже 32мб кэш

SHOW STATUS LIKE 'Qcache_%';
покажет как работает кеширование

Qcache_hits
попаданий в кеш


Название: Re: Вести с полей
Отправлено: Efendy от 09 Декабря 2012, 15:33:40
В сегодняшнем комите:

1) В выпадающем меню (select в html) с помощью плагина сделал возможность поиска. Надо немного подправить css т.к. текст получается на несколько пикселей выше. Если кто подправит - спасибо.

2) Карты перевел на яндексовское API версии 2. Жаль в нем есть кое-какие фатальные вещи которые ну просто никак не получается обойти, так что пришлось отказаться от их балуна и заюзать свое модальное окно. По итогу получилось лучше.

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

Кроме клиентов на карте, есть места - точки топологии по версии NoDeny 49/50. Точки топологии хранятся в словаре под ключем place. Для сетей в сельской местности дополнительное удобство в том, что, если у клиента стоит координата (т.е. он стоит на карте), то предлагает выбрать ближайшие места в радиусе 150 метров.

Обновил nody.js. Если что-то не работает - убедитесь, что браузер его не закешировал


Название: Re: Вести с полей
Отправлено: Efendy от 11 Декабря 2012, 19:53:05
Для модулеписателей сделал такую вещь (пока еще не залил, тестирую).

Какая основная проблема, когда вы подправили файлик, например изменили название кнопки? Проблема в том, что при следующем апдейте все ваши изменения "слетят" и вам придется заново править.

Но не тут-то было - к вам летит на помощь новый, несложный механизм внедрения кода!

1) Появилась папка modules, где подпапки с именем модуля. Т.е сразу видим профит - файлы модуля не раскиданы по всему нодени
2) В папке модуля будут файлы, в которых будут идти простейшие команды: поставить этот фрагмент кода в такой файл в такое место. Похоже на patch? Все гораздо удобнее. Патч жестко привязывается к структуре файла и после того как файл изменился - патч уже не поможет. В моем варианте применяются хуки. В данном случае хук - это не вызов метода, а метка в коде. Получаем в профит то, что можно многократно патчить файлы таким макаром разными модулями
3) Почему я решил сделать хуки в виде метки, а не вызовы файлов? Потому что при большом количестве модулей, пришлось бы почти все загружать чтобы отобразить какую-то ссылку, сообщение и т.д. А так мы склеиваем все в один файлик, который и изучать удобней
4) Таким макаром можно патчить не только модули, но и любые файлы, например, языковый файл - добавить несколько переменных чисто для своего модуля
5) для подключения/отключения модуля используется тот же install.pl  с ключем -x, который сделает всю работу - пройдется по всем модулям и пропатчит файлы, при этом старые файлы останутся, а создадутся фантомы, начинающиеся с подчеркивания. Нодени+ в первую очередь будет  загружать фантомы, если есть


Название: Re: Вести с полей
Отправлено: Efendy от 11 Декабря 2012, 23:48:22
Примеры. Допустим разработчик 1 написал модуль выводящий количество придурков в сети. По вышеописанной технологии код будет вставлен туда, куда запланировал разраб1, т.е. на титульную страницу в правое окно.

Разработчик 2 хочет чтобы не только количество придурков выводило, но только тех, кто не платил 2 месяца.

Как примерно это выглядит в коде.

1) Хуки, которые разбросаны по моим файлам. Например, в main.pl  в конце:

Код:
#<HOOK>finish
все. Это хук с именем finish. Но именно для файла main.pl. В других файлах могут быть хуки с таким же именем.

2) Разработчик 1 создал модуль, в котором есть такой файл:

Код:
#<ACTION> name=>'show_fools',file=>'web/main.pl',hook=>'finish'

тут код, который подготавливает sql с количеством идиотов

#<HOOK>fool_sql_ready

тут код, который выводит количество идиотов

обратите  внимание, что разраб 1 предусмотрел и в своем патче хук, т.е. дал возможность другим патчить свой патч!

3) разработчик 2 создает модуль:

Код:
#<ACTION> require=>'show_fool',file=>'web/main.pl',hook=>'fool_sql_ready'

код, который подправляет sql

Обратите внимание, что у блоков могут быть зависимости, т.е. блок разраба 2 требует чтоб сначала был вставлен блок show_fool.


Название: Re: Вести с полей
Отправлено: Efendy от 14 Декабря 2012, 00:25:02
В текущем апдейте выпилил модули:

  • яндекс карты
  • поделись балансом
  • liqpay
  • turbosms

Сделано это в связи с тем, что таки скорее всего NoDeny+  будет распространятся бесплатно в комплектации довольно  многих фич. Специфичные и др. вспомогательные модули будут распространятся на платной основе. Стоимость скорее всего будет невысокая и доступная любому. Таким образом, я ставлю себя рядом с разработчиками модулей - вы свободно сможете зарабатывать больше меня - документация по разработке подробная и я еще планирую ее расширить.

На всякий случай, отмечу отдельной строкой: полностью рабочий NoDeny+ будет бесплатен и он устроит большинство.

Как только я допилю документацию и  немножко инсталятор - зафиксирую ветку - будет релизом. Попутно создастся бранч и буду новые фишки туда заливать, так что не будете бояться, что что-то резко поменяется и перестанет работать. Хотя, судя по последним нескольким месяцам, принципиально  NoDeny не меняется.


Название: Re: Вести с полей
Отправлено: Efendy от 23 Декабря 2012, 16:24:15
В сегодняшнем комите:

  • Кто просил при поиске по улице выводить список домой на ней. Это оформлено микромодулем modules/houselist. Не забываем собирать модули так: perl install.pl -x. Что хочу отметить. В Н+ моей целью является то, чтоб все ваши наработки, читай патчи, не улетели с каждым новым апдейтом. В старом Нодени - это реальная проблема, все накатали изменения по всему коду и не обновляются чтоб не потерять все это добро. В Н+ все ваши наработки ложите в отдельную папочку, после апдейта, все файлы пропатчатся и ничто не пропадет. Естественно, это не застрахует от принципиального изменения структуры NoDeny,  однако, можете посмотреть по апдейтам - уже давно ничего принципиально не меняется. А если и будет меняться - я об этом буду сообщать и вы сможете подправить свой код. Кстати №2 - если вам не нужна функциональность - просто создаете файлик с именем 'no' в папке с модулем. Таким образом удобно вырубать ненужное. Например, в своей сети, я как раз и вырубил модуль houselist  ибо у меня частный сектор и эта фича абсолютно не нужна. Если что-то еще выпилить в модули - говорите.
  • Пофиксил кое-что в traf_log.pl.  Как и ожидалось, никто нихрена не заметил, поэтому я не спешил с фиксом целых 2 дня. Ау, я тут один?
  • Просто заметка: для модуля пингования клиентов необходимо чтоб у клиентов было допполе:
    имя: Потери пинга, %
    имя в базе: lost_ping
    тип: вещественное

P.S. Пока в доке не написал, но чтоб было общее представление. Допустим вы пользовались модулем, а потом перестали. Появились кое-какие данные в БД и вы должны сохранить корректность работы биллинга, при том, что данные есть, а модуль подцеплять не нужно. На этот случай в папке с модулем есть файлик patch.NOW.pl  который запускается всегда, даже, если модуль не установлен. Например, вы поюзали модуль Ликпея, а потом перестали. В базе остались новые категории, которые необходимо отрабатывать для показа истории платежей


Название: Re: Вести с полей
Отправлено: Efendy от 23 Декабря 2012, 19:51:27
Апгрейжу модуль карт. Добавил такие фичи


Название: Re: Вести с полей
Отправлено: Efendy от 23 Декабря 2012, 22:18:50
Хоть бы сказали, что изменили флаги создания суперадмина...
В доке perl install.pl -a=admin -p=12345
А надо... perl install.pl -p admin=12345

Цитировать
perl install.pl -h
 -p login=pass : создание суперадмина с логином login и паролем pass
думаю так удобней

У нас посуточное снятие абонплаты. В N+ будет такая возможность? И сильно не хватает финансовой отчетности.

Обычный тариф с длительностью в сутки. Финансовая отчетность будет со временем


Название: Re: Вести с полей
Отправлено: Efendy от 24 Декабря 2012, 00:54:43
На карту добавил возможность проведения линков, очень просто: щелкаешь по точке топологии и предлагает создать линк с точкой, по которой последний раз щелкнул. Так по цепочке за 5 минут внес все линки к себе на карту. Осталось добавить тип линка (оптика, витуха) и количество волокон


Название: Re: Вести с полей
Отправлено: Demeo от 24 Декабря 2012, 08:27:20
perl install.pl -h

Это тоже неплохо бы в доке написать ;)

У нас посуточное снятие абонплаты. В N+ будет такая возможность? И сильно не хватает финансовой отчетности.
Обычный тариф с длительностью в сутки. Финансовая отчетность будет со временем
[/quote]

Нет. Это будет суточная абонплата? которая в 50 версии "9:xx - суточная абонплата в размере xx грн.", а у нас месячная абонплата с посуточным снятием. В 50 версии это "8:xx - пропорциональная ежедневная абонплата, где хх грн. - размер снимаемой суммы в месяц"

Кстати, в доке модули для перл собираете из пакетов, а сам перл из портов, поэтому модули не ставятся, требуют старой версии перла


Название: Re: Вести с полей
Отправлено: Efendy от 24 Декабря 2012, 09:48:17
Имхо гемор вводить суточную абонплату меняющуюся каждый месяц. Постоянные объяснения клиентам того не стоят


Название: Re: Вести с полей
Отправлено: Demeo от 24 Декабря 2012, 10:08:46
Не. Ну объяснять что-то людям - это уже не наша забота. А вот выгоды от такой абонплаты очевидны: пополнение на чирик (я учусь, мне инет только на выходные нужен), смена тарифа хоть каждый день (ну надо человеку скачать пару фильмов HD, в остальное время скорость не нужна). Соглашусь, что для таких целей более чем подходит суточная абонплата, но люди привыкли платить за месяц (с небольшими вариациями описанными выше) и конкуренты все месячную абонплату юзают (то есть сравнить стоимость месячной абонплаты разных провайдеров легче, чем суточную одного и месячную другого). Если фичу нужно запросить в соответсвующей ветке - не вопрос. Думаю, не я один такое пользую.


Название: Re: Вести с полей
Отправлено: Efendy от 24 Декабря 2012, 11:17:01
Проблема в том, что ты смотришь на ситуацию со стороны "как бы поменьше заработать денег".

Да, не спорю, при возможности некоторые студенты будут просчитывать "сегодня я посижу без инета, а завтра новый месяц и я заплачу 1.93 грн вместо 2 грн". Другой вопрос: если такой возможности не будет, клиент отключится? 99% не отключится, а 1% все равно перебежит, когда твой конкурент будет демпенговать.

Как показывает мой опыт - нельзя тратить время на экономию на спичках. Вы думаете, что вы такие хорошие и за эти 7 копеек вас любят клиенты? Нет. Клиенты любят бесперебойный инет, качество сервиса и т.д. и т.п и на последнем месте эти 7 копеек, которые вы в рекламе пропишете? "Только в нашей сети, каждый второй месяц суточная абонплата на 7 копеек ниже!!"

Где вообще связь суточной стоимости с длительностью месяца? В феврале легче всего обслуживать клиента что ли, что мы даем ему самую низкую абонку? Суточная абонка - это маркетинговая вещь уже сама по себе и без этих 7 копеек. Более того, поскольку клиент имеет возможность крутиться куплю/не куплю в эти сутки - она должна быть дороже чем месячный тариф поделить на количество дней в месяце, иначе все туда перебегут.

Если хотите парировать, что в месяце дней разное количество, а стоимость одна, так я отвечу: клиент с месячным тарифом обычно не играется с куплю/не куплю, поэтому мы имеем среднее количество дней 30.5.

Я периодически в бизнесе сетей уже в течении 10 лет и удивляюсь как люди не хотят зарабатывать деньги. В моей сети процент отключившися = 0.5%, но если бы я прислушивался к мнению студента, который хочет на бутылку пива секономить в течение месяца - я бы получал на 30% меньше дохода.

Реализовать такой функционал возможно. Но смысл? Есть же гораздо интереснее, полезнее и приоритетнее задачи


Название: Re: Вести с полей
Отправлено: Sis от 24 Декабря 2012, 12:57:09
В любом случае, нам этот функционал нужен. И без него и кое-каких других фич перейти на N+ не сможем. Вы правы насчет денег, стабильности и т.д. Но есть еще и лояльность, понимание, готовность идти навстречу клиентам и т.п., то, чего как раз очень не хватает крутым и богатым конкурентам.
Нищебродов разводить которые денег платить не хотят. Моя практика после эксперимента, 50 % по сути отключившихся после ввода посуточной оплаты. Т.е. они платят за 2-3 дня раз в 3 месяца и все. Зачем такой клиент нужен?
Отключил их всех  к чертям, и набрал тех кто платит помесячно, доходы в разы возросли.
Теперь я за каждый чих деньги беру, рассказывая что это со скидкой специально для Вас, с большим исключением.
Так куда выгоднее и клиенты весьма лояльны.


Название: Re: Вести с полей
Отправлено: Efendy от 24 Декабря 2012, 14:50:45
Не в тему текущего обсуждения
Как включить поддержку turbosms?
я ж сказал: такие-то модули выпилил из текущей ветки, среди них и был турбосмс. Вы должны понимать, что большой объем кода, который я програмил больше года (на самом деле еще больше, здесь я не учел старые наработки) абсолютно бесплатен, да еще и тестируется лично мной 24 часа в сутки моей сетью. Должны быть хотя бы несколько модулей, за которые я должен хотя бы частично компенсировать затраты.  Уверен, что сети, зарабатывающие десятки тысяч ежемесячно (я знаю о чем говорю) смогут позволить одоразово заплатить за модуль несколько баксов


Название: Re: Вести с полей
Отправлено: Efendy от 24 Декабря 2012, 14:56:54
Отключил их всех  к чертям, и набрал тех кто платит помесячно, доходы в разы возросли.
видно человека с опытом) Я давно усвоил: от демпинга и экономий на спичках толку не будет. Запомните простое правило: практически любой человек в состоянии платить нормальные деньги за интернет. Если вы пойдете по пути минимизации доходов, вы автоматически пойдете по пути минимизации расходов, причем минимизировать больше нечего будет: урежете зп монтажникам - начнут воровать, сократите персонал - увеличится время ремонтов и ухудшится качество обслуживания, будете экономить на качестве кабелей - будете их постоянно перетягивать. Я говорю банальные вещи. Если вы хотите набить базу любой ценой - скорее всего вы готовите сеть на продажу


Название: Re: Вести с полей
Отправлено: Rico-X от 24 Декабря 2012, 15:27:14
Уверен, что сети, зарабатывающие десятки тысяч ежемесячно (я знаю о чем говорю) смогут позволить одоразово заплатить за модуль несколько баксов
100% поддерживаю, чем больше модульность тем лучше, не всем сетям нужны некоторые возможности, а их наличие в базовом функционале скорее только мешает. ИМХО идеальный вариант голый биллинг, вообще без модулей (ну может с модулем управления фаирволом, для небольших сетей), поставил понравилось - докупил только тебе нужные модули и все довольны. Вот скажите мне, кто использовал в 49/50 версии работу с почтой, есть ли такие?


Название: Re: Вести с полей
Отправлено: bnet от 24 Декабря 2012, 21:16:53
по поводу доработки модуля Яндекс карт, кроме всего прочего хотелось бы:

- вывод на карте кабельной инфраструктуры (тип кабеля, длина, количество волокон, примечание)
- вывод на карте оборудования (свичи, муфты и т.д.)
желательно слоями (или переключать набор данных как-то, т.е. только абонентов, только кабеля, только железо, все вместе)
конечно, неплохо было бы выделить активность линии сразу (т.е. нету трафика от абонентов линии - цвет линии изменяется), получается некий мониторинг


Название: Re: Вести с полей
Отправлено: Efendy от 24 Декабря 2012, 22:55:00
по поводу доработки модуля Яндекс карт, кроме всего прочего хотелось бы:

- вывод на карте кабельной инфраструктуры (тип кабеля, длина, количество волокон, примечание)
щас есть: тип кабеля, количество волокон, примечание, состояние (отключен, требуется ремонт). Длину можно вычислить по расстоянию между точками, ну примерно по крайней мере, иначе написать в примечании.

- вывод на карте оборудования (свичи, муфты и т.д.)

пока нет

желательно слоями (или переключать набор данных как-то, т.е. только абонентов, только кабеля, только железо, все вместе)
конечно, неплохо было бы выделить активность линии сразу (т.е. нету трафика от абонентов линии - цвет линии изменяется), получается некий мониторинг
слои есть, выделения линий по трафику пока нет


Название: Re: Вести с полей
Отправлено: Efendy от 11 Февраля 2013, 15:06:06
Добавил 2 модуля: общая и конкретная статистика по мак-адресам в авторизации. Показывает у каких абонентов были какие мак-адреса, какие маки были у каких клиентов (в частности показывает, когда один мак был у нескольких абонов), лог авторизаций по конкретному маку чтоб выяснить когда делились учетками


Название: Re: Вести с полей
Отправлено: Efendy от 15 Февраля 2013, 00:59:01
По совету друзей приобрел автомобиль "Москвич", новая модель Redmen в модуль заглушки добавил функциональность "модуля Целла" http://forum.nodeny.com.ua/index.php?topic=162.msg1315#msg1315

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

Выбираем клиента и тычем в кнопку "обязательно к прочтению" - создается специальное событие в таблице платежей и доступ блочится. Клиент попадает на заглушку, нажимает на кнопку "да, насяльника" - платеж-событие конвертится в "ознакомлен" (т.е. видно когда именно это сделал и когда ему это падляну сделал админ) и доступ открывается.

Да, сделал через закрытие доступа. Зато не добавлял никаких сущностей. Чем меньше сущностей тем биллинг проще в управлении. Да?


Название: Re: Вести с полей
Отправлено: Efendy от 15 Февраля 2013, 15:01:38
Какоммитил:

- модуль создания конфигов
- сообщения, обязательные к прочтению

Внимание! Тем, кому давал модули вне стандартной поставки (карты, ликпей и т.д.) - их удалите, поскольку я поменял слегка логику инсталляции. Совсем скоро (тестируется) появится магазин, где вы сможете скачать эти модули


Название: Re: Вести с полей
Отправлено: elite от 15 Февраля 2013, 23:22:15
Какоммитил:

- модуль создания конфигов
- сообщения, обязательные к прочтению

Внимание! Тем, кому давал модули вне стандартной поставки (карты, ликпей и т.д.) - их удалите, поскольку я поменял слегка логику инсталляции. Совсем скоро (тестируется) появится магазин, где вы сможете скачать эти модули

а интрукцию к модулю создания конфига можно?)
а то он что-то странное нагенерил:

Код:
allow unknown-clients;                                                                              
option domain-name-servers 1.1.1.1, 8.8.8.8;                                                        
                                                                                                    
default-lease-time 28800;                                                                          
min-lease-time 10000;                                                                              
max-lease-time 128800;                                                                              
                                                                                                    
authoritative;                                                                                      
                                                                                                    
ddns-update-style interim;                                                                          
                                                                                                    
log-facility local7;                                                                                
                                                                                                    
subnet 10.0.0.0 netmask 255.255.255.0 {                                                            
    option subnet-mask 255.255.255.0;                                                              
    option broadcast-address 10.0.0.255;                                                            
                                                                                                                                                                                            
        host 11 {                                                                                  
            hardware ethernet static;                                                              
            fixed-address 10.0.0.2;                                                                
        }                                                                                          
                                                                                            
}  

hardware ethernet static;

я так понимаю, что надо было изменить в шаблоне ip.type на user.data._mac ?


Название: Re: Вести с полей
Отправлено: Efendy от 15 Февраля 2013, 23:34:03
user.* - это поля таблицы  users
user.data.* - дополнительные поля
user.traf.* - поля трафика
user.ips - массив ip


Название: Re: Вести с полей
Отправлено: elite от 15 Февраля 2013, 23:37:13
а отдельный мак адрес под каждый ип так и не реализован?


Название: Re: Вести с полей
Отправлено: elite от 15 Февраля 2013, 23:38:18
кстати, а какие типа коллекторов трафика поддерживает nodeny+ ? только ipcad?


Название: Re: Вести с полей
Отправлено: Efendy от 15 Февраля 2013, 23:56:51
а отдельный мак адрес под каждый ип так и не реализован?
пока нет


Название: Re: Вести с полей
Отправлено: Efendy от 18 Февраля 2013, 18:02:26
В допполя добавил флаг "сортировать как число". Например, номер дома - строкое поле, а не числовое - такое часто, когда используются буквы и дроби (24а, 15/2). Теперь в списке клиентов сортировка правильная


Название: Re: Вести с полей
Отправлено: Efendy от 01 Марта 2013, 17:45:53
В списке клиентов ставится синий ключик у "всегда онлайн". Закоммичу как появятся еще какие-нить фичи


Название: Re: Вести с полей
Отправлено: Efendy от 04 Марта 2013, 00:29:35
кстати, сделал скрипт переноса услуг клиентов с н50 на н+


Название: Re: Вести с полей
Отправлено: stix от 04 Марта 2013, 07:16:37
32 или 33 ?


Название: Re: Вести с полей
Отправлено: elite от 04 Марта 2013, 07:31:41
а там без разницы


Название: Re: Вести с полей
Отправлено: Efendy от 22 Марта 2013, 18:00:44
Добавлена возможность передачи карточек другому админу и подтверждение/отказ приема. В отчет по клиентам добавлен отчет по активациям карт, т.е учитывается группа (или иной критерий) клиентов, диапазон времени, админ, номинал, сумма


Название: Re: Вести с полей
Отправлено: Efendy от 07 Апреля 2013, 11:24:59
Две небольших фичи:

1) корень nodeny можно задавать через env переменную NODENYROOT.

В конфиге апача в секции VirtualHost:
 SetEnv NODENYROOT /usr/local/nodeny

2) Отдельная кнопка пополнения счета наличными для сокращения количества операций


Название: Re: Вести с полей
Отправлено: Efendy от 14 Апреля 2013, 22:15:08
Вести с полей такие: я стал папой, поэтому не отвечаю в приват. Погодите маленько, скоро отвечу на все ваши вопросы
p.s. тока не надо поздравлять, спс, просто информирую о причине занятости


Название: Re: Вести с полей
Отправлено: Efendy от 27 Апреля 2013, 12:05:18
Слегка полирую Н+, кроме того добавил фичу "рабочий список" - например, есть необходимость выбрать группу абонов не по критерию, т.е. без какого-то общего признака (улица там, дом, баланс и т.д.) чтобы потом проделать какие-либо действия (отправить смс - да, сделаю групповую отправку, вывести на карту и т.д.). Нажимаем правую кнопочку на абоненте и потом на кнопочку "+/-" и клиент добавляется либо удаляется из списка, который называется "рабочий". Потом нажимаем кнопочку "рабочий список" в разделе "клиенты" и видим результат. Ессно можно выполнить действия над списком, потом добавить/убрать кого-нить из него и выполнить еще действия


Название: Re: Вести с полей
Отправлено: Efendy от 29 Апреля 2013, 12:37:39
Закоммитил.

Изменения все уже не помню, вот что вспомнил:

1) В статистику трафика добавил возможность смотреть потоки клиента(тов) за срез/сутки
2) В списке клиентов рядом с фильтрами добавил развернутый список улиц
3) Добавил привилегию на просмотр статистики трафика
4) Если нет определенных привилегий, то в верхнем меню не отображается соответствующая ссылка
5) Сделал возможность изменения суммы платежа (только админам)
6) Языковый файл разделил на два: для админки и для клиентской статистики
7) В пингсервер добавил больше ассинхронности - вместо результата пинга возвращается куки, по которой через несколько секунд можно узнать результат. Добавил фичу пингования группы клиентов с выводом результата каждую минуту - пока не очень удобно с ней работать, буду совершенствовать
8) "рабочий список" см. выше
9) В модуле турбосмс параметр "диапазон времени" в которые отправляются смс-ки о напоминании пополнения счета - удобно выставлять время, когда люди идут на работу

Внимание:
1) изменился nody.js и liqpay.pl. Если у вас не стоят симлинки на них, то скопируйте их на свои места
2) заново скачайте модули из своего личного кабинета и perl install.pl -x


Название: Re: Вести с полей
Отправлено: skreep от 29 Апреля 2013, 15:38:50
Маленькая просьба.

В модуле turbosms есть неприятный момент, если у абонента есть несколько услуг то по каждой услуге отправляется СМС (их отправляется одна за другой 2 и более штук одновременно, в зависимости от количества услуг) независимо от того кончаются они в один день или в разные. Хотелось бы, что бы СМС отправлялась только один раз, независимо от количества услуг, при условии что баланс на дату списания станет отрицательным.


Название: Re: Вести с полей
Отправлено: Efendy от 01 Мая 2013, 18:46:42
https://app.nodeny-plus.com.ua/docs/faq.html#modify_ustat


Название: Re: Вести с полей
Отправлено: Efendy от 02 Мая 2013, 13:25:17
https://app.nodeny-plus.com.ua/docs/work/modules.html#download


Название: Re: Вести с полей
Отправлено: Redmen от 02 Мая 2013, 16:40:07
После выхода 120 ревизии, перестала работать кнопка "Запомнить",
(http://forum.nodeny.com.ua/index.php?action=dlattach;topic=2007.0;attach=1763;image)
и при нажатии на кнопку "Клиенты" всегда отображается выбор фильтра, а хочется как 119 ревизии


Название: Re: Вести с полей
Отправлено: elite от 04 Мая 2013, 08:26:01
2) Отдельная кнопка пополнения счета наличными для сокращения количества операций
неплохо было бы такую же кнопку сделать и при правом щелчке мышкой по клиенту в списке клиентов


Название: Re: Вести с полей
Отправлено: Efendy от 05 Мая 2013, 14:49:41
2) Отдельная кнопка пополнения счета наличными для сокращения количества операций
неплохо было бы такую же кнопку сделать и при правом щелчке мышкой по клиенту в списке клиентов

Сделал.

Кстати, кто юзает модуль pingserver. Заапдейтите N+ и заново скачайте этот модуль из личного кабинета - я переделал слегка концепцию и теперь он работает гораздо быстрее на большом количестве точек топологии


Название: Re: Вести с полей
Отправлено: Efendy от 05 Мая 2013, 14:50:51
После выхода 120 ревизии, перестала работать кнопка "Запомнить",
(http://forum.nodeny.com.ua/index.php?action=dlattach;topic=2007.0;attach=1763;image)
и при нажатии на кнопку "Клиенты" всегда отображается выбор фильтра, а хочется как 119 ревизии
честно говоря не понял проблемы


Название: Re: Вести с полей
Отправлено: vddav от 08 Мая 2013, 14:44:51
только у меня после обновления до 131ревизии пропала кнопка пополнения безналом?


Название: Re: Вести с полей
Отправлено: poxy. от 08 Мая 2013, 14:58:47
только у меня после обновления до 131ревизии пропала кнопка пополнения безналом?
Нет, если в поиске найти клиента и нажать правой кнопкой на info появится "пополнить..." - там безнал, добавить бы эту кнопку в "операции", либо как было и к вариантам кредит, бонус и тд добавить наличку.


Название: Re: Вести с полей
Отправлено: vddav от 08 Мая 2013, 15:07:25
только у меня после обновления до 131ревизии пропала кнопка пополнения безналом?
Нет, если в поиске найти клиента и нажать правой кнопкой на info появится "пополнить..." - там безнал, добавить бы эту кнопку в "операции", либо как было и к вариантам кредит, бонус и тд добавить наличку.
ну да, в операциях то и нету, а там она и была => в тему с хотелками)


Название: Re: Вести с полей
Отправлено: Efendy от 09 Мая 2013, 11:19:02
В сегодняшнем коммите:

1) Поиск по дате договора.
2) После заполнения своих данных клиентом устанавливается дата договора (если не установлена).
3) При активации карты в событие пишется не код, а номер карты
4) фикс: в данных клиента в меню "операции"  кнопка "пополнить наличными" заменена на "пополнить ...", поскольку в верхнем меню кнопка "пополнить" пополняет наличными


Название: Re: Вести с полей
Отправлено: Efendy от 11 Мая 2013, 11:38:07
Сегодня закоммичу (пока тестится в реальной сети) такую фичу. Назвал "предускорение". Суть в том, что если в течение 10 минут абонент нагружает канал меньше чем на 1 мбит, то ему дается скорость в 5 раз больше. Пока цифры от балды взял - буду подбирать.

В чем плюс такой фичи.
1) Не качальщики при скачке какого-либо небольшого/среднего файла получат прыжок скорости, т.е скачают быстрее. Или по крайней мере увидят на старте хорошую скорость. Даже если просто будут ходить по инету и не нагружать канал, то будут комфортнее серфить по ютубу и аналогичным сайтам. Это вызовет как минимум положительные эмоции, а как максимум разговоры "1мбит в моей сети быстрее чем 1 мбит у конкурентов"
2) качальщики получат прыжок скорости, после которого скорость вернется в его стандартное значание и будет держаться пока будут нагружать канал

Тут еще необходимо учитывать момент, что если клиент что-то надумал скачать - он это скачает. Так пусть скачает с большей скоростью - раньше скачает - раньше освободит канал. Качальщики быстрее не скачают, да им и пофик - все равно заряжают торренты под завязку. Фича ориентирована именно на средний контенгент, который необходимо удержать в сети.

Тока не надо говорить, что это уже придумали до меня, это есть у вас или в каком-то биллинге. Я просто информирую о новой фиче Н+

И еще, не надо говорить, что фича работать не будет. Во-первых я щас тестирую и мы еще посмотрим, а во-вторых, я уже давно просек (и неоднократно упоминал здесь) - среднестатистический клиент платит не за скорость, а сколько он хочет/может платить. Поэтому можно не бояться перебега на нижние тарифы. Более того, в тестируемой сети, на самом нижнем тарифе я такую фичу выключил


Название: Re: Вести с полей
Отправлено: Efendy от 11 Мая 2013, 11:50:41
Чтоб было понятней. Пример. У абонента тариф 2 мбита. Он ничего не качает и открывает ютуб. Ролик закачивается на скорости 10мбит. Если он выдержит паузу (будет смотреть ролик), то следующий ролик закачается тоже на 10мбитах. Средняя скорость на время скачивание ролика + его просмотр будет около его тарифицируемой скорости. Т.е по итогу он нагрузит канал примерно на такую-же величину. Но в случае "предускорения" он получит больше комфорта и положительных эмоций. А они сейчас очень важны при такой конкуренции.

С другой стороны, качальщик врубает торрент и уже через 2 минуты получает скорость своего тарифа, т.е. в глобальном масштабе это ничего не меняет ибо эта падла все равно скачает свои 10 фильмов и 100500 игрушек, чтоб записать и побежать их продавать


Название: Re: Вести с полей
Отправлено: Efendy от 31 Мая 2013, 14:16:24
Сделал фичу аналогичную "дню последнего платежа" из N49/N50. В услугах есть режим "конец месяца" - это эквивалент работы тарифов  N50, когда они работают строго с 1-го числа по 1-е. Если клиент подключается 10 числа, то длительность услуги уменьшается на 10 дней (с 10-го по 1-е число), пропорционально уменьшается стоимость. В текущем коммите сделал возможность изменения числа с 1-го на любое другое (см. раздел Тарификация). Обратите внимание, стоимость тарифа по такой схеме может не только уменьшаться, но и увеличиваться! Например, клиент подключился 3 числа, а день последнего платежа 7-е. В итоге он проработает 27 + 7 = 34 дня


Название: Re: Вести с полей
Отправлено: Efendy от 03 Июня 2013, 01:14:12
Цитировать
Сделал фичу аналогичную "дню последнего платежа" из N49/N50. В услугах есть режим "конец месяца" - это эквивалент работы тарифов  N50, когда они работают строго с 1-го числа по 1-е. Если клиент подключается 10 числа, то длительность услуги уменьшается на 10 дней (с 10-го по 1-е число), пропорционально уменьшается стоимость. В текущем коммите сделал возможность изменения числа с 1-го на любое другое (см. раздел Тарификация). Обратите внимание, стоимость тарифа по такой схеме может не только уменьшаться, но и увеличиваться! Например, клиент подключился 3 числа, а день последнего платежа 7-е. В итоге он проработает 27 + 7 = 34 дня

Она откладывает снятие денег или откладывает блокировку клиента?
удлиняет или укорачивает услугу так, чтобы она вышла на определенное число, после этого будет идти с периодом в месяц


Название: Re: Вести с полей
Отправлено: Nafanya от 10 Июня 2013, 07:02:37
И кстати в клиентской статистике, кто авторизован через ДХЦП не прописано, что он авторизован этим методом. Такое впечатление от этой ситуации, что не запустился билинг и от этого стал ругаться ДХЦП. Хотя в rc.local все прописано:

Цитировать
/usr/bin/perl /usr/local/nodeny/nokernel.pl -d &
/usr/bin/perl /usr/local/nodeny/noserver.pl -d &
/usr/bin/perl /usr/local/nodeny/nokernel.pl -m=cap -d &


Название: Re: Вести с полей
Отправлено: poxy. от 10 Июня 2013, 08:14:44
Раз пошла такая пьянка выложу наработки товарища vddav, по дефолту dhcpd запускается раньше mysql и ядра, events.pl пытается получить данные от ядра и базы, а оно еще не запущено...
Вообщем решение такое:

В rc.conf ставишь dhcpd_enable="NO", все остальное что его касается оставь без изменений
Стартуешь его из rc.local :

Код:
/usr/bin/perl /usr/local/nodeny/nokernel.pl -d &
/usr/bin/perl /usr/local/nodeny/noserver.pl -d &
/usr/bin/perl /usr/local/nodeny/nokernel.pl -m=pingserver -d &
/usr/local/etc/rc.d/isc-dhcpd forcestart

так он будет запускаться после ядра и сервер будет нормально загружаться.

PS от плюса в карму думаю он не откажется.

Ув. Стас может в доку добавить?


Название: Re: Вести с полей
Отправлено: Efendy от 10 Июня 2013, 12:45:14
Ув. Стас может в доку добавить?
ок, у меня как раз так и сделано на сервере


Название: Re: Вести с полей
Отправлено: Efendy от 19 Июня 2013, 17:39:09
Тут часто спрашивали как сделать чтоб клиент не уходил в минус. Внезапно я сделал все просто: если при подключении услуги клиент уходит в минус, услуга завершается раньше времени и без продления. Снятие за услугу становится 0.01 денег. При пополнении счета клиент выбирает услугу снова. Апдейтесь


Название: Re: Вести с полей
Отправлено: poxy. от 20 Июня 2013, 09:34:47
Поддерживаю возможность отк/вкл данную фичу.


Название: Re: Вести с полей
Отправлено: Efendy от 20 Июня 2013, 09:36:36
ессно вкл/выкл есть


Название: Re: Вести с полей
Отправлено: poxy. от 20 Июня 2013, 09:50:41
ессно вкл/выкл есть
Код:
# Удалять все подключенные услуги при отрицательном балансе?

remove_service => 0,
По умолчанию будет отключено?


Название: Re: Вести с полей
Отправлено: Efendy от 20 Июня 2013, 12:40:57
0 означает "отключено"


Название: Re: Вести с полей
Отправлено: Efendy от 27 Июня 2013, 14:20:42
Закоммитил Redmen-а модуль authtraf: Устанавливает авторизацию для клиентов 'всегда онлайн' если за последние 60 секунд у них есть трафик или пингуются по arp


Название: Re: Вести с полей
Отправлено: Redmen от 27 Июня 2013, 15:27:13
модуль authtraf.pm
проверяет наличие трафика только для клиентов с 'всегда онлайн'
при его наличии узнаёт МАС клиента и записывает его в auth_now

тоесть даный модуль мониторит активность юзеров с 'всегда онлайн'
и как бонус записывает их МАС!!!

модуль писался для отслеживания активности клиентов, которые были оторваны от и-нэта после грозы,
и во время ремонта сразу было видно кто отремонтирован!

в будущем планирую сделать совмесную работу всех модулей авторизации ( в том числе и дшсп)...
... но ето уже другая сказка, и появится она спонтанно, ввиду не определённых сроков разработки,
ибо сеть - ето мой второстепенный зароботок и на неё времени очень мало

от + в карму не откажусь! пользуйтесь на здоровье!


Название: Re: Вести с полей
Отправлено: Efendy от 27 Июня 2013, 15:59:35
Сделал аналогичную фичу для модуля dhcp:

Код:
# Включение проверки пингованием по arp - позволяет раньше выявить когда клиент
# отключился, а не пока закончится время аренды ip
# Необходим модуль Net::ARP (/usr/ports/net/p5-Net-ARP)

ping_check => 0,
ping_iface => 'igb0',


Название: Re: Вести с полей
Отправлено: Redmen от 27 Июня 2013, 16:13:33
Сделал аналогичную фичу для модуля dhcp:

Код:
# Включение проверки пингованием по arp - позволяет раньше выявить когда клиент
# отключился, а не пока закончится время аренды ip
# Необходим модуль Net::ARP (/usr/ports/net/p5-Net-ARP)

ping_check => 0,
ping_iface => 'igb0',
или стандартный рабочий
Код:
ping_iface => 'lo',
особенно для тех, у кого вланы


Название: Re: Вести с полей
Отправлено: Redmen от 27 Июня 2013, 16:33:29
несколько интерфейсов как задать?
Код:
ping_iface => 'lo',
вместо нескольких интерфейсов, так как можно только один


Название: Re: Вести с полей
Отправлено: Redmen от 27 Июня 2013, 17:08:17
если задать локальный как будет собирать с кучи вланов?
около месяца, полёт отличный, 4 влана


Название: Re: Вести с полей
Отправлено: Efendy от 28 Июня 2013, 20:21:27
Закоммитил фичу, которая понадобится разработчикам. Как следствие те немногие разработчики, что уже программят под N+,  смогут еще гибче делать конфиги для свичей, dhcp и т.д. В шаблонизаторе теперь можно добавлять свои фильтры, т.е. подпрограмки, которые обрабатывают данные как вам угодно. Например, добавляют префикс к имени, удаляют кириллицу, проверяют валидность и т.д и т.п. В коммите, я дал пример, как преобразовать мак без двоеточий с двоеточиями. В конфиге я вел фильтр (ааааа, щас будет перл код) pretty_mac:

Код:
pretty_mac => sub {
                my $mac = shift;
                $mac =~ s/(..)/$1:/g;
                chop $mac;
                return $mac;
},

и добавил вызов этого фильтра из шаблона:

Код:
hardware ethernet {{user.mac.[i]|pretty_mac}};


Название: Re: Вести с полей
Отправлено: Efendy от 28 Июня 2013, 22:59:41
Закоммитил фичу автокредита  при  подключении услуги. Включается/выключается в Настройки->Клиентская статистика. Удобно: подключил абонента и дал ему 3 дня на оплату. Повторно кредит можно взять только после получения любого положительного платежа.


Название: Re: Вести с полей
Отправлено: Nafanya от 30 Июня 2013, 12:07:14
Проблемка.

Цитировать
В rc.conf ставишь dhcpd_enable="NO", все остальное что его касается оставь без изменений
Стартуешь его из rc.local :

Код:
/usr/bin/perl /usr/local/nodeny/nokernel.pl -d &
/usr/bin/perl /usr/local/nodeny/noserver.pl -d &
/usr/bin/perl /usr/local/nodeny/nokernel.pl -m=pingserver -d &
/usr/local/etc/rc.d/isc-dhcpd forcestart

так он будет запускаться после ядра и сервер будет нормально загружаться.

сделал так. все равно иногда запускаеться по старому. Приходиться все запускать руками.

И еще заметил, после запуска сервер работает вродебы нормально. проверяю:

Цитировать
1497  ??  Ss     0:00.01 /usr/local/bin/perl /usr/local/lib/webmin/miniserv.pl

/usr/local/etc/webmin/miniserv.
 1426  v0- S      0:05.17 /usr/bin/perl /usr/local/nodeny/nokernel.pl -d (perl5.12.4)
 1427  v0- S      0:04.97 /usr/bin/perl /usr/local/nodeny/noserver.pl -d (perl5.12.4)
 1428  v0- S      0:06.81 /usr/bin/perl /usr/local/nodeny/nokernel.pl -m=cap -d (perl5.12.4)
 1429  v0- S      0:00.82 /usr/bin/perl /usr/local/nodeny/nokernel.pl -m=dhcp -d (perl5.12.4)
 3936   0  S+     0:00.00 grep pl

А через какоето время:
Цитировать
1497  ??  Ss     0:00.58 /usr/local/bin/perl /usr/local/lib/webmin/miniserv.pl

/usr/local/etc/webmin/miniserv.conf
 1427  v0- S      5:20.42 /usr/bin/perl /usr/local/nodeny/noserver.pl -d (perl5.12.4)
 1428  v0- S     23:01.06 /usr/bin/perl /usr/local/nodeny/nokernel.pl -m=cap -d (perl5.12.4)
57245   0  S+     0:00.00 grep pl

nokernel.pl не работает. Приходиться подымать руками. Что может быть?


Название: Re: Вести с полей
Отправлено: Nafanya от 01 Июля 2013, 12:30:12
Это кстати вторе падение ядра. перед этим было сутки назадю А после того как запустил - пока полет нормальный. Перед этим с середины мая падений ядра не наблюдал.


Название: Re: Вести с полей
Отправлено: poxy. от 01 Июля 2013, 12:41:15
По поводу падения ядра тоже, с марта работало без падений, буквально пару дней назад начало падать. Может из за нагрузки...
По совету vddav запустил заглушку и коллектор модулями :

Код:
/usr/bin/perl /usr/local/nodeny/nokernel.pl -d &
/usr/bin/perl /usr/local/nodeny/noserver.pl -d &
/usr/bin/perl /usr/local/nodeny/nokernel.pl -m=collectors -d &
/usr/bin/perl /usr/local/nodeny/nokernel.pl -m=cap -d &
/usr/bin/perl /usr/local/nodeny/nokernel.pl -m=pingserver -d &
/usr/local/etc/rc.d/isc-dhcpd forcestart

Может какой то модуль после обновления не справляется и падая тянет за собой ядро... Вообщем буду смотреть...


Название: Re: Вести с полей
Отправлено: Efendy от 29 Августа 2013, 08:46:36
Сделал небольшой модуль компенсаций: выбираешь клиентов по критерию и гришь: дать компенсацию в 1% с таким-то коментом. Тестится


Название: Re: Вести с полей
Отправлено: Efendy от 03 Сентября 2013, 08:45:25
Сделал сбор трафика со свичей по snmp, чтобы видеть их загрузку. Трафик начисляется не абоненту, а свичу! Это дополнительный вид трафика, имя можно менять, я назвал у себя "свичи". В логе трафика появилось поле "интерфейс" - порт свича. Т.е. можно видеть трафик по каждому порту. Ессно можно выводить графики, щас тока улучшаю, чтоб выводило сразу несколько графиков по разным портам

P.S. Поудалял сообщения " у меня не работает/не получается/а протупил/точно, увидел". Эта ветка чтоб видеть развитие, а не решать проблемы конкретного человека


Название: Re: Вести с полей
Отправлено: Efendy от 03 Сентября 2013, 12:33:02
На скриншоте показано как это выглядит. Это реальный один из магистральных свичей. Пока показывает номер порта, потом будет название, будет брать прямо из свича. Т.е. видно, что сегменты не загружены и пока нет смысла апгрейдить этот участок.

Походу сделал несколько фиксов и улучшений в графиках:

- степень грубости трафика запоминается в куки
- график выводится на всю ширину экрана
- теперь таки (попытка номер 2) и админ и юзер могут в клиентской статистике смотреть и удалять графики
- графики не удаляются при клике по легенде, а скрываются/отображаются, добавлен чекбокс, при нажатии на который будет удаление
- сделал меньше толщину линии, а также добавил градиент, вроде так лучше


Название: Re: Вести с полей
Отправлено: Efendy от 04 Сентября 2013, 16:18:22
В рамках предыдущей задачи сделал такое:

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

В верхнем меню появилась дополнительная кнопка "иные", при этом отображение полей в таблице со списком данных клиентов запоминаются отдельно. Т.е. в моем случае для групп "иные" я убрал отображение фио и т.д так как у меня в иных оборудование.

Пока еще не заливаю т.к. допиливаю возможность именованных портов в оборудовании


Название: Re: Вести с полей
Отправлено: Sis от 08 Сентября 2013, 10:03:40
состояние порта Up _ down по snmp можно вывести по клиентам?


Название: Re: Вести с полей
Отправлено: Efendy от 08 Сентября 2013, 10:40:47
Можно все реализовать. Просто нужно внятное ТЗ. Чисто для этой задачи ТЗ мне дал монтажник:
- Стас, у меня подозрение, что по вечерам на линке Х не хватает пропускной способности, можешь нарисовать график на порту?
- Без проблем, тока спроси у админа какие мибы у свича ХХХ чтоб трафик с портов снимать
Прошло время.
- Говорит, что он не шарит
- Как, вы, блять, заибали (да, я такой нервный) - нихера не шарите и учится не хотите
Прошло время. И я случайно нашел в нете, что эти мибы стандартизированы, ну по крайней мере для нормальных свичей. Взял и сделал задачу. Так что если вы хотите какую-то фичу - внятно опишите что хотите + дайте инфу


Название: Re: Вести с полей
Отправлено: Efendy от 09 Сентября 2013, 14:50:55
www.youtube.com/watch?v=Z090G8BjLKk&


Название: Re: Вести с полей
Отправлено: Efendy от 09 Сентября 2013, 17:12:14
Сбором данных занимаются сателлиты или центральный сервер? А то у меня биллинговый сервак не имеет прямого доступа к оборудованию.
Без разницы


Название: Re: Вести с полей
Отправлено: Efendy от 11 Сентября 2013, 18:14:37
Сделал поиск мака клиента на свичах, выводит свич и номер порта. Snmp пока не выкладываю - пилю до хорошего функционала


Название: Re: Вести с полей
Отправлено: sov от 20 Сентября 2013, 14:01:19
в группах появилась галочка "второстепенная группа". Теперь группы делятся на 2 категории "клиенты" и "иные". Иные - я не даю конкретного названия, потому что в "иные" можно перенести, например, Администраторов. А можно перенести оборудование как я сделал в своей бывшей сети.
Как добавлять во второстепенные группы? Или это ещё не выложено на svn?


Название: Re: Вести с полей
Отправлено: Efendy от 20 Сентября 2013, 14:14:16
в группах появилась галочка "второстепенная группа". Теперь группы делятся на 2 категории "клиенты" и "иные". Иные - я не даю конкретного названия, потому что в "иные" можно перенести, например, Администраторов. А можно перенести оборудование как я сделал в своей бывшей сети.
Как добавлять во второстепенные группы? Или это ещё не выложено на svn?
ну, а разве в настройках конкретной группы нет галки "Второстепенная группа. Не отображается в списке клиентов, а по кнопке "Иные""?


Название: Re: Вести с полей
Отправлено: Efendy от 02 Октября 2013, 16:51:01
Давно просили и я сделал теги в айпишниках. Например, берем диапазон 10.10.1.1..10.10.9.254 и делаем тег 'server1'. После этого настраиваем mpd так чтобы он выбирал ипы только с этим тегом. Ну, кому фича  нужна была, тот поймет. Тестируется


Название: Re: Вести с полей
Отправлено: Efendy от 03 Октября 2013, 16:01:28
Сделал выбор админа в списке платежей


Название: Re: Вести с полей
Отправлено: Efendy от 05 Октября 2013, 23:17:22
Наконец я заменил долбанное окно выбора даты на свое. В моем показывается не месяц, а сразу все 12 месяцев. Имхо так удобней


Название: Re: Вести с полей
Отправлено: Efendy от 13 Ноября 2013, 19:05:32
Закоммитил мелочь - в платежах можно выбрать какие данные клиентов отображать (фио/логин/адрес/все данные).

Также  исправил liqpay.pl в cgi-bin - в логи теперь корректно записываются ошибочные сообщения, до этого могли быть покоцаны utf8. Не забудьте выставить правильные права на этот файл (perl install.pl -w=www)

https://ваш_домен/cgi-bin/liqpay.pl

должен выдать "Test Ok"


Название: Re: Вести с полей
Отправлено: Efendy от 14 Ноября 2013, 09:45:40
Когда можно будет модуль трафика портов коммутатора пощупать?)
ну он уже давно у меня работает, но я хотел его сделать универсальным, в частности чтоб обращался по шаблону к разным устройствам (не только свичам) и давал инфу и позволял выполнять команды, но на каком-то этапе дело заглохло. Буду ждать как появится второе дыхание


Название: Re: Вести с полей
Отправлено: Efendy от 15 Ноября 2013, 19:04:33
Сделал внешнюю авторизацию, например с вашего сайта. Вот пример:

https://nodeny.server/cgi-bin/stat.pl?_mod=external&_uu=логин&_pp=пароль

Посылать ессно лучше методом POST.  Внимание, поскольку пароли не шифруются - используйте https


Название: Re: Вести с полей
Отправлено: Efendy от 16 Декабря 2013, 15:15:21
Обновил noserver.pl:

  • можно указать конфиг чем управлять. Т.е. можно запустить несколько noserver, каждый будет управлять чем-то своим (фаерволом, микротиком и т.д.) и со своим набором скриптов (т.е. вкл/выкл шейпов, скриптов в тарифе)
  • в командной строке можно указать uid клиента, только для которого будет идти управление фаерволом - упростит отладку:
    perl noserver.pl -u=326 -v
  • когда в цепочке несколько изменений скорости (скорость тарифа, скрипт управления скоростью, турбокнопка, скорость по модулю лояльности), то за конечную скорость выбирается наибольшая в цепочке


Название: Re: Вести с полей
Отправлено: Efendy от 26 Декабря 2013, 18:45:41
Готовится к выходу snmp модуль. Пока что документация по установке http://app.nodeny-plus.com.ua/docs/work/snmp.html
Приемом snmp трапов никто не заинтересовался, но я сделал, пока что просто пишутся в специальную таблицу


Название: Re: Вести с полей
Отправлено: Efendy от 27 Декабря 2013, 13:39:43
Готовится к выходу snmp модуль. Пока что документация по установке http://app.nodeny-plus.com.ua/docs/work/snmp.html
Приемом snmp трапов никто не заинтересовался, но я сделал, пока что просто пишутся в специальную таблицу
А ценник какой будет?
я ставлю цену пропорционально затратам на написание поделенным на количество ожидаемых покупок. Затратил я много времени. Думаю 800 грн будет стоить. Вообще, мне хочется записать видео с демонстрацией возможностей модуля


Название: Re: Вести с полей
Отправлено: Efendy от 29 Декабря 2013, 02:49:00
Хочу презентовать такую вещь: кроме географической схемы, на карту выводится логическая - это когда у нас есть некоторое (в идеале все, но это неважно) количество управляемых свичей, и эти свичи логически соединены между собой, т.е. из схемы выкинуты неуправляемые свичи. Сделал фичу, чтоб толщина линков была пропорциональна трафику, проходящему по этим линкам - это возможно посчитать т.к. инфа по снмп снимается с портов свичей. Сделал в своей бывшей сети, вроде все понятно, но как оказалось, на карте оно не очень смотрится, видимо стоит делать без привязки к ней. Хотя, посмотрю еще, может цветом загрузку выделять.


Название: Re: Вести с полей
Отправлено: Efendy от 30 Декабря 2013, 11:37:55
Пока не закоммитил:
1) в настройках услуг скорость указывается в мегабитах/сек, а не в битах/сек
2) как известно, есть 2 категории групп: клиенты и иные. В основном эта фича сделана, чтобы разделить клиентов и оборудование. Хотя - это не обязательно, можно и клиентов разделять, но если есть оборудование, то удобно именно так. Поэтому я сделал настраиваемым имя 2й категории. По умолчанию "Иные", но можно изменить на "оборудование". В группах появилась настройка "данная группа для оборудования" - в учетке вместо "логин" будет название "серийный номер", а также появится кнопка "порты" - можно подписать порты у устройства. Также у тех, у кого стоит модуль карт, имеется возможность привязать линки к портам. Появился новый тип линка - "логика", этими линками связываются порты управляемых свичей для того, чтобы, как я уже отмечал,  графически выводить загрузку линков. Для своей сети уже сделал, но пока визуализация не нравится - из-за того, что много параллельных линков (оптика, витая пара и т.д.) визуализация накладывается и восприятие хуже. Думаю, что следует сделать отдельную карту без привязки к географическому положению свичей, а с привязкой для визуализации

P.S. В этой ветке я докладываю о текущем ходе работы для того, чтобы можно было пройтись по всем мессагам и понять как развивается биллинг и какие фичи появились. Ваши проблемы не пишите сюда - эти сообщения буду удалять. Уточняющие вопросы по тому, что я написал, задавать можно, но после получения ответа, я через некоторое время их удалю. Если они не будут важными для всех. Спасибо тоже можно говорить) Правда через время их тоже удалю)


Название: Re: Вести с полей
Отправлено: Dolphin от 30 Декабря 2013, 19:06:05
Спасибо и с наступающим :)


Название: Re: Вести с полей
Отправлено: Nafanya от 31 Декабря 2013, 08:26:04
Цитировать
1) в настройках услуг скорость указывается в мегабитах/сек, а не в битах/сек
Вопрос: А если есть тариф 512 кбит и в ближайшее время ускоряться не будет, то как?


Название: Re: Вести с полей
Отправлено: Efendy от 31 Декабря 2013, 11:26:09
Цитировать
1) в настройках услуг скорость указывается в мегабитах/сек, а не в битах/сек
Вопрос: А если есть тариф 512 кбит и в ближайшее время ускоряться не будет, то как?
0.512 Мбит


Название: Re: Вести с полей
Отправлено: Efendy от 12 Января 2014, 22:38:15
В модуле карточек пополнения новая фича, цитирую:
Цитировать
Шаблон экспорта в cvs. cid - серийный номер, cod - код пополнения, money - сумма пополнения, tm_create - дата генерации карт, tm_end - дата конца строка активации. Пример шаблона: cid;tm_end. Раделителем может быть любой символ вне латиницы, по стандарту - точка с запятой


Название: Re: Вести с полей
Отправлено: Efendy от 15 Января 2014, 14:14:34
В модуле карт топологии сделал чтоб у точек топологии можно было указать тип: серверная, ящик, колодец и т.д. Типы можно самому задавать. На карте можно выбрать фильтр по типу. Пока не залил т.к. еще некоторые фичи пилю - у соединений можно будет указать порты к которым подключены


Название: Re: Вести с полей
Отправлено: Efendy от 18 Января 2014, 04:37:50
Я думаю многие возрадуются наконец, узнав о новой фиче. Вот сидел до полпятого ночи и сделал вам фичу "не допускаем ухода в минус". Я вам предлагал несколько вариантов, но вы просили "сделай чтоб слуга отключалась если баланс меньше нуля и включалась когда счет пополнялся". Сделал. Если бабла не хватает, то клиенту не подключается услуга, как тока появляется - подключается. Кстати, работает и с несколькими подключенными услугами. Вот алгоритм:

Подключено несколько услуг. Пришло время смены услуги. Завершаем и подключаем следующую по плану. Если баланс отрицательный, то услугу удаляем. Остальные услуги завершаем. При этом услуги завершаются раньше срока, т.е. сумма снятия меньше полной стоимости. В базу пишется событие "ждем баланса" который должен быть не меньше стоимости удаленной услуги и завершенных, также в этом событии хранятся айдишники услуг, которые нужно подключить.

Еще надо разрулить случай когда событие записалось, а потом клиент вручную подключил какую-нибудь другую услугу, на которую денег хватило.


Название: Re: Вести с полей
Отправлено: poxy. от 18 Января 2014, 13:14:04
Круто, удалять или нет будет настраиваться в самой услуге? Например многоэтажки не пускать в минус (удалять услугу), а частный пусть остается.


Название: Re: Вести с полей
Отправлено: Efendy от 18 Января 2014, 13:30:57
Нет, пока не в самой услуге. В данный момент это пока менять не буду т.к. работы щас дофига


Название: Re: Вести с полей
Отправлено: sov от 21 Января 2014, 08:22:18
О! Подвижки в нужную сторону! Это хорошо. Но есть вопросы.

1) Допустим, у клиента есть услуга доступа в интернет и услуга аренды оборудования. Аренда должна сниматься постоянно - есть у него там деньги или нет. А тут получается, что и аренда тоже отключается?

2) Такой ещё вариант. Деньги закончились, клиент взял кредит, но не оплатил его вовремя. Затем оплачивает, и услуга подключается. Подключаться она будет на месяц? Или с учётом того, что были отработаны кредитные дни?

3) Экзотический случай, с которым столкнулись в начале января. Деньги закончились, клиент взял кредит. Он бы и оплатить рад, но везде праздники, всё закрыто. Звонит нам, даём ему кредит. А когда он оплачивает, ему выставляется неправильная дата окончания услуги. Не было у нас предусмотрено, что будет выдаваться два кредита подряд. Хотелось-бы, чтобы и такой момент был учтён.

PS Новую версию пока не ставил, поэтому вопросы теоретические, может часть из них уже решена?


Название: Re: Вести с полей
Отправлено: Fredik от 22 Января 2014, 22:21:13
попытался обновится - ругается
--- Модуль NoDeny ---
sql error. Run with -v at /usr/local/nodeny/modules/NoDeny/run.pl line 76.
и вс е


Название: Re: Вести с полей
Отправлено: Efendy от 23 Января 2014, 01:20:35
ну так написало, что "запусти с ключем -v"
perl install.pl -x -v


Название: Re: Вести с полей
Отправлено: Fredik от 23 Января 2014, 08:02:03
ну так написало, что "запусти с ключем -v"
perl install.pl -x -v

спс

Цитировать
Connecting to DBI:mysql:database=nodeny;host=localhost;port=3306;mysql_connect_t                                                                                                                               imeout=5 : 0.026225 sec

Table 'nodeny.links' doesn't exist

{
  'sql' => 'ALTER TABLE `links` ADD `device1` BIGINT UNSIGNED NOT NULL DEFAULT 0                                                                                                                                AFTER `end_p_id`, ADD `port1` INT UNSIGNED NOT NULL DEFAULT 0 AFTER `device1`,                                                                                                                                ADD `device2` BIGINT UNSIGNED NOT NULL DEFAULT 0 AFTER `port1`, ADD `port2` INT                                                                                                                                UNSIGNED NOT NULL DEFAULT 0 AFTER `device2`',
  'param' => []
};

 ALTER TABLE `links` ADD `device1` BIGINT UNSIGNED NOT NULL DEFAULT 0 AFTER `end                                                                                                                               _p_id`, ADD `port1` INT UNSIGNED NOT NULL DEFAULT 0 AFTER `device1`, ADD `device                                                                                                                               2` BIGINT UNSIGNED NOT NULL DEFAULT 0 AFTER `port1`, ADD `port2` INT UNSIGNED NO                                                                                                                               T NULL DEFAULT 0 AFTER `device2`

sql error. Run with -v at /usr/local/nodeny/modules/NoDeny/run.pl line 76.



Название: Re: Вести с полей
Отправлено: Fredik от 23 Января 2014, 09:54:50
я так понимаю это связанно с модулем оборудования, которого у меня нет
и пропали все модули, в частности карточки
пришлось сделал так, до выяснения
/usr/local/nodeny/modules/NoDeny/run.pl
Цитировать
#    if( !$cols{device1} )
#    {
#        Db->do(
#            'ALTER TABLE `links` '.
#            'ADD `device1` BIGINT UNSIGNED NOT NULL DEFAULT 0 AFTER `end_p_id`, '.
#            'ADD `port1` INT UNSIGNED NOT NULL DEFAULT 0 AFTER `device1`, '.
#            'ADD `device2` BIGINT UNSIGNED NOT NULL DEFAULT 0 AFTER `port1`, '.
#            'ADD `port2` INT UNSIGNED NOT NULL DEFAULT 0 AFTER `device2`'
#        );
#        Db->ok or die $cfg::sql_err;
    }
#}

1;[


Название: Re: Вести с полей
Отправлено: Efendy от 23 Января 2014, 11:03:27
создай

Код:
CREATE TABLE `links` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `name` tinytext NOT NULL,
  `start_p_id` int(10) unsigned NOT NULL,
  `end_p_id` int(10) unsigned NOT NULL,
  `device1` bigint(20) unsigned NOT NULL DEFAULT '0',
  `port1` int(10) unsigned NOT NULL DEFAULT '0',
  `device2` bigint(20) unsigned NOT NULL DEFAULT '0',
  `port2` int(10) unsigned NOT NULL DEFAULT '0',
  `type` tinyint(3) unsigned NOT NULL,
  `fibers` tinyint(3) unsigned NOT NULL,
  `state` tinyint(3) unsigned NOT NULL,
  `joints` mediumtext NOT NULL,
  `value` bigint(20) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=661 DEFAULT CHARSET=utf8;


Название: Re: Вести с полей
Отправлено: Fredik от 23 Января 2014, 14:30:54
Спасибо, все ок


Название: Re: Вести с полей
Отправлено: ivanmfan от 24 Января 2014, 11:38:30
Я думаю многие возрадуются наконец, узнав о новой фиче. Вот сидел до полпятого ночи и сделал вам фичу "не допускаем ухода в минус".

Зачем с самого начала разработки биллинга в тарифах нужно было привязываться к дате старта и дате окончания. Было бы замечательно,  включать тариф на количество дней в месяце. Т.е. включил тариф, абоненту он дается на 30 дней.
Когда абонент берет кредит (т.е. когда у него на счету уже 0 дней), то у него количество дней уходит в минус т.е. "Количество дней: каждый день уменьшается к примеру до -4", после включения нового тарифа ему  включает интернет на 30 - 4 = 26дней.
Алгоритм примерно таков:
Раз в сутки в 00:00 скрипт обходит всех абонентов и выполняет "Количество дней = Количество дней -1", если у него уже 0й день то просто абоненту ставит "Доступ: Запрещен" и на след день он этого абонента не проверяет, когда абонент берет кредитные дни то у него становится возможность по дням уйти в минус на  количество в настройках. Либо у данного абонента Статус может быть : Приостановлен, тогда скрипт так же не выполняет "Количество оставшихся дней -1".


Название: Re: Вести с полей
Отправлено: Efendy от 24 Января 2014, 18:47:40
Я не полностью вник в суть, но прокомментирую по поводу дней. Представим, что мы программа. Биллинг. Вот у нас есть тариф и количество дней работы тарифа. Проходит час. К вам поступает запрос: сколько дней осталось пользоваться тарифом? Для того, чтобы в любой момент времени узнать сколько осталось, нам нужно регулярно уменьшать счетчик, причем у тарифов каждого клиента. Например, каждую 1 минуту мы уменьшаем количество времени в тарифе на 1 минуту. Забудем, что мы дрочим диск, и посмотрим на другую сторону: компьютер - это не сферический конь в вакуме. Идеально с точностью в 1 секунду не сработает таймер ибо это скриптовый язык, а не модуль ядра FreeBSD. Итого, скажем погрешность в 0.5 сек. В час у нас может до полминуты дойти, а в сутки до нескольких минут, а в месяц ... Это в принципе неверный подход. Это как баланс посекундно уменьшать - в итоге такая погрешность, что мама не горюй.


Название: Re: Вести с полей
Отправлено: Morozikfeo от 26 Января 2014, 19:28:47
Я думаю многие возрадуются наконец, узнав о новой фиче. Вот сидел до полпятого ночи и сделал вам фичу "не допускаем ухода в минус". Я вам предлагал несколько вариантов, но вы просили "сделай чтоб слуга отключалась если баланс меньше нуля и включалась когда счет пополнялся". Сделал. Если бабла не хватает, то клиенту не подключается услуга, как тока появляется - подключается. Кстати, работает и с несколькими подключенными услугами. Вот алгоритм:

Подключено несколько услуг. Пришло время смены услуги. Завершаем и подключаем следующую по плану. Если баланс отрицательный, то услугу удаляем. Остальные услуги завершаем. При этом услуги завершаются раньше срока, т.е. сумма снятия меньше полной стоимости. В базу пишется событие "ждем баланса" который должен быть не меньше стоимости удаленной услуги и завершенных, также в этом событии хранятся айдишники услуг, которые нужно подключить.

Еще надо разрулить случай когда событие записалось, а потом клиент вручную подключил какую-нибудь другую услугу, на которую денег хватило.

В ознакомительной версии данная фича  работает?


Название: Re: Вести с полей
Отправлено: Efendy от 27 Января 2014, 10:35:22
Да, как закоммичу, будет и там. Но туда я реже коммичу


Название: Re: Вести с полей
Отправлено: Nafanya от 29 Января 2014, 22:01:52
Цитировать
Пришло время смены услуги...  Если баланс отрицательный, то услугу удаляем.
Необходимо как бы решить вопрос, что-бы это удаление происходило на усмотрение. Не решился этот вопрос?


Название: Re: Вести с полей
Отправлено: 0xbad0c0d3 от 02 Февраля 2014, 04:18:02
Цитата: offtop
http://www.youtube.com/watch?v=zFM40pUySzI


Название: Re: Вести с полей
Отправлено: Efendy от 02 Февраля 2014, 11:06:07
Цитировать
В Киеве на улице Грушевского активисты Майдана установили на одной из баррикад перед кордоном бойцов Внутренних войск и "Беркута", охраняющих правительственный квартал, большой монитор. Как сообщает 5 канал, на мониторе непрерывно транслируются новости нескольких независимых телеканалов.

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

Цитировать
Исполняющий обязанностей министра иностранных дел Украины Леонид Кожара в рамках Мюнхенской конференции безопасности рассказал о возможном банкротстве страны


Цитировать
Прокуратура й міліція досі "не можуть" знайти цих садистів. Це співробітники спецпідрозділу "Ягуар" Внутрішніх військ МВС Хортюк Сергій і Костюк Максим – вони роздягали Гаврилюка. Козацького чуба відрізав майор Фірак Ігор. Серед тих, хто знущався над затриманим також Ругеніус Томас. За катуваннями спостерігав їх начальник – полковник Плахотнюк Олег Миколайович

Азаров смылся в Европу, а вы рабы живите в Украине
http://std3.ru/c1/a2/1391245824-c1a210adbb6ac9a772d8909dd5acb7f5.jpg

Украина одна из самых коррумпированных стран в мире
http://zn.ua/ECONOMICS/transparency-international-korrumpirovannye-oligarhicheskie-klany-ubivayut-v-ukraine-chestnyy-biznes-134155_.html

Перевоплощение титушек в миллиционеров
http://ukraine.d3.ru/comments/518911/

И таких сообщений десятки. Но я уже пометал бисер перед форумчанами. Я не знал насколько людям пофик за свое будущее и приятно быть рабами. Так что не буду дискутировать по этому поводу. И ты не подсовывай агитки, пожалуйста



Название: Re: Вести с полей
Отправлено: sov от 09 Февраля 2014, 16:15:34
Я думаю многие возрадуются наконец, узнав о новой фиче. Вот сидел до полпятого ночи и сделал вам фичу "не допускаем ухода в минус".
Хотел возрадоваться, но не получилось.

Накатил через svn последние обновления, сделал install.pl -X, перезапустил процессы биллинга.
Не помогло: уходит в минус, блокирует клиентов, услуга не удаляется.

Что нужно подправить/настроить? В каком направлении копать?


Название: Re: Вести с полей
Отправлено: Morozikfeo от 18 Февраля 2014, 14:09:55
Я думаю многие возрадуются наконец, узнав о новой фиче. Вот сидел до полпятого ночи и сделал вам фичу "не допускаем ухода в минус".
Хотел возрадоваться, но не получилось.

Накатил через svn последние обновления, сделал install.pl -X, перезапустил процессы биллинга.
Не помогло: уходит в минус, блокирует клиентов, услуга не удаляется.

Что нужно подправить/настроить? В каком направлении копать?
Тоже хотел узнать, уже закоммичили донную функцию?


Название: Re: Вести с полей
Отправлено: poxy. от 18 Февраля 2014, 14:18:24
Я думаю многие возрадуются наконец, узнав о новой фиче. Вот сидел до полпятого ночи и сделал вам фичу "не допускаем ухода в минус".
Хотел возрадоваться, но не получилось.

Накатил через svn последние обновления, сделал install.pl -X, перезапустил процессы биллинга.
Не помогло: уходит в минус, блокирует клиентов, услуга не удаляется.

Что нужно подправить/настроить? В каком направлении копать?

kernel/services.cfg :

Код:
# Удаляет услуги, время которых завершилось. Если автопродление - подключает новую

run => 1,

# Типы услуг, которые не будут завершаться, если баланс отрицательный
# В таком случае услуга завершится и подключится следующая только после пополнения баланса
# например: delay_services => 'inet_unlim' или delay_services => 'inet_unlim,basic'

delay_services => '',

# Если после завершения услуги баланс станет отрицательным, то услуги отключаются и создается
# событие "подключить такие услуги когда баланс станет достаточным для их покдлючения"

wait_pos_balance => 0,


Название: Re: Вести с полей
Отправлено: vadim_swg от 20 Февраля 2014, 12:41:13
Заметил одну неточность в фиче "неухода в минус" (или не нашёл правильных настроек, поэтому не обижусь, но буду благодарен, если ткнёте носом как щенка).
Услуги удаляются, баланс не уходит в минус при условии, что у абонента положительный баланс. Но ежели у абонента установлена отрицательная граница отключения, то баланс не уходит в минус, остаётся как положено, но услуга удаляется и доступ в интернет блокируется, хотя должен быть.
Текущие настройки в kernel/services.cfg следующие:
run => 1,
delay_services => 'basic',
wait_pos_balance => 1.

Решение нашёл в файле kernel/services.pm строка 75, условие "... AND u.balance<0 ..." изменить на "... AND u.balance<u.limit_balance ..."
Ревизия нодени - 232


Название: Re: Вести с полей
Отправлено: sov от 20 Февраля 2014, 19:41:18
Спасибо stimels7 за пинок в нужном направлении. Фича заработала.
Правда, обнаружились нюансы.

Нюанс номер 1: Услуги удаляются, но у клиента остаётся включенным статус "Доступ разрешён". Интернета-то он не получает, но в общем списке красненьким не выделяется. Неудобно.

Нюанс номер 2: Более серьёзный. Баланс теперь не отрицательный, а нулевой. А значит, клиент не может самостоятельно взять кредит.


Название: Re: Вести с полей
Отправлено: Redmen от 20 Февраля 2014, 20:27:23
Спасибо stimels7 за пинок в нужном направлении. Фича заработала.
Правда, обнаружились нюансы.

Нюанс номер 1: Услуги удаляются, но у клиента остаётся включенным статус "Доступ разрешён". Интернета-то он не получает, но в общем списке красненьким не выделяется. Неудобно.

Нюанс номер 2: Более серьёзный. Баланс теперь не отрицательный, а нулевой. А значит, клиент не может самостоятельно взять кредит.
up 1; 2;


Название: Re: Вести с полей
Отправлено: sov от 22 Февраля 2014, 18:12:46
Пришлось "допиливать" самому.

Нюанс номер 1: Услуги удаляются, но у клиента остаётся включенным статус "Доступ разрешён". Интернета-то он не получает, но в общем списке красненьким не выделяется. Неудобно.

В kernel/services.pm после

Код:
my $rows = Db->do(
"INSERT INTO pays SET cash=0, creator_ip=0, creator='kernel', creator_id=1, time=UNIX_TIMESTAMP(), ".
"mid=?, category=?, reason=?", $uid, 208, $info,
);
if( $rows < 1 )
{
tolog "Sql error: SET uid=$uid, category=208";
last;
}

Добавил
Код:
my $rows = Db->do("UPDATE users SET state='off' WHERE id=?", $uid);
if( $rows < 1 )
{
tolog "Sql error: SET uid=$uid, state off";
last;
}

А после
Код:
my $rows = Db->do("UPDATE pays SET category=209 WHERE category=208 AND id=?", $p{id});
$rows < 1 && next;
           
Вот это:
Код:
my $rows = Db->do("UPDATE users SET state='on' WHERE id=?", $uid);
$rows < 1 && next;

Нюанс номер 2: Более серьёзный. Баланс теперь не отрицательный, а нулевой. А значит, клиент не может самостоятельно взять кредит.

А вот здесь я сделал неправильно, но оно хоть как-то позволяет клиенту взять кредит:

В modules/credit/create.user.credit.pl
Код:
$balance >= 0 && Error $lang{pos_balance};
заменено на
Код:
$balance > 0 && Error $lang{pos_balance};


Название: Re: Вести с полей
Отправлено: Morozikfeo от 24 Февраля 2014, 18:05:06
Да, как закоммичу, будет и там. Но туда я реже коммичу
В демку уже коммичили?


Название: Re: Вести с полей
Отправлено: Efendy от 24 Февраля 2014, 19:26:55
Да, как закоммичу, будет и там. Но туда я реже коммичу
В демку уже коммичили?
закоммитил


Название: Re: Вести с полей
Отправлено: sov от 25 Февраля 2014, 20:41:08
закоммитил

А вот это можете рихтануть?
Цитировать
Нюанс номер 2: Более серьёзный. Баланс теперь не отрицательный, а нулевой. А значит, клиент не может самостоятельно взять кредит.

А то мне мой способ не кажется идейно правильным.

Ну и решение Нюанса 1 тоже можно в код добавить, чтобы лишний раз не исправлять.


Название: Re: Вести с полей
Отправлено: Efendy от 26 Февраля 2014, 09:36:29
Ваши предложения я рассмотрю несколько позже


Название: Re: Вести с полей
Отправлено: sov от 01 Марта 2014, 14:43:04
Ваши предложения я рассмотрю несколько позже
Учтите ещё, что клиенту предлагает взять кредит с суммой ноль, т.к.
my $credit_amt = $balance * -1;

Чтобы хоть как-то работало, пришлось сделать тупо
my $credit_amt = $amt_max;

Короче, костыли на костылях и костылями погоняют.

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


Название: Re: Вести с полей
Отправлено: Efendy от 25 Апреля 2014, 22:12:46
Под новый протокол Liqpay сделал скрипт обработки ответа от сервера Liqpay. Протестил на сайте N+.  Допилю по красоте и выложу


Название: Re: Вести с полей
Отправлено: Dolphin от 25 Апреля 2014, 23:17:48
От всех спасибо. Замучал этот ПБ с api2.
Видимо губернатора сепаратисты щимят :)))))))))))))))


Название: Re: Вести с полей
Отправлено: Dolphin от 07 Мая 2014, 14:43:21
Под новый протокол Liqpay сделал скрипт обработки ответа от сервера Liqpay. Протестил на сайте N+.  Допилю по красоте и выложу

Можно без красоты?
Очень нужен рабочий модуль.


Название: Re: Вести с полей
Отправлено: Stronglan от 18 Января 2020, 19:49:08
Сделал небольшой модуль компенсаций: выбираешь клиентов по критерию и гришь: дать компенсацию в 1% с таким-то коментом. Тестится

Где найти данный модуль?


Название: Re: Вести с полей
Отправлено: Efendy от 19 Января 2020, 12:10:36
Модуль компенсаций