Push-Benachrichtigungen in SharePoint via SignalR

14
Push- Benachrichtigungen via SignalR Christian Heindel @c_heindel Unternehmenslösungen für Internet, Intranet, Desktop und mobile Geräte Mein aktueller Fokus: HTML5, SharePoint 2010, mobile Anwendungen, Kommunikation und Zusammenarbeit Dresden, Sachsen · http ://www.christian-heindel.de

Transcript of Push-Benachrichtigungen in SharePoint via SignalR

Page 1: Push-Benachrichtigungen in SharePoint via SignalR

Push-Benachrichtigungenvia SignalR

Christian Heindel@c_heindelUnternehmenslösungen für Internet, Intranet, Desktop und mobile Geräte

Mein aktueller Fokus: HTML5, SharePoint 2010, mobile Anwendungen, Kommunikation und Zusammenarbeit

Dresden, Sachsen · http://www.christian-heindel.de

Page 2: Push-Benachrichtigungen in SharePoint via SignalR

Asynchrone Webanwendungen

3 Praxisbeispiele

• Preisaktualisierungen in Echtzeit, z.B. bei Flugtickets

• Neue Kommentare einblenden, noch während der Anwender liest

• Dashboards an Leinwänden und Monitoren in Echtzeit aktualisieren

Page 3: Push-Benachrichtigungen in SharePoint via SignalR

Verschiedene Ansätze

• Client pull– F5, Strg+F5, ganz fest auf Cache

löschen+F5– Polling: AJAX Request alle 60 Sekunden?

Alle 5 Sekunden?

• Server push–WebSocket-Verbindung– Long polling: Früher z.B. als iFrame Hack

Page 4: Push-Benachrichtigungen in SharePoint via SignalR

SignalR

Async signaling library for .NET to help build real-time, multi-user interactive web applications.

To install SignalR, run the following command in the Package Manager Console

PM> Install-Package SignalR

Page 5: Push-Benachrichtigungen in SharePoint via SignalR

Code-Beispiel: SignalR, Server

Page 6: Push-Benachrichtigungen in SharePoint via SignalR

Code-Beispiel: SignalR, Proxy

Page 7: Push-Benachrichtigungen in SharePoint via SignalR

Code-Beispiel: SignalR, EventSharePoint Event Receiver

Aufbereiten der Push-Nachricht

Nachricht senden

Page 8: Push-Benachrichtigungen in SharePoint via SignalR

Code-Beispiel: SignalR, Client

Page 9: Push-Benachrichtigungen in SharePoint via SignalR

knockout.js

Simplify dynamic JavaScript UIs by applying the Model-View-View Model (MVVM) pattern

Declarative Bindings

Easily associate DOM elements with model data using a concise,

readable syntax

Automatic UI Refresh

When your data model's state changes,

your UI updates automatically

Dependency Tracking

Implicitly set up chains of relationships

between model data, to transform and combine

it

Templating

Quickly generate sophisticated, nested

UIs as a function of your model data

Page 10: Push-Benachrichtigungen in SharePoint via SignalR

Code-Beispiel: knockout.jsJavaScript laden:

DataBinding im HTML:

ViewModel definieren:

Anfangen zu lauschen:

Werte aktualisieren:

Page 11: Push-Benachrichtigungen in SharePoint via SignalR

DEMO

Page 12: Push-Benachrichtigungen in SharePoint via SignalR

Aktuelle Schwachpunkte

• Umständliches Deployment– NuGet Package ist veraltet– deshalb manuell von GIT aktualisieren

• CORS (cross site scripting)– wird in unterschiedlichen Browsern

unterschiedlich gut behandelt ;-)

• Proxy notwendig– SignalR benötigt .NET 4.0 Framework– SharePoint benötigt .NET 2.0/3.5

Page 13: Push-Benachrichtigungen in SharePoint via SignalR

Quelle

Matt MenezesHarnessing SignalR in SharePoint

http://spmatt.wordpress.com/2012/04/12/harnessing-signalr-in-sharepoint/

Page 14: Push-Benachrichtigungen in SharePoint via SignalR

Christian Heindel@c_heindelUnternehmenslösungen für Internet, Intranet, Desktop und mobile Geräte

Mein aktueller Fokus: HTML5, SharePoint 2010, mobile Anwendungen, Kommunikation und Zusammenarbeit

Dresden, Sachsen · http://www.christian-heindel.de

Fragen?

Fragen?