СОРМ

Для полной интеграции СОРМ, просьба обращаться к Дмитрию Б. aka Банан

+79115096089, +79215480279 (ТГ/WhatsApp/Звонок)

Внимание! Критическая уязвимость...

Использование копии биллинговой системы с датой обновления ДО 16.03.2024, черевато взломом.

До этой даты присутствует критическая уязвимость системы, которая перешла ещё с Abills

21.10.2026 (Версия биллинга - 'RU 26.10.21')

Наименование модуляСписок изменений/исправлений/добавлений

СОРМ

Оптимизированы все запросы


Добавлены необходимые индексы


В настройки выведен забытый параметр очистки журнала выгрузок


Убрано дублирование в журнале выгрузок (6000 абонентов, за 7 дней генерировали около 28млн записей)


Добавлено удаление "сирот" из журнала выгрузок (потерянные записи)

Финансы

Исправлено получение реестра платежей для внешних систем


Добавлено обязательное создание EXT ID, при ручном вводе, если не ввели вручную

Авторизаторы

Исправлена потеря сессий при авторизации абонента

Оборудование

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




 

20.10.2026 (Версия биллинга - 'RU 26.10.20')

Наименование модуляСписок изменений/исправлений/добавлений

Ядро

Исправлено сохранение порядка в сортируемых списках системных настроек.


Исправлен «съезд» поля комментария в схемах авторизации.


Исправлено падение AJAX-запроса списка тарифов


Исправлено падение Microimpuls на неопределённом STATUS.

Авторизаторы

Убран безусловный дебаг accounting в radius.log.


Убраны безусловные логи MSCHAP/EAP


Добавлен параметр AUTH_EXPR_PARSE_DEBUG — отладка разбора Option82.


Отладочные логи авторизации перенесены в штатную папку: $base_dir/var/log/Auth (auth-логи) и $base_dir/var/log/Acct (accounting-логи)


Добавлена гибридная схема AUTH_EXPR — регекспы Option82 для конкретного NAS.

Раньше AUTH_EXPR был ОДИН глобальный список правил разбора Option82, и система перебирала ВСЕ выражения подряд, пока не найдёт подходящее. Порядок правил в списке был критичен, и его приходилось вручную сортировать.

ТЕПЕРЬ: у каждого сервера доступа (вкладка «Авторизация» карточки NAS) можно задать СВОЙ набор регекспов. Он хранится в таблице config под именем AUTH_EXPR_<NAS_ID> (например AUTH_EXPR_10000), комментарии — AUTH_EXPR_COMMENTS_<NAS_ID>.

Приоритет выбора выражения в Auth2::opt82_parse:

  1. $attr->{AUTH_EXPR} — явно переданный из кода (например Mx80.pm);
  2. AUTH_EXPR_<NAS_IP> — регекспы конкретного сервера доступа;
  3. AUTH_EXPR — глобальный список (как раньше). Если для NAS своих регекспов нет — поведение НЕ меняется (глобальный AUTH_EXPR). 

UI: новая секция «Регекспы Option82» на вкладке «Авторизация» карточки NAS.

ОДИН РЕГЕКСП = ОДНА СТРОКА.

Параметры — МУЛЬТИСЕЛЕКТОР С ПЕРЕТАСКИВАНИЕМ ПО ГОРИЗОНТАЛИ. Порядок чипов слева направо = порядок групп захвата в регекспе.

Список атрибутов RADIUS в селекторе РАСШИРЕН и сверен с официальными источниками (словари FreeRADIUS /usr/share/freeradius/dictionary.*, RFC 3046, RFC 4679/TR-101):

  • Agent-Circuit-Id
  • Agent-Remote-Id
  • Agent-Subscriber-Id
  • Accel-Agent-Circuit-Id
  • Accel-Agent-Remote-Id
  • ADSL-Agent-Circuit-Id
  • ADSL-Agent-Remote-Id
  • DHCP-Relay-Agent-Information
  • DHCP-Agent-Circuit-Id
  • DHCP-Agent-Remote-Id
  • DHCP-Relay-Circuit-Id
  • DHCP-Relay-Remote-Id
  • DHCP-Subscriber-Id
  • DHCP-Option82
  • Cisco-DHCP-Subscriber-Id
  • Aptilo-Circuit-ID
  • Aptilo-Remote-ID
  • SG-Opt82-Relay-Remote-Id
  • Called-Station-Id
  • Calling-Station-Id

Плагины

equipment_mac: добавлен параметр NAS_IDS (фильтр по ID NAS, как в остальных плагинах системы).

Оборудование

