58a2c8077d
Wraps Stalwart in EAS so iOS/Android native Mail/Calendar 'Exchange' accounts get two-way mail+calendar+contacts sync (BackendCombined: IMAP + CalDAV /dav/cal/%l/ + CardDAV, credentials pass through). - services/zpush: Z-Push 2.6.4 (AGPLv3, see LICENSE-NOTES.md) on php:8.2-apache-bookworm (trixie dropped libc-client); PHP 8 sysv sprintf fatal sed-patched; autodiscover dispatcher answers mobilesync schema, proxies outlook schema to Stalwart unchanged - prod: zpush Deployment (replicas:1, Recreate — file sync state), /Microsoft-Server-ActiveSync Ingress on mail.dezky.eu (no redirect, POST-heavy), autodiscover.dezky.eu repointed to the dispatcher, selectorless stalwart-imaps/-smtps Services (host-Stalwart is implicit-TLS only: 993/465, no plain 143/587 — verified on node1) - CI: build+deploy zpush like the other apps EAS tops out at 14.1: covers native mobile clients, NOT the Outlook mobile app (needs 16.1) and not new Outlook for Windows (no EAS).
22 lines
1013 B
PHP
22 lines
1013 B
PHP
<?php
|
|
// dezky replacement for Z-Push's backend/carddav/config.php (applied at
|
|
// image build, see Dockerfile). Same %l/local-part reasoning as
|
|
// caldav.config.php; Stalwart's CardDAV root is /dav/card/<account>/ with
|
|
// an auto-created address book named "default".
|
|
|
|
define('CARDDAV_PROTOCOL', 'http');
|
|
define('CARDDAV_SERVER', getenv('CARDDAV_SERVER') ?: (getenv('CALDAV_SERVER') ?: 'stalwart'));
|
|
define('CARDDAV_PORT', getenv('CARDDAV_PORT') ?: '8080');
|
|
define('CARDDAV_PATH', '/dav/card/%l/');
|
|
define('CARDDAV_DEFAULT_PATH', '/dav/card/%l/default/');
|
|
|
|
// CARDDAV_GAL_PATH deliberately NOT defined — no global address list in
|
|
// Stalwart; the backend disables GAL search when the constant is absent.
|
|
define('CARDDAV_GAL_MIN_LENGTH', 5);
|
|
|
|
define('CARDDAV_CONTACTS_FOLDER_NAME', '%u Addressbook');
|
|
// Safe full-comparison mode first — same reasoning as CALDAV_SUPPORTS_SYNC.
|
|
define('CARDDAV_SUPPORTS_SYNC', false);
|
|
define('CARDDAV_SUPPORTS_FN_SEARCH', false);
|
|
define('CARDDAV_URL_VCARD_EXTENSION', '.vcf');
|