SlideShare ist ein Scribd-Unternehmen logo
1 von 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
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
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
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
Code-Beispiel: SignalR, Server
Code-Beispiel: SignalR, Proxy
Code-Beispiel: SignalR, Event
 SharePoint Event Receiver


                             Aufbereiten der Push-Nachricht




Nachricht senden
Code-Beispiel: SignalR, Client
knockout.js
Simplify dynamic JavaScript UIs by applying
the Model-View-View Model (MVVM) pattern




 Declarative Bindings       Automatic UI Refresh     Dependency Tracking                  Templating

  Easily associate DOM      When your data model's   Implicitly set up chains of        Quickly generate
elements with model data    state changes, your UI     relationships between        sophisticated, nested UIs
using a concise, readable    updates automatically   model data, to transform      as a function of your model
          syntax                                           and combine it                      data
Code-Beispiel: knockout.js
JavaScript laden:




DataBinding im HTML:

ViewModel definieren:




Anfangen zu lauschen:
Werte aktualisieren:
DEMO
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
Quelle

         Matt Menezes
         Harnessing SignalR in SharePoint
         http://spmatt.wordpress.com/2012/04/12/harnessing-signalr-in-sharepoint/
Fragen?




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

Weitere ähnliche Inhalte

Ähnlich wie Push-Benachrichtigungen in SharePoint via SignalR

Orbiti Ex Michael Greth Cms Shoot Out
Orbiti Ex Michael Greth Cms Shoot OutOrbiti Ex Michael Greth Cms Shoot Out
Orbiti Ex Michael Greth Cms Shoot Out
Michael Greth
 
SharePoint 2010 in der hybriden Cloud
SharePoint 2010 in der hybriden CloudSharePoint 2010 in der hybriden Cloud
SharePoint 2010 in der hybriden Cloud
Michael Kirst-Neshva
 
Software as a Service E-Commerce Technologien
Software as a Service E-Commerce TechnologienSoftware as a Service E-Commerce Technologien
Software as a Service E-Commerce Technologien
Martina Goehring
 
My application as webdesigner and front-end developer
My application as webdesigner and front-end developerMy application as webdesigner and front-end developer
My application as webdesigner and front-end developer
christianschweinhardt
 
Cloud-ERP-System mit TCPOS-Schnittstelle
Cloud-ERP-System mit TCPOS-SchnittstelleCloud-ERP-System mit TCPOS-Schnittstelle
Cloud-ERP-System mit TCPOS-Schnittstelle
wolter & works - die web manufaktur
 

Ähnlich wie Push-Benachrichtigungen in SharePoint via SignalR (20)

3. Night of the pack
3. Night of the pack3. Night of the pack
3. Night of the pack
 
Orbiti Ex Michael Greth Cms Shoot Out
Orbiti Ex Michael Greth Cms Shoot OutOrbiti Ex Michael Greth Cms Shoot Out
Orbiti Ex Michael Greth Cms Shoot Out
 
BASTA Spring 2018: User Interface, quo vadis? Überlebensstrategien eines Soft...
BASTA Spring 2018: User Interface, quo vadis? Überlebensstrategien eines Soft...BASTA Spring 2018: User Interface, quo vadis? Überlebensstrategien eines Soft...
BASTA Spring 2018: User Interface, quo vadis? Überlebensstrategien eines Soft...
 
Top 10 Internet Trends 2006
Top 10 Internet Trends 2006Top 10 Internet Trends 2006
Top 10 Internet Trends 2006
 
Echtzeitvisualisierung von Twitter und Co.
Echtzeitvisualisierung von Twitter und Co.Echtzeitvisualisierung von Twitter und Co.
Echtzeitvisualisierung von Twitter und Co.
 
Echtzeitvisualisierung von Twitter & Co
Echtzeitvisualisierung von Twitter & CoEchtzeitvisualisierung von Twitter & Co
Echtzeitvisualisierung von Twitter & Co
 
BTEXX INTRANET-PORTAL – READY TO RUN
BTEXX INTRANET-PORTAL – READY TO RUNBTEXX INTRANET-PORTAL – READY TO RUN
BTEXX INTRANET-PORTAL – READY TO RUN
 
Lebenslauf
LebenslaufLebenslauf
Lebenslauf
 
LineMetrics Data-as-a-Service - Monitoring für Bestandsgebäude
LineMetrics Data-as-a-Service - Monitoring für BestandsgebäudeLineMetrics Data-as-a-Service - Monitoring für Bestandsgebäude
LineMetrics Data-as-a-Service - Monitoring für Bestandsgebäude
 