Полностью переработан прицип управления/отображения данных для коммутаторов Huawei


Создан отельный сбор FDB для Huawei, для нормального сопоставления и авторизации по Option82


Переработана работа с индексами портов Cisco


Исправлено отображение абонента в списке портов у Cisco




 

19.10.2026 (Версия биллинга - 'RU 26.10.19')

Наименование модуляСписок изменений/исправлений/добавлений

Ядро

Исправлены очерёдности направлений в сендере, иногда,из-за этого, ломался 12-ый отчёт Ureports


Добавлен виджет ошибок billd


Доработана автоперезагрузка воркеров FCGI


Доработан отчёт работы billd

MAX

Исправлена кодировка, в некоторых случаях приходили вопросики, вместо кириллицы

История действий администратора

В журнале истории действий с абонентами и историй действий администратора, добавлено поле в котором указывается плагин, который сделал действие




 

15.10.2026 (Версия биллинга - 'RU 26.10.15')

Наименование модуляСписок изменений/исправлений/добавлений

Ядро

Переработана работа с конфигурацией системы, улучшено получение данных 


Исправлен баг у FCGI пуллеров, теперь они понимают, что в системе новый код, без перезагрузки


Исправлены некоторые локализации названий параметров


Исправлено "замерзание" billd демона


Исправлена функция checklines

Списания

Добавлен новый параметтр INTERNET_COMPANY_FINE_LIMIT - ТОЛЬКО для абонентов компании

JS

Исправлено AJAX/JQUERY сохранение массива в настройках Ядра системы

Телеграм бот

Ускорен пуллер для Telegram (работа без webhook)

Личный кабинет абонента

Исправлено сохранение E-mail адреса




 

14.10.2026 (Версия биллинга - 'RU 26.10.14')

Наименование модуляСписок изменений/исправлений/добавлений

Ядро

Добавлен установщик сокетов для FCGI


Исправлено право 0:46 «Просмотр физических лиц» отсутствовало в словаре прав admin_permissions.


Исправлено «Обслуживание>Документы» и «Обслуживание>Документы>Счета» зависали при отключённом/недоступном сервере 1С.


api.cgi не читал список модулей из БД


Демон billd запускал каждый плагин через exec — то есть НОВЫЙ процесс billd, который заново компилировал ~96 модулей (2.9 МБ). Это давало всплеск CPU ~0.7-0.8s (100% одного ядра) на КАЖДЫЙ запуск плагина.


Плагин scan_ports (cron */10) запускал equipment_grabber ОТДЕЛЬНЫМ процессом billd НА КАЖДЫЙ NAS — 28 NAS = 28 процессов. Каждый процесс заново компилировал ~96 модулей (2.9 МБ) и открывал своё соединение к БД. Итог: всплеск CPU, 28 параллельных SNMP-опросов и ГОНКИ записи в equipment_ports (несколько процессов одновременно меняли одни и те же строки портов).


debug-лог billd (var/log/billd/debugN.log, включается параметром BILLD_DEBUG_LEVEL >= 3) писался БЕЗ времени


Оптимизирована сводка платежей на стартовой странице админки (блок «Платежи»: День/Неделя/Месяц)


Оптимизирована функция company_daily_stats (ACP/mysql/Fees.pm) — дневная статистика списаний по компании


Оптимизирована функция ensure_topics_tables() (ACP/modules/MAX/Dialogs.pm) вызывалась 9 раз из разных функций рендера


Оптимизирован отчёт «Порты на коммутаторах» (equipment_switch_report, ACP/modules/Equipment/Reports.pm), выполнял запрос на КАЖДЫЙ коммутатор


Оптимизирована функция sysinfo_sp_info() (ACP/modules/Sysinfo/Reports.pm) при КАЖДОМ показе стартовой страницы запускала внешние процессы


Оптимизирована функция lang_init_from_db() (lib/ACP/Misc.pm) вызывается из load_module() для КАЖДОГО загружаемого модуля и при каждом вызове делала 2 SQL-запроса к таблице translations


Оптимизированы отчёты по истории сессий (таблица internet_log, ~972 тыс. строк) использовали функции на колонке даты, из-за этого не работал индекс по дате


Оптимизированы отчёты списаний (таблицы fees ~15 млн., internet_main) использовали функции на колонке даты, из-за этого не работал индекс по дате


Оптимизирована функции на колонке даты (DATE_FORMAT) в WHERE переписаны на полуинтервалы по самой колонке во ВСЕХ модулях


Оптимизирован журнал действий администраторов

Радиус и авторизация

При добавлении/удалении нового сервера доступа теперь не надо перезапускать радиус


