Posts categorized "Programming"

Tropo.com plugs Twitter into the voice/SMS/IM communications cloud

What if you could have a single application that communicated with your customers not just through voice but also through SMS, IM/chat and even Twitter?

tropologo2010.jpgThat's exactly what we announced at Voxeo today with our new Tropo.com release. Tropo is our "cloud communications platform" operated out of our Voxeo Labs team that is focused on reaching out to web developers using today's programming languages and APIs. We launched it back at eComm in March 2009 and have been steadily adding more capability to it over the last year. Today the "beta" label was officially peeled off of Tropo, new international phone numbers were added, international speech recognition (ASR) and text-to-speech (TTS) were added in 7 languages, and a host of other features were added, too.

Naturally, though, my interest was drawn to the fact that one of the channels you can now communicate to customers with is....

Twitter!

I demonstrated this in a post on the Tropo blog, "How to Add Twitter Support to a Tropo.com App - Step by Step", where I hooked up the Twitter account @danweathertest to an existing Tropo sample app I had that retrieved weather info from Yahoo!Weather when given a US ZIP code. I tweaked the app a bit and wrote about the tweaking in "An Example of How to Make a Tropo App Respond Differently to Different Channels (including Twitter)".

The cool part is that when it was all done, that single application is reachable via any of these communication channels:

Voice:
+1 (407) 374-3994
Skype: +99000936 9991438833
SIP: sip:[email protected]
INum: +883510001814088
SMS: (407) 374-3994
Jabber IM: [email protected]
Twitter: danweathertest

You can try it out by calling any of those numbers or using SMS, IM or Twitter. To use Twitter, just send a @ message to the Twitter ID "danweathertest" like this:

@danweathertest 32801

In a few moments you'll get back a summary of current weather conditions in whatever ZIP code you send it. Now the app isn't perfect... it doesn't do much in the way of error-checking and as I mention in the second blog post, I need to work on it a bit more to get rid of the initial prompt if you send it a ZIP code. I don't honestly know what it will do if you send it a bogus ZIP code. It's just a simple demo app designed to get people thinking about what you can do with apps that plug in to Twitter.

