Skip to main content

Servidor DAV #

Capçalera Servidor DAV

Un servidor CalDAV i CardDAV autoallotjat i llest per a producció construït sobre Spring Boot, dissenyat per a organitzacions que necessiten sincronització confiable de calendaris i contactes sota la seva pròpia infraestructura — sense dependències de núvol, tarifes de subscripció, o dades sortint de les instal·lacions.

Llançat — 1 de Març de 2026. S’emparella nativament amb el Mòdul FM GCalendar per permetre a la teva organització allotjar els seus propis serveis de calendari d’extrem a extrem, amb zero dependència de núvol externa.

Què Proporciona #

  • CalDAV — sincronització de calendaris i esdeveniments compatible amb RFC 4791 i RFC 5545 (iCalendar)
  • CardDAV — sincronització de contactes i llibretes d’adreces compatible amb RFC 6352 i RFC 6350 (vCard)

Tots dos serveis comparteixen una capa d’autenticació unificada, una única base de dades PostgreSQL, i un únic endpoint HTTPS — un servidor per desplegar i mantenir.


Compliment de Protocol #

El servidor implementa el conjunt complet de mètodes WebDAV requerits per clients CalDAV i CardDAV:

MètodePropòsit
OPTIONSAnunci de capacitats (DAV: 1, 2, calendar-access, addressbook)
GET / PUT / DELETECRUD d’esdeveniments i contactes
PROPFINDDescobriment de propietats a profunditat 0, 1 i infinit
REPORTConsultes de calendari i multiget (RFC 4791)
MKCALENDARCreació de col·lecció de calendari (RFC 4791 §5.3.1)

Els endpoints d’auto-descobriment (/.well-known/caldav, /.well-known/carddav) i el descobriment de principals (/principals/{username}) estan implementats perquè els clients es puguin configurar amb només un nom d’amfitrió i credencials — sense entrada manual de ruta requerida.


Compatibilitat de Clients #

Provat i verificat amb:

  • macOS — Calendar.app i Contacts.app (auto-descobriment, sincronització completa, creació de calendaris)
  • iOS / iPadOS — aplicacions natives de Calendari i Contactes
  • Android — DAVx⁵ (client de sincronització compatible amb estàndards)
  • Linux — Evolution, Thunderbird, GNOME Online Accounts, KDE Kontact
  • Qualsevol altra aplicació compatible amb CalDAV / CardDAV

La compatibilitat amb vCard es gestiona automàticament: el servidor emmagatzema vCards en el seu format original i converteix a vCard 3.0 en temps de servei per a clients — com macOS Contacts i Thunderbird — que no suporten vCard 4.0.


Característiques Principals #

Sincronització

  • Detecció de conflictes basada en ETag en cada creació i actualització
  • Les actualitzacions de CTag (etiqueta de col·lecció) es propaguen immediatament a tots els clients
  • REPORT Calendar-query amb filtrat per rang de temps per sincronització parcial eficient
  • REPORT Calendar-multiget per recuperació massiva d’esdeveniments per UID
  • Suport de grups de contactes amb format compatible amb Apple

Seguretat

  • HTTPS / TLS primer — corre al port 8443 amb suport SSL/TLS complet
  • Autenticació HTTP Basic amb hash de contrasenya BCrypt (RFC 2617)
  • Aïllament de dades per usuari via control d’accés basat en rutes (/caldav/{username}/, /carddav/{username}/)

Operacions

  • Backend PostgreSQL amb versionat d’esquema Flyway — els canvis d’esquema mai requereixen ALTER TABLE manual
  • Perfils de Spring Boot per a entorns dev / prod
  • API de gestió REST per a principals, calendaris, esdeveniments, llibretes d’adreces i contactes
  • OpenAPI / Swagger UI inclòs per exploració d’API
  • Endpoint de health check a /api/health per integració de monitoratge
  • Optimització de consultes N+1 amb JOIN FETCH explícit — sense degradació de rendiment a escala
  • Neteja automàtica de registre de canvis (retenció configurable, predeterminat 30 dies)

Integració amb el Mòdul FM GCalendar #

El Servidor DAV és el backend on-premise de contrapart del Mòdul FM GCalendar. Junts formen una infraestructura de calendari autoallotjada completa:

  1. El Mòdul FM GCalendar gestiona esdeveniments dins de FileMaker, sincronitzant amb Google Calendar o directament amb el Servidor DAV.
  2. El Servidor DAV publica aquells calendaris i contactes als dispositius de cada usuari sobre CalDAV/CardDAV estàndard.
  3. Els canvis des de qualsevol dispositiu es sincronitzen de tornada a través del servidor — sense tercers al circuit.

