Nikola Dimitroff Creating Genres creatinggenres.com.

Slides:



Advertisements
Similar presentations
Games, chat, and finance Toward a truly interactive web with Comet, BAM, and HMTP Emil Ong Chief Evangelist.
Advertisements

AJAX Development By Gary Mandela December 26,
IoT with SignalR & .NET Gadgeteer
Rensselaer Polytechnic Institute CSCI-4220 – Network Programming David Goldschmidt, Ph.D.
DT228/3 Web Development WWW and Client server model.
Introducing CGWeb Nikola Dimitroff Creating Genres creatinggenres.com.
ProJAX An AJAX Framework for Progress Tom Bascom President Greenfield Technologies
1/ November 2008 / EDS Internal Web Push Technology Dušan Chromý SOA Integration Consulting Reverse Ajax/Comet Explained.
AJAX Presented by: Dickson Fu Dimas Ariawan Niels Andreassen Ryan Dial Jordan Nielson CMPUT 410 University of Alberta 2006.
IS 360 Course Introduction. Slide 2 What you will Learn (1) The role of Web servers and clients How to create HTML, XHTML, and HTML 5 pages suitable for.
1 Cleaning up the Internet Using AJAX, SOAP and Comet CS526 Mike Gerschefske Justin Gray James Yoo 02 May 2006.
Microsoft ASP.NET AJAX - AJAX as it has to be Presented by : Rana Vijayasimha Nalla CSCE Grad Student.
Performed by:Gidi Getter Svetlana Klinovsky Supervised by:Viktor Kulikov 08/03/2009.
Definitions, Definitions, Definitions Lead to Understanding.
Building Real Time Applications with ASP.NET SignalR 2.0
SignalR on Old-school Servers & Clients When some lower-common denominator polling mechanism is needed Web Server HTML Client Got Data? Here’s some.
SignalR Real Time with SignalR Jared Rhodes Senior Consultant Magenic.
5/3/2006 Mike/Justin/JYoo AJAX/SOAP/Comet 1 Cleaning up the Internet Using AJAX, SOAP and Comet CS526 Mike Gerschefske Justin Gray James Yoo 02 May 2006.
Reverse AJAX and HTML5 Based Clients for Embedded Control and Monitoring Systems C Robson, C Bohm, Stockholm University or "HTML5, why should we care?"
Christopher M. Pascucci Basic Structural Concepts of.NET Browser – Server Interaction.
© 2010 UEI, Inc. All Rights Reserved UEIPAC HMI.
Kay Herzam Herzam IT Consulting What‘s new in ASP.NET MS TechTalk.
Lightning Talk Fred Rodriguez Aakash Juneja CPSC 473 March 16, 2012.
Rensselaer Polytechnic Institute CSCI-4220 – Network Programming David Goldschmidt, Ph.D.
JavaScript & jQuery the missing manual Chapter 11
1 Ajax. 2 What’s Ajax? AJAX is a combination of a few technologies that has come together in the past few years AJAX used to be an acronym for Asynchronous.
CSCI 6962: Server-side Design and Programming Introduction to AJAX.
Exploring Real-time apps with ColdFusion and Blaze DS / Live Cycle Data Services ES Dan Blackman
1 What Can HTML5 WebSocket Do For You? Sidda Eraiah Director of Management Services Kaazing Corporation.
Real Time Mobile Apps using Xamarin and SignalR
Writing various AJAX forms in Drupal 7 1. Overview of Form API 2. Ctools 2.1 Ctools features 3. Ajax 3.1 Ajax Forms in Drupal 4. Putting it all together.
An program As a simple example of socket programming we can implement a program that sends to a remote site As a simple example of socket.
06/10/2015AJAX 1. 2 Introduction All material from AJAX – what is it? Traditional web pages and operation Examples of AJAX use Creating.
 You’re already a Web Site Dev  You’re interested in more simply making your web sites more responsive  If you’re not already hosting sites in.
08 | What’s Next and Resources Jon Galloway | Tech Evangelist Christopher Harrison | Head Geek.
Ajax. –Asynchronous JavaScript and XML –Umbrella term for technologies that often: Use client-side scripting for layout and formatting Use less than full.
The Web Architecture and ASP.NET. Slide 2 Review of the Web (1) It began with HTTP and HTML, which delivers static Web pages to browsers which would render.
Orbited Scaling Bi-directional web applications A presentation by Michael Carter
1 Chapter 28 Networking. 2 Objectives F To comprehend socket-based communication in Java (§28.2). F To understand client/server computing (§28.2). F To.
Fall 2006 Florida Atlantic University Department of Computer Science & Engineering COP 4814 – Web Services Dr. Roy Levow Part 2 – Ajax Fundamentals.
Progressive .NET Tutorials, July 3rd, London, UK

