August 23, 2010

Whats coming in Salesforce Chatter - Winter11 Release !

As a developer,  “Chatter” is something I love most, apart from other goodies like Sites etc given by force.com platform. So can’t resist my temptation to digg what’s next with Chatter in coming Winter’11 release. Regarding this I got good insights from

This post is brief of my guess work done from the above two pointers, regarding Winter’11 release for Chatter.

Winter’11 Chatter for Developers

New Visualforce Components

As indicated in blog post by Quinton, developers will get some cool visual force chatter components(“<chatter:……/>” ). I was thinking to develop some of these coming chatter components on my own, but they are not really straight forward to develop. This is because

  • The HTML/CSS/JS markup on top of which native chatter is running, is not that simple to create/hack/copy and convert to custom visualforce component.
  • Even if developed, we need to back chatter user actions with some Apex code like
    • Loading chatter feeds, this might go complex if you want to render all tracked changes and other updates correctly.
    • Creating new comments
    • Creating new posts.

Its really cool, that we don’t need to code or even think of this any more now, as with just one line of visualforce code below, we will get a chatter powerhouse embeded on the page.

<chatter:feedwithfollowers entityid="{!contact.id}" />

Even their are many other VF components and updates to existing VF components too like

  • <chatter:feeds> : Displays the Chatter feed on a record
  • <chatter:feedWithFollowers> : An integrated UI component that displays the Chatter feed on a record, as well as its list of followers.
  • <chatter:follow> : Renders a button for a user to follow and unfollow a Chatter record
  • <chatter:followers> : displays a list of Chatter followers for a record.
  • <apex:detail> : This component has been updated with a new “showChatter” attribute, which specifies whether the record should render as a Chatter record (display the show/hide bar etc) or not.
Idea - API Access to Profile Picture Version Parameter

This idea on idea-exchange is maturing to a feature in Winter’11 release. This idea is around a common mess created for developers if a user updates his profile photo. All versions of a user’s photo are maintained by salesforce and can be accessed by providing a version parameter to the profile image url, like v=1 as shown below

 <apex:image value="/userphoto?u={!userid}&v=1&s=T" height="{!height}" width="{!width}" title="{!name}" /> 

Here in the above url, parameter v=1 says “get me the version 1 of the photo”.  The things goes really dirty when a user uploads a new photo, now the version 1, that is usually the default image given by salesforce is no more valid. The native chatter interface picks the correct photo version, but interfaces rendered by visualforce code breaks and shows the old default image only. Even their is no API to know the latest version of a user photo.

So this idea heals all this, hopefully salesforce will give a UserInfo method to access the latest photo version. I guess the default behavior should be not to take any version in profile image URL and just get the latest. Its a very very rare requirement to get access to some older version of profile URL.

Winter’11 Chatter for Administrators (who are hopefully not coding :-D)

Their are a couple of cool ideas maturing to features like

  • Ability to package SObject history tracking fields: Currently one can enforce field history tracking support on an object, but there's no way for a application publisher to pick what fields are tracked. So it requires Admins to follow an install guide for a package and setup history tracking manually. So with maturing of this idea, this hassle is no more required.
  • Enable chatter feed tracking via package install : This idea is some what similar to the one above. Ability to package the feed tracking changes on Sobject’s fields, would again reduce manual intervention/effort by Admins after package installation.

 

Winter’11 Chatter for All

A few ideas make life easy for all i.e. developers, consultants and admins, like

  • Make Chatter Reportable : Having ability to report on Chatter activity can be super useful, specially for orgs where compliance and productivity are key measurables, there is a distinct need to be able to report on Chatter (by Feed, Object, profile, etc.).  This would allow us to maintain visibility into how the system is being used and provide documentation, whenever necessary, to regulatory bodies. 
  • Allow Chatter for Reports : Currently chatter is not available on reports, so any chats/discussions around a report are either in IMs, Emails etc. So having this ability will really make chatter useful, reports are really topic of debate and would be great if that debate can be done right on report via Chatter.