Want to try out building some apps yourself? Just head over to www.tropo.com and sign up for a free developer account. You can look at the many sample apps or, if you know python, you're welcome to play with the code to my sample weather app. (And if you don't know python you're of course welcome to play with the code, too... ) Have fun with it... I'm looking forward to seeing what people come up with. (And I'll be writing more about Twitter apps soon...)


If you found this post interesting or useful, please consider either subscribing to the RSS feed or following me on Twitter or identi.ca.



Speaking about Voxeo Prophecy 9 in webinar tomorrow (Apr 21, 2009)...

voxeologo.gifIf you are free tomorrow at 11am US Eastern / 8am US Pacific / 5pm CET, and want a glimpse into what we all are doing over at Voxeo, we are offering a free webinar about what is new in the upcoming Prophecy 9 and VoiceObjects 9 product releases. I am speaking in the first part about Prophecy 9 and then will be followed by Stefan Besling from our VoiceObjects team to talk about what is new in VO9.

As I put together the slide deck, I realized that the engineering team has filled this release with some great features:

  • our voice application platform now works across all three major operating systems: Windows, Linux and MacOS X
  • the new management console has some graphical features to aid in managing large premise installations that simply have to be seen to be believed (think... three dimensional walls...)
  • the new "virtual platforms" feature makes adding new capacity as drop-dead simple as installing a new server and adding it in
  • the new log analyzer tool lets you dive deep into logs to find what's going on - and to generate pretty pictures out of the activity as well

I'm definitely looking forward to talking about it tomorrow... and the more I use it on my home system (the beta is available at www.voxeo.com/prophecy), the cooler I think it is. (And I'm not saying that simply because it's my job now! :-)

Anyway, please do join us if you can - and if you can't, an archive will be available on the VoiceObjects Developer Portal soon.


If you found this post interesting or useful, please consider either subscribing to the RSS feed or following me on Twitter or identi.ca.



FYI - I'll be out at OSCON next week in Portland talking about voice mashups...

OSCON 2008 If any of you reading this will be out at O'Reilly's OSCON Open Source Convention next week (July 21-25) in Portland, Oregon, I (Dan York) will be there giving a talk on Wednesday on "Mashing Up Voice and the Web Through Open Source and XML". Here's the abstract:
With over 4.5 billion mobile and fixed phones out there as of November 2007, the phone represents the most ubiquitous user interface out there. As “mashups” on the Web let us quickly and easily access information from multiple data sources, how do we extend those mashups to the world of the phone? How do we bring the old world of voice and telephony into the new world of the Web, social networks, and social media? And how do we do that using open source tools and open standards? In this session, Dan York will introduce participants to the world of “voice mashups” and how applications can be quickly built on top of open source and open standards. Topics covered will include:
  • The technology and architecture behind voice mashups
  • The open standards in voice of VoiceXML, Call Control XML (CCXML), the Session Initiation Protocol (SIP), and new standards emerging from the Internet Engineering Task Force (IETF)
  • Open source tools related to voice including Asterisk and RocketSource.org
  • How to quickly build voice applications that interact with web sites, databases, and even new services like Twitter.
During the session, York will demonstrate multiple applications and provide participants with sample code, tips, and pointers so they can return home and get started building voice applications with open source and open standards.

If any of you will be attending, please do drop me a note as I always enjoy meeting up with people who read this blog. If you are not attending but are interested, it's not too late... you can still register at the OSCON site. Should be a great convention for those interested in open source development. The schedule is pretty amazing as it truly has a collection of some of the best folks out there in the open source world. (The convention starts on Wednesday with Monday and Tuesday being for tutorials.) I'm definitely looking forward to the event!

Technorati Tags: , , , , , , , , ,


Voice mashups - Notes on Alec's conference call today

UPDATE, Jan 11: The recording of this conference call is now available.


As I mentioned in an earlier post today, Alec Saunders convened a 30-minute conference call today on voice mashups. The call was recorded and will be available as a podcast from his site. (I'll add the link here once I'm online.)

I was traveling down through the state of Vermont today and so while I had no Internet access I did call in and joined the call from my Blackberry. (My wife was driving the car at the time.) I wrote down the following notes on my laptop during the call.


Alec introduced the call, mentioned that it would be recorded and distributed as a podcast. He then muted all the callers except for himself, Thomas Howe, Jim Courtney and Andy Abramson. For callers with Facebook open, they could press a button to "raise their hand" at which point Alec could unmute them. I was calling in on my cell phone while traveling with no Internet access, so for me it was to press "*2" to raise my hand.

Alec tossed out the first question which was "what is a voice mashup?" Thomas laid out one definition which Andy then amplified. Alec then asked if a mashup could involve something like Skype to which Jim described the results of the Skype Mashup contest and the winning PamFax app. Alec asked for examples and Thomas gave several. Alec asked how this looked like to the end-user. Thomas mentioned that it could be a web interface, but it might also simply be a telephone interface. The user would just call a number and do some kind of service. (Thanks for the mention of Voxeo, Thomas!)

Alec asked next "why do people build these?" Thomas... they are lightweight, easy to put together, easy to build for small interest groups (and therefore easy to put together a business case). Most ubiquitous interface is the phone. Business case can be small, but because of the architecture the application can actually scale massively if necessary. Jim... talked about ROI of PamFax... ability to take business documents from one location to another. Andy... mashup apps need to serve a purpose. Small, focused apps will be the general rule. However, that can be repurposed. You can globally deliver an app to small pockets of people who need that application. Andy recommends you look at Salesforce.com's app exchange. Mentions Mashery and the work they are doing looking into how you manage the rights around the use of mashup apps.

Alec - "So how do you monetize mashups?" Thomas... at least 3 hooks for monetization: 1) make businesses run faster, eliminate delays; 2) customer satisfaction - giving users a view into your system without; 3) make businesses more efficient. Question from (Dean - someone on wall) - who is making the money? Thomas - most of the work is in professional services. Focus is on developing apps, not necessarily in sale of apps.

(At this point I pressed *2 to raise my hand to ask a question related to monetization. A few minutes later I pressed *2 again.)

Tony from Voxalot talked about his voice mashup for an Australian dating site that allows users to be anonymous callers. Jim Courtney mentioned that PamFax is getting revenue on every transaction. Tony, I believe, also mentioned that Alec is getting revenue based on the usage of his conference call app.

Thomas... mashup architectures allow you to not have to pay upfront capital costs. You don't have to pay for a phone number and manage it, for instance. You can just temporarily use a phone number. Mashup architectures lower the barriers to entry.

