logo

New Response

« Return to the blog entry

You are replying to:

    • avatar
    • Adam Lowry
    • Posted on Wed 6 Jul 2011 05:03 PM

    "Anybody know the exact path the packets take to get to the intended device?"

    I can explain a bit (I'm one of the Urban Airship co-founders). Each of the major push notification systems work by keeping a persistent connection open between the device and some server. To work around NAT issues, the connection is initiated by the device; that way it works behind most firewalls. So in Apple's case, the device opens a secure connection to Apple, and Apple's push gateway routes messages for each app to that device; a daemon on the device then displays the messages or passes them to an application. C2DM and BlackBerry push work in similar ways, although some details differ.

    As for sending a message, we either talk with the platform gateway (in the case of APNS on iOS, C2DM on Android, or BlackBerry Push), or directly to a device for our own Helium messaging system. We open these connections to platform gateways using the app developer's keys on their behalf. So for a normal message the flow is:

    1. Your server or application makes an API call to Urban Airship.

    2. We transform that message into 1 or more (up to millions if this is a broadcast) messages in the platform's proprietary formats (after verifying them for correctness and that the recipients are available to receive messages) and deliver them to the platform gateway or into our Helium messaging system.

    3. The platform gateway sends them to the device.

    Hope that helps explain the basics!

Your Comments

Name:
E-mail:
(optional)
Website:
(optional)
Comment: