Notifications API
Jukka Alakontiola
Sea Beyond 2011




1   © 20011 Nokia   Sea Beyond 2011.pptx/ 2011-‐02-‐03/ JAL
Increasing Demand for Push Notifications
Push Notifications among top most requested native features

    50% of top N8 recommended downloads use a type of notification




                                                                         74% of Developers Prioritize Push




                                                                       Source: Appcelorator & IDC Developer Report: Oct 2010



2     © 2011 Nokia         Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
Why implement a shared push notification service?


             Polling                                           Push per App            Shared Push
          Anything for me?




                                  Anything for me?




                                                                                                  Ovi
                             No




                                                     No




    Drains battery                                                               50% reduction in power
    Significant hidden data use => data charges                                  consumption
    Impacts Operator network bandwidth & signaling load                          2X battery life
                                                                              Source: VTT study




3   © 2011 Nokia                  Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
Introducing Notifications API
Enabling Nokia and 3rd party developers access to optimized push notification




4   © 2011 Nokia   Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
Notifications
Today: enabled within the Qt SDK with simple, intuitive tools

                                          3rd Party & Nokia Qt / QML Apps




                                                           Qt SDK

                                                      Client API (Qt)
                   Ovi Notifications
                         API




                                                Ovi Notifications Service

                                                    Service (REST) API


                                                 3rd Party App Server (s)

5   © 2011 Nokia     Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
Design Considerations
Unlimited opportunity for app design, development, deployment, use


                                                Up-‐to-‐the-‐moment          Easy to develop
Limitless design possibilities
                                                   push delivery               and deploy

    Design how and when                      Notifications pushed the   Included in the Nokia Qt
    to deliver notifications                                            SDKs
     Optional prebuilt UI                   Optimized to assure         Implement API in hours,
     screens and popup                      lightweight bandwidth       not days
    Multiple app states                     use                         Design once and run on
    supported: foreground,                   Custom payloads up         any supported Nokia
    in the background, or not                to 1.5 kB                  device across any
    running                                                             network
    Any format, including
    text, xml, images, and
    binary




6   © 2011 Nokia     Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
Up-‐to-‐the-‐moment push delivery
Access optimized and automated connectivity


     Efficient
         Lightweight notifications
         Zlib compression algorithm for
                                                                                        Chat
                                                                                        1 New notification



         reduced data consumption
         Heuristic ping tuned to individual
         network requirements
     Real-‐time
                                                            Chat
         Notifications pushed to device in                         Ovi
         as soon as they are received
                                                                         1 new notification




         Application wake-‐up ensures
         notifications reach target app
         regardless of state.
     Secure
         SSL/TLS for client-‐ and server-‐side
         connections



7   © 2011 Nokia      Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
Notifications API
Getting Started Registration and Notification ID

             4. The Client App sends
                                  Server
                    Notification ID to App   API
                    server



    News Network




                                                                                                 Client API
                                                        Ovi
                                                                                                              1. App calls Client
                                                   2. Client API registers with                                   API to register for
                                                                                                                  the notifications
                                                       the Notifications Server
                                                                                                                  service




                                                                             3. The Notifications Server
                                                                                  sends the Notification ID
                                                                                  via the Client API



8    © 2011 Nokia           Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
Getting Started
Design. Develop. Deploy.



    1. Access SDK      2.Access API                 3. Service ID     4.Testing         5.Publish
    Access the Qt      Access API                   Register for     Test new          Apply to
    SDK via the        details incl.                Service ID and   service in        release
    Forum Nokia        DevKit on                    Service Secret   Service           production
    web.               From Forum                   on the           Sandbox or        version of App
                       Nokia                        Developer        with Simulator.   with
                       Notifications                Console          Access Sandbox    notifications
                       project site                                  and Simulator     via Developer
                                                                     via Developer     Console
                                                                     Console.          Publish App to
                                                                                       Ovi Store




                    https://projects.forum.nokia.com/notificationsapi



