Nextcloudのカレンダー(CalDAV)をAndroidとUbuntu/Windows(Thunderbird)で使う

Posted by 雅楽斎 on Tuesday, February 2, 2021

TOC

CalDAVはRFC4791で標準化されているから導入が簡単なはずと思っていたら全然そんなことなかった

オンラインストレージソリューションであるNextcloudをdocker-composeで運用し始めました。

NextcloudをRaspberry Pi 4にセットアップ(docker-composeで運用)、WebDAVでの動作確認も。

このNextcloudの1機能であるカレンダーはCalDAVに準拠しているはずで、CalDAVはIETFでRFC4791として標準化されています。

RFC 4791 - Calendaring Extensions to WebDAV (CalDAV)

標準化されている仕様はそれぞれのOSでサポートされていて、設定も簡単なんだろうな…という先入観が間違っていたようで、基本的には今回動作確認したOSで標準設定では使うことができませんでした。何らかの追加設定が必要です。

基本的にはGoogleカレンダー等の特定のサービスの方がそれぞれで圧倒的にサポートされているのが現状です。

CalDAVのURL

ブラウザからNextcloudにログインした後、カレンダーを選択したところで≡で開くメニューから「設定とインポート」→「通常のCalDAVアドレスをコピー」を選択するとクリップボードにCalDAVのURLがコピーされます。

今回設定する際に必要な情報は以下の通りです。

Ubuntu/Windowsでの設定(Thunderbird+Lightning拡張)

吊るしのThunderbirdとLightningで設定しようとしてもできなかったので、拡張機能を使います。

!Solved! Thunderbird CalDav sync in linux not working with NextCloudPi

Which version of Thunderbird are you running? I’m synching calendar and contacts with Thunderbird as well and I use the Addons: TbSync - https://addons.thunderbird.net/en-US/thunderbird/addon/tbsync/ CalDav & Cardav (Provider for TbSync) - https://addons.thunderbird.net/en-US/thunderbird/addon/dav-4-tbsync/ These work perfectly for me and got a rework for the last big changes in Thunderbird 68, which seemed to start handling Addons differently.

Ubuntuでの手順を記載します(Windowsではインストール方法やメニューの呼び出し方が異なる程度です)

インストール(ThunderbirdとLightning拡張)

# apt-get install thunderbird xul-ext-lightning

初回起動時のアカウント設定やカレンダーの作成はスキップ

今回はメーラーとしてThunderbirdを使うことはないので、初回起動時のダイアログやカレンダーの作成を全てスキップします。

また、起動時に表示されている「Create a new calendar」も設定しません。

TbSync と Provider for CalDAV & CardDAV のインストール

Thunderbirdを起動したら、まず最初に拡張機能を2つインストールします。

Linux版Thunderbirdの場合

≡メニューから「Add-ons」→「Add-ons」と辿るとアドオンマネージャが表示されるので、ここから「TbSync」と「Provider for CalDAV & CardDAV」をインストールします。

TbSync

TbSync is a central user interface to manage cloud accounts and synchronize their contact, task and calendar information with Thunderbird.

Provider for CalDAV & CardDAV

This extension adds support for CalDAV & CardDAV accounts to the Thunderbird Sync manager "TbSync". Including iCloud, ownCloud, Nextcloud, Radicale and many more.

インストールが終わるとAdd-ons Managerはこんな感じになります。

Windows版Thunderbirdの場合

インストールする拡張は一緒ですが、Add-ons Managerの呼び出し方が異なり、メニューの「ツール」→「アドオン」になります。

Provider for CalDAV & CardDAVのアカウント設定

≡→「Add-ons」→「TbSync」と辿ります。

TbSync account managerダイアログが表示されるので、ここで「左下の「Account actions」から「Add new account」→「CalDAV & CardDAV」を選択します。

追加するアカウントの種類を選択する画面が表示されるので、「Manual Configuration」を選択してNext1

任意のアカウント名とNextcloud上のユーザー名、パスワードとCalDAVサーバーのURLを入力してNextを押すと、CalDAVサーバーが見つかれば次に進めます。

内容を確認してFinishを押すとアカウントが作成されます。

TbSync account managerに戻ってきたら、作成したアカウントを右クリックして「Enable account & try to connect to server」を選択します。

同期をする画面になるので、同期するリソースを選んで右下の「Synchronize now」をクリックして同期します。

同期が終わると表示が変わるので、これで設定完了です。

Thunderbirdに戻るので、右上でカレンダーアイコンをクリックすると表示するカレンダーに追加された予定と登録されている予定が表示されます。

Androidでの設定(DAVx5)

DAVx5のインストール

AndroidではDAVx5というアプリをインストールしてOSから扱えるようにします。

DAVx5はGoogle PlayとF-Droidで配布されていますが、Google Playでは600円(執筆時点)ですがF-Droidでは無料でインストールできるので、必要に応じてどちらかからインストールします。

DAVx⁵ – CalDAV & CardDAV Sync client - Apps on Google Play

