Bonjour sync not in OF 2? [A: Correct - use free WebDAVNav app instead.]

Doesn’t the free WebDAVNav app already meet that need? There’s a post about configuring it earlier in this thread:

Rather than setting it up with a server address of http://192.168.1.99:8080/, however, I’d recommend using the Bonjour hostname of the form http://hostname.local/ so that the same configuration works even when your network configuration changes.

With that change, I believe the WebDAVNav Server app is nearly as easy to set up and use as the Bonjour host server from v1 was. (And I think it’s more robust, since I believe it actually handles IP address changes better than our v1 solution did.)

P.S. — Turns out it has the same problem with IP address changes as our v1 solution. The workaround is to quit and restart the server whenever you switch networks.

Hello kcase, thank you for your fast reply
How can I properly migrate the old OF database into the folder shared with WebDAVNav server?

Thank you in advance
S

Not sure if it’s Bonjour, but OfficeTime and 1Password both have local wireless sync options.

You don’t have to migrate anything. Just make sure your clients are all synced, then change one of them to point to the new connection in sync preferences. It’ll create it there.

I’ve given Omni a hard time about the UI problems, but on this one, I’m on their side. Bonjour is a broken protocol - even Apple can’t get it right with Airtunes. I don’t even use bonjour for the server name. I’ve setup a DHCP reservation on each network for the master machine (my laptop) to a static IP, and connect to it. They should send a nice present to the guy who developed WebDAVNav server :-).

Post:

Sorry to seem dumb, but could anyone clear up the queries I have re. the above post?…

(1) Download and install the WebDavNav Server

That’s fine.

(2) Set manually ip address for you[r] Mac in Wi-Fi settings

Does this mean that on my Mac I need
(i) to go to System Preferences>Network
(ii) to click on Ethernet in the column on the left
(iii) Set ‘Configure IPv4’ to ‘Manually’? - I am concerned that my doing this, I will lose my internet connection. If I do set it to ‘Manually’ my Mac asks for an IP address. Which one should I use?

(3) Run WebDavNav Server app and set settings:
-set the share folder
-set the username and password in Authentication tab

Fine. This is a folder to contain the OmniFocus data file. However, what username and password should be used in the WebDavNav Authentication tab: completely new ones, or ones related to something else? If it’s something else, then the username and password of what should be put there?

(4) Set the ip address of you[r] mac in OmniFocus WebDav server preference

Where do I find out the IP address of my Mac? Should I use the local (Mac) IP address or the internet (ADSL’s) IP address?

(5) Add WebDavNav Server App in startup.

Does this mean ‘go to System Preferences>Users & Groups, click ‘Login items’ and add WebDavNav server app there’?

(6) It’s recommended to use h~t~t~p://hostname.local rather than h~t~t~p~://192.168.1.99:8080
(Ignore ‘~’)

Where do I get the bit(s) to type in for ‘hostname’ and for ‘local’ in the above?
What is h~t~t~p~://192.168.1.99:8080 the IP address for? Surely it’s not the same for all users?

Thanks in advance for any help in clarifying the above.

kcase:

I have attempted the procedure as described on “…/omnifocus-sync-osx-server” and I can’t get desktop omni to sync to the DBase – keep getting sync errors. Have you actually gotten this to work yourself?

Added info:

  1. I’m MAC omni 1.10.6, which does have WebDav server option in sync preferences, and I’ve entered server address exactly as: http//mycomputer.local/DAV/, per the article, with “mycomputer” being my MACs name on the local network

  2. my WedDav server screens are not the same as in the article – I assume that is because I’m running OSX 10.9.5 and downloaded the free software to activate the resident server, etc.

  3. That said, when I open control window for “WebDAVNav Server” it shows my “/Users/…/DAV” folder which contains all my omni backup files actively being shared by the server.

So, no dice.

What do I do next?

I’ll add my rant to the crowd’s: I have no interest in cloud syncing for a long list of reasons, first being I don’t need it, and 2nd being it requires internet access for every simple sync I need to do, which occur often and in many locations with no ready internet access.

I attempted to use the local WedDavNav Server sync method referred to in other posts in this conversation and it has thus far not succeeded, hence my response posted today to omni staff for clarification and help.

Good luck!

