Перейти до

Релизы Ubilling


Рекомендованные сообщения

Там используются вызовы нового API самого Ubilling, для ресета пользователя и перестроения конфигов DHCP :(

 

Сейчас в разъездах, вернусь в свой город к вечеру, попробую собрать что-то похожее на рабочий вариант.

Ок. Я самоактивацию буду позже тестить. Для начала пока только страничку с заглушкой и показом мака.

Ссылка на сообщение
Поделиться на других сайтах
  • Відповіді 1,2k
  • Створено
  • Остання відповідь

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Да кстати если кому то нужен шаблон для свича то вот  можно воспользоваться такой штукой  шаблоно-генератором

Преувеличиваем? Ничего особенного и нового я не сделал

Ни один единорог не пострадал? =)

Posted Images

DarkSpider

Все в почте. Активация тоже в теории должна работать.

DarkLan

Да. Способов вагон. Смотря зачем нужно.

Если при изменении тарифа "в следующем месяце" то можно использовать либо опцию NMCHANGE либо штатную механику stargazer в виде ReconnectOnTariffChange.

В случае если требуется ресетнуть абонентов "прям щас и уже" можно свободно воспользоваться консолью разработчика(там еще недавно сохранение шаблонов появилось), пиная при этом $billing->resetuser(логин_юзера); в цикле.Также начиная с 0.3.1 будет доступен вызов ?module=remoteapi&key=серийник&action=reset&param=логин_юзера для использования во всяких внешних обвесах. Ну и конечно же никто не запрещает долбить по sgconf напрямую.

Ссылка на сообщение
Поделиться на других сайтах
Публика скандирует: "XML! RPC! XML! RPC!"

Практика говорит, что sgconf_xml по умолчанию отлично уже работает годами :)

Хотя чего, есть оно, тоже работает. Всего-то сделать baseconf = xmlrpc в billing.ini

А напрямую из консоли, тем более на таких задачах как установка/снятие единичного флага, удобнее юзать таки sgconf в одну строчку.

Ссылка на сообщение
Поделиться на других сайтах

Что значит при "автоматической" смене?

 

Если смена происходит "прям щас" - то для этого есть опция TARIFFCHGRESET которая включена по умолчанию в alter.ini

Если смена происходит "со следующего месяца" - просто тыкните опцию ReconnectOnTariffChange=yes в stargazer.conf

Ссылка на сообщение
Поделиться на других сайтах

Настройки авторитета канала (http - 10%, upd/p2p-80%) использовать при этом правилa fwd в firewall.conf НО есть возможность сделать при помощи stargazer?

 

при помощи ipfw балансировка:

 

ipfw add 30 set 3 pipe 11 tcp from any to any not 80 via tun0
ipfw add 30 set 3 pipe 11 udp from any to any via tun0
ipfw pipe 35 config bw 50Mbit/s

 

Кто что то такое делает? поделитесь опытом правильного распределения трафика, что бы торренты не ложили весь http.

Ссылка на сообщение
Поделиться на других сайтах

Релиз Ubilling 0.3.1 rev 1846

 

 

 

Список изменений

 

- Изменения в структуре БД, см. дамп.

- alter.ini: новая опция REMOTEAPI_ENABLED включающая удаленный вызов процедур

- alter.ini: новая опция RADIUST_ENABLED включающая поддержку шаблонизации аттрибутов Radius

- Модуль «Свитчи»: теперь возможно добавление задач периодического переопроса свитчей при помощи crontab (GET cronping=серийник)

- Модуль «События»: теперь поиск по паттерну отображает лимитируемое количество результатов

- Модуль «История смертижизни»: теперь отображаються внутренности пользователя в прямом виде.

- Модуль «Работы»: исправлено несоответствие требуемых прав

- Модуль «Редактирование пароля»: теперь игнорирует опцию PASSWORDSHIDE (что как бы логично)

- Модуль «Редактирование пароля»: теперь показывает пользователей с дублями паролей

- Модуль «Редактирование пароля»: теперь проверяет пароли на уникальность

- Модуль «Просмотр событий»: теперь не вызывает исключений в случае, если stargazer не успел создать табличку лога за текущий месяц

- Модуль «Поиск пользователей»: дополнительная фильтрация в поле поиска по частичному адресу

- КТВ: теперь отображается общее количество пользователей в разделе «Список пользователей»

- КТВ: на скорую руку портирован финансовый отчет из интернетов

- userstats.ini: новая опция PASSWORDSHIDE включающая утаивание паролей от пользователей

