Nightly DEV build. Not recommended for production use.
Ночная DEV-сборка. Не рекомендуется для продуктивного использования.
MikoPBX 2026.4.4-dev — Nightly DEV
Дата: 2026-08-12 · База: 2026.3.40 · Коммитов: 34 · Файлов: 105
Кратко
Этот выпуск устраняет критичные проблемы со входом в систему, исправляет учёт переводов звонков в статистике и повышает надёжность работы с внешними модулями. Главное внимание — на корректность данных и стабильность интерфейса при истекших сессиях.
🆕 Новое
- Журнал аудита операций с модулями: кто и когда включал, выключал или удалял расширения — теперь видно в логах системы.
- Локализованные подсказки прав доступа в REST API: каждый запрещённый запрос показывает понятное описание требуемого разрешения вместо служебного имени.
- Автоматическая проверка соглашений REST API для модулей: генератор теперь требует ресурсно-ориентированные эндпоинты и документирует ошибки дизайна.
🐛 Исправлено
- Страница входа вместо ошибки при истёкшей сессии: устаревший сеанс больше не показывает «отказано в доступе», а корректно предлагает войти заново.
- Единственное окно выхода вместо нескольких одновременных: если вкладка открыта, когда сессия кончилась, система больше не отправляет десятки параллельных запросов на выход.
- Корректный учёт очереди после перевода звонка: когда оператор перевёл вызов и вышел из разговора, в статистике теперь фиксируется реальная длительность разговора с клиентом, а запись не теряется.
- Правильная сортировка списка заблокированных адресов: даты больше не сортируются как текст.
- Фильтрация и сортировка временных условий: поиск и упорядочивание на странице рабочих часов теперь работают без ошибок.
- Изоляция входящих маршрутов провайдеров: два провайдера с разными именами, но одинаковым IP-адресом, больше не путаются между собой — каждый использует собственный контекст авторизации.
- Установка прогресса модулей: если операция начинается с ошибки, индикатор выполнения больше не зависает из-за отсутствующих данных.
- Корректный формат ответа при отказе в доступе: AJAX-запросы теперь получают структурированный ответ с описанием причины, а не пустое тело.
⚙️ Улучшения
- Перезагрузка веб-сервера и рабочих процессов без потери запросов: nginx теперь плавно применяет изменения конфигурации.
- Права доступа REST API модулей: унаследованные заглушки больше не отображаются в списке разрешений, только реальные переопределения.
- Домашняя страница после входа: для пользователей с ограниченным доступом используется заданная стартовая страница вместо произвольного перенаправления.
🧪 Фокус тестирования
- Область: истечение сессий (оставить вкладку на несколько часов, обновить страницу, проверить вход по форме без ошибки «отказано»), перевод звонка в очереди (полная длительность в статистике, наличие записи разговора), работа с модулями (проверить аудит включения/выключения в логах, корректность установки при нестабильной сети), фильтрация временных условий (поиск и сортировка на странице рабочих часов), входящие звонки от провайдеров с одинаковым IP
- Регрессии: проверить доступность интерфейса под разными ролями, убедиться в отсутствии двойных запросов выхода, корректность работы REST API для сторонних приложений
MikoPBX 2026.4.4-dev — Nightly DEV (English)
Date: 2026-08-12 · Base: 2026.3.40 · Commits: 34 · Files: 105
TL;DR
This release fixes critical login-flow issues, corrects call-transfer statistics, and improves external module reliability. The main focus is on data accuracy and stable UI behaviour when sessions expire.
🆕 New
- Module operation audit trail: who enabled, disabled, or uninstalled extensions is now recorded in system logs.
- Localized REST permission hints: denied requests now show readable permission descriptions instead of internal names.
- Automated REST API convention checks for modules: the generator now requires resource-oriented endpoints and documents design anti-patterns.
🐛 Fixed
- Login form instead of an error page on expired sessions: stale sessions no longer show "access denied" but correctly prompt for login.
- Single logout instead of several simultaneous ones: an open tab past session expiry no longer triggers dozens of parallel logout requests.
- Correct queue statistics after call transfers: when an operator transfers a call and leaves the conversation, the real talk duration is now recorded and the audio file is preserved.
- Proper sorting of banned addresses: dates no longer sort as text.
- Working filters and sorting for time conditions: search and ordering on the working hours page now function without errors.
- Isolated inbound provider routing: two providers with different names but the same IP address no longer interfere — each uses its own authentication context.
- Module installation progress indicator: operations that start with an error no longer freeze the progress bar due to missing data.
- Structured denial responses: AJAX requests now receive a formatted answer with the reason, not an empty body.
⚙️ Improvements
- Graceful web-server and worker reloads: nginx now applies configuration changes without dropping requests.
- Module REST API permissions: inherited stubs no longer appear in the permissions list — only real overrides.
- Home page after login: restricted users land on their configured start page instead of an arbitrary redirect.
🧪 QA Focus
- Area: session expiry (leave a tab open for hours, refresh, verify login form without "access denied"), call transfers in queues (full duration in stats, audio file present), module operations (audit records in logs, stable installation over unreliable network), time-condition filtering (search and sort on the working hours page), inbound calls from providers sharing an IP address
- Regressions: verify UI access under different roles, confirm no duplicate logout requests, check REST API functionality for external applications
Docker
Docker Hub: https://hub.docker.com/r/mikopbx/mikopbx
docker pull mikopbx/mikopbx:2026.4.4-dev
docker pull mikopbx/mikopbx:dev