TO kcase
TO OTHERS ATTEMPTING LOCAL WEBDAVNAV SYNC:

The method described via the links in kcase’s post do not work for me. I was able to get the sync to work by using the call the includes my host’s IP address. This is sequence I followed:

  1. download free WebDavNav Server off of app store

  2. followed suggestion (omni suggestions…) to create new folder named “DAV” place all backups, etc. in that folder.

  3. ran WebDavNav, assigned DAV folder is one to be shared via server

  4. tried using Omni instruction to location of backup as: http://myhostname.local/DAV in OF desktop sync settings – this did not work

  5. eventually looked back at WedDavNav server control panel and noticed that it showed the share address as: “http://xxx.xx.x.xx:8080/” (i.e. host IP address:port, with the port having been assigned by WebDevNav); Also of note: WedDevNav control panel also showed the folder being shared as the entire path on my hard drive after the last “/” in the share address

  6. so, used the host address per WebDevNav as in (5), above and KABOOM! – it worked: both OF desktop syncs and IOS syncs. Note: I got some funny results and had to go back into OF desktop and reassign location for backups to the folder I’d created for the WebDevNav sharing – cleared up those problems.

I then contacted WebDevNav developer in Aussie and asked about using the hostname instead of IP address (people have mentioned issues with having to go back in and manually changing host names whenever their IP address changed…), and he told me the following:

  1. hostname acts as a “alias” for IP address assigned to host, and can be used, but hostname must replace IP address and all other items in host location remain the same - i.e. if you use hostname it must be done as:

http://hostname.local:port/

I tried that this morning both on OF desktop and IOS and 2ND KABOOM! – both worked.

  1. Developer also indicated that every time WedDevNav starts it will grab the then-current IP address of the host containing the folder it has been told to share; if you use an alias of the hostname, WebDevNav will look at the IP address that the hostname presented (e.g. by the app looking to sync) points to; if it matches the IP address of the folder it is currently sharing, it will provide access to it. BUT – if you leave WebDevNav running and change locations or whatever and your host is assigned a new IP address by a new router, etc., YOUR HOST IP ADDRESS HAS NOW CHANGED and WebDevNav still has the old one that it grabed when it last loaded.

Solution: shut down WebDevNav and restart it. It will grab new IP address on restart and you are back in business. So whenever your host’s IP address changes you will need to restart WebDevNav. Pretty easy, and certainly easier than going in and reassigning your shared folder in WebDevNav and changing server IP locations in OF desktop/IOS.

All of the above comes with the disclaimer that I am not a computer person – smart enough to follow instructions, etc., but apologies for any errors in terminology, etc.

Good news - I’ve got a local sync running!

1 Like

Sorry for not explaining this more clearly; neither of these steps should be necessary! Perhaps watt’s post (just above this one) will be clearer? Bonjour sync not in OF 2? [A: Correct - use free WebDAVNav app instead.]

Hmm, those instructions were from Omni? My apologies! You shouldn’t need to move backups into that folder at all. You can just create an empty folder, tell WebDAVNav to use it, and then tell OmniFocus to sync with WebDAVNav. OmniFocus will automatically place any information it needs onto the server the first time it syncs.

Thanks for posting your steps!

P.S. — If you could point me at where we were talking about placing backups in the DAV folder, I’ll see if I can clear that up so we don’t confuse other customers going forward. Thanks!

The only use case where something like this is necessary (and it’s advanced) is if someone travels a lot and can use a portable router so they can sync on the road. For example, I have my Airport at home and my Dlink (on the road) both set to give my Mac the same IP address - that way I can still sync in the hotel room (all my devices connect to the dlink, then that connects to the hotel).

BTW, unfortunately there’s no way to lock down IP addresses on the Apple iOS hotspots, so that’s not really an option.

Otherwise, you have to modify the sync settings every time you change networks. But one warning: since the https option doesn’t seem to work properly, you’d be syncing data in the clear on a public/hotel/coffee shop network (very bad juju).

Hi Mallard,

Per my post earlier today, what I have running does not require changing the IP addresses in the sync settings in OF OSX/IOS when your host IP address changes – i.e. if you use your “hostname” (your computer’s name on a network, assignable in system preferences/sharing in OSX) in place of the IP address, per: “http://hostname.local:port/” where the “port” is the numerical port that WedDevNav assigned then according to developer, you only need to power WedDevNav Server off and on again so it grabs the new IP address that your hostname now points to.