- Новый сервис UHW

- OpenPayz: исправлен и дополнен фронтенд работы с «Приватбанком»

- Починена внезапно сломавшаяся совместимость с браузерами на движке WebKit

- Переписана механика трансляции оплат

- Родные менюшки Ubilling теперь точно находяться в верхнем слое

 

 

Перед обновлением следует:

 

Добавить в конец alter.ini:

REMOTEAPI_ENABLED=1
RADIUST_ENABLED=1

 

Добавить в конец userstats.ini:

PASSWORDSHIDE=0

 

Применить на БД дамп:

CREATE TABLE `uhw_log` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`date` DATETIME NOT NULL ,
`password` VARCHAR( 255 ) NOT NULL ,
`login` VARCHAR( 255 ) NOT NULL ,
`ip` VARCHAR( 255 ) NOT NULL ,
`nhid` INT NOT NULL ,
`oldmac` VARCHAR( 255 ) NULL ,
`newmac` VARCHAR( 255 ) NOT NULL
) ENGINE = MYISAM CHARSET=utf8 AUTO_INCREMENT=1 ;


CREATE TABLE `uhw_brute` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`date` DATETIME NOT NULL ,
`password` VARCHAR( 255 ) NOT NULL ,
`mac` VARCHAR( 255 ) NOT NULL
) ENGINE = MYISAM CHARSET=utf8 AUTO_INCREMENT=1 ;

Ссылка на сообщение
Поделиться на других сайтах

о свершилось ))) новый релиз ))

 

Такая ситуативная ситуация ))) :

 

есть филиал А и Б

филиал А имеет свою сетку тарифов, филиал Б -соответственно свою. Даже названия тарифов разные.

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

Можно ли в будущих релизах предусмотреть эту фишку?

 

что-то вроде рашсирения директив в userstats.ini из серии TC_TARIFFSALLOWED, TC_TARIFFENABLEDFROM

Ссылка на сообщение
Поделиться на других сайтах
Нужно сделать так чтобы абоненты филиала А в личном кабинете могли менять свои тарифы (и соответственно не видели тарифов филиала Б, и есесно не могли на них прыгать), а абоненты филиала Б - могли менять свои тарифы.

Мы опередили вашу хотелку где-то на неделю :D

 

Данная фича уже в разработке.

Уйдет в 0.3.2. Потребности правда чуть другие но логика та-же. Хотим дополнить опции TC_TARIFFSALLOWED, TC_TARIFFENABLEDFROM дополнительной опцией TC_EXTENDED подключающей дополнительный конфиг tcdirections.ini следующего вида:

 

Mega-10="Mega-100,Mega-50"
Mega-50="Mega-100,Mega-10"
Mega-100="Mega-50,Mega-10"

Super-50="Mega-10,Mega-50,Mega-100"

Думаю очевидно зачем это нужно и все вытекающие из этого плюшки.

Ссылка на сообщение
Поделиться на других сайтах
Нужно сделать так чтобы абоненты филиала А в личном кабинете могли менять свои тарифы (и соответственно не видели тарифов филиала Б, и есесно не могли на них прыгать), а абоненты филиала Б - могли менять свои тарифы.

Мы опередили вашу хотелку где-то на неделю :D

 

Данная фича уже в разработке.

Уйдет в 0.3.2. Потребности правда чуть другие но логика та-же. Хотим дополнить опции TC_TARIFFSALLOWED, TC_TARIFFENABLEDFROM дополнительной опцией TC_EXTENDED подключающей дополнительный конфиг tcdirections.ini следующего вида:

 

Mega-10="Mega-100,Mega-50"
Mega-50="Mega-100,Mega-10"
Mega-100="Mega-50,Mega-10"

Super-50="Mega-10,Mega-50,Mega-100"

Думаю очевидно зачем это нужно и все вытекающие из этого плюшки.

 

просто класс!!! с нетерпением жду следующего релиза )))

Ссылка на сообщение
Поделиться на других сайтах

просто класс!!! с нетерпением жду следующего релиза )))

 

Сами ждем, приходится одновременно поддерживать около 6-ти актуальных линеек тарифных планов :)

Ссылка на сообщение
Поделиться на других сайтах

В чем может быть проблема: правила firewall.conf или сам ipfw зависает, хота ipfw show - все таблицы показывает... Но Интернета в пользователей НЕТ. Помогает только sh /etc/firewall.conf и после каждого пользователя ресить нужнo. Благо тестовый сервер (10 человек только).

