Live Change Loglog

Посмотрите, что мы строим в реальном времени. Все функции, исправления и улучшения отправляются через платформу.

17,933
Общие изменения
4,614
Особенности
4,543
Исправления
32
Проекты
Фильтр по проекту
Все проекты17,933AIService110APIService138BillingService133ConversionService85DaemonService107DocsService189ESigService78EmailService373InitializerService300KBService74KlusterServices546MCPGatewayService43MediaService461RAGService61SecurityService1,523TranslateService45VOIPService173VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,579kamo-login319kamo-marketing585kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,322kamo-signer-monorepo50kamolos102
Фильтр по типу
Все типыBuild24CI523Chore670Docs226Feature4,614Fix4,543Other6,781Performance136Refactor274Revert23Style48Test70Upgrade1
April 27, 2026
Fixkamo-internal

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

Функция проверки флага (isDocsEditor → isDocs → hasFeature DOCS) возвращался ложным, потому что функции организации используют устаревшие типы ключей. Кнопка те...

kamo·4mo ago
Fixkamo-internal

Удалите фильтры полевого уровня Datagrid и плавающий ряд фильтров

Отключили все колоночные фильтры и вводную строку плавающего фильтра, чтобы Сетка показывает только заголовки колонок и строки данных. Также убрали фильтры пане...

kamo·4mo ago
Fixkamo-internal

Переместить кнопку Upload в панель инструментов DocManager

Триггер загрузки был только в реквизите действий страницы /doc/manager. Это делает его невидимым, когда DocManager встроен в другие страницы. перенесенный Кнопк...

kamo·4mo ago
Fixkamo-internal

Разрешить загрузку опций для прокрутки во встроенном DocManager

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

kamo·4mo ago
Fixkamo-internal

Исправьте ошибку подачи 400 и добавьте подзадачи связи с парамами URL

Исправить двойное? ошибка в MediaStream, где feedEndpoint уже содержал запрос парамс, но приведённый приём ?page=... вместо &page=..., вызывающий Неправильный U...

kamo·4mo ago
Fixkamo-internal

Сделайте «All Leads» реальным пунктом меню с иконками в фильтре агентов

- Заменить элемент с пустым значением на ALL , чтобы выпадал Никогда не показывается пустым, когда все лиды выбраны Добавить групповую иконку ко всем лидерам...

kamo·4mo ago
FixDaemonService

Потребляйте *** секретно, чтобы X-Internal-Auth соответствовал службам ниже по течению

DaemonService -> Конверсионная служба ********************** 401 Unauthorized возвращается, потому что DaemonService Заголовок X-Internal-Auth от INTERNAL AUTH ...

Kamo·4mo ago
Fixkamo-shared-library

Use @CreationTimestamp(source=DB) on ****************

The DB is the single source of truth for timestamps in this codebase. The canonical Hibernate pattern is @CreationTimestamp(source = SourceType.DB), which makes...

Kamo·4mo ago
Fixkamo-shared-library

Let DB fill **************** via @Generated(INSERT)

INSERTs were failing with: null value in column "date_created" violates not-null constraint @ColumnDefault only declares the DB-side default for new rows; Hi...

Kamo·4mo ago
Fixkamo-asterisk-support

Drop the [from-internal-custom] _X. catch-all that broke softphone calls

The catch-all exten => _X.,1 in [from-internal-custom] was intercepting every internal dial — softphones started reporting "phone is not registered" / calls wou...

Kamo·4mo ago
FixConversionService

Enable JPA repos for commerce + email + dao.repositories packages

ConversionService new pod CrashLoopBackOff with the same error DaemonService hit earlier: Parameter 0 of constructor in **************** required a bean of ...

Kamo·4mo ago
FixAPIService

