# TiVonage



## Jeremiah230

http://www.martiansoftware.com/lab/#tivonage

This sounds really usefull, but how do i get it to work.

I got the source.zip thing, but i cant figure out how to install it, the readme says something about ant run, but i have no idea what that is

thanks for the help


----------



## ACraigL

What you want, I think, is the Jar file. If you use Galleon, there is a FAQ about using it to launch other apps/Jars.


----------



## Jeremiah230

what do i put in the launcher.txt file?


----------



## ACraigL

Haven't done it myself... though I will try in the near future... but I think it's already there. Check the various locations in the Galleon directory.


----------



## Jeremiah230

ACraigL said:


> Haven't done it myself... though I will try in the near future... but I think it's already there. Check the various locations in the Galleon directory.


yeah i know where it is but the FAQ says i have to add an entry for the new app in the launcher.txt file


----------



## DPF

Dammit, now I've got to go and try and get this to work. Will you people please stop writing very useful, very kool little HME apps!!!!  

If this works with Galleon, this would be uber-sweet. The wife can finally retrieve voicemails herself.

-DPF


----------



## javahmo

DPF said:


> Dammit, now I've got to go and try and get this to work. Will you people please stop writing very useful, very kool little HME apps!!!!
> 
> If this works with Galleon, this would be uber-sweet. The wife can finally retrieve voicemails herself.
> 
> -DPF


Third-party apps will only work in Galleon 1.2.0 or earlier. Galleon 1.3.0 and later uses a newer HME SDK which has not been released yet and is not compatible with those apps.


----------



## ACraigL

javahmo said:


> Third-party apps will only work in Galleon 1.2.0 or earlier. Galleon 1.3.0 and later uses a newer HME SDK which has not been released yet and is not compatible with those apps.


Oh.


----------



## DPF

My heart..... she is breaking


----------



## Jeremiah230

is there no other way


----------



## nigebj

javahmo said:


> Third-party apps will only work in Galleon 1.2.0 or earlier. Galleon 1.3.0 and later uses a newer HME SDK which has not been released yet and is not compatible with those apps.


Any idea on the time line for the later HME SDK ?
With 7.2 software requiring later versions of Galleon we're kind of getting ourselves boxed in here.


----------



## mgoblue2215

Try this, it's working for me (somewhat):

1. download ant from ant.apache.(org) 
2. unzip 
3. I moved the folder ..\apache-ant-1.6.5\ to C:\Program Files\apache-ant-1.6.5\
4. Open cmd window
5. Enter the following:

set ANT_HOME=c:\<ant directory> mine is C:\Program Files\apache-ant-1.6.5\
set JAVA_HOME=c:\<jdk directory> mine is C:\Program Files\j2sdk1.4.2_08
set PATH=%PATH%;%ANT_HOME%\bin

If you need jdk:
java.sun.(com)/j2se/1.4.2/

unzip source.zip for tivonage

if needed unzip lame and add location of lame.exe to PATH

i.e. set set PATH=%PATH%; C:\Program Files\lame

in cmd window cd to this directory

type ant

if build is succesful type ant run

A configuration dialog should appear asking for vonage login, password, phone number

Looking in the cmd window you should see something like Vonage Settings OK

On Tivo under Music, Photos you should see TiVonage Voice Mail

I tried a test message and it shows up on Tivo, succesfully downloads the wav but gets an error converting to mp3. If I convert it manually it works but at the wrong bitrate or something.

Also, Galleon is not installed on the PC Tivonage is installed on, but I have it installed on another PC.


----------



## Jeremiah230

mgoblue2215 said:


> Try this, it's working for me (somewhat):
> 
> 1. download ant from ant.apache.(org)
> 2. unzip
> 3. I moved the folder ..\apache-ant-1.6.5\ to C:\Program Files\apache-ant-1.6.5\
> 4. Open cmd window
> 5. Enter the following:
> 
> set ANT_HOME=c:\<ant directory> mine is C:\Program Files\apache-ant-1.6.5\
> set JAVA_HOME=c:\<jdk directory> mine is C:\Program Files\j2sdk1.4.2_08
> set PATH=%PATH%;%ANT_HOME%\bin
> 
> If you need jdk:
> java.sun.(com)/j2se/1.4.2/
> 
> unzip source.zip for tivonage
> 
> if needed unzip lame and add location of lame.exe to PATH
> 
> i.e. set set PATH=%PATH%; C:\Program Files\lame
> 
> in cmd window cd to this directory
> 
> type ant
> 
> if build is succesful type ant run
> 
> A configuration dialog should appear asking for vonage login, password, phone number
> 
> Looking in the cmd window you should see something like Vonage Settings OK
> 
> On Tivo under Music, Photos you should see TiVonage Voice Mail
> 
> I tried a test message and it shows up on Tivo, succesfully downloads the wav but gets an error converting to mp3. If I convert it manually it works but at the wrong bitrate or something.
> 
> Also, Galleon is not installed on the PC Tivonage is installed on, but I have it installed on another PC.


Thanks , but does it still work on the tivo with the converting problem


----------



## GadgetGeek

I played with this thing for a few hours...

Downloaded ANT.. tried to run it... failed...

Looked at the code from vonaje to try to see why it failed getting voice messages..


Bottom line: very crude and experimental.

If the author is going to continue to work on this and try to make it stable, great, because I think this is a great idea...

But I don't see any signs...

Too bad... 

It's like going to the game, but leaving after the 3rd qtr.


----------



## Jeremiah230

how did he get those screenshots if it doesnt work  

oh well


----------



## GadgetGeek

It's called "Sunny Path Code" which means limited (or no) error handling and it works only if the environment and everything else is in perfect alignment. The author got it to work on his machine, but no one else has been totally successful.

But the maybe good news is that I did a bit of digging and found out that the author is going to turn over the project to someone else who may carry it forward. 

In the world of open source projects there are no guarantees, but we can hope as it is a great idea. 

We also have to give the author credit for thinking of it, writing a prototype, and then realizing that he did not have the time to continue the project, found someone else he could turn it over to.

So we just may well see the 4th qtr after all and enjoy the game


----------



## martylamb

For some reason I can't post my response to this thread. I'm told it contains images or URLs (it contains neither). So I'm sorry to have to bore you with 5 empty posts before giving you the good stuff.  

- Marty


----------



## martylamb

Here's post number two.


----------



## martylamb

...and here's 3. Told you it would be boring.


----------



## martylamb

I guess I might as well edit my real post to include URLs though, now that I'll be able to.

4 down, 1 to go.


----------



## martylamb

Is this really an effective security feature?

My next post will be informative. I promise.


----------



## martylamb

Hello all,

I was checking out my server logs yesterday and saw quite a few hits (for me, anyway) coming from this thread to my TiVonage page. It was a pleasant surprise until I saw how much trouble the source distribution was causing you.



GadgetGeek said:


> It's called "Sunny Path Code" which means limited (or no) error handling and it works only if the environment and everything else is in perfect alignment.


That's a pretty accurate summary. On the whole, it works well for normal use on Linux (tested on FC3 and FC4) and Windows XP. Errors that are not handled gracefully are things like an interrupted download of the .WAV file from Vonage and other communication-type errors. And after reading this thread it seems there's at least one way to break the mp3 encoding.

But... it does work. Last night I put together a binary download with launch scripts for Windows and Linux. I can't say it's even close to bulletproof, but some quick testing on both platforms revealed no obvious problems.

To get it, follow the "Binary .zip" link at http://www.martiansoftware.com/lab/#tivonage .

The link is coralized (don't worry if you don't know what that means) so the download is gentle on my server.

GadgetGeek is also right that I'm transitioning the project to a new maintainer. Once he's fully up and running with it I'll update the web page to point to him.

If you're still interested in playing with this, by all means check it out. But please do so with the caveat that there are some rough edges like the ones described above. If you encounter any problems I don't seem to be aware of (check the README.txt in the download), please let me know by sending an email to tivonage at martiansoftware dot com. I'll be sure to forward them to the new maintainer.



GadgetGeek said:


> So we just may well see the 4th qtr after all and enjoy the game


Sorry for the long halftime!

Cheers,

Marty


----------



## DPF

Marty,

Thanks for jumping in and clearing things up a bit. It's nice to see such a proactive response to the situation. I, and I'm sure others, really appreciate it.

Even though I'm no programmer, I'm dying to give this a try. The potential this has for allowing me to stay couch-prone is too appealing to pass up. So, just so I'm clear I have a few questions before I try this when I get home tonight.

With the new binary package, do we still need to do the ANT setup as described in the earlier post from mgoblue or is that now contained in the install?

I realize this is, as was stated, "Sunny path code" and the odds of success for anyway are pretty slim, but what steps should I take to give me my best chance? Any input would would be great.

Much Appreciated.
-DPF


----------



## martylamb

DPF said:


> Thanks for jumping in and clearing things up a bit. It's nice to see such a proactive response to the situation. I, and I'm sure others, really appreciate it.


No problem - I'm happy to help out. 



DPF said:


> With the new binary package, do we still need to do the ANT setup as described in the earlier post from mgoblue or is that now contained in the install?


Nope. You'll still need to have a Java Runtime Environment installed, of course. If you don't know whether you have one, open a command prompt and type "java -version". If you get any reasonable output at all, you should be in good shape. Version 1.4 or higher is required, but it's been around for a long time. If you *dont'* have a JRE, you can download one from http://www.java.com.

If you can run other HME apps, you definitely have Java.

After that, you should be able to just unzip the download, go into the directory it creates, and type "run" (on Windows) or "./run.sh" (on Linux). The Linux execute permissions aren't preserved in the .zip file, so Linux users will have to type "chmod +x *.sh" after unzipping in order to run the scripts.



DPF said:


> I realize this is, as was stated, "Sunny path code" and the odds of success for anyway are pretty slim, but what steps should I take to give me my best chance? Any input would would be great.


Good question. But don't be too put off by the disclaimers - the odds aren't _that_ slim!

The first thing you should do is try logging in to Vonage over the web to make sure you know your username and password. TiVonage just connects to the Vonage website using exactly this interface behind the scenes, so if you can't login with your browser, TiVonage won't be able to connect.

It's also helpful to have at least one voice mail message so you can run all the way through the interface to playback. If message playback works, you're in good shape.

Note that during message playback you won't have random access to the message (that is, no "trick play", fast forward, or rewind). The only buttons that you can use to control playback at the moment are play, pause, and skip to end. Random access inside an mp3 is tricky stuff.

- Marty


----------



## GadgetGeek

I tried the binary, not sure what I expected, but got the same error as I got the last time I tried TiVonage...

Step 4 of 5 - Testing settings... uh-oh.

Unable to retrieve information from Vonage.
Stack trace follows:
java.lang.NullPointerException
at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(Unknown Source)
at tivonage.Config.showWizard(Config.java:163)
at tivonage.TiVonage.loadVonageProperties(TiVonage.java:61)
at tivonage.TiVonage.<clinit>(TiVonage.java:28)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.tivo.hme.sdk.Factory.setClassName(Factory.java:193)
at com.tivo.hme.sdk.Factory.createFactory(Factory.java:405)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:448)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:478)
at com.tivo.hme.sdk.Factory.main(Factory.java:577)

But I know that my login ID, password and phone number are correct.


----------



## DPF

Don't know what to tell you GadgetGeek, it worked just fine for me.

First Try. Beauty. Thanks.

-DPF


----------



## martylamb

GadgetGeek said:


> I tried the binary, not sure what I expected, but got the same error as I got the last time I tried TiVonage...
> 
> (snip)
> 
> But I know that my login ID, password and phone number are correct.


Is there anything unusual about your account? Multiple phone numbers, for example?

Perhaps a personal firewall is blocking the TiVonage app from connecting to Vonage?

- Marty


----------



## DPF

GadgetGeek,

Are you using Galleon and not running the TiVoServer by any chance?

Mine worked, but I know the TiVoServer was running. I meant to test it without that running, I assume it won't work since it's not compatible and not running inside Galleon.

I assume this isn't the problem, but it's the obvious ones that elude us sometimes.

It's more likely a firewall issue.

Hopefully, whoever this gets handed off to will be able to get their hands on the newer HME SDK and it can be moved to inside Galleon and I can dump the TiVoServer.

But it work great for me as is.

-DPF


----------



## martylamb

DPF said:


> Are you using Galleon and not running the TiVoServer by any chance?
> 
> Mine worked, but I know the TiVoServer was running. I meant to test it without that running, I assume it won't work since it's not compatible and not running inside Galleon.


Actually, the run scripts call the hme factory directly, so it *should* be all that you need.



DPF said:


> It's more likely a firewall issue.


The more I think about it, the more certain I am of this. GadgetGeek - please post back when you get a chance to check this out.



DPF said:


> Hopefully, whoever this gets handed off to will be able to get their hands on the newer HME SDK and it can be moved to inside Galleon and I can dump the TiVoServer.


Indeed. That's the main driver for my handing off this project, in fact. It _needs_ to be done, but I don't have the time.

- Marty


----------



## crnkovcm

I am running this in Windows XP, TivoServer 2.2.

I get the following after in enter user/pass/phone

C:\Documents and Settings\Cody\Desktop\tivonage-bin>dir
Volume in drive C has no label.
Volume Serial Number is 5C90-7B05

Directory of C:\Documents and Settings\Cody\Desktop\tivonage-bin

10/01/2005 02:26 PM .
10/01/2005 02:26 PM ..
09/28/2005 08:56 PM 621 config.bat
09/28/2005 08:47 PM  824 config.sh
05/01/2005 09:52 PM 614,943 lame-3.96.1.zip
07/29/2004 02:19 AM 202,240 lame.exe
07/29/2004 02:19 AM 175,104 lame_enc.dll
10/01/2005 02:26 PM lib
09/28/2005 09:06 PM 3,158 README.txt
09/28/2005 08:56 PM 902 run.bat
09/28/2005 08:44 PM 1,013 run.sh
05/01/2005 10:28 PM 309,813 tivonage.jar
9 File(s) 1,308,618 bytes
3 Dir(s) 8,102,871,040 bytes free

C:\Documents and Settings\Cody\Desktop\tivonage-bin>run

About to launch TiVonage.

If TiVonage won't launch because of a "BindException",
you will need to pass your computer's IP address to this
batch file using the -i parameter.

Example (if your computer's IP address is 192.168.1.100):

run -i 192.168.1.100

Use the windows 'ipconfig' command to determine your IP
address if you don't know what it is.

Press any key to continue . . .

TiVonage Configuration
(store in C:\Documents and Settings\Cody\.hme\TiVonage\tivonage.conf)

Step 4 of 5 - Testing settings...null
uh-oh.

Unable to retrieve information from Vonage.
Stack trace follows:
java.lang.NullPointerException
at com.mutchek.vonaje.Message.applyCallerID(Unknown Source)
at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(Unknown Source)
at tivonage.Config.showWizard(Config.java:163)
at tivonage.TiVonage.loadVonageProperties(TiVonage.java:61)
at tivonage.TiVonage.<clinit>(TiVonage.java:28)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.tivo.hme.sdk.Factory.setClassName(Factory.java:193)
at com.tivo.hme.sdk.Factory.createFactory(Factory.java:405)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:448)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:478)
at com.tivo.hme.sdk.Factory.main(Factory.java:577)

C:\Documents and Settings\Cody\Desktop\tivonage-bin>run -i 192.168.1.10

About to launch TiVonage.

If TiVonage won't launch because of a "BindException",
you will need to pass your computer's IP address to this
batch file using the -i parameter.

Example (if your computer's IP address is 192.168.1.100):

run -i 192.168.1.100

Use the windows 'ipconfig' command to determine your IP
address if you don't know what it is.

Press any key to continue . . .

TiVonage Configuration
(store in C:\Documents and Settings\Cody\.hme\TiVonage\tivonage.conf)

Step 4 of 5 - Testing settings...null
uh-oh.

Unable to retrieve information from Vonage.
Stack trace follows:
java.lang.NullPointerException
at com.mutchek.vonaje.Message.applyCallerID(Unknown Source)
at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(Unknown Source)
at tivonage.Config.showWizard(Config.java:163)
at tivonage.TiVonage.loadVonageProperties(TiVonage.java:61)
at tivonage.TiVonage.<clinit>(TiVonage.java:28)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.tivo.hme.sdk.Factory.setClassName(Factory.java:193)
at com.tivo.hme.sdk.Factory.createFactory(Factory.java:405)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:448)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:478)
at com.tivo.hme.sdk.Factory.main(Factory.java:577)
Terminate batch job (Y/N)? ^C

C:\Documents and Settings\Cody\Desktop\tivonage-bin>


----------



## Jeremiah230

great, it works perfectly, but how do i get it to start up with my computer and with out the cmd.exe screen showing


----------



## jubrand

It's working fine for me, except it didn't download the entire message when I played it on Tivo. Anyone else had that problem?