Ссылка на сообщение
Поделиться на других сайтах
правила firewall.conf или сам ipfw зависает

Такого не бывает, потому что не бывает.

 

Но Интернета в пользователей НЕТ

вывод после "зависания" в студию:

 

# ifconfig -a (rl,vr,nv - я угадал?  )

# tail /var/log/messages

# ipfw nat 1 show

# ipfw show

# ipfw table 2 list

# ipfw table 9 list

# netstat 1

# top -SHPb

 

Помогает только sh /etc/firewall.conf и после каждого пользователя ресить нужнo.

Тогда ясно зачем нужна ресетилка. И нет - так не должно быть.

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

Ссылка на сообщение
Поделиться на других сайтах

ifconfig -a (rl,vr,nv - я угадал?  )

ну почти - ste (D-Link-ковская кака)

 

 

tail /var/log/messages

ничего особенного - подключения по ssh и только...

 

 

ipfw nat 1 show

nat 1: icmp=1, udp=64, tcp=333, sctp=0, pptp=0, proto=0, frag_id=0 frag_ptr=0 / tot=398

 

firewall.conf

# Networks define
${FwCMD} table 2 add 192.168.10.0/24
${FwCMD} table 9 add 0.0.0.0/0

 

ipfw show

00101 1288 105846 allow tcp from 192.168.10.1 to me dst-port 22 in via rl0
00102 6190 5606252 allow ip from 192.168.10.2 to any
00103 2689 358306 allow ip from any to 192.168.10.2 dst-port 80
06000 0 0 nat 1 ip from table(2) to not table(9) via tun0
06001 6896964 5536846348 nat 1 ip from any to any via tun0
... пользователи...
65532 0 0 deny icmp from any to any frag
65533 20744 1739821 deny ip from table(2) to any via rl0
65534 10 1480 deny ip from any to table(2) via rl0
65535 13510 9932512 allow ip from any to any

 

 

ipfw table 2 list

192.168.10.0/24 0

 

ipfw table 9 list

0.0.0.0/0 0

 

почему так? потому что поднимается демон ppp, а там IP не статический.

 

 

netstat 1

input (Total) output
packets errs idrops bytes packets errs bytes colls
84 0 0 35373 84 0 24531 0
105 0 0 109986 91 0 57311 0
310 0 0 221869 289 0 121245 0
144 0 0 99802 127 0 53577 0
419 0 0 320440 398 0 231538 0
1073 0 0 1146189 890 0 560844 0
943 0 0 963966 830 0 534095 0
937 0 0 1056662 758 0 537738 0

 

 

 

 

top -SHPb

496 root 44 0 5200K 2644K select 13:07 0.20% ppp
12 root -68 - 0K 136K WAIT 2:38 0.10% {irq19: rl1}
0 root -68 0 0K 56K - 6:05 0.00% {dummynet}
12 root -68 - 0K 136K WAIT 2:55 0.00% {irq18: rl0}
12 root -32 - 0K 136K WAIT 2:49 0.00% {swi4: clock}
0 root 76 0 0K 56K sched 0:35 0.00% {swapper}
1319 root 44 0 13404K 6604K nanslp 0:30 0.00% {stargazer}
1319 root 44 0 13404K 6604K nanslp 0:27 0.00% {stargazer}
13 root -16 - 0K 8K - 0:17 0.00% yarrow
1332 nobody 44 0 3476K 2048K select 0:11 0.00% softflowd
1186 mysql 44 0 51976K 22332K select 0:10 0.00% {mysqld}
1186 mysql 44 0 51976K 22332K select 0:08 0.00% {mysqld}
2539 www 44 0 23200K 14580K accept 0:07 0.00% httpd
4498 root 44 0 3424K 1352K select 0:07 0.00% ping
1270 www 49 0 23200K 14564K accept 0:06 0.00% httpd
2509 www 44 0 23200K 14568K accept 0:06 0.00% httpd
2510 www 44 0 23200K 14576K accept 0:06 0.00% httpd

Ссылка на сообщение
Поделиться на других сайтах
ничего особенного - подключения по ssh и только...

подозреваю что там еще должны быть периодические вопли про "no buffer space avaliable" или "interrupt storm detected on throttling interrupt source" - учитывая сетевую.

 

 

ipfw nat 1 show

ок

 

почему так? потому что поднимается демон ppp, а там IP не статический.

Там должно быть что угодно но только не "весь интернет". 9-я табличка по умолчанию указывает на хосты к которым не нужно производить NAT (читаем локальные ресурсы). Уберите это нафиг оттуда.

