SlideShare a Scribd company logo
-By 
Pune Microsoft Azure Developers Meetup
 Mobile Service 
 Demo – Real time Survey 
 Demo – Bus Tracking System 
 Demo – (IoT)Home Automation 
 Break 
 Azure Service Bus 
 Topics And Subscriptions 
 Demo – Disaster Alert System 
 Q & A 
9/23/2014 Talentica Software
23-09-2014 
Talentica Software
Windows Azure Mobile Services 
Agenda 
 Overview of Azure Mobile Service(ZUMO) 
 Real time application demo
Windows Azure Mobile Services 
Framework: create backend services 
NET backend: This kind of mobile service is implemented as a 
ASP.NET Web API project. Backend code is implemented as WebAPI 
controllers. 
JavaScript backend: This kind of mobile service is implemented as a 
node.js service. Backend code is written as JavaScript 
Target group: mobile apps 
Create Windows Store, WP, iOS, Android and HTML/JS apps super-fast 
Need one common backend to store and exchange data 
How you need to think about it? 
Need backend services for your apps…and your apps only 
Not a replacement for Websites or cloud services which offer higher 
level of control 
9/23/2014 Talentica Software
Windows Azure Mobile Services 
 Shared Backed 
 Easy Third Party Authentication 
 Push Notifications 
All in all using ZUMO reduces time in setting (or hosting in case of non cloud setup) in these crucial 
service , and there are always the advantages of hosted environment of Azure . 
9/23/2014 Talentica Software
Windows Azure Mobile Services 
9/23/2014 Talentica Software
Windows Azure Mobile Services 
Architecture 
9/23/2014 Talentica Software 
SDKs 
REST API 
Node.js 
Your Scripts (insert / update / delete / read)
Windows Azure Mobile Services 
Demo Realtime Survey 
 With cloud infrastructure. 
 Can reuse framework in various Mobile Apps(like 
android , iOS, windows phone or Store App, or simple 
JS based APP) 
 Realtime update, push notification across devices ( if 
we have mobile Apps built). 
 Easily integrate with social sign on (like Facebook, 
Twitter etc..) or active directory. 
9/23/2014 Talentica Software
Demo Realtime Survey 
Architecture solution 
Pusher API 
Client 
Library, JS 
API 
9/23/2014 Talentica Software
Data 
9/23/2014 Talentica Software
OAuth Identity Authentication 
• Register your app with 
an identity provider 
• Restrict permissions to 
authenticated users 
• Add authentication to 
the app 
9/23/2014 Talentica Software
9/23/2014 Talentica Software
9/23/2014 Talentica Software
Push Notification Lifecycle Overview 
 
9/23/2014 Talentica Software
REST API 
Operation Verb Description 
Login POST 
https://<service-name>.azure-mobile. 
net/login?mode=authenticationToken 
9/23/2014 Talentica Software 
Gets the user ID for a supplied authentication 
token. 
Query 
records 
GET 
https://<service_name>.azure-mobile. 
net/tables/<table_name> 
Queries data in a table. 
Insert record 
POST https://<service_name>.azure-mobile. 
net/tables/<table_name> 
Inserts a new record into a table. 
Update 
record 
PATCH https://<service_name>.azure-mobile. 
net/tables/<table_name>/<item_id> 
Updates an existing record in a table. 
Delete record 
DELETE 
https://<service_name>.azure-mobile. 
net/tables/<table_name>/<item_id> Deletes an existing record from a table.
Server Side Scripts 
apns Provide functionality to send notifications to Apple Push Notification Service (APNS) 
console Write information to Services logs 
gcm Provide functionality to send notifications to Google Cloud Messaging (GCM) 
mpns Provide functionality to send notifications to Microsoft Push Notification Service (MPNS) 
mssql Provides functionality for working directly with tables in the SQL Database using Transact-SQL 
push Provides access to objects that are used for sending push notifications to apps 
Query Provides functionality for querying Windows Azure Mobile Services 
Request Used to execute the requested operation and determine the response to the client 
statusCodes Enumerates the supported HTTP status codes can be returned by Windows Azure Mobile Services 
Table Provides functionality for working with specific tables (insert, del, update, where, take, select, etc.) 
tables Provides functionality for working with specific tables as a Table object instance 
User Represents the current requesting user. 
wns Provide functionality to send notifications to Windows Notification Service (WNS) 
azure Provides functionality to access Azure services (Blobs, Tables, Service Bus) 
request Sends HTTP requests to external web services, such as Twitter and Facebook. 
sendgrid Used to send email by using the Sendgrid email service. 
util Provides useful methods like format, isDate, isArray, isError 
xml2js XML to JavaScript object converter 
xmlbuilder Can be used to create XML documents 
sax A very simple tool to parse through an XML string 
9/23/2014 Talentica Software
References 
 http://azure.microsoft.com/en-us/ 
documentation/services/mobile-services/ 
 bit.ly/tdemo12 
 http://pusher.com/ 
