VXML and SALT

Finally, after a long period of silence I have something to talk about.  Microsoft Speech Server 2007 has been announced publicly along with a number of the features it will ship with. You can find the full press release here

For me, the most interesting features are VXML support and a managed API.  For others familiar with IVR vendors and apps, the VXML feature will be very interesting because in previous versions we only supported the SALT standard which is not as universal as VXML.

I spent some time working with VXML, primarily because I own testing of the VXML debugger, and I definitely can see why it has become so popular.  SALT has far fewer tags to learn but the combination of tags and scripting gives it perhaps a steeper learning curve.  VXML has far more tags to learn but the applications seem to reflect more closely what the intention of the app is.  The main gripe I had with VXML though is it seems to be quite limiting.  If one wants to go beyond the basics things get complicated very quickly.  SALT is a bit easier to use for more complicated applications.

I am by far not an expert in either VXML or SALT.  The above are just my general impressions. 

There may be some trepidation by current SALT users that Microsoft is moving away from it.  I don't see that here at all.  The consensus within the group is still that SALT is a better alternative than VXML.  However, the truth is a number of developers are already familiar with VXML so we are providing them an easy way to move to Speech Server.

The truth is, underneath everything SALT and VXML are not that different in Speech Server 2007.  At the core level of the server is a managed API.  SALT and VXML support are both achieved by writing interpreters on top of this managed API.

I'm sure some of you are wondering whether you can just use this API directly rather than using SALT and VXML and the answer is yes!  This is what had me so excited about Speech Server several months ago and I will go into more detail about this in future blogs.