Also, just a question, how does the call back feature work? When I clicked it, my home phone started ringing with the caller ID showing the number that had left the message (I don't know who called, so I hung it up). Was it basically dialing that number and then waiting for me to pick up?


----------



## Jeremiah230

jubrand said:


> It's working fine for me, except it didn't download the entire message when I played it on Tivo. Anyone else had that problem?
> 
> Also, just a question, how does the call back feature work? When I clicked it, my home phone started ringing with the caller ID showing the number that had left the message (I don't know who called, so I hung it up). Was it basically dialing that number and then waiting for me to pick up?


yup, its the click to call thing. Just pick it up and itll connect


----------



## jubrand

That is awesome. Now anyone have the problem with not the whole message getting to the Tivo?


----------



## DPF

I have not run into that problem (yet?).

As for getting it going with startup, perhaps just dragging a link from run.bat to your startup folder or adding the line to your run list in the registry. Haven't done it, but it *should* work. No different than just double clicking the bat file, that fires up the cmd window.

I'd like to set itr up to run as a service upon boot so that I won't need to log in. Have to look into that.

-DPF


----------



## DPF

crnko...,

Try moving it to a different location. Having the spaces in the path may be killing you. Move it to C:\tivonage-bin\ and see if it works then.

-DPF


----------



## Msan

I am trying this and it's not working for me  
But I am with vonage canada.. so my url is www.vonage.ca instead of com. Is there a place I can change the url it's trying to connect to?


----------



## Logik

jubrand said:


> That is awesome. Now anyone have the problem with not the whole message getting to the Tivo?


Yup. I'm getting the same issue. It decodes the entire message, but when I play it back, it only plays like the first 12 seconds or so and then jumps to the end. It almost seems like it's only playing a preview of the sound file, since the volume almost seems to trail off, when it jumps, instead of just cutting off abruptly. *Very* cool app, though.

Man, talk about a great week... I'm off from work for the week, got a 120GB add-on drive that didn't work, but which I got working tonight, discovered Galleon for the first time, discovered that 7.2 enabled PC --> Tivo transfers, and stumbled upon TiVonage. My Name Is Merl.


----------



## martylamb

Msan said:


> I am trying this and it's not working for me
> But I am with vonage canada.. so my url is www.vonage.ca instead of com. Is there a place I can change the url it's trying to connect to?


Not currently. But I've sent a request to the developer of the Vonaje api that TiVonage uses to add some override functionality. I'll post back when I hear something.

Note that I have *no idea* whether that will be sufficient; the api just connects to the website like a browser and pulls information off the same web pages that you and I see when we log in. If the structure of those pages is significantly different on their Canadian server, compatibility would be a bigger problem.

Do you happen to know if the US and Canada sites are at least similar?

- Marty


----------



## martylamb

Logik said:


> Yup. I'm getting the same issue. It decodes the entire message, but when I play it back, it only plays like the first 12 seconds or so and then jumps to the end. It almost seems like it's only playing a preview of the sound file, since the volume almost seems to trail off, when it jumps, instead of just cutting off abruptly.


There's something you can look at that would help track this problem down. In your home directory, there should be a subdirectory called ".hme". Under that you will find "TiVonage", then "cache", then your phone number.

In that directory you should find both .WAV and .MP3 forms of your messages after they are downloaded. A little experimentation with a media player should help point to where the problem is (or isn't).

- Marty


----------



## jubrand

martylamb said:


> There's something you can look at that would help track this problem down. In your home directory, there should be a subdirectory called ".hme". Under that you will find "TiVonage", then "cache", then your phone number.
> 
> In that directory you should find both .WAV and .MP3 forms of your messages after they are downloaded. A little experimentation with a media player should help point to where the problem is (or isn't).
> 
> - Marty


I'll try to check it tonight and post what I find tomorrow.


----------



## Msan

martylamb said:


> Not currently. But I've sent a request to the developer of the Vonaje api that TiVonage uses to add some override functionality. I'll post back when I hear something.
> 
> Note that I have *no idea* whether that will be sufficient; the api just connects to the website like a browser and pulls information off the same web pages that you and I see when we log in. If the structure of those pages is significantly different on their Canadian server, compatibility would be a bigger problem.
> 
> Do you happen to know if the US and Canada sites are at least similar?
> 
> - Marty


I took a look at the java code and it seems the webpage structure seems to be the same except for canada it starts with https://secure.vonage.ca/vonageca-web/


----------



## azitnay

I don't have Vonage, and am thus pretty far removed from this discussion, but looking at the source code to Vonaje (vonaje-src-0.1.zip), file vonaje-src-0.1/src/java/prod/com/mutchek/vonaje/VonageAccount.java, class VonageAccount has a static member VONAGE_WEB hardcoded to https://secure.vonage.com. You guys could try changing that to https://secure.vonage.ca, recompiling, and seeing if it works.

Looks like there are also references to /vonage-web/ in four other static members (VONAGE_WEB_VOICEMAIL,VONAGE_WEB_DASHBOARD, VONAGE_WEB_BILLING, and VONAGE_WEB_ACTIVITY) that would most likely need to be changed to /vonageca-web/.

Drew


----------



## azitnay

Msan, I've attached a version of vonaje.jar that I compiled to use https://secure.vonage.ca/vonageca-web/. Drop it in place of the vonaje.jar you're currently using (in TiVonage's lib/ directory) and see if it works for you.

Since I don't even have a US Vonage account, let alone a Canadian one, the best I could do with this new JAR file was to ensure I still get "Login attempt denied" when trying an arbitrary username and password, which I do.

Hope it works. If so, I'm sure Marty can work with the developer of Vonaje to provide a cleaner solution.

Drew

Edit: Since the Vonaje maintainer came up with his own solution, I've removed my rogue JAR .


----------



## manielse

I wonder how hard it would be to get this to work with SunRocket instead. I still have not gone to an VoIP solution but it seems like I'd get more out of that service over Vonage. 

HOWEVER, getting my voicemail's on my TV via TiVO could make me lean back towards Vonage...


----------



## martylamb

azitnay said:


> Msan, I've attached a version of vonaje.jar that I compiled to use https://secure.vonage.ca/vonageca-web/.


That's pretty cool. 

I mentioned this problem to John (author of Vonaje), and he responded with a new jar as well:

www.martiansoftware.com/lab/tivonage/vonaje-0.2.jar

This same jar is also compatible with the US site. You will have to do three things to use it:

First, put it in your "lib" subdirectory where you installed TiVonage.

Second, edit your "run.bat" file so that the "vonaje.jar" classpath line now references "vonaje-0.2.jar" (you may also want to do this with config.bat).

Third (for Canadian users), edit the last line of your run.bat/config.bat files, and insert the argument "-Dvonaje.country=ca" after "java". Note that there is no space between the "D" and the "v". So your last line should look like:

java -Dvonaje.country=ca com.tivo.hme.sdk.Factory %* tivonage.TiVonage

If you DON'T do this last step, it will still default to U.S. settings. There's a property file inside the jar for the us and ca country codes; adding another country is as simple as adding a property file and specifying its country code on the command line. (Oh - and the Vonage website has to be laid out the same for each country!)

I have not tested this, but John ran it against the US site. If any of you Canucks can report your results back here, we'd both appreciate it.

- Marty


----------



## martylamb

crnkovcm said:


> I am running this in Windows XP, TivoServer 2.2.
> 
> I get the following after in enter user/pass/phone
> 
> [snip]
> Unable to retrieve information from Vonage.
> Stack trace follows:
> java.lang.NullPointerException
> at com.mutchek.vonaje.Message.applyCallerID(Unknown Source)
> at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(Unknown Source)
> at tivonage.Config.showWizard(Config.java:163)
> [snip]


I've forwarded this to the Vonaje maintainer, and he promised to look into it.

- Marty


----------



## azitnay

martylamb said:


> www.martiansoftware.com/lab/tivonage/vonaje-0.2.jar


Glad to hear the maintainer came up with his own solution... I'm surprised, though, that he went to the trouble before verifying Canada even works the same way .

I've edited my post to remove my rogue JAR attachment.

Drew


----------



## johnmutchek

Hi all, 

Thought I would poke my head in... I wrote the Vonaje jar that TiVonage uses under the covers. 

Glad to see some people playing with TiVonage - it's a very cool hme app. 

I had no idea that Vonage segmented its customer portal like that - I hope that the quick fix Marty posted for me last night helps... I poked at the Canadian site last night and, on the surface, it appears that it might use the same layout as the US site. I couldn't login with my US credentials though, so I didn't get very far. 

azitnay - Thanks for stepping up to the plate and offering a solution, nice to know that somebody other than myself could follow the code!  

Wasn't much trouble to support both the US and CA urls - so I just went ahead and did it... it can't hurt to introduce a bit of internationalization, even if it doesn't completely fix the issue. Let me know. 

John


----------



## johnmutchek

I don't know anything about SunRocket's service (having first heard of it in your post) but, ultimately, you need a couple of things...

- SunRocket would need to offer downloadable voicemail (some audio format conversion will probably be necessary)
- SunRocket would need to have an API for retrieving those messages or (as is the case for Vonage) at least a well-organized web site that could be reliably parsed for the data)

Features like "Return the call" rely upon Vonage's Click2Call API... not sure of SunRocket has an equivalent.

Not being a SunRocket customer, I don't see myself being able to tackle these questions... but if some developer (and SunRocket customer) was interested, it would be an interesting addition to TiVonage.


----------



## TiVoJimmy

martylamb said:


> Is there anything unusual about your account? Multiple phone numbers, for example?


I am very interested in this app but haven't tried it yet. I have two phone numbers with Vonage, does that pose a problem?


----------



## Logik

martylamb said:


> There's something you can look at that would help track this problem down. In your home directory, there should be a subdirectory called ".hme". Under that you will find "TiVonage", then "cache", then your phone number.
> 
> In that directory you should find both .WAV and .MP3 forms of your messages after they are downloaded. A little experimentation with a media player should help point to where the problem is (or isn't).
> 
> - Marty


Yeah. I was going to look at these, but thought the .hme folder would be under the folder Tivonage is running from. I found it, now. The entire WAV is there, but my previous assessment was incorrect. It looks like it only converted the first 12 seconds or so of the WAV. On the Tivo, it shows the entire length, but it looks like it's getting that number from the WAV? It looks like it may be a conversion issue with lame. Every converted MP3 is almost identical in file size (around 112K). Messages less than 12-14 seconds are ok, but if they run longer, they all seem to only convert to that length.

I'm not familiar at all with lame. I wonder if there's some parameter for file size or whatnot. I'm going to look around.

Thanks for the response.


----------



## jubrand

Logik said:


> Yeah. I was going to look at these, but thought the .hme folder would be under the folder Tivonage is running from. I found it, now. The entire WAV is there, but my previous assessment was incorrect. It looks like it only converted the first 12 seconds or so of the WAV. On the Tivo, it shows the entire length, but it looks like it's getting that number from the WAV? It looks like it may be a conversion issue with lame. Every converted MP3 is almost identical in file size (around 112K). Messages less than 12-14 seconds are ok, but if they run longer, they all seem to only convert to that length.
> 
> I'm not familiar at all with lame. I wonder if there's some parameter for file size or whatnot. I'm going to look around.
> 
> Thanks for the response.


I forgot to check mine last night, but I'm almost positive my problem is the same. From what I remember about the message I tested it with, it was 20 seconds long when I listened to it on the Vonage site through my computer. The Tivo actually had a 20 second bar on the bottom while it was playing it, but at about 12 seconds, it skipped to 20. Sounds identical to what you saw on yours.


----------



## Msan

azitnay said:


> Msan, I've attached a version of vonaje.jar that I compiled to use https://secure.vonage.ca/vonageca-web/. Drop it in place of the vonaje.jar you're currently using (in TiVonage's lib/ directory) and see if it works for you.
> 
> Since I don't even have a US Vonage account, let alone a Canadian one, the best I could do with this new JAR file was to ensure I still get "Login attempt denied" when trying an arbitrary username and password, which I do.
> 
> Hope it works. If so, I'm sure Marty can work with the developer of Vonaje to provide a cleaner solution.
> 
> Drew
> 
> Edit: Since the Vonaje maintainer came up with his own solution, I've removed my rogue JAR .


Thanks, I actually downloaded it before you removed it and it seems to work (I can log in and it tells me I don't have any voicemails) I'll have to create a voicemail and see what happens 

Thanks for the effort!


----------



## Msan

johnmutchek said:


> Hi all,
> 
> Thought I would poke my head in... I wrote the Vonaje jar that TiVonage uses under the covers.
> 
> Glad to see some people playing with TiVonage - it's a very cool hme app.
> 
> I had no idea that Vonage segmented its customer portal like that - I hope that the quick fix Marty posted for me last night helps... I poked at the Canadian site last night and, on the surface, it appears that it might use the same layout as the US site. I couldn't login with my US credentials though, so I didn't get very far.
> 
> azitnay - Thanks for stepping up to the plate and offering a solution, nice to know that somebody other than myself could follow the code!
> 
> Wasn't much trouble to support both the US and CA urls - so I just went ahead and did it... it can't hurt to introduce a bit of internationalization, even if it doesn't completely fix the issue. Let me know.
> 
> John


Thanks for the quick update, I'm sure to give it a try when I get home.


----------



## RedMan8

Newbie Question...

How do I install this on my TiVo?
I know there must be articles written about this already. Could someone point me to one of those?


----------



## azitnay

You don't actually install it on your TiVo... You install and run it on a computer, and then the TiVo can access it over the network.

In short, you need to download the binary ZIP file located on the page the first post of this thread links to. Extract it to your computer, and double-click run.bat to run it. You'll also need the Java JRE installed (but might already have it).

Dave Zatz has a pretty good HME FAQ:

http://www.zatznotfunny.com/hme.htm

Drew


----------



## RedMan8

Perfect... Thanks azitnay!


----------



## RedMan8

One more question... After reading the entire thread, I couldn't tell if it needs Galleon or not??

Do I need to download and install Galleon before TiVonage will work?

Thanks again!

-RedMan8


----------



## azitnay

No, this runs independently of Galleon.

Drew


----------



## darc87

Very cool App  but the 15 second recording bug is a pain  . Any word if this is going to be fixed?


----------



## martylamb

Logik said:


> The entire WAV is there, but my previous assessment was incorrect. It looks like it only converted the first 12 seconds or so of the WAV. On the Tivo, it shows the entire length, but it looks like it's getting that number from the WAV? It looks like it may be a conversion issue with lame. Every converted MP3 is almost identical in file size (around 112K). Messages less than 12-14 seconds are ok, but if they run longer, they all seem to only convert to that length.
> 
> I'm not familiar at all with lame. I wonder if there's some parameter for file size or whatnot. I'm going to look around.


Great info - thanks for digging into it.

You're exactly right about the message length reported by TiVonage - it's being read before any conversion to MP3. Theoretically, there should be no difference. In practice, it seems there's something going on with lame.

You can customize the command line parameters passed to lame by running the config.bat or by just editing ~\.hme\TiVonage\tivonage.conf. By default, the encoder command line is:

lame --resample 44.1 -h $1 $2

This is in the "encoder=" line in the configuration file, and is the last step of the configuration script. I found resampling to be necessary in order to avoid having your messages reported by chipmunks. The "-h" means higher quality. $1 is substituted by TiVonage with the .WAV file name, and $2 is substituted with the .MP3 file name.

Because TiVonage doesn't handle errors terribly well yet (as in "at all"), there could be some error output from lame that is being ignored. It's probably worth trying the above command manually on the files in your cache to see what happens.

Lame has a *huge* number of options. On my linux system, I can read the list of options using "lame --longhelp". If you're feeling experimental, you can try different command lines outside of TiVonage until you find one that works, then update the TiVonage config and you should be good to go.

I don't think this is simply a windows+lame issue, because I successfully listened to a 1:30 message from my wife's windows computer when testing the binary distribution.

I wish I could be more helpful, but I haven't seen this for myself so it's difficult to do more than make some hopefully intelligent guesses.

- Marty


----------



## Logik

Hmm. I'm at a loss... Running that exact parameter line in a command prompt gives me the full MP3 (264K), but every time I try it through Tivonage, I get the 112K file. I just made a 2 minute vmail for myself and the same thing (108K). Only thing is, I wasn't sure how to pass the file paths to lame, so I moved the WAV to the "tivonage-bin" folder (where I'm running Tivonage from and where lame is) and converted it there. I re-ran the config script, to no avail. I also perused the lame longhelp and couldn't find any parameters to directly affect file length/size (sampling quality obviously affects it indirectly).

The only other thing I noticed, watching the "cache" folder during the process is that the folder doesn't update with the WAV or MP3 file, until after the download has occurred and the conversion has started. Both files pop in, with the MP3 at a 0K size. Then, it updates with the ~112K.

That's the best I can come up with. I'm lost when it comes to code and scripting language. Wouldn't even know where to start. Heh. I would like to look at the script, to see what it actually looks like, once I've set the config parameters.

And, yeah, I saw your disclaimer about not logging errors, so you could hit the deadline. Heh. I'll bet there is something in there.

So, I don't know code and martylamb can't recreate the problem... Any savvy people out there have the best of both worlds?


----------



## martylamb

Logik said:


> Hmm. I'm at a loss... Running that exact parameter line in a command prompt gives me the full MP3 (264K), but every time I try it through Tivonage, I get the 112K file. I just made a 2 minute vmail for myself and the same thing (108K). Only thing is, I wasn't sure how to pass the file paths to lame, so I moved the WAV to the "tivonage-bin" folder (where I'm running Tivonage from and where lame is) and converted it there. I re-ran the config script, to no avail. I also perused the lame longhelp and couldn't find any parameters to directly affect file length/size (sampling quality obviously affects it indirectly).


This was very helpful - I might be on to something here. A couple of followup questions and I should know for sure:


How long did lame take to successfully encode the file from the command line (roughly)?
What are your CPU/memory specs?

- Marty


----------



## azitnay

Assuming anyone has a wave file they can reproduce this behavior on that they don't mind sharing, so that Marty can reproduce the problem on his end, that's probably the easiest way to get this problem fixed.

I have in the past had weird problems getting lame working correctly when launched from a separate process, so this problem isn't too unfamiliar to me.

Drew


----------



## Logik

Glad to be of service. This app is great and I *really* want it to work. 


> How long did lame take to successfully encode the file from the command line (roughly)?


 *FILE 1 - 39 Second Length, 562K WAV, 284K MP3*



Code:


Encoding as 44.1 kHz  64 kbps single-ch MPEG-1 Layer III (11x) qval=2
    Frame          |  CPU time/estim | REAL time/estim | play/CPU |    ETA
  1375/1377  (100%)|    0:01/    0:01|    0:01/    0:01|   31.480x|    0:00
average:  64.0 kbps

*FILE 2 - 1 Minute 35 Second Length, 1487K WAV, 747K MP3*



Code:


Encoding as 44.1 kHz  64 kbps single-ch MPEG-1 Layer III (11x) qval=2
    Frame          |  CPU time/estim | REAL time/estim | play/CPU |    ETA
  3641/3643  (100%)|    0:02/    0:02|    0:03/    0:03|   31.874x|    0:00
average:  64.0 kbps




> What are your CPU/memory specs?


Athlon 64 3200+ / 1G PC3200 (679M currently used/344M available).

azitnay, if it's trouble with lame handling a file it's being passed, shouldn't any WAV file work to test? It doesn't seem like the issue would be with the WAV itself, but rather the way lame is handling it. I could be utterly wrong, though.


----------



## martylamb

Hrm. That's pretty fast, and suggests that my suspicions were wrong.

I looked at the code and TiVonage will assume there's a problem with lame if it takes more than ten seconds to do the encoding. If this happens, it will ungracefully kill lame, which I thought might be responsible for truncated MP3s. But it's definitely not taking ten seconds on your supercomputer from the future. 

I'll keep poking around for an explanation, but Drew is right - if anyone can experiment with this themselves it would be tremendously helpful.

- Marty


----------



## Msan

Well, I tested it with an actual voicemail waiting now (running the modified version that azitnay did) and I get the following error:

3031ms: 192.168.234.111 handleHTTP: /tivonage/icon.png
3203ms: Registered http://192.168.234.10:4492/tivonage/
9265ms: 192.168.234.111 handleHTTP: /tivonage/
9281ms: 192.168.234.111 connect: http://192.168.234.10:4492/tivonage/
java.text.ParseException: Unparseable date: "5-Oct-2005 6:24 PM"
at java.text.DateFormat.parse(Unknown Source)
at com.mutchek.vonaje.Message.setCallTime(Message.java:279)
at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(VonagePhoneNumber.java:252)
at tivonage.MainMenuScreen.run(MainMenuScreen.java:229)
at java.lang.Thread.run(Unknown Source)
28328ms: 192.168.234.111 close: http://192.168.234.10:4492/tivonage/
Exception in thread "Timer-0" com.tivo.hme.sdk.HmeException: application closed
at com.tivo.hme.sdk.Application.writeCommand(Application.java:1280)

I didnt try the "real" version yet, but it should probably give me the same error as no other code was changed..

Any clues on this one? Is the canadian site using different dates?


----------



## azitnay

martylamb said:


> I'll keep poking around for an explanation, but Drew is right - if anyone can experiment with this themselves it would be tremendously helpful.


I'd be happy to help experiment, if only someone might be kind enough to send me a wave file they're having problems with .

Drew


----------



## azitnay

Msan said:


> Any clues on this one? Is the canadian site using different dates?


That does indeed appear to be the case... Vonaje expects the date to be in the format "MMM d, yyyy hh:mm a" (i.e. Oct 5, 2005 06:24 PM), and your date is in the format "d-MMM-yyyy h:mm a" (i.e. 5-Oct-2005 6:24 PM).

It'd be a trivial change to update the format in Vonaje's Message.java (and perhaps either abstract out the format into the language configuration files, or simply have the code try both), but I don't want to step on any toes in that regard... If you want me to recompile a version of vonaje.jar that uses the date format the Canadian site appears to use, I'd be happy to, but I wonder how many more inconsistencies we're going to see between the two sites. If we hit too many more, it's probably going to be impossible for anyone but a developer with access to a Canadian Vonage account to iron everything out.

Drew

Edit: Why not, I already had the code changed... I've attached a version of vonaje.jar with the date format changed.


----------



## Msan

azitnay said:


> Edit: Why not, I already had the code changed... I've attached a version of vonaje.jar with the date format changed.


Thanks, I'll give it a try once I'm back home and can test it properly


----------



## Msan

Ok, I installed the new canadian version and it works now, but I am also having the issue of it not playing back the full message.. It played 14 sec's of a 27 sec message  I checked the files on the pc and the .wav has the full message, but the .mp3 only has the 14 sec part..

I just encoded the .wav via the commandline and it took less then a second to convert the file..

EDIT:
I was just watching the cache dir while it was "converting" and noticed that the file was created and at 112k 1/4 through the converting process.. The filesize didnt change once the converting was done.


----------



## azitnay

Glad to hear my simple date format fix was all that was needed to get it up and running, at least... Hopefully John can abstract out the date format as well, to make a "real" version.

Logik offered to send me a sample message that he was having a problem with, but he's missing at the moment. If you'd like to send me a sample wave file that you're seeing the partial conversion on, I'd be happy to see if I can find a workaround (but please, please don't send me any personal voicemail that you want to remain private).

Drew


----------



## azitnay

Logik was nice enough to send me a couple of wave files... I attempted to reproduce the problem, but the only real obstacle I ever found was the 10000ms timeout (I was originally testing on a PII 400MHz Linux box, which takes 25 seconds to convert a minute-and-a-half wave into MP3 while resampling.

I wonder if the 10000ms timeout is really the only obstacle we're dealing with here... I realize Logik was getting nowhere near 10 seconds when converting on the command-line, but perhaps something in Java-land is slowing the process down? Doesn't make sense to me, but it might be a good idea to bump it up anyway... lame takes 5 seconds or so to convert a minute-and-a-half wave file on my relatively decent P4 2.8GHz machine here, so anything over three minutes and it would fail anyway.

I've created a new tivonage.jar with a 60000ms timeout. It also has some debug messages printed to the window after the lame conversion. It was too big to attach, but you can grab it from here:

*link removed, did not solve problem*

After a lame conversion, you should see either "lame conversion was successful" if lame claims it succeeded or "lame conversion failed with exitcode X" if lame claims it failed. The X might help us, who knows. After that, it'll print "output from lame:" and "errors from lame:". The stuff it prints after that could be useful for debugging purposes. Logik, drop the new jar in place (back up the old one, please), try running it, and paste the output here if possible.

Also, Marty, two things... I notice that when I run lame without resampling, it drops the amount of conversion time about five-fold. I see you mention above that it's needed to make it not sound like a chipmunk... Did the resultant MP3's sounds like chipmunks when played on your computer, or just when played through the TiVo? They sound fine to me on a computer, but I haven't tried through a TiVo.

Also, I see a note in your ProcessResult.java about a LOT of stderr output causing problems? lame does have some stderr output every time it runs, but no more than a few KB. I'm assuming that's not a "LOT", but I just wanted to make sure.

Drew


----------



## johnmutchek

Honestly, I am pleasantly surprised that the date was the only outstanding difference between the US and CA Vonage portals. Thanks (again) azitnay for providing the updated jar for msan to test. I will abstract out the date format into the country-specific settings in my codebase and release an update... I'll post a link here when it's ready. (I've got a lot going on this weekend, so it might be a couple of days)

Next step will be to update the TiVonage dist to include CA support.


----------



## martylamb

azitnay said:


> I've created a new tivonage.jar with a 60000ms timeout. It also has some debug messages printed to the window after the lame conversion.


Wow, you're a machine.  You can also use 0ms as a timeout, in which case it will take as long as it needs to.



azitnay said:


> Also, Marty, two things... I notice that when I run lame without resampling, it drops the amount of conversion time about five-fold. I see you mention above that it's needed to make it not sound like a chipmunk... Did the resultant MP3's sounds like chipmunks when played on your computer, or just when played through the TiVo? They sound fine to me on a computer, but I haven't tried through a TiVo.


That's exactly right. It was a TiVo-only phenomenon. There have been a couple of TiVo software updates since then, so it may no longer be an issue, but it was necessary in the spring when I first wrote this.



azitnay said:


> Also, I see a note in your ProcessResult.java about a LOT of stderr output causing problems? lame does have some stderr output every time it runs, but no more than a few KB. I'm assuming that's not a "LOT", but I just wanted to make sure.


Hrm. I hadn't thought about that, but it could indeed be an issue. The easiest fix here would be to add "--silent" or "--quiet" to the lame command line in tivonage.conf. At least, those options are available to me on Linux. "lame --help" from the command line (possibly "lame --longhelp") should show whether those options are available. Nice catch!

- Marty


----------



## Logik

BOOYAH!!

The --silent setting did it. I tried the tivonage.jar with the new timeout, but still had the truncated files. I then put the original tivonage.jar back in place and reran the config.bat, to add --silent to the run line ("lame --silent resample 44.1 -h $1 $2"). All voicemails are working, now, and the conversion is nearly instant. Suhweet!

At least now we know that lame was throwing an error...



Code:


lame converstion failed with exitcode 1
output from lame:
errors from lame: LAME version 3.96.1 (http://lame.sourceforge.net/)
CPU features: MMX (ASM used), 3DNow! (ASM used), SSE, SSE2
Resampling:  input 8 kHz  output 44.1 kHz
Using polyphase lowpass filter, transition band: 16538 Hz - 17071 Hz
Encoding C:\Documents and Settings\Logik\.hme\TiVonage\cache\14445551212\2005100
60137PM_14445558989.wav
      to C:\Documents and Settings\Logik\.hme\TiVonage\cache\14445551212\2005100
60137PM_14445558989.mp3
Encoding as 44.1 kHz  64 kbps single-ch MPEG-1 Layer III (11x) qval=2

95766ms: 192.168.16.100 handleHTTP: /tivonage/14445551212/200510060137PM_1444555
8989.mp3


----------



## azitnay

Wow, awesome... And to think that was one of the first things I noticed (the comment about a LOT of stderr output), but also what I thought was the least-likely culprit (since it was only a few KB).

Marty, you might still want to consider bumping up the process timeout (or eliminating it altogether), since people with slow computers will definitely have problems converting long voicemails otherwise.

Also, it might be worth a re-test to see if the resample is no longer necessary, since at least in my experience it creates a pretty large performance hit.

Drew


----------



## Jeremiah230

Logik said:


> BOOYAH!!
> 
> The --silent setting did it. I tried the tivonage.jar with the new timeout, but still had the truncated files. I then put the original tivonage.jar back in place and reran the config.bat, to add --silent to the run line ("lame --silent resample 44.1 -h $1 $2"). All voicemails are working, now, and the conversion is nearly instant. Suhweet!
> 
> At least now we know that lame was throwing an error...
> 
> 
> 
> Code:
> 
> 
> lame converstion failed with exitcode 1
> output from lame:
> errors from lame: LAME version 3.96.1 (http://lame.sourceforge.net/)
> CPU features: MMX (ASM used), 3DNow! (ASM used), SSE, SSE2
> Resampling:  input 8 kHz  output 44.1 kHz
> Using polyphase lowpass filter, transition band: 16538 Hz - 17071 Hz
> Encoding C:\Documents and Settings\Logik\.hme\TiVonage\cache\14445551212\2005100
> 60137PM_14445558989.wav
> to C:\Documents and Settings\Logik\.hme\TiVonage\cache\14445551212\2005100
> 60137PM_14445558989.mp3
> Encoding as 44.1 kHz  64 kbps single-ch MPEG-1 Layer III (11x) qval=2
> 
> 95766ms: 192.168.16.100 handleHTTP: /tivonage/14445551212/200510060137PM_1444555
> 8989.mp3


can you traslate that for us people who dont know computers


----------



## martylamb

Logik said:


> BOOYAH!!
> 
> The --silent setting did it.


Great!

It looks like the ongoing conversion status is sent to stderr rather than stdout (which makes sense, since lame can encode directly to stdout). This status includes a bunch of numbers, a bunch of backspaces, a bunch more numbers, etc... in order to provide the updating display. For a large file, all those backspaces and numbers would add up.

I agree that the conversion time limit should be increased. I'll see to it that that happens.

I'll also try it at home this evening without resampling.

Nice detective work, everyone!

- Marty


----------



## Logik

Jeremiah230 said:


> can you traslate that for us people who dont know computers


Sorry about that. Heh. Pulling back the technical reins a bit...

If you're having the problem with voicemails being cut short (it shows the full length on Tivo, but only plays about 12-15 seconds of the message and then jumps to the end), then the solution ends up being very simple:


Find "config.bat" in the "tivonage-bin" folder (where you unzipped the application to) and run it.
Go through the configuration prompts, as normal, until you get to the last one, which asks about what converter you're going to use and which already has a command line formatted for you - "lame --resample 44.1 -h $1 $2"
In that line, add "--silent" (that's 2 dashes) right after "lame" and before "--resample", so that it looks like this - "lame *--silent* --resample 44.1 -h $1 $2"
Hit "Ok"
Go to town 

You may need to restart Tivonage. That should about do it. Hope that makes more sense.


----------



## Msan

Yup, the --silent switch did the trick.. I didnt even download the new version with the increased timeout. 
One other thing I noticed that is different between the US and CA websites.. The CA one does not have the option to return a call.
I wonder if there are any plans to parse out some other info from the websites? i.e. Number of minutes used, last calls etc..


----------



## TiVoJimmy

TiVoJimmy said:


> I am very interested in this app but haven't tried it yet. I have *two phone numbers* with Vonage, does that pose a problem?


Bump. Anyone?


----------



## martylamb

TiVoJimmy said:


> Bump. Anyone?


Sorry this question got lost in the shuffle. Right now TiVonage can only handle one phone number... so if you run it you'll have to choose which one you'll use.

I'm going to bundle up a new distribution shortly to include all of the most recent changes. I might be able to throw in some experimental code so you can at least run two separate instances. I'll post in this thread if I'm able to pull this off.

- Marty


----------



## TiVoJimmy

martylamb said:


> Sorry this question got lost in the shuffle. Right now TiVonage can only handle one phone number... so if you run it you'll have to choose which one you'll use.
> 
> I'm going to bundle up a new distribution shortly to include all of the most recent changes. I might be able to throw in some experimental code so you can at least run two separate instances. I'll post in this thread if I'm able to pull this off.
> 
> - Marty


If it currently has the ability to run off of one of the two numbers, that works for me.


----------



## martylamb

TiVoJimmy said:


> If it currently has the ability to run off of one of the two numbers, that works for me.


It *should* work. I only have one number myself, and I know that John (Vonaje author) only has one as well. Let me know how it works out.

- Marty


----------



## jubrand

azitnay said:


> Logik was nice enough to send me a couple of wave files... I attempted to reproduce the problem, but the only real obstacle I ever found was the 10000ms timeout (I was originally testing on a PII 400MHz Linux box, which takes 25 seconds to convert a minute-and-a-half wave into MP3 while resampling.
> 
> I wonder if the 10000ms timeout is really the only obstacle we're dealing with here... I realize Logik was getting nowhere near 10 seconds when converting on the command-line, but perhaps something in Java-land is slowing the process down? Doesn't make sense to me, but it might be a good idea to bump it up anyway... lame takes 5 seconds or so to convert a minute-and-a-half wave file on my relatively decent P4 2.8GHz machine here, so anything over three minutes and it would fail anyway.
> 
> I've created a new tivonage.jar with a 60000ms timeout. It also has some debug messages printed to the window after the lame conversion. It was too big to attach, but you can grab it from here:
> 
> http://www.zitnay.com/stuff/tc/tivonage_60ms_debug.zip
> 
> After a lame conversion, you should see either "lame conversion was successful" if lame claims it succeeded or "lame conversion failed with exitcode X" if lame claims it failed. The X might help us, who knows. After that, it'll print "output from lame:" and "errors from lame:". The stuff it prints after that could be useful for debugging purposes. Logik, drop the new jar in place (back up the old one, please), try running it, and paste the output here if possible.
> 
> Also, Marty, two things... I notice that when I run lame without resampling, it drops the amount of conversion time about five-fold. I see you mention above that it's needed to make it not sound like a chipmunk... Did the resultant MP3's sounds like chipmunks when played on your computer, or just when played through the TiVo? They sound fine to me on a computer, but I haven't tried through a TiVo.
> 
> Also, I see a note in your ProcessResult.java about a LOT of stderr output causing problems? lame does have some stderr output every time it runs, but no more than a few KB. I'm assuming that's not a "LOT", but I just wanted to make sure.
> 
> Drew


I tried using this one to fix the cutting off messages problem, and now I'm getting the following error after I run config.bat (it was saying it couldn't connect to the server on the Tivo after I used the new jar. I know my username and password are correct, and I can log into Vonage thru Firefox:

Unable to retrieve information from Vonage
Stack trace follows:
jave.Lang.NullPointerexception
at com.mutchek.vonaje.message.ApplycallerID<Unknown Source>
at com.mutchek.vonaje.message.VonagePhoneNumber.getmessagelist<Unknown Source>
at tivonage.Config.ShowWizard(Config.java:163)
at tivonage.TiVonage.main(TiVonage.java:98)


----------



## azitnay

First, don't bother using the JAR I linked to... It didn't directly fix anything (I've now removed the link).

Your problem, however, doesn't appear to have anything to do with that. Looks like you're getting an NPE in Vonaje's Message.applyCallerID(). It appears that function makes a Google request to attempt to lookup a name and address from a phone number. It didn't specify exactly which line was NPE'ing, but I'd guess it's the line that uses the HTML result (I suppose it's probably NULL if the web request fails).

I'd try again to see if the request works this time, but I'd also recommend to the Vonaje author to shore up that function against potential NPE's a bit.

Drew


----------



## Nugent

I have a Series 2 DirecTiVo (HDVR2) and run JavaHMO. Will this application work for me?


----------



## jubrand

azitnay said:


> First, don't bother using the JAR I linked to... It didn't directly fix anything (I've now removed the link).
> 
> Your problem, however, doesn't appear to have anything to do with that. Looks like you're getting an NPE in Vonaje's Message.applyCallerID(). It appears that function makes a Google request to attempt to lookup a name and address from a phone number. It didn't specify exactly which line was NPE'ing, but I'd guess it's the line that uses the HTML result (I suppose it's probably NULL if the web request fails).
> 
> I'd try again to see if the request works this time, but I'd also recommend to the Vonaje author to shore up that function against potential NPE's a bit.
> 
> Drew


Thanks Drew. I got confused b/t your link and Logik's advice up a few messages. I'll just make the changes to the config like he says, and that should fix the message length problem. Maybe using the jar from the download website will work again, since i never had problems with that one in the past.


----------



## azitnay

Nugent said:


> I have a Series 2 DirecTiVo (HDVR2) and run JavaHMO. Will this application work for me?


No, this app makes use of HME, which DirecTiVos don't currently support (and probably never will).

Drew


----------



## Nugent

azitnay said:


> No, this app makes use of HME, which DirecTiVos don't currently support (and probably never will).
> 
> Drew


I should have mentioned that my HDVR2 is hacked with 4.0.1b


----------



## azitnay

Still, I know of no current hack that brings HME to DirecTiVos... I believe I've seen posts on DDB in the past that state probably the only way it'd ever happen is to get 7.x running on the unit, and I'm sure that opens up another can of worms.

My knowledge on the subject could be sorely out of date, of course, since I don't have any DirecTV units and thus don't follow their hacks very closely.

Drew


----------



## shack072

I was just thinking of it, it would be a cool feature to add if you can have a phone book. Then you an use click2call on the Tivo to call out on your phone.


----------



## jubrand

azitnay said:


> First, don't bother using the JAR I linked to... It didn't directly fix anything (I've now removed the link).
> 
> Your problem, however, doesn't appear to have anything to do with that. Looks like you're getting an NPE in Vonaje's Message.applyCallerID(). It appears that function makes a Google request to attempt to lookup a name and address from a phone number. It didn't specify exactly which line was NPE'ing, but I'd guess it's the line that uses the HTML result (I suppose it's probably NULL if the web request fails).
> 
> I'd try again to see if the request works this time, but I'd also recommend to the Vonaje author to shore up that function against potential NPE's a bit.
> 
> Drew


Any ideas about a temporary fix for it? I've tried it multiple times now and I keep getting the same error.

In fact, I'd like to completely remove Tivonage and start fresh so I can use Logik's fix with the timeout, but I can't seem to get it to completely delete. If I delete the unzipped Tivonage folder, and then unzip a new one, it never goes through the steps in the config.bat that ask me what converter I'm using, so I never get the chance to add the lame --resample 44.1 -h $1 $2 command line. 

EDIT: Found where it was hiding....in the .hme directory in documents and settings. But, still getting the same errors as before when setting it up, so I never get to the conversion step. Don't know what went wrong, it was working before. Could using Firefox have something to do with it? I just switched to it from IE.


----------



## azitnay

What errors are you getting? Is this still the null pointer exception in ApplycallerID()?

If so, I can certainly build you a new vonaje.jar with the problem fixed, but I feel kinda bad about continuing to do so behind the author's back .

Drew


----------



## jubrand

azitnay said:


> What errors are you getting? Is this still the null pointer exception in ApplycallerID()?
> 
> If so, I can certainly build you a new vonaje.jar with the problem fixed, but I feel kinda bad about continuing to do so behind the author's back .
> 
> Drew


Yea, still the same error. Even with a full uninstall and reinstall.


----------



## azitnay

On second thought, I'd rather not recompile any more rogue JAR's .

I've sent a note off to John about your NPE, so hopefully he'll fix it.

Drew


----------



## jubrand

azitnay said:


> On second thought, I'd rather not recompile any more rogue JAR's .
> 
> I've sent a note off to John about your NPE, so hopefully he'll fix it.
> 
> Drew


Understood! Thanks for sending that along though. :up:


----------



## BrianEWilliams

Msan said:


> Yup, the --silent switch did the trick.. I didnt even download the new version with the increased timeout.


Setup up TiVonage for the first time and used the --silent option. Long messages get truncated anyway. The computer is a XP Pro with a P3 450 mhz, so maybe it's an issue with my lame computer and not a lame issue.

I used the download link from the official website, and my MP3 files get truncated to about 305k.

Proof of concept worked though. Nice app. Hope it gets polished a bit sometime soon, but thanks in any case. Very interesting thread.


----------



## azitnay

If Marty hasn't yet included the change to not timeout the MP3 encoding step after 10 seconds, I'd imagine that's your problem. The PII 400 Linux box I was testing on took 10 seconds on just a 30-second message, I believe.

Drew


----------



## BrianEWilliams

azitnay said:


> If Marty hasn't yet included the change to not timeout the MP3 encoding step after 10 seconds, I'd imagine that's your problem. The PII 400 Linux box I was testing on took 10 seconds on just a 30-second message, I believe.
> Drew


You are probably right on that one. Any interest in reposting the timeout fix you did on this issue? Not sure why an open source author would mind, but I am a couple decades away from when I last coded (in Fortran!) and know little about open source etiquette.

If posting the fix is a problem, how hard is it for someone to implement the fix themselves?

Thanks again for your work on this thread.


----------



## azitnay

As I said in a recent post, I'd rather stop posting JAR's packaged up by me, since I think it just creates confusion on which JAR to use. Better to simply allow the authors to update their software.

That being said, if you're comfortable downloading the Java source and compiling / packaging it up yourself (TiVonage makes it pretty easy if you have ant installed), you don't really need to know Java to fix your particular problem... It's just a matter of changing a 10000 to a 0 in one line of code.

Drew


----------



## martylamb

Sorry for the delay, everyone. It's been quite a busy week. I should be able to post an updated version by the end of the weekend.

Just didn't want to keep you in the dark.

- Marty


----------



## crnkovcm

DPF said:


> crnko...,
> 
> Try moving it to a different location. Having the spaces in the path may be killing you. Move it to C:\tivonage-bin\ and see if it works then.
> 
> -DPF


Unfortunately, still no dice. Still getting the same error:

************OUTPUT**************

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\User>cd c:\tivonage-bin

C:\tivonage-bin>dir
Volume in drive C has no label.
Volume Serial Number is 5C90-7B05

Directory of C:\tivonage-bin

10/16/2005 06:32 PM .
10/16/2005 06:32 PM ..
10/16/2005 06:32 PM 621 config.bat
10/16/2005 06:32 PM 824 config.sh
10/16/2005 06:32 PM 614,943 lame-3.96.1.zip
10/16/2005 06:32 PM 202,240 lame.exe
10/16/2005 06:32 PM 175,104 lame_enc.dll
10/16/2005 06:27 PM lib
10/16/2005 06:32 PM 3,158 README.txt
10/16/2005 06:32 PM 902 run.bat
10/16/2005 06:32 PM 1,013 run.sh
10/16/2005 06:32 PM tivonage-bin
10/16/2005 06:32 PM 309,813 tivonage.jar
9 File(s) 1,308,618 bytes
4 Dir(s) 49,373,409,280 bytes free

C:\tivonage-bin>run.bat

About to launch TiVonage.

If TiVonage won't launch because of a "BindException",
you will need to pass your computer's IP address to this
batch file using the -i parameter.

Example (if your computer's IP address is 192.168.1.100):

run -i 192.168.1.100

Use the windows 'ipconfig' command to determine your IP
address if you don't know what it is.

Press any key to continue . . .

TiVonage Configuration
(store in C:\Documents and Settings\User\.hme\TiVonage\tivonage.conf)

Step 4 of 5 - Testing settings...null
uh-oh.

Unable to retrieve information from Vonage.
Stack trace follows:
java.lang.NullPointerException
at com.mutchek.vonaje.Message.applyCallerID(Unknown Source)
at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(Unknown Source)
at tivonage.Config.showWizard(Config.java:163)
at tivonage.TiVonage.loadVonageProperties(TiVonage.java:61)
at tivonage.TiVonage.<clinit>(TiVonage.java:28)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.tivo.hme.sdk.Factory.setClassName(Factory.java:193)
at com.tivo.hme.sdk.Factory.createFactory(Factory.java:405)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:448)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:478)
at com.tivo.hme.sdk.Factory.main(Factory.java:577)
Terminate batch job (Y/N)? y

C:\tivonage-bin>


----------



## johnmutchek

Hi all,

I (finally) updated the vonaje jar to include a couple of minor fixes that you have been waiting for...

1. support for different date format on the Canadian vonage portal
2. rudimentary fix to the applyCallerID issue... you shouldn't get the error anymore, but you won't get caller id info for that message either. If somebody can provide a specific phone number on which you've seen the call fail, I can debug further and try to get it working.

I shipped the updated jar to marty for inclusion in the next dist of TiVonage. You can get a copy of 0.3 directly here: -- OK. no links for newbies, huh? Well, you can download the jar from my web site. You can see that in my profile, right? If not, Google "vonaje" and it will be the first hit. I think you will have to rename the vonaje-0.3.jar to vonaje.jar and drop it into your TiVonage install (but don't quote me on that as I don't have the dist in front of me).

I'll keep checking this thread for questions. Let me know if there are any outstanding issues that I've missed. Thanks for being patient with me.

John


----------



## jubrand

johnmutchek said:


> Hi all,
> 
> I (finally) updated the vonaje jar to include a couple of minor fixes that you have been waiting for...
> 
> 1. support for different date format on the Canadian vonage portal
> 2. rudimentary fix to the applyCallerID issue... you shouldn't get the error anymore, but you won't get caller id info for that message either. If somebody can provide a specific phone number on which you've seen the call fail, I can debug further and try to get it working.
> 
> I shipped the updated jar to marty for inclusion in the next dist of TiVonage. You can get a copy of 0.3 directly here: -- OK. no links for newbies, huh? Well, you can download the jar from my web site. You can see that in my profile, right? If not, Google "vonaje" and it will be the first hit. I think you will have to rename the vonaje-0.3.jar to vonaje.jar and drop it into your TiVonage install (but don't quote me on that as I don't have the dist in front of me).
> 
> I'll keep checking this thread for questions. Let me know if there are any outstanding issues that I've missed. Thanks for being patient with me.
> 
> John


I'm getting further during the setup now, but i still get the applycaller ID error. Now it's actually listing the 7 messages in my inbox, as well as listing the phone numbers in the DOS window during setup.

Ah, it was only listing the first 4 messages but saying i had 7 in the DOS window, so I logged into Vonage. Lo and behold, the 5th message was from an "unknown number" and that's what was throwing the exception. I deleted that message, and setup was smooth. It's working now. So I guess the next fix needed is to stop that from happening. :up: :up: :up:


----------



## GadgetGeek

Hi John,

I rebuilt TiVonage using your new jar file. Same result as before:

[java] Step 4 of 5 - Testing settings... uh-oh.

[java] Unable to retrieve information from Vonage.
[java] Stack trace follows:
[java] java.lang.NullPointerException
[java] at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(Unknown
ource)
[java] at tivonage.Config.showWizard(Config.java:163)
[java] at tivonage.TiVonage.loadVonageProperties(TiVonage.java:61)
[java] at tivonage.TiVonage.<clinit>(TiVonage.java:28)
[java] at java.lang.Class.forName0(Native Method)
[java] at java.lang.Class.forName(Class.java:141)
[java] at com.tivo.hme.sdk.Factory.setClassName(Factory.java:193)
[java] at com.tivo.hme.sdk.Factory.createFactory(Factory.java:405)
[java] at com.tivo.hme.sdk.Factory.startFactory(Factory.java:448)
[java] at com.tivo.hme.sdk.Factory.startFactory(Factory.java:478)
[java] at com.tivo.hme.sdk.Factory.main(Factory.java:577)

Do you have any clue as to what the problem may be?

I can log into Vonage from IE with no problems and I have double checked the log in and telephone number info.

Thanks!


----------



## crnkovcm

johnmutchek said:


> Hi all,
> 
> I (finally) updated the vonaje jar to include a couple of minor fixes that you have been waiting for...
> 
> 1. support for different date format on the Canadian vonage portal
> 2. rudimentary fix to the applyCallerID issue... you shouldn't get the error anymore, but you won't get caller id info for that message either. If somebody can provide a specific phone number on which you've seen the call fail, I can debug further and try to get it working.
> 
> I shipped the updated jar to marty for inclusion in the next dist of TiVonage. You can get a copy of 0.3 directly here: -- OK. no links for newbies, huh? Well, you can download the jar from my web site. You can see that in my profile, right? If not, Google "vonaje" and it will be the first hit. I think you will have to rename the vonaje-0.3.jar to vonaje.jar and drop it into your TiVonage install (but don't quote me on that as I don't have the dist in front of me).
> 
> I'll keep checking this thread for questions. Let me know if there are any outstanding issues that I've missed. Thanks for being patient with me.
> 
> John


Closer...I have two "Unknown Numbers" in my vmail inbox.

Here is my output...

C:\Program Files\TiVo\HME\tivonage-bin>run.bat

About to launch TiVonage.

If TiVonage won't launch because of a "BindException",
you will need to pass your computer's IP address to this
batch file using the -i parameter.

Example (if your computer's IP address is 192.168.1.100):

run -i 192.168.1.100

Use the windows 'ipconfig' command to determine your IP
address if you don't know what it is.

Press any key to continue . . .

TiVonage Configuration
(store in C:\Documents and Settings\user\.hme\TiVonage\tivonage.conf)

Step 4 of 5 - Testing settings... uh-oh.

Unable to retrieve information from Vonage.
Stack trace follows:
java.lang.NullPointerException
at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(Unknown Source)
 at tivonage.Config.showWizard(Config.java:163)
at tivonage.TiVonage.loadVonageProperties(TiVonage.java:61)
at tivonage.TiVonage.<clinit>(TiVonage.java:28)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.tivo.hme.sdk.Factory.setClassName(Factory.java:193)
at com.tivo.hme.sdk.Factory.createFactory(Factory.java:405)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:448)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:478)
at com.tivo.hme.sdk.Factory.main(Factory.java:577)
Terminate batch job (Y/N)?


----------



## johnmutchek

OK, I think I understand the problem now... I'll do some testing tomorrow and release a new version shortly.


----------



## yaturner

I checked your website and downloaded version 0.3 and made the changes you suggested but I am still getting the NullPointer exception, does 0.3 have the fix in it?


----------



## yaturner

OK, I got this working now, the main thing you need to fix is in VonageAccount.java, change the the method from

public String getVonageWebVoicemail() {
return vonage_web + vonage_web_action + "features/voicemail/messages/view.htm";
}


to

public String getVonageWebVoicemail() {
return vonage_web + vonage_web_action + "features/voicemail/messages/view.htm?did=" + this.accountNumber);
}


this will solve the NullPointer problem, however I have run into another problem, if the caller does not have callerID, then Vonage registers the caller's number as "unknown sender", this is of course an InvalidPhoneNumber and breaks the code all over the place. I am not quite sure what the correct action should be in this case, any ideas??


----------



## TiVoJimmy

I'm getting the following trying to login:

TiVonage Configuration 
(store in C:\Documents and Settings\New Desktop\.hme\TiVonage\tivonage.conf)

Step 4 of 5 - Testing settings... uh-oh.

Unable to retrieve information from Vonage. 
Stack trace follows: 
java.lang.NullPointerException 
at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(Unknown Source) 
at tivonage.Config.showWizard(Config.java:163) 
at tivonage.TiVonage.loadVonageProperties(TiVonage.java:61) 
at tivonage.TiVonage.<clinit>(TiVonage.java:28) 
at java.lang.Class.forName0(Native Method) 
at java.lang.Class.forName(Unknown Source) 
at com.tivo.hme.sdk.Factory.setClassName(Factory.java:193) 
at com.tivo.hme.sdk.Factory.createFactory(Factory.java:405) 
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:448) 
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:478) 
at com.tivo.hme.sdk.Factory.main(Factory.java:577)

The Java dialog box returns to step 1 of 5. I do have two phone numbers and have tried both. Never sucessfully login.

Any ideas?

Jim


----------



## GadgetGeek

TiVoJimmy said:


> I'm getting the following trying to login:
> 
> TiVonage Configuration
> (store in C:\Documents and Settings\New Desktop\.hme\TiVonage\tivonage.conf)
> 
> Step 4 of 5 - Testing settings... uh-oh.
> 
> Unable to retrieve information from Vonage.
> Stack trace follows:
> java.lang.NullPointerException
> at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(Unknown Source)
> at tivonage.Config.showWizard(Config.java:163)
> at tivonage.TiVonage.loadVonageProperties(TiVonage.java:61)
> at tivonage.TiVonage.<clinit>(TiVonage.java:28)
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Unknown Source)
> at com.tivo.hme.sdk.Factory.setClassName(Factory.java:193)
> at com.tivo.hme.sdk.Factory.createFactory(Factory.java:405)
> at com.tivo.hme.sdk.Factory.startFactory(Factory.java:448)
> at com.tivo.hme.sdk.Factory.startFactory(Factory.java:478)
> at com.tivo.hme.sdk.Factory.main(Factory.java:577)
> 
> The Java dialog box returns to step 1 of 5. I do have two phone numbers and have tried both. Never sucessfully login.
> 
> Any ideas?
> 
> Jim


Wecome to the club! It's a common problem.


----------



## yaturner

Have you actually logged into vonage to see if you have any voice mail?


----------



## TiVoJimmy

yaturner said:


> Have you actually logged into vonage to see if you have any voice mail?


Yep, I have voicemail.

Jim


----------



## yaturner

Did you make the change I posted? this should fix the NullPointer problem


----------



## TiVoJimmy

> the main thing you need to fix is in VonageAccount.java


I can't find the file you say to change. I did a complete search of my C:\ drive. Also the folder: C:\Documents and Settings\.....\.hme\TiVonage is empty.

Jim


----------



## yaturner

yaturner said:


> Did you make the change I posted? this should fix the NullPointer problem


sorry it seems that my fix will not work as posted, you can however hand code your phone number into the string (e.g. ?did=14085551212) and that will work until I sort this out


----------



## yaturner

TiVoJimmy said:


> I can't find the file you say to change. I did a complete search of my C:\ drive. Also the folder: C:\Documents and Settings\.....\.hme\TiVonage is empty.
> 
> Jim


you need the source distribution of vonaje and the java compiler etc. to build it. If you don't have all of this I can build you a challenge.jar file and that should do it but as you can see from my previous post I have run into a little snag, give me a day to fix it

thanks


----------



## TiVoJimmy

yaturner said:


> you need the source distribution of vonaje and the java compiler etc. to build it. If you don't have all of this I can build you a challenge.jar file and that should do it but as you can see from my previous post I have run into a little snag, give me a day to fix it
> 
> thanks


Look forward to seeing a fix.

Thanks,

Jim


----------



## martylamb

Hey everyone, sorry for the long overdue update.

I've been working with John (Vonaje developer) and we understand what the (or at least _a_) problem is; it's now just a question of finding the time to work on it.

On the Vonaje side, when a message has the "unknown caller" phone number, things break. It's basically just an unforeseen situation for the parser. This needs to be detected and some kind of appropriate value returned by the Vonaje API (either null or an empty string, for example).

On the TiVonage side, this needs to be detected in order for the UI to make sense (e.g., remove the "Return Call" option).

We are both trying to free up some time to work on these issues, but we have unfortunately both been swamped with other things lately. If anyone is feeling particularly industrious and wants to take a stab at this, go for it. If you do, let us know so we don't duplicate work. We probably won't be able to get to this ourselves until this weekend at the earliest.

Thanks for your patience!

- Marty


----------



## DPF

Thanks Marty,

You're involvement as well John's are much appreciated. As shown by this thread, the two of you have come up with a useful HME app for us Vonage users. It's really handy. Can't argue with the busy issue, especially concerning how much you're both being paid for this development .

-DPF


----------



## yaturner

I have it working now for real but I am not sure how to handle this, should I send my changes to johnmutchek? I don't really want to start having multiple copies of vonaje floating around. John, any suggestions?


----------



## crnkovcm

Can you post it here, until you figure out what to do with it?


----------



## TiVoJimmy

yaturner said:


> I have it working now for real but I am not sure how to handle this, should I send my changes to johnmutchek? I don't really want to start having multiple copies of vonaje floating around. John, any suggestions?


As much as I want use this app, I would rather see it released from one source.

Let all parties contributing the fixes send them to the people controlling the app to keep the updates consistant.

Jim


----------



## pbrass

martylamb said:


> It *should* work. I only have one number myself, and I know that John (Vonaje author) only has one as well. Let me know how it works out.
> 
> - Marty


 I've been trying to get this to work as it would save me from my job as sole distributor of voice mail in my home. 

I also have two phone lines but really only need this to work with one. However, it doesn't appear to be working properly. Here's the message I get after step 4:

Unable to retrieve information from Vonage.
Stack trace follows:
java.lang.NullPointerException
at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(Unknown Source)
at tivonage.Config.showWizard(Config.java:163)
at tivonage.TiVonage.loadVonageProperties(TiVonage.java:61)
at tivonage.TiVonage.<clinit>(TiVonage.java:28)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.tivo.hme.sdk.Factory.setClassName(Factory.java:193)
at com.tivo.hme.sdk.Factory.createFactory(Factory.java:405)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:448)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:478)
at com.tivo.hme.sdk.Factory.main(Factory.java:577)

Thanks in advance for any help and for all the work that's going into this.

-Peter

P.S. Apologies... I had skimmed through all the posts in this thread, but managed to not realize that many people are having the exact same problem as me. Sorry for not being thorough initially and thanks again for the work on this project.


----------



## TiVoJimmy

Was wondering if there was any progress?


----------



## GadgetGeek

TiVoJimmy said:


> Was wondering if there was any progress?


Apparently not.


----------



## TiVoJimmy

Is the development of this app dying again? The progress that was being made was promising.........


----------



## johnmutchek

Dying? No. Delayed? Yes. Marty and I have been swamped with other projects and life in general... rest assured that updates will be posted here.

Thanks for you patience.


----------



## johnmutchek

OK... Here is a quick fix for the caller id bug. I didn't have time this evening to test it thoroughly, and would appreciate any feedback (as always). You can download the new jar at http://www.mutchek.com/software/vonaje-0.31.jar

Just replace the jar you have with TiVonage (I think it is just called vonaje.jar) and restart everything. If this works out OK I will make it an official release.

I believe that strange (bad) things will happen if you try to "Return the call" on a message that didn't have a good caller id number... Marty is looking at that.

Let me know what you find.


----------



## GadgetGeek

Thanks for looking at this again!

I am still having the basic problem of not being able to log into my Vonage account:

[java] Step 4 of 5 - Testing settings... uh-oh.

[java] Unable to retrieve information from Vonage.
[java] Stack trace follows:
[java] java.lang.NullPointerException
[java] at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(Unknown S
ource)
[java] at tivonage.Config.showWizard(Config.java:163)
[java] at tivonage.TiVonage.loadVonageProperties(TiVonage.java:61)
[java] at tivonage.TiVonage.<clinit>(TiVonage.java:28)
[java] at java.lang.Class.forName0(Native Method)
[java] at java.lang.Class.forName(Class.java:141)
[java] at com.tivo.hme.sdk.Factory.setClassName(Factory.java:193)
[java] at com.tivo.hme.sdk.Factory.createFactory(Factory.java:405)
[java] at com.tivo.hme.sdk.Factory.startFactory(Factory.java:448)
[java] at com.tivo.hme.sdk.Factory.startFactory(Factory.java:478)
[java] at com.tivo.hme.sdk.Factory.main(Factory.java:577)

I was thinking in one of your earlier posts you had an idea as to what the problem was. Did you address it in this latest code update?

Thanks!

BTW.. I do have two phone numbers on this account. If you need, I would be willing to give you temp. access to my account to test, since you just live up the road from me.


----------



## johnmutchek

On my way to work now... I'll try to look at it again this evening. Thanks for the quick test.


----------



## GadgetGeek

Anything new?


----------



## GadgetGeek

?


----------



## TMuldrow

Just as an FYI, I encountered a problem when trying to get TiVonage setup on my computer and found that the version of the Java interpreter does matter. I am running Windows XP Pro, HME 2.2, and Tivo Series2 140-Hour Unit. I had Java 1.4.2 installed previously and was running into the following problem when trying to get everything setup:



> C:\tivonage-bin>java -version
> java version "1.4.2"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2-b28)
> Java HotSpot(TM) Client VM (build 1.4.2-b28, mixed mode)
> 
> Step 4 of 5 - Testing settings... uh-oh.
> 
> Unable to retrieve information from Vonage.
> Stack trace follows:
> com.mutchek.vonaje.VonageConnectivityException: IO error.
> at com.mutchek.vonaje.VonageAccount.getVonageSession(Unknown Source)
> at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(Unknown Source)
> at tivonage.Config.showWizard(Config.java:163)
> at tivonage.TiVonage.loadVonageProperties(TiVonage.java:61)
> at tivonage.TiVonage.<clinit>(TiVonage.java:28)
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Unknown Source)
> at com.tivo.hme.sdk.Factory.setClassName(Factory.java:193)
> at com.tivo.hme.sdk.Factory.createFactory(Factory.java:405)
> at com.tivo.hme.sdk.Factory.startFactory(Factory.java:448)
> at com.tivo.hme.sdk.Factory.startFactory(Factory.java:478)
> at com.tivo.hme.sdk.Factory.main(Factory.java:577)


And now after upgrading to Java 1.5.0_05, everything seems to run fine. Hopefully this will save some head scratching for others as it did me.


----------



## Logik

It looks like there may be bigger fish to fry. Has anyone checked their Tivonage lately? Maybe a couple weeks or so ago, I went to check my vmail on Tivonage and was greeted with a deafening screech. The cat nearly jumped out of his skin.  I had been having a bit of trouble with other things on my PC, after monkeying around with a bunch of various types of conversion stuff and a bunch of funky codecs. So, I thought I may have just screwed something up. I finally tried to figure it out tonight and found this (IPs changed to protect the innocent)...



Code:


39687ms: 123.321.123.321 connect: http://321.123.321.123:1927/tivonage/
40578ms: unknown event opcode : 7

Which led me to listening to the converted mp3 directly on the computer. SCREECH!!!

Which led me to converting a wav that was already on my PC through the Lame command line. Worked fine.

Which led me to download a wav directly from Vonage and try with lame (file renamed, in case it was a file name issue, since it looks like they're using crazy long file names, now)...



Code:


C:\tivonage-bin>lame -h test.wav test.mp3
Warning: corrupt or unsupported WAVE format
Assuming raw pcm input file

SCREECH!!!

Took a look at the file properties. Uh-oh. The wavs that work just fine for me are PCM audio format. The Vonage files? It looks like they're now CCITT u-Law, something that Lame apparently doesn't recognize. Bummer x 10.

Is Tivonage now dead in the water?

PS - For those wondering, a little Googling shows that CCIT u-Law is another audio compression format that gives similar quality to PCM, but which results in *much* smaller file size. Yay to Vonage for looking out for its customers. Boo to them for wrecking Tivonage.

PPS - Of course, this is assuming that everyone else is having or will have this problem and it's not just my PC reading the format incorrectly for some reason (read earlier explanation of monkeying with codecs and whatnot )


----------



## mlamb

Tonight I finally got the chance to sit down and work on this, and I planned to work on the "unknown caller" problem... but decided to check here first. Apologies for dropping of the face of the earth for a while there.



Logik said:


> SCREECH!!!


Uh-oh. Also the sound of my evening's plans.



Logik said:


> The Vonage files? It looks like they're now CCITT u-Law, something that Lame apparently doesn't recognize. Bummer x 10.


Great detective work - thanks much!

Fortunately, there's a solution. I don't have access to a Windows computer this evening, so hopefully one or two of the more adventurous among you can give this a shot. It definitely works in Linux.

First, you need a program called sox. My Fedora 4 system already has it, but it's available in source and binary form at http://sf.net/projects/sox . If you're using windows, scroll down a little bit and get sox-win.

Unzip it into your tivonage-bin folder so you have a "sox.exe" file in the same directory as your "lame.exe"

Now create a batch file in that same directory called "encode.bat" (encode.sh on linux, of course, and be sure to chmod +x it). The linux script I tested was:



Code:


#!/bin/bash

sox $1 -t wav -s -w $1-pcm
lame --silent --resample 44.1 -h $1-pcm $2

I imagine a Windows batch file would look something like:


Code:


sox %1 -t wav -s -w %1-pcm
lame --silent --resample 44.1 -h %1-pcm %2

but again, that's untested.

Finally, run your config.bat or config.sh script so that your mp3 encoder command (step 5) points to your new batch file or shell script, passing it the appropriate parameters. On my system, the command is:



Code:


/home/mlamb/dev/tivonage/tivonage-bin/encode.sh $1 $2

That was enough to make it play the files again on my system. One problem you will find is that the displayed message length is wrong. Vonaje computes message length based upon the file size, and with the new format, that computation is no longer correct. You will still hear the entire message.

Once I have more things fixed I'll do a proper release, but if any of you can try this out on a Windows machine and report back here, I'd greatly appreciate it.

I had never heard of sox before tonight, but it's a pretty cool tool. I found out about when Google led me to http://www.hughes-family.org/wordpress/2005/11/16/vonage-changes-wav-format/

- Marty


----------



## ericr74

I actually tried exactly what you mentioned with SoX this morning. The problem is that the Windows binary does not include mp3 support. To do this with SoX requires that it is compiled with lame mp3 encoding libraries. For whatever reason, the binaries that are available for download have not been compiled in this way.

I compiled in the lame libraries myself using the SoX source, but when I run my own compiled SoX it crashes. I was about to write a script to use SoX to do wav->something else->wav again, thus changing the file to PCM. Then use lame to do wav->mp3.

I have a separate problem though - TiVonage doesn't seem to work at all for me. The configuration test works fine - it connects, etc. But from my TiVo it times out and says the http connection failed.


----------



## ericr74

Oops, I just re-read your post mlamb, and I see now that your script just uses sox to convert to pcm, then lame to go to mp3.

I just confirmed that your Windows batch file does work.

I'm still having a different issue when I try to access TiVonage from my TiVo:

An error occurred while running the application. HTTP failure (http connection error: 0x50005).

I'm successfully using Galleon applications, and when I ran the configuration for TiVonage, it reported successful connection to my Vonage account.


----------



## Logik

Yup. sox and the batch do the trick. Awesome. Thanks for the solution. I'm glad to help whenever I can. I love this app!


----------



## ischorr

Marty,

I'm assuming you're planning on including SoX binaries with new releases of TiVonage.

If I provide you an OS X executable, will you include it? I'm assuming you don't have a way to compile one yourself.


----------



## mlamb

ischorr said:


> I'm assuming you're planning on including SoX binaries with new releases of TiVonage.
> 
> If I provide you an OS X executable, will you include it? I'm assuming you don't have a way to compile one yourself.


Absolutely - send it to me at mlamb at martiansoftware dot com and I'll drop it in. I'll count on you to help test on OS X too. 

Thanks,

Marty


----------



## lcatania

DPF said:


> I have not run into that problem (yet?).
> 
> As for getting it going with startup, perhaps just dragging a link from run.bat to your startup folder or adding the line to your run list in the registry. Haven't done it, but it *should* work. No different than just double clicking the bat file, that fires up the cmd window.
> 
> I'd like to set itr up to run as a service upon boot so that I won't need to log in. Have to look into that.
> 
> -DPF


I just created a TiVonage user account on my laptop assigned a password, set up TiVonage configuratio in that account and used the task scheduler to start at bootup using that account. I first tried it with an existing account that I do not have password on and it did not work. Also had to change the TiVonage config file to run a batch file which called the "sox" app to change U-Law to PCM befrie running lame. Works great. NOw just need to solve the issue where Tivo says my message is less in duration than it actually is. It plays the whole message, but for example it shows my message is on 35s long when it is 1m long. IT stops the progress bar at 35s, but continues to plab the message.

By the way, The task manager will show cmd.exe and java.exe as tasks running under the user name you specifcied to run the bat file.


----------



## moritzes

First, thanks Marty (and others) for all the support for this "unsupported" project. 

Now, to business. I have TiVonage almost working but am getting an error in the translation from .wav to .mp3.

I have installed sox-win (on my WinXP SP2 machine), modified my path to allow running it, and made an encode.bat:


Code:


sox %1 -t wav -s -w %1-pcm
lame --silent --resample 44.1 -h %1-pcm %2

The encode.bat works if I invoke it manually from a DOS prompt. I enter this


Code:


C:\WINDOWS>encode "C:\Documents and Settings\office\.hme\TiVonage\cache\15551234567\200601120139PM14197489701.wav" "C:\Documents and Settings\office\.hme\TiVonage\cache\15551234567\200601120139PM14197489701.mp3"

And I get this:


Code:


C:\WINDOWS>sox "C:\Documents and Settings\office\.hme\TiVonage\cache\15551234567\200601120139PM14197489701.wav" -t wav -s -w "C:\Documents and Settings\office\.hme\TiVonage\cache\15551234567\200601120139PM14197489701.wav"-pcm

C:\WINDOWS>lame --silent --resample 44.1 -h "C:\Documents and Settings\office\.hme\TiVonage\cache\15551234567\200601120139PM14197489701.wav"-pcm "C:\Documents and Settings\office\.hme\TiVonage\cache\15551234567\200601120139PM14197489701.mp3"

The resulting mp3 shows up on the tivo and plays fine.

However, when I simply try to play an unprocessed message in TiVonage, the screen shows that the .wav is downloading, then very quickly flashes "converting," but the .mp3 is never converted. Here is the java error:


Code:


java.io.IOException: CreateProcess: C:\tivonage-bin\encode "C:\Documents and Settings\office\.hme\TiVonage\cache\15551234567\200601120139PM_14197489701.wav" "C:\Documents and Settings\office\.hme\TiVonage\cache\15551234567\200601120139PM_14197489701.mp3" error=2
        at java.lang.ProcessImpl.create(Native Method)
        at java.lang.ProcessImpl.<init>(Unknown Source)
        at java.lang.ProcessImpl.start(Unknown Source)
        at java.lang.ProcessBuilder.start(Unknown Source)
        at java.lang.Runtime.exec(Unknown Source)
        at java.lang.Runtime.exec(Unknown Source)
        at tivonage.MP3Encoder.convert(MP3Encoder.java:35)
        at tivonage.PlayScreen.run(PlayScreen.java:141)
        at java.lang.Thread.run(Unknown Source)

The .wav ends up in my C:\Documents and Settings\office\.hme\TiVonage\cache\ but no .mp3 file. Again, I can manually run "encode" on this .wav and it works fine.

Any ideas? I don't understand the java stuff.

[Incidentally, when I "Delete" a call from TiVonage, the .wav is deleted, but the .mp3 and .wav-pcm files remain in the cache. I know this is the result of the tivonage.jar not being changed yet to reflect the new manipulation of U-law instead of PCM .wav files, but just wanted to note it here for the next version.]


----------



## mlamb

It's funny you should post this now. I am *inches* from a new release that fixes the major problems with the exception of misreported duration (which Vonage is reporting incorrectly themselves via the web interface). But the launching of encode.bat on windows machines is stopping the release for exactly the reasons you list here.



moritzes said:


> Now, to business. I have TiVonage almost working but am getting an error in the translation from .wav to .mp3.
> 
> (snip)
> 
> However, when I simply try to play an unprocessed message in TiVonage, the screen shows that the .wav is downloading, then very quickly flashes "converting," but the .mp3 is never converted. The .wav ends up in my C:\Documents and Settings\office\.hme\TiVonage\cache\ but no .mp3 file. Again, I can manually run "encode" on this .wav and it works fine.
> 
> (snip)


I am working intently on this because I'm tired of not having a real release out there.  I have the feeling it's an easy fix code-wise; it's just a question of finding the right 2 or 3 lines to modify.

- Marty


----------



## TiVoJimmy

Will this fix my problem also. I have not been able to log in through TiVonage. I always get the the '3 of 4' error. I logged it in this thread a while back.

Thanks,

Jim


----------



## mlamb

TiVoJimmy said:


> Will this fix my problem also. I have not been able to log in through TiVonage. I always get the the '3 of 4' error. I logged it in this thread a while back.


I believe it will. There was a problem with messages from "Anonymous" (blocked numbers, etc.) that would cause this. This is fixed.

My plan is to put a link in this thread for a final shakedown before doing a true "release", so hopefully you can give it a shot to make sure I have in fact fixed any problems you're seeing. (That goes for everyone!)

- Marty


----------



## TiVoJimmy

Marty, 

Thanks for your efforts. Hoping this fixes it. Looking forward to using TiVonage. 

Jim


----------



## mlamb

mlamb said:


> My plan is to put a link in this thread for a final shakedown before doing a true "release", so hopefully you can give it a shot to make sure I have in fact fixed any problems you're seeing. (That goes for everyone!)


...and here it is. It still misreports message lengths because Vonage is misreporting them. Actual messages in my own experience have been between 50% and 100% longer than reported. You can still listen to the whole message regardless.

Communication problems with Vonage are not handled gracefully at the moment. If it suddenly stops working for you, make sure you can check your messages online.

I would appreciate any feedback you can provide - please include your operating system and a copy of the program's output in any bug reports to help me track down problems!

Finally, the link I am about to post will stop working when I do a real release on SourceForge. I will update this message with the new link.

http://www.martiansoftware.com/lab/tivonage/tivonage-0.2-rc1.zip

Have fun!

- Marty


----------



## c monkey

I downloaded Tivonage.Now what do I do? All I see is the folder and i t opens up to a whole bunch of other stuff. Please Help


----------



## mlamb

c monkey said:


> I downloaded Tivonage.Now what do I do? All I see is the folder and i t opens up to a whole bunch of other stuff. Please Help


There should be a README.txt in that folder with instructions. If you're on Windows, launch "run.bat" and follow the instructions on your screen.

- Marty


----------



## mlamb

One more thing not in the docs: you need to have Java installed in order for this to work. You can get it from http://www.java.com .

This is of course no surprise to those of you who have tried earlier versions.

There have been a bunch of downloads since Sunday night, and this thread is the only place with the current download link. Has it been working for everyone?

- Marty


----------



## c monkey

I'm not too swift with computers. How do I launch run.bat?


----------



## mlamb

c monkey said:


> I'm not too swift with computers. How do I launch run.bat?


Just uncompress the .zip file somewhere (say, "c:\tivonage-0.2"), then use windows explorer to open that folder and double-click on "run.bat"

- Marty


----------



## jubrand

I installed the new version but I'm still getting that screeching sound when I listen to messages . Do I have to do all the "sox" stuff still?


----------



## govardha

Hello,

I am trying to run tivonage in mac os x and I keep running into the same problem as quite a few people here. It doesn't seem to log in and authenticate in the web site.

Any thoughts on how I can get it to work in Mac OS X ?

G


----------



## mlamb

jubrand said:


> I installed the new version but I'm still getting that screeching sound when I listen to messages . Do I have to do all the "sox" stuff still?


It should be taken of for you, but your configuration file from the last version might be preventing that. Try running the config.bat program and change your "encoder" command to run "encode.bat $1 $2" in the directory containing TiVonage.

If the value currently in your config contains the "lame" command, that's what's going on.

- Marty


----------



## mlamb

govardha said:


> Hello,
> 
> I am trying to run tivonage in mac os x and I keep running into the same problem as quite a few people here. It doesn't seem to log in and authenticate in the web site.
> 
> Any thoughts on how I can get it to work in Mac OS X ?
> 
> G


Unfortunately I'm not equipped to test this on a Mac. Did you get any cryptic output on your computer screen when it failed to log in? If so, please email it to me at mlamb at martiansoftware dot com, and I'll be happy to take a look.

- Marty


----------



## jubrand

mlamb said:


> It should be taken of for you, but your configuration file from the last version might be preventing that. Try running the config.bat program and change your "encoder" command to run "encode.bat $1 $2" in the directory containing TiVonage.
> 
> If the value currently in your config contains the "lame" command, that's what's going on.
> 
> - Marty


So should the new command just be: encode.bat $1 $2
...with noting else?


----------



## mlamb

jubrand said:


> So should the new command just be: encode.bat $1 $2
> ...with noting else?


Yup. You may have to include the tivonage directory (containing encode.bat, sox, and lame) in your PATH as well.

- Marty


----------



## mlamb

I just released a new version (0.21) with a few bug fixes. A README is included for installation and basic troubleshooting.

http://www.martiansoftware.com/lab/index.html#tivonage

- Marty


----------



## GadgetGeek

I can understand TiVonage not supporting multiple Vonage accounts, but to just blow up?

TiVonage Configuration
(stored in C:\Documents and Settings\Potliner\.hme\TiVonage\tivonage.conf)

Step 5 of 7 - Testing settings... uh-oh.

Unable to retrieve information from Vonage.
Stack trace follows:
java.lang.NullPointerException
at com.mutchek.vonaje.VonagePhoneNumber.getMessageList(VonagePhoneNumbe
.java:226)
at tivonage.Config.showWizard(Config.java:192)
at tivonage.TiVonage.loadConfig(TiVonage.java:105)
at tivonage.TiVonage.<clinit>(TiVonage.java:35)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.tivo.hme.sdk.Factory.setClassName(Factory.java:193)
at com.tivo.hme.sdk.Factory.createFactory(Factory.java:405)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:448)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:478)
at com.tivo.hme.sdk.Factory.main(Factory.java:577)


----------



## mlamb

GadgetGeek said:


> I can understand TiVonage not supporting multiple Vonage accounts, but to just blow up?


Yup, that's pretty lame but it's what happens. Neither John (the Vonaje API developer) nor I have more than one line on our Vonage accounts, so we haven't had the means to test anything but the single-line scenario. When a 2-or-more line account is displayed on the Vonage site (which Vonaje just visits on your behalf) it's indistinguishable from a complete redesign of the Vonage site and a variety of other things that would themselves break TiVonage.

- Marty


----------



## greenergrad

I downloaded 0.21 today on both OS X 10.4.8 and WinXP (with Sun Java 1.5) and I'm having no luck with config.bat or config.sh.

On the Mac (after setting the execute flag for the sh scripts), it gets to step 5 and prompts me for my Vonage username, password, phone, and country - all of which are correctly entered. Then it loops around and keeps asking for them over and over with no end.

On Windows, config.bat fails after "press any key to continue" with: "Exception in thread "main" java.lang.NoClassDefFoundError: and"

Both machines are up-to-date with all patches and security. Any ideas? Did I miss something between downloading the binary and running config?

Thank you!


----------



## ACraigL

greenergrad said:


> On Windows, config.bat fails after "press any key to continue" with: "Exception in thread "main" java.lang.NoClassDefFoundError: and"


I see the same. First time trying to install this, FWIW.


----------



## dexthageek

I am having the same problem. I have tried on both WInxp and OSX and same on both systems.

It starts testing and then fails to gather information from vonage.

It has been a while since the code was updated, vonage may have changed the code and how users login, Since it was written.


----------



## Fofer

I was really looking forward to this... now that I have a compatible TiVo, I'm sad to see development of this cool add-on has stopped.


----------



## azitnay

It's all open source, so all you need to find is a Java programmer that subscribes to Vonage and is willing to work on it .

That being said, applications like these that rely on the format of web pages not changing are notoriously frustrating to maintain, so I'm not sure I'd be up for it even if I did subscribe to Vonage.

Drew


----------



## lloydjs

Marty,

I just installed TivoWeb last night on my series 1 Sony SVR2000 using the Steve Jenkins hack guide, which I highly recommend to newbies. Curious about what I could do with my newly hacked Tivo, I searched the internet for tivo hacks. That's when I found this thread and your webpage on TiVonage. I already have Vonage and TiVonage sounds like the best thing since sliced bread. To be completely honest, I would choose TiVonage over TivoWeb if I had to choose one (luckily I don't).

Initially I thought, "I can't wait to get out of work and install TiVonage!" and that's when it hit me: does TiVonage require a working modem in the Tivo??? My Tivo's modem died a couple of years ago so I bought a TivoNet card instead of replacing the modem and make my daily call through TivoNet.

By the way, you said you entered TiVonage in a Tivo developers (hackers) challenge? How did you do? I suspect you took home the blue ribbon.

Thanks for reading my long post and hopefully you will reply with, "Sure, you don't need a modem to use TiVonage."

Great Job!
-Lloyd


----------



## azitnay

I hate to be the bearer of bad news, but Tivonage is an HME (Home Media Engine) application... HME was introduced with TiVo software version 7.1, which came long after Series1 units stopped receiving software updates.

I'm sure it'd be possible to come up with something that offers the functionality TiVonage offers on a Series1, but I don't know of anything out there at the moment.

Drew


----------



## Fofer

So, no, you don't need a phone line for it. It's a web scraper type app, that relies on HME (as azitnay explained.) Either way, sorry, it won't work on your S1 TiVo.

Don't worry too much though, it appears development has stopped on the app anyway, and it's not working for folks that have compatible TiVos, either.


----------



## lloydjs

That is bad news. Its a bummer that TiVonage does not support series 1.

Let me ask the forum a related question, since I use turbonet to make my daily call and I have Vonage (VoPP) then can I enable caller id with the turbonet?
It makes sense that you could do this, but I have a bad feeling this has not been developed.


----------



## Fofer

There are caller ID hacks for TiVo that rely on the modem being plugged into a phone line. I didn't want to plug my TiVo into the phone line. Instead I used another system called YAC on a Windows PC, that had a TiVo Client:

http://sunflowerhead.com/software/yac/yac-0.15-tivo-readme.txt


----------



## lloydjs

I found a solution to get caller id w/ series 1 and no modem (my modem died)

YAC for Windows (server) and YAC for Tivo (listener)

http://sunflowerhead.com/software/yac/


----------



## Fofer

Wow! What an amazing find!


----------



## martylamb

Hi all,

Thanks for your continued interest in TiVonage. Since I originally released it, I've been too busy (both personally and professionally) to keep it updated. Updates are necessary whenever Vonage changes anything (website layout, .WAV encoding, whatever) even a little bit. 

So at the moment, TiVonage is broken. Save yourself some aggravation and don't try to install anything older than v0.3. Which doesn't exist yet.

The good news is that I now find myself with the time to make an update. I already have the NullPointerException fixed but there are a couple of issues with .WAV encoding I'm working on now. Plus I want to make the installation a little easier for the average user.

I'm hoping to do a release in mid-June. I'll post links to test versions here for the more adventurous (which probably includes all of you  )

- Marty


----------



## Fofer

Great news, martylamb! Thanks so much!


----------



## del4

martylamb said:


> Hi all,
> 
> Thanks for your continued interest in TiVonage. Since I originally released it, I've been too busy (both personally and professionally) to keep it updated. Updates are necessary whenever Vonage changes anything (website layout, .WAV encoding, whatever) even a little bit.
> 
> So at the moment, TiVonage is broken. Save yourself some aggravation and don't try to install anything older than v0.3. Which doesn't exist yet.
> 
> The good news is that I now find myself with the time to make an update. I already have the NullPointerException fixed but there are a couple of issues with .WAV encoding I'm working on now. Plus I want to make the installation a little easier for the average user.
> 
> I'm hoping to do a release in mid-June. I'll post links to test versions here for the more adventurous (which probably includes all of you  )
> 
> - Marty


Any news on v0.3? Finally got a Series2 unit and I've had Vonage for 2+ years now, so I'd definitely like to help test and get this app working once more. Thx!


----------



## mlamb

del4 said:


> Any news on v0.3? Finally got a Series2 unit and I've had Vonage for 2+ years now, so I'd definitely like to help test and get this app working once more. Thx!


Coming Real Soon Now. Just need to work out some issues with the installer. 

- Marty


----------



## mlamb

OK, this is a TEST VERSION (as all have been!) I'm not aware of any issues, but I have the impression that some of you on this board might be willing to help me find any that might exist. 

Some notes:


You will need Java!
There are some minor cosmetic issues (DOS windows and such), but nothing major.
There is now a Windows installer.
There is now a GUI for configuration editing and a "Test Configuration" button.

The links:

Windows Installer
Cross-Platform .ZIP

Enjoy!

- Marty


----------



## rigger29

I tried the new version but still cant get it working. I launched the config file and it connected to vonage also saying i have 1 message so i was getting real happy until i launched the run.bat to get it on tivo and this is the error it is showing

If TiVonage won't launch because of a "BindException",
or if your computer has multiple IP addresses, you will
need pass the appropriate IP address to this batch file
using the -i parameter.

Example (if your computer's IP address is 192.168.1.100):

run -i 192.168.1.100

Use the windows 'ipconfig' command to determine your IP
address if you don't know what it is.

Launching now. Type Ctrl-C to shut down.

java.net.BindException: Cannot assign requested address: Datagram send failed
at java.net.PlainDatagramSocketImpl.send(Native Method)
at java.net.DatagramSocket.send(Unknown Source)
at javax.jmdns.JmDNS.send(Unknown Source)
at javax.jmdns.JmDNS.init(Unknown Source)
at javax.jmdns.JmDNS.<init>(Unknown Source)
at com.tivo.hme.sdk.Listener.createConnectionHandler(Listener.java:142)
at com.tivo.hme.sdk.Listener.<init>(Listener.java:123)
at com.tivo.hme.sdk.Listener.<init>(Listener.java:61)
at com.tivo.hme.sdk.Factory.startFactory(Factory.java:477)
at com.tivo.hme.sdk.Factory.main(Factory.java:577)


----------



## restart88

Wow! This sounds fantastic!

One of my gripes about Tivo has been no onscreen caller id and if I turn on the DBS caller id the call info gets recorded onto my recordings.

I'm out of town but I gotta look into this more when I get home! :up: 

I especially like having the option of hearing messages via Tivo. So ok, I'm lazy. lol


----------



## ntbert

I am guessing it is because I have two Vonage lines?


----------



## Airey001

Rigger29 are you running it like it is prompting you? 

run.bat -i ipaddress?? or just run.bat

I am assuming you are running this on windows?


----------



## rigger29

Airey001 said:


> Rigger29 are you running it like it is prompting you?
> 
> run.bat -i ipaddress?? or just run.bat
> 
> I am assuming you are running this on windows?


I tried both ways. first i just ran run.bat and the same error. then I edit the run.bat properties and added -i 192.168.1.103 which is my cpu ip address and same thing happens. it displays the error message.


----------



## del4

mlamb said:


> Coming Real Soon Now. Just need to work out some issues with the installer.
> 
> - Marty


That was fast! Downloaded and installed v.23 on WinXP but am getting an error on the TiVo.

I ran the configuration and the test succeeded, telling me I had 3 messages.

_TIVONAGE_HOME=C:\Program Files\TiVonage

TiVonage v 0.23
http://www.martiansoftware.com/lab/index.html#tivonage

Automatic update checks enabled.
Version 0.23 is up to date.
testing settings (please be patient)...
3 message(s).
200706271119PM 1XXXXXXXXXX
200706220853AM 1XXXXXXXXXX
200706140823AM 1XXXXXXXXXX
Vonage settings OK._

I then launched TiVonage and got the following output:

_If TiVonage won't launch because of a "BindException",
or if your computer has multiple IP addresses, you will
need pass the appropriate IP address to this batch file
using the -i parameter.

Example (if your computer's IP address is 192.168.1.100):

run -i 192.168.1.100

Use the windows 'ipconfig' command to determine your IP
address if you don't know what it is.

Launching now. Type Ctrl-C to shut down.

TIVONAGE_HOME=C:\Program Files\TiVonage

TiVonage v 0.23
http://www.martiansoftware.com/lab/index.html#tivonage

Automatic update checks enabled.
Version 0.23 is up to date.
7156ms: Registered http://192.168.4.103:2180/tivonage/_

Went to my TiVo, saw the TiVonage Voice Mail item, selected the menu item and got the 'Please wait...' icon for 2-3 minutes before I got the following message:

_Can't Run
An error occurred while running the application. HTTP failure (Http connection error: 0x50005)_

FWIW, I'm running other HME servers, such as MovieRentals, with no problems...


----------



## mlamb

ntbert said:


> I am guessing it is because I have two Vonage lines?


For now TiVonage can't handle two Vonage lines, because the Vonaje API that it uses doesn't know how to handle the situation. Vonaje is a screenscraper that just accesses the Vonage website the same way a user does, and neither John (the Vonaje author) nor I have two Vonage lines... so we don't know what the site looks like for a multi-line account!

- Marty


----------



## mlamb

rigger29 said:


> I tried the new version but still cant get it working. I launched the config file and it connected to vonage also saying i have 1 message so i was getting real happy until i launched the run.bat to get it on tivo and this is the error it is showing
> 
> java.net.BindException: Cannot assign requested address: Datagram send failed
> at java.net.PlainDatagramSocketImpl.send(Native Method)
> at java.net.DatagramSocket.send(Unknown Source)
> at javax.jmdns.JmDNS.send(Unknown Source)
> at javax.jmdns.JmDNS.init(Unknown Source)
> at javax.jmdns.JmDNS.<init>(Unknown Source)
> at com.tivo.hme.sdk.Listener.createConnectionHandler(Listener.java:142)
> at com.tivo.hme.sdk.Listener.<init>(Listener.java:123)
> at com.tivo.hme.sdk.Listener.<init>(Listener.java:61)
> at com.tivo.hme.sdk.Factory.startFactory(Factory.java:477)
> at com.tivo.hme.sdk.Factory.main(Factory.java:577)


I've never seen that error before, but from the stack trace it sounds as though you already have an MDNS responder running on your PC. The error is basically a failure to respond to the TiVo's "Any HME apps out there?" query.

Do you know of any other applications you might have running that could be causing the conflict? I'll try to find a workaround but it would be good to confirm the theory and identify the culprit so that there's a temporary workaround.

- Marty


----------



## mlamb

del4 said:


> That was fast! Downloaded and installed v.23 on WinXP but am getting an error on the TiVo.
> 
> Went to my TiVo, saw the TiVonage Voice Mail item, selected the menu item and got the 'Please wait...' icon for 2-3 minutes before I got the following message:
> 
> _Can't Run
> An error occurred while running the application. HTTP failure (Http connection error: 0x50005)_
> 
> FWIW, I'm running other HME servers, such as MovieRentals, with no problems...


Did anything else appear in the TiVonage DOS window after you tried to launch it? If not, then something is preventing the TiVo from connecting to the application (otherwise, something interrupted the communications and is an even greater concern).

Is 192.168.1.4 the correct IP address for TiVo to access? If your PC has multiple IPs and your TiVo is on a different subnet, you might see something like this. In this case, the -i option would probably resolve the problem.

Another possibility is a Windows firewall. Your other HME apps may be listening for connections on a different port, which would explain why they work while TiVonage does not. Did you have to make any changes to your firewall settings when you got those running? You may want to check to see if you have a firewall running, and if so, temporarily disable it and try again. If that works, you can reenable it and just provide access for TiVonage.

- Marty


----------



## rigger29

k got it working it was a firewall issue. I use internet security so how how do i get it working with it what ports do i need opened? also I notice this doesnt run as a system service . would i need to leave the application program open up at all times? and if so what is the best way to launch when startup on windows automatically?


----------



## mlamb

rigger29 said:


> k got it working it was a firewall issue. I use internet security so how how do i get it working with it what ports do i need opened? also I notice this doesnt run as a system service . would i need to leave the application program open up at all times? and if so what is the best way to launch when startup on windows automatically?


Great!

I rarely use Windows so I can't point you to the exact settings, but the easiest route would probably be to open all ports for the application. I don't know if it will show up as "TiVonage", "run.bat", or "java" though.

I believe that jmdns uses port 5353, but I'm not sure if it uses that to *send* packets, which appears to be where your error occurred. Could be worth a shot though.

Please post your results!

As for the Windows service question, I'd like that to be an option at some point with just a little icon in the system tray. Lacking that, you should be able to paste the TiVonage launcher shortcut into your startup folder so it launches when you log in. You can also modify the shortcut so it runs minimized.

- Marty


----------



## del4

mlamb said:


> Did anything else appear in the TiVonage DOS window after you tried to launch it? If not, then something is preventing the TiVo from connecting to the application (otherwise, something interrupted the communications and is an even greater concern).
> 
> Is 192.168.1.4 the correct IP address for TiVo to access? If your PC has multiple IPs and your TiVo is on a different subnet, you might see something like this. In this case, the -i option would probably resolve the problem.
> 
> Another possibility is a Windows firewall. Your other HME apps may be listening for connections on a different port, which would explain why they work while TiVonage does not. Did you have to make any changes to your firewall settings when you got those running? You may want to check to see if you have a firewall running, and if so, temporarily disable it and try again. If that works, you can reenable it and just provide access for TiVonage.
> 
> - Marty


Yep, it was Windows Firewall. Turned it off and it worked right away, no problems. Now to track down the exact ports that need to be left open...

As far as running it as a service, there's a free app I've used before, FireDaemon Lite, that lets you run anything as a Windows service. No longer supported by the developer, (they have a full-featured, non-Lite version you can purchase) but you can find it easy enough through a google search...

Excellent tool Marty, thanks for updating it!


----------



## del4

I now have this working for the first time, but was surprised to see just the caller number and not the caller's name displayed. Some screenshots I found online also showed the caller's full address (billing?) info. Is this fuller display no longer available for some reason?


----------



## mlamb

del4 said:


> I now have this working for the first time, but was surprised to see just the caller number and not the caller's name displayed. Some screenshots I found online also showed the caller's full address (billing?) info. Is this fuller display no longer available for some reason?


It still works, but not for all numbers. Vonage just provides the caller number via the web interface, so the Vonaje library actually uses Google to figure out the caller info.  If there's a properly-formatted Google result for the phone number (format "(XXX) XXX-XXXX") then you'll get that info on the screen.

- Marty


----------



## Airey001

Marty,

Thanks for all your great work on this. I have no problems running this on a Windows PC.
However when i tried this on both of my linux boxes (one 32 bit one 64 bit). It blows up on both.


Nicole:/TiVonage # ./config.sh
Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)


Nicole:/TiVonage # java -version
java version "1.5.0_10"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_10-b03)


I have no problems running galleon on either of these boxes and java is a recent version.

Anyone have ideas?

Thanks,

Aaron


----------



## rigger29

Love this tool but two days ago a ****ed up thing happened and im not sure what to blame. after I got it working i played my first viocemail msg and was very happy but when i played the second message it started playing then all of a sudden the whole screen blanked out and tivo rebooted, but then it stayed at the WELCOME Powering up screen and stay there for two hours. I only had my tivo for 2 months so i was able to get a replacement at the store i bougt it from without dealing with Tivo. So im a little worried about puting this valuable tool with my new tivo. so here are some quick questions. Does tivonage DL the voicemail to tivo for playback? or does it play it back like it does music?


----------



## mlamb

Airey001 said:


> Marty,
> 
> Thanks for all your great work on this. I have no problems running this on a Windows PC.
> However when i tried this on both of my linux boxes (one 32 bit one 64 bit). It blows up on both.
> 
> Nicole:/TiVonage # java -version
> java version "1.5.0_10"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_10-b03)


That's a new version, but not new *enough*. I'm pretty sure I compiled it under 1.6.

At the moment I don't think there's anything 1.6-specific in it though (future versions probably will, like system tray integration). You can get 1.6 (for Linux, too) at http://java.com, but if I get a chance I'll do a 1.5 build over the 4th of July. Let me know if you go the 1.6 route and and I won't. 

- Marty


----------



## mlamb

rigger29 said:


> Love this tool but two days ago a ****ed up thing happened and im not sure what to blame. after I got it working i played my first viocemail msg and was very happy but when i played the second message it started playing then all of a sudden the whole screen blanked out and tivo rebooted, but then it stayed at the WELCOME Powering up screen and stay there for two hours. I only had my tivo for 2 months so i was able to get a replacement at the store i bougt it from without dealing with Tivo. So im a little worried about puting this valuable tool with my new tivo. so here are some quick questions. Does tivonage DL the voicemail to tivo for playback? or does it play it back like it does music?


I can see why you would be concerned. I haven't seen anything like that before in my own testing, though. The voice mail is converted on the PC from WAV to MP3, then served over an http connection to the TiVo for immediate playback. The voice mails are not written on the TiVo, just played back live.

That's not to say that there isn't a bug in the HME software on the TiVo that was triggered by something TiVonage did, but I can't think of what that might be. Was there anything unusual about that second voice mail? Was it extremely long or anything like that? Or did any error output appear on your PC? Maybe TiVonage blew up and the TiVo didn't know how to handle it...

- Marty


----------



## Airey001

Seems that Suse hasn't incuded the 1.6 banch into the updates yet. So I downloaded it from sun and installed the newer version. Works good now thanks alot. Now if i can only get this to run as a runlevel service I will be set. I keep having problems with my runlevel startup script.

Thanks Again,

Aaron


----------