If you're encountering problems please contact us: support@davx5.com or have a look at our forums: https://www.davx5.com/forums/ instead of down-voting the app so that we can provide support. DAVx⁵ (formerly known under a different name) is the only all-in-one synchronization solution for your contacts (CardDAV), calendars (CalDAV) and your tasks (based on VTODO). The app is easy to set up and integrates perfectly with your favorite calendar/contacts app (including default apps). It can also be used seperately, if you either have CalDAV, CardDAV or only Tasks. Compatible with almost every CalDAV/CardDAV servers and services, including Nextcloud, iCloud and Synology! After installing, you can add a DAVx⁵ account from within the app. See https://www.davx5.com/tested-with/ for help. For more information, please see the manual: https://www.davx5.com/manual/, the FAQ: https://www.davx5.com/faq/ and our forums: https://www.davx5.com/forums/ Key features: ⊛ Sync your DAV calendars (CalDAV) and address-books (CardDAV) and Tasks in a single app ⊛ Two-way synchronization (server ↔ client) ⊛ Flawless integration with your device and favorite apps ⊛ Easy setup (resource auto-detection, support for self-signed certificates, authentication by client certificates) ⊛ Fast algorithms for high performance (CTag/ETag, limit sync time range for past events, multi-threaded sync) ⊛ Optimized for phones and tablets. Backward compatibility for old Android versions. ⊛ Super-secure and we respect your privacy! ⊛ Absolutely no ads and no tracking. ⊛ GDPR compliant. ⊛ DAVx⁵ is completely open source Important compatibility notes Attention: DAVx⁵ must not be moved to the SD card! This will cause strange behaviour, including account and data loss. Get the best out of this app … ⊛ … when using with your own DAV server (Radicale, DAViCal, SabreDAV, Baikal, …) and HTTPS – so you own and control all your data while having the comfort of synchronization between various devices. Or use a hosted DAV service you trust or the one of your company. ⊛ … and combine it with Evolution / Thunderbird / etc. on your computer Successfully tested with: ⊛ 1CRM ⊛ A1.net ⊛ all-inkl.com ⊛ AOL Mail ⊛ Baïkal ⊛ Bitrix24 ⊛ Calendar and Contacts Server ⊛ cPanel ⊛ Cyrus IMAP ⊛ DAViCal ⊛ DavMail Gateway ⊛ Daylite ⊛ EDIS ⊛ EGroupware ⊛ Fastmail ⊛ fruux ⊛ GMX ⊛ Google ⊛ Group Office ⊛ Hetzner KonsoleH ⊛ Horde ⊛ IceWarp ⊛ iCloud ⊛ Kerio Connect ⊛ Kolab Now ⊛ Kopano ⊛ luckycloud ⊛ macOS Server ⊛ mail.de ⊛ mail.ru ⊛ mailbox.org ⊛ Mailfence ⊛ MDaemon ⊛ Nextcloud ⊛ openCRX ⊛ Oracle Beehive ⊛ Oracle Communications UCS ⊛ ownCloud ⊛ OwnCube ⊛ Posteo ⊛ Radicale ⊛ SmarterMail ⊛ SOGo ⊛ Synology DSM ⊛ Teambox ⊛ Tine 2.0 ⊛ T-Online ⊛ web.de ⊛ Xandikos ⊛ Yahoo Mail! (calendar only) ⊛ Yandex ⊛ Zimbra ⊛ Zoho ⊛ … and many others: https://www.davx5.com/tested-with/ Also available as a seperate business version with Enterprise features like mass-deployment and pre-configurable settings: https://www.davx5.com/organizations/managed-davx5

DAVx⁵ | F-Droid - Free and Open Source Android App Repository

DAVx5の設定

アプリのインストールが終わって起動すると初回起動時のチュートリアルのようなものが実行されるので、必要に応じてチェックを付けることになりますが、私はカレンダーのパーミッション以外全てチェックを外しました。(初回起動時点ではチェックしませんでしたが、後でチェックすることになります。)

この時点で選択する項目は以下の通りです。

  • Tasks support
    • OpenTasks
    • Tasks
  • Permissions
    • All of the below
    • Contacts permissions
    • Calendar permissions(チェック)
  • Regular sync intervals

アカウント追加・設定

初期設定が終わるとアカウントが作成できるようになった表示が出るので、右下のプラスボタンからアカウントを追加します。

CalDAVサーバーのURLとユーザー名、パスワードを入力します。

任意の名前でアカウントを作成します。

アカウントで同期する画面に入るので、CalDAVタブで設定します。この時の画面ではカレンダーのパーミッションを付与していなかったので、PERMISSIONSをタップして設定します。

今回はカレンダーだけ使うので、Calendar permissionsだけ有効にします。

カレンダーのパーミッションを付与すると表示が変わるので、必要に応じて設定を変更します。

設定項目は同期間隔(今回連絡先は無関係なので手動)とリマインダーの有無、無視する過去のイベントの設定あたりは快適に使うために必要かと思います。

アカウントの設定は以上で終了です。これでAndroid上のカレンダーを扱う他のアプリから見えるようになっています。Android上の設定のアカウントからも同期・非同期を設定できます。同期にした場合にどのくらいの頻度で同期するのかは今回は未検証です。

LineageOSのカレンダーアプリから予定を追加してみる

DAVx5の設定が終わったので、試しにLineageOSのカレンダーアプリからカレンダーを使ってみます。

起動画面です。Nextcloudのカレンダーで設定したタスクが表示されています。

予定を追加してみます。カレンダーは今回作成したDAVx5のカレンダーを選択します。

予定がカレンダーに追加され、Nextcloudにも反映されます。

(参考)Windows10のOSの機能でアカウント追加→失敗

Windows10は標準でCalDAVを扱える、扱えないみたいな話が出ていたので試しにやってみた結果良くわからないまま終わりましたという報告です。

スタートメニューからCの中にあるCalendarを起動します。

とりあえず真ん中のアカウントの追加をクリックしてみます。

追加できるアカウントの種類でCalDAVがあるのかと思いましたが、この中で言えば詳細設定以外に該当するものがなさそうだったので、進んでみます。

Exchange ActiveSyncとインターネットメールしかありませんでした。終了です。

ちなみにiCloudを選ぶとどうなるかというと、メールアドレスと「この名前を使用してメッセージを送信」と「パスワード」の入力欄が出てきて何もできません。

スポンサーリンク


  1. Automatic ConfigurationではNextcloudのカレンダーは設定できませんでした [return]

comments powered by Disqus