At Interknowlogy, we're completing an end-to-end wireless arsenal that consists of some of the best and most preferred devices on the market, including Palm Pilots, Blackberry devices, Pocket PCs, Window CE devices, cell phones, and—for those occasions when wireless connectivity isn't available—regular old telephones. Just about everyone at InterKnowlogy has a handheld gadget with some sort of wireless capability, and that probably motivated us as we worked through the various phases of this project. Today, I'll give you a quick rundown of what we're doing.

We have an internal Web application called CRM Central, which we developed for our sales team. CRM Central lets you enter new contacts, leads, and proposals, and also lets you update status information. Initially, you had to be inhouse to use this application. In the next phase, we made CRM Central accessible from the Web, which of course lets users access it from anywhere. In the end, we developed software for each technology I mentioned earlier, including a version that incorporates VoiceXML—which added to the robustness because now we truly can access the application from anywhere.

VoiceXML, in short, lets you access a Web site and its services via a telephone. VoiceXML consists of prompts that guide you through the Web site, letting you interact through speech recognition and speech synthesis. You can fill out forms that consist of input boxes, run queries, perform searches, and read dynamic content. Visit the World Wide Web Consortium's (W3C's) Web site to get the latest information about VoiceXML and where it's going. You can also visit the Tellme Networks site and build your first VoiceXML application using Tellme's online studio and tools.

Here's a sample of some basic VoiceXML:

<!DOCTYPE vxml PUBLIC "-//Tellme Networks//Voice Markup Language 1.0//EN"
"http://resources.tellme.com/toolbox/vxml-tellme.dtd">

<vxml>
<meta name="scoping" content="new"/>

<form id="proposal">
<var name="empid" />
<block>
      <audio>Welcome to InterKnowlogy's voice c r m Central system</audio>
      <pause>100</pause>
</block>
<field name="action">
      <grammar>
            <!\[CDATA\[
             \[
                  \[dtmf-0 done end finished stop\] \{<option "done">\}
                  TM_SPEECH_DigitString
             \]
             \]\]>
            </grammar>
            <prompt>
               <audio>Please say your employee i  d?</audio>
         </prompt>
         <nomatch>
                <audio>Sorry, I didn't understand</audio>
         <reprompt/>
         </nomatch>
         <noinput>
           <audio>Sorry, I didn't hear you</audio>
                 <reprompt/>
         </noinput>
         <default/>
</field>
<filled>
        <audio> You said </audio>
        <audio expr="action"/>
</filled>
</form>
</vxml>

In the April 17 issue, I'll provide more code examples that return dynamic queries via voice input. Also, I'll explain how I inserted and updated records in a SQL Server 2000 database using VoiceXML. In addition, I'll show you how you can combine this technology with Active Server Pages (ASP) using VBScript and JavaScript.