Asynchronous Javascript And XML AJAX : an introduction UFCEUS-20-2 : Web Programming.
The Problem of State. We will look at… Sometimes web development is just plain weird! Internet / World Wide Web Aspects of their operation The role of.
Zz SOCKET.IO going real time with Arnout Kazemier
Web Technology Introduction AJAXAJAX. AJAX Outline  What is AJAX?  Benefits  Real world examples  How it works  Code review  Samples.
Ajax for Dynamic Web Development Gregory McChesney.
 AJAX – Asynchronous JavaScript and XML  Ajax is used to develop fast dynamic web applications  Allows web pages to be updated asynchronously by transferring.
ASP.NET SignalR SoftUni Team Technical Trainers Software University
AJAX Asynchronous JavaScript and XML 1. AJAX Outline What is AJAX? Benefits Real world examples How it works 2.
Web Technologies Lecture 6 State preservation. Motivation How to keep user data while navigating on a website? – Authenticate only once – Store wish list.
WebRTC Don McGregor Research Associate MOVES Institute
October 7 th, 2010 SDU Webship. What did we learn last week? jQuery makes it really easy to select elements and do stuff with them. jQuery can process.
Message Framework Topic subscribe for javascript/flex client.
Web Technology (NCS-504) Prepared By Mr. Abhishek Kesharwani Assistant Professor,UCER Naini,Allahabad.
Overview Web Technologies Computing Science Thompson Rivers University.
ASP.NET WEB Applications. ASP.NET  Web application framework developed by Microsoft  Build dynamic data driven web applications and web services  Subset.
Keith Telle Lead Software Engineer Bit Wizards Behind the Magic: SignalR Demystified.
Redmond Protocols Plugfest 2016 Tarun Chopra Accessing APIs through Add-Ins Sr. Escalation Engineer.
Martin Kruliš by Martin Kruliš (v1.1)1.
Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key.
Web Technologies Computing Science Thompson Rivers University
JavaScript and Ajax (Ajax Tutorial)
ASP.NET SignalR SoftUni Team C# MVC Frameworks Technical Trainers
AJAX.
Building real-time web apps with WebSockets using IIS, ASP.NET and WCF
IS 360 Course Introduction
03 | Building a Backend with Socket.IO and Mongo
Web Technologies Computing Science Thompson Rivers University
Lighting Up Real-time Web Communications with SignalR Introduction
Presentation transcript:

Nikola Dimitroff Creating Genres creatinggenres.com

1. Multiplayer games structure  Pre-HTML5 limitations 2. Implementing bidirectional connections in the browser without plugins  Ajax  Web services  Comet programming  Web sockets  SignalR

3. SignalR in details  The API – Hubs, Persistent Connections  Installing and configuring SignalR  Creating a simple chat app with SignalR

 Generally, multiplayer games implement the client-server model  The server controls the game => can validate user information and prevent hacks  Allows heavy and crucial calculations to be run on the server  Eases performance requirements on the client

 Generally, multiplayer games implement the client-server model  Most often communication is bidirectional and based on TCP

 But how do we do bidirectional communication on the web?  Remember: HTTP is stateless  Must find a workaround around the Page-By- Page model

 Basic server polling techniques  Ajax (Asynchronous JavaScript and XML)  Web services  Both allow to send data to and retrieve data from a web server but employ large HTTP (or SOAP) overheads

 Comet programming  Umbrella term for several techniques that imitate bidirectional communication  Ajax long-polling  Server-sent events  Hidden iframe

 The WebSocket era  Allows full-duplex communication over TCP  Small headers and no overload on messages  Not supported by IE < 10 & most mobile browsers (iOS Safari 6.0+ and Blackberry are exceptions)

 Introducing SignalRSignalR  Provides an abstraction around the connection between the server and the client  Detects and uses the most appropriate technology/technique based on what the client and the server support  Fallback order:  WebSockets  Server Sent Events, aka EventSource  Forever Frame (for Internet Explorer only)  Ajax long polling

 Installing and configuring SignalR – a How-To  Install SignalR using NuGet (Note: When searching for SignalR in NuGet make sure you tick “Include pre-release”)  Go to Global.asax and register SignalR by adding a call to RouteTabRouteTable.Routes.MapHubs() in the Application_Start method BEFORE anything else (example source code on the next slide)

 Installing and configuring SignalR – a How-To  And you`re done. In order to use SignalR now, include the following 3 scripts on every page you need: jQuery, jQuery.signalR & the dynamically generated /signalr/hubs <script src= type="text/javascript"> <script src="Scripts/jquery.signalR rc1.min.js" type="text/javascript"> protected void Application_Start() { RouteTable.Routes.MapHubs(); //More code }

 The API  SignalR provides two main classes for communication – PersistentConnection and Hub  A hub is simply a message dispatcher around a PersistentConnection but it`s quite neat  Every client connected to SignalR will receive an unique Connection Id

 Setting up hubs  Create a class inheriting from Microsoft.AspNet.Signalr.Hub  Every non-static method that you write will be callable by the client  Sending messages to the client is as easy – use the Clients property of the hub to select the receiver(s) and call the method you want on the client

 Tricks:  Hooking up for a client side event after the connection has been made has no effect.  If you are using buttons hooked up with signalr, make sure to explicitly set their type to “button”. Otherwise the buttons will act as submits.  Hook up UI events on $.connection.start().done()