Vonajé 0.3
Vonajé is a simple Java API that gives you programmatic access your Vonage account information, including voicemails. 0.3 includes experimental support for the Canadian Vonage service. Vonajé’s primary use today is in Marty Lamb’s TiVonage - an extension for TiVo that makes it easy to check your Vonage voicemail through your TV.
Account information is scraped from the Vonage web site and made available through a few simple Java classes.
This version 0.3 adds:
- better support for the Canadian Vonage web site (localized dates are fixed)
- slightly more resilient handling of CallerID lookups that should eliminate some of the Null Pointer Exceptions you have been seeing.
Version 0.2 added:
- support for the Canadian Vonage web site at https://secure.vonage.ca/vonageca-web/ (thanks to Msan and azitnay on TiVo Community as well as Marty over at Martian Software for bringing this to my attention). By default, Vonaje will use the US Vonage site, but you can override this behavior by specifying a system variable on the Java command line. For example:
java -Dvonaje.country=ca
I am not entirely sure whether this will fix everything - it is all very dependent on whether or not the Canadian Vonage web site is structured in the same way as the US version.
I can add this functionality to the API as well if anybody is interested. If anybody knows of other international Vonage sites, let me know… I can add them.
Version 0.1 release included:
- placing calls with Click2Call
- retrieving usage information (minutes in plan used, minutes in plan remaining, etc)
- retrieving voicemail
- using Google Phonebook to lookup caller name and address on voicemail
- a lot of bugs
Requirements
- Java JDK 1.4 or later
- HTTPUnit 1.6 from Sourceforge
- A Vonage service account
Download
vonaje-0.3.zip (10,860 bytes) (MD5=d0b28c7f121d0bc63644107849ee0068)
Usage
Two classes you really need to know about:
- VonageAccount - represents your account, you need to give it your username and password
- VonagePhoneNumber - represents one of your Vonage phone numbers
Use the test classes and the following snippet to get started.
VonageAccount acct = new VonageAccount("username", "password");
VonagePhoneNumber number = new VonagePhoneNumber(acct, "15551234567");
int used = number.getInPlanMinutesUsed();
int remain = number.getInPlanMinutesRemaining();
number.setMessageCache("/home/cache");
ArrayList messages = number.getMessageList();
Source Code
vonaje-src-0.3.zip (140,676 bytes) (MD5=31c636677c12192e4281a30f5865a124)
License
This software is available under a BSD-style license. Feel free to use or modify it as you see fit. If you do make any improvements or interesting modifications, please email me a copy and I will investigate incorporating them into this distribution.
on May 23rd, 2007 at 12:52 pm
Looks great — I’m going to try to make an app like the tivo one for mythweb. Wish me luck!
-Dave