A platform to build real-time social applications. Daniel Appelquist props to Laurent Eschenauer, Alard Weisscher and Diana Cheng

Size: px
Start display at page:

Download "A platform to build real-time social applications. Daniel Appelquist props to Laurent Eschenauer, Alard Weisscher and Diana Cheng"

Transcription

1 A platform to build real-time social applications Daniel Appelquist props to Laurent Eschenauer, Alard Weisscher and Diana Cheng Federated Social Web Summit - July 18, 2010

2 Daniel Appelquist Web & Internet Evangelist Vodafone Group

3

4

5

6

7

8

9

10 Onesocialweb: a free, open and decentralized social networking platform

11 The menu for today High level overview Demo Protocol and data models Hands on with the API Q&A

12 The menu for today High level overview Demo Protocol and data models Hands on with the API Q&A

13 Can we make social communications as simple and universal as ? Facebook MySpace whatever.com Friending and following across networks One identity and yet multiple communities 360 Google Data portability

14 A lot of activities in this field... but no such platform yet

15 protocol platform user experience

16 A protocol based on open standards XMPP Activitystreams VCard XFN Identity, discovery & communication Data model for social objects Data model for profiles Data model for relationships protocol

17 Architecture: federated client-server e.g. Alice updates her status wonderland.lit realworld.com Post a new item to her stream alice@wonderland.lit bob@realworld.com protocol

18 Architecture: federated client-server e.g. Alice updates her status wonderland.lit realworld.com Push notifications to recipients protocol

19 protocol Architecture: federated client-server e.g. Alice updates her status wonderland.lit realworld.com Real-time notifications

20 Architecture: federated client-server e.g. Alice looks up Bob's profile wonderland.lit Request profile of realworld.com protocol

21 Architecture: federated client-server e.g. Alice looks up Bob's profile wonderland.lit realworld.com Request is forwarded to Bob's domain on behalf. protocol

22 Architecture: federated client-server e.g. Alice looks up Bob's profile wonderland.lit realworld.com Bob's provider replies with the profile data that alice is allowed to see. protocol

23 Architecture: federated client-server e.g. Alice looks up Bob's profile wonderland.lit Result is sent back to the requesting client realworld.com protocol

24 An open source platform platform End to end platform server backend, client libraries for desktop and mobile Open source Apache 2 license Java 30% code reuse between components Web client written in GWT (Java compiled to Javascript) Already available. Easy to setup. Join our growing community to experiment with us and get involved via our mailing list!

25 A social network user experience web client (HTML + JS) user experience Android client This is just one implementation of a social networking experience. Keep in mind that Onesocialweb is a platform enabling any kind of social applications.

26 The menu for today High level overview Demo Protocol and data models Hands on with the API Q&A

27 The menu for today High level overview Demo Protocol and data models Hands on with the API Q&A

28 XMPP

29 References XMPP: The definitive guide Peter Saint-Andre, Remko Troncon, Kevin Smith O'Reilly 1999 ISBN: XMPP 101 Peter Saint-Andre & Remko Troncon FOSDEM XMPP

30 XMPP Architecture Web is a browser (thin client) server architecture wonderland.lit web server realworld.com web server browser From: XMPP 101 by Peter Saint-Andre and Remko Tronco, FOSDEM 2009

31 XMPP Architecture is client server with multi-hop federation wonderland.lit server between.org server realworld.com server client client From: XMPP 101 by Peter Saint-Andre and Remko Tronco, FOSDEM 2009

32 XMPP Architecture XMPP is a client server with single hop federation wonderland.lit xmpp server realworld.com xmpp server xmpp client xmpp client alice@wonderland.lit bob@realworld.com From: XMPP 101 by Peter Saint-Andre and Remko Tronco, FOSDEM 2009

33 XMPP Addressing Similar to User Domain Bare JID (Jabber ID) From: XMPP 101 by Peter Saint-Andre and Remko Tronco, FOSDEM 2009

34 XMPP Addressing Similar to with an added resource User Domain Resource Full JID (Jabber ID) From: XMPP 101 by Peter Saint-Andre and Remko Tronco, FOSDEM 2009

35 Streaming XML <stream: stream> <presence/> <iq type="get"> <query xmlns="jabber:iq:roster"/> </iq> <iq type="result"> <query xmlns="jabber:iq:roster"> <item <item <item </query> </iq> <message <body>off with his head!</body> </message> <message <body>you are all pardoned.</body> </message> <presence type="unavailable"/> </stream: stream> From: XMPP 101 by Peter Saint-Andre and Remko Tronco, FOSDEM 2009 XMPP

36 Communication based on three stanzas <message /> <presence /> <iq /> From: XMPP 101 by Peter Saint-Andre and Remko Tronco, FOSDEM 2009 XMPP

37 Message stanza XMPP <message <body>off with his head!</body> </message> One to one messaging (from & to addresses) Different types of messages (chat, headline, error, ) Basic payload of subject and body From: XMPP 101 by Peter Saint-Andre and Remko Tronco, FOSDEM 2009

38 Presence stanza XMPP <presence <show>xa</show> <status>down the rabbit hole!</status> </presence> Advertise network availability Rich presence (away, available for chat...) Rich status (a free text entry) Typically used for rosters in IM use cases From: XMPP 101 by Peter Saint-Andre and Remko Tronco, FOSDEM 2009

39 IQ stanza <iq type="get"> <query xmlns="jabber:iq:roster"/> </iq> <iq type="result"> <query xmlns="jabber:iq:roster"> <item <item <item </query> </iq> Request/response Enable querying and editing of resources Similar to HTTP GET & HTTP POST From: XMPP 101 by Peter Saint-Andre and Remko Tronco, FOSDEM 2009 XMPP

40 extensible MPP XMPP Any child XML element can be used as a payload, using XML namespaces to manage scope <message from="queen@wonderland.lit" to="madhatter@wonderland.lit"> <body>off with his head!</body> <entry xmlns=" <published> t12:40:51.292z</published> <author> <name>the Queen</name> </author> <title>message from the Queen</title> <content type='html'> Off with his <b>head</b>! </content> </message> From: XMPP 101 by Peter Saint-Andre and Remko Tronco, FOSDEM 2009

