SlideShare a Scribd company logo
1 of 13
http://dublinalt.net
@dublinaltnet
Alt.net Ireland LinkedIn
Group
Google Group - dublinaltnet
Sponsored by
www.wonga.com
www.openwonga.com
What is SignalR?
• It’s a library for adding real-time functionality to an
application
• It’s open source, written by Microsoft Open
technologies
• Free to use under Apache 2.0. License
When to use SignalR
• Do you have an app that requires a page to refresh
in order to get new data ?
o Refresh data using Ajax or just a page reload
• Need to notify client(s) about new event(s) ?
• Need duplex communication?
o Ex: Real time document editing
o Chat
o Game
What OS is supported?
• Server
o Microsoft Windows
• Windows 7,8
• Windows Server 2008 R2, 2012
• Windows Azure
o Linux with Mono
• Clients
o WPF
o WinRT
o Windows Phone
o Silverlight
o JavaScript Client
o iOS (community supported)
Things to know before
deploying
• .Net Framework 4.0 & 4.5
• IIS 7.x or 8
o IIS Express is also supported
• WebSockets are supported only by IIS 8 (including
IIS8 Express)
Browser support
• Internet Explorer
o WebSockets (10+)
o ForeverFrame (8+)
o Long polling (8+)
• Firefox, Chrome, Safari
o WebSockets
o Server-Sent Events
o Long polling
How does it work?
Hubs API
• High level API that allows to make remote
procedure calls from a server to connected clients.
• Easy to use
{demo}
• {Change shape demo}
Configuration explained
• To start using HubsApi (Web Client):
o Define a root that client will used to connect to our Hub class. Use
Route.Table.MapHubs() in your Application_Start method
o Default route is “/signalr”
o Route can be customized by assigning a new value to route URL:
• Server side configuration:
o RouteTable.Routes.MapHubs("/signalr", new HubConfiguration())
• JavaScript configuration:
o .connection.hub.url = "/signalr”
• Create a Hub class – a class that will allow us to call
client methods.
o Hub class must inherit form Microsoft.Aspnet.Signalr.Hub
Transport selection
1. WebSocket
o If IE 8 or earlier then skip step 2 & 3
o If Cross-domain request, check if client & server supports WebSocket else
use 4.
2. ServerSent Event
3. Forever Frame
4. Long Polling
5. SignalR supports custom transport selection
o Developers can specify the transport selection order
connection.start({ transport: ['webSockets','longPolling'] });
Things to remember
• There is no compile time validation
• Cross-Domain connection is not configured by
default
• do not use jQuery.support.cors=true
Q & A
• @DorinManoli

More Related Content

What's hot (6)

Asp Net (FT Preasen Revankar)
Asp Net   (FT  Preasen Revankar)Asp Net   (FT  Preasen Revankar)
Asp Net (FT Preasen Revankar)
 
ASP.NET Brief History
ASP.NET Brief HistoryASP.NET Brief History
ASP.NET Brief History
 
AtlasCamp 2010: Macro Migration Guide for Confluence 4.0 - Ryan Thomas
AtlasCamp 2010: Macro Migration Guide for Confluence 4.0 - Ryan ThomasAtlasCamp 2010: Macro Migration Guide for Confluence 4.0 - Ryan Thomas
AtlasCamp 2010: Macro Migration Guide for Confluence 4.0 - Ryan Thomas
 
IBM SCO ( SmartCloud Orchestrator) integration with Network Management tool
 IBM SCO ( SmartCloud Orchestrator) integration with Network Management tool IBM SCO ( SmartCloud Orchestrator) integration with Network Management tool
IBM SCO ( SmartCloud Orchestrator) integration with Network Management tool
 
C# 8 in Libraries and Applications
C# 8 in Libraries and ApplicationsC# 8 in Libraries and Applications
C# 8 in Libraries and Applications
 
.NET Core Foundations - Dependency Injection, Logging & Configuration - BASTA...
.NET Core Foundations - Dependency Injection, Logging & Configuration - BASTA....NET Core Foundations - Dependency Injection, Logging & Configuration - BASTA...
.NET Core Foundations - Dependency Injection, Logging & Configuration - BASTA...
 

