Add member-level sync toggle and WebSocket sync status
- Add PUT /member/sync-toggle endpoint to batch-toggle syncEnabled on all member integrations at once - Add ContactSyncWebSocketController broadcasting aggreg...
Add Create Contact dialog with multi-tab form
Adds a fully-featured Create Contact dialog accessible via a "New" chip in the contacts toolbar. The dialog supports all contact sub-entities (emails, phones, a...
Wire SoftphonePanel to useSoftphone hook; remove all mock state; add capability guards
Send and display image attachments in chat
- SmsChatTab: read file as base64 via FileReader, pass to API, render <img> in message bubble - voipApi: add attachment params to sendSms
Add MMS attachment support — multipart send, base64 storage, image display
- RingCentralProvider: override sendSms with multipart/form-data MMS path - VoipMessageService: accept attachment bytes, store base64 data URL in attachmentUrl ...
Add useSoftphone hook with WebPhone SDK, STOMP events, and REST data loading
Add call event webhook pipeline; branch SMS vs telephony events before processing
Add capabilities, SIP credentials, and call management REST controllers
Implement RingCentral call management methods (sip, history, voicemail, presence, queues)
Extend PhoneProvider interface with call management methods; update stubs
Add OAuth callback forwarding with no-redirect RestTemplate
- Add noRedirectRestTemplate bean (HttpClient.Redirect.NEVER) so the 302 from VOIPService's OAuth callback is passed through to the browser instead of being...
Replace JWT config with OAuth connect UI for RingCentral
- RingCentralConfig: OAuth connect/disconnect button with status indicator, main phone number field, test connection (only when connected) - voipApi: add getO...
Refactor RingCentral to OAuth 2.0 Authorization Code flow
- New OAuthController: /oauth/start (returns authUrl), /oauth/callback (exchanges code, saves tokens), /oauth/status, DELETE /oauth/token - OTKValidationFilte...
Create KamoTokens schema and org_oauth_token table
- CREATE SCHEMA IF NOT EXISTS kamotokens - CREATE TABLE kamotokens.org_oauth_token with unique (org_id, provider) - DROP COLUMN jwt_key from voip_provider_confi...
Thêm OrgOAuthToken thực thể lưu trữ OAuth 2.0
- Thêm OrgOAuthToken thực thể trong KamoTokens schema (kamotokens.org oauth token) - Thêm OrgOAuthToken Reposatory với tìm thấy ByOrgIdAndProvider / xoá bởiOrgI...
Equal-height feature cards and Kazoo-aware provider descriptions
- Set height: 100% on FeatureCard motion wrapper so cards in the same row match the tallest card - Update KamoPBX description to highlight Kazoo as a carrier-gr...
Add SmsChatTab with search, emoji, attach, timestamps, quick replies
Add SMS tool button to NavTop, gate softphone + SMS on organization.isVoip
Redesign phone provider setup to match email provider format with logos, help tips, and correct nav tabs
- Rewrite PhoneProviderSetup to match EmailProviderSetup pattern: list/config view split, AnimatePresence transitions, back button with provider name in header,...
Add Personal Calendars & Contacts section to member membership-permissions tab
Add PersonalProviderSection component for member CalDav/CardDav integrations
Initial DaemonService project — Quartz jobs, NATS publishers, K8s, CI/CD
Write ContactSyncLog on calendar/contact mutations for bidirectional sync
Add Google, Microsoft, and GenericDav provider stubs with token refreshers
Add IntegrationSettingsController, IntegrationSettingsService, SyncTriggerPublisher stub
Thêm phương pháp truy vấn dựa trên mã nhận diện mã nhận diện liên lạc
Add GroupwareProvider interface, ProviderContext, and model classes
- GroupwareProvider interface defines calendar and contact book operations - ProviderContext carries runtime context for provider invocations - Model classes: P...
CalDav/CardDav Part 4 — schema indexes and email repo scan
- Add supplemental indexes on **************** and **************** via SchemaCleanupRunner (Hibernate ddl-auto:update adds the FK columns; indexes are extr...
Caldav/CardDav Part 4 — chia sẻ kho thư viện và thực thể bổ sung
- Thêm liên lạc FK để liên lạc với thực thểBook - Thêm tìm ByContactIncomrationId để người dùng CAendar Reposator - Thêm tìm ByContactInctionId để liên lạc với...
Add proxyDav route, fix forward() body guard for DAV methods, add email service URL
Thêm tìm ByUid AndContactBookId, tìm bị thay đổi Kể từ đó, tìm mục Đã xoá Từ tới Thư mục Liên lạc; thêm vào mục ByOwnerId
Thêm CalDavRler và các phương pháp DAV của LịchService
Thêm tìm sự kiện ByUid, được thay đổi sự kiện kể từ, nhận được các buổi chiều giảm từ khi Lịch. Thêm Caldav, người quản lý PPFIND, báo cáo, MKCALENDAR, PROPP, g...
Thêm tìm ByIcalUid AndUserCalendred, tìm bị thay đổi Kể từ đó, tìm mục Đã xóa Từ trước giờ
Like what you see shipping?
All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.
