VXML standards or No standards

VXML or no standards ? I would lean towards standards but a simpler standard. For starters, VXML is the language used by voice solution providers to connect with a voice gateway provider just like IE, FireFox, Chrome are browsers for IIS, PHP, Apache web servers. Now VXML as the name stands is a XML standard with 3 versions ratified by W3C (the third version to be release next year) since its inception in 1999.  The main reason VXML gateways exists is to provide an easy way to switch from one provider to another without breaking solutions or re-writing voice solutions. Very much like changing utilities from one to another provider.

Now, I have worked with VXML gateways (Voxeo, VoiceGenie, NMSsolutions) and also worked with voice solution providers. Then I moved on to architect the HummingBytes VXML gateway, developed it and deployed it for voice solution providers to use. After being in all shoes I think I can confidently assert that standards are good, but making it easy will go a long way in making sure that the standard is enforced.

Now, coming to the part of switching from one gateway to another, the only ones who can make the switch are the voice solution providers. They can move freely from one gateway to another (albeit with some custom code modification so their core technology). End clients who are stuck with voice solution providers still cannot move from one provider to another. Reason being interfacing with the VXML gateway takes a lot more than writing a few lines of code. To communicate via VXML one has to build a sub-system which takes code written in a higher level language like C, PHP, C#, Java and translates it to VXML payloads. Building this subsystem is cost prohibitive. That is why you have smaller gateway players who come out with innovative XML language that completely throws out standards and makes it own wild west standard.

Now, here is another interesting fact the voice solution providers do. They use a sub set of the VXML language capabilities and push logical transitions, state transitions to higher level languages. So now you have a vast and rich language and only 10 percent of the language gets used. And now W3C is going to add SCXML (State Control XML) into the VXML 3.0 standard !!! So now you can do more with an XML language that no is going to use. What the W3C committee expects is developers to develop using XML, but no one codes in XML. XML is only used for the lowermost handshake between systems.

My recommendations :

1. Make the VXML language simple. Do not make it very complex and then have a compliance test to pass so that one can be certified VXML 3.0 complaint. Without a VXML compliance certification you are not considered a serious vendor. Only the big companies who have large development teams can create a compliant gateway and only they are in the business. The smaller ones create their own standard !!

2. Create components which generate simple VXML payloads which can then be easily distributed. If you want more people directly talking in VXML then simple components that you buy off the shelf is good.


Tags: , , , , ,

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: