KamoCRM

Live Change Loglog

Все функции, исправления и улучшения, размещенные как корабли. Ничто не сдерживается для запуска.

17,500
Общие изменения
5,986
Особенности
5,284
Исправления
30
Проекты
Фильтр по проекту
Все проекты17,500AIService251APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService576InitializerService329KBService151KlusterServices740MCPGatewayService251MediaService602RAGService79SecurityService1,847TranslateService62VOIPService249VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,349kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,657kamo-signer-monorepo56kamolos114
Фильтр по типу
Все типыBuild16CI523Chore774Docs3,254Feature5,986Fix5,284Other994Performance165Refactor278Revert23Style42Test160Upgrade1
April 26, 2026
FixKlusterServices

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

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

Kamo·6mo ago
FixKlusterServices

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

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

Kamo·6mo ago
FixSecurityService

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

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

Kamo·6mo ago
Fixkamo-internal

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

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

kamo·6mo ago
Fixkamo-internal

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

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

kamo·6mo ago
Fixkamo-internal

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

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

kamo·6mo ago
Fixkamo-internal

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

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

kamo·6mo ago
FixSecurityService

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

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

Kamo·6mo ago
Fixkamo-internal

Пробная мастер-модель конечной точки и исправление AppliedModel org ID

- Заменить шлюз на основе AppliedModel.source прямым зондом /api/security/master-model on mount; r.ok=false (409) управляется типом ветви — тот же самый контрол...

kamo·6mo ago
Fixkamo-internal

Gate censorship tab options by applied model constraints

- Hide EDIT MASTER MODEL button when org is governed by a branch type (use appliedModel.source instead of unreliable org context branchTypeID) - Hide ATF fiel...

kamo·6mo ago
Fixkamo-internal

Mark-as-read and message fetch for shared/member mailboxes

Classic mode now loads shared mailbox messages via the correct /messages/{folder} endpoint (was calling the non-existent /conversations endpoint). Fetching a fu...

kamo·6mo ago
FixEmailService

Mark-as-read for shared and member mailboxes

EmailController.setFlags now accepts an optional mailboxId query param and routes through resolveProviderWithMailbox so member-mailbox flags are set against the...

Kamo·6mo ago
FixVOIPService

Use extensionId as external ID, not Relay node id

FreePBX returns the same Relay id (ZXh0ZW5zaW9uOg== = "extension:") for every extension because the id field is not populated. Using it caused all extensions to...

Kamo·6mo ago
FixEmailService

Обработка IMAPInputStream в getMessage для предотвращения ClassCastException

JavaMail может вернуть IMAPInputStream вместо декодированной строки Part.getContent() - когда содержание сообщения не было предварительно придумано. The Прямые ...

Kamo·6mo ago
FixVOIPService

Переписать все запросы/мутации GQL на интроспекции живых схем

Проверяли каждое имя поля и тип по фактической схеме FreePBX 17. Полный набор исправлений: Вопросы: - fetchAllExtensions: удалите из расширения несуществующее ...

Kamo·6mo ago
Fixkamo-internal

Pass selectedFolder to ThreadDetailView so email:folder-changed fires with a valid folder

conversation.folder всегда не определен, потому что Java ConversationEntity У него есть папки (текст), а не поле строки папки. Это привело к тому, что нагрузка ...

kamo·6mo ago
FixVOIPService

Исправьте имя поля GraphQL для fetchAsteriskDetails

FreePBX API возвращает «Вы имели в виду fetchAsteriskDetails?» соответственно проверить запрос и его доступ к пути передачи данных.

Kamo·6mo ago
FixVOIPService

Добавить заголовки XHR/Accept и парсинг струнных ответов для клиента GraphQL

Тот же шаблон, что и FreePBXTokenCache: добавьте X-Requested-With + Accept: Application/json подавление HTML-ответов FreePBX и переключение всех трех сайтов выз...

Kamo·6mo ago
Fixkamo-internal

Sync mailbox dropdown to primary mailbox on load скачать бесплатно

Dropdown не попал в первый список, потому что выбранный Mailbox инициализировался без почтового ящика, в результате чего текущая ценность решается обнажить «лич...

kamo·6mo ago
FixAPIService

Увеличить размер загрузки файла до 500 МБ

Spring Boot по умолчанию колпачок многочастных частей на 1 МБ, вызывая фоновое изображение Загружается, чтобы выйти из строя с 500 в request.getParts(). Служба ...

Kamo·6mo ago
Fixkamo-internal

Поверхностные ошибки HTTP, поэтому сбои загрузки видны

Заменить немую консоль.warn на бросок Ошибка на неОК статус, чтобы пользователь видел фактическую причину отказа (статус + орган реагирования) Вместо того, чтоб...

kamo·6mo ago
FixVOIPService

Добавьте заголовки Accept + XHR и анализ ответов на исходную строку для конечной точки токена

FreePBX возвращал текст/html при вызове через кластер DNS. Заголовок хоста не соответствовал настроенному PBX HOSTNAME. Добавить Принять: приложение/json и X-Re...

Kamo·6mo ago
Fixkamo-marketing

Привод минимизированного ввода через элементы управления анимацией

Переключение aimate={...} на aimate={tabControls} нарушило запись анимация: у tabControls нет цели в очереди на монтировке, поэтому кнопка осталась в исходном п...

Kamo·6mo ago
FixVOIPService

Исправьте строки OAuth2 для FreePBX API

FreePBX - это идентификаторы верхнего уровня: gql (все GraphQL) и «Отдых» (All REST) Формат gql:read означает GQL для модуля Называется «чтение», которого не су...

Kamo·6mo ago
FixKlusterServices