41 Long-lived connection & asynchronous Web world is synchronous - send request - wait for answer - receive response XMPP is asynchronous - long lived connections - event based messaging From: XMPP 101 by Peter Saint-Andre and Remko Tronco, FOSDEM 2009 XMPP

42 Why XMPP for Onesocialweb? Only technology to achieve such a federation seamlessly: Identity (user@domain) Security (TLS and S2S with dialback) Discovery (XMPP Disco) Useful extensions (Roster, PubSub, ) Doing the same in the web world requires to assemble: OpenID (identity) Oauth (authentication and authorization) Webfinger (discovery and openid on en ) Pubsubhubbub (server to server push notifications) Salmon (messaging and commenting) and to address a lot of other issues (e.g. Privacy, NAT clients)

43 Activitystrea.ms

44 References The Open and Social Web Chris Messina Google I/O Activitystreams

45 The need for machine readable data 1999 Introduction of RSS <?xml version="1.0" encoding="utf-8"?> <rss version="2.0"> <channel> <item> <title>when Will Location-Based Coupons Take Off?</title> <link> <pubdate>fri, 12 Mar :38: </pubDate> <creator>by CLAIRE CAIN MILLER</creator> <description> People want to receive location-based cellphone coupons, but most have not, according to a Web analytics firm. </description> </item> </channel> </rss> title + link + description From: The Open and Social web, Chris Messina, Google I/O 2010

46 The need for machine readable data 2005 Atom addresses some of the shortcomings <?xml version="1.0" encoding="utf-8"?> <feed xmlns=" <entry> <title>when Will Location-Based Coupons Take Off?</title> <link rel= alternate > <id>urn:uuid:60a76c80-d399-11d9-b91c e0af6</id> <updated>fri, 12 Mar :38: </updated> <author> <name>by CLAIRE CAIN MILLER</name> </author> <summary> People want to receive location-based cellphone coupons, but most have not, according to a Web analytics firm. </summary> </entry> </feed> title + link + summary + author + id + updated From: The Open and Social web, Chris Messina, Google I/O 2010

47 Yet, no common way to describe rich social interactions... leading to proprietary data models title + link + summary + author + id + updated

48 Activitystreams provides a common language to describe social interactions... actor verb object target

49 Activitystreams provides a common language to describe social interactions... eschnou posted a note

50 Activitystreams provides a common language to describe social interactions... eschnou posted a picture to an album

51 Activitystreams provides a common language to describe social interactions... eschnou liked a video

52 building upon existing Atom elements title + link + summary + author + id + updated + verb + object-type + target

53 building upon existing Atom elements <?xml version="1.0" encoding="utf-8"?> <feed xmlns=" xmlns:activity=" <entry> <title>...</title> <link rel= alternate >...</link> <id>...</id> <updated>...</updated> <author> <activity:object-type>person</activity:object-type> <name>...</name> </author> <activity:verb>post</activity:verb> <activity:object> <activity:object-type>note</activity:object-type> <content type= html >... </content> </activity:object> </entry> </feed> From: The Open and Social web, Chris Messina, Google I/O 2010

54 Onesocialweb extends this further with context data and access control rules actor verb object target context access-control

55 Onesocialweb extends it further with context data and access control rules eschnou took a picture in Barcelona, it can be seen visible by 'friends'

56 Putting it all together

57 Juliet updates her status O Romeo, Romeo, wherefore art thou Romeo?

58 <iq type='set' to='capulet.lit' id='osw1'> <pubsub xmlns=" <publish node= urn:xmpp:microblog:0 > <entry xmlns=" xmlns:activity=" xmlns:osw=" <title>o Romeo, Romeo, wherefore art thou Romeo?</title> <activity:verb> <activity:object> <activity:object-type> <content>o Romeo, Romeo, wherefore art thou Romeo?</content> </activity:object> <osw:acl-rule> <osw:acl-action permission=" </osw:acl-action> <osw:acl-subject> </osw:acl-rule> </entry> </publish> </pubsub> </iq>

59 <iq type='set' to='capulet.lit' id='osw1'> <pubsub xmlns=" <publish node= urn:xmpp:microblog:0 > <entry xmlns=" xmlns:activity=" xmlns:osw=" <title>o Romeo, Romeo, wherefore art thou Romeo?</title> <activity:verb> <activity:object> <activity:object-type> <content>o Romeo, Romeo, wherefore art thou Romeo?</content> </activity:object> <osw:acl-rule> <osw:acl-action permission=" </osw:acl-action> <osw:acl-subject> </osw:acl-rule> </entry> </publish> </pubsub> </iq>

60 <iq type='set' to='capulet.lit' id='osw1'> <pubsub xmlns=" <publish node= urn:xmpp:microblog:0 > <entry xmlns=" xmlns:activity=" xmlns:osw=" <title>o Romeo, Romeo, wherefore art thou Romeo?</title> <activity:verb> <activity:object> <activity:object-type> <content>o Romeo, Romeo, wherefore art thou Romeo?</content> </activity:object> <osw:acl-rule> <osw:acl-action permission=" </osw:acl-action> <osw:acl-subject> </osw:acl-rule> </entry> </publish> </pubsub> </iq>

61 <iq type='set' to='capulet.lit' id='osw1'> <pubsub xmlns=" <publish node= urn:xmpp:microblog:0 > <entry xmlns=" xmlns:activity=" xmlns:osw=" <title>o Romeo, Romeo, wherefore art thou Romeo?</title> <activity:verb> <activity:object> <activity:object-type> <content>o Romeo, Romeo, wherefore art thou Romeo?</content> </activity:object> <osw:acl-rule> <osw:acl-action permission=" </osw:acl-action> <osw:acl-subject> </osw:acl-rule> </entry> </publish> </pubsub> </iq>

62 The menu for today High level overview Demo Protocol and data models Hands on with the API Q&A

63 How would you create a social shopping list application? Create shopping lists Share them with friends Collaborate on shopping items Receive real-time notifications e.g. Shopulator on Android

64 Today you need a lot more than a mobile app We need a back-end server... User registration Social graph management (e.g. inviting friends) Data storage for the shopping list Web API (to communicate with the mobile client) and a solution for push notifications Custom TCP sockets Web sockets Comet (HTTP Long polling) SMS Apple Push Notifications Android C2DM

