« Using Reputation to Combat Online Fraud | Main | Quad Core Upgrades for Apple »
Controlling Vonage from Your Desktop
This morning, while I was listening to Ajay Madhok on IT Conversations, I was thinking it would be cool if I could manage what number my Vonage number forwarded to using an API. Then I could use the presence information in my IM application to drive where that one number sent my calls. Sometimes I want them to ring through to the handset, sometimes I want them to go to my cell and often I want them to go straight to voicemail (I hate telephones).
Well, Vonage doesn’t have an API, but they do have a very cool RESTful service that allows you to initiate calls from your Vonage number to some other party. This means you can integrate the address book on your computer with your Vonage phone in some nice ways.
For example, I use the OSX Address Book application and this script allows me to simply click on the phone number in the Address Book to initiate a call. My phone rings and when I pick it up, it initiates the call to the number I want. Works great.
I made one change to the script. I added an else clause to the error checking code to pause iTunes if there are no errors:
--If there was an error, return a message.
if (characters 1 thru 3 of errorCode) as string != "000" then
display dialog "Error: " & errorCode buttons {"OK"}
else
tell application "iTunes"
if player state is playing then
pause
end if
end tell
end if
After all, as long as we’re automating things, we might as well be complete. Unfortunately there’s no way to know when the call ends, so you can’t unpause iTunes when it’s over. I can probably manage.
As an aside, I was a little put off by the URL for the service (click2callu.com) since I had to send it my Vonage account name and password. I wondered whether it was really Vonage or not. A quick check of the certificate shows that it’s owned by Vonage Holdings and issued by Verisign, so I’m willing to trust it.
As a second aside, this is a great illustration of the power of RESTful interfaces. If this service had been created with a SOAP service, no one would have written an AppleScript to tie it to Address Book.
Posted by windley on September 19, 2006 8:44 AM



Comment from Britt Blaser at September 19, 2006 10:25 AM
Check out the great buddypop:
Great UI for doing this
Comment from john teeter at September 20, 2006 10:04 AM
> a Vonage API in hopes of at least controlling
> where my phone was forwarded based on presence. ...
You might consider placing a lightweight astrisk system between you and your Vonage. (http://www.asterisk.org/) it's way overkill, but Clay has found it to be a useful way to integrate contexts into multi-targetable comm. streams
jt.
Comment from dan at September 21, 2006 9:27 AM
I tried it but it did not work. The URL would not accept my password and the email listed for help returned:
The following recipient(s) cannot be reached:
click2call@care.vonage.com on 9/21/2006 9:22 AM
The e-mail system was unable to deliver the message, but did not report a specific reason. Check the address and try again. If it still fails, contact your system administrator.
Comment from Phil Windley at September 21, 2006 9:31 AM
Make sure the password and user id you're using are the same ones that you use to log into your Vonage account. I messed it up the first time and got the same error.
Comment from Dean Collins at September 21, 2006 1:52 PM
Ah young Phil (I use that to sound older and wiser than I really am)....
It's time we had a discussion about www.Asterisk.org (btw didn't I send you this link a while ago www.Cognation.net/asterisk)
Routing your vonage number to your cell - how about having asterisk route your calls to the office when the Bluetooth module of asterisk works out you are in the office, or divert your calls to your home when the Bluetooth works out you are there or to your cell when it cant find you at either.
Or even better still how about it answers the call, asks the caller his or her name then places them on hold while it finds you, plays the audio file to you and then asks if you would like to take the call or send it to voicemail.
Got all that clear....ok then how about we step it up a notch.
For a paid service check out www.iotum.com
Iotum is an asp delivered call routing engine (a wtf!!!)
What this means is it routes the calls to you based on rules that you have set such as time of day, caller id, what your exchange client says you are doing at that point in time (eg in a meeting) etc etc.
Call me if the website doesn't explain it and I'll send you the details of my colleague Steve at Iotum.
Regards,
Dean Collins
Cognation Pty Ltd
dean@cognation.net
Leave a comment
I encourage you to leave a comment below. Your email address will not be displayed on Technometria, but allows me to communicate with you directly. Your email address won't be displayed, but will be used to compute a MicroID for your comment.