Add IntegrationSettingsController, IntegrationSettingsService, SyncTriggerPublisher stub
Extract resolveUserId helper, add ETag comment in KamoGroupwareProvider
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...
Add CardDavController and ContactService DAV methods for CardDAV support
Add CalDavController and CalendarService DAV methods
Adds findEventByUid, getChangedEventsSince, getDeletedEventsSince to CalendarService. Adds CalDavController handling PROPFIND, REPORT, MKCALENDAR, PROPPATCH, GE...
Tambahkan logika bisnis CalendarService dengan menulis log sinkronisasi
Gunakan ical4j pembangun dalam generateEventIcs fallback, gunakan Konstan Versi
Tambahkan * * rahasia ke envFrom penyebaran
Menyediakan GOOGLE _ OAUTH _ CLIENT _ ID / SECRET, * * * * * * * * * * * * * dan ZOHO _ OAUTH _ CLIENT _ ID / SECRET env vars dibutuhkan untuk aliran penyedia O...
Remove duplicate JPA repo scan — use parent package only
com.kamo.z.shared.email covers metadata.repos, scanning both caused BeanDefinitionOverrideException on messageLabelRepository.
Add rspamd config to K8s ConfigMap and set ddl-auto to none
The rspamd.base-url property was missing from the production ConfigMap, causing CrashLoopBackOff on deploy. Also corrects dev ddl-auto to none.
Add email signature template CRUD endpoints
REST controller at /api/email/signature-templates with: - GET /{scope} — retrieve template by org+scope - PUT /{scope} — create or update template (upsert) - DE...
Remove hardcoded WebSocket headers from email middleware
Traefik v3 handles WebSocket Upgrade/Connection headers natively. Hardcoding them broke SockJS fallback transports (xhr-streaming, xhr-polling). Now matches med...
Use @Value for RspamdConfig and make training non-blocking
RspamdConfig now uses @Value to match existing project patterns. Rspamd training failures no longer prevent the message from being moved.
Save copy to Sent folder after sending email
Transport.send() only sends via SMTP without saving to IMAP. Added saveToSent() to append the message to the Sent folder with the SEEN flag set. Applies to send...
Disable STARTTLS and auth for port 25 internal SMTP
Port 25 on internal Postfix doesn't support STARTTLS and allows relay from cluster IPs via mynetworks. Only enable auth and STARTTLS when using port 587 (submis...
Use SMTP port 25 instead of 587 for internal Postfix
Postfix only listens on port 25 inside the cluster. Port 587 (submission) is not enabled in the container.
Seperti apa yang Anda lihat pengiriman?
Semua itu tiba di ruang kerjamu sendiri. Mulailah dengan rencana gratis dan baca halaman ini lagi dalam sebulan.
