Abgestandene Filter-Reset-Anrufe nach Spaltenfilter-Entfernung entfernen
Member-Antwort-Unterstützungs-Gating und Dual-Mode-Ticket Ansicht
- NavTop: zeigen SupportButton für jede Unterstützungsrecht (Agent oder Mitglied) - SupportButton: Gate jeder Dropdown-Artikel rechts - Erstellen/Ansicht-Ticket...
Unterstützungsrechte für Mitglieder-Anhänger hinzufügen (133-136)
Fügt vier neue SUPPORT-rechte für Nicht-Agenten-Mitglieder hinzu: - **************** (133) - CREATE_SUPPORT_TICKET (134) - REQUEST_WEBINAR (135) - VIEW_MY_SCHED...
Sync Rights-Button zu SecurityRoleManager für Top-Level orgs hinzufügen
Button ist nur sichtbar, wenn organisatorisch.hasParent falsch ist. Anrufe POST /api/security/roles/sync-Rechte lädt dann die Rollentabelle neu auf.
Gate Support/Einstellungen nach Rechten, Behebung von Netzwerkkopien, Laden auf Tab-Schalter, nVteiler
- Netzwerkkarte: aktualisierte Beschreibung für dynamisches Filial-Titellabel - Support-Karte: fix 404 durch Änderung href /help . /support; gated by isSupport ...
RoleRightsSyncService extrahieren und Sync-Rechte-Endpunkt hinzufügen
- RoleRightsSyncService: Zentralisiert Rollenrechte-Synchroniklogik für beide OrgRole und ************ Tische; Start und On-Demand - DataLoader: Delegierte zu...
Machen Sie Rollenspiele DTOs enum-driven und fügen Sicherheitsmodell Rechte synchronisieren
- SecurityRoleDTO.fromOrgRole(): alle RoleRightType Werte mit DB aufzählen Einstellungen als Lookup - Neue Rechte erscheinen mit NOT_SPECIFIED automatisch - *...
Revert schlechte Titel deps und Geschichte Scan, der Agent Name im Titel zeigte
Lassen Sie mehrere Support-Ticket-Fenster mit TicketId-Deduplikation
Mitgliedschaftstyp Chip hinzufügen und zur Statuskarte der Mitgliedschaft fördern/deote, Session Timeout-Feld entfernen
PATCH /membership-ähnliche Endpunkt für Mitgliederförderung/Demotion hinzufügen
native updateMemberType hinzufügen und sicherstellenTeamMemberRow-Abfragen zu MemberRepository
Support Chat UX - Namens-Updates, Titel, Benachrichtigungszahl, Datagrid
- TicketChat feuert aufVisitorNameChanged, wenn NAME_CHANGED WS Veranstaltung kommt - SupportTicketWindow sendet Tool:title mit requestorName on load und bei ...
Render System-Events als freundlicher Text im Besucher-Support-Chat
NAME_CHANGED Systemereignisse zeigen keine rohe JSON mehr in der Chatblase; Sie zeigen als zentrierte iensive Pille ("Verändert Name zu {Name]"). Andere Systeme...
AG Grid Lade-Laden-Lay statt Leerstand auf Lead-Seite anzeigen
Initialisieren Laden Zustand zu wahr, so dass das Gitter zeigt "Loading Leads"... bis der erste holen abgeschlossen ist, verhindert, dass ein Blitz von "Keine H...
Verwenden Sie getOrganizationByIdWithFeatures in AppAvailabilityInterceptor
Löst LazyInitializationException on /api/security/leads and all weitere CRM/POS-gated Pfade. Der Abfangjäger org.getFeatures() nach Abschluss der Transaktion; d...
Fügen Sie findByIdWithFeatures hinzu, um Organisation.features eifrig zu laden
JOIN FETCH verhindert LazyInitialisationException, wenn Funktionen Zugriffspunkte außerhalb einer Transaktion (z.B. in AppAvailabilityInterceptor).
Show City und Unterteilung in Ticket Besucher Geo-Reihe
Anzeige als "Stadt, Region, Land (IP) " - Nullen werden gefiltert, so dass es gefiltert wird degradiert anmutig, wenn nur Länderdaten verfügbar sind
Expose Stadt und Unterteilung in Besucher Geo-Lookup
- Extend GeoResult Rekord mit Stadt- und Unterteilungsfeldern - Switch SupportTicketService.toDTO() zur Nutzung von GeoLookupService (IP-Ebene Lookup) statt L...
BesucherCity und BesucherSubdivision zu SupportTicketDTO hinzufügen
Tab-URL-Params auf /account-Seite für tiefe Verlinkung und aktualisieren Beharrlichkeit
Tab Zustand ist jetzt synchronisiert ************ so Links auf bestimmte Registerkarten funktionieren und die richtige Registerkarte bleibt auf Seite refresh au...
Fehler in GeoLookupService bauen und NATS für Agentenmeldungen veröffentlichen
- Optional vs List Typ Mismatch in ************ - NatsMessageService in MediaController injizieren - Publish to chat.session.{guid] nach Agent erstellt eine Nac...
Aktualisierung von Locale Übersetzungen und hash [überspringen ci]
Korrekte Nachrichtenseiten in der Geschichte und behandeln Besuchernamen ändern Ereignisse
- Verwenden Sie messageType=VISITOR_MESSAGE von API, um links/rechts in der Historienlast zu bestimmen - NAME_CHANGED Systemereignis-Rendering in SystemMessage ...
Echtzeit-Chat-Lieferung, Nachrichtenseiten, Benachrichtigungen und Namenssynchronisation
- Halten Sie NATS-Abonnement am Leben auf Client Abmelden zu vermeiden, Broker Echtzeit-Lieferung - Besuchernachrichten mit messageType=VISITOR_MESSAGE in getMe...
************ verwendet Beispiel für MEMBER-Typ
Hibernate TYPE(m) = :type liefert 0 Ergebnisse, wenn an die Basis gebunden Mitgliedsklasse in JOINED-Erbschaft. Für MEMBER Typ, holen alle und filtern stattdess...
Resolve Mitglieder-Registerkarte leer durch Hibernate TYPE() Basis-Klasse-Problem
Hibernate's TYPE(m) = :type JPQL Filter liefert 0 Ergebnisse, wenn die gebunden -Parameter ist die Basis-Mitgliedsklasse (JOINED Vererbung). Dies wirkt sich auf...
Aktivieren Sie Hibernate SQL-Logging, um Mitgliederabfrage zu diagnostizieren 0
Vorübergehend aktiviert org.hibernate.SQL=DEBUG, um zu sehen, welche SQL TYPE() JPQL Abfrage generiert für den Mitglieder-Abonnenten Endpoint.
Besucherflagge, Land und IP in Ticket-Header anzeigen
- BesucherIpAddress, visitorCountryCode, BesucherCountryName zum SupportTicketDTO hinzufügen - Render Flag emoji + Landname + IP-Adresse in TicketHeader für öff...
Besucherflagge und Standort im Support-Ticket-Header anzeigen
- PublicChatVisitorRepository und GeoLiteLocationRepository in SupportTicketService injizieren - Populate visitorIpAddress, visitorCountryCode, visitorCountryNa...
Diagnostisches Protokollieren hinzufügen, umMembersAndSubscribers Endpoint zu erhalten
Logs orgId, Abfrageergebnis zählen und pro Mitglied isActive Status zu helfen diagnostizieren, warum Mitglieder Registerliste zeigt.
Tag Besuchernachrichten als VISITOR_MESSAGE Typ, fügen Sie senderName zu GET-Nachrichten hinzu
- PublicChatService: set messageType=VISITOR_MESSAGE so Frontend unterscheiden kann Besucher hallt von Agenten-Antworten zum Thema STOMP - MediaController.get...
Behandeln Sie VISITOR_MESSAGE Typ wie immer-von-them in TicketChat
Besuchernachrichten, die über PublicChatService veröffentlicht werden, tragen messageType=VISITOR_MESSAGE. Markieren Sie diese Explizit als Autor='siem' unabhän...
Überspringen VISITOR_MESSAGE Echos im LiveSupportPanel STOMP Handler
Visitor-Nachrichten werden jetzt vom Backend mit messageType=VISITOR_MESSAGE versehen. Überspringen Sie diese im STOMP-Abonnement, so dass die eigenen Nachricht...
native WebSocket mit STOMP/SockJS in LiveSupportPanel ersetzen
- @stomp/stompjs und sockjs-client Pakete hinzufügen - Verbindung zu Medien verbinden.{domain]/ws/public-chat über SockJS+STOMP statt raw WebSocket to api.{do...
End-to-End-Öffentlicher Chat in Echtzeit über STOMP/NATS
- Entfernen Sie internalAuth Anforderung von PublicChatWebSocketInterceptor damit Besucher sich direkt über ihre SessionToken verbinden können - Besucheranzei...
AbsenderName zu ChatMessageDto hinzufügen, um Chat-Display-Namen zu unterstützen
Status- und automatisch-seed benötigte Vorlagen auf der Liste aufbeeilen
- EmailTemplateController.list() akzeptiert jetzt ?status= param und filter Verwendung der vorhandenen findByOrgIdAndStatus-Abfrage - Auto-Samen erforderliche...
Auto-Open Support-Ticket Popup auf NEW_TICKET NATS-Benachrichtigung
Wenn ein neues Support-Ticket ankommt, sendet das Backend jetzt ein NEW_TICKET STOMP-Nachricht zusätzlich zu PENDING_COUNT. Der SupportCount-Kontext behandelt e...
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...
Erlauben Sie God-Mode-Nutzern, inhaberlose Orgs zur Verfügung zu sorgen; bevorzugen Sie FQDNs in der Domain-Auflösung
Triggern Sie immer Bereitstellungs-Themen auf Branding speichern; lassen Sie Backend Domain-Server-Seite lösen
Wie, was Sie sehen Versand?
Alles kommt in Ihrem Arbeitsbereich für sich. Starten Sie mit dem kostenlosen Plan und lesen Sie diese Seite in einem Monat wieder.
