CalDAV a CardDAV

Kalendáře, kontakty a synchronizace

V dnešní době, kdy většina lidí používá více zařízení, si zároveň žádá, aby tyto zařízení většinou obsahovala totožná data. Pokud možno zadám údaj v jednom zařízení a tento údaj se mi automaticky zobrazí ve všech mých propojených zařízení. Nejčastěji je to email, kontakty, kalendář a úkoly. Já se teď zaměřím na kontakty (CardDav) a kalendář (CalDAV), kdy centrálním serverem bude NAS Synology DS213j.

DSM od Synology v základu již nabízí funkci CalDAV, která je součástí nebo lépe řečeno rozšířením WebDAV. Stačí zadat umístění adresáře, kde se budou ukládat data z kalendáře a vše by mohlo fungovat hned na poprvé, kdyby tu nebylo velké ALE. Některé programy si s tímto CalDAVem neporadí vůbec. Napíší, že kalendář neexistuje. Další programy se na tento CalDAV napojí a spolupracuji. Ukládají záznamy a zase je čtou. Záznamy ukládají souborově, každý záznam zvlášť. Problém nastává ve chvíli použití různých programů, které na tento CalDAV přistupují. Programy používají různý souborový zápis. Některé programy ukládají do icl souboru, další zase xml. Jeden po druhém to nepřečte.

caldav.png, 73kB
 

Jak z toho ven? Tento způsob CalDAVu je dobrý pokud víte, že na něj budete přistupovat všude stejnou aplikací a nebudete očekávat synchronizaci s různými platformami. Výhodou je také, že záznamy jsou souborové a lze je jednoduše zálohovat. Pro širší použití s vyššími nároky to ale není to pravé. Také je třeba si připomenout, že tento CalDAV nám neřeší otázku jak na kontakty. Bohužel nic jiného nám Synology už nenabízí, proto je třeba se podívat po aplikací třetí strany.

baikal.png, 23kB
  Aplikace Baikal pro Synology je to co budeme potřebovat. Jedná se o aplikaci, která pracuje jako server pro CalDAV a CardDAV a veškeré data ukládá do MySQL databáze (MariaDB). Má své webové uživatelské rozhraní, které je přehledné a jednoduché. Baikal nijak úzce nespolupracuje s NAS Synology a nepřebírá si od něj uživatele ani žádné práva. Také k nim nepřistupuje. Není kromě databáze ze Synology nijak svázán. Je celý psán v PHP, není tedy vázán na architekturu NAS. Výhoda je obrovská v tom, že si s tímto serverem rozumí Android, Apple OS X, BlackBerry, RoundCube mail station a samozřejmě Thunderbird. Jak již asi vidíte, podporu od Microsoft nehledejte. Jak desktopové aplikace Outlook a Live mail, tak ani Windows Phone CalDAV a CardDAV nepodporují.
Aktualizace ‚12.2014‘: časy se naštěstí mění a začínají se objevovat doplňky pro desktop Microsoft Outlook pro správu CardDAV a CalDAV které podporují přímo Baikal. Například: německá společnost cFos Software, která zatím nabízí doplněk zdarma, nebo známá společnost Comodo se svým software CalDAV Outlook. Comodo má svůj software spoplatněn za 14$ ročně.

Instalace: Nebudu ji detailně popisovat protože přesný návod přikládám v PDF. V první řadě je třeba nainstalovat od Synology balíčky MariaDB (MySQL databáze) a PhpMyAdmin. Poté se může nainstalovat Baikal. Naštěstí v Synology umožnili instalaci aplikací ze souboru. Funkci instalace ze souboru najdete v Centrum balíčku pod tlačítkem „Ruční instalace“.

instalace.png, 91kB
 

Přesný a velice dobrý návod na instalaci a nastavení MariaDB, phpMyAdmin a samotné aplikace Baikal najdete v tomto PDF. Součástí je také podrobný návod jak s Baikal propojit aplikace jako Thunderbird, Iphone, Android. Návod je v angličtině. Jen jednu věc chci upozornit, která je popsaná v instalaci Baikal. Způsob šifrování dle mého názoru nechat na Basic a nepřepínat na Digest. Mohlo by to přinést problémy s propojením BlackBerry a RoundCube.

