Ocultar la tarjeta ATF totalmente cuando todos los campos están bloqueados por modelo aplicado
Sondea modelo maestro endpoint y arreglar aplicaciónModel org ID
- Reemplazar la puerta aplicada a base de Model.source con una sonda directa de /api/security/master-model on mount; r.ok=false (409) significa el org se ri...
Opciones de pestaña de censura de puertas por limitaciones de modelos aplicadas
- Escondite EDIT MASTER MAML botón cuando org se rige por un tipo de rama (usar aplicadoModel.source en lugar de org rama de contexto poco confiableTypeID) - ...
Mark-as-read y trae de mensajes para buzones compartidos/miembros
El modo clásico ahora carga los mensajes de buzón compartidos a través de la correcta /mensages/-folder- endpoint (estaba llamando a las /conversaciones inexist...
Marca-leer para buzones compartidos y miembros
EmailController.setFlags ahora acepta un buzón opcionalId consulta param y Rutas a través de resoluciónProviderWithMailbox para que se configuran banderas de bu...
Utiliza extensionId como ID externo, no Relay node id
FreePBX devuelve el mismo id de Relay (ZXh0ZWW5W9uOg== = "extension:") para cada extensión porque el campo de identificación no está poblado. Usandolo causó tod...
Maneje IMAPInputStream en getMessage para prevenir ClassCastException
JavaMail puede devolver un IMAPInputStream en lugar de una cuerda decodificada de la part.getContent() cuando el contenido del mensaje no ha sido preaver. El lo...
Rescribe todas las consultas/mutaciones de GQL contra la introspección de esquemas en vivo
Verificó cada nombre de campo y tipo contra el esquema real de FreePBX 17. Corro completo de correcciones: Consultas: - conseguirAllExtensions: eliminar el cam...
Pas seleccionadoFolder a ThreadDetailVer así que correo electrónico: fuegos cambiados por pliegar con una carpeta válida
conversación.car se queda siempre sin definir porque la Java ConversationEntity tiene carpetaIds (texto[]) no un campo de cuerda de carpeta. Esto causó cargaThr...
Correcto nombre de campo de GraphQL para conseguirAsteriskDetails
FreePBX API devuelve "Te referías a buscarAsteriskDetails?" . renombrar la salud comprobar la consulta y su accesorio de ruta de datos en consecuencia.
Añadir encabezados XHR/Accept y análisis de respuesta de cadena al cliente de GraphQL
El mismo patrón que FreePBXTokenCache: add X-Requested-With . Aceptar: aplicación/json suprimir las respuestas de redirección HTML de FreePBX y cambiar los tres...
Sincronización de buzón de correo al buzón primario en carga
Deja caída por defecto a primer elemento de lista porque seleccionadoMailbox inicializado sin buzónId, lo que hace que el actualValue se resuelva a desnudos 'pe...
Elerar el límite de tamaño de la carga de archivo a 500MB
Spring Boot por defecto tapa piezas multipartes a 1MB, causando imagen de fondo subidas para fallar con 500 en request.getParts(). Coinado SecurityService's lím...
Errores de superficie HTTP por lo que los fallos de carga son visibles
Sustituida consola silenciosa.warn con un error lanzado en el estado no-OK, por lo que el usuario ve la razón de fallo real (estatuto y cuerpo de respuesta) en ...
Añadir Cabeceras de Acepta y respuesta de cuerda cruda que se asogue para endpoint si que si no es parado de la cuerda.
FreePBX estaba devolviendo texto/html cuando se llamaba vía clúster DNS porque el El encabezado anfitrión no coin concuerda con el PBX-HOSTNAME configurado. Aña...
Conduce entrada minimizada a través de controles de animación
Cambiar animado=...o a animate=-tabControls rompió la entrada animación: tabControls no tiene meta de destino en la montura, por lo que el botón se quedó en su ...
Corre las cadenas de alcance OAuth2 para FreePBX API
Los visdos de FreePBX son identificadores de alto nivel: 'gql' (todo Gráfico) y 'descansar' (todo REST). El formato 'gql:read' significa GQL para un módulo baut...
Exposición de puerto 8088 directamente en el servicio ClusterIP
El servicio sólo tenía la cartografía del puerto de 80-888. Servicios internos de ******************* (e.g. ficha de la API de VOIPService solicitudes) se apaga...
Fiecha de confianza pendienteCount, bajan compensaciones de clientes
Backend pendienteCount ya no está listo (condenta sesiones de SUPPORT-TICKET con mensajes más nuevos que el último visto de la propietaria). Cuando el agente se...
Añadir falla falta2ban-config ConfigMap para k1m1
Referencias de implementación fail2ban-config ConfigMap (jail.local asterisk-security.conf) pero no existía, bloqueando la cápsula en MountVolume.SetUp e impidi...
MarkAsLee después de que agente enviara tan últimaVistada
En los tickets de soporte, tanto los mensajes de visitante como agentes se almacenan bajo el el mismo sistema, por lo que la consulta de recuento no leído es mi...
Entradas de apoyo necesitan conteos de lectura sin agnóstico
Los mensajes de los visitantes en las entradas de soporte se almacenan bajo el mismo sistema que el agente autentica como, por lo que la sesión de CHAT existent...
Pasa carpeta para cargarEl botón de reentrar de hilo
cargaTídeos toma (threadId, carpeta); el botón de repintar error-estado solamente Pasó hiloId, rompiendo la construcción kamo-internal. Coincute la llamada a la...
Correcto JsonIdentityInfo propiedad de 'uniqueId' a 'id'
La entidad miembro declaró la El campo clave primaria se llama 'id'. Jackson tiró "no se puede encontrar la propiedad con el nombre 'uniqueId'" al desdorializar...
Retirar guardia de la RSS causante de hidratación desajuste; solta SockJS para el WebSocket nativo
- Hero.tsx: eliminar el tipo de verificación de la ventana alrededor de ParticleField y ParticleField ya tiene ssr:false por lo que el guardia produjo un desa...
Indicadores claros de lectura cuando se abre la conversación
ThreadDetailVer ahora despacha correo electrónico: cambiado de pliegue tras marcaConversationLea Lo logra para que MailButton vuelva a infetch el conteo de insi...
Muévete CORS a Traefik a través de kamo-middlewares, eliminar en la aplicación CorsFilter
La aplicación de CorsFilter en la aplicación de Primavera no estaba aplicando headers después de WebConfig.java fue removida. CORS se maneja ahora por completo ...
Utilícelo /public/-mainDomain-----tld. ruta que cointe con la disposición real del cubo MinIO
El getThemePath () estaba generando rutas de /domain/-tld-/Esplit-/kamosite-/kamosite-- no existen en MinIO - los archivos temáticos en vivo en el cubo público ...
Cadena de romper min-w-0 para contener desplazamiento de correo electrónico en columna de carrocería solamente
Añadir min-w-0 al contenedor exterior y contenido principal flex div para que flex niños no puede expandirse al ancho de correo electrónico min-content, que est...
Proveedores de sioneros por encima de ToolProviders
La misma causa raíz que el ChatWebSocketProvider izasta: SupportTicketWindow llamadas **************** y ChatBox llama useUnread().markAsRead(), pero ambas vent...
Añadir suprimirHydrationAdar y arreglar imágenes rotas de marcadores de posición
suprimirHydrationAdar en el .html previene el error de reacción no 418 causado por el navegador extensiones (por ejemplo, traducción, modo oscuro) mutando atrib...
Permite /dominio/sprefijo de ruta en el tema IngressRute para CORS
El tema de la configuración en theme.kamocrm.com/domain/... no fue igualado por el reglas de ruta existentes (sólo /púbidas/ y /internal/ fueron permitidas), po...
Eliminar las cabeceras de CorsFilter y desnudar las cabeceras CORS en la pasarela
WebConfig.java definió un segundo frijol CorsFilter compitiendo con CorsConfig.java's frito, arriesgándose a que la cabecera duplicada escriba. Lo eliminaron po...
Eliminar el frijol CorsFilter duplicado causando doble encabezado de Acceso-Control-Allow-Origin
El explícito frijol CorsFilter causó un segundo filtro CORS junto a Spring El soporte de CORS integrado por Seguridad (que utiliza CorsConfigurationSource). Amb...
Eliminar declaraciones debug console.log y añadir rutas faltas
Eliminar toda la tala temporal de depuración debug añadido durante el rastreo de WebSocket de ChatBox, TicketChat, MemberItem, ChatTool y useChatWebSocket; añad...
Evitar encabezado de mensajer a la expansión de la columna en direcciones largas
El niño flexible izquierdo de la cabecera no tenía ni cabeza de rap, tan largo correo electrónico irrompible direcciones en From/To/Cc obligaron a crecer su anc...
Hoist ChatWebSocketProvider por encima de ToolProviders
ToolDock (y sus ventanas de herramientas como SupportTicketWindow - TicketChat) es montados dentro de ToolProviders, que se encuentra ABOVE PresenceWrapper en e...
Drop Shadow DOM en el renderr de correo electrónico tan desbordado-x-auto incendios
Shadow DOM fue la causa raíz. Amplio contenido de correo electrónico (mesas de ancho fijo) dentro del árbol de sombra pintado más allá del huésco sin contribuir...
Alignar ChatWebSocketSocketCamino de importación de contexto para igualar al proveedor
TicketChat y ChatNotificationListener importaron el contexto a través de la 'A/app/contexts/...' alias mientras PresenceWrapper (el proveedor) lo importa a trav...
Contención de host host en la sombra de la fuerza con estilos en línea. contienen: diseño
Desbordamiento de clase en la sombra que el huésped no ganaba de forma fiable contra la sombra ':host y todo: inicial reset, tan amplio correo electrónico conte...
Desplazase amplio contenido de correo electrónico dentro de la sombra DOM, no fuera
Los intentos anteriores de añadir desbordamiento-x-auto a los antepasados DOM enciendense no podía atrapar amplio contenido de correo electrónico porque el árbo...
Utilícese getHasAttachments() para que coinpare tipo envoltorio booleano
************* es un Boolean (enero), así que Lombok genera getHasAttachments() no esHasAttachments(). Estos últimos sólo existe para booleano primitivo. Utilíce...
Expanda el escaneo del repositorio de JPA para incluir paquete de comercio
La nueva biblioteca compartida de kamo trae **************** que requiere **************** (in com.kamo.z.shared.commerce). MediaService sólo escaneado donotmod...
Restaurar importación de HashMap en ChatWebSocketController
El refactor anterior eliminó la importación de HashMap pero el mangoTyping método todavía construye un HashMap para la carga útil del evento de mecanización, ca...
Añadir min-w-0 al contenido de email div por lo que desbordamiento-x-auto fuegos
Sin min-w-0, el hijo flexible-co predeterminado min-width:auto se resuelve min-contenido, dejando que las tablas de correo electrónico amplian el div más allá d...
Eliminar la llamada de connect duplicadoStomp en sendMessage
Cuando el primer mensaje crea una nueva sesión, enSessionCreated actualizaciones accesorios que desencadena useEfect para llamar connectStomp. La llamada en lín...
Crean proactivamente consumidor NATS en creación de sesión para evitar pérdidas de mensajes
Anteriormente el consumidor de presión NATS JetStream sólo se creó cuando un cliente STOMP enviado /app/chat/suscribirse. Con DeliverPolicy.Nuevo, cualquier men...
Cerrar brecha de reconexión causando mensajes caídos en tiempo real
Retirar de la versión de uso de suscripciónEfecto deps despojos de efecto en TicketChat y ChatBox. Anteriormente, cada WebSocket reconnect desencadenó el efecto...
Permitir al usuario del sistema gestionar la marca de org y arreglar el logo auth
- Añadir bypass del usuario del sistema como primer guardia en canManageOrgBranding así que plataforma Usuario del sistema tiene control completo de marca sob...
Como lo que ves enviaste?
Cada una de estas actualizaciones aterriza en su espacio de trabajo automáticamente. Empieza gratis y verlo crecer semana tras semana.