Pune microsoft azure developers 2nd 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
- 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
- 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
- 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
- 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) .
- 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.
- 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)
- 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.
- I think we should also include the HYBRID option which many of the enterprises are taking up under “Design”
- 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) .