SharePoint 2010 in der hybriden Cloud
SharePoint 2010 in der hybriden CloudSharePoint 2010 in der hybriden Cloud
SharePoint 2010 in der hybriden Cloud
 
Windows 7 - Preview & Roadmap
Windows 7 - Preview & RoadmapWindows 7 - Preview & Roadmap
Windows 7 - Preview & Roadmap
 
Software as a Service E-Commerce Technologien
Software as a Service E-Commerce TechnologienSoftware as a Service E-Commerce Technologien
Software as a Service E-Commerce Technologien
 
My application as webdesigner and front-end developer
My application as webdesigner and front-end developerMy application as webdesigner and front-end developer
My application as webdesigner and front-end developer
 
Sencha Touch und PhoneGap
Sencha Touch und PhoneGapSencha Touch und PhoneGap
Sencha Touch und PhoneGap
 
Kevin Hofer
Kevin HoferKevin Hofer
Kevin Hofer
 
Zertifizierter projektmanager verfügbar
Zertifizierter projektmanager verfügbarZertifizierter projektmanager verfügbar
Zertifizierter projektmanager verfügbar
 
Cloud-ERP-System mit TCPOS-Schnittstelle
Cloud-ERP-System mit TCPOS-SchnittstelleCloud-ERP-System mit TCPOS-Schnittstelle
Cloud-ERP-System mit TCPOS-Schnittstelle
 
Slides (2) zu Teil 2 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 2 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...Slides (2) zu Teil 2 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 2 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
 
2010 09 30 11-30 thomas marx
2010 09 30 11-30 thomas marx2010 09 30 11-30 thomas marx
2010 09 30 11-30 thomas marx
 
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
 

Mehr von Christian Heindel

Mehr von Christian Heindel (8)

MobileCamp 2014: on{x} - Google Now zum Selberbauen
MobileCamp 2014: on{x} - Google Now zum SelberbauenMobileCamp 2014: on{x} - Google Now zum Selberbauen
MobileCamp 2014: on{x} - Google Now zum Selberbauen
 
Social Workflows mit Nintex Workflow und SharePoint 2013
Social Workflows mit Nintex Workflow und SharePoint 2013Social Workflows mit Nintex Workflow und SharePoint 2013
Social Workflows mit Nintex Workflow und SharePoint 2013
 
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
 
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
 
Realtime applications for SharePoint with SignalR and knockout.js
Realtime applications for SharePoint with SignalR and knockout.jsRealtime applications for SharePoint with SignalR and knockout.js
Realtime applications for SharePoint with SignalR and knockout.js
 
Collaboration Days 2011 - Mobile Anwendungen für SharePoint mit HTML5
Collaboration Days 2011 - Mobile Anwendungen für SharePoint mit HTML5Collaboration Days 2011 - Mobile Anwendungen für SharePoint mit HTML5
Collaboration Days 2011 - Mobile Anwendungen für SharePoint mit HTML5
 
European SharePoint Conference: Mobile Applications for SharePoint using HTML5
European SharePoint Conference: Mobile Applications for SharePoint using HTML5European SharePoint Conference: Mobile Applications for SharePoint using HTML5
European SharePoint Conference: Mobile Applications for SharePoint using HTML5
 
Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5
 

Push-Benachrichtigungen in SharePoint via SignalR

  • 1. 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
  • 2. 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
  • 3. 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
  • 4. 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
  • 7. Code-Beispiel: SignalR, Event SharePoint Event Receiver Aufbereiten der Push-Nachricht Nachricht senden
  • 9. knockout.js Simplify dynamic JavaScript UIs by applying the Model-View-View Model (MVVM) pattern Declarative Bindings Automatic UI Refresh Dependency Tracking Templating Easily associate DOM When your data model's Implicitly set up chains of Quickly generate elements with model data state changes, your UI relationships between sophisticated, nested UIs using a concise, readable updates automatically model data, to transform as a function of your model syntax and combine it data
  • 10. Code-Beispiel: knockout.js JavaScript laden: DataBinding im HTML: ViewModel definieren: Anfangen zu lauschen: Werte aktualisieren:
  • 11. DEMO
  • 12. 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
  • 13. Quelle Matt Menezes Harnessing SignalR in SharePoint http://spmatt.wordpress.com/2012/04/12/harnessing-signalr-in-sharepoint/
  • 14. Fragen? 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