60s OTK TTL do spotkań z oknami, niezależne zaproszenia do czatu / e-mail, które nie blokują na zapleczu
ROOT CAUSE: OTK miał 10-sekundowy TTL. Do czasu, gdy strona kamo-spotet załadowane wszystkie swoje aktywa i branding/overrides.js uruchomiły się, aby potwierdzi...
Prawidłowo zamknij nazwę wyświetlacza poprzez config override + obserwator mutacji DOM
Trójwarstwowe podejście, aby zapewnić zablokowanie nazwy dla uwierzytelnionych użytkowników: 1. Flaga podtorowa "kamo-meet-authenticated" przetrwała przekierowa...
Wysyłaj zaproszenia do czatowania za pośrednictwem istniejącego interfejsu API sesji czatu, zaproszeń e-mailowych za pośrednictwem multipart do EmailService
Czatowe zaproszenia: tworzy/udostaje sesję czatu za pośrednictwem POST /api/media/sessions/chat Następnie wysyła zaproszenie na spotkanie jako wiadomość tekstow...
Użyj getServerName() zamiast getHeader (Host) dla oryginalnej rozdzielczości hosta
ForwardedHeaderFilter zużywa X-Forwarded-Host i dostosowuje getServerName() W związku z tym, podczas gdy getHeader (Host) zwraca surowy Host HTTP, który może by...
Zablokuj nazwę wyświetlania za pomocą natywnego read MeetOnlyName config dla uwierzytelnionych użytkowników
- Sidecar config.js teraz ustawia readlyOnName:true, gdy użytkownik ma - plik cookie lub JWT w adresie URL strony (wykopywany przez nagłówki polecania/kobieli...
Send chat invites to correct WebSocket topic /topic/chat/incoming/{memberId}
Was publishing to /topic/chat/member/{id} but kamo-internal subscribes to /topic/chat/incoming/{id}. Also fixed Member entity field access **************** inst...
Przekaz wszystkie pola spotkań (sendChatInvite, sendEmailInvite, customMessage, roomAlias, joinUrl) do backendu
Trasa Next.js API rozbierała się do Czaku zaprosića, sendEmailInvite, Zjaszna i pokójAlias – tylko w predaż pokojuName i zapraszamMemberId. Backend nie otrzymał...
Wygeneruj Prosody JWT z sesji OTK i przekierowanie z ?jwt dla odpowiedniego moderatora
OTK teraz: 1. Walidaty OTK poprzez wagon boczny - otrzymuje sesję (członek Id, displayName itp.) 2. Zapisuje nazwę wyświetlania do localStorage 3. Połączenia /a...
Nakładaj org nav kolor na całą wstępnie mecze lewą kolumnę, a nie tylko pasek na pasku narzędzi
Target .premeeting-screen (pojemnik o pełnej wysokości) i jego zawartość Dzieci panelowe zamiast generowanych nazw klas. Również pokryć w ramach mechtingu Skrzy...
Prześlij adres IP i User-Agent do backendu dla dokładnego logowania do aktywności konta
Trasy Next.js API nie były w przypadku X-Fored-For, X-Real-IP, lub Nagłówki User-Agent do backendu Java, powodując, że aktywność konta jest logowana Wewnętrzne ...
Użyj HTTP na port 80, aby spełnić adres URL usługi, aby dopasować inne usługi
Punkt końcowy HTTPS na 8443 powoduje niedopasowanie SSL podczas routingu Przez wewnętrzny DNS K8s. Wszystkie inne usługi korzystają z HTTP w porcie 80.
Usuń ograniczenie maxWidth z zakładek ustawień meet, aby wypełnić obszar zawartości
Pokaż MeetingDialog na spotkania dla członków zamiast pominięcia bezpośrednio
Zarówno MemberItem (centra interakcyjne) jak i ChatBox (okna narzędzia do czatowania) Otwórz MeetingDialog z wstępniebranym członkiem docelowym, umożliwiając Uż...
Trasa spotyka się z interfejsem API przez APIService zamiast bezpośredniej usługi MediaService
Istniejąca trasa meet/create wykorzystuje forwardToApi (APIService), który Proxy na MediaService. Nowe trasy konfig / otchłań muszą podążać To sam wzór do pracy...
Zablokuj wejście nazwy wyświetlania dla uwierzytelnionych użytkowników na ekranie wstępnie połączonym
Uwierzytelni członkowie (przyjazd przez OTK) otrzymują swoje imię wstępnie wypełnione i Zablokowane — wejście jest ustawione na readly z wyłączonymi punktami. M...
Użyj względnych adresów URL BOSH/WS w config.js, dodaj OTK auth z nazwą wstępną napełnianiem, ładuj org CSS dla kolorów nav
Trzy poprawki: 1. adres URL config.js BOSH zmieniony z adresu klastra-wewnętrznego na adres względny /http-bind (inx proxy do Prosody). WebSocket używa nagłó...
Dodaj dnsPolicy ClusterFirstWithHostNet do JVB StatefulSets, aby hostNetwork kapsuły mogły rozwiązywać klaster DNS
Przenieś nowy przycisk Tab po Czat Now jako tylko ikona, usuń zduplikuj link Notatek
Nowa Tab jest teraz przyciskiem ikony (bez etykiety) umieszczonym po prawej stronie czatu Now. Notatki usunięte z NavTop, ponieważ jest już w NavPri.
Włącz nginx SSI i kopiuj brakujący HTML zawiera pliki (head.html, base.html, fonts.html, body.html, plugin.html)
Meet Meet wykorzystuje nginx Server Side Zawiera do komponowania index.html Wiele częściowych plików HTML. Bez włączonego SSI i dołączone pliki Obecna, strona r...
Użyj poprawnego adresu URL MediaService (https port 8443) dla meet.service.url
Dodaj wyraźne adnotacje JsonProperty do pól widoczności w obszarze Utła. szt. AI
Zadość: Jackson serializuje/deseria aiEnabled, aiVisibleToPublic, aiVisibleToMembers, aiVisibleToTeamMembers z poprawnymi nazwami pól.
Zapobiegaj nieskończonej pętli render w MeetingDialog spowodowanej domyślnymi odniesieniami do tablicy prop
useEffect miał preselectedMembers (domyślnie do []) jako zależność, Tworzenie nowej tablicy na każdym render i wyzwalanie nieskończonego setState Pętla. Naprawi...
Dopasuj kolor przycisku CHAT do ikony spotkania za pomocą zmiennej CSS --color-primary
Zamień przestarzały InputProps z slotamiProps dla kompatybilności MUI 7 w MeetingDialog
Utwórz czat Teraz ikona biała, zsynchronizuj odznakę e-mail z listą wiadomości, użyj CSS kolorowego imieszka do kolorów motywu
- NavTop: zmień kolor ForumIcon na biały, aby pasował do etykiety Chat Now - MessageBrowser/MailButton: współrzędne WebSocket email odświeżanie wiadomości za po...
Referencje - zamiast nieistniejących łaciczek w rozmieszczeniu Prosody
Uproszczenie korzystania z otwarcia OTK do bezpośredniego generowania OTK i otwierania okna spotkania
Punkty końcowe z poczwórki API jeszcze nie istnieją - pomiń rekord spotkania Tworzenie na razie. Dodaj obsługę błędów do wszystkich obsługi kliknięć, aby zapobi...
Ustaw scenę AppType.MEET do kompe koniecznej, aby wyświetlał się w FeaturesManager
Ustaw etap ServiceType.MEET na COMPLETTED, aby pojawił się w funkcjach
Usunąć nieistniejący favicon.svg i connection_optimization z Dockerfile COPY
Dodaj MEET do map ikon i kategorii menedżera i osłony ChatBox Przycisk Meet z zaznaczenie jest
Użyj systemu kompilacji i dodaj .dockerignore do Meet Meet Docker build
Meet Meet Meet wykorzystuje make/webpack, a nie npm build. Dodano --legacy-peer-deps W przypadku konfliktów związanych z uzależnieniem rówieśników i .dockerigno...
Dokonaj checkboxów widoczności i Train AI przełączaj niezależne kontrole
Kontrole osób niewidoczności (członkowie, członkowie zespołu, publiczni), którzy mogą uzyskać dostęp do artykułu W KB UI. Tren AI jest oddzielnym przełącznikiem...
Zachowaj upstream X-Forwarded-Host zamiast nadpisać własnym Hostem
Gdy serwer proxy (Next.js) ustawia X-Forwarded-Host na przeglądarkę Oryginalny host, APIService teraz zachowuje go zamiast nadpisowowego z jego Własny nagłówek ...
Użyj wewnętrznego adresu URL K8s do routingu API, aby naprawić przesyłanie awatarów dla orgs nie-KamoCRM
Zasrzędnik API był komputerowymi zewnętrznymi adresami URL (https://api.-domain) dla każdego orgi, To tylko rozwiązanie dla KamoCRM. Teraz używa API_SERVICE_URL...
Re-fetch notatki po utworzeniu / aktualowaniu, aby wyświetlić odszyfrowane treści w podglądzie
Zaplecze powraca zaszyfrowane treści/contentPlain w odpowiedziach POST/PUT, Unieżytek NoteCard wyświetlał szyfrogram do momentu odświeżenia strony. Teraz Po każ...
Usuń wczesne zwroty martwego kodu, który wyłączy system SchemaCleanupRunner
Wyłącz wszystkie zachowania auto-link w edytorze KB, aby zapobiec błędowi pasty-as-hiperlink
LinkExtension singleton z ?lexkit/editor zachowuje wewnętrzną osobę obsługującą pasty Stan między naliczania komponentów. Wyłącz autoLinkUrls, autoLinkText i li...
Zapobiegaj przeciekowi rozszerzenia łącza łącza KB między tworzeniem artykułu
Przenieś rozszerzenia Lexical z jednostków poziomu modułu w funkcję fabryczną Wywołane przez useMemo na wierzch zamontowanie komponentów, dzięki czemu każdy now...
Jak to, co widzisz żeglugę?
Każda z tych aktualizacji automatycznie ląduje w miejscu pracy. Zacznij za darmo i obserwuj, jak rośnie tydzień po tygodniu.