Akceptuj X-a-Token dla klientów mobilnych w OTKPreAuthFilter
Sesja na/tab id jako X-a-Token (dopasowanie) W chwili obecnej (i nie X-OTK), rozwiąż sesję nieobsłonie i ustaw To samo atrybuty żądania; nieprawidłowy token nic...
Wsparcie "nieblokuj na zawsze" zdalną zgodę
Dodaje zgodę z tytułu dzikiej karty (dozwolićwszymAll / isAlwaysAll), aby członek mógł zdecydować się na Wyświetla zewnętrzne obrazy w każdej wiadomości. Ponown...
Logo org z inline-CID (SVG->PNG) tak renderuje w Gmailu; usuwanie treści wiadomości; zachować przypadek Od strony do domeny
- FIX (bezpieczeństwo): e-maile z powiadomieniami nie mają ciała wiadomości — usunąć KomunikatPrzegląd z wzorców, księgi, próbek i przełączania ustawień. - FI...
Edytora zmienne przykładowe do szablonów powiadomień o pominiętej wiadomościach
Podgląd próbek dla MISSED_CHAT_MESSAGE i SUPPORT_TICKET_REPLY z surową vs html-escaped nadawca/tytułowe warianty używane przez organy kanoniczne.
Microsoft 365 poczta za pośrednictwem aplikacji Microsoft Graph (zero konfiguracji na pocztę e-mail)
Poczta Microsoft 365 jest teraz odczytywana/wysyłana za pośrednictwem aplikacji Microsoft Graph (Mail.ReadWrite/Mail.Send uprawnienia aplikacji) zamiast IMAP — ...
Przebudowa dla współdzielonego-lib LOAN_STATUS_UPDATE kanoniczny szablon (9fab88c)
Przebudowa dla szablonu kanonicznego współdzielonego RESUME_PORTAL_LINK
Odbuduj, aby odebrać szablon kanoniczny LOAN_DOCS_READY_LO (shared-lib)
Przestań serializować obliczany xoauth2 getter, który zepsuł MailCredentials Red cache
MailCredentials jest buczakowany w Redis (GenericJackson2Json). Dodano „isXoauth2()" Boolean getter został serializowany jako właściwość "xoauth2", ale nie ma p...
Trasę ze wszystkimi dostawcami usług w chmurze przez IMAP/SMTP z OAuth2 (XOAUTH2)
Dostawcy usług w chmurze (Microsoft 365, Exchange Online, Google Workspace, Zoho, IceWarp) Odziedziczony odczyt/wyślij od - ale demotywator nigdy Zamieszane poś...
Zgoda po stronie serwera "Wyświetla zewnętrzne obrazy"
Zastępuje klient-lokalny (lokalny (lokalStorage) zapamiętywanie wyboru na zewnątrz Z trwałym rekordem na członków. Nowy RemoteImageConsentService (fail-soft rea...
Scope KamoMail skrzynka poczta/domena do domen własnych domen (przeciek między najemcą)
Bezpieczeństwo: Uruchamiono 'SELECT e-mail Z virtual_users' (i "SELECT name FROM Virtual_domains") bez lub g scopingu, więc skrzynka pocztowa / synonim domeny z...
Persist wybrał dostawcę OAuth na oddzwonieniu, więc przestaje powracać do KamoMail
Przełączenie orgi na Microsoft 365 (lub Google Workspace / Zoho) nigdy nie utknęło: tokeny odtwarzania OAuth i tylko przewracał status w istniejącym wierszu dos...
Rozwiązuj logo powitalny z hosta motywu org, a nie apex
Logo nagłówka/stopy w wiadomościach e-mail systemowych (witalizacja/weryfikacja) zostały zbudowane jako — ścieżka apex, która istnieje tylko na Kamo Strona mark...
Nieustanna tajemnica wewnętrzna-autowa (czasowa lubra)
Zamień String.Equals na MessageDgest.is Równe opóźnienie reakcji nie może X-Internal-Auth dzielił się tajnym byte-by-by-batetem. Ogólnoflota zamiatania Wewnętrz...
Przykładowe vars do podglądu szablonu podsumowania spotkania
Dodaje przykładowy przypadek dla nowego szablonu podsumowania spotkania, tak: steward Podgląd UI renderuje realistyczną treść.
Wewnętrzny punkt końcowy do tworzenia/anulowania wydarzenia kalendarzowego członka
POST /api/internal/calendar/events (X-Internal-Auth gateed) rozwiązuje członkostwo -> Kalendarz podstawowy użytkownika -> (w razie potrzeby tworzący domyślne) i...
Naprawiono publiczne przekierowanie + zwrotne z powrotem na bramę
Poczta elektroniczna Platformy OAuth (Microsoft 365 / Google / Zoho) nie miała ważnego miejsca publicznego przekierowanie URI: przekierowanie pochodziło z hosta...
Odbuduj przeciwko ogrodzonym lib-bilo (mlos.intake beans teraz opt-in; fixes CrashLoop)
Przewód mlos-internal-auth (INTERNAL_AUTH_SECRET) do wdrożenia [skip ci]
EmailService's InternalAuthFilter osłony /api/email/templates/send + /seed-org on Internal.auth.secret, który był nierozpoczęty (zamknięty 503). Podziel się ist...
Zwrot 422 (nie 500), gdy członek nie ma skrzynki pocztowej
ListFolders i inne odczytywane punkty końcowe wyrzuciły NielegalneStateException MailContext.toMailCredentials() gdy członek nie miał poświadczeń IMAP Zaopatrzo...
Nie zapisuj transakcji NoReply wysyła do folderu Wysłanie
NoReply to adres wysyłany bez skrzynki pocztowej, ale każdy transakcyjny Wyślij nadal próbę dodaniacza IMAP do folderu Wysłanie, tworząc hałaśliwe Ostrzeżenie A...
Samonagotne konta skrzynek pocztowych z aplikacji DB (odzyskiwanie drytu)
Aplikacja DB jest źródłem prawdy, dla której powinny istnieć skrzynki pocztowe; KamoMail Konta na żywo w serwerach poczty virtual_users. Jeśli poczta DB straci ...
Lista skrzynek pocztowych API zwraca UI w kształcie litery
GET /api/email/maile zwrócił surowy podmiot (dodatkowyStatus, lastSyncedAt, Nie ma liczenia członków). Ustawienia UI czytają : ;) Status był zawsze nieokreślony...
Autoryzuj dostęp do skrzynek pocztowych opartych na przywilejach do odczytu + send-as
rozwiązanieForMailbox, którym przyznano dostęp tylko za pośrednictwem bezpośredniego przydziału MemberMailbox, Tak więc skrzynki pocztowe wynurzyły się przez ;)...
Migracja do k1m1 (klon + rejestrowanie + czasbeconfig z k1m1, drop k2m1, prosta instalacja kubectl)
Odbudowa dla aktualizacji kamo-shared-library (podpisowe szablony wiadomości e-mail signer)
Odbiera nowe szablony kanoniczne esign.signer_verification + esign.sign.signer_invite, więc nasionaForOrg może je zasiać na pierwszym wysłanie.
Bump for kamo-shared-librabrary 1.5.0 snapshot odświeżanie (katalog programów M2)
Wire DomainManager i MailboxProvisioner dla wszystkich dostawców usług w chmurze
Zamień niesupportedOperationException w każdym dostawcy chmury na każdym dostawcy chmury Prawdziwe połączenia HTTP z API administratora każdego zaplecza: - Mic...
IMAP/SMTP-backed wysyłaj, folder i wyszukiwanie przekąsów
Wyciąg wzorzec delegowania IMAP/SMTP do AbstractImapBackedCloudProvider I mają Zoho, IceWarp, Exchange, Google Workspace i Microsoft 365 To się robi. Klasa pods...
Zatercony przez IMAP MailReader dla zagłuszacza w chmurze
Zoho, IceWarp, Exchange, Google Workspace i Microsoft 365 ujawniają IMAP, Przejrzyj więc wszystkie metody MailReader dla każdego dostawcy chmury za pomocą Email...
Podawać w linii obrazu MIME części i powierzchowy metadane Content-ID
Renderuj "img src"cid:..."> w komunikatach UI poprzez ujawnienie części w linii To do odniesienia przez ciało HTML. - AttachmentInfo zyskuje zawartośćId (bez w...
Zachowaj oryginalną nazwę pliku i zawartość typu na file download
Punkty końcowe (zarówno osobiste) I kontrolery współsprawców poczty) emitowały Content-Disposition: załącznik bez parametru nazwy pliku i Content-Type: applicat...
Zdelegować z concurrecy w budowaniu miejsc pracy, a nie rozmieszczania Kubernetes
Współwadność na poziomie przepływu pracy serializowała cały rurociąg (w tym kubectl rollouts). Przenieś grupę do pracy w budowanie tylko w celu wdrożenia zadań ...
Synchronizuj members.email, gdy przypisane, zmiana lub usunięta podstawowa skrzynka pocztowa
Gdy skrzynka pocztowa została przydzielona do członka w KAMO_MAIL org, members.email Nigdy nie został zaktualizowany, co spowodowało, że EmailCredentialService ...
Znak jak odczyt dla skrzynek pocztowych współdzielonych i członowych
EmailController.setFlags akceptuje teraz opcjonalną skrzynkę pocztową Param i Trasy przez resolveProviderWithMailbox, więc flagi członkowskie-mailbox są ustawia...
Uchwyt IMAPInputStream w getMessage, aby zapobiec ClassCastException
JavaMail może zwrócić IMAPInputStream zamiast dekodowanych smyczowych z part.getContent() gdy treść wiadomości nie została wstępnie naciągnięta. Thezy, pocy i o...
Użyj getHasAttachments() aby dopasować typ owijania Boolean
- jest boolejanem (wrapper), więc Lombok generuje getHasAttachments() nie isHasAttachments(). Te ostatnie tylko Istnieje dla prymitywnego booleana. Użyj Boolean...
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.