Modul 5 · 5.1
CalDAV a CardDAV: ako synchronizovať kalendár a kontakty
Modul 5: Kalendár a kontakty · Čas čítania: 10 minút
Cieľ lekcie: Po tejto lekcii viete vysvetliť, ako CalDAV a CardDAV udržiavajú váš kalendár a kontakty zosynchronizované medzi serverom a zariadeniami, prečo si to všimnete až pri nastavovaní aplikácie, a aké údaje potrebujete na pripojenie aplikácie.
Kľúčové pojmy: CalDAV, CardDAV, WebDAV, synchronizácia, adresa servera, .well-known/caldav, .well-known/carddav, principal, heslo aplikácie, Exchange ActiveSync, predvolený kalendár
Kalendár a kontakty žijú na serveri
Pri Google a Microsoft si nevšimnete, ako sa váš kalendár dostane do telefónu. Prihlásite sa svojím účtom a kalendár a kontakty sú tam. V pozadí na to často používajú vlastný spôsob synchronizácie: Microsoft používa Exchange ActiveSync a vlastné prepojenia, Google svoju vlastnú synchronizáciu účtu na Androide.
Pri európskom poskytovateľovi to takmer vždy prebieha cez dva otvorené štandardy:
- CalDAV (RFC 4791) pre kalendáre a zoznamy úloh;
- CardDAV (RFC 6352) pre kontaktné osoby.
Oba stavajú na WebDAV, rozšírení bežnej webovej komunikácie (HTTPS), ktoré umožňuje čítať a zapisovať súbory na serveri. Udalosť je pre CalDAV malý súbor vo formáte iCalendar (lekcia 5.2), kontaktná osoba malý súbor vo formáte vCard. Server ukladá tieto súbory do priečinka pre každý kalendár alebo adresár kontaktov. Váš telefón, laptop aj webový kalendár sa každých pár minút pýtajú: "čo sa zmenilo od poslednej kontroly?" a sťahujú si len zmeny.
iPhone <--CalDAV/HTTPS--> server: /calendars/anne/werk/ <--CalDAV--> laptop (Thunderbird)
^
|
webagenda in de browserVeľkou výhodou otvoreného štandardu je, že nie ste viazaní na jednu aplikáciu. Aplikácia kalendára na vašom iPhone, DAVx5 na Androide, Thunderbird, Kalendár na Macu a mnohé ďalšie aplikácie hovoria protokolom CalDAV. Ak neskôr prejdete k inému poskytovateľovi, ktorý tiež podporuje CalDAV, rovnaké aplikácie jednoducho nastavíte nanovo.
Prečo si to nevšimnete, kým nenastavíte aplikáciu
Po presťahovaní kalendára (lekcia 5.2 a 5.3) je všetko úhľadne vo webovom kalendári vašej novej služby. Váš telefón o tom ešte nič nevie. Žiadna aplikácia sa neobjaví sama: na každom zariadení musíte pridať účet. Na to potrebujete tri veci:
| Údaj | Príklad u Bakkerij De Korrel |
|---|---|
| Adresu servera | https://cloud.example.com alebo úplnú adresu DAV, napríklad https://cloud.example.com/remote.php/dav |
| Používateľské meno | anne |
| Heslo | heslo aplikácie, pozri nižšie |
Adresa servera a .well-known
Každá služba má vlastnú cestu, kde "žijú" CalDAV a CardDAV. Pri Nextcloud je to /remote.php/dav, pri iných serveroch niečo iné. Aby nebolo potrebné, aby túto cestu poznal každý, existuje dohoda (RFC 6764): aplikácia, ktorá dostane iba názov domény, sa najprv pozrie na pevne stanovené miesto:
https://cloud.example.com/.well-known/caldav
https://cloud.example.com/.well-known/carddavServer tam odpovie presmerovaním na skutočnú cestu. Ak toto presmerovanie funguje správne, stačí vo vašom iPhone vyplniť len cloud.example.com. Ak nefunguje, aplikácia zobrazí hlásenie "nepodarilo sa overiť účet" a musíte vyplniť úplnú adresu. Rovnaké RFC popisuje aj záznamy SRV (_caldavs._tcp.example.com), pomocou ktorých môže aplikácia nájsť server už len z vašej e-mailovej domény. Nie každá aplikácia to využíva.
Potom sa aplikácia opýta servera na váš principal: pevné miesto vášho účtu na serveri so zoznamom vašich kalendárov a adresárov kontaktov. Tak aplikácia sama nájde všetky kalendáre, aj tie, ktoré sú s vami zdieľané.
Prečo potrebujete heslo aplikácie
Väčšina európskych cloudových služieb si pri prihlásení v prehliadači vyžaduje druhý krok: kód e-mailom, aplikáciu na overovanie alebo prístupový kľúč (passkey). Aplikácia kalendára v telefóne tento druhý krok nedokáže vykonať. Má len pole na používateľské meno a heslo.
Preto si pre takúto aplikáciu vytvoríte heslo aplikácie: dlhé, náhodné heslo, ktoré platí len pre túto jednu aplikáciu. Vytvoríte ho v nastaveniach zabezpečenia svojho cloudu, pridelíte mu rozpoznateľný názov ("Kalendár iPhone Anne") a vyplníte ho v aplikácii.
Výhody:
- Vaše skutočné heslo sa nenachádza vo vašom telefóne.
- Ak stratíte telefón, zrušíte len toto jedno heslo aplikácie; zvyšok naďalej funguje.
- Ak zmeníte svoje bežné heslo, vaše aplikácie budú naďalej fungovať.
Niektoré aplikácie sa dokážu prihlásiť aj cez prehliadač: otvoria prihlasovaciu obrazovku vášho cloudu, vy tam vykonáte druhý krok a aplikácia sama získa heslo aplikácie. DAVx5 na Androide to vie napríklad s Nextcloud.
Najznámejšie chybové hlásenie pri aplikáciách kalendára je 401 Unauthorized. Takmer vždy to znamená: namiesto hesla aplikácie ste použili svoje bežné heslo, alebo bolo heslo aplikácie zrušené.
Kalendáre Exchange a čo stratíte
Ak prichádzate z Microsoft 365, ste zvyknutí na niekoľko vecí, ktoré s CalDAV fungujú inak alebo vôbec:
- Zobrazenie voľný/obsadený u kolegov pri plánovaní. Nextcloud a iné servery CalDAV majú vlastnú formu (dostupnosť v rámci toho istého servera), no tá nefunguje medzi rôznymi službami a nie vždy v každej aplikácii.
- Rezervácia miestností a zariadení (zasadačka, projektor). Niektoré servery majú kalendáre zdrojov, iné nie.
- Delegovaný prístup ("asistentka spravuje kalendár riaditeľa"). Pri CalDAV to riešite zdieľaním s právami na úpravu.
Zapíšte si to na svoj zoznam (modul 3). Zriedkavo je to dôvod neprejsť na novú službu, ale kolegovia o tom musia vedieť vopred.
V praxi: ako to vyzerá u poskytovateľa
Vo WebOké Nextcloud nájdete adresy v aplikácii Agenda, vľavo dole pri Nastavenia kalendára: CalDAV URL a Adresa servera pre iOS a macOS, obe s tlačidlom na kopírovanie. Všeobecná adresa je https://<vaša-adresa>/remote.php/dav. Heslo aplikácie vytvoríte v Nastavenia, Zabezpečenie, Zariadenia a relácie. Tam neskôr uvidíte aj to, ktoré zariadenie a kedy naposledy nadviazalo spojenie, a zrušíte heslo aplikácie. Iní poskytovatelia Nextcloud fungujú presne rovnako; pri iných európskych službách (napríklad mailbox.org, Posteo alebo prostredí Open-Xchange) nájdete adresu CalDAV na stránkach pomocníka alebo v nastaveniach a heslá aplikácií sa niekedy nazývajú "heslo zariadenia" alebo "heslo aplikácie".
Zhrnutie
- CalDAV (kalendár, úlohy) a CardDAV (kontakty) sú otvorené štandardy postavené na WebDAV a HTTPS; každá zmena je malý súbor na serveri.
- Na každom zariadení musíte sami pridať účet: adresu servera, používateľské meno a heslo aplikácie.
- Cez
.well-known/caldava.well-known/carddavaplikácia nájde skutočnú cestu len z názvu domény; ak to nefunguje, vyplňte úplnú adresu DAV. - Heslo aplikácie je potrebné, pretože aplikácie kalendára nedokážu vykonať druhý prihlasovací krok; hlásenie 401 takmer vždy znamená nesprávne heslo.
- Funkcie Exchange ako voľný/obsadený medzi kolegami, rezervácia miestností a delegovanie fungujú inak; zapíšte si ich na zoznam.
Kvíz
Úloha
Úloha A5.1: Nájde aplikácia váš kalendár? Vyplňte adresu svojho (nového) cloudu, napríklad cloud.example.com. Program skontroluje, či /.well-known/caldav a /.well-known/carddav správne presmerovávajú na cestu DAV a či server tam odpovedá ako server DAV. Takto zistíte, či v telefóne stačí vyplniť iba názov domény.
Ďalšie čítanie
Kroky v týchto článkoch platia pre služby WebOké; u iných poskytovateľov to funguje podobne.
- Návod na Nextcloud 3.5: Heslá aplikácií: kedy a ako ich použiť
- Návod na Nextcloud 9.9: Kalendár a kontakty na iPhone a iPad
- Návod na Nextcloud 9.10: Kalendár a kontakty na Android pomocou DAVx5
- Návod na Nextcloud 15.6: Kalendár alebo kontakty sa nezobrazujú v telefóne
- Vytvorenie hesla aplikácie (potrebné na pripojenie aplikácií a zariadení)
- RFC 4791 (CalDAV), RFC 6352 (CardDAV), RFC 4918 (WebDAV), RFC 6764 (.well-known a SRV pre CalDAV a CardDAV)