65 With Onesocialweb, you focus on your application and let the protocol do the rest Create a shopping list object and a user as a collaborator ShoppingList list = new ShoppingList(); list.settitle( BBQ on Sunday ); list.additem( bread ); list.addcollaborator( alice@betavine.net );

66 With Onesocialweb, you focus on your application and let the protocol do the rest Create a shopping list object and a user as a collaborator ShoppingList list = new ShoppingList(); list.settitle( BBQ on Sunday ); list.additem( bread ); list.addcollaborator( alice@betavine.net ); Connect to the user account and post the new shopping list service.connect( vodafonernd.com, 5222, null); service.login( eschnou, ******, shoplist ); service.post(list);

67 With Onesocialweb, you focus on your application and let the protocol do the rest Create a shopping list object and a user as a collaborator ShoppingList list = new ShoppingList(); list.settitle( BBQ on Sunday ); list.additem( bread ); list.addcollaborator( alice@betavine.net ); Connect to the user account and post the new shopping list service.connect( vodafonernd.com, 5222, null); service.login( eschnou, ******, shoplist ); service.post(list); Listen to incoming social events and act on shopping list service.registerinboxeventhandler(new InboxEventHandler() { public void handleevent(inboxevent event) { if (event.getobjecttype().equals( )) { notify(); }}});

68 The power of having a common data model in a federated network Facebook MySpace eschnou@facebook.com 360 Google mysister@gmail.com mymother@360.com Realtime picture sharing with friends and family, across networks, and without tight coupling of the social applications

69 Get started: @torgo,

Open Federated Social Networks Oscar Rodríguez Rocha

Open Federated Social Networks Oscar Rodríguez Rocha Open Federated Social Networks Oscar Rodríguez Rocha 178691 Federated document database Documents are stored on different servers Access through browsers Any individual, company, or organization can own

More information

Tipping the Webscale. with XMPP & WebSockets

Tipping the Webscale. with XMPP & WebSockets Tipping the Webscale with XMPP & WebSockets Sonny Scroggin email/xmpp: sonny@scrogg.in + github/twitter: @scrogson Nashville, TN openstack hosted private cloud // hybrid cloud bluebox.net WHAT WE'LL COVER

More information

Make your application real-time with PubSubHubbub. Brett Slatkin May 19th, 2010

Make your application real-time with PubSubHubbub. Brett Slatkin May 19th, 2010 Make your application real-time with PubSubHubbub Brett Slatkin May 19th, 2010 View live notes and ask questions about this session on Google Wave http://tinyurl.com/push-io2010 Me http://onebigfluke.com

More information

FOSP. Towards a Federated Object Sharing Protocol that Unifies Operations on Social Content Felix Maurer June 16,

FOSP. Towards a Federated Object Sharing Protocol that Unifies Operations on Social Content Felix Maurer June 16, FOSP Towards a Federated Object Sharing Protocol that Unifies Operations on Social Content Felix Maurer June 16, 2014 FORSCHUNGSGRUPPE DEZENTRALE SYSTEME UND NETZDIENSTE KIT University of the State of

More information

Category: Standards Track October Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence

Category: Standards Track October Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence Network Working Group P. Saint-Andre, Ed. Request for Comments: 3921 Jabber Software Foundation Category: Standards Track October 2004 Status of this Memo Extensible Messaging and Presence Protocol (XMPP):

More information

XMPP Illustrated: Getting to Know XMPP

XMPP Illustrated: Getting to Know XMPP HISTORY XMPP Is A Protocol The extensible Messaging and Presence Protocol (XMPP) is, at its most basic level, a protocol for moving small, structured pieces of data between two places. Like other protocols,

More information

Build the realtime web with XMPP and Wave

Build the realtime web with XMPP and Wave Build the realtime web with XMPP and Wave ollaborating in realtime on the web 2010-03-26 - Erlang Factory Mickaël Rémond Building the real time web: Initial problem Realtime web:

More information

XEP-0146: Remote Controlling Clients

XEP-0146: Remote Controlling Clients XEP-0146: Remote Controlling Clients Remko Tronçon http://el-tramo.be/ Peter Saint-Andre mailto:xsf@stpeter.im xmpp:peter@jabber.org http://stpeter.im/ 2017-11-07 Version 1.1 Status Type Short Name Obsolete

More information

Abstract. Table of Contents. 1. License

Abstract. Table of Contents. 1. License Your use of this Specification may be subject to other third party rights. THIS SPECIFICATION IS PROVIDED AS IS. The contributors expressly disclaim any warranties (express, implied, or otherwise), including

More information

Massive IM Scalability using WebSockets Michał Ślaski

Massive IM Scalability using WebSockets Michał Ślaski Erlang Solutions Ltd. Massive IM Scalability using WebSockets Michał Ślaski What am I chatting about? 1999-2011 Erlang Solutions Ltd. 2 What am I chatting about? Chat features 1999-2011 Erlang Solutions

More information

XEP-0357: Push Notifications

XEP-0357: Push Notifications XEP-0357: Push Notifications Kevin Smith mailto:kevin@kismith.co.uk xmpp:kevin@doomsong.co.uk Lance Stout mailto:lance@andyet.com xmpp:lance@lance.im 2017-08-24 Version 0.3 Status Type Short Name Experimental

More information

Hello everyone. My name is Kundan Singh and today I will describe a project we did at Avaya Labs.

Hello everyone. My name is Kundan Singh and today I will describe a project we did at Avaya Labs. Hello everyone. My name is Kundan Singh and today I will describe a project we did at Avaya Labs. 1 Let me start by saying that people often forget the importance of separating data from the application

More information

OpenID: From Geek to Chic. Greg Keegstra OpenID Summit Tokyo Dec 1, 2011

OpenID: From Geek to Chic. Greg Keegstra OpenID Summit Tokyo Dec 1, 2011 OpenID: From Geek to Chic Greg Keegstra OpenID Summit Tokyo Dec 1, 2011 Why OpenID? Time for a poll Who has reused their same password when logging into a new website? Who has forgotten their password

More information

Port Utilization in SocialMiner