Система теперь сама умеет определять, как называется сервис FreeRADIUS


В accounting для NAS типа accel_ipoe подмена User-Name выполнялась поиском по internet_main.CID БЕЗ учёта VLAN. Если у двух абонентов ОДИНАКОВЫЙ MAC (даже в разных VLAN), запрос возвращал несколько строк и код брал ПЕРВУЮ ($self->{list}->[0]->[1]) — то есть мог подставить ЧУЖОЙ логин. Далее online_lock_session / online_update_session искали сессию по user_name → не находили (affected=0) → сессия не обновлялась → LOST-SESSION.

Домофония

Добавлен параметр INTERCOM_SKIP_USER_MENU — скрытие пункта «Домофония» и его подпунктов в кабинете абонента




 

12.10.2026 (Версия биллинга - 'RU 26.10.12')

Наименование модуляСписок изменений/исправлений/добавлений

Сервера доступа/Авторизация

Дабавлено "горячее" перечитывание параметров, без необходимости перезапуска радиуса. Ориентируется на время изменение в настройках ядра.


Добавлено "горячее" перечитывание параметров модулей авторизации и аккаунтинга без перезапуска радиуса. Ориентируется на время изменения в настройках сервера доступа


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


Добавлен флаг лога "HOT RELOAD" для отслеживания что был перечитан параметр или авторизатор.

Модули

Добавлен новый модуль Modules_hash, для отслеживания изменений в файлах авторизации и аккаунтинга. 

Настройки ядра

В таблицы настроек ядра добавлены поля last_update, для отслеживания времени изменений. Теперь всегда можно увидеть когда был последний раз изменён параметр


Исправлено сохранение вендор-ориентированных параметров


Добавлен новый параметр "Передавать статус услуги при создании абонента (визард)". Позволяет, при создании абонента, нарушить закон и создать абонента БЕЗ активного сервиса "Интернет". Использовать только в режиме тестирования. В боевом режиме закон НЕ позволяет создавать сервис гораздо позже, чем создана учётная запись абонента

JS

Добавлены недостающие выводы ещё не сохранённых параметров, для отслеживания какой параметр изменили перед применением.

ОБЯЗАТЕЛЬНО ЧИСТКА КЕША!!!




 

11.10.2026 (Версия биллинга - 'RU 26.10.11')

Наименование модуляСписок изменений/исправлений/добавлений

Сервера доступа

Добавлено поле Zap-порог (sec.) — порог "протухания" online-сессий в секундах.


Добавлено Interim-Update (sec.) — интервал Accounting-Update в секундах.

Автообновление

Исправлено падение автообновлятора при ошибочном SQL патче




 

09.10.2026 (Версия биллинга - 'RU 26.10.09')

Наименование модуляСписок изменений/исправлений/добавлений

Оборудование/Оповещения

Исправлено: при сохранении шаблона уведомления терялся блок <!--%ONU_ITEMS%-->...<!--/ONU_ITEMS%--> (служебные маркеры повторяющихся строк по ONU).


Изменено: предпросмотр шаблона теперь подставляет тестовые значения вместо переменных и корректно обрабатывает переводы строк и HTML.


Исправлено: при AJAX-сохранении шаблона не учитывалось состояние чекбокса «Использовать текст из БД» (enabled).

Equipment

Добавлено: полноценная система шаблонов уведомлений для модуля Equipment (PON) (плагин equipment_pon.pm)

JS

Исправлено глобальное определение местонахождения параметра или в БД или в config.pl

ОБЯЗАТЕЛЬНО ЧИСТКА КЕША!!!

Ядро/Права администратора

Изменено: заголовки и иконки секций формы прав администратора вынесены в отдельную таблицу БД admin_permission_sections.


Изменено: система прав администратора переведена с файлов ACP/main_tpls/permissions*.info на таблицу БД admin_permissions.


Исправлено: дублирующая секция прав 10 (Multidoms) удалена, все проверки $permissions{10} в коде заменены на $permissions{9}.

Paysys

Исправлено (критично): платежи зачислялись на чужой лицевой счёт. (баг версии RU 26.10.08)




 

08.10.2026 (Версия биллинга - 'RU 26.10.08')

Наименование модуляСписок изменений/исправлений/добавлений

Финансы

Логирование платёжных систем приведено к единому виду - детальный протокол обмена


Единый механизм логирования входящих запросов и исходящих ответов для ВСЕХ платёжных систем


Исправлено падение платёжных систем, если фал лога отсутствует или на него стоят не правильные права


Вид оплаты, при начислении компенсации,вынесен в настраиваемый параметр.

