Mobile March Windows Azure Notification Hubs


Published on

Push notifications are critical to craft engaging app experience and increase usage and user interest. Windows Azure Notification Hubs support multi-platform push with Windows, iOS, and Android, publish/subscribe routing to particular groups of users or devices, and low latency broadcast to millions of devices. Join us to learn how to use Notification Hubs to target millions of devices at once and single targeted users with just a few lines of code.

Easily provide push notification support for Windows, Windows Phone, iOS, and Android, easily send broadcast messages to all users or targeted messages to specific users, start free, scale up and down as needed.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Mobile March Windows Azure Notification Hubs

  1. 1. Delivering push notifications to millions of mobile devices
  2. 2. @codel8r Me adam grocholski
  3. 3. Notification Hubs…
  4. 4. …any easy way to send personalized notifications both to single users and very large groups…
  5. 5. …regardless of platform.
  6. 6. Agenda Push notifications Notification hubs Tags Templates
  7. 7. Why Push? Push is essential to the user experience of many apps. Real world apps have complex needs.
  8. 8. Push notifications Push notifications require a platform specific service. An e2e solution requires lots of back-end code.
  9. 9. Push notification lifecycle Registration at app launch Sending notification Maintenance Platform Notification Service App back-end Client app
  10. 10. Challenges of push notifications Platform dependency Routing Scale
  11. 11. Why Notification Hubs? One-time set up Register Send Notification GCM WNS Notification Hub App back-end Android app Windows Store app
  12. 12. Advantages of using Notification Hubs No platform-specific protocols. Avoid storing device information in the app back-end. Broadcast
  13. 13. Sending notifications to specific devices Tags as interest groups. You can use tags also for: Notification Hub App back-end Tag:”Beatles”Tag:”Wailers” Tag:”Beatles”
  14. 14. Using templates for multi-platform push Registration. Send notification. Version independence. Service Bus Notification HubApp back-end <toast> <visual> <binding template="ToastText01"> <text id="1">$(message)</text> </binding> </visual> </toast> { aps: { alert: “$(message)” } } { message: “Hello!” } Hello! Hello!
  15. 15. Enough talk…show me the code!
  16. 16. What Next? Try it out. For Free. Build what you want. Scale as you need. Full access with no strings attached. Hello startups! You have an ideas so brilliant it burns. BizSpark can help make it real. or CONTACT ME!
  17. 17. Can't make it to San Francisco to attend Build this year? No worries, we've got you covered. Join us at the local Microsoft office to watch the live stream of this year's keynote. We can't say much at this point, other than that the content will be amazing. We know it' during lunch, and we know how developers can get when they're not fed. Have no fears, food and beverage will be provided. We'll also have a few giveaways including: • Nokia Lumia 1020's • Dell Venue 8 Pro Tablets Register Now:
  18. 18. Register Now: When? Saturday, March 29, 2014, 9:00 AM – 4:30 PM Where? SoMakers Why? Get bootstrapped into developing application leveraging all Windows Azure has to offer
  19. 19. @codel8r Contact Me adam grocholski
  20. 20. //instantiate a new NotificationHub instance NotificationHub hub = new NotificationHub("<hub name>", "<connection string>", context); //get the gcm id GoogleCloudMessaging gcm = GoogleCloudMessaging.getInstance(context); String gcmid = gcm.register(SENDER_ID); //register with the NotificationHub NativeRegistration r = hub.register(gcmid);
  21. 21. //instantiate a new instance of NotificationHubClient var hubClient = NotificationHubClient.CreateClientFromConnectionString("<connection string>", "<hub name>"); //create the json payload for the notification var payload = "{ "data" : {"msg":"Hello from Windows Azure!"}}"; //send notification via gcm hubClient.SendGcmNativeNotificationAsync(payload);
  22. 22. (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *) deviceToken { … SBNotificationHub* hub = [[SBNotificationHub alloc] initWithConnectionString: @"<connection string>" notificationHubPath:@“<hub>"]; [hub registerNativeWithDeviceToken:deviceToken tags:nil completion:^(NSError* error) { if (error != nil) { NSLog(@"Error registering for notifications: %@", error); } }]; }
  23. 23. var hubClient = NotificationHubClient.CreateClientFromConnectionString("<connection string>", “<hub name>"); var toastForIos = @“<notification payload>"; hubClient.SendAppleNativeNotificationAsync(toastForIos);
  24. 24. Delivery guarantee and telemetry Notification Hubs do not provide delivery guarantee. Telemetry.
  25. 25. Scale Notification Hubs run on a fully parallelized architecture. Number of devices and latency.
  26. 26. Platform support Platform support.