SlideShare une entreprise Scribd logo
1  sur  22
Building a chat app with
Windows Azure Mobile Services
1 march 2014, Timisoara
Flavius Radu Demian
Software developer, Avaelgo

I really like programming, like really love it
I love web and mobile
I won Excite 2 year ago

Please feel free to ask questions any time and don’t be shy because
Knowledge is power 
flaviusdemian91@yahoo.com | flavius.demian@gmail.com | @slowarad
Let’s begin…
But before…
This is for the ladies 

Have a nice spring !
Agenda
Overview
Storage
Custom API
Authentication & Authorisation
Scheduler
Diagnostics & Logging
Scale
Cool Third Party Add-Ons
Event Timeline
Review
A visual representation
Overview
Clients for:
Windows Store
Windows Phone 8
iOS, Android, Javascript
You can add a cloud backend to your app in minutes without the
need for server code
All the SDK’s are open source click me
It’s integrated with GIT
You can use filters on you clients to manipulate easily data click me
Create Service, Download Free App and GIT ( add package) Demo click me
Storage
Windows Azure SQL Database
Dynamic schema on/off
REST API generated per table
Data centric platform
Access your data through :
Portal
Sql Management Studio
Rest API
Storage
JSON to SQL data types conversions

Demo with portal and sql server
Server side logic
It is written in
Node.js :
is a software platform for scalable server-side and
networking applications.
applications are written in JavaScript can be run within
the Node.js runtime on Windows, Mac OS X and Linux with no
changes.
“Data Centric” Server Logic

Backend runs Node js on small azure VM’s
“Interceptors” exposed for all CRUD requests to all tables
You only get access to a predefined set of node modules :
request, console, push.*, tables, statusCodes, azure, mssql
click me
Demo with interceptors and packages
Custom API

You can make your own api very quickly

Let’s see how: click me and after let’s look at the demo
Push notifications
The notification provider server mentains a "persistent IP connection"
with your Device in order to deliver notifications when the app needs to
'say' something to you.
Payload limited, specific to platform
The global push object is used to send push notifications
Success and Error callbacks are provided
Push notifications overview
Windows Phone case study
1) The app requests a channel from the
Notifications Provider

2) The app send the channel uri to
Azure Mobile Services which stores it
3) When a notification is sent Azure
Mobile Services executes something
like this:
push.mpns.send(channelUri….)
4. The notifications goes through the Notifications Provider which forwards it to the device

Demo
Athentication & Authorisation
You can make provide quick auth in your app with

Facebook

Twitter

Google

and Windows Azure Active Directory

Microsoft
Authorisation
Table level authorisation for CRUD operation
Everyone: any request by anyone is accepted
Anyone with Application Key: app key is sent on the request distributed
( default)
Authenticated Users: users authenticated with one of the mentioned identity
providers
Scripts and Admins: registers scripts or requests via the master key
The application key is not secure and should not be used to authenticate
users of your app
Demo
Scheduler
Run jobs on simple or complex recurring schedules
such as:
Send broadcast push notifications
Archiving old or duplicate data records
Processing or resizing stored images

Invoking a Web Service over HTTP/s
Post a message to a Windows Azure Storage Queue
Demo
Diagnostics and Logging
View diagnostics directly in the portal including
API calls, CPU time and Data Out

LoggingConsole.* operations like console.log and
console.error provide an easy means to debug
your server side scripts.
Demo
Scale
Compute - scale between shared and reserved mode,
Increase/decrease your instance count
Storage ability to scale out your mobile service tenant(s) to a
dedicated SQL DB
Ability to scale up your SQL DB from web through business to
150GB
Cool Third Party Add-Ons

Real time communication

Emails

SMS
Event Timeline
Review of Azure Mobile Services
Create a scalable and secure backend for your Windows, Android, and iOS apps
Store data in the cloud
Easily authenticate users
Send push notifications
Consume your favorite services
Monitor, alert, and auto scale
Cheap and FREE in some cases -> click here
Preview: No availability Service Level Agreement
Paid: General Availability: 99.9%
Thanks
Good luck at Excite
I hope you will win and after that hold a presentation like I do
now
Let’s look more at the code, don’t worry the questions will come
inevitably


Contenu connexe

Tendances

Sys02 best way to create a share point app
Sys02   best way to create a share point appSys02   best way to create a share point app
Sys02 best way to create a share point app
DotNetCampus
 
Mobile Cross-Platform App Development in C# with Xamarin
Mobile Cross-Platform App Development in C# with XamarinMobile Cross-Platform App Development in C# with Xamarin
Mobile Cross-Platform App Development in C# with Xamarin
Nick Landry
 

Tendances (20)

Xamarin overview droidcon.tn
Xamarin overview   droidcon.tnXamarin overview   droidcon.tn
Xamarin overview droidcon.tn
 
