I’ve recently been involved in evaluating Yammer integration capabilities with a SharePoint Intranet in place of a NewsGator/SharePoint couple that was already in use.
Admittedly, regarding the Social integration aspects, NewsGator is from far much better integrated with SharePoint than Yammer which is completely obvious since NewsGator was built from scracth on top of SharePoint while Yammer was (still is) a complete separate product. However, where Yammer shines more than NewsGator in my opinion is on the following aspects:
- 1) The fact that they offer a Cloud-based approach (and only that one), enabling therefore automatically an everywhere access with every device (thanks to the Yammer App)
- 2) A complete set of strong APIs and SDKs that enable integration with any other product and any technology. We’ll come back to that later
For number 1, whether you are a Cloud enthusiast or not, there is one thing you can’t deny is that Cloud based solutions offer an everywhere access which is more and more demanded in the BYOD era by both individuals and enterprises (whose workers are individuals…). More and more, Social is considered as an extended collaboration and the need to collaborate with external partners is also becoming a commodity. That’s where Yammer is interesting because the platform is already available for quite some years now and was built from scratch to tackle enterprise needs in that matter. Yammer’s API are basically the following:
- Open Graph that gives a way to surface activities in a Social context. This API is based on actors, actions and objects. An activity could be Person x ordered a product and you’d use some specific Open Graph tags to explain Yammer how to render this activity. It’s a way to interact with LOB activities
- REST APIs that basically enable CRUD operations on messages, groups, users, networks etc..;
- Yammer Embed that facilitates some integration scenarios with only a few lines of code
These APIs can be leveraged from within a Yammer App. When creating and registering a Yammer App, you can perform many kind of operations on behalf of that App. The App must be authorized by the end user to act on his behalf using OAuth. There is nothing special here, typical behaviour of Apps. However, it becomes especially interesting if you associate a given App to a Yammer Administrator account because when doing such, the App can start impersonating any other user belonging to the network.
Once you have received a Token from an admin account, you can start interacting with Yammer on behalf of anybody and the Token never expires. This means that you can start thinking of both synchronous & asynchronous usage scenarios.
For instance, in a SharePoint on-prem environment, you could have server-side event handlers that would post something to Yammer on behalf of the user who performed an action against a list, a document…You could also simply propose the user to submit information to Yammer using his own identity (no impersonation) in a synchronous manner via a custom action for instance. Well, thanks to that security model, many different scenarios can be envisioned.
In my next blog post, I’ll elaborate more on #GettingStarted related things such as building a first App and envision an integration scenario with SharePoint online. I’ll also shed some light on security aspects, especially when impersonating users.