Windows Azure Mobile Services, Connecting Cross Platform Devices

Preview:

DESCRIPTION

People are getting more and more connected and moving away from computers to using more mobile devices than ever before. Tablets, phones, slates are becoming the new computers. All these devices and applications also need data, synchronization, security and much more. The broad reach, the number of devices and apps and the big amount of different platforms existing today, are pushing the needs for scalable and high available solutions running on a solid cloud platform, like Windows Azure. One of the killer features of Windows Azure is WAMS, the Windows Azure Mobile Services. A Solid platform to connect cross platform devices and to open up a big set of features needed to build mobile applications. In this session we will give you an introduction to WAMS, show you its true power and demonstrate how it can be used on multiple platforms to have one common way of connectivity. Managing and opening up your data to mobile users, while keeping the flexibility of validation and queries. Securing your applications by enabling authentication and authorization and by allowing the user to do single sign on or to use his favorite identity provider like Live, Facebook or Twitter. Enabling standard communication means like email and SMS, directly from your own application. And last but not least, enriching applications using push notifications, to send information from server to client and to notify users about new content.

Citation preview

Windows Azure Mobile ServicesConnecting Cross Platform Devices

Who Am I?

• Kristof Rennen

• Technical Architect at Vanbreda Risk & Benefits• Microsoft Extended Experts Team Member• Crew Member of Azug, the Belgian Windows Azure User

Group

• @kristofrennen• contact@kristofrennen.be

WAMSDataAuth*NotificationsDiagnostics & Scale

Agenda

Windows Azure Mobile Services

What is WAMS?

Data

Notifications

Auth

Server Logic

Scale

Logging

Diagnostics

Key ScenariosWindows Azure Mobile Services are ideal for:

Modern mobile appsWindows Store Apps, Windows Phone, iOS, Android

Common ScenariosReduces the friction associated with repeating common tasks such as user authentication, push notifications and structured storage

Rapid DevelopmentTime is money. Get your app up and running sooner when you use Mobile Services to configure a straightforward and secure backend in less than five minutes.

Setting up a Mobile ServiceDemo

Data

Structured StorageStructured Storage with SQL DatabaseIf using single database apps are partitioned by schema

AppX.TodoitemAppY.Todoitem

Manage data inPortalSQL PortalSQL Management StudioREST API…

Server LogicAutomatic service REST API generated for storageDynamic Schema on/offAbility to author server logic that intercepts CRUD operation pipelineRich querying capability

Server LogicSupported Modules + Globals

mssqlrequestconsolepushtablesstatusCodes

mssql.query('select top 1 * from statusupdates', { success: function(results) { console.log(results);

} }

);

REST API to SQL type mappings

JSON Value T-SQL Type

Numeric values (integer, decimal, floating point)

Float

Boolean Bit

DateTime DateTimeOffset(3)

String Nvarchar(max)

Working with DataDemo

Auth*

Auth*Authenticate against Windows Live, Twitter, Facebook, …Table level permissions for each CRUD operation

EveryoneAnyone with the Application KeyOnly Authenticated UsersOnly Scripts and Admins

More granular control with server side scriptsuser.level: {admin, authenticated, anonymous}user.userId: id or undefined if not authenticated

Securing your service and appDemo

Notifications

Push Notification Lifecycle Overview1. Request Channel URI

2. Register with your Cloud Service

3. Authenticate & Push Notification

Windows 8

(1)

(2)

(3)

(3)

Push NotificationsIntegrates with WNS to provide Toast, Tile and Badge notificationsPortal captures your WNS client secret and package SIDpush.wns.* provides:

clean easy object model to compose notifications

Performs auth against WNS for you

Supported NotificationssendTileSquareBlocksendTileSquareText01sendTileSquareText02sendTileSquareText03sendTileSquareText04sendTileWideText01sendTileWideText02sendTileWideText03sendTileWideText04sendTileWideText05sendTileWideText06sendTileWideText07sendTileWideText08sendTileWideText09sendTileWideText10sendTileWideText11sendTileSquareImagesendTileSquarePeekImageAndText01sendTileSquarePeekImageAndText02sendTileSquarePeekImageAndText03sendTileSquarePeekImageAndText04

sendTileWideSmallImageAndText01sendTileWideSmallImageAndText02sendTileWideSmallImageAndText03sendTileWideSmallImageAndText04sendTileWideSmallImageAndText05sendTileWidePeekImageCollection01sendTileWidePeekImageCollection02sendTileWidePeekImageCollection03sendTileWidePeekImageCollection04sendTileWidePeekImageCollection05sendTileWidePeekImageCollection06sendTileWidePeekImageAndText01sendTileWidePeekImageAndText02sendTileWidePeekImage01sendTileWidePeekImage02sendTileWidePeekImage03sendTileWidePeekImage04sendTileWidePeekImage05sendTileWidePeekImage06

sendToastText01sendToastText02sendToastText03sendToastText04sendToastImageAndText01sendToastImageAndText02sendToastImageAndText03sendToastImageAndText04

Notify users using Push NotificationsDemo

Diagnostics & Scale

Diagnostics, Logging and Scale

DiagnosticsAPI callsCPU TimeData Out

Loggingconsole.error(…)console.log(…)

Scale - ComputeScale out instance countScale up VM size

Scale - StorageScale out mobile service tenant to dedicated SQL DBScale up SQL DB

Diagnostics & ScaleDemo

Free offer during preview

Running on shared instances

10 Mobile Services 1GB SQL

Database

Must be deployed to US-East DC

Data transfer is per subscription, not per mobile service

No SLA during Preview. Only small instances available. Can upgrade to a reserved instance at 33% discount from normal Pay-As-You-Go rates during Preview.

From

WA

Free Tria

lUnlimited ingress

165MB daily egress

Pricingpricing & licensing $ service level

agreements

PreviewNo availability SLA*

General Availability99.9%

Shared Instance (multitenant environment)

Small instance is the only size available; multiple may be purchased

Free at public preview launch

Up to 10 applications

Reserved Instance (private VM)

Small instance is the only size available; multiple may be purchased

Charge for Preview will be at the same reduced rate as Web Sites

Up to 10 applications

Summary

Data

Notifications

Auth

Server Logic

Scale

Logging

Diagnostics

Resources

28

Tutorials - Mobile Services Developer Portal http://www.windowsazure.com/mobile

API Reference http://bit.ly/Q3Aq6G

iOS and Android http://chrisrisner.com/

Build apps on Windows. Discover your new home.

http://msdn.be/apps

http://www.microsoft.com/belux/meet/

THANK YOU

Recommended