May 2010

"Electric communication will never be a substitute for the face."

Charles Dickens

Customer relationship management (CRM) software is used to manage and enhance a company's interactions with its customers. Typically, CRM software integrates well with other communication software, such as email, but includes little or no integration with telephone or video conferencing systems. For companies that interact frequently with their customers or internal teams by telephone or video, this greatly limits the usefulness of their CRM system. Ideally, a CRM system offers flexibility to allow communication with customers in a variety of ways and provides consistent reporting and logging of these interactions regardless of which form of communication was used. This allows for greater insight from interactions with customers and helps better understand how to meet customer needs.

This article describes our recent experiences as we set out to integrate communications services provided by Coral CEA into an open-source CRM system. Coral CEA is a platform that provides developers open application programming interfaces (APIs) to easily integrate powerful communication features into web applications. In our case, we were interested in enabling telephone, telephone conferencing, and video conferencing services within a CRM application.

However, the article is not just relevant to CRM users, since it illustrates how powerful communication services can be easily added to almost any existing web application. After reading this article, you will have a better understanding of the basics of CRM, how better communication improves the experience for both the company and the customer, and you will hopefully be encouraged to consider integrating powerful communication services into your own web applications.

Extending a CRM System

CRM software is typically used for marketing, sales, customer support and technical support. Within each of these uses, several mediums of communication are possible between the CRM user and the customer, including telephone and email. Most CRM systems have tight email integration, where email addresses are clickable links that automatically launch an internal email client. However, the telephone system is not as tightly integrated. In some cases, the company's PBX system is connected to the CRM so that calls can be recorded or incoming calls can display the customer information automatically.

Our goal was to create a communications enabled CRM with telephone integration that met or exceeded the standard level of email integration. To accomplish this goal, we needed to:

  • make calling customers as easy as clicking on a phone number

  • record all conversations with customers so that they can be listened to at a later date

  • transcribe all conversations to text using speech recognition

  • enable conference calling

However, there is more to communication than voice features. We decided to extend the communications capabilities of the CRM even further by integrating text, audio and video. For this, we took advantage of the open source web conferencing project BigBlueButton. BigBlueButton offers the following features for integration into the CRM:

  • text, audio and video communication over the web between the CRM user and customers

  • access from a web browser so that any machine can access the CRM

  • desktop sharing so that the customer or the company can share the view of their computer

  • slide presentations so that the CRM user can present to customers

Altogether, extending the CRM using these communications features gives us the following benefits:

  • reduced communication costs (by not having to pay for or manage PBX systems) and video communication servers

  • greater diversity of communications options for users

  • increased information and metrics captured within the CRM

  • superior communication experience

Selecting a CRM

There are many different open source and commercial CRM applications to choose from. The bulk of the market share is on the commercial side where companies such as SAP, Oracle, Salesforce, and Microsoft dominate the marketplace. There are also many open source CRMs which are usually differentiated by their programming language. Examples include:

We used an open source CRM because we needed a solution that we could customize easily. We selected vtiger over Sugar as its licensing was less restrictive and it provides sales, reporting and security modules that Sugar does not.

Communication Enabled CRM

With a goal of making telephone and video integration as tight inside the CRM as email, we found that open source CRMs include some form of PBX integration, usually provided by asterisk. They typically offer basic functionality such as creating single outgoing telephone sessions or popping up customer information when a call is received. Creating conference calls from within the CRM was not possible with the current implementations that we tested. Another important communication facet is text, audio and video conferencing but none of the open source CRM's we tried support these. These pain points led us to integrate direct calls, call conferencing, and video conferencing into the CRM through BigBlueButton.

In our implementation, the direct call is straight forward. All phone numbers are clickable links that create a telephone call to that customer. The conferencing call feature allows the CRM user to create a conference call with multiple customers simultaneously. The user clicks on the customers they wish to call, then the 'Conference Call' button and a conference call is created.

With BigBlueButton integration, the CRM can now start a video chat, show demos remotely using the desktop sharing feature, and provide slide shows to customers using presentation mode. These are powerful communication features that provide a higher level of interaction between the CRM user and their customers. BigBlueButton sessions can be created in the same way as conference calls and emails are created by checking the customers to contact and then clicking on the BigBlueButton button. Invitations with links are emailed to the selected customers that, when clicked, will load BigBlueButton. A popup on the CRM user's side will appear that is a clickable link to join the BigBlueButton conference.

The work that we have done is open source and the code is available for others to integrate the same communication enabled services into vtiger or port them to another CRM or another application entirely. To try out the communication services we integrated into the CRM, go to and use the login/password of osbr/osbr. You will need to add new customer contacts in order to test out the calling features as well as configure the user settings to use your telephone number. To configure your user settings, click on 'My Preferences' at the top right, then change the office number to use your telephone number. To add contacts that you wish to call, click on 'support|contacts' and then click on the +(create) button.

Some of the features that we wanted to add included saving the conversations in the form of audio files, converting those audio files to text with speech recognition, and then tagging that data to the customer account information inside the CRM. However, this was not possible because the Coral CEA infrastructure is not configured to save conversations and is based on a remote service that currently uses Nortel's commercial Agile Communication Environment. Once Coral CEA resolves this issue, adding these features will be incredibly valuable as it will allow the user to track telephone conversations as precisely as email. The more information that can be collected, the better a company can understand its customers.


We set out to integrate communications services into an open source CRM system. Our goal was to facilitate more forms of communication in an inexpensive way using Coral CEA's powerful communication services. While there are missing features to Coral CEA, such as saving audio files once a telephone call is finished, its communication service components add value to the CRM from improved customer relationships to reduced costs.

So far, our experience has taught us that at least the promise of value can be created by extending the existing features of CRM systems to include communication services. The next step is to validate our expectations of value by seeking input from our local business ecosystem. We expect there will be significant demand for a communications enabled CRM system, particularly with small companies that depend on the flexibility and reporting features that the system can provide. We hope to commercialize the work we have done by targeting a shortcoming in the open source CRM space.


Share this article:

Cite this article:

Rate This Content: 
No votes have been cast yet. Have your say!