Viewers also liked (6)

Intro to HTML5 audio tag
Intro to HTML5 audio tagIntro to HTML5 audio tag
Intro to HTML5 audio tag
 
Forms with html5 (1)
Forms with html5 (1)Forms with html5 (1)
Forms with html5 (1)
 
Video in html 5
Video in html 5Video in html 5
Video in html 5
 
Google html5 Tutorial
Google html5 TutorialGoogle html5 Tutorial
Google html5 Tutorial
 
HTML5 and Search Engine Optimization (SEO)
HTML5 and Search Engine Optimization (SEO)HTML5 and Search Engine Optimization (SEO)
HTML5 and Search Engine Optimization (SEO)
 
HTML5 Semantics, Accessibility & Forms [Carsonified HTML5 Online Conference]
HTML5 Semantics, Accessibility & Forms [Carsonified HTML5 Online Conference]HTML5 Semantics, Accessibility & Forms [Carsonified HTML5 Online Conference]
HTML5 Semantics, Accessibility & Forms [Carsonified HTML5 Online Conference]
 

Similar to SignalR Dublin ALT.NET

IOT15_Unit6.pptx
IOT15_Unit6.pptxIOT15_Unit6.pptx
IOT15_Unit6.pptx
suptel
 
Building high performance microservices in finance with Apache Thrift
Building high performance microservices in finance with Apache ThriftBuilding high performance microservices in finance with Apache Thrift
Building high performance microservices in finance with Apache Thrift
RX-M Enterprises LLC
 

Similar to SignalR Dublin ALT.NET (20)

Introduction to SignalR
Introduction to SignalRIntroduction to SignalR
Introduction to SignalR
 
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.jsAsynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
 
ASP.NET MVC 5 and SignalR 2
ASP.NET MVC 5 and SignalR 2ASP.NET MVC 5 and SignalR 2
ASP.NET MVC 5 and SignalR 2
 
SignalR
SignalR SignalR
SignalR
 
Azure Web App services
Azure Web App servicesAzure Web App services
Azure Web App services
 
Current & Future Use-Cases of OpenDaylight
Current & Future Use-Cases of OpenDaylightCurrent & Future Use-Cases of OpenDaylight
Current & Future Use-Cases of OpenDaylight
 
Modern application development with oracle cloud sangam17
Modern application development with oracle cloud sangam17Modern application development with oracle cloud sangam17
Modern application development with oracle cloud sangam17
 
Building Real Time Applications with ASP.NET SignalR 2.0 by Rachel Appel
Building Real Time Applications with ASP.NET SignalR 2.0 by Rachel AppelBuilding Real Time Applications with ASP.NET SignalR 2.0 by Rachel Appel
Building Real Time Applications with ASP.NET SignalR 2.0 by Rachel Appel
 
.NET Core Apps: Design & Development
.NET Core Apps: Design & Development.NET Core Apps: Design & Development
.NET Core Apps: Design & Development
 
.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric
 
IOT15_Unit6.pptx
IOT15_Unit6.pptxIOT15_Unit6.pptx
IOT15_Unit6.pptx
 
SOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class LibrariesSOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class Libraries
 
Building high performance microservices in finance with Apache Thrift
Building high performance microservices in finance with Apache ThriftBuilding high performance microservices in finance with Apache Thrift
Building high performance microservices in finance with Apache Thrift
 
Scaling to millions of users with Amazon CloudFront - April 2017 AWS Online T...
Scaling to millions of users with Amazon CloudFront - April 2017 AWS Online T...Scaling to millions of users with Amazon CloudFront - April 2017 AWS Online T...
Scaling to millions of users with Amazon CloudFront - April 2017 AWS Online T...
 
Building Real time Application with Azure SignalR Service
Building Real time Application with Azure SignalR ServiceBuilding Real time Application with Azure SignalR Service
Building Real time Application with Azure SignalR Service
 