Intro to Xamarin.Forms for Visual Studio 2017
Intro to Xamarin.Forms for Visual Studio 2017Intro to Xamarin.Forms for Visual Studio 2017
Intro to Xamarin.Forms for Visual Studio 2017
 
Highlights from the Xamarin Evolve 2016 conference
Highlights from the Xamarin Evolve 2016 conferenceHighlights from the Xamarin Evolve 2016 conference
Highlights from the Xamarin Evolve 2016 conference
 
Xamarin.Forms
Xamarin.FormsXamarin.Forms
Xamarin.Forms
 
Sys02 best way to create a share point app
Sys02   best way to create a share point appSys02   best way to create a share point app
Sys02 best way to create a share point app
 
Bot Revolution lab at Codemotion Milan 2016
Bot Revolution lab at Codemotion Milan 2016Bot Revolution lab at Codemotion Milan 2016
Bot Revolution lab at Codemotion Milan 2016
 
DEV-007_Building Cloud Connected Xamarin Apps
DEV-007_Building Cloud Connected Xamarin AppsDEV-007_Building Cloud Connected Xamarin Apps
DEV-007_Building Cloud Connected Xamarin Apps
 
Connected Mobile Apps with Microsoft Azure
Connected Mobile Apps with Microsoft AzureConnected Mobile Apps with Microsoft Azure
Connected Mobile Apps with Microsoft Azure
 
Mobile Cross-Platform App Development in C# with Xamarin
Mobile Cross-Platform App Development in C# with XamarinMobile Cross-Platform App Development in C# with Xamarin
Mobile Cross-Platform App Development in C# with Xamarin
 
Introduction to Xamarin for Visual Studio 2017
Introduction to Xamarin for Visual Studio 2017Introduction to Xamarin for Visual Studio 2017
Introduction to Xamarin for Visual Studio 2017
 
.NET North UG - What’s new & next for Xamarin developers
.NET North UG - What’s new & next for Xamarin developers.NET North UG - What’s new & next for Xamarin developers
.NET North UG - What’s new & next for Xamarin developers
 
Build Better Games with Unity and Microsoft Azure
Build Better Games with Unity and Microsoft AzureBuild Better Games with Unity and Microsoft Azure
Build Better Games with Unity and Microsoft Azure
 
Deeper into Windows 10 Development
Deeper into Windows 10 DevelopmentDeeper into Windows 10 Development
Deeper into Windows 10 Development
 
Building Games for iOS, macOS, and tvOS with Visual Studio and Azure
Building Games for iOS, macOS, and tvOS with Visual Studio and AzureBuilding Games for iOS, macOS, and tvOS with Visual Studio and Azure
Building Games for iOS, macOS, and tvOS with Visual Studio and Azure
 
Xamarin cross platform
Xamarin cross platformXamarin cross platform
Xamarin cross platform
 
Customizing Xamarin.Forms UI
Customizing Xamarin.Forms UICustomizing Xamarin.Forms UI
Customizing Xamarin.Forms UI
 
Intro to Building Mobile Apps with Xamarin
Intro to Building Mobile Apps with XamarinIntro to Building Mobile Apps with Xamarin
Intro to Building Mobile Apps with Xamarin
 
Hitchhicker's Guide to Using Xamarin Forms with RESTful Services
Hitchhicker's Guide to Using Xamarin Forms with RESTful ServicesHitchhicker's Guide to Using Xamarin Forms with RESTful Services
Hitchhicker's Guide to Using Xamarin Forms with RESTful Services
 
Smaller Not Taller: Defeating the mobile application architecture giant
Smaller Not Taller: Defeating the mobile application architecture giantSmaller Not Taller: Defeating the mobile application architecture giant
Smaller Not Taller: Defeating the mobile application architecture giant
 
Build 2017 - B8099 - What's new in Xamarin.Forms
Build 2017 - B8099 - What's new in Xamarin.FormsBuild 2017 - B8099 - What's new in Xamarin.Forms
Build 2017 - B8099 - What's new in Xamarin.Forms
 

Similaire à Building a chat app with windows azure mobile services

CTU June 2011 - Windows Azure App Fabric
CTU June 2011 - Windows Azure App FabricCTU June 2011 - Windows Azure App Fabric
CTU June 2011 - Windows Azure App Fabric
Spiffy
 
Windows azure mobile services and windows phone 8
Windows azure mobile services and windows phone 8Windows azure mobile services and windows phone 8
Windows azure mobile services and windows phone 8
Karthikeyan Anbarasan (AK)
 
Fanug - Pragmatic Windows Phone Developer
Fanug - Pragmatic Windows Phone DeveloperFanug - Pragmatic Windows Phone Developer
Fanug - Pragmatic Windows Phone Developer
Sam Basu
 