Соответственно обратное правило ipfw nat следует рисовать по интерфейсу.

 

 

netstat 1

ок

 

 

top -SHPb

 

ну допустим.

 

 

/etc/firewall.conf еще покажите и /etc/rc.conf - подозреваю еще и там творческий подход :)

 

ЗЫ уехал, вернусь в понедельник

Ссылка на сообщение
Поделиться на других сайтах
Там должно быть что угодно но только не "весь интернет". 9-я табличка по умолчанию указывает на хосты к которым не нужно производить NAT. Уберите это нафиг оттуда.

 

Ну поставим - 95.0.0.0/8

 

 

подозреваю ... сетевую.

 

Sep 23 12:24:23 lano2 last message repeated 2 times
Sep 23 12:24:23 lano2 kernel: uhub4: 8 ports with 8 removable, self powered
Sep 23 12:24:23 lano2 kernel: Trying to mount root from ufs:/dev/ad2s1a
Sep 23 12:24:23 lano2 kernel: WARNING: attempt to domain_add(netgraph) after domainfinalize()
Sep 23 12:24:24 lano2 kernel: ste0: link state changed to UP
Sep 23 12:24:24 lano2 dhcpd: WARNING: Host declarations are global. They are not limited to the sc
ope you declared them in.

 

первые 3...

