Omnifocus am iPhone mit dem Mac synchronisieren
Omnifocus ist ein GTD Applikation, die es am Mac jetzt schon seit ca. 1 Jahr gibt, und die ich auch seither verwende. Es ist wohl die teuerste Software für GTD am Mac (alternativen sind z.B. Things $39 oder iGTD gratis) aber es kommt meinem Stil des GTD am nächsten und daher verwende ich es.
Mein größtes Problem damit: es gibt kein Möglichkeit die ToDos mit meinem iPhone zu synchronisieren (weil das iPhone warum auch immer keine ToDo Applikation hat). Das Problem ist seit gestern auch gelöst: seit gestern gibt es nämlich die Firmeware 2.0 und damit den App Store, in dem man schon jede Menge Software kaufen kann, darunter auch Omnifocus for iPhone.
Ich wollte mir die Applikation (kostet $20 oder € 16 – was ich übrigens angemessen finde) gleich kaufen, doch dann lass ich:
OmniFocus can synchronize with OmniFocus 1.1 for Mac via MobileMe or a WebDAV-enabled web server.
Heißt das ich muss zusätzlich noch die $ 99 für MobileMe ausgeben, damit ich synchronisieren kann – das ist ja wohl nicht wahr, oder?
Nach kurzer Recherche stellte sich heraus, das WebDAV die Lösung meines Problems ist. OS X Leopard kommt mit Apache 2 vorinstalliert und Apache 2 hat wiederum WebDAV inkludiert. Hier folgt nun eine Schritt für Schritt Anleitung, wie ihr WebDAV aktiviert und konfiguriert, damit OmniFocus am Desktop mit dem iPhone synchronisieren kann:
1. Apache starten (wenn er nicht schon läuft): Dazu einfach in den Systemeinstellungen > Web sharing aktivieren. Damit läuft auch schon der Apache Server und ihr könnt ihm im Browser unter http://EURE-IP-ADRESSE oder http://localhost (geht nur auf dem Rechner, auf dem der Server läuft) erreichen.

