Summer Fun: Baseball and Phono

Last week, I wrote about the under-appreciated but impressive Phono, a jQuery plugin that lets you embed a softphone into any web page.

Phono is made by Florida-based Voxeo, a long-standing and innovative telephony software vendor.

With a pinch of JavaScript, anybody—developer, HTML-phobic designer—can add a voice channel widget, accessible from laptop, smartphone, or tablet.

What’s cooler than an embedded JavaScript softphone?

Connecting said softphone up with Tropo, Voxeo’s server-side telephony environment.

I usually free associate baseball, not JavaScript, with the month of August, so I decided to take on a small Tropo project to read back current major league baseball scores into my Phono widget, which I’ve conveniently inserted into this post.

Go Yankees!
Tropo is the cloud-based telephony service that puts together text-to-speech and voice recognition on the phone side, along with SMS and IM capabilities on the data side.

I’ve used this environment for a few exercises (see references) in speechifying web pages. In the past, to call into the Voxeo service, I’ve had to rely on a clunky cell phone or work with, gad, a separate SIP phone app, such as X-Lite.

Baseball scores found on ESPN’s amazing web site—for obvious reasons, ESPN didn’t provide an RSS feed—supplied the input data. I crafted a little PHP to parse the scores, and Tropo’s software then converted the written word to the spoken while responding to simple commands.

I won’t go into all the details— Xpath for screen scraping and use of Kodingen’s free dev environment for testing—but it really wasn’t that much work.

The softphone idea is not a new one. It’s been around since the dot com days. And JavaScript is usually not something to get excited about either

But, as the Google gang pointed out last week at the JavaScript meetup, it’s when you make the resources of the Internet accessible to these basic technologies that you can start doing some interesting things.

Like getting baseball scores read to you on demand.

FYI: The Phono widget above will work better with a headset. And during the day, when there are no scores to report, it just informs callers of the number of scheduled games. Finally, it will read back scores in groups of five, and expects a “yes” prompt if you want the next batch. Enjoy!

Enhanced by Zemanta


  1. Pingback: And the Winners Are… | VXML Solutions

  2. Pingback: The Phono Blog » And the Winners Are…

Comments are closed.