Call XML

May 18th, 2010Posted by Steve

 

If you have not already done so then take a look at the website Voxeo Call Xml and do a little reading. You will find that the samples are outdated and there is really no support for .Net. How CallXML works is that their web server will call your web server when it receives a call looking for a static XML file containing unstructions on what to do next. What we are going to do is take a different approach which is much more efficient and easier to control and program. If you haven't downloaded the Rest starter kit and installed it do so now, you will never regret it. Apart from this project the utility that comes with it will be useful for most every other project you undertake.Engine One of the first things we need is something to interpret the XML a parser of kinds. Grab a copy of the Xsd file in your clipboard the description of the language and go to the edit menu on Visual Studio, the Rest Starter Kit installs a new option "Paste Xml as Types". Create a new class with an appropriate namespace and click on this option. What you will find that Visual studio has invoked xsd.exe and created all of the classes you need. You now have an interface which you can use for Call Xml. You could of course leave the files exactly as they are and it will work or you could neaten up the classes see An easy XML parser link on the right to see the reasons you should do this.

So now we have the basic engine what is next? The traditional CallXml application as was said previously consists of a bunch of static XML pages which are called by the Voxeo server. There is no reason that this should be the case as we can create all of these dynamically in a web service giving us much finer control over the process. So create a webservice and add a reference to your new Call Xml class.