9/23/2014 Talentica Software
Demo Real-time bus tracking 
Simulator sends data 
to Azure Mobile 
service. 
Service will trigger 
pusher event on data 
insert 
Pusher will send 
notification to all the 
subscribed clients 
9/23/2014 Talentica Software
Demo – (IoT)Home Automation 
Device sends data to 
Azure Mobile 
service. 
Service will trigger 
pusher event on data 
insert 
9/23/2014 Talentica Software 
Pusher will send 
notification to all the 
subscribed clients 
Fan on event 
Fan on event 
Fan on event
9/23/2014 Talentica Software
9/23/2014 Talentica Software
 1. Demystifying Azure 
 seven code samples 
 discussion/comparison between 
traditional way of coding vs 
cloud coding for each code samples. 
 
2. Cost comparison for cloud services 
 10 Cross cutting concerns when it comes to calculate cost in 
cloud. 
 How to calculate the cost for code , infrastructure , execution . 
 Sample for Azure 
 Sample for AWS 
 different calculators to be used. 
Talentica Software
9/23/2014 Talentica Software

More Related Content

Pune microsoft azure developers 2nd meetup

  • 1. -By Pune Microsoft Azure Developers Meetup
  • 2.  Mobile Service  Demo – Real time Survey  Demo – Bus Tracking System  Demo – (IoT)Home Automation  Break  Azure Service Bus  Topics And Subscriptions  Demo – Disaster Alert System  Q & A 9/23/2014 Talentica Software
  • 4. Windows Azure Mobile Services Agenda  Overview of Azure Mobile Service(ZUMO)  Real time application demo
  • 5. Windows Azure Mobile Services Framework: create backend services NET backend: This kind of mobile service is implemented as a ASP.NET Web API project. Backend code is implemented as WebAPI controllers. JavaScript backend: This kind of mobile service is implemented as a node.js service. Backend code is written as JavaScript Target group: mobile apps Create Windows Store, WP, iOS, Android and HTML/JS apps super-fast Need one common backend to store and exchange data How you need to think about it? Need backend services for your apps…and your apps only Not a replacement for Websites or cloud services which offer higher level of control 9/23/2014 Talentica Software
  • 6. Windows Azure Mobile Services  Shared Backed  Easy Third Party Authentication  Push Notifications All in all using ZUMO reduces time in setting (or hosting in case of non cloud setup) in these crucial service , and there are always the advantages of hosted environment of Azure . 9/23/2014 Talentica Software
  • 7. Windows Azure Mobile Services 9/23/2014 Talentica Software
  • 8. Windows Azure Mobile Services Architecture 9/23/2014 Talentica Software SDKs REST API Node.js Your Scripts (insert / update / delete / read)
  • 9. Windows Azure Mobile Services Demo Realtime Survey  With cloud infrastructure.  Can reuse framework in various Mobile Apps(like android , iOS, windows phone or Store App, or simple JS based APP)  Realtime update, push notification across devices ( if we have mobile Apps built).  Easily integrate with social sign on (like Facebook, Twitter etc..) or active directory. 9/23/2014 Talentica Software
  • 10. Demo Realtime Survey Architecture solution Pusher API Client Library, JS API 9/23/2014 Talentica Software
  • 12. OAuth Identity Authentication • Register your app with an identity provider • Restrict permissions to authenticated users • Add authentication to the app 9/23/2014 Talentica Software
  • 15. Push Notification Lifecycle Overview  9/23/2014 Talentica Software
  • 16. REST API Operation Verb Description Login POST https://<service-name>.azure-mobile. net/login?mode=authenticationToken 9/23/2014 Talentica Software Gets the user ID for a supplied authentication token. Query records GET https://<service_name>.azure-mobile. net/tables/<table_name> Queries data in a table. Insert record POST https://<service_name>.azure-mobile. net/tables/<table_name> Inserts a new record into a table. Update record PATCH https://<service_name>.azure-mobile. net/tables/<table_name>/<item_id> Updates an existing record in a table. Delete record DELETE https://<service_name>.azure-mobile. net/tables/<table_name>/<item_id> Deletes an existing record from a table.
  • 17. Server Side Scripts apns Provide functionality to send notifications to Apple Push Notification Service (APNS) console Write information to Services logs gcm Provide functionality to send notifications to Google Cloud Messaging (GCM) mpns Provide functionality to send notifications to Microsoft Push Notification Service (MPNS) mssql Provides functionality for working directly with tables in the SQL Database using Transact-SQL push Provides access to objects that are used for sending push notifications to apps Query Provides functionality for querying Windows Azure Mobile Services Request Used to execute the requested operation and determine the response to the client statusCodes Enumerates the supported HTTP status codes can be returned by Windows Azure Mobile Services Table Provides functionality for working with specific tables (insert, del, update, where, take, select, etc.) tables Provides functionality for working with specific tables as a Table object instance User Represents the current requesting user. wns Provide functionality to send notifications to Windows Notification Service (WNS) azure Provides functionality to access Azure services (Blobs, Tables, Service Bus) request Sends HTTP requests to external web services, such as Twitter and Facebook. sendgrid Used to send email by using the Sendgrid email service. util Provides useful methods like format, isDate, isArray, isError xml2js XML to JavaScript object converter xmlbuilder Can be used to create XML documents sax A very simple tool to parse through an XML string 9/23/2014 Talentica Software
  • 18. References  http://azure.microsoft.com/en-us/ documentation/services/mobile-services/  bit.ly/tdemo12  http://pusher.com/ 9/23/2014 Talentica Software
  • 19. Demo Real-time bus tracking Simulator sends data to Azure Mobile service. Service will trigger pusher event on data insert Pusher will send notification to all the subscribed clients 9/23/2014 Talentica Software
  • 20. Demo – (IoT)Home Automation Device sends data to Azure Mobile service. Service will trigger pusher event on data insert 9/23/2014 Talentica Software Pusher will send notification to all the subscribed clients Fan on event Fan on event Fan on event
  • 23.  1. Demystifying Azure  seven code samples  discussion/comparison between traditional way of coding vs cloud coding for each code samples.  2. Cost comparison for cloud services  10 Cross cutting concerns when it comes to calculate cost in cloud.  How to calculate the cost for code , infrastructure , execution .  Sample for Azure  Sample for AWS  different calculators to be used. Talentica Software

