Inside MobileMe: Mac and PC cloud sync and mobile push

Posted:
in Mac Software edited January 2014
MobileMe is advertised as push messaging service, so some users were disappointed to find that some desktop updates may take as long as fifteen minutes to find their way up to the cloud. However, the service does also support push IMAP email as well as full desktop push updates from the cloud, at least on Mac OS X. Here's how Apple's service works with the client software on desktop Macs and PCs and on the iPhone.



Inside MobileMe: Secrets of the Cloud and Mobile Push

Inside MobileMe: Mac and PC cloud sync and mobile push



MobileMe on the Mac desktop



To synchronize with the cloud's push messaging services in MobileMe, specialized desktop software is required. On the Mac, Apple talks to Mac OS X's Sync Services to sync to the cloud, and configuration is done through System Preferences' MobileMe pane, which replaces the former .Mac version.Â*



The only visible difference (apart from updated branding) is that MobileMe can now be set to 'automatically' sync bookmarks, calendar events, contacts as well as other data designed to sync with .Mac, such as Dashboard widgets, Dock icons, Keychains, Mail account settings, rules, and signatures, Notes, and System Preferences (below).







Microsoft also includes Mac OS X Sync Services support (and therefore MobileMe sync support) in the Mac version of Office, so users of Entourage can keep their calendar and contacts up to date with everything on the MobileMe cloud as well. And of course any other application that either keeps its own data in sync with Sync Services, or directly uses the Mac OS X Address Book or iCal's event data pool will also be stay updated with the MobileMe cloud and the devices it pushes updates to, including both the iPhone and iPod touch.



Mac OS X's Sync Services uses a central Â?sync engineÂ? that maintains a Â?truth database.Â? This allows multiple devices, applications, and online services to plug into the service to share and sync data. An app with new data pushes its updates to the engine, which syncs the changes to its truth database. Other applications can then request updates from the truth database. The connection between the sync engine and MobileMe is trigged on the schedule set by the user in System Preferences. The MobileMe cloud also enables multiple Mac OS X systems to sync their local data with each other.Â*



Bonjour, you have new messages



Once updates arrive at the cloud, either from MobileMe sync or from entries made directly in MobileMe web apps, the cloud pushes those updates down to any registered iPhones or iPod touches connected to the account. On Mac OS X Tiger or Leopard, Apple also triggers push updates from the cloud that should show up immediately in Address Book and iCal, or Â?generally within a minuteÂ? according to Apple's site.Â*



Updates made on the Mac desktop are not immediately pushed up to the cloud unless you manuallyÂ*initiateÂ*a sync (or wait for the system to trigger an update sync itself). However,Â*updates are pushed down to Leopard desktop apps, typically within around ten to fifteen seconds of making changes from the web or on the iPhone. Updates pushed to the mobile are similarly fast.