Экспозиция порта 8088 непосредственно в сервисе ClusterIP

Сервис имел только порт 80→8088 отображения. Внутренние службы используют **************************** (например, токен VOIPService API) Запросы были отсрочены,...

Kamo·6mo ago
Fixkamo-internal

Trust backend pendingCount, drop client offsets (недоступная ссылка)

Backend pendingCount теперь не читается (сессии SUPPORT TICKET) С сообщениями новее, чем у последнего посетителя. Когда агент открывается билет, MarkAsRead → бэ...

kamo·6mo ago
FixKlusterServices

Добавить недостающий отказ2ban-config ConfigMap для k1m1

Ссылки на развертывание fail2ban-config ConfigMap (jail.local +) asterisk-security.conf) но его не существовало, заблокировав подставку на МаунтВолуме. Настройк...

Kamo·6mo ago
April 25, 2026
Fixkamo-internal

MarkAsRead после того, как агент отправил такой последний просмотренный аванс

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

kamo·6mo ago
Fixkamo-shared-library

Билеты поддержки требуют член-агностик непрочитанный счет

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

Kamo·6mo ago
Fixkamo-internal

Перейти папку для загрузки Thread retry button

loadThread takes (threadId, папка); кнопка восстановления состояния ошибки Прошел нить Id, нарушив камо-внутреннюю сборку. Совместить призыв к Подпись.

kamo·6mo ago
Fixkamo-shared-library

Правильная идентичность Json Информационное свойство от «уникального» до «идного»

Предприятие-член объявило @JsonIdentityInfo (собственность = «уникальный идентификатор»), но Настоящее поле первичного ключа называется «id». Джексон бросил "не...

Kamo·6mo ago
Fixkamo-marketing

Удалите SSR Guard, вызывая несоответствие гидратации; сбросьте SockJS для родного WebSocket

Hero.tsx: удалите тип проверки окон вокруг ParticleField имеет ssr:false, поэтому охранник произвел несоответствие дерева сервера / клиента (React #418) - LiveS...

Kamo·6mo ago
Fixkamo-internal

Явные непрочитанные индикаторы при открытии разговора

ThreadDetailView теперь отправляет электронную почту: папка изменена после MarkConversationRead Успешно, поэтому MailButton восстанавливает количество значков в...

kamo·6mo ago
FixAPIService

Move CORS to Traefik via kamo-middlewares, remove in-app CorsFilter

The CorsFilter @Bean in the Spring app was silently not applying headers after WebConfig.java was removed. CORS is now handled entirely at the Traefik layer by ...

Kamo·6mo ago
Fixkamo-marketing

Use /public/{mainDomain}-{tld} path matching actual MinIO bucket layout

GetThemePath() генерирует /domain/{tld}/{split}/kamosite пути, которые Не существует в MinIO — тематические файлы живут в публичном ведре kamocrm-com/, baddi3-c...

Kamo·6mo ago
Fixkamo-internal

Разорвать цепочку Min-W-0, чтобы содержать прокрутку электронной почты только в колонке тела

Добавить min-w-0 во внешний контейнер и основной контент flex div, так что гибкие дети не может расширяться до ширины содержимого электронной почты, что привело...

kamo·6mo ago
Fixkamo-internal

Поставщики хостинга выше ToolProviders

Та же первопричина, что и подъемник ChatWebSocketProvider: SupportTicketWindow звонки ********************************************** использовать Unread().markA...

kamo·6mo ago
Fixkamo-marketing

Добавить suppressHydrationWarning и исправить неработающие изображения

hydrationWarning на <html> предотвращает ошибку React #418, вызванную браузером расширения (например, перевод, темный режим) мутирующие атрибуты html между SSR ...

Kamo·6mo ago
FixKlusterServices

Разрешить префикс /domain/ path на тему IngressRoute для CORS

Конфигурация темы на theme.kamocrm.com/domain/... не соответствовала Существующие правила маршрута (разрешены только /публичные / и /внутренние /) Вернулся 503 ...

Kamo·6mo ago
FixAPIService

Удалите дубликаты CorsFilter и разберите заголовки CORS в шлюзе

WebConfig.java определил второй CorsFilter, конкурирующий с CorsConfig. Ява бобы, рискуя дублировать заголовки. Удален, поэтому существует только один CorsFilte...

Kamo·6mo ago
FixSecurityService

Удалите дубликат CorsFilter, вызывающий двойной заголовок Access-Control-Allow-Origin

Явная фасоль CorsFilter вызвала второй CORS-фильтр вместе с Spring. Встроенная поддержка CORS (с использованием CorsConfigurationSource) Оба фильтра решили шабл...

Kamo·6mo ago
Fixkamo-internal

Удалите заявления debug console.log и добавьте недостающие маршруты

Удалить все временные отладки, добавленные во время отслеживания WebSocket ChatBox, TicketChat, MemberItem, ChatTool и используйте ChatWebSocket; перенаправить ...

kamo·6mo ago
Fixkamo-internal

Предотвращение расширения колонки заголовка сообщений на длинные адреса

У левого гибкого ребенка заголовка не было min-w-0, так долго нерушимая электронная почта адреса в From/To/Cc заставили его ширину мин-контента расти Надпись (и...

kamo·6mo ago
Fixkamo-internal

Hoist ChatWebSocketProvider выше ToolProvider

ToolDock (и его окна инструментов, такие как SupportTicketWindow → TicketChat) монтируется внутри ToolProviders, который сидит над обёрткой присутствия на дерев...

kamo·6mo ago

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

Все это приходит в ваше рабочее пространство самостоятельно. Начните с бесплатного плана и прочитайте эту страницу через месяц.

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