Building mobile back ends with windows azure mobile services

Preview:

DESCRIPTION

Sydney Azure User Group presentation, June 2013

Citation preview

Building mobile back ends with windows azure mobile services

Windows Azure Sydney User Group

June 2013

Aidan Casey

@AIDANJCASEY | acaseyblog.wordpress.com

Solutions architect @MYOB Australia

Agenda BaaS overview

Windows Azure Mobile Services Features

- Storage

- Push Notifications

- Authentication & Authorisation

- Scheduler

- Diagnostics & Scale

How long does it take to build a mobile app?

18 weeks!http://www.kinvey.com/blog/2086/how-long-does-it-take-to-build-a-mobile-app

Why so long?

Killer Idea User Experience

Store Data

Social Integration

Push

Security

Scale

Versioning

API Geo Location

Analytics

Choose Technology

Store Data

Social Integration

Push

Security

Scale

Versioning

API Geo Location

Analytics

Backend as a Service (BaaS)

Data

Auth Server Logic Scheduler

Logging & Diag

Scale

Notifications

SDK’s• Windows Store

• Windows Phone 8

• iOS

• Android

• JavaScript

github.com/WindowsAzure/azure-mobile-services

DemoCREATING A NEW MOBILE SERVICES APP

Storage

Data

Structured Storage Windows Azure SQL Database

Dynamic schema on/off

Apps partitioned by schema

REST API generated per table (very data centric platform)

Access your data through the portal, SQL Management studio or REST API

JSON -> SQL data typesJSON value T-SQL type

Numeric values (integer, decimal, floating point) Float(53)

Boolean Bit

DateTime DateTimeOffset(3)

String Nvarchar(max)

DemoUSING THE JAVASCRIPT SDK

Server side Logic

Server Logic – node.jsnode.js on small azure VM’s (azure websites infrastructure)

Server side pipeline hooks (interceptors)

Out of the box you have access to the following node packages

(June Release) - you now have access to NPM

request, console, push.*, tables, sql, statusCodes, azure, mssql

Bypassing SQL Server storage 1. Virtual Tables

2 Create Custom API

Notifications

Notifications

Push Notifications The global push object is used to send push notifications.

Success & Error Callbacks are provided

Method

push. apns Apple Push Notification Service iOS apps

push. gcm Google Cloud Messaging Android apps

push. mpns Microsoft Push Notification Service Windows Phone 8 apps

push. wns Windows Notification Services Windows Store apps

Push Notification Lifecycle

1. register app for push notifications

2. register the apple send token to Mobile Service

3. Server side script

push.apns(…)(1)

(2)

(3)

(3)

iOS

DemoPUSH NOTIFICATIONS TO A WINDOWS STORE APP

Authentication & Authorisation

Auth

AuthorisationTable level authorization for CRUD operations

Everyone: any request by anyone is accepted.Anyone with Application Key: app key distributed w/ the app (default)Authenticated Users: users authenticated by Live Connect.Scripts and Admins: registered scripts or requests via the master key

Application Key should not be used in production !

CLI & Diagnostics

Scheduler

Scheduler

Cool Party Add-Ins from Azure Store

Git publishing

Running on shared instances

10 Mobile Services

1GB SQL Database

Data transfer is per subscription, not per mobile service

Unlimited ingress

165MB daily egress

Scheduler

700 jobs a month

Free offer for current preview release

Resources Official Videos & Tutorials

http://www.windowsazure.com/en-us/develop/mobile/

Real world Use Cases & black belt tips

http://chrisrisner.com/Common-Scenarios-with-Windows-Azure-Mobile-Services

Mr Azure Mobile Services (Josh Twist)

http://www.thejoyofcode.com/

Cloud Nick ( Nick Harris )

http://www.nickharris.net/

?