9    © 2011 Nokia   Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
Notifications API: A Simple Solution
Advanced functionality made easy, for the developer and the user




                                +                                      =
                                                                                Up-‐to-‐the
           Optimized                                     Service/               moment
           Connection                                   Client API             content and
                                                                                 context


     Nokia:                                     Developer:             User:
      A hosted notification                     Accessed with Nokia
     service and optional UI                    Notifications client   to them
     popup and screens                          and server APIs
                                                included with the
                                                Nokia SDK



10    © 2011 Nokia   Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL

SeaBeyond 2011 ProcessOne - Nokia: Jukka Alakontiola - Notifications API

  • 1.
    Notifications API Jukka Alakontiola SeaBeyond 2011 1 © 20011 Nokia Sea Beyond 2011.pptx/ 2011-‐02-‐03/ JAL
  • 2.
    Increasing Demand forPush Notifications Push Notifications among top most requested native features 50% of top N8 recommended downloads use a type of notification 74% of Developers Prioritize Push Source: Appcelorator & IDC Developer Report: Oct 2010 2 © 2011 Nokia Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
  • 3.
    Why implement ashared push notification service? Polling Push per App Shared Push Anything for me? Anything for me? Ovi No No Drains battery 50% reduction in power Significant hidden data use => data charges consumption Impacts Operator network bandwidth & signaling load 2X battery life Source: VTT study 3 © 2011 Nokia Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
  • 4.
    Introducing Notifications API EnablingNokia and 3rd party developers access to optimized push notification 4 © 2011 Nokia Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
  • 5.
    Notifications Today: enabled withinthe Qt SDK with simple, intuitive tools 3rd Party & Nokia Qt / QML Apps Qt SDK Client API (Qt) Ovi Notifications API Ovi Notifications Service Service (REST) API 3rd Party App Server (s) 5 © 2011 Nokia Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
  • 6.
    Design Considerations Unlimited opportunityfor app design, development, deployment, use Up-‐to-‐the-‐moment Easy to develop Limitless design possibilities push delivery and deploy Design how and when Notifications pushed the Included in the Nokia Qt to deliver notifications SDKs Optional prebuilt UI Optimized to assure Implement API in hours, screens and popup lightweight bandwidth not days Multiple app states use Design once and run on supported: foreground, Custom payloads up any supported Nokia in the background, or not to 1.5 kB device across any running network Any format, including text, xml, images, and binary 6 © 2011 Nokia Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
  • 7.
    Up-‐to-‐the-‐moment push delivery Accessoptimized and automated connectivity Efficient Lightweight notifications Zlib compression algorithm for Chat 1 New notification reduced data consumption Heuristic ping tuned to individual network requirements Real-‐time Chat Notifications pushed to device in Ovi as soon as they are received 1 new notification Application wake-‐up ensures notifications reach target app regardless of state. Secure SSL/TLS for client-‐ and server-‐side connections 7 © 2011 Nokia Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
  • 8.
    Notifications API Getting StartedRegistration and Notification ID 4. The Client App sends Server Notification ID to App API server News Network Client API Ovi 1. App calls Client 2. Client API registers with API to register for the notifications the Notifications Server service 3. The Notifications Server sends the Notification ID via the Client API 8 © 2011 Nokia Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
  • 9.
    Getting Started Design. Develop.Deploy. 1. Access SDK 2.Access API 3. Service ID 4.Testing 5.Publish Access the Qt Access API Register for Test new Apply to SDK via the details incl. Service ID and service in release Forum Nokia DevKit on Service Secret Service production web. From Forum on the Sandbox or version of App Nokia Developer with Simulator. with Notifications Console Access Sandbox notifications project site and Simulator via Developer via Developer Console Console. Publish App to Ovi Store https://projects.forum.nokia.com/notificationsapi 9 © 2011 Nokia Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL
  • 10.
    Notifications API: ASimple Solution Advanced functionality made easy, for the developer and the user + = Up-‐to-‐the Optimized Service/ moment Connection Client API content and context Nokia: Developer: User: A hosted notification Accessed with Nokia service and optional UI Notifications client to them popup and screens and server APIs included with the Nokia SDK 10 © 2011 Nokia Sea Beyond 2011.pptx / 2011-‐02-‐03 / JAL