Sonoma Partners Microsoft CRM and Salesforce Blog

Enough Chit-Chatter: Replacing Chatter Desktop

Today's blog post was written by Corey O'Brien, VP of Development at Sonoma Partners.

The Need for Change

Lately, Salesforce has put Chatter Desktop into maintenance mode.  The last few updates have only consisted of replacing old certificates – just enough to keep it running.  In addition, it is built on top of Adobe AIR, which has its own runtime that frequently prompts users to update it.

Defining Our Vision

With that in mind, several of us set out to build a new desktop client with the following high level goals:

  • Support for Windows and Mac
  • Modern and clean design
  • Add features missing from Chatter Desktop
    • Searching posts and comments
    • Indicate which posts are read/unread
    • Support for polls (both creating  and voting
    • Allow multiple feeds to be opened at once
  • Support configurable popup notifications
  • New versions should auto-install seamlessly
  • Does not need to be mobile friendly (Salesforce1 is a great mobile client)

Design wise we drew a lot of inspiration from TweetDeck, which allows multiple columns to be viewed at once, or it can be collapsed into a single column view.  Below is an example of the current working version.

image

Bringing the App To Life

We decided to build the app as a Chrome App, which would help solve the cross platform and auto-updating goals.  The app is written in JavaScript and uses React, Redux and several other frameworks.

One of the challenges we faced building the application was keeping the content up-to-date, without hitting the Chatter API usage limit.  This problem was more difficult as users added columns.  To address this, we first added code to detect when the user was idle (not using the mouse or keyboard).  During idle periods, we wouldn’t poll for changes.  In addition, we started only auto-polling the main News column (which is required), only when that feed had an update would we auto-update the other columns.  With these changes we have been able to poll every minute without running into usage limits.

Future Roadmap

With Google’s announcement to discontinue support for Chrome Apps on Windows and OS X, we’ve started to look at repackaging the app as an Electron app.  Most of the code should be portable, but it will require a server for simple installation and distribution.

There are also a lot of little features that haven’t made their way into the application yet, like editing and deleting posts, but due to the use of modern frameworks those are fairly trivial to add.

Final Thoughts

This has been a very rewarding journey so far as it has gotten us more exposure to the Chatter API and HTML/JavaScript desktop application development.  In addition, end users have been thrilled to have some fresh Chatter features back on their desktops and the reviews have been glowing.

Are you a Sonoma client and interested in trying it out?  Talk to your team about getting early access!

New Call-to-action

Topics: Salesforce