Similaire à Building a chat app with windows azure mobile services (20)

Azure Mobile Services for Cross Platform Mobile Apps
Azure Mobile Services for Cross Platform Mobile AppsAzure Mobile Services for Cross Platform Mobile Apps
Azure Mobile Services for Cross Platform Mobile Apps
 
Azure Mobile Services
Azure Mobile ServicesAzure Mobile Services
Azure Mobile Services
 
CTU June 2011 - Windows Azure App Fabric
CTU June 2011 - Windows Azure App FabricCTU June 2011 - Windows Azure App Fabric
CTU June 2011 - Windows Azure App Fabric
 
WP7 & Azure
WP7 & AzureWP7 & Azure
WP7 & Azure
 
Putting the Cloud in Your Pocket with Azure Mobile Services (.NET)
Putting the Cloud in Your Pocket with Azure Mobile Services (.NET)Putting the Cloud in Your Pocket with Azure Mobile Services (.NET)
Putting the Cloud in Your Pocket with Azure Mobile Services (.NET)
 
Azure Active Directory - An Introduction for Developers
Azure Active Directory - An Introduction for DevelopersAzure Active Directory - An Introduction for Developers
Azure Active Directory - An Introduction for Developers
 
Windows azure mobile services and windows phone 8
Windows azure mobile services and windows phone 8Windows azure mobile services and windows phone 8
Windows azure mobile services and windows phone 8
 
Pune microsoft azure developers 2nd meetup
Pune microsoft azure developers 2nd meetupPune microsoft azure developers 2nd meetup
Pune microsoft azure developers 2nd meetup
 
Windows azure mobile services from start to rest
Windows azure mobile services from start to restWindows azure mobile services from start to rest
Windows azure mobile services from start to rest
 
Get started azure- Azure Mobile Services
Get started azure- Azure Mobile ServicesGet started azure- Azure Mobile Services
Get started azure- Azure Mobile Services
 
Azure Services Platform Oc Event Ned
Azure Services Platform Oc Event NedAzure Services Platform Oc Event Ned
Azure Services Platform Oc Event Ned
 
Building mobile apps on AWS
Building mobile apps on AWSBuilding mobile apps on AWS
Building mobile apps on AWS
 
Building mobile apps on aws
Building mobile apps on awsBuilding mobile apps on aws
Building mobile apps on aws
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureCloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with Azure
 
Harbour IT & VMware - vForum 2010 Wrap
Harbour IT & VMware - vForum 2010 WrapHarbour IT & VMware - vForum 2010 Wrap
Harbour IT & VMware - vForum 2010 Wrap
 
Azure Microsoft
Azure MicrosoftAzure Microsoft
Azure Microsoft
 
Fanug - Pragmatic Windows Phone Developer
Fanug - Pragmatic Windows Phone DeveloperFanug - Pragmatic Windows Phone Developer
Fanug - Pragmatic Windows Phone Developer
 
Cloud Computing & Sun Vision 03262009
Cloud Computing & Sun Vision 03262009Cloud Computing & Sun Vision 03262009
Cloud Computing & Sun Vision 03262009
 
Windows Azure Platform Overview
Windows Azure Platform OverviewWindows Azure Platform Overview
Windows Azure Platform Overview
 
Build Agile Business Processes with Microsoft Power Platform
Build Agile Business Processes with Microsoft Power PlatformBuild Agile Business Processes with Microsoft Power Platform
Build Agile Business Processes with Microsoft Power Platform
 

Plus de Flavius-Radu Demian

ALM on the shoulders of Giants - Visual Studio Online
ALM on the shoulders of Giants - Visual Studio OnlineALM on the shoulders of Giants - Visual Studio Online
ALM on the shoulders of Giants - Visual Studio Online
Flavius-Radu Demian
 

Plus de Flavius-Radu Demian (8)

Mobile growth with Xamarin
Mobile growth with XamarinMobile growth with Xamarin
Mobile growth with Xamarin
 
MVVM frameworks - MvvmCross
MVVM frameworks - MvvmCrossMVVM frameworks - MvvmCross
MVVM frameworks - MvvmCross
 
C# everywhere - Building Cross-Platform Apps with Xamarin and MvvmCross
C# everywhere - Building Cross-Platform Apps with Xamarin and MvvmCrossC# everywhere - Building Cross-Platform Apps with Xamarin and MvvmCross
C# everywhere - Building Cross-Platform Apps with Xamarin and MvvmCross
 
C# everywhere - Building Cross-Platform Apps with Xamarin and MvvmCross
C# everywhere - Building Cross-Platform Apps with Xamarin and MvvmCrossC# everywhere - Building Cross-Platform Apps with Xamarin and MvvmCross
C# everywhere - Building Cross-Platform Apps with Xamarin and MvvmCross
 