Editor's Notes

  1. I will discuss following four topics in the next 30 minutes How azure helped the Halo 4 team to become successful using cloud technologies. The technologies and concepts which are becoming more relevant and of more concern given cloud technologies and their cost in place. How the cloud technology is changing the eco system around the IT engineering. Last , we will compare different models (Paas , Saas and Iaas) .
  2. Basically, it’s a simple way to generate and host services that can be used in combination with mobile applications (not only Microsoft made, as we’ll see later) for different purposes: generic data services, authentication or push notification.   It isn’t something new: these services are built on top of the existing Azure infrastructure (the service is hosted by a Web Role and data is stored on a SQL Database), they’re just simpler for the developer to create and to interact with.   These services are simply REST services, that returns JSON responses and that can be consumed by any application.   Windows Azure Mobile Services makes it incredibly easy to connect a scalable cloud backend to your client and mobile applications.  It allows you to easily store structured data in the cloud that can span both devices and users, integrate it with user authentication, as well as send out updates to clients via push notifications.  
  3. Shared backed with client SDKs for all mobile platforms. : still have to write different app , but the backend is same and exposed over REST . iOS, Android, Windows, Windows Phone, or HTML app, as well as use cross-platform frameworks such as Xamarin, Sencha, and PhoneGap. Client SDKs for each of these platforms making it easy to connect applications to the cloud-hosted backend. or each of these platforms making it easy to connect applications to the cloud-hosted backend. Easily incorporate authentication with Facebook, Twitter, Google , Microsoft . Easy integration with Apple Messaging System (AMS) Google messaging System (GMS) ,Windows Notification System(WNS) ,Microsoft Phone Notification System(MPNS)
  4. The authentication endpoint for an Azure Mobile Service responds to GET requests to https://<service-name>.azure-mobile.net/login/<providerName>, where <providerName> is one of the supported authentication providers (currently “facebook”, “google”, “microsoftaccount” or “twitter”). When a browser (or the embedded browser control) sends a request to that address, the Azure Mobile Service runtime will respond with a redirect (HTTP 302) response to the appropriate page on the authentication provider (for example, the twitter page shown in the first image of this post). Once the user enters valid credentials, the provider will redirect it back to the Azure Mobile Service runtime with its specific authentication token. At that time, the runtime will validate those credentials with the provider, and then issue its own token, which will be used by the client as the authentication token to communicate with the service. The diagram above shows a rough picture of the authentication flow. Notice that the client may send more than one request to the authentication provider, as it’s often first asks the user to enter its credentials, then (at least once per application) asks the user to allow the application to use its credentials. What the browser control in the client does is to monitor the URL to where it’s navigating, and when it sees that it’s navigating to the /login/done endpoint, it will know that the whole authentication “dance” has finished. At that point, the client can dispose the browser control and store the token to authenticate future requests it sends. This whole protocol is just a bunch of GET requests and redirect responses. That’s something that a “regular” browser can handle pretty well, so we can use that to make sure that the server is properly set up.
  5. I think we should also include the HYBRID option which many of the enterprises are taking up under “Design”
  6. I will discuss following four topics in the next 30 minutes How azure helped the Halo 4 team to become successful using cloud technologies. The technologies and concepts which are becoming more relevant and of more concern given cloud technologies and their cost in place. How the cloud technology is changing the eco system around the IT engineering. Last , we will compare different models (Paas , Saas and Iaas) .