Port Utilization in SocialMiner Utilization in Utilization Table Columns, page 1 Utilization, page 2 Utilization Table Columns The columns in the port utilization tables in this document describe the following: A value representing the

More information

Harnessing the Power of HTML5 WebSocket to Create Scalable Real-time Applications. Brian Albers & Peter Lubbers, Kaazing

Harnessing the Power of HTML5 WebSocket to Create Scalable Real-time Applications. Brian Albers & Peter Lubbers, Kaazing Harnessing the Power of HTML5 WebSocket to Create Scalable Real-time Applications Brian Albers & Peter Lubbers, Kaazing 1 About Peter Lubbers Director of Documentation and Training, Kaazing Co-Founder

More information

XEP-0280: Message Carbons

XEP-0280: Message Carbons XEP-0280: Message Carbons Joe Hildebrand mailto:jhildebr@cisco.com xmpp:jhildebr@cisco.com Matthew Miller mailto:linuxwolf@outer-planes.net xmpp:linuxwolf@outer-planes.net 2017-02-16 Version 0.12.0 Status

More information

Intended status: Informational. B. Wyman October 2, 2007

Intended status: Informational. B. Wyman October 2, 2007 Network Working Group Internet-Draft Intended status: Informational Expires: April 4, 2008 P. Saint-Andre XMPP Standards Foundation J. Hildebrand Jabber, Inc. B. Wyman October 2, 2007 Transporting Atom

More information

XEP-0140: Shared Groups

XEP-0140: Shared Groups XEP-0140: Shared Groups Peter Saint-Andre mailto:peter@andyetnet xmpp:stpeter@stpeterim https://stpeterim/ 2004-10-27 Version 02 Status Type Short Name Retracted Informational groups This document defines

More information

XEP-0133: Service Administration

XEP-0133: Service Administration XEP-0133: Service Administration Peter Saint-Andre mailto:xsf@stpeter.im xmpp:peter@jabber.org http://stpeter.im/ 2017-07-15 Version 1.2 Status Type Short Name Active Informational admin This document

More information

Kaazing. Connect. Everything. WebSocket The Web Communication Revolution

Kaazing. Connect. Everything. WebSocket The Web Communication Revolution Kaazing. Connect. Everything. WebSocket The Web Communication Revolution 1 Copyright 2011 Kaazing Corporation Speaker Bio John Fallows Co-Founder: Kaazing, At the Heart of the Living Web Co-Author: Pro

More information

ITP 342 Mobile App Development. APIs

ITP 342 Mobile App Development. APIs ITP 342 Mobile App Development APIs API Application Programming Interface (API) A specification intended to be used as an interface by software components to communicate with each other An API is usually

More information

Skype for Business Mobile Client Comparison Guide

Skype for Business Mobile Client Comparison Guide Mobile Client Introduction can be used on a personal mobile device through the mobile application (app). The mobile app allows users to view presence information, send and receive instant messages and

More information

The API is dead. Long live the protocol.

The API is dead. Long live the protocol. The API is dead. Long live the protocol. We need to add messaging to... Developers don't know who to trust or have a clear methodology. Messaging is complex and developers spend a lot of time

More information

Jabber, Inc. August 20, 2004

Jabber, Inc. August 20, 2004 Network Working Group Internet-Draft Expires: February 18, 2005 P. Saint-Andre Jabber Software Foundation J. Hildebrand Jabber, Inc. August 20, 2004 Transporting Atom Notifications over the Extensible

More information

Web 2.0, AJAX and RIAs

Web 2.0, AJAX and RIAs Web 2.0, AJAX and RIAs Asynchronous JavaScript and XML Rich Internet Applications Markus Angermeier November, 2005 - some of the themes of Web 2.0, with example-sites and services Web 2.0 Common usage

More information

XMPP/Jabber introducing the lingua franca of instant messaging

XMPP/Jabber introducing the lingua franca of instant messaging XMPP/Jabber introducing the lingua franca of instant messaging Alexander Neumann 27.12.2004 prerequisites 1 the protocol I would like to talk about has been named XMPP by the IETF working

More information

Custom Embedded Tabs, on page 1 Configure Cisco Jabber for Android on Chromebook, on page 8 Cisco Jabber Mobile App Promotion, on page 9

Custom Embedded Tabs, on page 1 Configure Cisco Jabber for Android on Chromebook, on page 8 Cisco Jabber Mobile App Promotion, on page 9 Custom Embedded Tabs, on page 1 Configure Cisco Jabber for Android on Chromebook, on page 8 Cisco Jabber Mobile App Promotion, on page 9 Custom Embedded Tabs Applies to Cisco Jabber for desktop and mobile

More information

Tigase Push Component

Tigase Push Component Tigase Push Component Tigase Push Component Table of Contents... iv 1. Tigase Push Component... 1 Workflow... 1 Enabling notifications... 1 Receiving notifications... 1 2. Configuration... 2 Enabling component...

More information

IERG 4080 Building Scalable Internet-based Services

IERG 4080 Building Scalable Internet-based Services Department of Information Engineering, CUHK MScIE 2 nd Semester, 2015/16 IERG 4080 Building Scalable Internet-based Services Lecture 9 Web Sockets for Real-time Communications Lecturer: Albert C. M. Au

More information

Harnessing the Power of HTML5 WebSocket to Create Scalable Real-Time Applications. Peter Lubbers Kaazing

Harnessing the Power of HTML5 WebSocket to Create Scalable Real-Time Applications. Peter Lubbers Kaazing Harnessing the Power of HTML5 WebSocket to Create Scalable Real-Time Applications Peter Lubbers Kaazing Wer ist dieser Kerl? > Director of Documentation and Training, Kaazing > Co-Founder San Francisco

More information

PubSubHubbub Real-time RSS for the Decentralized Web. Brett Slatkin Google Inc. 18 November 2009

PubSubHubbub Real-time RSS for the Decentralized Web. Brett Slatkin Google Inc. 18 November 2009 PubSubHubbub Real-time RSS for the Decentralized Web Brett Slatkin Google Inc. 18 November 2009 Motivation Motivation Want server-to-server, interoperable messaging - Decentralized social networks - Federated

More information

Request for Comments: 5437 Category: Standards Track Isode Limited January 2009