Ссылка на сообщение
Поделиться на других сайтах
Гость
Эта тема закрыта для публикации сообщений.
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

  • Схожий контент

    • Від ppv
      Потрібно було витерти одну мережу, всі абоненти з неї були перенесені в іншу. Але світить що 6 IP зайняті, хоча вона повністю вільна.
       
      ID    Мережа/CID           RВсього IP        Використано IP ▾           Вільно IPСервіс
      6      172.16.70.0/23        506                    6                                       500
       
      Підкажіть як правильно це підчистити щоб видалити мережу.
    • Від ppv
      Проглянув FAQ і Ubilling Wiki. Зацікавило питання чи є в Ubilling якась реалізація reCAPTCHA, чи потрібно додавати руцями, (для прикладу для форми подачі заявок чи для кабінету користувача)?
       
    • Від sanyadnepr
      Приветствую всех.
      Подскажите пожалуйста где копнуть и нет ли проблемы со стороны протокола взаимодействия сити24 или возможно не учтена необходимая проверка в модуле сити24 в Ubilling, пока писал понял что похоже в проверке payID, но это не точно.  
      Недавно обнаружилось с сити24 начали прилетать дубликаты платежей, в целом платежей мало, два одинаковых запроса Pay с одинаковым transactionID и payID в одну секунду одному платежному ID при этом биллинг "думает" примерно чуть больше минуты и отвечает одним ответом <result>0</result>, сити24 утверждает что ответ они не получили и по протоколу дальше повторяет запросы дублем, биллинг ответ и так по кругу, сити24 спрашивает каким образом с одинаковым payID от сити24 билл продолжает обрабатывать запросы и пополнять абоненту счет раз в 5 минут примерно, на одну и туже сумму, ведь этот payID уже был обработан предполагают сити24 согласно протоколу.
      Конечно есть вопрос к сити24 зачем они дублем присылают два запроса, но они отвечают что эта ситуация учтена в протоколе и проблема на стороне биллинга, потому что он пополняет счет по уже обработанному одинаковому payID.
      При этом transactionID в дублях одинаковый, но с каждым новым дублем разный.
      Если зафаерволить запросы от сити24, но оставить возможность отвечать то после блокировки билл отправляет 2-3 минуты 6 ответов <account>0001</account>  <result>0</result>.
      После снятия блокировки, дубли и платежи нескольких проблемных абонентов прилетают так же по кругу, при этом и с некоторыми новыми пополнениями происходит аналогичная ситуация.
      В openpayz в платежах transactionID и не видно payID.
    • Від nightfly
      Ubilling 1.4.3 rev 9058 The Bladewood Grove
       
      Зміни в структурі БД. alter.ini: нові опції OPHANIMFLOW_ENABLED та OPHANIMFLOW_URLS котрі вмикають та керують інтеграцією з OphanimFlow. alter:ini: нова опція PHOTOSTORAGE_POSTPROCESSING, що вмикає післяобробку зображень при завантаженні в Сховище зображень. alter:ini: нова опція PHOTOSTORAGE_WATERMARK, що вмикає розміщення вотермарки на всіх зображеннях, що завантажуються. alter:ini: нова опція PHOTOSTORAGE_RECOMPRESS, що вмикає зміну компрессії завантажених зображень. alter:ini: нова опція PHOTOSTORAGE_AUTORESIZE, що вмикає автоматичне та лагідне масштабування зображень конячих розмірів. alter:ini: нова опція PHOTOSTORAGE_DRAWIMGINFO, що вмикає вдруковування в зображення відлагоджувальної інформації. alter.ini: нова опція ONDEMAND_CHARTS, що вмикає відкладене завантаження графіків завантаження користувацької смуги. userstats.ini: нова опція OPHANIM_ENABLED, що вмикає інтеграцію OphanimFlow в кабінеті користувача. Модуль Заздрість: тепер авторизаційні дані пристроїв, не відображаються в списку пристроїв. Модуль “Заздрість”: при створенні та редагуванні пристроїв, для полів “пароль” та “enable пароль” тепер використовуються інпути паролів. Модуль “Заздрість”: заздрісним пристроям додано нове поле “Порт”. Тепер в скриптах можна використовувати, відповідний макрос {PORT}. Модуль “Статистика трафіку користувача”: проведено радикальний рефакторинг. Модуль “Статистика трафіку користувача”: додано опційну можливість, відображення трафіку отриманого з OphanimFlow. Модуль “Статистика трафіку користувача”: виправлено проблему невірного відображення залишку коштів на кінець місяця, при використанні Ішимури. Модуль “Статистика трафіку користувача”: додано можливість відображення графіків за останню годину з OphanimFlow. Модуль “Користувачі”: додано опційну можливість, відображення трафіку отриманого з OphanimFlow. Модуль “Сховище зображень”: тепер додатково перевіряє завантажувані зображення на тему їх валідності. Модуль “Фінансові операції”: виправлено відображення суми платежів користувача. Remote API: новий виклик ophanimtraff, який просто бере і синхронізує локальну БД з віддаленими джерелами OphanimFlow. Remote API: виклик userbynum тепер також опційно містить поле з “Платіжним ID” користувача. Глобально: у всіх полях вводу паролів, окрім форми входу, тепер відображається елемент керування “показати/приховати” пароль. Кабінет користувача: в модулі “Трафік” додано опційну можливість, відображення трафіку отриманого з OphanimFlow. Кабінет користувача: в модулі “Трафік” виправлено проблему невірного відображення залишку коштів на кінець місяця, при використанні Ішимури. Кабінет користувача: в модулі “Відеоспостереження” для NVR WolfRecorder замінено розділювач попередньо заповнених даних авторизації. OpenPayz: додано frontend portmonemulti, для отримання платежів від різних контрагентів. Інформацію по контрагентам бере з біллінгу, також використовую розширену інформацію контрагента. Платіжна система в контрагенті мусить бути створена, як PORTMONE 1984tech: додано функціонал генерації RPZ для isc-bind, спасибі @misterromanbush  
      Повний чейнджлог
      Оновлена демка
       

    • Від mac
      Здається, після оновлення PHP 7.4 до PHP 8.2 feesharvester припинив працювати:
       
      /usr/local/bin/curl "http://127.0.0.1/billing/?module=remoteapi&key={SERIAL}&action=feesharvester" <br /> <b>Fatal error</b>: Uncaught TypeError: Unsupported operand types: string - string in {UBPATH}/billing/api/libs/api.fundsflow.php:570 Stack trace: #0 {UBPATH}/billing/modules/remoteapi/feesharvester.php(22): FundsFlow-&gt;harvestFees('2024-01') ...  
      Невеличке розслідування врешті з'ясувало, що це через наявність пробілу у деяких логінах абонентів. Як так сталося? Тому що інколи був неуважно додан трейлінг пробіл до номеру будинка і цей пробіл потрапив до логіну абоненту. Логін абоненту неможливо змінити ніяким чином штатними засобами. Я не розглядаю створення нового абонента для усунення помілки.

      Був обран такий шлях вирішення проблеми. Заміну функції php explode() знайшов у мережі. Мабуть це станеться в нагоді:

       
      diff api.fundsflow.php.bak api.fundsflow.php.new 559c559 < $eachfee = explode(' ', $eachline); --- > $eachfee = preg_split("~(?<!\\\\)(?:\\\\{2})*'[^'\\\\]*(?:\\\\.[^'\\\\]*)*'(*SKIP)(*F)|\s+~s" , $eachline);  

×
×
  • Створити нове...