As it was now 10:00am, Alec suggested that we should wrap up the call and throw it out to the assembled crowd for questions. It sounded from the tone of his voice that he wasn't seeing anyone raising their hand (and I was wondering what happened to my *2!). Thomas started answering...


... and then I entered one of those glorious pockets of Vermont where Verizon has no cell phone coverage - and so I was dropped off the call. Since it sounded like it was going to be wrapping up, I didn't bother calling back in a few minutes later when I was back in a coverage area.

All in all it was an interesting discussion. It undoubtedly could have gone on much longer. As I've been wanting to write more about this whole topic of voice mashups, I'll probably have some further posts on this soon.

It was also an interesting usage of Alec's Facebook "Free Conference Calling" application. The Iotum gang has certainly developed that app further and I'll definitely be looking at it again and toying with some ideas about how to use it. The recording feature is certainly an interesting one for someone who likes producing podcasts... :-) (Although it does not seem to be wideband so you are still limited to lousy PSTN audio.)

Technorati Tags: , , , , , , , , , ,


Want to talk about voice mashups? - Today, 9:30am Eastern US - Conf Call with Alec Saunders - Talking about Voice Mashups

If you are interested in "voice mashups", as I am, and are available today from 9:30 - 10:00am Eastern US time, you might be interested in joining a conference call hosted by Alec Saunders and several others. More information can be found over at Alec Saunders blog:

Talking about Voice Mashups: "Thursday morning a few of us will be doing a round table discussion on Voice Mashups using the iotum FREE Conference Call service. Andy Abramson, Tom Howe, Jim Courtney and myself will convene for 30 minutes to have a con-cast (Conference Call + PodCast).  If you're interested in the topic, please join us and contribute. "

I'm going to be traveling today, but if cell service works, I'll be joining in. Should be an interesting conversation.

Technorati Tags: , , , , ,


It's about the platform - Google finally answers the "Gphone" speculation... with an Android!

200711051534"It's about an open platform, stupid!" While I didn't include Google when I first wrote my post about how voice is really all about application platforms, I did note in the comments that I had intended to do so... and today's announcement really shows that they should be in anyone's list of telephony application platforms. As announced on the Google blog with "Where's my Gphone?", Google today announced the Open Handset Alliance and the associated set of forthcoming software called Android. The front page of the Open Handset Alliance provides a rather compelling (to me) statement:

What would it take to build a better mobile phone?

A commitment to openness, a shared vision for the future, and concrete plans to make the vision a reality.

Welcome to the Open Handset Alliance™, a group of more than 30 technology and mobile companies who have come together to accelerate innovation in mobile and offer consumers a richer, less expensive, and better mobile experience. Together we have developed Android™, the first complete, open, and free mobile platform.

We are committed to commercially deploy handsets and services using the Android Platform in the second half of 2008. An early look at the Android Software Development Kit (SDK) will be available on November 12th.

The list of partners in the Open Handset Alliance is quite interesting... handset manufacturers, semiconductor companies, software companies... but also cellular/mobile operators such as Sprint and T-Mobile as well as NTT DoCoMo and the giant China Telecom.

Also intriguing to note that eBay is listed as a partner. Would this be for eBay itself or could it perhaps be for Skype? Adding Skype into this mix could be interesting as well.

The Google blog page contains this text which gives some insight into Google's interest:

Android is the first truly open and comprehensive platform for mobile devices. It includes an operating system, user-interface and applications -- all of the software to run a mobile phone, but without the proprietary obstacles that have hindered mobile innovation. We have developed Android in cooperation with the Open Handset Alliance, which consists of more than 30 technology and mobile leaders including Motorola, Qualcomm, HTC and T-Mobile. Through deep partnerships with carriers, device manufacturers, developers, and others, we hope to enable an open ecosystem for the mobile world by creating a standard, open mobile software platform. We think the result will ultimately be a better and faster pace for innovation that will give mobile customers unforeseen applications and capabilities.

We see Android as an important part of our strategy of furthering Google's goal of providing access to information to users wherever they are. We recognize that many among the multitude of mobile users around the world do not and may never have an Android-based phone. Our goals must be independent of device or even platform. For this reason, Android will complement, but not replace, our longstanding mobile strategy of developing useful and compelling mobile services and driving adoption of these products through partnerships with handset manufacturers and mobile operators around the world.