Параметр настраивается в "Настройка>Финансы>Настройки ядра>Оплаты>Вид оплаты для компенсации"

Карточка абонента

В карточке абонента (секция «Адрес») сломался выбор улицы и дома — список улиц/домов подгружался, но выбрать значение было нельзя (выпадающий список select2 «выпадал»); выбор работал только после повторного открытия селектора.

Оповещение

При сохранении направления (тип «телефон») без указания значения в лог писался warning


Настройка тарифов и отчётов переведены на AJAX/JQUERY сохранение

Телевидение

Кнопка ajax-сохранения в блоке «Интервалы / Каналы» тарифного плана IPTV теперь подсвечивается при изменении любого поля.

Ядро

Исправлена ошибка поиска по БД со СМЕШАННЫМИ коллациями таблиц.




 

07.10.2026 (Версия биллинга - 'RU 26.10.07')

Наименование модуляСписок изменений/исправлений/добавлений

Карточка абонента

Переименованы метки переключателя статуса абонента

Было: включён — "Активный", выключен — "Отключено".

Стало: включён — "Активный договор", выключен — "Договор расторгнут".


Исправлена невозможность сохранить VLAN "ANY" в карточке абонента.

Авторизаторы

Исправлена пометка гостевой сессии

СОРМ

Исправлено разделение слоёв: флаг ABONENT_FILES_ONLY.


Изменён порядок вкладок на странице Настройка > СОРМ 3 > Настройки ядра.




 

06.10.2026 (Версия биллинга - 'RU 26.10.06')

Наименование модуляСписок изменений/исправлений/добавлений

Dom

Исправлено создание визуальной схемы дома, на некоторых установках не подтягивался нужный JS


На визуальную схему дома добавлены помещения


Добавлено редактирование помещений в Кострукторе схем

Адрес в карточке абонента

Теперь, если у вас есть схема дома, автоматически заполняются поля подъезда и этажа, в карточке  абонента, согласно номеру квартиры/помещения

MAX бот

Исправлено сохранение настроек токена бота




 

04.10.2026 (Версия биллинга - 'RU 26.10.04')

Наименование модуляСписок изменений/исправлений/добавлений

Docs

Исправлена генерация PDF дополнения к договору


Исправлено открытие редактора PDF-шаблонов в «Настройка > Системные настройки > Шаблоны»


Редактор PDF-шаблонов: вместо обезличенных кодов теперь показывается человекочитаемое название


Расширен формат .dsc (карта координат PDF-шаблона)


Редактор PDF-шаблонов переписан в виде WYSIWYG

Таблица онлайна

Исправлено «зависание» осиротевших сессий в internet_online для NAS типа mikrotik_dhcp.

 

Исправлено «зависание» online-строки при hangup для mikrotik_dhcp

Система

Добавлено автонаполнение пустых пулов IP (ippools_ips) при выдаче адреса.

billd

Исправлено предупреждение "Use of uninitialized value in exists" в плагине mikrotik_check_clients




 

02.10.2026 (Версия биллинга - 'RU 26.10.02')

Наименование модуляСписок изменений/исправлений/добавлений

Отчёты

Оплаты - вернули возможность сортировки по видам оплат


Исправлен быстрый отчёт "Вид оплаты"

СОРМ

Улучшено определение ожидание перед выгрузками на FTP/SFTP - unisorm.lock (новый параметр) 

intercom

Исправлен перевод в чёрные/белые списки, чтоб не разлогинивало из приложений


Исправлена запись в лог списаний от чьего имени произошло списание (системный периодик или админ)

Автоматическое Обновление

Переделано на новый вид доступа к git 


 


 

01.10.2026 (Версия биллинга - 'RU 26.10.01')

Наименование модуляСписок изменений/исправлений/добавлений

Система

Исправлено объявление package для версий перл >= 5.40.1

IPTV

Добавлена возможность работы с пенями отдельно от модуля Internet


Исправлен шаблон отключения сервиса IPTV

Отчёты

Отчёты по списаниям и платежам - ускорено открытие данных отчётов

Intercom

Добавлена возможность работы с пенями отдельно от модуля Internet


Исправлен шаблон отключения сервиса Intercom


Добавлен расширенный вывод ошибок


Добавлена возможность отправки логина и пароля от сервиса Intercom по всем направлениям


Исправлено добавление абонента в чёрный список при СМД


Исправлено удаление абонента в сторонней системе


Исправлен перевод абонента в чёрный список при СМД


Исправлен перевод абонента в белый список при переходе в статус Активно




 

  • Нет меток