Serialize attachments in WS relay and message history; allow attachment-only sends
Three bugs fixed: 1. ChatSessionSubscriptionManager was building the STOMP messageMap manually and omitting attachments, sourceLanguageId, readMemberId, msg...
Fix NPE in getChatSessions from Map.of() rejecting null nextcoder
java.util.Map.of() throws NullPointerException when nextcoder is null (no more pages). Replace with HashMap that accepts null values. Also wrap entire handler i...
Add GET /sessions/{guid}/members endpoint with display-name priority
Returns member list with name resolved via usernameAlias → fullName → alias → username, matching the same priority as the chat sessions list. This feeds ChatBox...
Fix upload 500 (missing EmbRecordState) and empty chats tab (Timestamp cast)
Defect A: ChatAttachmentService.upload omitted **************** causing a NOT NULL violation on imgs.is_active. Added the default recordState. Also hardened Cha...
Prefer usernameAlias over User.name in memberDisplayName
Switches display name priority to: Member.usernameAlias → User.name → User.alias → User.username. Also includes the paged query dispatch fix from the previous c...
Use split First/After queries for chat sessions paged endpoint
Addresses empty Chats tab by dispatching to ****************
Восстановление триггера для получения библиотеки 094e80d (MediaObjTransit @IdClass)
Добавить нечитанную трансляцию с полезной нагрузкой ACTIVITY для обновлений списка чатов
Paged chat list with previews, members, unread counts
that returns ChatListRowDto rows including last message preview, member summaries, per-session unread counts, and ownLastViewedAt.
Imaging proxy with HTTP Range support and per-member download tracking
Raise client read timeout to 120s for long messages
LibreTranslate runs CPU-only argos models — a paragraph-length chat message takes 20-30s to translate, and longer ones can push past 60s. The 8-second read time...
Cache-only bulk translate, FE handles fills
Bulk message-fetch endpoints now return only translations that are already cached and tag missing rows with needsTranslation:true. The chat UIs (kamo-internal C...
On-demand translation for chat and support messages
Captures the source language for every chat / support message and adds an optional ?lang=XX param on the message-fetch endpoints plus a per-message POST /transl...
Scope concurrency to build jobs, not Kubernetes deploys
Workflow-level concurrency serialized the whole pipeline (including kubectl rollouts). Move the group to the build job only so deploy jobs from different runs c...
Отслеживайте чат общественной поддержки сеанса GUID в Redis
Маркетинговые посетители используют /ws / public-chat-native без членства; билеты по-прежнему ссылаться на члена-заполнителя организации в качестве запрашивающе...
Увеличить ТТЛ с 90-х до 300-х, чтобы предотвратить ложное дросселирование на вкладке
Трансляция в ожидании счета + непрочитанный агент читать и посетитель отправить
**************** теперь делегаты ************************************* отражает сеансы с непрочитанными сообщениями посетителей и сокращениями, когда Агент вызы...
Восстановление, чтобы вытащить последнюю библиотеку, разделенную Камо
Выберите новый **************** запросы и Отделение SUPPORT TICKET в ****************
Магазин гео на билете при создании, скачать GeoLite
****************************************************************************************************************************************************************...
Посетители с большой нагрузкой и пропустите поиск GeoLite в списке
Конечная точка списка /api/support/tickets была запущена на странице из 20 строк: - 20 **************** звонков (N+1) - 20 звонков на GeoLookupService.lookup, к...
Добавить /ws/public-chat-native точку WebSocket вместе с SockJS
Регистрация второй конечной точки STOMP без SockJS в /ws / public-chat-native что интерфейс может подключаться к нативному WebSocket (brokerURL) без необходимос...
Трансляция непрочитанного сообщения агенту в сообщении посетителя
После того, как посетитель отправит сообщение поддержки, нажмите последние непрочитанные счета. Полезная нагрузка ******************* так агент билет-лист Обнов...
Расширить сканирование репозитория JPA, чтобы включить пакет коммерции
Новая библиотека, разделяемая Камо, приносит ******************* который требует **************************** (в com.kamo.z.shared.commerce). MediaService тольк...
Восстановить импорт HashMap в ChatWebSocketController
Предыдущий рефактор удалил импорт HashMap, но ручку метод по-прежнему создает HashMap для полезной нагрузки события ввода, вызывая Форджо строит неудачу с «не м...
Активное создание NATS-потребителя при создании сеанса для предотвращения потери сообщений
Ранее NATS JetStream push-потребитель создавался только при клиенте STOMP. Отправить /app/chat/subscribe С помощью DeliverPolicy. Новые сообщения, опубликованны...
Ретрансляционное тематическое обеспечение от основных НАТС
Match SecurityService: подписка на Dispatcher on security.theme.provision.* вместо JetStream (поток охватывает только чат).
Восстановление для обновления библиотеки с разделением на камо (удалить OrganizationType, добавить isTopLevel)
Восстановление для обновления библиотеки с разделением на камо (удалить OrganizationType, добавить isTopLevel)
Используйте PublicChatVisitor displayName для запроса Имя посетителя
Инициированный посетителем запрашивающий жёсткий код билетов члену системы org, поэтому DTO всплывало имя владельца организации в колонке Запросителя. падение Н...
Экспозиция города и подразделения в гостевом геопоиске
- Расширение георезультатной записи с полями города и подразделения - Switch SupportTicketService.toDTO() для использования GeoLookupService (IP-уровень) Поиск)...
Создайте ошибку в GeoLookupService и добавьте NATS для сообщений агентов
- Исправить несоответствие типа списка в **************** Введите NatsMessageService в MediaController Опубликовать на chat.session.{guid} после того, как агент...
Real-time chat delivery, message sides, notifications, and name sync
- Keep NATS subscription alive on client unsubscribe to avoid breaking agent real-time delivery - Tag visitor messages with messageType=VISITOR_MESSAGE in getMe...
Показать флаг посетителя и местоположение в заголовке билета поддержки
Введите PublicChatVisitorRepository и GeoLiteLocationRepository в службу поддержки Заселить посетителяIpAddress, VisitorCountryCode, VisitorCountryName в toDTO(...
Отметьте сообщения посетителей как тип VISITOR MESSAGE, добавьте имя отправителя в сообщения GET
- PublicChatService: установите messageType=VISITOR MESSAGE, чтобы интерфейс мог различать Посетитель перекликается с ответами агентов на тему STOMP - MediaCont...
Исправьте сквозной публичный чат в режиме реального времени через STOMP/NATS
- Удалить требование внутреннего аудита от PublicChatWebSocketInterceptor Таким образом, посетители могут подключаться напрямую, используя только свой сессионны...
Three support/chat issues — NATS relay, auto-popup, topic fallback
1. Switch SupportNotificationService and SupportStompRelayController from JetStream to core NATS — the CHAT_MESSAGES stream only covers chat.> so JetStrea...
Write contact form description as chat message on public ticket creation
The description was only stored on the ticket entity and never appeared in the chat window. Added writeTextMessage() helper and call it after the system event s...
Подобно тому, что вы видите доставку?
Все это приходит в ваше рабочее пространство само по себе. Начните с бесплатного плана и прочтите эту страницу снова через месяц.