Request for Comments: 5437 Category: Standards Track Isode Limited January 2009 Network Working Group Request for Comments: 5437 Category: Standards Track P. Saint-Andre Cisco A. Melnikov Isode Limited January 2009 Status of This Memo Sieve Notification Mechanism: Extensible Messaging

More information

Kaazing Gateway: An Open Source

Kaazing Gateway: An Open Source Kaazing Gateway: An Open Source HTML 5 Websocket Server Speaker Jonas Jacobi Co-Founder: Kaazing Co-Author: Pro JSF and Ajax, Apress Agenda Real-Time Web? Why Do I Care? Scalability and Performance Concerns

More information

Part I XMPP Protocol and Architecture COPYRIGHTED MATERIAL. Chapter 1: Getting to Know XMPP. Chapter 2: Designing XMPP Applications

Part I XMPP Protocol and Architecture COPYRIGHTED MATERIAL. Chapter 1: Getting to Know XMPP. Chapter 2: Designing XMPP Applications Part I XMPP Protocol and Architecture Chapter 1: Getting to Know XMPP Chapter 2: Designing XMPP Applications COPYRIGHTED MATERIAL 1 Getting to Know XMPP What s in This Chapter? The history of XMPP XMPP

More information

XEP-0060: Publish-Subscribe

XEP-0060: Publish-Subscribe XEP-0060: Publish-Subscribe Peter Millard Peter Saint-Andre mailto:xsf@stpeter.im xmpp:peter@jabber.org http://stpeter.im/ 2018-05-14 Version 1.15.2 Ralph Meijer mailto:ralphm@ik.nu xmpp:ralphm@ik.nu Status

More information

VoipSwitch User Portal for Rich Communiation Suite RCS features, HTML 5, WebRTC powered FOR DESKTOP AND MOBILES

VoipSwitch User Portal for Rich Communiation Suite RCS features, HTML 5, WebRTC powered FOR DESKTOP AND MOBILES VoipSwitch User Portal for Rich Communiation Suite RCS features, HTML 5, WebRTC powered FOR DESKTOP AND MOBILES Overview The VoipSwitch User Portal (VUP) is a self-care customer portal for VoIP service

More information

DEVELOPER GUIDE FOR CISCO UNIFIED CM IM AND PRESENCE 10.5(2)

DEVELOPER GUIDE FOR CISCO UNIFIED CM IM AND PRESENCE 10.5(2) DEVELOPER GUIDE FOR CISCO UNIFIED CM IM AND PRESENCE 10.5(2) Last Updated: 15/12/2014 All contents are Copyright 2014 Cisco Systems, Inc. All rights reserved. Page 1 of 145 Table of Contents Cisco Unified

More information

RFID in Internet of things: from the static to the real-time

RFID in Internet of things: from the static to the real-time RFID in Internet of things: from the static to the real-time ETSI Workshop on RFID and The Internet Of Things, 3rd and 4th December 007 Fabio Forno, Ph. D. Mikhail Simonov Introduction Outline Complexity

More information

XEP-0289: Federated MUC for Constrained Environments

XEP-0289: Federated MUC for Constrained Environments XEP-0289: Federated MUC for Constrained Environments Kevin Smith mailto:kevin.smith@isode.com xmpp:kevin.smith@isode.com 2012-05-29 Version 0.2 Status Type Short Name Deferred Standards Track FMUC This

More information

Corso di Applicazioni Telematiche

Corso di Applicazioni Telematiche XMPP Extensible Messaging and Presence Protocol Corso di Applicazioni Telematiche A.A. 2009-10 Prof. Simon Pietro Romano Università degli Studi di Napoli Federico II Facoltà di Ingegneria XMPP: extensible

More information

Getting Started with Lync 2010 for iphone

Getting Started with Lync 2010 for iphone Getting Started with Lync 2010 for iphone Getting started with Lync 2010 on the iphone» Requirements» Installing Lync» Removing Lync» Signing in to Lync» Signing out of Lync Requirements iphone 3GS, iphone

More information

The Future of the Web: HTML 5, WebSockets, Comet and Server Sent Events

The Future of the Web: HTML 5, WebSockets, Comet and Server Sent Events The Future of the Web: HTML 5, WebSockets, Comet and Server Sent Events Sidda Eraiah Director of Management Services Kaazing Corporation Agenda Web Applications, where are they going? Real time data for

More information

An Online Platform for Real-Time Sensor Data Collection, Visualization, and Sharing

An Online Platform for Real-Time Sensor Data Collection, Visualization, and Sharing An Online Platform for Real-Time Sensor Data Collection, Visualization, and Sharing In Partial Fulfillment of the Requirements for the Degree of Master of Informatics Engineering Presented to the Department

More information

XEP-0206: XMPP Over BOSH

XEP-0206: XMPP Over BOSH 1 di 15 31/01/2011 19:39 XEP-0206: XMPP Over BOSH Abstract: Authors: Copyright: Status: Type: This specification defines how the Bidirectional-streams Over Synchronous HTTP (BOSH) technology can be used

More information

WebCenter Interaction 10gR3 Overview

WebCenter Interaction 10gR3 Overview WebCenter Interaction 10gR3 Overview Brian C. Harrison Product Management WebCenter Interaction and Related Products Summary of Key Points AquaLogic Interaction portal has been renamed

More information

XEP-0033: Extended Stanza Addressing

XEP-0033: Extended Stanza Addressing XEP-0033: Extended Stanza Addressing Joe Hildebrand mailto:jhildebr@cisco.com xmpp:hildjj@jabber.org Peter Saint-Andre mailto:xsf@stpeter.im xmpp:peter@jabber.org http://stpeter.im/ 2017-01-11 Version

More information

XEP-0135: File Sharing

XEP-0135: File Sharing XEP-0135: File Sharing Peter Saint-Andre mailto:xsf@stpeter.im xmpp:peter@jabber.org http://stpeter.im/ 2004-06-04 Version 0.1 Status Type Short Name Deferred Standards Track files This document specifies

More information

ITP 342 Mobile App Development. APIs

ITP 342 Mobile App Development. APIs ITP 342 Mobile App Development APIs API Application Programming Interface (API) A specification intended to be used as an interface by software components to communicate with each other An API is usually

More information