I haven’t been through the IP address change yet and haven’t tried the power on/off as I say above as yet, but the hostname use as above is working for sync between my OSX OF and IOS OF, and, as I said, the information on power on/off came from the guy who built WedDevNav in Aussie, so I suspect he knows…

I am remote all the time from my home router and use my IOS hotspot to connect to my powerbook for running syncs for OF and other apps I use (Tapforms, Office Time, etc.) – don’t know but imagine my powerbooks IP address may change under those circumstances (driven by new IP address of iphone if it is connected to a local network, and maybe even if not?).

Anyway, I’ll try it at some point when I need to.

Here is where the bad advise shows up:

https://support.omnigroup.com/omnifocus-sync-osx-server

From my experience this is wrong on a number of counts:

  1. definitely do not need to name anything “DAV”

  2. what he provides as an example in Omni sync location (i.e. server host, etc.) does not work: YOU HAVE TO INCLUDE THE PORT assigned by WedDavNav Server per the description in my post of earlier for this to work.

Disappointing (well…other adjectives come to mind, but goal here is to solve problems) that someone would put up such a thing that doesn’t work and they therefore did not test and confirm – how many people’s time have they wasted? Count me in for a couple of hours of frustration.

Anyway, what I described is up and running using hostname as pointer to IP address. IP address approach also worked for me, but using hostname saves.

Hopefully that puts this to bed.

Please post a correct procedure up on your website. Of particular importance is explaining the need to power WedDevNav off/on again if it has been running through a IP address change of the host or syncing will not work.

Also of note – if you are like me and have OF OSX and IOS running simultaneously (always entering date/updates on OSX and frequently have to head out to meetings with IOS version, etc.), then there may be situations where both versions attempt to access shared folder simultaneously. Not sure how this would sort out, but I would guess that with OF looking to see which copy of DB has most recent change time stamp (and thereby deciding whether to write in or copy server copy out…) should not get situation with both versions attempting to write in at once, but possible that one might attempt to copy out while other is writing in – this is way beyond my pay grade. I would imagine OF must have something to address this issue anyway regardless of sync pathway, so, no?

Anyway, I have not seen any such problem thus far.

Oh, yah – if you do the off/on cycle of WebDavNav Server to reset to new host IP address I believe the server will use the default port, 8080. So, may be that for this to work you need use the default port from the outset in your OF sync pathways in IOS and OSX (it is possible to manually change the port assigned in the WebDavNav Server).

150205 - addendum

  1. approach I outlined in previous few posts is working perfectly. Stable, does the job, local sync via wifi to my mac, no wandering in the cloud… Has nice feature that will sync to MAC server database even if OF OSX is not open.

One minor item (for me), per below:

  1. I have noticed that OF IOS will hang up on attempted sync if the server host (my powerbook) is not on my wifi network with WedDavNav live – need to force-quit OF IOS to stop that. Not a big problem for me in that I almost always enter data in OSX OF and sync to IOS. Don’t know if you would lose data entered into OF IOS on force quit – might…

  2. So, if you are working with IOS OF away from connection to your DB server you need to be careful - OF IOS has an unfortunate feature that if you pull down screen say to access settings, etc., OF automatically initiates sync (whether you want to or not…). With no server to find, hangs up…

NOTE TO OMNI CREW - would be good to put some feature in OF IOS that the sync will time-out if it does not find the DB (rather than churn away and hang up as it is doing).

How to Synchronize OmniFocus Desktop with OmniFocus on iPhone


Without prejudice. I take no responsibility for your data. The instructions below worked for me.

I found it hard to understand the explanations in postings above, but have managed after several days, to sync OmniFocus desktop (on a Mac) with OmniFocus for iPhone, using ‘WebDAVNav Server’. I don’t want to sync to a cloud server that belongs to someone else. Here is how to sync using OmniFocus’s ‘Advanced (WebDav)’ option…


1). IMPORTANT: back up all your OmniFocus data from the place(s) you want to save it from. If anything goes wrong, you then have a backup /backups to restore from. You should also temporarily switch off any firewalls or other similar software on your computer, so that sync can happen unhindered.