In the end, Google wants a platform upon which they can offer their many services. With this plan, they are hoping to turn a zillion mobile phones into a platform which Google - and many others - can use.

Fascinating move... and one that is naturally getting a ton of coverage in the blogosphere. I've not had the time to read much of it, but did catch Scoble, the NY Times article and ZDNet's take. I'm sure we'll all be reading much more about it in the days ahead.

Right now, all we can really do is speculate until next Monday when the (apparently open source) SDK becomes available. We shall see... although the initial signs are certainly that this could indeed cause some disruption.

P.S. One of the commenters on Scoble's blog wondered why there wasn't equivalent attention being given to http://www.openmoko.com/ , especially since it is out already with a product. My quick reaction would be that from what I know of OpenMoko, it is about an open platform, but from a single vendor and on a single hardware platform. This Google announcement would appear to transcend both the vendors and the hardware platforms. It's also an announcement from Google and it has impressive backers.

Technorati Tags: , , , , ,


It's the (app) platform, stupid!

"Phone systems" are dead. PBXs are dead. IP-PBXs are dead.

Well, okay, not really... people will still be buying "PBXs" for quite some time. Just as there are certain communities out there who still buy horse-drawn wagons. But the reality is this:

"Phone systems", PBXs and IP-PBXs without easy application programming interfaces (APIs) are a dead branch on the evolutionary tree.

The future of communication belongs to mashups. To quick and easy ways to interconnect disparate systems. To integration of communication systems with business processes and other applications. In a world where voice is no longer always the primary mode of communication, we have to stop thinking about "phone systems" and take a larger look at how "communication" in general fits into our infrastructure. More than just how we use the system, we have to look at how we can get data in and out of the communication system. To borrow from the 1992 Clinton campaign:

It's the platform, stupid!


As you look at communication choices, the question is really about who has the "best" APIs... whose system is easiest to integrate with.... who lets you get data out of their system easily - and also lets the data back in... who lets you control the communication experience through an external application (and does so securely, naturally).