Authentication in the Cloud. Stefan Seelmann

Authentication in the Cloud. Stefan Seelmann Authentication in the Cloud Stefan Seelmann Agenda Use Cases View Points Existing Solutions Upcoming Solutions Use Cases End user needs login to a site or service End user wants to share access to resources

More information

If you re a Facebook marketer, you re likely always looking for ways to

If you re a Facebook marketer, you re likely always looking for ways to Chapter 1: Custom Apps for Fan Page Timelines In This Chapter Using apps for Facebook marketing Extending the Facebook experience Discovering iframes, Application Pages, and Canvas Pages Finding out what

More information

ITP 140 Mobile Technologies. Mobile Topics

ITP 140 Mobile Technologies. Mobile Topics ITP 140 Mobile Technologies Mobile Topics Topics Analytics APIs RESTful Facebook Twitter Google Cloud Web Hosting 2 Reach We need users! The number of users who try our apps Retention The number of users

More information

Security Guide Zoom Video Communications Inc.

Security Guide Zoom Video Communications Inc. Zoom unifies cloud video conferencing, simple online meetings, group messaging, and a softwaredefined conference room solution into one easy-to-use platform. Zoom offers the best video, audio, and wireless

More information

Desktop client for open social networks

Desktop client for open social networks Charles University in Prague Faculty of Mathematics and Physics BACHELOR THESIS Maroš Kasinec Desktop client for open social networks Department of Applied Mathematics Supervisor of the bachelor thesis:

More information

Cisco Jabber IM for iphone

Cisco Jabber IM for iphone Data Sheet Cisco Jabber IM for iphone Cisco Collaboration Solutions improve team and customer experiences to help organizations encourage innovation and improve decision making while building trust and

More information

Presence Service. Russ Clark Mobile Applications and Services September 23, 2009

Presence Service. Russ Clark Mobile Applications and Services September 23, 2009 Presence Service Russ Clark Mobile Applications and Services September 23, 2009 What is Presence? A service that indicates the ability and willingness of a user to communicate Supports multiple devices

More information

HTML 5 and CSS 3, Illustrated Complete. Unit M: Integrating Social Media Tools

HTML 5 and CSS 3, Illustrated Complete. Unit M: Integrating Social Media Tools HTML 5 and CSS 3, Illustrated Complete Unit M: Integrating Social Media Tools Objectives Understand social networking Integrate a Facebook account with a Web site Integrate a Twitter account feed Add a

More information

Capability Advertisement Messages

Capability Advertisement Messages Capability Advertisement Messages These sections describe schema definitions for the Capability Advertisement messages. Capability Advertisement Schema, page 1 Components of CCDL, page 2 Schema Definition,

More information

Build Mobile Cloud Apps Effectively Using Oracle Mobile Cloud Services (MCS)

Build Mobile Cloud Apps Effectively Using Oracle Mobile Cloud Services (MCS) Build Mobile Cloud Apps Effectively Using Oracle Mobile Cloud Services (MCS) Presented by: John Jay King Download this paper from: 1 Session Objectives Understand the need for something like Oracle Mobile

More information

XMPP testing with Escalus

XMPP testing with Escalus . March 2, 2012 What is Escalus? Escalus is a library for acceptance testing XMPP servers. some code that makes doing certain things easier What is Escalus? Escalus is a library for acceptance testing

More information

BLACKBERRY SPARK COMMUNICATIONS PLATFORM. Getting Started Workbook

BLACKBERRY SPARK COMMUNICATIONS PLATFORM. Getting Started Workbook 1 BLACKBERRY SPARK COMMUNICATIONS PLATFORM Getting Started Workbook 2 2018 BlackBerry. All rights reserved. BlackBerry and related trademarks, names and logos are the property of BlackBerry

More information

Advisor/Committee Members Dr. Chris Pollett Dr. Mark Stamp Dr. Soon Tee Teoh. By Vijeth Patil

Advisor/Committee Members Dr. Chris Pollett Dr. Mark Stamp Dr. Soon Tee Teoh. By Vijeth Patil Advisor/Committee Members Dr. Chris Pollett Dr. Mark Stamp Dr. Soon Tee Teoh By Vijeth Patil Motivation Project goal Background Yioop! Twitter RSS Modifications to Yioop! Test and Results Demo Conclusion

More information

XEP-0290: Encapsulated Digital Signatures in XMPP

XEP-0290: Encapsulated Digital Signatures in XMPP XEP-0290: Encapsulated Digital Signatures in XMPP Kurt Zeilenga mailto:kurt.zeilenga@isode.com xmpp:kurt.zeilenga@isode.com 2011-01-28 Version 0.2 Status Type Short Name Deferred Standards Track N/A This

More information

SAP Security in a Hybrid World. Kiran Kola

SAP Security in a Hybrid World. Kiran Kola SAP Security in a Hybrid World Kiran Kola Agenda Cybersecurity SAP Cloud Platform Identity Provisioning service SAP Cloud Platform Identity Authentication service SAP Cloud Connector & how to achieve Principal

More information

Partitioned Intradomain Federation for IM and Presence Service on Cisco Unified Communications Manager, Release 11.5(1)SU2

Partitioned Intradomain Federation for IM and Presence Service on Cisco Unified Communications Manager, Release 11.5(1)SU2 Partitioned Intradomain Federation for IM and Presence Service on Cisco Unified Communications Manager, First Published: 2017-01-10 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose,

More information

Google Hangout Lin Zhong

Google Hangout Lin Zhong Tutorial on Google Hangout, Fall, 2012. 1 Page Google Hangout Lin Zhong This tutorial will demonstrate how to make video chat with more than one people at once and how to share screen and video with group

More information

XEP-0363: HTTP File Upload

XEP-0363: HTTP File Upload XEP-0363: HTTP File Upload Daniel Gultsch mailto:daniel@gultsch.de xmpp:daniel@gultsch.de 2018-04-21 Version 0.6.0 Status Type Short Name Proposed Standards Track NOT_YET_ASSIGNED This specification defines

More information

Junction: A Decentralized Platform for Ad Hoc Social and Mobile Applications. Ben Dodson, Monica Lam, Chanh Nguyen, Te-Yuan Huang

