Przejdź do treści
KAMOUniverse

Changelog

Co nowego.

Każde ulepszenie platformy, jak to wysyła.

  1. · kamo-register

    Kamo-register honoruje oprogramowanie auth logo + nazwa

    - DynamicMetaLoader: odczytuj tożsamość oprogramowania + auth selekcjonerzy z config.json, determinacja Tytuł zakładki, uparcie auth logo/name state to sessionStorage - brand.ts + ThemeLogo: zarejestruj logo automatycznie nawiązują tożsamość auth-logo (reactive) - useAuthName: zarejestrować nazwę tekstu (lądowanie + przepływ) podąża za tożsamością auth-name, Reaktywne na temat obciążenia konfiskaty; spada z powrotem do firmy

  2. · kamo-login

    Kamo-login honors software auth logo + tytuł zakładki

    - DynamicMetaLoader: odczytuj tożsamość oprogramowania + auth selekcjonerzy z config.json, ustaw zakładki Tytuł z rozstrzygniętej nazwy (authNameBrandSource), utrzymuje stan auth-logo do sessionStorage - brand.ts + ThemeLogo: login logos auto-podążać za identyfikator auth-logo (firma/oprogramowanie), Powtórnie rozwiązane na temat tematu config load; brak zmian w miejscu wywołania

  3. · kamo-internal

    LabelManager software identity UI + tytuł karty wewnętrznej

    - Informacje o firmie: nazwa oprogramowania/skrótkie nazwa + login/nazwa domeny + tab-title selectors - Branding: oprogramowanie pełne /proste przesyłane logo, nadpisywane przełączanie i na powierzchnię Selektory tożsamości (znak wodny, navpri, login/register logos) - powierzchnie przymusowo-prawne komunikowane jako zawsze firmy (dokumenty/e-mail/uwołów/etc.) - layout: ustanie wewnętrzne karty przeglądarki za pośrednictwem internalTabBrandSource

  4. · kamo-internal

    3-stopniowe wskazówki dotyczące onboardingu org (utwórz : finisz DNS - enter)

    Uogółuj bohatera pierwszegoorga do jednego panelu naprowadzania, który jest kluczowany na statusie nerki należącej do członka + DNS (od /api/security/org/my-networks): twórz — nie posiada dziecka org - uruchamiaj pierwszy biały znak org (/sieć/utwórz) dns — posiada 1, DNS nie jest zweryfikowany - konfiguracja domeny wykończenia (/setup/dns?orgId..) Wprowadź — jest właścicielem 1, DNS complete ? enter (enter-as OTK - internal. Gdy posiadają drugi org, nie widać panelu – znają liny. Oczekiwanie na DNS odzwierciedla zasadę strony sieciowej (domena celna && domainSetupComplete-false; a .kamocrm.com org nie potrzebuje DNS). Każdy etap ma własną rodzinę akcentujących (osoby/praca/crm), ikona i kopiuj; CTA jest linkiem do tworzenia/dnsów i a nawet aync Wprowadź akcję na gotowy etap. Nie jest bezpieczny (bez panelu) na dowolnym błędzie.

  5. · kamo-internal

    Podwójny program firmowo-oprogramowy + dostawa + zużycie

    - Organizacja.ts: dostarczaj identyfikator oprogramowania + selektory na powierzchni za pośrednictwem OrgContext - brand.ts: - (+ vitest, 8 przypadków) - ThemeLogo: logoSoftware/logoFullSoftware warianty - NavPri: logo navpri + tekst podążaj za selektorem logo oprogramowania wewnętrznego - BackgroundWatermark + Backdrop: znak wodny honoruje identyfikację oprogramowania (obie ścieżki)

  6. · SecurityService

    Typy wysyłane logo oprogramowania + config.json bake

    - uploadLogo: wyraźny przełącznik obiektu-klucza - Z odrzuceniem domyślnego ustawienia, aby przesłać oprogramowanie nigdy nie może ułomować firmy logo.svg - copyFolder: zachowaj przesłane logo oprogramowania na kopiowaniu szablonu - config.json: bake software identity + auth-surface sekcjonorów do logowania / rejestracji - testy: PrzesłanieLogoObjectKeyTest, buildSetraS

  7. · kamo-shared-library

    Dodaj kolumny marki białej etykiety do organizacji

  8. · kamo-shared-library

    Persist software branding pola za pośrednictwem patchOrganization whitelist

  9. · kamo-internal

    Pierwszy-org CTA bohater dla członków platformy org

    Pokaż na pokładzie bohatera na szczycie domowego wyrzutni zapraszając KamoCRM-platformowy członek (nie członek zespołu), który jeszcze nie stworzył Dziecko org, aby obrócić swoją pierwszą białą organizację. Wybitny Przycisk CTA i link "click here" zarówno w trasie, jak i do sieci/stwórz, Kopia wskazuje na navę "Mój "odgałęzień". Gated on userInfo.memberType - MEMBER + organizacja.isTopLevel; pobyty Ukryty chyba, że /api/security/org/my-networks nie potwierdzi, że nie są właścicielami dziecka Org, i zawodzi bezpiecznie (ukryty) na każdym błędzie. Podążaj za instrumentem Język projektowania paneli (podatkularny, kglass, tablica operator-ebel, dom łagodzenie, zredukowane ruchy). Struny pod domem.firstOrg.

  10. · VOIPService

    Punkt końcowy TURN-REST dla telefonu komórkowego

    GET /api/voip/turn/credentials mints efemeral coturn creds (HMAC-SHA1 over) "Wycenienie>:'memberId>' ze wspólnym statycznym-auth-secretem) tak natywny / komórkowy WebRTC może przekaźnikować przez 47.181.8.84:3478. Auth przez ten sam X-a-Token SIP Punkt końcowy używa; zwraca skonfigurowany:false (tylko STUN), gdy tajemnica jest nieobecna. Przewody KAMO_TURN_SECRET z istniejącego (opcjonalnego).

  11. · SecurityService

    Expose per-org primaryColor + logo URL na /my-sieci

    Każdy rzęd org ma teraz podstawowy Kolor (Organization.colors.colorPri, ''-prefiked Dopasować config.json) i pochodne logoUrl/logoSimpleUrl (theme.-domain>/public/public/ Logotypy i kolory obramowania hex-head.

  12. · MediaService

    Id integracja Snapshot web-chat na support visitor + ticket

    Rozwiązuje WebChatIntegration, tworzącKeyHash (włączone filtrowane, Zgodny z rozdzielczością bootstrap()/AI-prompt) raz w createSupportSession i stempluje swój id na obu PublicChatVisitor I SupportTicket dla atrybucji na stronie internetowej. Null/blank keyHash lub Brak dopasowania włączona integracja pozostawia kolumny zerowe.

  13. · AIService

    Publiczna intelicja AI do per-integracji + atrybucja sesji

    Ulepsz publiczny wału, abym zdobywca promptu systemu z per-org do Naintegrania: PublicAiChatController czyta teraz Nagłówek X-Public-Chat-Key-Hash (nieujałby) przekazywany przez APIService i Przechodzi do niego do - który rozwiązuje WebChatIntegration by hash i preferuje swój aiSystemPrompt Ustawienia AiOrg domyślnie, powrót do ogólnego monitu. Nat wt. w tym w, poty o., w tym, że Ułatwione AiChatSession jest również opieczętowane przez webChatIntegrationId for Stabilne przypisanie, które przetrwa kluczową rotację. Wydobycie wodospadu do statycznej, sprawdzonej jednostce determinacjiPrompt Pomocnik (integracyjne-winy / org-fallback / ogólne-fallback / blank Obsługa).

  14. · APIService

    GET /api/public-chat/bootstrap trasa bramowa

    Dodaj punkt końcowy bootstrap, który ponownie zażywa istniejący serwer proxyZdjasz rurociąg (waluacja klucza + pochodzenie opt-in + zakres PUBLIC_CHAT + limit stawki + X-Public-Chat-Key-Hash) i proxy do punktu końcowego MediaService bootstrap.

  15. · MediaService

    Publiczny bootstrap config resolver

    Dodaje wewnętrzny GET - który rozwiązuje a WebChatIntegiration przez X-Public-Chat-Key-Hash i zwraca jego rozwiązanie Konfiskata projektowa/zachwyt (domyślnie wypełniona przez WebChatDefaultConfig.merge Tak więc klucz bez wiersza integracji nadal renderuje jak dzisiejszy widget). Upadek z powrotem do aktywnego orgi PublicChatApiKey, gdy nie ma integracji Istnieje 404s, gdy hash kluczy w ogóle nie rozwiązuje.

  16. · MediaService

    WebChatIntegration CRUD (klucz miny + integracja, lub g-scoped)

    API zarządzania org-ucingu dla ustawień sieci Phase-2. Włączone twórz, mięczy leżące u podstaw PublicChatApiKey (takie to samo podejście key-gen jako PublicChatKeyController) obok WebChatIntegration row i Zwraca klucz surowy raz. lista/aktualizacja/delet jest org-ownership Sprawdzone; aktualizacja bije (zadażu-5) podręczną bootstrap podczas projektowaniaConfig Albo włączyć zmiany.

  17. · kamo-shared-library

    Dodaj stronę WEB_CHAT_INTEGRATION_ID atribution kolumny do odwiedzających/bilet/ai-session

  18. · kamo-shared-library

    WebChatIntegration by jednostka + repo + DTO + default konfig projektu

  19. · kamo-internal

    Dodaj punkty wejścia "Access Copilot Mobile App" na dom + NavPri

    Obie powierzchnie wysyłają zdarzenie „otwarto-interakcyjne-środek, na które NavTop słucha Aby otworzyć Centrum Interakcji na karcie Konfiguracja aplikacji mobilnej. Dom pokazuje a Tabletka oznaczona pod kontrolką tapet; NavPri pokazuje ikonę logo poniżej Pigułka próbna (oznacz po rozszerzeniu, przypyp. po zawaleniu się). Obaj zamknieni przez ALLOW_MOBILE_ACCESS w prawo.

  20. · kamo-internal

    Hasło-braj do QR, zakładka jednoliniowa, nagłówek z logo, kod 10-min

    - Członek musi ponownie wprowadzić swoje hasło (serweryfikowany przez /api/mobile-access-otk, Co miga OTK tylko na sukcesie) zanim QR zostanie ujawniony - zapobiega komuś W już podpisanym komputerze z chwytania go. - QR/OTK żyje teraz 10 minut (600s); odliczanie następnie ponownie blokuje. - Tabeta zmuszona do jednej linii; logo przesunęło się w lewo od tytułu, aby zaoszczędzić pionową przestrzeń; Usunięto pigułkę "Configuring for".

  21. · SecurityService

    POST - bramka Mobile Copilot QR

    Weryfikuje własne hasło rozmówcy (passwordEncoder.matches przeciwko sesji Użytkownik) bez zmiany czegokolwiek. Używany przez trasę BFF-mobil-accessk-otk, więc Konfiguracja QR jest wybijana dopiero po ponownym potwierdzeniu hasła.

  22. · kamo-internal

    Konfiguracja karty Mobile Access — QR do zainstalowania + autokonfiguracja Mobile Colot

    Nowa zakładka 3rd w NavTopPanel (tj. ALLOW_MOBILE_ACCESS po prawej): pokazuje markowy QR kodowanie krótkotrwałego głębokiego łącza OTK (kamocopilot://configurować), które podpisuje Członek w telefonie i domyślnie aplikacji do bieżącego org. Autoodreki OTK przed wygaśnięciem; polerowany układ MUI z podstawowym kolorem orgi. Dodawanie

  23. · kamo-shared-library

    Dodaj ALLOW_MOBILE_ACCESS (167) ogólny prawo do Mobile Copilot

    Nowy RoleRightType (usługType-null > Grupa ogólna) w "Setup Mobile" Akta interakcji-centrum dostępu. RoleRightsSyncSyncSService uzupełnia go do wszystkich ról Na wznowieniu SecurityService; pojawia się w ramach ogólnych pominięć w edytorze ról.

  24. · AIService

    Per-org Publiczne szybkie, ludzkiehand na bez dostawcy, aon Daily message cap

  25. · kamo-shared-library

    Dodaj zapytanie o liczbę użytkowników anon dla publicznej kwoty web-chat

  26. · APIService

    Zweryfikuj - PoW na granicy tworzenia sesji publicznej (wymuszonej przy obecnym ładowności)

  27. · MediaService

    Bust APIService pamięć podręczna klucza natychmiast na kluczu / przełącznik / usuwanie klucza

  28. · MediaService

    Wytrwaj tworzenie key hash na gościu zamiatowym zamiatowo + bilet na atrybucję

  29. · kamo-shared-library

    Dodaj publicznyDailyMessageCap do AiOrg Ustawienia dla anon web-chat

  30. · kamo-shared-library

    Dodaj kolumny tworzenia klawiszy do PublicChatVisitor + SupportTicket

Twój wszechświat czeka.

Rozpocznij bezpłatnie w kilka minut.Dodaj produkty, kiedy tylko będziesz gotowy — bez migracji, bez nowych logowań.

Bezpłatne na zawsze — nie wymaga karty kredytowej