2). You will need Sean Ashton’s amazing ‘WebDAVNav Server’. You can get this for free from http://mac.softpedia.com/get/Utilities/WebDAVNav-Server.shtml
NB Ignore ‘WebDAV Navigator’; this is the same as ‘WebDAVNav Server’, but designed to work as an iPhone etc. app. Download and install ‘WebDAVNav Server’ onto your desktop computer.

3). Now we need to set up a folder on your computer, to hold your sync data tidily. This data will be written to and read by both of the OmniFocus applications: the one on your computer and one on your 'phone. You can make this folder anywhere you like on your computer. For example, in your Applications folder, make a folder called ‘OmniFocus’. Drag the OmniFocus application into that new folder. Within the new OmniFocus folder, make a new folder called ‘WebDav’. Leave it empty.

4). When you run ‘WebDAVNav Server’, no application window will appear - it looks as if the application is failing, but it is not. In the top right of your Finder, look at the Finder Menu, and you will see a little grey folder icon. Click on this and select ‘Settings’. A window which looks like this will pop up:

In the https:// part which has been blacked-out above, you will see numbers like this xxx.xxx.x.x:8080
Leave these numbers there, they are the ‘IP’ address of your computer and are correct. ‘WebDAVNav Server’ has harvested them and they are correct. Make a note of them, exactly as they are.

  1. In the ‘WebDAVNav Server’ window, click on the button maked ‘Select folder to share’ and then navigate to the WebDav folder which you made in step 3) above. This will tell ‘WebDAVNav Server’ where to read and write the data that is to be sync’d between your desktop and 'phone versions of OmniFocus.

  2. We now need to set up a username and password, for OmniFocus on your desktop, and OmniFocus on your 'phone, to use, to read and write their data into the WebDav folder. To do this, in the ‘WebDavNav Server’ application window, click on the ‘Authentication’ tab. There you can type any user name and password which you like. Make a careful note of these, as your 'phone is going to need them in a moment.

  3. Finally, we need to tell ‘WebDavNav Server’ whether we want to use secure mode or not. For extra security, it’s advisable to switch that functionality on. In the ‘WebDAVNav Server’ window, click on the ‘Secure’ tab and tick (check) ‘Use https’. (The ‘s’ in ‘https’ stands for ‘secure’.) Then click on ‘Create and use self-signed certificate’. A window will pop up to say that a certificate has been made. Click ‘OK’.

  4. For your changes in "WebDAVNav Server’ to be acknowledged and retained, you need to stop and start that application. To do this, click the ‘General’ tab in the ‘WebDAVNav Server’ window, then click the ‘Stop’ button. The ‘Stop’ button will turn into a ‘Start’ button. Click the ‘Start’ button. - This stopping-and-starting procedure should be used every time you make any changes to the ‘WebDAVNav Server’ application. NB If you click on any other window of your computer while using ‘WebDAVNav Server’, that application’s window will (somewhat annoyingly) disappear. To get the ‘WebDAVNav Server’ window back up, simply follow the steps in step 4) above.


  1. Now we need to tell OmniFocus on your computer and OmniFocus on your 'phone, where to sync to. Let’s start with the computer: - open your desktop OmniFocus and from the OmniFocus menu, select ‘Preferences’…

  2. At the top of the window which pops up, (i) click ‘Synchronization’. (ii) Select the ‘Advanced (WebDav)’ option. (iii) In the ‘Address’ box, type the http address which you noted carefully in step 4) above. NB The address (URL) must be exactly the same. (iv) Click the ‘Sync Now’ button. OmniFocus on your Mac should then ask you for access details to ‘WebDavNav Server’ through a window that says ‘The server “WebDAVNav Server” requires authentication’ …and asks for ‘WebDAVNAV Server’'s username and password, as set up in step 6) above.

