Mergi la conținut
KAMOUniverse

Jurnal de schimbări

Ce e nou.

Fiecare îmbunătățire a platformei, pe măsură ce se livrează.

  1. · SecurityService

    Extract RoleRightsSyncService și adăugați criteriul de evaluare a sincronizării

    - RoleRightsSyncService: centralizează drepturile de rol sincronizare logică pentru ambele OrgRole Şi... tabele; pornire și cerere - DataLoader: delegaţi la RoleRightsSyncService.syncAll() la pornire - SecurityRoleController: Post /sync-rights declanşează sincronizarea fără repornire

  2. · kamo-shared-library

    Asigură drepturile de rol pe care DTO-urile le-au condus și adaugă sincronizarea modelelor de securitate

    - Security Roledto. from OrgRole (): enumerate all Role Right Valori de tip cu DB setările ca căutare - *************** Aceeași abordare bazată pe enum pentru rolurile implicite ale modelului de securitate - OrgRoleRight.type: adnotare explicită @Enumerated (Enumberated(EnumType.ORDINAL) - ******************* adaugă inserţia IfAbsent nativ interogare pentru pornire și sincronizare la cerere

  3. · kamo-internal

    Permite mai multe ferestre tichet de sprijin cu deduplicare ticketId

  4. · kamo-internal

    Adăugați cip de tip membru și promovați/demiteți pe Cardul de stare a membrilor, eliminați câmpul de pauză al sesiunii

  5. · SecurityService

    Adaugă criteriul de evaluare PATCH/tip de membru pentru promovarea/propulsia membrilor

  6. · kamo-shared-library

    Adăugați update-ul nativTipul de membru și asigurați-văcăîntrebăridemararepentrumembru

  7. · kamo-shared-library

    Adaugă ALLOW PROMOTING MEmberS dreapta (id 132)

  8. · kamo-internal

    Promovarea POS și ESIG de la planificare la etapa finalizată

  9. · kamo-shared-library

    Promovarea POS și ESIG de la planificare la etapa finalizată

  10. · kamo-internal

    Arată orașul și subdiviziunile în rândul geo vizitatorilor biletului

    Afișează ca "City, Region, Country (IP) " degradează grațios atunci când sunt disponibile doar date de țară

  11. · MediaService

    Expune oraș și subdiviziuni în căutare geo vizitatori

    - Extindeți recordul GeoResult cu câmpurile de orașe și subdiviziuni - Switch SupportTicketService.toDTO() to use GeoLookupService (IP-level) Lookup) în loc de geoLocationRepository, astfel orașul și Subdiviziunea este populată din blocul GeoLite corespunzător

  12. · kamo-shared-library

    Adaugă vizitatorCity și vizitatorSubdivision to Support TicketDTO

  13. · kamo-internal

    Adăugaţi adrese URL la / pagina de cont pentru conectarea profundă şi reîmprospătarea persistenţei

    Tab state este acum sincronizat cu ***************** deci link-uri la tab-uri specifice de lucru și tab-ul corect rămâne selectate pe pagina reîmprospătare.

  14. · kamo-internal

    Arată steagul vizitatorilor, țara și IP în antetul biletelor

    - Adăugaţi vizitatoriIpAddress, visitorCountryCode, vizitatorCountryName to Support TicketDTO type - Render pavilion emoji + numele țării + rândul adresei IP în TicketHeader pentru bilete de chat publice

  15. · kamo-shared-library

    Adaugă câmpurile geo ale vizitatorilor la SuportTicketDTO

  16. · MediaService

    Arată steagul vizitatorilor și locația în antetul biletului de sprijin

    - Injectați PublicChatVisitorRepositor și GeoLiteLocationRepositor în SuportTicketService - Populate visitorIpAddress, visitorCountryCode, visitorCountryName in toDTO() via geo lookup - GeoLookupService deja populează vizitatori.countryCode la crearea sesiunii

  17. · kamo-marketing

    Înlocuiește WebSocket nativ cu STOMP / SockJS în LiveSupportPanel

    - Adăugaţi @stomp/stompjs şi pachete client - Conectează-te la media. WebSocket brut la api. - După conectarea STOMP, abonaţi-vă la /topic/chat/sesiune/{ghid} şi notifică backend prin /app/chat/abonare pentru activarea releului NATS JetStream - Raspunsuri agent acum flux: MediaController -> NATS -> ChatWebSocketController -> STOMP broker -> liveSupportPanel vizitatorilor în timp real

  18. · MediaService

    Fixează chat public de la un capăt la altul în timp real prin STOMP/NATS

    - Elimina cerintele interne de la PublicChatWebSocketInterceptor astfel încât vizitatorii să se poată conecta direct folosind doar sesiunea Token - Include afișarea vizitatorilor Nume ca expeditor în ChatMessageDto astfel agent Vede cine le trimite mesaje în TicketChat - Includeţi numele expeditorului în mesajul STOMPMap transmis din abonamentul NATS astfel încât atât agentul și vizitatorii vedea numele expeditorului în mesaje în timp real

  19. · kamo-shared-library

    Adaugă numele expeditorului la ChatMessageDto pentru nume de chat suport

  20. · kamo-internal

    Auto-deschis bilet de suport popup pe notificarea NEW TICKET NATS

    Când ajunge un nou bilet de sprijin, platforma trimite acum un NEW TICKET Mesaj STOMP în plus față de Pending COUNT. SuportContContext se ocupă de ea prin instrument de expediere:deschide astfel încât fereastra de chat bilet apare automat fără ca agentul să trebuiască să navigheze către /suport.

  21. · kamo-marketing

    Adăugați / pagina de contact-confirmat cu erou animat, cronologie și CTA

    Înlocuiți mesajul de succes inline pe formularul de contact cu o primă dedicată pagina de confirmare: animat SVG semn de verificare cu spargere de particule, "Ce se întâmplă Următoarea linie a timpului în 3 paşi şi cărţile CTA. Toate cele 23 de fișiere locale actualizat cu noi contacteConfirmate chei i18n.

  22. · kamo-internal

    Adăugaţi secţiunea setări org (timp, vârsta req, steaguri conţinut, descriere, alias); eliminaţi butoanele Previzualizare/AddDomain

  23. · kamo-internal

    Redesign LabelManager

    Rescrie LabelManager.tsx cu model de citire / editare per secțiune. Repară salvarea ruptă buton (validatForm blocat salvează deoarece câmpurile de contact/companii nu au fost niciodată populate de la API). Elimină formularul global de depunere, validareForm, starea erorilor, previewMode și Butoane imprastiate Salvare. Fiecare secțiune încarcă acum date de la API pe montare, arată curat rânduri numai-citire în mod implicit, și are un flux Inline Editare/Salvare/Cancel. Toate cele șapte secțiuni (Info companie, Branding, Imagini de fundal, Informatii de contact, Etichete personalizate, Link-uri sociale) Salvați independent, fără blocare a validării câmpului.

  24. · EmailService

    Adaugă validator domeniu KamoMail pentru a bloca adresele de email cross-tenant

    Introduce KamoMailDomainValidator componentă care verifică, la nivelul de serviciu, dacă domeniul de e-mail transmis corespunde domeniului implicit verificat al org atunci când KamoMail este furnizorul activ. Injectat în PostboxProvisioningService, AliasService, și SharedMailboxSource Description.

  25. · kamo-internal

    Enforce KamoMail domeniu restricție pe cutia poștală, alias, și crearea de căsuță poștală comună

    Când KamoMail este furnizorul de e-mail, membrii pot crea doar cutii poștale, pseudonime și cutii poștale partajate utilizând domeniul implicit verificat al org. Aplicarea la trei straturi independente: frontend UI (domeniul prefix+blocare intrare cu starea dezactivată atunci când nu domeniu), proxy Next.js (furnizor paralel + verificare domeniu de securitate înainte de expediere), și Java strat de serviciu.

  26. · kamo-marketing

    Citește logoFullExt de la config.json pentru extensie dinamică logo

  27. · kamo-register

    Citește logoFullExt de la config.json; fix site.webmanifest cale către subdosarul favicon

  28. · kamo-login

    Citește logoFullExt de la config.json pentru extensie dinamică logo

  29. · kamo-internal

    Org tema de furnizare

  30. · MediaService

    Relay NATS theme provision progress to STOMP WebSocket

Universul tău te așteaptă.

Începeți gratuit în câteva minute.Adăugați produse oricând sunteți pregătit — fără migrare, fără autentificări noi.

Gratuit pentru totdeauna — nu este necesar un card de credit