Presentation is loading. Please wait.

Presentation is loading. Please wait.

Enhance Your Mobile Engagement Strategy with Azure

Similar presentations


Presentation on theme: "Enhance Your Mobile Engagement Strategy with Azure"— Presentation transcript:

1 Enhance Your Mobile Engagement Strategy with Azure
Elio Damaggio | Program Manager II, Azure Notification Hubs Miranda Luna | Product Manager, Azure Mobile

2 Course Topics Enhance Your Mobile Engagement Strategy w/ Azure
01 | Azure Mobile 06 | Push-to-Sync (sync w server) 02 | Notification Hubs 07 | Push-to-Pull (pull from server) 03 | Broadcast Push 08 | Retargeting & Coupons 04 | Segmented Push 09 | Scale & Security 05 | Localized Push 10 | Resources

3 Please leave this area blank to allow for picture in picture recording
Setting Expectations Target Audience Mobile app developers that want to drive higher customer engagement and retention Suggested Prerequisites/Supporting Material MVA Notification Hubs Deep Dive Azure Fridays Broadcasting Alerts Filtering Alerts Templates & Internalization User Specific Alerts

4 Join the MVA Community! Microsoft Virtual Academy—Free online training! Ask questions in the Born to Learn MVA Forum! Visit Earn while you learn! 50 MVA Points for this event! Visit Code: BldgBlks3

5 01 | Azure Mobile

6 Mobile Backend Push Notifications Device Messaging
4/6/2017 Mobile Backend Ready-made mobile app backend for iOS, Android and Windows Create new mobile apps or add a mobility layer to existing systems Speeds up development time and reduces ongoing maintenance cost Push Notifications Mobile push notification engine for existing apps Enhance push notifications in any app with personalization and localization Improves user engagement and retention by delivering relevant content more quickly Device Messaging Messaging infrastructure that sits between and within applications Build multi-tier and hybrid applications or smart device information exchange patterns Delivers inter- and intra-app messages faster and connects on-premises systems to the cloud © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

7 02 | Notification Hubs

8 Mobile Push Notifications 101
4/6/2017 Mobile Push Notifications 101 Register device handle at app launch Client app contacts Platform Notification Service (PNS) App updates handle in backend client app Platform Notification Service Send Notification App backend sends notification to PNS PNS pushes the notification to the app on the device Maintain device handles Delete expired handles when PNS rejects them App back-end © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

9 Push Notification Challenges
4/6/2017 Push Notification Challenges While there are significant benefits to using push notifications in a mobile app, rolling your own push infrastructure is extremely difficult in terms of implementing a system capable of: Cross-Platform Push Notifications Each push service (APNS for iOS, GCM for Android, WNS for Windows, etc.) has different protocols (e.g., HTTP vs. TCP, xml payload vs. JSON payload) Personalizing on the server-side based on interest and location Segmenting users based on interest tags and routing only the most relevant content to each segment Localizing notifications on the client-side based on language, currency, device, etc. Each device displays notifications differently High-Volume with Low Latency Limited by the capability of each VM so need to spin up scores of VMs and shard your application in order to serve a large user base Maintaining accurate device handle registry Adding registrations upon installation, updating tags, pruning upon on uninstall © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

10 Azure Push Notifications
One-time set up Create a Notification Hub Register The client app retrieves its current handle from the PNS. Client app (or app backend) registers the handle with Notification Hub Send Notification The app back-end sends a message to the Notification Hub. Notification Hub pushes it to the PNS Android app iOS app Windows 8.x app App back-end GCM APNs WNS MPNS Notification Hub

11 Without Notification Hubs With Notification Hubs
4/6/2017 Challenge Area Without Notification Hubs With Notification Hubs Cross-Platform Push Separate registration logic Separate communication paths using different protocols for each platform push notification service Upload credentials and go Notification Hubs establishes and maintains communication paths Personalization Field to create and maintain in device registry for each segmentation point Nulls for existing registered devices as additional interest points are added Logic to route each message through the appropriate and available VM(s) Assign interest tags to each registered device and send to any subset of uses you can define with a Boolean expression of tags Localization Send different messages for different formats, languages, etc. since each message contains different content Create a template for each device based on display preferences (banner vs toast, language, currency, etc.) No additional logic required Single message to send High-Volume, Low Latency Go with small VMs to process the work and end up with higher latency due to the time it takes to spin up many machines Go with large VMs, always keeping a few ready and waiting, and end up paying for idle VMs Automatically handled by Notification Hubs, which is designed to deliver millions of notifications within minutes Pay only for the push notifications you send, never idle VMs Maintaining Device Registry Create and maintain device table with likely many null values as you add new interest tags Logic to handle expirations due to uninstalls; possible suspensions from PNS if incomplete Maintains device registry and automatically updates based on uninstalls © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

12 Tags and Templates Use Tags for Segmentation
Only send message to this segment of users Use Templates for Personalization & Localization Display message in a particular format

13 03 | Broadcast Push

14 Bing News Build 2013 4/6/2017 Register device ChannelURIs WNS
Windows 8 devices Breaking news Notification Hubs MPNS Bing Notification Platform Windows Phone devices © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

15 Broadcast to all users Tags
4/6/2017 Broadcast to all users Tags App back-end App back-end Broadcast a notification to all users by making a single API from your app backend w/o specifying any tags Notification Hub © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

16 Broadcast to all users, in batches Tags
4/6/2017 Broadcast to all users, in batches Tags App back-end App back-end Tags can be used to represent groups of users for sending notifications to all users in batches Client app authenticates with the app backend Devices pass device handle to the app backend App backend registers the devices for the tag “batchNo” Target batches in sequence by specifying particular “batchNo” tags in sequential API calls Notification Hub Tag: ”Batch1” Tag: ”Batch4” Tag: ”Batch4” © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