Aquesta combinació és l’única configuració que dóna a una organització centrada en FileMaker sincronització de calendari lectura/escriptura completa en tots els dispositius amb zero dependència de núvol externa.


Visió General d’Arquitectura #

Dispositius client (macOS / iOS / Android / Linux)
        │  HTTPS (port 8443)
        ▼
  Servidor DAV (Spring Boot 3.2 · Java 17 · Jetty)
        │
        ▼
  PostgreSQL (principals · calendaris · esdeveniments · llibretes d'adreces · contactes)

El servidor usa una cadena de filtres de servlet per interceptar mètodes WebDAV abans del despatxador de Spring, el que manté la capa de maneig de protocol clarament separada de l’API de gestió REST i de Spring Security.


API de Gestió REST #

Més enllà dels endpoints de protocol, una API REST completa està disponible per a operacions administratives:

RecursEndpoints
Principals (usuaris)CRUD a /api/principals
CalendarisCRUD a /api/calendars
EsdevenimentsCRUD a /api/calendar-objects
Llibretes d’adrecesCRUD a /api/addressbooks
ContactesCRUD a /api/contacts
HealthGET /api/health

Tots els endpoints estan documentats via OpenAPI 3.0 — accessibles a /swagger-ui.html i /rapidoc.html en una instància en execució.


Requisits de Desplegament #

  • SO Host: Linux (recomanat), macOS o Windows
  • Runtime: Java 17 o posterior
  • Base de dades: PostgreSQL 15+, accessible per xarxa
  • Xarxa: Nom d’amfitrió aconseguible o endpoint VPN per connectivitat de client
  • TLS: Certificat auto-signat inclòs per desenvolupament; porti el seu propi o usi Let’s Encrypt per a producció
# Iniciar (perfil de desenvolupament, cert auto-signat)
./mvnw spring-boot:run

# Iniciar (perfil de producció + TLS)
./mvnw -Pprod,tls spring-boot:run

RFCs Implementades #

RFCEstàndard
RFC 4918WebDAV — protocol principal
RFC 4791CalDAV — accés a calendaris
RFC 5545Format iCalendar
RFC 6352CardDAV — accés a contactes
RFC 6350Format vCard
RFC 6764Auto-descobriment (endpoints .well-known)
RFC 2617Autenticació HTTP Basic

Preus #

No hi ha botiga online. Aquest lloc no ven mòduls directament. Per a compres, pressupostos personalitzats, configuracions agrupades o sol·licituds especials, si us plau contacti’ns perquè puguem discutir termes, llicenciament i opcions d’implementació.

Servidor DAV — Desplegament Base #

Desplegament d’instància única en infraestructura del client. Inclou serveis CalDAV i CardDAV, configuració HTTPS, configuració d’esquema PostgreSQL, API de gestió REST, i aprovisionament inicial de principals i col·leccions.

Preu
Desplegament base    950 €

Paquet d’Integració FM GCalendar #

Configuració i verificació de la sincronització bidireccional entre el Mòdul FM GCalendar i el Servidor DAV. Inclou proves d’extrem a extrem amb almenys un client d’escriptori i un client mòbil.

Preu
Paquet d’integració    350 €

Suport d’Implementació #

Assistència in situ o remota per a configuració de servidor, configuració de xarxa, instal·lació de certificats, i onboarding de clients per a fins a cinc usuaris.

Preu
Suport d’implementació    500 €

Suport de Manteniment #

| Tarifa | Paquet | Mode | |:|:—–|:|:—–| | 80 €/hora | Paquet 5 hores | remot | | 60 €/hora | Paquet 30 hores | remot | | 120 € | una visita in situ | — |

Visites in situ dins de l’àrea de Barcelona.


Actualitzacions #

Les actualitzacions principals tenen un preu del 50% del cost de desplegament original.

Les actualitzacions de manteniment són gratuïtes.


Garantia #

Garantia funcional permanent i il·limitada contra defectes al desplegament lliurat. La garantia roman activa indefinidament, excepte en cas de manipulació o una actualització al runtime Java subjacent, versió de PostgreSQL, o sistema operatiu que estigui fora de la matriu de compatibilitat acordada.