O'Reilly logo

Programming Social Applications by Jonathan LeBlanc

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Salmon Protocol

With services like PubSubHubbub, a publisher can ping a hub stating that a feed has changed. That hub would then fetch the updated content and aggregate it out to all hub subscribers. The Salmon protocol works on the upstream of this interaction. Let’s say a hub subscriber makes a new comment on an article that was published. With the Salmon protocol in place, that comment can be pushed back up to the publisher site. The publisher then adds the comment to its version of the article. Once the article is updated, the publisher pings the hub, which then fetches the new comment and pushes the update to all subscriber sites.

The main benefit here is that there is no longer only a one-way relationship between a publisher and subscribers. You build, in effect, a link between all publishers and all subscribers, unifying the social experience among many different sites.

How would this change OpenSocial?

Much like with PubSubHubbub, the real benefits for OpenSocial to integrate the Salmon protocol come from expanding the social network far beyond the bounds of the root container. Not only can you push out new content and updates from the social container, but you can now also accept new updates from some third-party source. Basically, you would be able to create a social networking ecosystem composed of the root social network and numerous third-party sites and services.

To integrate such a service, OpenSocial would need to define the ability to push content and activities out ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required