There's a good number of players out there who "get it", and either have or are in the process of developing a strong ecosystem of application partners, but let's take a quick spin down the list of some of them:

  • Microsoft - Duh! Everything about Office Communication Server and all the other components is all a platform play. The goal is integration of communication into the rest of your IT infrastructure (which they would of course like to have you run entirely on Microsoft products).
  • IBM - They don't usually get as much mention as Microsoft, but IBM's been back there making Sametime a communication platform play similar to OCS (only it has been out there for several years). With their latest move to OEM components from Siemens to make their Universal Telephony Server to allow interconnection with many different IP-PBXs, they very clearly see the value in integration.
  • Digium/Asterisk - The name Asterisk also refers to the "*" wildcard character which in UNIX-land basically means it will match on everything. Asterisk has always been about being a platform for telephony/communication from its very beginnings.
  • Skype - With its "Extras" gallery and the developer program they have been working to promote, Skype is trying to be an applications platform and currently does have many applications now available (use the "Do More" link to get to the Extras Gallery).
  • Oracle - They don't get as much coverage, but I would watch what the folks at Oracle are doing, because they are building communication solutions that move around Oracle's database solutions.
  • Social networking sites - Facebook and MySpace don't immediately come to mind as "communication" choices, but the reality is that they are becoming that - and they both understand the need and value in an API ecosystem. How well they will execute remains to the be seen.
  • The IP-PBX vendors... to a degree - I hesitate on this one a bit. Some of the vendors get this. Avaya has been running around with their SOA toolkit. Siemens has been doing a good bit of work in this space (so much so that IBM OEM'd product from them). Cisco has been running around buying up companies. But at least to me it seems to be somewhat half-hearted. For the others I've listed, communication is a platform, while for the vendors it seems to be something else they need to do. It's a different mindset which, I think, reflects the IT focus of the ones I've listed previously.


There are certainly others out there ... and more will undoubtedly enter the space in the time ahead. The key question I think we all in general need to be asking:

How well does your communication system provide a platform for applications? (or for integration with applications?)

P.S. And yes, my new employer is one of those who understands this... although ironically I wrote the draft of this entry about 3 weeks ago before I'd even heard of them... but more on that later today. :-)


Skype Journal: "The Dawn of the Mashup World"

For a couple of months now, a post has been swirling around in my brain that I was tentatively titling "The Dawn of the Mashup Culture" in which I wanted to talk about "mashups" and why they are so incredibly important.  Unfortunately I just haven't had the time to put all those thoughts into the written word.

Well, in the meantime, Jim Courtney went off and wrote something very close to what I was intending to do:  "The Dawn of the Mashup World - Part 1: Challenges, Why and Expectations"  followed by "Part 1a: What is a Mashup?"

Read them.  (And the follow-on posts that Jim indicates he's writing.)

Mashups are fundamentally changing the way we can use and control services.  It's the remix culture. 

You need to understand it... because if you don't, your products and services will be left behind.

Open APIs win.  Mashups win.


Telephony - It's the API's, stupid!

After already publishing my last post about mashups, I came across Jim Courtney's Skype Journal post about the Skype mashup competition, which in turn led me to Thomas Howe's excellent "API of the week" post (got all that?) which had these wonderfully-written words (so much so that I feel compelled to excerpt them here, something I seldom do to this extent):

If you were to ask me, I would say the twenty year old software engineer has a distinct advantage over the older telephone guys (such as me) in the realm of innovation.  Since the barriers to entry to deploying a service provider have fallen through the floor, the larger challenge is not in complex engineering, but is instead in innovation.   The younger engineers are free of the legacy of the PSTN, and many things would occur to an experienced engineer won't to them, and it's not a bad thing. 

<snip>

What does this have to do with telephony? Nothing. What does this have to do with next generation applications? Everything.  Applications that use the Internet as the platform use APIs from a large number of sources, and by and large, these APIs are not telephony. However, nearly every time a telephony API is used, an API such as GoogleMaps, Amazon SQS or DBPedia will be used right alongside it.  As a developer in this market, it makes a lot of sense for you to get to know your neighbors for two reasons. First, the more you can make your API play well with others, the faster the adoption of it will be. Secondly, the more you can understand your customers, their problems and how they need your part for their solution, the better you can make your API for them.   I'm supposing this means that you need to get familiar with APIs like this.

Which leads me back to my original statement.  The twenty-something-don't-know-or-care-about-SS7 engineer will sit down and design their version of the hot-or-not site one day, and use a whole bunch of crazy APIs to put together the application.  Then, they will go have a beer, come back, and say "You know, it would be really cool if you could just call the person you want to hook up with.  Is there an API for that?"  They won't even consider for a minute the words "termination", "LATA" or "CALEA".  They're just writing an application.  They need an API for some function, and it will take a few minutes to integrate it into their application.  And, there are many, many more of these guys than all the telecom engineers that have ever, and will ever, exist.

<snip>

Well, said, Thomas! (Read his original post for the full text.) And to copy a former US President:  "It's the API's, stupid!"


ProgrammableWeb.com launches "telephony mashup" category

It's very cool to see that one of the leading web sites about "mashups", ProgrammableWeb.com, has announced the launch of a new section focused on "Mobile/Telephony" mashups.  They actually call it a "Market", and there are two others launched today: Mapping and Shopping

The obvious focus for this blog, though, is the "Mobile/Telephony" market. The announcement notes that there are currently over 25 different APIs under "Telephony" or "Messaging" and in the actual lists of mashups, 104 are tagged "mobile" and 113 tagged "messaging".  The announcement also notes that Thomas Howe will be assisting with the content of this new section. (Congrats to Thomas!)

The list of telephony APIs (only 11, the other 14+ must be "messaging) is available and several names are probably quite familiar.  Thomas Howe also wrote a piece to explain the different types of APIs and provide a bit of background:  "Telephony & Mobile APIs and Mashups, the Big Picture".

I did find it a bit puzzling that the list of telephony APIs didn't include Skype, given that Skype has a whole developer website set up to support its APIs.  Likewise no mention of Asterisk even though the entire thing is really one big set of APIs.  But hey, the section is only a day old, so we'll have to give them a bit to see how it develops.

The fun thing about the state of VoIP/IP telephony right now is that it really is becoming all about APIs and mashups...  voice is truly just another form of data on the network... and once it is just a bunch of packets you can do really fun stuff with it!  Kudos to the ProgrammeableWeb team and Thomas Howe for helping point the way to some of the interesting stuff people are doing in this area.

Definitely do check out their telephony mashup site.