Postřehy:

  1. Baikal nastavení: Přístup do nastavení Baikal je vasedomena/baikal/admin . Po přihlášení se dostanete na Dashboard Baikal. Zde vidíte souhrnné informace o využití. V horním menu v položce User, vytváříte uživatele a k nim kontakty a kalendáře. Tady akorát podotknu, že každý vytvořený uživatel může mít několik adresářů s kontakty a také kalendářů. Směrodatný je takzvaný Token, který se musí zadat při vytváření druhého a dalšího záznamu. Ten se poté zadává do url adresy místo složky „default“.
    baikallogin.jpg, 42kB
  2. RoundCube pod Synology: Pro správnou funkci je třeba mít doinstalován v RounCube PluginManager, Calendar+ a Contact+. Teprve tyto pluginy pracují s CalDAV a CardDAV servery. V první řadě stáhneme ze stránek RoundCube Plugin Manager, ten rozbalíme na disk. Dále, musíme se dostat jako root přes SSH do systémové oblasti Synology NAS /volume1/@appstore/MailStation/roundcubemail/plugins/ což je adresář RoundCube s pluginy a zkopírovat rozbalený PluginManager přímo do tohoto adresáře. Po zkopírování v adrsáři /volume1/@appstore/MailStation/roundcubemail/config/ editujeme soubor main.inc.php, kde v souboru najdeme řádek:
    //List of active plugins (in plugins/ directory)
    $rcmail_config[‚plugins‘] = array ();
    a změníme na:
    //List of active plugins (in plugins/ directory)
    $rcmail_config[‚plugins‘] = array (‚plugin_manager‘);
    Aktualizace ‚12.2014‘: po aktualizaci na DSM 5.1 se aktualizuje RoundCube na verzi 1.0.2. Od verze RoundCube 1.x se sobour nejmenuje main.inc.php, ale config.inc.php. Jedná se neustále o ten stejný konfigurační soubor. Jen bude třeba řádek $rcmail_config[‚plugins‘] = array (‚plugin_manager‘); napsat celý, protože tam není.
    Poté se přihlásíme přes webové rozhraní do RoundCube a v levém horním rohu klepne na odkaz „O programu“. Otevře se okno, kde nás vítá již PluginManager s vygenerovaným několikamístným jedinečným klíčem. Pro plný chod je třeba v adresáři RoundCube /volume1/@appstore/MailStation/roundcubemail/ vytvořit prázdný soubor, který bude mít stejný název jako vygenerovaný klíč. Připojíme se tedy přes PuTTY k Synology jako root a zadáme příkaz:
    touch /volume1/@appstore/MailStation/roundcubemail/xxxxxxxxxxxxxxxxxxxxx.xxxx
    Kde x znamená vygenerovaný klíč. Poté se stačí znovu přihlásit na RoundCube přes webové rozhraní a v nastavení se Vám zpřístupní výběr instalací všech pluginnů do RoundCube. Na Youtube jsou videonávody. Poté musíte nainstalovat pluginy Calendar+ a Contact+ a další svázané pluginy. Tyto pluginy jsou však zpoplatněny a připravte se tak na investici 250kč. Volně ke stáhnutí jsem je nenašel. Po stažení pluginu na pevný disk stačí rozbalit a vše zkopírovat do adresáře s pluginy /volume1/@appstore/MailStation/plugins/. Poté CalDAV i CardDAV pracují a pracují spolehlivě. Investice za to stojí.
    roundcube.png, 78kB
  3. Thunderbird: Je třeba mít nainstalovaný plugin Lightning, SOGo a Saved Password Editor. Při vložení url adresy kontakt serveru se Thunderbird nezeptá na jméno ani heslo. Vlastně se tváří, že vše funguje, ale nic nenačte. Je třeba mu uložit uživatelské jméno i heslo ručně pomosí Saved Password. Po té už vše funguje. U kalendáře je třeba mít na paměti, že při zadávání url adresy kalendář serveru nemůžete zadat doménové jméno serveru, ale přímo IP adresu serveru a navíc ve formátu http:// (bez s). V tomto případě se zeptá na jméno a heslo. Kalendář se okamžitě načte. Tato pasáž je velice dobře popsána v návodu.
    thunderbirdcal.png, 73kB
  4. Aktualizace ‚12.2014‘: Microsoft Outlook: Samotný Microsoft Outlook CalDAV ani CardDAV nepodporuje a musíme se obrátit na doplňky třetích stran, které se naštěstí už začali objevovat. Jak jsem se již zmínil, jedná se o cFos Software, nebo další CalDAV Outlook. Určitě jich najdete více. Rozdíl mezi těmito dvěma software je takový, že cFos se integruje přímo do Microsoft Outlook software a vytvoří jistý CalDAV a CardDAV connector, zatím co OutlookDAV od Comodo běží jako samostatná aplikace a jen aktualizuje kalendář a adresář s daty na serveru.
    outlookdav.jpg, 49kB
  5. BlackBerry OS10: CalDAV i CardDAV se zadává v položce nastavení -> účty a klepnout na spodní řádek další. Jen při vypisování url adresy jak kontaktu, tak i kalendáře se nesmí zadávat http://. Začíná se rovnou www. BlackBerry také automaticky načte veškeré kontakty a kalendáře od uživatele ke kterému je připojen. Není tedy třeba mít několik účtů CalDAVu pokud byste se chtěli napojit na více kalendářů daného uživatele.
    bb_10_accounts.png, 33kB
  6. Aktualizace ‚12.2014‘: Android 4.x a vyšší: Android OS sám o sobě CalDAV i CardDAV nepodporuje. To ale není problém, stačí nainstalovat jednu z mnoha aplikací pro správu CardDAV a CalDAV. Jedna z nejznámějších je DavDroid, který je popsán i v instalační příručce Baikal. Tato aplikace má výhodu, že sdružuje jak CardDAV, tak i CalDAV synchronizaci. Malá nevýhoda je, že je zpoplatněná zhruba 65kč. Máme na výběr i z free aplikací, ty se ale většinou zaměřují jen na kalendář nebo kontakty. Po instalaci aplikace, stačí pouze v nastavení OS přidat účet a zobrazí se nám ve výběru navíc CalDAV a CardDAV účty.
    davdroid.png, 23kB
  7. Aktualizace ‚06.2016‘: iOS 7 a vyšší: iOS umí CalDAV i CardDAV nativně aniž by bylo zapotřebí instalovat další aplikaci. Navíc umí i úkoly a načítat barvy kalendářů. Troufám si říct, že iOS si s Baikalem rozumí nejvíc ze všech mobilních zařízení.

No a teď hurá, tady je BAIKAL ke stažení.
Manuál ke stažení, prosím věnujte pozornost záloze Manuál ke stažení.