Junction: A Decentralized Platform for Ad Hoc Social and Mobile Applications. Ben Dodson, Monica Lam, Chanh Nguyen, Te-Yuan Huang Junction: A Decentralized Platform for Ad Hoc Social and Mobile Applications Ben Dodson, Monica Lam, Chanh Nguyen, Te-Yuan Huang Motivation Motivation Ad Hoc Bring together devices with no previous contact

More information

Mobile Social Media Services

Mobile Social Media Services Mobile Social Media Services T-109.5410 Technology Management in the Telecommunications Industry Olli Mäkinen Doctoral Student Aalto University School of Science 15 th November 2011 Topics Social media

More information

XEP-0313: Message Archive Management

XEP-0313: Message Archive Management XEP-0313: Message Archive Management Matthew Wild mailto:mwild1@gmail.com xmpp:me@matthewwild.co.uk Kevin Smith mailto:kevin@kismith.co.uk xmpp:kevin@doomsong.co.uk 2018-07-16 Version 0.6.3 Status Type

More information

XMPP: The Definitive Guide

XMPP: The Definitive Guide XMPP: The Definitive Guide XMPP: The Definitive Guide Building Real-Time Applications with Jabber Technologies Peter Saint-Andre, Kevin Smith, and Remko Tronçon Beijing Cambridge Farnham Köln Sebastopol

More information

Kony MobileFabric. Release Notes. On-Premises. Release 6.5. Document Relevance and Accuracy

Kony MobileFabric. Release Notes. On-Premises. Release 6.5. Document Relevance and Accuracy Kony MobileFabric Release Notes On-Premises Release 6.5 Document Relevance and Accuracy This document is considered relevant to the Release stated on this title page and the document version stated on

More information

JBoss Users & Developers Conference. Boston:2010

JBoss Users & Developers Conference. Boston:2010 JBoss Users & Developers Conference Boston:2010 Next Gen. Web Apps with GWT & JBoss Mike Brock (cbrock@redhat.com) The Browser is a Platform! Beyond Hypertext Web browsers now have very fast and very usable

More information

P2PSIP, ICE, and RTCWeb

P2PSIP, ICE, and RTCWeb P2PSIP, ICE, and RTCWeb T-110.5150 Applications and Services in Internet October 11 th, 2011 Jouni Mäenpää NomadicLab, Ericsson Research AGENDA Peer-to-Peer SIP (P2PSIP) Interactive Connectivity Establishment

More information

XEP-0130: Waiting Lists

XEP-0130: Waiting Lists XEP-0130: Waiting Lists Peter Saint-Andre mailto:xsf@stpeter.im xmpp:peter@jabber.org http://stpeter.im/ Alexandre Nolle mailto:anolle@francetelecom.com Mark Troyer mailto:mtroyer@jabber.com xmpp:mtroyer@corp.jabber.com

More information

Building the Modern Research Data Portal using the Globus Platform. Rachana Ananthakrishnan GlobusWorld 2017

Building the Modern Research Data Portal using the Globus Platform. Rachana Ananthakrishnan GlobusWorld 2017 Building the Modern Research Data Portal using the Globus Platform Rachana Ananthakrishnan rachana@globus.org GlobusWorld 2017 Platform Questions How do you leverage Globus services in your own applications?

More information

Author: Group 03 Yuly Suvorov, Luke Harvey, Ben Holland, Jordan Cook, Michael Higdon. All Completed SRS2 Steps

Author: Group 03 Yuly Suvorov, Luke Harvey, Ben Holland, Jordan Cook, Michael Higdon. All Completed SRS2 Steps Software Requirements Document for Graffiti Author: Group 03 Yuly Suvorov, Luke Harvey, Ben Holland, Jordan Cook, Michael Higdon Version Date Author Change 0.1 09/13/ SM Initial Document 07 0.2 09/22/

More information

A RESTful Approach to Identity-based Web Services

A RESTful Approach to Identity-based Web Services A RESTful Approach to Identity-based Web Services Marc J. Hadley Hubert A. Le Van Gong Sun Microsystems, Inc. 1 Outline > Identity-based web services intro > RESTful ID-WSF > OAuth Extensions > Permissioned

More information

IBM Exam C Developing Enterprise Mobile Applications with IBM Worklight and IBM WebSphere Portal Version: 6.0 [ Total Questions: 122 ]

IBM Exam C Developing Enterprise Mobile Applications with IBM Worklight and IBM WebSphere Portal Version: 6.0 [ Total Questions: 122 ] s@lm@n IBM Exam C2040-404 Developing Enterprise Mobile Applications with IBM Worklight and IBM WebSphere Portal Version: 6.0 [ Total Questions: 122 ] Topic 1, Volume A Question No : 1 - (Topic 1) What

More information

Web & Automotive. Paris, April Dave Raggett

Web & Automotive. Paris, April Dave Raggett Web & Automotive Paris, April 2012 Dave Raggett 1 Aims To discuss potential for Web Apps in cars Identify what kinds of Web standards are needed Discuss plans for W3C Web & Automotive Workshop

More information

Simple Jabber - Divide And Conquer XMPP

Simple Jabber - Divide And Conquer XMPP Simple Jabber - Divide And Conquer XMPP Jan Klemkow 30.08.2015 Abstract The Extensible Messaging and Presence Protocol (XMPP) 1 is like the web. It is far too complex to be implemented in one program with

More information

High Volume Messaging with IBM MessageSight for use in Mobile, Web and M2M solutions

High Volume Messaging with IBM MessageSight for use in Mobile, Web and M2M solutions High Volume Messaging with IBM MessageSight for use in Mobile, Web and M2M solutions Dave Locke IBM Software Group Trademark Statement IBM and the IBM logo are trademarks of International Business Machines

More information

XEP-0412: XMPP Compliance Suites 2019

XEP-0412: XMPP Compliance Suites 2019 0412: XMPP Compliance Suites 2019 Jonas Schäfer mailto:jonas@wielicki.name xmpp:jonas@wielicki.name 2019-01-13 Version 0.4.0 Status Type Short Name Proposed Standards Track CS2019 This document defines

More information

Science-as-a-Service

Science-as-a-Service Science-as-a-Service The iplant Foundation Rion Dooley Edwin Skidmore Dan Stanzione Steve Terry Matthew Vaughn Outline Why, why, why! When duct tape isn t enough Building an API for the web Core services