Carve /api/voip/recordings/** out of the wildcard VOIP forwarder

The /api/voip/** catch-all in APIGatewayController was shadowing the dedicated VoipRecordingUploadController POST /api/voip/recordings/upload mapping when Sprin...

Kamo·4mo ago
Fixkamo-asterisk-support

Write managed config files 0644 so the asterisk daemon can read them

The kamo-asterisk-support pod runs as root and writes to host-mounted **************** Asterisk inside the FreePBX pod runs as user "asterisk" and could not rea...

Kamo·4mo ago
Fixkamo-asterisk-support

Используйте Envsubst-совместимый синтаксис \${VAR} в шаблоне конфигураций + повторное воспроизведение на устаревших заполнителях

CrashLoopBackOff с ошибкой конфигурирования: API KEY отсутствует или слишком коротка потому что в шаблоне конфигураций используются буквальные API KEY марке...

Kamo·4mo ago
Fixkamo-asterisk-support

Drop unused watcher import

uploader.go only uses CallBatch (declared in grouper.go in the same package), not anything from internal/watcher directly. Go rejects unused imports.

Kamo·4mo ago
FixDaemonService

Включить репозитории JPA для торговли + электронная почта + пакеты dao.repositories

DaemonService разбился о стартап с: Параметр 0 конструктора в **************** необходимый Блюдо типа ****************, которое невозможно найти. Недавно добав...

Kamo·4mo ago
FixVOIPService

Захват нового ExtNumber в качестве окончательного захвата лямбды в контроллере MemberVoipConfigController

newExtNumber условно переназначен внутри if (isVoipEnabled & & ...) Блок, что делает его не совсем окончательным. Блок синхронизации TeamMember читает лямбда Op...

Kamo·4mo ago
Fixkamo-internal

Обнаружение голосовой активности для обхода отсутствующего типа TS DOM

voiceActivityDetection является действительным свойством WebRTC MediaTrackConstraints. отсутствует в DOM-либе TypeScript, вызывая ошибку типа во время сборки.

kamo·4mo ago
April 26, 2026
FixKlusterServices

Настройте STUN, чтобы ICE браузера мог выполняться двунаправленно

Двусторонние вызовы браузер-браузер, подключенные на уровне SIP, но не имеющие аудио в любом направлении. Работала голосовая почта (one-way Asterisk → браузер) ...

Kamo·4mo ago
Fixkamo-internal

Живой звук, который выживает при перебоях нагрузки, центрированный спиннер, исходящий рингбек

Три согласованных исправления для входного звукового пути: 1. AbortError on remoteAudio.play() (видимая на консоли) «Запрос на игру был прерван новым запросом ...

kamo·4mo ago
Fixkamo-internal

Hangup tears down ALL live sessions, not just the primary

Self-call edge case left a session leaked: dialing your own extension creates an outbound session, then Asterisk loops the call back as a second inbound session...

kamo·4mo ago
Fixkamo-internal

Instant connecting feedback on outbound dial

Same problem the inbound Answer button had: clicking Call kicked off the SIP INVITE round-trip (1-3 seconds) but the button kept its idle "Call" appearance the ...

kamo·4mo ago
Fixkamo-internal

Подключение анимации + аудио, которое на самом деле играет + разблокировка рингтона

Три согласованных фикса для пути входящего вызова: 1.Визуальная обратная связь при принятии. Щелчок Ответ оставил обе кнопки отзывчивый, но не отзывчивый — пер...

kamo·4mo ago
Fixkamo-internal

Маунт SoftphoneProvider над ToolDock, чтобы окна инструментов могли читать

Всплывающее окно Softphone разбило страницу с надписью «Эта страница не могла загрузиться» потому что окна инструментов устанавливаются внутри ToolDock, который...

kamo·4mo ago
Fixkamo-internal

Используйте реквизит размера сетки, чтобы AV панели заполняли строку

Сетка MUI v7 основана на флексбоксе, поэтому я использовал GridColumn sx был нерабочим — предметы отображались на их естественной ширине и оставляли пустыми Про...

kamo·4mo ago
Fixkamo-internal

Migrate stale ringtone ID по умолчанию

Если сохраненные AV предпочтения пользователя ссылаются на рингтон, который больше не существует в каталоге (например, «классика» до того, как каталог был Обрез...

kamo·4mo ago
Fixkamo-internal

Цифры Dialpad теперь регистрируются на сенсорных устройствах

Кнопки dialpad, называемые e.preventDefault(), как в OnTouchStart, так и OnTouchEnd. Это останавливает браузер от запуска синтетического события щелчка что след...

kamo·4mo ago
FixKlusterServices

Хостинг браузера SIP WSS на internal.kamocrm.com (реальный сертификат)

Браузеры отказались от подключения к WebSocket **************** с близким кодом 1006, потому что Traefik обслуживал свою самоподписанную сертификацию по умолчан...

Kamo·4mo ago
Fixkamo-internal

Отдельное присутствие в мире для маркетинга в чате против участников

Публикация Билеты на виджет чата сохраняют заполнитель в качестве запрашиваемого; используйте только Присутствие СМИ для этих строк. Внутренние и другие билеты ...

kamo·4mo ago
Fixkamo-marketing

Периодическое сердцебиение присутствия STOMP для общественной поддержки

Обновите Redis TTL для публичного присутствия на сессии, чтобы агенты видели точное состояние в Интернете.

Kamo·4mo ago
Fixkamo-internal

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

Запросить сеанс публичных чатов GUIDs при наличии снимка; лечить онлайн, если Сессия или участник запроса подключены. Обработка конверта и СеансGuid deltas on /...

kamo·4mo ago
FixMediaService

Отслеживайте чат общественной поддержки сеанса GUID в Redis

Маркетинговые посетители используют /ws / public-chat-native без членства; билеты по-прежнему ссылаться на члена-заполнителя организации в качестве запрашивающе...

Kamo·4mo ago
FixVOIPService

Не стирайте задание участника на синхронизацию от поставщиков, которым не хватает метаданных

**************************** безоговорочно переписанный PhoneExtension.assignedMemberId с любым возвратом провайдера. FreeBX (и любой провайдер, который не отсл...

Kamo·4mo ago
Fixkamo-internal

Показать имя провайдера в режиме просмотра + собственное расширение в ред

Два бага на **************** 1. Режим просмотра сбросил необработанный UUID — «Instance 32f520b0-347a-...» — потому что Список экземпляров был загружен только ...

kamo·4mo ago
Fixkamo-shared-library

Serialize ExtensionDto.assignedMemberId в виде строки

переполнение безопасного целого диапазона JS (например, 1168485658174423046 туда-обратно как 1168485658174423000 как только номер JSON попадает в браузер. фронт...

Kamo·4mo ago
FixKlusterServices

WebRTC выживет после перезапуска

Предыдущий подход (http custom.conf с [общим] override) не На самом деле вступает в силу, потому что INI-парсер Asterisk не чтит множественные [Общие] разделы в...

Kamo·4mo ago
FixKlusterServices

Включить встроенный HTTP-сервер Asterisk на :8089 для WebRTC /ws

Транспортный маршрут Chan pjsip 'protocol=ws' поверх res http websocket Что, в свою очередь, требует запуска встроенного HTTP-сервера Asterisk. The FreePBX 17 п...

Kamo·4mo ago
FixSecurityService

Приоритет реального имени / фамилии пользователя для отображения

usernameAlias - это функциональная ручка входа (часто равная имени пользователя), Не отображаемое имя. Настоящие человеческие имена живут на User.name (EmbNameF...

Kamo·4mo ago
Fixkamo-internal

Scope Добавить свинцовый свиток и нижний колонтитул в область контента

Форма использовала minHeight: 100vh внутри родителя. calc (100vh - 56px), заставляя внешнюю полосу прокрутки, даже когда контент подходит. В экшн-баре также исп...

kamo·4mo ago
Fixkamo-internal

Умный многоколонный макет для формы Add Lead

Перестройте страницу в сетку верхнего уровня, чтобы разделы составляли горизонтально. Вместо растяжки отдельных полей: - Market & Assignment использует 3-цветн...

kamo·4mo ago
Fixkamo-internal

Использование /api/security/members/names для разрешения имени назначенного члена

Фильтры конечных точек для активных членов команды, отсутствуют Задания членам базы или неактивным членам. Переключитесь на имена, которые возвращает всех члено...

kamo·4mo ago
Fixkamo-internal

Полная ширина Добавить форму свинца и клиренс для липкого футера

Бросьте 1200px max-ширину на /leads/new, чтобы форма охватывала область страницы. и ударная нижняя обшивка, чтобы липкая панель действия больше не перекрывала П...

kamo·4mo ago
FixSecurityService

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

Приоритет: member.usernameAlias → user.name.formatFull() → user.alias → user.username

Kamo·4mo ago

Как вы видите судоходство?

Каждое из этих обновлений автоматически попадает в ваше рабочее пространство. Начните бесплатно и смотрите, как он растет неделю за неделей.

Начните бесплатно навсегдаПосмотреть цены