Building SaaSy Voice, a test application for the Apps Marketplace

Wednesday, July 28, 2010 | 3:44 PM

Labels: , , ,

As we build out a new platform and APIs for developers, we find it helpful to create our own applications to try it out. It helps us validate and influence the design based on direct experience using the APIs. In the case of the Google Apps Marketplace, we needed a real application to integrate with Google Apps. We decided to build SaaSy Voice -- a web-application for handling the phone system for small and medium businesses. For the call features we used Twilio, a cloud based voice communications provider.

Why did we decide to build SaaSy Voice? Voice applications are fun and allowed us to experiment not only with our APIs, but with Twilio’s voice APIs. Learning new APIs and creatively mashing them up with Google technologies is one of the many reasons we love our jobs in Developer Relations.

The first step in launching our application on the Google Apps Marketplace was to build the core business logic. This was simple. We wanted to allow companies to buy a new phone number for their business, assign extensions to their employees, and allow for voicemail or call forwarding to existing numbers. We wanted simple management functionality for administrators to manage extensions and view call activity for their company. In just a few days we built the core application in PHP with a MySQL database and spiced up the design a bit by using free CSS templates.

The next, and very important step, for our application was to integrate with Google Apps. We started with single sign-on integration using OpenID. Allowing users to quickly access their voicemail using their existing Google Apps account is a great user experience and a common feature of apps in the Google Apps Marketplace. We used Janrain’s PHP OpenID library with the Google Apps discovery extensions to integrate OpenID very quickly.

Our integration with Google Apps wasn’t complete with just single sign-on though, as we were aware that many other integrations with Google Apps could improve application provisioning for administrators and day-to-day effectiveness for end-users.

Here was our initial list of most helpful integrations:

Make the signup process easier. Instead of manually entering employee information by hand or implementing a cumbersome bulk import process, the application simply connects to Google Apps and automatically retrieves the list of users in the domain. Administrators can easily choose which of their users to assign extensions to. (Provisioning API)

Integrate with a user’s existing contact data to allow employees to see who called them. Showing rich contact information inline with voice mails makes it easier to reply to messages by phone or e-mail. (Contacts API)

Export voicemail logs and analyze them in a form business users are comfortable with: the spreadsheet. The application automatically creates spreadsheets in Google Docs where logs can be easily filtered, sorted and visualized. (Documents List API)

Integrate voicemail activity into Gmail. Business users often spend much of their day in their e-mail inbox. Instead of requiring users to open a new window to review voicemails, the gadget integrates a simple list view of recent voicemails and allows them to play messages without leaving their e-mail. (Gmail Sidebar Gadgets)

Integrating with a business’ contacts, docs, e-mail and company directory makes the application much easier for both administrators and employees, saving valuable time. Of course, there are plenty of other ways to improve the efficiency of SaaSy Voice users that we have yet to develop.

To name a few:
  • E-mail voicemail messages to users as they arrive. Using Gmail Contextual Gadgets, we can embed a voicemail player right below the e-mail to allow a user to listen to their message right away.
  • Create a Gmail Contextual Gadget that gives a one-click option for calling the user who e-mailed you. When you click the ‘call’ button, the sender is called on their phone number stored in the user contacts and you’re connected immediately using your company phone number.
Since SaaSy Voice provisions a new phone number for each company using the service, it costs money. We don’t want to go poor when lots of anxious developers try it out and also don’t want to start a new business right now, so it’s not currently published in the Apps Marketplace. However, there’s an application similar to SaaSy Voice which recently launched in the Apps Marketplace. It’s called Ginza Phone and their developers have thought of a few other great Google Apps integrations like using the Google Calendar API to look up a user’s free/busy schedule to determine how to best route calls.

These are just a few of examples of how integration can improve the productivity of users, and the possibilities are endless. We’ve heard from customers and vendors alike that Google Apps users love integrated applications. We look forward to hearing about the great integrations you build -- let us know what you’re doing via Tweeting/Buzzing with #AppsIntegrations.

You can learn more about how we built SaaSy Voice, you may wish to watch our Google I/O session on Integrating your app with the Google Apps Marketplace.


ryansegovich said...

It’s interesting how Apple and Google have strayed away from their original product and are thriving. Is this a good long term survival model?


Anonymous said...

Vote it up on Hacker News!

Roman said...

Brilliant, thx for sharing this

Dissertation help said...

Extremely useful and informative article. I wish i can do all of that in a short period of time. But for sure doing those will produce results. I will try to spread your words through my blog and link it back to you. Thanks a lot for those tips.

Mani Maran said...

Really a very useful article in giving idea of how to solve the existing problem by integrating in to larger Applications. This helps me to think of out-of box. Thanks a lot..