Integrating Gmail and Google Groups with the Pika CMS
A few weeks back the project team uploaded a complete version 4 code set to the LSNC Google API Project. This latest version is inclusive of four Google Apps core app integrations — Google Calendar, Google Docs, Gmail and Google Groups with the Pika CMS. This is the same project I described during my recent presentation at the 2012 TIG Conference in Albuquerque. As I noted there, we are spending the next few weeks doing expanded beta testing with users across varied positions and office locations within Legal Services of Northern California (LSNC). We expect to deploy all four integrations throughout the organization by the end of February.
In earlier posts I have described how the Google Calendar integration and Google Docs integration work. The short version is that, by exploiting the Google Apps APIs for Google Calendar and Google Docs, we have been able to implement a seamless synchronization between the Pika CMS calendar and document posting functions with Google Calendar and Google Docs. Pika CMS users need do nothing differently than what they are already doing to have tickler calendar events show up in their Google Calendars, or have case-related files uploaded to Pika show up in a case-specific shared collection in Google Docs.
The new Gmail integration in version 4 is arguably the most important of the four integrations. The basic user problem has been this: Everyone within LSNC — like most everyone else on professional planet Earth — day-in and day-out relies on email to accomplish their work. In our case, advocates regularly communicate with clients, co-counsel, opposing counsel, public and private individuals and entities and, of course, other LSNC staffers. But how are they to get those Gmail messages into case-related case notes in Pika? At the moment, what they do is cut-n-paste, again and again and again without end. The Gmail integration is designed to simplify that process so that users, from within a Gmail message or the entire conversation, can seamlessly post the content of Gmail messages to a client-specific case record automatically, without the need to open Pika.
To accomplish this, we have embedded a new Gmail widget that displays at the bottom of every Gmail message. Below is a screenshot of a developer version of the integration, with the gadget labeled as “TKLAPP Staging Pika – Attach to Case Notes.”
The default behavior of this gadget is to automatically copy the currently viewed Gmail message to the case notes in the selected client case record. To trigger that functionality, users toggle the gadget to display a dialog with a search option to locate any currently open client case record in Pika. Two tabs are available, one to search the user’s assigned active (open) cases and the other to search more broadly all cases active (open) throughout the organization. Once users select a case record, they have two check-box options: one to save any files attached to the Gmail message, which are automatically uploaded to the Pika case record and simultaneously synchronized to the user’s Google Docs account; the other to copy the entire Gmail conversation (Google’s name for an email message thread). Users can then simply click the “Attach to Case” button to seamlessly copy the Gmail message to the case record.
But wait… there’s more!
The gadget also offers an alternate input button allowing the user to “Edit and Attach to Case.” Clicking that button invokes a pop-up window with the Gmail message copied over to Google Docs for editing before the content is posted to Pika. The user can edit the single Gmail message or conversation as is their wont and then click on “Attach to Case” in the editing window to post the edited content to Pika. Done. Without ever having opened Pika.
The Google Groups integration works on the same premise as the Gmail integration, with the approach being to enable users to automatically copy a Groups discussion automatically to a Pika case record. The Groups solution is less elegant, however. Going into this project we made the mistaken assumption that, like the other Google Apps core applications, there was a Google API for Groups, but there is not. Google Groups has no exposed web API. So we did a workaround. The Google Groups integration with Pika requires the user add a custom bookmarklet to the browser bookmarks toolbar. Once that is set up, the user can go to a Business Groups discussion within our domain, click on the bookmarklet and trigger a set of dialogs directly analogous to how the Gmail integration works, with the ability to search for a specific client case record and then “attach” or “edit and attach” the content of the discussion message. (Google Groups no longer allows file attachments to discussion group messages, so there is no option to attach files.)
For those interested in this code set, you can anticipate there will be some minor updates to the code set over the next month or two as we fix quirks that emerge from our further beta testing. There is also an updated guide to installation coming soon.
Thanks again to everyone who attended the TIG presentation. It was encouraging to see how much interest there was within the larger legal services community in this project. My prediction is that within a few years we will all look back at this coding project as somewhat quaint, only a first step in many to come as we all increasingly rely on the Google Apps platform and work more with the Google API to take full advantage of it.