OmniFocus on your computer should then make a back-up of its settings into the WebDav folder which you made in step 3).

  1. To sync to the WebDav folder on your computer, from OmniFocus on your iPhone, open the OmniFocus for iPhone app. From its homepage, touch and hold the top of the screen for a second, then drag down 1cm and you’ll see the ‘Sync - Settings - Search’ links. Touch ‘Settings’. Next, select ‘Sync Method’, then select ‘Custom (WebDav)’.

  2. In the next window that appears, you’ll see a setting called ‘Address’. Touch on this and type in the same URL (web address) as you noted in step 4) above. You don’t need to tell your iPhone about the location of the WebDav folder, because ‘WebDavNav Server’ will do that for you.

  3. Next, on your iPhone, click on the ‘Sync’ button at the top right of your iphone’s screen. Your phone will ask you for the username and password you set up in step 6) above for ‘WebDAVNav Server’ - this is so that it can use ‘WebDAVNav Server’ to access sync data on your computer. Enter those settings. Attempt to ‘Sync’ from your iPhone. Your phone should then go through attempting to sync with the contents of the WebDav folder on your computer.


  1. If you have problems with steps 11)-to-13), it may be because OmniFocus on your iPhone is already set up and locked to old Sync settings. I have found these difficult to access to edit once they have been entered. A workaround for this (until the OmniGroup have fixed this bug and improved the sync functionality of their software), is to check that you have backed up everything from OmniFocus on your iPhone, and then to delete the OmniFocus application from your iPhone. Next, go to iTunes and re-install OmniFocus onto your iPhone. The sync settings will be virgin again, and you will be able to set them up how you need to, so that OmniFocus on your iPhone syncs to your computer properly.

  2. After successful syncing, turn all firewalls etc. back on. It would be good if OmniFocus could sync without firewalls having to be disabled.


TROUBLESHOOTING

It’s a bit of a fiddly process, as all settings have to be exactly the same on OmniFocus on your computer, in ‘WebDAVNav Server’ and in OmniFocus on your iPhone. For ‘https’, the certificate needs to have been set up in advance in ‘WebDAVNav Server’ *(See step 7)). Remember to stop and start ‘WebDAVNav Server’ for any new settings in it, to take effect.

If things don’t work, try starting from scratch and setting them up again, systematically.

If ‘https’ setting from ‘WebDAVNav Server’ does not work, you may wish to try with simple ‘http’.


I am neither an OmniFocus nor a WebDAVNav expert. The instructions above worked for me and I am just sharing them for other frustred users to have some means of escape from what is hopefully a temporary shortcoming in otherwise brilliant software. It would be great if the Omni Group incorporated ‘WebDavNav Server’ (or something like it) into their software, and programmed it to run in the background.

Good luck!

1 Like

Ah, I see where the confusion arose from - apologies! The article that you’re linking to is a set of instructions meant for a different way of setting up a WebDAV server on a Mac. The article isn’t relevant when setting up WebDAVNav, in other words.

However, I am having problems with those instructions and I am NOT using the WebDAVNav, I am using Apple’s Yosemite server. Got it working as a server on my laptop while I was testing Yosemite. Now that I’ve converted the desktop I cannot seem to get the sync location to change to the new server. It always fails. I have verified that I have all the proper addresses etc.

I found why I had issues getting the local hostname to connect. The capital letters in the HostName.local.
Try all lower case in the sync settings for both iOS and OS X OF.

This took hours - using my local IP and port with WebDAVNav worked, but OF in OS X and iOS would only sync once the first time it loaded the database into the WebDAV shared folder. After the first sync it would give 404 file not found errors when syncing, despite me being able to Connect to Server… in finder with the same hostname.local address.

Anyway, I hope this helps those stuck with changing IP’s between networks - use lowercase.

I also removed all hyphens from my local hostname (in sharing sys prefs) and shortened it to a short name. I’d also suggest removing other special characters if people have issues still.

All the best.

NOTE TO OMNI: Sadly non-cloud users get ignored these days with prosumers getting the bulk of the design hours. I was nearly going to request a refund on the iOS version and uninstall the OS X version. It’d be nice if developers had time to figure out worthwhile solutions to features that used to exist…but why would they when they can’t measure sales they don’t get by relying on the users to bug test rubbish?

UPDATE: sync no-longer working, despite the fact that I have not changed settings from when sync did work. Also fails if firewalls off.

It would be SO good if Omni could sort this out. Come on guys!

Tried again to make WebDav sync work. It won’t.

Am about to wave goodbye to OF as GTD software, as local sync functionality is vital, but seemingly unsupported.

:’’’(