{"id":232,"date":"2011-11-15T02:11:50","date_gmt":"2011-11-15T01:11:50","guid":{"rendered":"http:\/\/www.instruyete.org\/?p=232"},"modified":"2011-11-15T02:11:50","modified_gmt":"2011-11-15T01:11:50","slug":"carddav","status":"publish","type":"post","link":"https:\/\/www.instruyete.org\/?p=232","title":{"rendered":"CardDAV"},"content":{"rendered":"<p>Nachdem ich <a href=\"http:\/\/www.instruyete.org\/?p=61\"><strong>CalDAV<\/strong><\/a> zur Synchronisierung von Kalendern schon einige Zeit im Einsatz habe, stolperte ich erst k\u00fcrzlich \u00fcber das Adressbuch-Pendant <a href=\"http:\/\/carddav.calconnect.org\/\"><strong>CardDAV<\/strong><\/a>. Das Protokoll &#8211; ein weiteres der <em>DAV<\/em> Familie &#8211; ist erst im <strong>R<\/strong>equest <strong>F<\/strong>or <strong>C<\/strong>omments Status, aber dieser ist quasi schon abgeschlossen.<br \/>\nInteressant wurde CardDAV f\u00fcr mich als ich h\u00f6rte, dass <a href=\"http:\/\/www.davical.org\/\">Davical<\/a> &#8211; der CalDAV Server den ich einsetze &#8211; seit einiger Zeit (Version 0.9.9.4) auch CardDAV vollst\u00e4ndig beherrscht.<\/p>\n<p><center><strong>Und was gibt es sch\u00f6neres als synchronisierte Adressdaten?<\/strong><\/center><\/p>\n<p>Ich muss noch dazusagen, dass ich immer noch einen <em>openLDAP<\/em> Adressserver laufen habe, welcher aber an 2 Krankheiten leidet (und das schon seit Jahren)<\/p>\n<ol>\n<li>Es gibt kein verbindliches Personenschema f\u00fcr die Applikationen (Mozilla verwendet ein anderes als Apple.. und das wiederum hat nichts gemeinsam mit anderen Welten der kommerziellen LDAP Server)<\/li>\n<li>Schreibunterst\u00fctzung: nada &#8211; am besten man programmiert sich seinen eigenen LDAP Client &#8211; aber da der Tag nur 24h hat&#8230;<\/li>\n<\/ol>\n<p>Ok &#8211; genug geschwafelt: <strong>CardDAV rocks &#8211; es geht alles<\/strong><\/p>\n<p><em>..aber nur nach stundenlanger Frickelei <\/em> (es lohnt sich aber, also dranbleiben).<\/p>\n<ol>\n<li> Davical updaten, falls nicht schon geschehen. Folgende Stolperfallen warten:<br \/>\nEv. sind die User <em>davical_app<\/em> und <em>davical_dba<\/em> noch nicht angelegt (kommt bei sehr alter <strong>davicaldb<\/strong> vor). In diesem Fall mit<br \/>\n<code>psql -qXAt -c \"CREATE USER davical_app NOCREATEDB NOCREATEROLE;\" template1<\/code><br \/>\n<code>psql -qXAt -c \"CREATE USER davical_dba NOCREATEDB NOCREATEROLE;\" template1<\/code><br \/>\ndie User anlegen.<br \/>\nEinige Sequenzen und Tables geh\u00f6ren ev. direkt <em>postgres<\/em> anstatt <em>davical_dba<\/em> &#8211; mit folgendem Befehl wird bspw. hier die Sequenz <em>dav_id_seq<\/em> ge\u00e4ndert:<br \/>\n<code>psql davical -c \"ALTER SEQUENCE dav_id_seq OWNER TO davical_dba\"<\/code>\n<\/li>\n<li> Das Anlegen einer neuen Collection (<em>Principal Collection<\/em>) ist ganz einfach.<br \/>\nIn der neugestalteten Webseite einfach <em>Ist ein Kalender<\/em> ab- und <em>Ist ein Adressbuch<\/em> anhacken. Der Name der Collection ist nat\u00fcrlich w\u00e4hlbar &#8211; es empfiehlt sich z.B. &#8222;<em>contacts<\/em>&#8220;<\/p>\n<p>Konkret ist dann diese Kollektion (das Adressbuch) unter <code>\/davical\/caldav.php\/USERNAME\/contacts<\/code><br \/>\nauf dem Server zu erreichen.\n<\/li>\n<li>\nMac OS X Adressbuch anschliessen<br \/>\nOh ja &#8211; wenn man mittels <strong>SSL<\/strong> drauzugreift, dann gibts Probleme.<br \/>\nIm der Applikation <em>Adressbuch<\/em> kann man zwar ein CardDAV Account anlegen bei dem man die Authorisierungsdaten und den kompletten Serverpfad (s.o.) eingeben kann, man l\u00e4uft aber immer auf eine Fehlermeldung hinaus.<br \/>\nDie L\u00f6sung ist, zweimal &#8222;Create&#8220; anzuklicken um den fehlerhaften Account anzulegen.<\/p>\n<p>Dann editiert man manuell folgende Datei:<\/p>\n<p><code>~\/Library\/Application Support\/AddressBook\/Sources\/&lt;UNIQUE-ID&gt;\/Configuration.plist<\/code><br \/>\nDort tr\u00e4gt man unter <em>Server String<\/em> die komplette URL ein.<br \/>\n<code>https:\/\/SERVERNAME\/davical\/caldav.php\/USERNAME\/contacts<\/code><br \/>\nAm besten modifiziert man noch das Feld <em>HaveWriteAccess<\/em> auf den Wert auf &#8222;1&#8220;\n<\/li>\n<li>iPhone Konfigurieren<br \/>\nDas geht im Falle eines SSL Zugriffes NICHT am Handy selber. Es geht nur \u00fcber das <strong>iPhone Configuration Utility<\/strong> welches man von Apple herunterladen muss.<br \/>\nDort erstellt man einen neues Konfigurationsprofil mit einem CardDAV Account und installiert dieses dann auf dem angeschlossenen iPhone (es beeintr\u00e4chtigt ein ev. vorhandenes Profil nicht!)<br \/>\nDas Konfigurationsprofil innerhalb dieses Programmes erlaubt die komplette Angabe einer URL (Principal URL).\n<\/li>\n<li>KDE \/ akonadi<br \/>\nUnglaublich &#8211; es geht einfach &#8211; man muss nur erstmal draufkommen wie.<br \/>\nIn den <em>KDE Systemeinstellungen<\/em> kann man bei<br \/>\n<code>Pers\u00f6nliche Informationen -> Einrichtung der Akonadi Resourcen -> GroupDAV Resourcen <\/code><br \/>\nu.a. CardDAV und CalDAV Anschl\u00fcsse einrichten, welche dann von allen akonadi-aware Programmen (wie KMail oder Adressbook) genutzt werden kann.\n<\/li>\n<\/ol>\n<p>Was noch fehlt ist ein <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=546932\">nativer Thunderbird CardDAV Anschluss<\/a>, es soll \u00fcber ein 3rd Party Produkt names <em>SoGo<\/em> gehen.. aber ich sehe grade keinen Grund es auszuprobieren. Stattdessen geniesse ich mit CardDAV eine weitere Perle der OpenSource Welt<\/em>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nachdem ich CalDAV zur Synchronisierung von Kalendern schon einige Zeit im Einsatz habe, stolperte ich erst k\u00fcrzlich \u00fcber das Adressbuch-Pendant CardDAV. Das Protokoll &#8211; ein weiteres der DAV Familie &#8211; ist erst im Request For Comments Status, aber dieser ist quasi schon abgeschlossen. Interessant wurde CardDAV f\u00fcr mich als ich h\u00f6rte, dass Davical &#8211; der &hellip; <a href=\"https:\/\/www.instruyete.org\/?p=232\" class=\"more-link\"><span class=\"screen-reader-text\">CardDAV<\/span> weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,10,7],"tags":[],"class_list":["post-232","post","type-post","status-publish","format-standard","hentry","category-linux","category-macos","category-unix"],"_links":{"self":[{"href":"https:\/\/www.instruyete.org\/index.php?rest_route=\/wp\/v2\/posts\/232","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.instruyete.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.instruyete.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.instruyete.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.instruyete.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=232"}],"version-history":[{"count":0,"href":"https:\/\/www.instruyete.org\/index.php?rest_route=\/wp\/v2\/posts\/232\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.instruyete.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=232"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.instruyete.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=232"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.instruyete.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=232"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}