This unique desktop push feature uses the same Wide-Area BonjourÂ*mechanismÂ*used by MobileMe's Back to My Mac for remote file and screen sharing. For this to work, the Mac desktop must first be securely registered into Apple's Dynamic DNS server by simply turning BTMM on (which happens when you install the MobileMe update, if it's not already on).Â*This then allows the MobileMe cloud servers to target updates to the machine as required without the desktop system needing to initiate the transactions. BTMM also automatically configures an encrypted, point to point IPSec connection to secure transactions over the Internet.



Other push messaging alternatives either use an expensive mobile network to keep track of mobile devices (as RIM's BlackBerry service does), or require a team of administrators to configure and maintain a Local Area Network supplyingÂ*DNS and directory servicesÂ*(as Exchange Server does). Exchange can notÂ*remotely update desktop client machines unless they connect to the corporate network over a VPN or dialup networking link themselves.Â*Thanks to the automatic Wide-Area Bonjour configuration of MobileMe's BTMM, none of that is needed. Â*Â*



MobileMe on Windows



Apple's BTMM push updating service does not update Windows desktop apps, which must sync on a regular interval to be kept up to date with the cloud. Rather than using Microsoft's own desktop ActiveSync in Windows XP (not to be confused with Exchange Server's unrelated push messaging component of the same name), or its successor in Windows Vista, the Â?Windows Mobile Device Center,Â? Apple brought over its own sync technology, bundled within iTunes.



This is not new to MobileMe; iTunes for Windows has long provided iPod, iPhone, and .Mac data sync with Outlook on the PC. This fact didn't prevent conspiracy theorists from complaining that iTunes 7.7 was Â?sneaking MobileMe onto WindowsÂ? after discovering optional new sync options in the latest version of iTunes.Â*



During the iTunes install, Apple includes a MobileMe Control Panel that behaves identically with its Mac OS X counterpart, although on Windows there is no support for syncing anything apart from calendar, contacts, and bookmarks with the MobileMe cloud (below).Â*Again, on Windows, there is currently no support for Back to My Mac or push updates, only sync.







Desktop Data Sync on Windows



MobileMe mail works with any standard POP or IMAP email program, but things are a bit more complicated in the realm of contacts and calendars, where there is currently not yet any widely accepted industry standards for exchanging data with client software. This may change as CalDAV calendaring and CardDAV contacts catch on, and Apple is currently pioneering support for both in its server products, with iCal Server and the upcoming Address Book Server in Mac OS X Snow Leopard Server. Google, IBM, Mozilla, Microsoft, Sun, Yahoo, and series of other industry heavyweights are also promoting the new standards.



Both CalDAV and CardDAV are based on the WebDAV standard Apple uses to power its iDisk and web hosting services in MobileMe. Until those standards become fully supported in Windows apps, Apple is left to support whatever it can using the existing, proprietary APIs for PIM (Â?personal information mangerÂ?) data sync.Â*



Apple syncs contacts to Microsoft Outlook, Vista's Windows Contacts, Google's Gmail Contacts, or the Yahoo Mail Address Book. Because Outlook can have any number of local or network contacts services installed, iTunes syncs with Outlook's primary contacts folder, which is by default the one set up in Personal Folders.Â*



For calendar events, iTunes only syncs with Outlook. Users of Vista's Windows Calendar are out of luck until Microsoft finishes its sync strategy for Vista and opens its APIs to allow third parties to sync with the new application. A variety of other programs and services on Windows can also sync with Outlook, and therefore can keep their data up to date with the MobileMe cloud as well. However, the more independent devices and conduits that are linked together in syncing data, the more opportunity there is to introduce problems. That's why Apple developed a single Sync Services architecture in Mac OS X with a central truth database for auditing and vetting updates authoritatively. Unfortunately, there's nothing identical to it on Windows.Â*



ActiveSync and Vista's Windows Mobile Device Center are really only designed to sync with Windows Mobile/WinCE devices, and as one Windows user noted, Â?Windows MobileÂ?s ActiveSync/WMDC sync process often ruins a good WiMo experience.Â? Additionally, WMDC can not even sync Windows Mobile devices with Vista's own Windows Calendar, nor can the new app sync its calendar data with Outlook. So it should come as no surprise that iTunes does not sync with Windows Calendar either.Â*



For web bookmarks, Apple supports syncing with either Safari or Internet Explorer on Windows, but curiously not Firefox, which Apple recommends over Internet Explorer 7 for browsing the MobileMe web apps. There are a number of Windows utilities for syncing bookmarks between Internet Explorer and Firefox however.



Cloud sync, push sync, and mobile push



On both the Mac and PC, POP or IMAP email is still retrieved from MobileMe on a schedule rather than being pushed as it is on the iPhone. However, Mac OS X Mail, Mozilla Thunderbird, Outlook 2007, and a variety of other desktop email applications can enable IMAP IDLE to allow the server to push new email to the client as soon as they are received for nearlyÂ*instantaneousÂ*messaging.Â*



Contacts and calender items are kept in sync with the cloud at automatic fifteen minute intervals on Mac OS X Leopard, Windows XP, or Vista. Using Mac OS X Tiger, synchronization only occurs hourly. The frequency of sync can be dialed back to hourly, daily, weekly, or just set to manual for users who don't want sync kicking in every few minutes. A full sync session with MobileMe can be a processor and disk intensive operation, so you wouldn't want it happening continuously. However, on Leopard a targeted sync will trigger every time the cloud has an update, if BTMM is configured. That means if you make a change to your mobile or web calendar, Leopard will get a push update that will trigger a quick calendar-only sync session between the cloud and Sync Services that will result in an update in iCal.Â*



On the iPhone and iPod touch, Apple has integrated full push messaging support for email, contacts, and calendar events into the new iPhone 2.0 software. The point of push messaging is to conserve the battery life of mobile devices while providing rapid messaging updates. It essentially turns email into something closer to instant messaging or SMS. Rather than having the email program constantly polling for new messages, which would consume a lot of power, a specialized messaging server fires new messages to the device as they appear on the server. Updates made to server side contacts and calendar events are delivered in the same way.



Some ambulance-chasing critics following the clumsy MobileMe launch decided that they found the service particularly disappointing because there was no bidirectional support for push updates on desktop client computers. However, nobody provides full push messaging updates to desktop clients over the Internet, and particularly not to consumers, as we point out in the following segment comparing MobileMe to other consumer and corporate push messaging alternatives. Push messaging is a service designed for mobiles.



At the same time however, iPhone users are unlikely to see an advantage in battery life after turning on push messaging because MobileMe enables more updates than were available previously. Push messaging is easier on the battery than checking for email every few seconds, but the iPhone's original software only allowed for automatic email updates every fifteen minutes. With the speed and regularity of new updates comes additional battery consumption.



Users can enable push support for Mail, Contacts, Calendar, and Bookmarks individually (below, under account settings on the iPhone). How much overhead is added by push messaging will relate to how often updates are made on the server and therefore how frequently those updates need to be communicated to the iPhone. Most users have seen a significant impact on battery life of around 20% after turning on push messaging, although the recent 2.0.1 update seems to have helped a lot in this regard.



Â*



The next segment will take a closer look at the market for push messaging and compare how MobileMe stacks up against similar services, from hosted Exchange Server accounts to RIM's BlackBerry push services to web services offerings from Google and others.Â*
«1

Comments

  • Reply 1 of 28
    My situation is this:



    I get a new e-mail on my .Mac account and it shows up pretty much at the same time on my Mac in Mail and on my iPhone. If I'm at my computer, I use Mail to look at the e-mail. So I read the e-mail and it gets synced to MobileMe presumably that I have read the e-mail. When I check me.com, it shows up as read. But, my iPhone still has a badge on the Mail app indicating I have one unread e-mail. It will stay this way until the next time I get a new e-mail (which ends up just keeping the badge since now there is a *new* unread e-mail and the old one is read) or until I open Mail on my phone and let it refresh and realize that the e-mail is read.



    Is this just how it works? When .Mac was just IMAP it would at least figure out that the mail was read after 15 minutes. Now, it never will unless I open Mail on the iPhone. Any thoughts?
  • Reply 2 of 28
    asciiascii Posts: 5,936member
    It shouldn't need BTMM or any form of dynamic DNS. The Mac can just connect to MobileMe when switched on and *leave the connection open* until switched off again. Since the client established the connection, their NAT router will remember and allow MobileMe packets back in, even asynchronously and much later.
  • Reply 3 of 28
    physguyphysguy Posts: 920member
    Quote:
    Originally Posted by ascii View Post


    It shouldn't need BTMM or any form of dynamic DNS. The Mac can just connect to MobileMe when switched on and *leave the connection open* until switched off again. Since the client established the connection, their NAT router will remember and allow MobileMe packets back in, even asynchronously and much later.



    It doesn't need BTMM, what is said is that both services use the same underlying tech - wide-area Bonjour.
  • Reply 4 of 28
    asciiascii Posts: 5,936member
    Quote:
    Originally Posted by physguy View Post


    It doesn't need BTMM, what is said is that both services use the same underlying tech - wide-area Bonjour.



    It also said "For this to work, the Mac desktop must first be securely registered into Apple's Dynamic DNS server by [...] turning BTMM on"
  • Reply 5 of 28
    slewisslewis Posts: 2,081member
    Null.
  • Reply 6 of 28
    physguyphysguy Posts: 920member
    Quote:
    Originally Posted by ascii View Post


    It also said "For this to work, the Mac desktop must first be securely registered into Apple's Dynamic DNS server by [...] turning BTMM on"



    Oops, sorry, missed that. I actually think BTMM will be the way to stream your home itunes content to your iPhone. Should be very easy for Apple to set up at this point, in principle. For me, and I know there are a number of people here with problems, BTMM works flawlessly since 10.5.2. I have computers at two different locations (at opposite ends of the country, that I access from almost anywhere in the world - hotels, airline clubs, etc., with not a problem. Streaming to iphone over this would be great.
  • Reply 7 of 28
    solipsismsolipsism Posts: 25,726member
    Quote:
    Originally Posted by physguy View Post


    Oops, sorry, missed that. I actually think BTMM will be the way to stream your home itunes content to your iPhone. Should be very easy for Apple to set up at this point, in principle. For me, and I know there are a number of people here with problems, BTMM works flawlessly since 10.5.2. I have computers at two different locations (at opposite ends of the country, that I access from almost anywhere in the world - hotels, airline clubs, etc., with not a problem. Streaming to iphone over this would be great.



    In theory, it should be easy but Apple needs to work on so many other things before getting that up and running. Once the current MM issues are ironed out I'd like Apple to allow MM users to utilize their iDisk more effectively. In other words, perfect the cloud before adding an outside wrench like BTMM's wide-area bonjour.



    Here is what I have in mind based on what we know and presume of Apple:
    ? I can't use the iPhone for typical file storage (something that probably won't change anytime soon)

    ? Apple is all about the connected cloud computing these days

    ? The iPhone can already open and read pretty much any "business"-type file I send to it via email

    ? Mobile Safari can display a few of these file types in the browser*
    With those four things going on it would be nice to have a simple iPhone app that would use my MM credentials already in the iPhone so I can access MS Office, iWork, PDF, and other applicable files that I've syncing using iDisk from my Mac(s) and/or PC(s). This means that I can drag files to my iDisk folders and know full well that my iPhone could at least read them and email them to others from my iPhone at will.



    When you consider the current solution is to email myself the files ahead of time this becomes an issue.



    Along with this, I'd also like to be able to save email attachments to my iDisk folders as well be able to at least stream (codec-compliant) A/V media that I store on iDIsk. Sometimes you want it available but don't necessary want it part of your iTunes library. It would be nice to be able to add media to your mobile iTunes library outside of the mobile iTunes store, but I can't even edit playlists and metadata so I'm not holding my breath for that one.





    * You can still access the iDisk Public Folder in mobile Safari, but you can't read these files as DLing is the option available.
  • Reply 8 of 28
    I don't understand what BTMM is? I always thought it was an acronymn for Bukit Timah Monkey Man. Though in this case I think it stands for something else.
  • Reply 9 of 28
    solipsismsolipsism Posts: 25,726member
    Quote:
    Originally Posted by Ninja_Monkey View Post


    I don't understand what BTMM is? I always thought it was an acronymn for Bukit Timah Monkey Man. Though in this case I think it stands for something else.



    Back To My Mac
  • Reply 10 of 28
    hzchzc Posts: 63member
    Quote:

    The only visible difference (apart from updated branding) is that MobileMe can now be set to 'automatically' sync bookmarks, calendar events, ...



    The 'automatic' option was there before. I believe how it works is that when data is changed that makes the desktop out-of-sync with the cloud (based on what you have set to sync), the syncing is triggered. Sometimes this takes more than a few seconds, but it essentially gives you something akin to push.
  • Reply 11 of 28
    hzchzc Posts: 63member
    Quote:
    Originally Posted by jtrwallace View Post


    My situation is this:



    I get a new e-mail on my .Mac account and it shows up pretty much at the same time on my Mac in Mail and on my iPhone. If I'm at my computer, I use Mail to look at the e-mail. So I read the e-mail and it gets synced to MobileMe presumably that I have read the e-mail. When I check me.com, it shows up as read. But, my iPhone still has a badge on the Mail app indicating I have one unread e-mail. It will stay this way until the next time I get a new e-mail (which ends up just keeping the badge since now there is a *new* unread e-mail and the old one is read) or until I open Mail on my phone and let it refresh and realize that the e-mail is read.



    Is this just how it works? When .Mac was just IMAP it would at least figure out that the mail was read after 15 minutes. Now, it never will unless I open Mail on the iPhone. Any thoughts?



    Yes, this is exactly how it works at the moment. It seems to only push NEW messages. I don't mind this at all as battery power is not a luxury at the moment. And unless you're only getting one or two new messages a day, you'll soon be in sync count-wise at the arrival of a new message, like you stated.
  • Reply 12 of 28
    physguyphysguy Posts: 920member
    Quote:
    Originally Posted by solipsism View Post


    In theory, it should be easy but Apple needs to work on so many other things before getting that up and running. Once the current MM issues are ironed out I'd like Apple to allow MM users to utilize their iDisk more effectively. In other words, perfect the cloud before adding an outside wrench like BTMM's wide-area bonjour.



    Here is what I have in mind based on what we know and presume of Apple:
    • I can't use the iPhone for typical file storage (something that probably won't change anytime soon)

    • Apple is all about the connected cloud computing these days

    • The iPhone can already open and read pretty much any "business"-type file I send to it via email

    • Mobile Safari can display a few of these file types in the browser*
    With those four things going on it would be nice to have a simple iPhone app that would use my MM credentials already in the iPhone so I can access MS Office, iWork, PDF, and other applicable files that I've syncing using iDisk from my Mac(s) and/or PC(s). This means that I can drag files to my iDisk folders and know full well that my iPhone could at least read them and email them to others from my iPhone at will.



    When you consider the current solution is to email myself the files ahead of time this becomes an issue.



    Along with this, I'd also like to be able to save email attachments to my iDisk folders as well be able to at least stream (codec-compliant) A/V media that I store on iDIsk. Sometimes you want it available but don't necessary want it part of your iTunes library. It would be nice to be able to add media to your mobile iTunes library outside of the mobile iTunes store, but I can't even edit playlists and metadata so I'm not holding my breath for that one.





    * You can still access the iDisk Public Folder in mobile Safari, but you can't read these files as DLing is the option available.



    I make the following comments not be argumentative but to illustrate another point of view. For me, right now, MM works almost exactly as I need it to and gives me the value I want for the $8.25/month. To me none of the above adds value. What I would like is..
    1) Add alarm editing to MM calendar web app

    2) complete push from the desktop

    3) add groups to MM so that effective calendar sharing and editing is possible

    4) the BTMI (Back-to-my-itunes) would be extremely nice

    I use the iphone not as a lap-top replacement, nor could I no matter what was done because of the keyboard (and no, a mechanical keyboard would be worse) and screen size so added communications facilities would be much more valuable to me than lap-top type of capabilities.



    Cheers,
  • Reply 13 of 28
    solipsismsolipsism Posts: 25,726member
    Quote:
    Originally Posted by physguy View Post


    I make the following comments not be argumentative but to illustrate another point of view. For me, right now, MM works almost exactly as I need it to and gives me the value I want for the $8.25/month. To me none of the above adds value. What I would like is..
    1) Add alarm editing to MM calendar web app

    2) complete push from the desktop

    3) add groups to MM so that effective calendar sharing and editing is possible

    4) the BTMI (Back-to-my-itunes) would be extremely nice

    I use the iphone not as a lap-top replacement, nor could I no matter what was done because of the keyboard (and no, a mechanical keyboard would be worse) and screen size so added communications facilities would be much more valuable to me than lap-top type of capabilities.



    Cheers,



    You can't beat that price for 20GB of cloud storage. It seems people look at MM as just an expensive, ad free email client and not all that it affords.



    Do you know AppleScript? I don't, or I would have made an app that will sync with MM a month ago. I have my Automatica MM sync set to every 5 minutes, but at this interval (or even every 15 minutes) it's a waste of processing power and bandwidth as my data doesn't change that often and so I don't need a sync to occur that often.



    What I'd like to create (but I suck at scripting) is a simple app that is launched at startup and run constantly looking for a new modified date for contacts, calendars, or bookmarks data files. If any of those differ from the date it has stored in the PLIST file for the last modification date then it starts the sync process. This would allow you have Push from the Mac desktop (except for Mail which is still reliant on your mail app poling the email server) and keep the full MM syncing down to a minimum, even on manual.
  • Reply 14 of 28
    physguyphysguy Posts: 920member
    Quote:
    Originally Posted by solipsism View Post


    You can't beat that price for 20GB of cloud storage. It seems people look at MM as just an expensive, ad free email client and not that it affords.



    Do you know AppleScript? I don't, or I would have made an app that will sync with MM a month ago. I have my Automatica MM sync set to every 5 minutes, but at this interval (or even every 15 minutes) it's a waste of processing power and bandwidth as my data doesn't change that often and so I don't need a sync to occur that often.



    What I'd like to create (but I suck at scripting) is a simple app that is launched at startup and run constantly looking for a new modified date for contacts, calendars, or bookmarks data files. If any of those differ from the date it has stored in the PLIST file for the last modification date then it starts the sync process. This would allow you have Push from the Mac desktop (except for Mail which is still reliant on your mail app poling the email server) and keep the full MM syncing down to a minimum, even on manual.



    I've actually been trying to kludge something similar together. I have a home server that's running Apple's opensource CalendarServer and it works great for my family but can't sync across iCal to the iPhone - the CalendarServer calendar is separate from the other ical calendars. You can see them all on iCal but not the web app. I wanted to write an applescript to sync a web attached calendar to the calendar server calendar but its not trivial as the structure of a calendar event is not trivial if you include alarms, etc. Also, I've found the applescript interface to the event objects somewhat obtuse. It's really in apple court to solve this, and I think they well as CalendarServer is the core of the Leopard server calendar manager.
  • Reply 15 of 28
    doroteadorotea Posts: 323member
    While BTMM sounds nice, isn't there a security risk involved? How would I secure my computer from intruders from getting in? Just sounds too good to be true....

    \
  • Reply 16 of 28
    physguyphysguy Posts: 920member
    Quote:
    Originally Posted by Dorotea View Post


    While BTMM sounds nice, isn't there a security risk involved? How would I secure my computer from intruders from getting in? Just sounds too good to be true....

    \



    I don't believe its any more a security risk than any other on-line storage of your information such as a webmail like google, or your credit card account access, etc. The transmissions are encrypted just like you would expect. You do need to keep your Mobile Me account information secure and your login information to you home system secure, as you would for any on-line information.
  • Reply 17 of 28
    So, are the Address Book and iCal syncs from the iPhone/iPod Touch encrypted? I wondered if this info was in the open while on a public WiFi network. I can't find any info on Apples website, which is odd, especially if it is secure.
  • Reply 18 of 28
    Quote:
    Originally Posted by hzc View Post


    Yes, this is exactly how it works at the moment. It seems to only push NEW messages. I don't mind this at all as battery power is not a luxury at the moment. And unless you're only getting one or two new messages a day, you'll soon be in sync count-wise at the arrival of a new message, like you stated.



    I am usually at my desk all day with my iPhone plugged into my MacBook Pro the entire time. So I see the unread badge on my phone often and it makes me wonder if maybe it actually is a new e-mail that I haven't read so I switch to Mail to find that there may or may not be a new message. It's just annoying. I'd rather lose battery life.
  • Reply 19 of 28
    Quote:
    Originally Posted by solipsism View Post


    You can't beat that price for 20GB of cloud storage. It seems people look at MM as just an expensive, ad free email client and not that it affords.



    Do you know AppleScript? I don't, or I would have made an app that will sync with MM a month ago. I have my Automatica MM sync set to every 5 minutes, but at this interval (or even every 15 minutes) it's a waste of processing power and bandwidth as my data doesn't change that often and so I don't need a sync to occur that often.



    What I'd like to create (but I suck at scripting) is a simple app that is launched at startup and run constantly looking for a new modified date for contacts, calendars, or bookmarks data files. If any of those differ from the date it has stored in the PLIST file for the last modification date then it starts the sync process. This would allow you have Push from the Mac desktop (except for Mail which is still reliant on your mail app poling the email server) and keep the full MM syncing down to a minimum, even on manual.



    agreed!
  • Reply 20 of 28
    fstopfstop Posts: 10member
    Apple seems to have made a major improvement to syncing with Mobile Me over the weekend. iCal appears to sync 10X faster now.
Sign In or Register to comment.