Made for Mobile - Let Office 365 Power Your Mobile Apps
Made for Mobile - Let Office 365 Power Your Mobile AppsMade for Mobile - Let Office 365 Power Your Mobile Apps
Made for Mobile - Let Office 365 Power Your Mobile Apps
 
Delivering Developer Tools at Scale
Delivering Developer Tools at ScaleDelivering Developer Tools at Scale
Delivering Developer Tools at Scale
 
Matrix.org decentralised communication, Matthew Hodgson, TADSummit
Matrix.org decentralised communication, Matthew Hodgson, TADSummitMatrix.org decentralised communication, Matthew Hodgson, TADSummit
Matrix.org decentralised communication, Matthew Hodgson, TADSummit
 
Azure Cloud Application Development Workshop - UGIdotNET
Azure Cloud Application Development Workshop - UGIdotNETAzure Cloud Application Development Workshop - UGIdotNET
Azure Cloud Application Development Workshop - UGIdotNET
 
Duo World Architecture
Duo World ArchitectureDuo World Architecture
Duo World Architecture
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Recently uploaded (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 

SignalR Dublin ALT.NET

  • 1. http://dublinalt.net @dublinaltnet Alt.net Ireland LinkedIn Group Google Group - dublinaltnet Sponsored by www.wonga.com www.openwonga.com
  • 2. What is SignalR? • It’s a library for adding real-time functionality to an application • It’s open source, written by Microsoft Open technologies • Free to use under Apache 2.0. License
  • 3. When to use SignalR • Do you have an app that requires a page to refresh in order to get new data ? o Refresh data using Ajax or just a page reload • Need to notify client(s) about new event(s) ? • Need duplex communication? o Ex: Real time document editing o Chat o Game
  • 4. What OS is supported? • Server o Microsoft Windows • Windows 7,8 • Windows Server 2008 R2, 2012 • Windows Azure o Linux with Mono • Clients o WPF o WinRT o Windows Phone o Silverlight o JavaScript Client o iOS (community supported)
  • 5. Things to know before deploying • .Net Framework 4.0 & 4.5 • IIS 7.x or 8 o IIS Express is also supported • WebSockets are supported only by IIS 8 (including IIS8 Express)
  • 6. Browser support • Internet Explorer o WebSockets (10+) o ForeverFrame (8+) o Long polling (8+) • Firefox, Chrome, Safari o WebSockets o Server-Sent Events o Long polling
  • 7. How does it work?
  • 8. Hubs API • High level API that allows to make remote procedure calls from a server to connected clients. • Easy to use
  • 10. Configuration explained • To start using HubsApi (Web Client): o Define a root that client will used to connect to our Hub class. Use Route.Table.MapHubs() in your Application_Start method o Default route is “/signalr” o Route can be customized by assigning a new value to route URL: • Server side configuration: o RouteTable.Routes.MapHubs("/signalr", new HubConfiguration()) • JavaScript configuration: o .connection.hub.url = "/signalr” • Create a Hub class – a class that will allow us to call client methods. o Hub class must inherit form Microsoft.Aspnet.Signalr.Hub
  • 11. Transport selection 1. WebSocket o If IE 8 or earlier then skip step 2 & 3 o If Cross-domain request, check if client & server supports WebSocket else use 4. 2. ServerSent Event 3. Forever Frame 4. Long Polling 5. SignalR supports custom transport selection o Developers can specify the transport selection order connection.start({ transport: ['webSockets','longPolling'] });
  • 12. Things to remember • There is no compile time validation • Cross-Domain connection is not configured by default • do not use jQuery.support.cors=true
  • 13. Q & A • @DorinManoli

Editor's Notes

  1. Ex: check order stats of an eCommerce appOn page customer supportGet latest tweets from your account?
  2. Windows 8 or Windows Server 2012
  3. Explain transport layers
  4. Browse the code , dependencies, how solution is configured
  5. Explain demo code
  6. Explain transport negotiation processEx. Defined transport selection fallback -> connection.start({ transport: ['webSockets','longPolling'] }); Try use fiddler