17 04 | Segmented Push

18 4/6/2017 Sochi 2014 Results App © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

19 How Sochi used Notification Hubs
Build 2013 4/6/2017 How Sochi used Notification Hubs Register device ChannelURIs APNS country, sport, athlete, medals, emergency alerts,... Register device tokens for tags GCM Result Alerts MPNS Notification Hubs Sochi.ru backend WNS © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

20 Notify a segment, based on interest Tags
4/6/2017 Notify a segment, based on interest Tags App back-end Tags as interest groups Client app can register with a set of interest tags. Tags are simple strings (no pre-provisioning is required) App backend can target all clients with the same tag in a single API call Tag Expressions allow you to segment any subset of interest tags that can be expressed using Boolean expressions Users tagged for Rolling Stones AND Beatles (band:RollingStones && band:Beatles) Users tagged for either Rolling Stones or Beatles (band:RollingStones || band:Beatles) Users tagged for Rolling Stones but not also Beatles (band:RollingStones && !band:Beatles Users tagged for Rolling Stones or Beatles in Seattle ((band:Rolling Stones || band:Beatles) && loc:Seattle) App back-end Tag: ”Beatles” Notification Hub Tag: ”RollingStones” Tag: ”Beatles” © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

21 Notify a single logical user Tags
4/6/2017 Notify a single logical user Tags App back-end App back-end Tags can be used to represent individual logical users Client app authenticates with the app backend Devices pass device handle to the app backend App backend registers the devices for the tag “userId” Target individual users by specifying particular “userId” tag Notification Hub Tag: ” ” Tag: ” ” © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

22 05 | Localized Push

23 Localization Templates
Build 2013 4/6/2017 Localization Templates <toast> <visual> <binding template=\"ToastText01\"> <text id=\"1\">$(tempF)</text> </binding> </visual> </toast> Registration Client apps can register with personalized templates, e.g., Alice’s Surface wants to receive weather information in F degrees. Bob’s iPhone wants weather information in C degrees. Send notification. App back-end sends a message including both temperatures: {tempC: “16”, tempF: “61”}. Template Expressions. Template support a simple expression language: E.g., {‘Sam, ’+$(friend)+’ added you to ’+$(groupName)+‘ group’}. 16 {tempC: “23”, tempF: “73”} App back-end Notification Hub { aps: { alert: “$(tempC)” } 61 © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

24 06 | Push-to-Sync

25 4/6/2017 Push to Sync Use push notifications to update all devices when user makes an update on one Adding music to a playlist on tablet, then syncing that update to phone Send notification to ‘wake up’ the client app Client app pulls update from app backend User never experiences a visual tile or toast, just views the synced content on all devices App back-end Platform Notification Service Notification Hub © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

26 07 | Push-to-Pull

27 Push to Pull Send a push notification to the device
4/6/2017 Push to Pull Send a push notification to the device Push notification prompts the device to pull information from the app backend Device then pulls the information directly from the app backend Information does not flow through PNS or NH PNS pushes the notification to the app on the device Information is displayed to the user just like a normal mobile push notification, even though it travels more directly and securely Platform Notification Service Notification Hub App back-end © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

28 08 | Retargeting & Coupons

29 Retargeting Every time you send a push notification, you learn something about that customer Use that information to inform tag updates and send more targeted content Key points to remember: Keep user profiles in app back-end Regularly update tags with updated segments coming from analytics/CRM…

30 Demo Example Shopping app sends push to:
Notify of status of current purchases Retarget users that do not complete purchases Publicize coupons/offers Notification system has to handle: Segments Advanced targeting

31 Retargeting & Coupons

32 Coupon Lifecycle Register tags based on Target users with offer
Location CRM/demographics App usage Target users with offer Track coupon performance Update Tags Retarget App back-end Tapped coupon CRM Loc:NYC && loyalty:gold Loc:NYC && loyalty:gold && !tapped:{couponId} Notification Hub 32

33 09 | Scale & Security

34 Scale & Security Each namespace can have 50 hubs, but scale namespaces, not hubs Maintain a test hub and a prod hub If you regularly broadcast to >5M devices, might want to shard against multiple namespaces in different regions for optimal performance Implement security on the device, use multi-factor auth Manage PNS creds at the namespace-level if you have multiple departments with send and read rights Warning: this introduces additional complexities

35 10 | Resources

36 Mobile Engagement at //build
Mobile Push Notifications to Any Client with Azure Notification Hubs Wednesday 4/2 5:30 – 6:30 PST Elio Damaggio @ElioDamaggio Powerful mobile apps with Mobile Services and ASP.NET Web API Thursday 4/3 5:30 – 6:30 PST Kirill Gavrylyuk, Yavor Georgiev Building Cross-Platform Line of Business Apps with Mobile Services Friday 4/4 12:30 – 1:30 PST Donna Malayeri, Chris Risner All videos will be available on Channel9

37 Notification Hubs Resources
4/6/2017 Notification Hubs Resources Windows Azure Mobile Services Overview, Tutorials and Resources Azure Documentation Center MSDN Documenation Android (tutorial) iOS (tutorial) Windows Store (tutorial) Windows Phone (tutorial) Learn/Channel 9 Introduction | iOS | Windows Store | Tags and Templates REST API Reference Windows Azure Pricing Microsoft Azure Certified Training © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

38


Download ppt "Enhance Your Mobile Engagement Strategy with Azure"

Similar presentations


Ads by Google