More information

XEP-0295: JSON Encodings for XMPP

XEP-0295: JSON Encodings for XMPP XEP-0295: JSON Encodings for XMPP Kevin Smith mailto:kevin@kismith.co.uk xmpp:kevin@doomsong.co.uk Matthew Wild mailto:mwild1@gmail.com xmpp:me@matthewwild.co.uk 2011-04-01 Version 1.0 Status Type Short

More information

Measurement and evaluation: Web analytics and data mining. MGMT 230 Week 10

Measurement and evaluation: Web analytics and data mining. MGMT 230 Week 10 Measurement and evaluation: Web analytics and data mining MGMT 230 Week 10 After today s class you will be able to: Explain the types of information routinely gathered by web servers Understand how analytics

More information

MongooseIM - Messaging that Scales

MongooseIM - Messaging that Scales MongooseIM - Messaging that Scales Michał Ślaski What is MongooseIM? 2 What is MongooseIM? Instant messaging for Social Media, Gaming and Telecommunications 2 What is MongooseIM? Instant messaging for

More information

Cisco pxgrid: A New Architecture for Security Platform Integration

Cisco pxgrid: A New Architecture for Security Platform Integration Cisco pxgrid: A New Architecture for Security Platform Integration Brian Gonsalves Product Manager #clmel Agenda Cisco pxgrid in Summary pxgrid Use-Cases How to Develop Using pxgrid Getting Started Cisco

More information

JapanCert 専門 IT 認証試験問題集提供者

JapanCert 専門 IT 認証試験問題集提供者 JapanCert 専門 IT 認証試験問題集提供者 http://www.japancert.com 1 年で無料進級することに提供する Exam : LOT-404 Title : Developing Enterprise Mobile Applications with IBM Worklight and IBM WebSphere Portal Vendors : IBM Version

More information

Finesse APIs: Getting started with the REST APIs and XMPP events

Finesse APIs: Getting started with the REST APIs and XMPP events Finesse APIs: Getting started with the REST APIs and XMPP events Denise Kwan, Software Engineer @ DevNet Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1.

More information

Publishing Technology 101 A Journal Publishing Primer. Mike Hepp Director, Technology Strategy Dartmouth Journal Services

Publishing Technology 101 A Journal Publishing Primer. Mike Hepp Director, Technology Strategy Dartmouth Journal Services Publishing Technology 101 A Journal Publishing Primer Mike Hepp Director, Technology Strategy Dartmouth Journal Services mike.hepp@sheridan.com Publishing Technology 101 AGENDA 12 3 EVOLUTION OF PUBLISHING

More information

Social Networking. A video sharing community website. Executive Summary. About our Client. Business Situation

Social Networking. A video sharing community website. Executive Summary. About our Client. Business Situation Social Networking A video sharing community website. Executive Summary The client firm had a couple of social networking video sharing community websites that were hosted using a freely available open

More information

Mobile Internet Devices and the Cloud

Mobile Internet Devices and the Cloud Mobile Internet Devices and the Cloud What Is a Smartphone? Mobile Operating Systems for Smartphones 1. iphone 2. Google (Android) 3. Blackberry 4. Windows Mobile 5. Ubuntu Mobile Internet Device (MID)

More information

The Ultimate Digital Marketing Glossary (A-Z) what does it all mean? A-Z of Digital Marketing Translation

The Ultimate Digital Marketing Glossary (A-Z) what does it all mean? A-Z of Digital Marketing Translation The Ultimate Digital Marketing Glossary (A-Z) what does it all mean? In our experience, we find we can get over-excited when talking to clients or family or friends and sometimes we forget that not everyone

More information

Business value of Federated Login for Enterprises Enterprise SaaS vendors Consumer websites

Business value of Federated Login for Enterprises Enterprise SaaS vendors Consumer websites Business value of Federated Login for Enterprises Enterprise SaaS vendors Consumer websites Eric Sachs Product Manager, Google Security & CIO organization My Identity Enterprise Space 2008 - Cloud Computing

More information

CS371m - Mobile Computing. Persistence - Web Based Storage CHECK OUT g/sync-adapters/index.

CS371m - Mobile Computing. Persistence - Web Based Storage CHECK OUT   g/sync-adapters/index. CS371m - Mobile Computing Persistence - Web Based Storage CHECK OUT https://developer.android.com/trainin g/sync-adapters/index.html The Cloud. 2 Backend No clear definition of backend front end - user

More information

Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Copyright 2014, Oracle and/or its affiliates. All rights reserved. 1 Introduction to the Oracle Mobile Development Platform Dana Singleterry Product Management Oracle Development Tools Global Installed Base: PCs vs Mobile Devices 3 Mobile Enterprise Challenges In Pursuit

More information

Lightstreamer. The Streaming-Ajax Revolution. Product Insight

Lightstreamer. The Streaming-Ajax Revolution. Product Insight Lightstreamer The Streaming-Ajax Revolution Product Insight 1 Agenda Paradigms for the Real-Time Web (four models explained) Requirements for a Good Comet Solution Introduction to Lightstreamer Lightstreamer

More information

Adobe ColdFusion 11 Enterprise Edition

Adobe ColdFusion 11 Enterprise Edition Adobe ColdFusion 11 Enterprise Edition Version Comparison Adobe ColdFusion 11 Enterprise Edition Adobe ColdFusion 11 Enterprise Edition is an all-in-one application server that offers you a single platform

More information

INTERNET ENGINEERING. HTTP Protocol. Sadegh Aliakbary

INTERNET ENGINEERING. HTTP Protocol. Sadegh Aliakbary INTERNET ENGINEERING HTTP Protocol Sadegh Aliakbary Agenda HTTP Protocol HTTP Methods HTTP Request and Response State in HTTP Internet Engineering 2 HTTP HTTP Hyper-Text Transfer Protocol (HTTP) The fundamental

More information

Databases suck for Messaging

Databases suck for Messaging Databases suck for Messaging Alexis Richardson Oxford Geek Night May 2009 1 Computers were meant to get rid of this 2 A new kind of fail? 3 Solution - use a database? 4 Databases were meant to get rid

More information