Všechny návody

Připojení CalDAV kalendáře

  • Uživatelské jméno a heslo

CalDAV je otevřený standardní protokol pro přístup ke kalendářům přes internet. Podporuje ho mnoho služeb, například Fastmail, Nextcloud, SOGo, Radicale, Baikal nebo Synology Calendar.

Postup

  1. Připravte si údaje CalDAV

    Před připojením si musíte zjistit údaje o svém CalDAV serveru. Obvykle je najdete:

    • v nápovědě nebo dokumentaci svého poskytovatele,
    • na stránce nastavení účtu,
    • v e-mailu, který vám poskytovatel poslal při registraci.

    Budete potřebovat:

    1. Adresu serveru – často stačí samotná adresa serveru, např. cloud.example.com, přesnou cestu ke kalendářům zkusíme dohledat sami. Jinak zadejte úplnou URL CalDAV, např. https://example.com/dav.
    2. Uživatelské jméno – obvykle vaši e-mailovou adresu nebo uživatelské jméno účtu
    3. Heslo – heslo k účtu nebo heslo pro aplikaci

    Údaje pro Fastmail, Nextcloud, SOGo a Synology Calendar najdete níže v části Oblíbení poskytovatelé CalDAV.

  2. Přejděte na stránku Kalendáře

    V SyncMyDay klikněte v menu na Kalendáře, nebo přejděte přímo na stránku Kalendáře.

  3. Klikněte na „Jiný CalDAV“

    Najděte dlaždici Jiný CalDAV a klikněte na ni.

  4. Zadejte přihlašovací údaje CalDAV

    Vyplňte formulář údaji, které jste si připravili:

    • Adresa serveru – adresa serveru nebo přímo URL CalDAV, například:
      • https://caldav.fastmail.com
      • https://nextcloud.example.com/remote.php/dav
      • caldav.example.com (https:// přidáme automaticky)
    • Uživatelské jméno – obvykle vaše e-mailová adresa (např. vy@example.com) nebo uživatelské jméno
    • Heslo – heslo k účtu nebo heslo pro aplikaci (pokud ho váš poskytovatel vyžaduje)
    • E-mail (nepovinné) – zobrazí se u kalendáře, pokud se liší od uživatelského jména

    Když do pole E-mail zadáte adresu poskytovatele, pro kterého máme vlastní formulář, nabídneme vám přepnutí na něj. U adresy na vlastní doméně zkusíme CalDAV server dohledat a jeho adresu doplníme, pokud jste ji ještě nevyplnili.

  5. Nechte SyncMyDay najít kalendáře

    Klikněte na Najít kalendáře. SyncMyDay přitom:

    1. ověří, že je server dosažitelný přes HTTPS,
    2. přihlásí se vašimi přihlašovacími údaji,
    3. vyhledá dostupné kalendáře.

    Obvykle to trvá několik sekund.

  6. Vyberte kalendář

    Uvidíte seznam kalendářů dostupných na vašem CalDAV serveru. Vyberte ten, který chcete synchronizovat, případně upravte jeho název a klikněte na Dokončit nastavení. Vybraný kalendář můžete později změnit v jeho detailu přes Upravit.

    Typicky tu uvidíte například tyto kalendáře:

    • Osobní – váš hlavní kalendář
    • Práce – pracovní události
    • Rodina – sdílený rodinný kalendář
    • jakékoli vlastní kalendáře, které jste si vytvořili

    Kalendář označený Jen pro čtení může být jen zdrojem jednosměrného pravidla. Blokace do něj zapisovat nejde a obousměrnou synchronizaci s ním nenastavíte.

  7. Hotovo, kalendář je připojený

    Váš CalDAV kalendář je teď připojený a připravený k použití.

Oblíbení poskytovatelé CalDAV

Fastmail

Populární e-mailová a kalendářová služba.

  • URL serveru: https://caldav.fastmail.com
  • Uživatelské jméno: vaše e-mailová adresa Fastmail
  • Heslo: vaše heslo Fastmail (nebo heslo pro aplikaci, pokud je zapnuté 2FA)

Dokumentace Fastmail CalDAV

Nextcloud

Self-hosted nebo spravovaný Nextcloud.

  • URL serveru: https://vas-nextcloud.com/remote.php/dav
  • Uživatelské jméno: vaše uživatelské jméno Nextcloud
  • Heslo: vaše heslo Nextcloud nebo heslo pro aplikaci

SOGo

Open-source groupware server.

  • URL serveru: https://vas-sogo-server.com/SOGo/dav
  • Uživatelské jméno: vaše uživatelské jméno SOGo (často email@domena.cz)
  • Heslo: vaše heslo SOGo

Synology Calendar

Balíček Kalendář pro Synology NAS.

  • URL serveru: https://vase-nas-adresa.com:5001/calendar
  • Uživatelské jméno: vaše uživatelské jméno Synology DSM
  • Heslo: vaše heslo Synology DSM

Ujistěte se, že je nainstalovaný balíček Kalendář a že je v nastavení Kalendáře povolený CalDAV.

Řešení problémů

„Server … nejde zastihnout“ nebo „Server … nemá platný certifikát“

Zkontrolujte tyto časté problémy:

  1. Adresa serveru: https:// přidáme automaticky. Pokud samotná adresa serveru nestačí, zadejte úplnou URL CalDAV z dokumentace poskytovatele.
  2. Lomítko na konci: zkuste adresu s lomítkem (/) na konci i bez něj.
  3. Číslo portu: některé servery potřebují výslovně uvedený port (např. :8443).
  4. Certifikát: připojujeme se jen přes HTTPS a k serverům s neplatným certifikátem (včetně self-signed) se z bezpečnostních důvodů nepřipojíme. Pokud server provozujete sami, nastavte mu platný certifikát.
  5. Dostupnost z internetu: server, na který se dostanete jen z vnitřní sítě nebo přes VPN, připojit nejde.

„CalDAV odmítl přihlašovací údaje.“

Časté příčiny:

  • nesprávné uživatelské jméno nebo heslo,
  • je potřeba použít heslo pro aplikaci (pokud máte zapnuté 2FA),
  • špatný formát uživatelského jména (zkuste ho s @domena.cz i bez),
  • účet je uzamčený nebo deaktivovaný.

Řešení: zkontrolujte přihlašovací údaje, v případě potřeby vygenerujte heslo pro aplikaci, nebo kontaktujte svého poskytovatele.

„Nenašli jsme žádný kalendář. Zkontrolujte adresu serveru.“

Pokud se kalendáře nenajdou:

  • Zadejte místo samotné adresy serveru úplnou URL CalDAV z dokumentace poskytovatele.
  • Ujistěte se, že máte ve svém účtu alespoň jeden kalendář.
  • Zkontrolujte, že kalendáře nejsou skryté nebo archivované.
  • Zkuste vytvořit testovací kalendář ve webovém rozhraní svého poskytovatele.

Synchronizace se zastavila a přišel mi e-mail

Když uložené heslo přestane fungovat, SyncMyDay připojení pozastaví a pošle vám e-mail. Otevřete kalendář na stránce Kalendáře, klikněte na Upravit, vyplňte Nové heslo (nepovinné) a klikněte na Uložit změny.

Synchronizace je pomalá

CalDAV kalendáře se synchronizují každých 5 minut, což je pomaleji než u Google Calendar a Microsoft 365:

  • Je to normální kvůli omezením protokolu CalDAV.
  • Push notifikace v reálném čase nejsou k dispozici.
  • Frekvence dotazování vyvažuje rychlost odezvy a zatížení serveru.

Potřebujete rychlejší synchronizaci? Zvažte Google Calendar nebo Microsoft 365, které podporují webhooky v reálném čase.

Další kroky

Technické detaily

Pro vývojáře a IT

Protokol CalDAV (RFC 4791)

SyncMyDay implementuje standard CalDAV pomocí těchto požadavků:

  • PROPFIND — objevování kalendářů, jejich oprávnění a značek změn
  • REPORT — dotazování kalendářových dat (calendar-query)
  • PUT — vytváření a aktualizace blokací
  • DELETE — odstraňování blokací

Objevování služby

Kalendářové kolekce hledáme pomocí WebDAV service discovery:

  1. Zkusíme zadanou URL; pokud na ní CalDAV neodpovídá, zkusíme /.well-known/caldav (RFC 6764).
  2. Přes current-user-principal najdeme vlastnost calendar-home-set.
  3. V home setu vyhledáme kalendářové kolekce.
  4. Podle current-user-privilege-set poznáme kalendáře jen pro čtení a označíme je.

Autentizace a zabezpečení

  • Basic Auth: standardní HTTP Basic Authentication přes HTTPS
  • Digest Auth: podporováno, pokud ho server vyžaduje
  • Jen HTTPS s platným certifikátem, adresy ve vnitřních sítích odmítáme.
  • Přihlašovací údaje jsou v databázi šifrované (libsodium).

Strategie dotazování (polling)

Protože CalDAV nepodporuje push notifikace:

  • Změny kontrolujeme každých 5 minut.
  • Porovnáme getctag / sync-token kalendáře; když se nezměnil, události znovu nestahujeme.
  • Když se změnil, načteme události celého synchronizovaného období dotazem REPORT (calendar-query).
  • Nejméně jednou za hodinu kalendář projdeme celý i bez změny.

Formát iCalendar

Události se vyměňují ve formátu iCalendar (RFC 5545):

  • Parsujeme komponenty VEVENT.
  • Extrahujeme DTSTART, DTEND a STATUS.
  • Zpracováváme pravidla opakování (RRULE).
  • Podporujeme převod časových pásem (VTIMEZONE).

Známá omezení

  • Žádná synchronizace v reálném čase: interval dotazování 5 minut
  • Závislost na serveru: vyžaduje správnou implementaci CalDAV
  • Omezení firewallu: server musí být přístupný z internetu

Nepovedlo se? Napište nám a pomůžeme vám.