Successfully reported this slideshow.

More Related Content

Related Books

Free with a 14 day trial from Scribd

See all

SignalR + Mobile Possibilities

  1. 1. Local Touch – Global Reach Intro to SignalR + Awesome Mobile Possibilities ! Samidip Basu Solutions Lead | MSFT Mobility Email: Samidip.Basu@us.sogeti.com Twitter: @samidip Info: http://samidipbasu.info Blog: http://samidipbasu.com Sogeti USA 8425 Pulsar Place, Suite 300 | Columbus, OH 43240. www.us.sogeti.com www.us.sogeti.com
  2. 2. Central Ohio Windows Phone User Group http://cowpug.org http://meetup.com/cowpug @cowpug 3rd Monday @ TechColumbus
  3. 3. http://www.m3conf.com/ @m3conf
  4. 4. SilverlightShow (www.silverlightshow.net) – online portal for everything Silverlight, XAML and Windows Phone, 10K+ members. * daily news * tutorials * exclusive articles * forums * free webinars * events * ebooks * newsletters CompletIT (www.completit.com) – Silverlight and Windows Phone trainings, consultations and development company, founder of SilverlightShow. * Individual and group, on-site and online trainings * Standard and custom course schedules * Trainings by Silverlight MVP, MCT
  5. 5. Why do we need real-time?  New email  Twitter/Facebook updates  Stock Ticker/Live Auctions  Game Scores  Real-time Notifications  Turn-by-Turn Games  Collaboration  Progress Bars  And obviously, Chat
  6. 6. Existing Technologies?  HTTP – purely Request/Response protocol  Internet – not real-time; stateless; services don’t call your app  Consumption model .. But we’ve learnt tricks  Periodic/Ajax Polling – not real-time, bandwidth misuse Image courtesy @maartenballiauw
  7. 7. Existing Technologies .. contd?  Use plugins like SL/Flash – to access sockets  Native Web Sockets help – but low level & support flaky  Long Polling – server does not respond unless X happens, client polls after data receive or time-out Image courtesy @maartenballiauw
  8. 8. Enter SignalR  An async, persistent connection/signalling library for .NET ... aids in building real-time, multi-user connected applications.  Persistent client-server connection over best transport .. Abstracts away the transport layer.  From ASP.NET Team (Damian Edwards & David Fowler) .. Not officially MSFT product, but OSS  https://github.com/SignalR/SignalR  http://jabbr.net/#/rooms/signal  SignalR is broken up into a few packages on NuGet: SignalR - Package for SignalR.Server and SignalR.Js SignalR.Server - Server components needed for SignalR endpoints SignalR.Js - Javascript client for SignalR SignalR.Client - .NET client for SignalR SignalR.WP7 & SignalR.Silverlight – For the cool folks  SignalR.WebSockets - WebSocket Transport for SignalR
  9. 9. Live Demos !  Whoa .. What happened here?  Client calls server; Server calls client; seamlessly  No polling, at least in our code  Server maintains Clients .. Broadcast to all, group or individual clients  Low level – PersistentConnection; more control  Abstraction – Hub; easier to use
  10. 10. Where does this stand?  Other technologies have solved this problem  Socket.IO is a client-side Jscript library that talks to node.js  Nowjs supports namespace sync between client-server  Primary SignalR advantages  Simplicity & ease of use  Works natively in .NET  Works out of browser  Supports Web Sockets through a NuGet package [ASP.NET 4.5/IIS 8 on Win8 only] [WebSocket is a web technology providing for multiplexing bi-directional, full-duplex communications channels over a single TCP connection. Still being standardized.]  Works on other platforms
  11. 11. SignalR Client for iOS http://dyknow.github.com/SignalR-ObjC/
  12. 12. SignalR Client for Mono (Android) http://blog.rthand.com/post/2012/03/14/SignalR-client-on-Mono-for-Android.aspx
  13. 13. Local Touch – Global Reach Questions? Thank you !! www.us.sogeti.com

×