ALM on the shoulders of Giants - Visual Studio Online
ALM on the shoulders of Giants - Visual Studio OnlineALM on the shoulders of Giants - Visual Studio Online
ALM on the shoulders of Giants - Visual Studio Online
 
Universal apps
Universal appsUniversal apps
Universal apps
 
Security in windows azure
Security in windows azureSecurity in windows azure
Security in windows azure
 
Fundaments of Knockout js
Fundaments of Knockout jsFundaments of Knockout js
Fundaments of Knockout js
 

Dernier

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Dernier (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

Building a chat app with windows azure mobile services

  • 1. Building a chat app with Windows Azure Mobile Services 1 march 2014, Timisoara
  • 2. Flavius Radu Demian Software developer, Avaelgo I really like programming, like really love it I love web and mobile I won Excite 2 year ago Please feel free to ask questions any time and don’t be shy because Knowledge is power  flaviusdemian91@yahoo.com | flavius.demian@gmail.com | @slowarad
  • 3. Let’s begin… But before… This is for the ladies  Have a nice spring !
  • 4. Agenda Overview Storage Custom API Authentication & Authorisation Scheduler Diagnostics & Logging Scale Cool Third Party Add-Ons Event Timeline Review
  • 6. Overview Clients for: Windows Store Windows Phone 8 iOS, Android, Javascript You can add a cloud backend to your app in minutes without the need for server code All the SDK’s are open source click me It’s integrated with GIT You can use filters on you clients to manipulate easily data click me Create Service, Download Free App and GIT ( add package) Demo click me
  • 7. Storage Windows Azure SQL Database Dynamic schema on/off REST API generated per table Data centric platform Access your data through : Portal Sql Management Studio Rest API
  • 8. Storage JSON to SQL data types conversions Demo with portal and sql server
  • 9. Server side logic It is written in Node.js : is a software platform for scalable server-side and networking applications. applications are written in JavaScript can be run within the Node.js runtime on Windows, Mac OS X and Linux with no changes.
  • 10. “Data Centric” Server Logic Backend runs Node js on small azure VM’s “Interceptors” exposed for all CRUD requests to all tables You only get access to a predefined set of node modules : request, console, push.*, tables, statusCodes, azure, mssql click me Demo with interceptors and packages
  • 11. Custom API You can make your own api very quickly Let’s see how: click me and after let’s look at the demo
  • 12. Push notifications The notification provider server mentains a "persistent IP connection" with your Device in order to deliver notifications when the app needs to 'say' something to you. Payload limited, specific to platform The global push object is used to send push notifications Success and Error callbacks are provided
  • 13. Push notifications overview Windows Phone case study 1) The app requests a channel from the Notifications Provider 2) The app send the channel uri to Azure Mobile Services which stores it 3) When a notification is sent Azure Mobile Services executes something like this: push.mpns.send(channelUri….) 4. The notifications goes through the Notifications Provider which forwards it to the device Demo
  • 14. Athentication & Authorisation You can make provide quick auth in your app with Facebook Twitter Google and Windows Azure Active Directory Microsoft
  • 15. Authorisation Table level authorisation for CRUD operation Everyone: any request by anyone is accepted Anyone with Application Key: app key is sent on the request distributed ( default) Authenticated Users: users authenticated with one of the mentioned identity providers Scripts and Admins: registers scripts or requests via the master key The application key is not secure and should not be used to authenticate users of your app Demo
  • 16. Scheduler Run jobs on simple or complex recurring schedules such as: Send broadcast push notifications Archiving old or duplicate data records Processing or resizing stored images Invoking a Web Service over HTTP/s Post a message to a Windows Azure Storage Queue Demo
  • 17. Diagnostics and Logging View diagnostics directly in the portal including API calls, CPU time and Data Out LoggingConsole.* operations like console.log and console.error provide an easy means to debug your server side scripts. Demo
  • 18. Scale Compute - scale between shared and reserved mode, Increase/decrease your instance count Storage ability to scale out your mobile service tenant(s) to a dedicated SQL DB Ability to scale up your SQL DB from web through business to 150GB
  • 19. Cool Third Party Add-Ons Real time communication Emails SMS
  • 21. Review of Azure Mobile Services Create a scalable and secure backend for your Windows, Android, and iOS apps Store data in the cloud Easily authenticate users Send push notifications Consume your favorite services Monitor, alert, and auto scale Cheap and FREE in some cases -> click here Preview: No availability Service Level Agreement Paid: General Availability: 99.9%
  • 22. Thanks Good luck at Excite I hope you will win and after that hold a presentation like I do now Let’s look more at the code, don’t worry the questions will come inevitably 