2. WebDAV Unterstützung im Apache aktivieren: Dazu müsst ihr die Datei /etc/apache2/http.conf öffnen und dort folgende Zeile finden (ich verwende hierfür Smultron, ein gratis Editor, mit dem man auch versteckte Dateien öffnen kann):
LoadModule dav_module libexec/apache2/mod_dav.so
Diese Zeile darf nicht deaktiviert sein (es darf keine “#” am Zeilenanfang stehen).
Include /private/etc/apache2/extra/httpd-dav.conf
Dies ist die 2. Zeile, die nicht deaktiviert sein darf. (bei mir die erste aktiv, die zweite musste ich erst aktivieren). Danach die Datei speichern (dabei wird euch Smultron um Authentifizierung bitten; dafür einfach euer Passwort eingeben).
3. WebDAV konfigurieren: Als nächstes öffnet ihr die Datei /etc/apache2/extra/httpd-dav.conf. In dieser Datei definiert ihr, wie die Freigabe funktioniert. Dafür müsst ihr folgendes hinzufügen:
Alias /webdav "/Library/WebServer/WebDAV" <Directory "/Library/WebServer/WebDAV"> Dav On Order Allow,Deny Allow from all AuthType Basic AuthName WebDAV-Realm AuthUserFile "/usr/webdav.passwd" <LimitExcept GET OPTIONS> require user BENUTZERNAME </LimitExcept> </Directory>
In der ersten Zeile nach dem Alias steht der URL, den ihr für euer WebDAV Verzeichnis verwende wollt. Bei mir wäre das http://10.0.1.2/webdav.
In Zeile 9 wird die Authentifizierung auf “Basic” gesetzt, da OmniFocus leider “Digest” (welches die Passwörter beim senden verschlüsseln würde) nicht unterstützt.
In Zeile 14 müsst ihr nun noch BENUTZERNAME durch euren gewünschten Benutzernamen ersetzten.
So lange die Datei noch offen ist, solltet ihr aus Sicherheitsgründen den ganzen Teil /usr/uploads löschen.
4. Benutzeraccount und Passwort anlegen: Öffnet den Terminal. Dort gebt ihr folgende Zeilen nach einander ein:
sudo htpasswd -c /usr/webdav.passwd "BENUTZERNAME"
Gebt bitte euren in Schritt 3 gewählten Benutzernamen ein. Dannach verlangt das System zuerst euer Benutzerpasswort. Dann müsst ihr zweimal eurer gewünschtes Passwort eintippen und schon ist eine Datei angelegt, mit eurem Passwort.
5. Verzeichnisse anlegen: Mit den zwei folgenden Terminal befehlen, legen wir nun 2 Verzeichnisse an.
sudo mkdir -p /Library/WebServer/WebDAV
sudo mkdir -p /usr/var
6. Rechte für die Verzeichnisse vergeben: Damit wir auch Dateien hochladen können, müssen die Rechte für die Verzeichnisse neu vergeben und unser Benutzer richtig verknüpft werden. Das geschieht mit folgenden drei Eingaben:
sudo chown -R www:www /Library/WebServer/WebDAV sudo chown -R www:www /usr/var sudo chgrp www /usr/webdav.passwd
7. Apache neu starten: Jetzt starten wir noch mit einem letzten Befehl den Webserver neu und schon ist alles fertig.
sudo apachectl graceful
8. OmniFocus Konfiguration: Als letzten Schritt, gilt es noch OmniFocus für die Synchronisation mit dem Server einzustellen. Dafür braucht ihr umbedingt OmniFocus 1.1 (zur Zeit noch eine alpha Version), da frühere Version das Synchronisieren noch nicht unterstützen. In OmniFocus öffnet ihr die Einstellungen und geht auf Sync. Dann wählt ihr WebDAV aus und gebt die IP eures Mac ein gefolgt vom oben gewählten Verzeichnis für WebDAV. Nach einem Klick auf Sync now, werdet ihr um vorher definierten Benutzername und Passwort gebeten. Wenn ihr alles richtig gemacht habt, sollte ihr im Verzeichnis /Library/WebServer/WebDAV die Datei OmniFocus.ofocus finden.

Damit kann nur euer iPhone, sofern ihr in eurem Heimnetzwerk seit und der Mac auf dem ihr das eben installiert habt läuft, problemlos synchronisiert werden. Was mich angeht, ist das genau das, was ich brauche, denn es ist mir vollkommen egal, ob ich synchronisieren kann, wenn ich unterwegs bin, da ich sowieso der einzige bin, der OmniFocus verwendet.

Update (4.8.2008)
Um euer iPhone für die Synchronisation einzurichten, müsst ihr zuerst am Mac die Einstellungen ans iPhone senden. Dafür öffnet ihr die Einstellungen > Sync und dort klickt ihr auf Share Settings.
Jetzt werden die Einstellungen ins lokale WLAN gesendet. Am iPhone öffnet ihr jetzt OmniFocus > Settings. Dort scrollt ihr nach unten und klickt auf Get Settings from Mac.
Am nächsten Bildschirm seht ihr dann ganz unten euren Mac. Einmal drauf klicken und die Einstellungen werden aufs iPhone geladen.
Jetzt sind beide Geräte konfiguriert und der Synchronisation sollte nichts mehr im Wege stehen (so lange sich das iPhone im selben WLAN wie der Mac befindet).
Ein Tipp noch: Ab iPhone Version 1.0.2 kann man auto sync abstellen. Ich würde das dringend empfehlen, weil man sonst jedes mal eine Fehlermeldung bekommt, wenn das iPhone nicht im Heimat WLAN ist.
Update: Problemlösungsansätze
Nachdem die Synchronisation leider noch nicht perfekt ist, möchte ich hier ein paar mögliche Lösungsansätze sammeln, die euch vielleicht weiterhelfen könnten:
- iPhone Applikation neu installieren. Klingt jetzt zwar dumm, aber bei mir hat das ein Synchronisationsproblem gelößt.
- WebDAV authentifizierung abschalten. Dafür müsst ihr bei der Konfiguration unter Punkt 3 folgende Zeilen ändern:
Order Allow,Deny Allow from all AuthType Basic AuthName WebDAV-Realm AuthUserFile "/usr/webdav.passwd" bitte löschen und stattdessen Order Deny,Allow Deny from all Allow from IP_EURES_IPHONE
Wenn jemand einen weiteren Lösungsansatz findet, bitte einfach in den Kommentaren posten, ich werde es dann hier aufnhemen.



am 3. August 2008 um 20:07 Uhr.
Servus,
ich hab dein howto grad gefunden da ich schon seit stunden damit spiele und scheitere – ich glaube mittlerweile dass es am omnifocus vom iphone liegt und dies einfach buggy ist, storry folgt:
1. ich hab nen root server mit ubuntu-server drauf
- apache angepasst,
- webdav übern browser getestet: geht
- webdav übern finder getestet: funzt..
- webdav über omnifocus aufm mac probiert, funktioniert auch super.
- omnifocus auf dem iphone eingerichtet, server angegeben, username und passwort eingegeben: >>>> mist, es dauert zwei sekunden und er fragt wieder nach dem user/pswd. sonst keine meldung. habs mittlerweile mit einstelligen passwörtern/usernamen probiert um wirklich ausschließen zu können, dass ich nicht zu blöd zum tippen bin..
2. hab im appstore in nem kommentar gelesen dass es “einwandfrei” mit dem kostenlosen gmx-accounts funzt.
- webdav übern finder getestet: funzt..
- webdav über omnifocus aufm mac probiert, funktioniert auch super.
- omnifocus auf dem iphone eingerichtet, server angegeben, username und passwort eingegeben: >>>>selber mist…
3. eins zu eins dein howto hier aufm mac umgesetzt:
- selbes ergebnis wie bei den andern. also an der konfiguration kanns ned liegen – omnifocus für den mac funktioniert bei allen drei getesteten systemen.
mit welcher omnifocus version auf dem iphone hast dus probiert?
meld dich doch mal per mail, bitte
gruß, flo
am 4. August 2008 um 08:38 Uhr.
Ich habe oben noch einige Informationen und Screenshots eingefügt, wie man die Einstellungen aufs iPhone bekommt.
Ich hoffe, das löst dein Problem.
am 4. August 2008 um 10:41 Uhr.
super danke – aber das hab ich alles schon gemacht, ich halte dich auf dem laufenden sobalds gelöst wurde.
hab noch jemanden gefunden, der das problem hat:
http://manas.tungare.name/blog/2008/07/10/howto-setup-webdav-on-mac-os-x-leopard-for-syncing-omnifocus-to-iphone/#comment-8452
gruß, flo.
am 9. August 2008 um 11:07 Uhr.
@flo
ich habe das problem auch und fleißig gegoogelt aber keine lösung gefunden. hast du es hinbekommen??
am 13. August 2008 um 08:27 Uhr.
Ich hatte gestern zum ersten mal auch ein Problem beim synchronisieren. Obwohl ich keine Veränderung vorgenommen habe, hat die Synchronisation auf einmal nicht mehr funktioniert. Das iPhone konnte den Mac einfach nicht erreichen, obwohl ich im Safari ohne Probleme auf die Apache Server zugreifen konnte.
Ich habe dann OmniFocus am iPhone gelöscht. Noch einmal synchronisiert. Nach erneutem Einrichten der Synchronisation (senden der Daten vom Mac) hat es dann wieder geklappt.
Habt ihr das schon ausprobiert?
am 13. August 2008 um 09:24 Uhr.
GECHAFFT!
also – ich hab einfach die authentifizierung gänzlich abgeschaltet:
Dav On
Order Deny,Allow
Deny from all
Allow from ipaddressofiphone
damit wirds nur von der ip vom iphone erlaubt. öffentlich würd ich das jetzt ned verwenden, aber naja….
am 13. August 2008 um 13:40 Uhr.
Ich denke im privaten WLAN sollte das kein Problem sein. Im WLAN Router ist ja normalerweise eh eine Firewall eingebaut, die den Zugriff von aussen verhindert – irgendjemand, der sich mit Netzwerksicherheit auskennt, wird mich jetzt sicher zerreißen
Freut mich, dass es bei dir endlich geklappt hat.
am 18. August 2008 um 11:02 Uhr.
kannst ja noch ins tut aufnehmen
am 18. August 2008 um 11:03 Uhr.
ich finde allerdings die synchronisation nicht sehr gelungen.
anhänge wie bilder oder so werden nicht synchronisiert. die notes von projekten werden auch ned gesyncht. sehr schade.
am 18. August 2008 um 11:26 Uhr.
Ich denke das Programm ist wirklich als “work in progress” zu sehen. Die Entwickler hatten 3 Monate Zeit und dafür ist es nicht schlecht. Die Synchronisation und weitere Features sind sicher das größte Problem, aber im Vergleich zu anderen Programmen am iPhone, ist OmniFocus für mich eines der besten.
Es wäre von Apple allerdings wirklich sinnvoll ein API zur Synchronisation zu entwickeln, denn so wie es jetzt ist (jeder Entwickler braut sein eigenes Süppchen) kann das nur zu einer Katastrophe führen.
am 18. August 2008 um 12:12 Uhr.
geb dir da vollkommen recht.
ich persönlich finde den weg über webdav schon ganz gut gewählt.
am 5. Februar 2009 um 10:49 Uhr.
Geht auch einfacher, schaut mal hier:
http://forums.omnigroup.com/showthread.php?t=11054
Beitrag #6