Changelog
Co nowego.
Każde ulepszenie platformy, jak to wysyła.
· VOIPService
Dodaj RC webhook subskrypcyjny z uruchomieniem + 12h odnowienia
· VOIPService
Dodaj call event webhook pipeline; odgałęzienia SMS vs wydarzenia telefoniczne przed przetwarzaniem
· VOIPService
Dodaj funkcje, poświadczenia SIP i kontrolery REST zarządzania połączeniami
· VOIPService
Wdrożenie metod zarządzania połączeniami RingCentral (pacz, historia, wiadomość głosowa, obecność, kolejki)
· VOIPService
Rozszerz interfejs PhoneProvider z metodami zarządzania połączeniami; aktualizuj
· VOIPService
Dodaj możliwości dostawcy i zarządzania połączeniami DTO
· APIService
Dodaj OAuth callback przekierowanie bez przekierowania z RestTemplate
- Dodaj noRedirectRestTemplate bean (HttpClient.Redirect.NEVER) tak: 302 z oddzwonienia OAuth VOIPService jest przekazywany do przeglądarki Zamiast być śledzony przez pełnomocnika - Dodaj dedykowaną /api/voip/oauth/callback trasa zmapowana przed dziką kartą /api/voip/-, aby upewnić się, że używa forwardCallback() (no auth headers rozebrane, Nie przekierowywanie po nim)
· kamo-internal
Zamień konfig JWT na OAuth connect UI dla RingCentral
- RingCentralConfig: Przycisk połączenia/odłączenia OAuth ze wskaźnikiem stanu, Główne pole numeru telefonu, połączenie testowe (tylko po podłączeniu) - voipApi: dodaj getOAuthStatus, startOAuth, rozłączenieOOAuth; testProvider Nie bierze już ciała konfiskaty - RingCentralHelp: instrukcje aktualizacji przepływu OAuth
· VOIPService
Refactor RingCentral do OAuth 2.0 Przepływ kodu autoryzacji
- Nowy OAuthController: /oauth/start (powroty authUrl), /oauth/callback (wymiany kod, zapisuje tokeny), /oauth/status, DELETE /oauth/token - OTKValidationFilter: nie należy wykluczy /api/voip/oauth/callback (przekierowanie przeglądarki) - RingCentralProvider: użyj wstępnie naciąganego tokena dostępu, usuń JWT Bearer - PhoneProviderFactory: ładuj OrgOAuthToken z DB, automatycznie odświeżony po wygaśnięciu - DostawcaConfigController: usuń jwtKey, test wykorzystuje fabrycznie.checkHealth() - application.yml: dodać oauth-redirect-uri i oauth-success-redirect config - PhoneProviderFactPrzetest: aktualizacja dla przepływu opartego na tokenach OAuth
· InitializerService
Utwórz tabelę KamoTokens i org_oauth_token
- TRYJOWANA SCHEMA JEŚLI NIE WYKONALICZNE DZISZ - CREATE TABLE kamotokens.org_oauth_token z unikalnym (org_id, dostawca) - DROP COLUMN jwt_key z voip_provider_config, jeśli istnieje
· kamo-shared-library
Dodaj jednostkę OrgOAuthToken do przechowywania tokena OAuth 2.0
- Dodaj podmiot OrgOAuthToken w pliku KamoTokens schema (kamotokens.org_oauth_token) - Dodaj OrgOAuthTokenRepository z findByOrgIdAndProvider / deleteByOrgIdAndProvider - Usuń jwtKey z VoipProviderConfig (zastąpiony przez OAuth flow)
· kamo-internal
Karty z równymi i opisy dostawców świadomych Kazoo
- Wysokość zestawu: 100% na Cebuła ruchu FeatureCard, więc karty w tym samym rzędzie pasują do najwyższej karty - Zaktualizuj opis KamoPBX, aby podkreślić Kazoo jako platformę telekomunikacyjną klasy, rozproszoną, open-source - Przepisuj opisy RingCentral i FreePBX na stałą długość i wyraźnie różnicują każdego dostawcę
· kamo-login
Dodaj szablon ulotki promocyjne KamoCRM i skrypt generowania lalek
· kamo-internal
Przepisz SmsBox jako orkiestrator oparty na kartach z nagłówkiem styku
· kamo-internal
Dodaj SmsTemplatesTab i SmsCrmTab
· kamo-internal
Dodaj SmsChatTab z wyszukiwaniem, emoji, dołącz, znacznikami czasu, szybkimi odpowiedziami
· kamo-internal
Dodaj komponent dialki SmsNewConversation
· kamo-internal
Dodawanie danych szablonów współdzielonych
· kamo-internal
Dodaj przycisk narzędzia SMS do NavTop, softphone + SMS w organizacji.isVoip
· kamo-internal
Przeprojektuj konfigurację dostawcy telefonu, aby dopasować format dostawcy poczty e-mail z logo, wskazówkami dotyczącymi pomocy i poprawiać karty nav
- Przepisz telefonProviderSetup, aby dopasować EmailProviderSetup wzór: lista / konfiskaty podział, Przejścia AnimatePresence, przycisk z powrotem z nazwą dostawcy w nagłówku, stany ładowania / błędu, wskazówki dotyczące pomocy przesłane do panelu zewnętrznego w widoku konfiguracyjnym - Dodaj VoipProviderCard: stylizowany jak e-mail ProviderCard z logos, Active chip, Coming Soon chip dla niewdrożenionych dostawców - Dodaj VoipProviderSelector: Siatka dopasowywająca do wyboru szeregować poczwór, potwierdź dialogowy w przełączniku dostawcy - Dodaj proste angielskie komponenty pomocy dla RingCentral (krok po kroku przewodnik poprawności), KamoPBX i FreePBX - Aktualizuj telefon/page.tsx: odpowiedni tytuł "Integracja systemu telefonicznego", pełna pomocNapłytnia dla wszystkich pięciu zakładek (podstawka dostarczania, dial-plany, zaawansowane ustawienia, rejestracja urządzenia, zdrowie) - Ustawienia aktualizacjiStatusWindow: pokaż wszystkie pięć prawdziwych kart telefonów (Provider Setup, Plany Dials, Zaawansowane ustawienia, Rejestracja urządzenia, Zdrowie) zamiast starych linków zastępczych; Systemy(-y) Telefonu zawsze widoczne niezależnie od isVoip - Ustawienia aktualizacji / kart telefonicznych strony.tsx, aby użyć poprawnej karty ślimaki dopasowujące rzeczywiste zakładki
· kamo-internal
Dodaj sekcję Kalendarzi i Kontakty Osobiste do zakładki Uprawnień członkowskich
· kamo-internal
Dodaj komponent PersonalProviderSection dla członków Integracje CalDav / CardDav
· kamo-internal
Dodaj kartę CalDav / CardDav do strony ustawień e-mail
· kamo-internal
Dodaj komponent CalDavProviderSetup i podzespoły caldav
· DaemonService
Początkowa projekt DaemonService — Praca kwarcowa, wydawcy NATS, K8s, CI/CD
· EmailService
Zapis KontaktSyncLog na mutacjach kalendarzowych/kontaktowych dla dwukierunkowej synchronizacji
· EmailService
Dodaj Google, Microsoft i dostawca GenericDav z odświeżaczy tokenów
· EmailService
Wdrożenie SynlementTriggerPublisher i SyncEventListener via NATS
· EmailService
Dodaj IntegrationSettingsSAdministrator, IntegrationSettingsService, SyncTriggerPublisher stub
· EmailService
Dodaj dostawcęRegistyki

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