Example: I woke up very early this morning (around 2am) and couldn’t go back to sleep, so I started adding things to the Reminders app so that they would be pulled automatically into OmniFocus. They actually didn’t get pulled into OmniFocus until about 7 hours later.
Here’s my typical quick-add workflow: I use Drafts as a keyboard/automation tool, which sends to-do items quickly to Reminders without a bunch of additional tagging and organization needed. The process has been bulletproof and text goes straight to Reminders without any issues. Then when those items get pulled into the OmniFocus inbox I do the processing first thing in the work day.
As usual, the to-do items I created in the early morning stayed in Reminders until I opened OmniFocus for iOS after 9am and it went searching to see if there was anything new in Reminders (which there were, and it imported correctly). Why such a long delay? I have OmniFocus set to do background sync – is there something else I need to do in order to make reminders sync faster in the background without manual intervention? Or is this a limitation in iOS where the system is trying to save battery and processor cycles by only grabbing things from Reminders on-demand?
In general, iOS doesn’t guarantee anything about apps being able to run in the background. They’ll generally respond to push notifications in a timely manner (such as when you sync a change on another device and it appears on your phone immediately), but iOS doesn’t realize that changes in Reminders should wake up OmniFocus. (And OmniFocus isn’t allowed to wake up itself.)
So the next time OmniFocus will see those Reminders changes is whenever it gets woken up to sync. This can happen when you launch the app, make an edit on another device, or when iOS guesses you might be about to use the app based on its analysis of your typical usage patterns. (For example, if you usually open OmniFocus around 8am and 3pm every day, the system might automatically wake up OmniFocus in the background around 7:45am and 2:45pm. These times are approximate: to save battery life, it will try to wake up multiple apps around the same time so it doesn’t keep starting and stopping its radio.)
If you check your Sync Log (under OmniFocus > Settings > Last Synced), you can see a list of the times OmniFocus has recently synced, showing the reason it synced in parentheses. The entries marked “iOS” are the syncs which are triggered by iOS waking OmniFocus in the background.
Reminder is always very sluggish in synching, in my experience.
Hours can go by without what I’ve deleted - in particular - on a desktop instance being reflected on my iPhone.
I don’t know of a way to force it to do synch - except to create and then delete a dummy item.
Could you be experiencing this, fishcymbal, which is nothing to do with OF’s part in the process at all?
I think @kcase hit the mark when he said “OmniFocus isn’t allowed to wake up itself.” I was wondering about creating something with the Workflow app that is time-based and occurs at particular intervals to open OmniFocus, but it doesn’t appear possible.
I only tried ‘feeding’ OF with Remainders events a few times because Reminders kept wanting to create a new category and didn’t seem to like the ‘OmniFocus’ one I created specially for it (I otherwise have ‘Work’ and ‘Hone’). But when I did get it to work, it synched almost immediately every time as soon as I launched OF (2) on my Mac or iPhone.
FWIW, I do the same process, but sending directly from Drafts to OmniFocus. I have a URL+Script combo in Drafts that I got from this forum. It syncs to OmniFocus immediately. The Drafts script also adds a preset project and context that I specified.
If you want to capture AV, you can use a DropBox-enabled recorder/camera app, and then use Hazel or a Folder AppleScript to move the DropBox item into OmniFocus. I use this many times per week, and it syncs very quickly.