How do I develop web applications that manage markup?

Last reviewed: 7/15/2011

HOW Article ID: H071140

The information in this article applies to:

  • VoiceMarkupKit 4

Summary

The Chant VoiceMarkupKit Web Component Library is for developing web applications that manage voice markup using your favorite JavaScript and VBScript development tools.

More Information

VoiceMarkupKit class methods require enumeration constant values for some of the parameters. These constants are pre-defined in files chant.js and chant.vb. Copy the applicable file to the same folder as your web page from the following installation folder:

Program Files\Chant\VoiceMarkupKit 4\Win32\Web\include.

Program Files\Chant\VoiceMarkupKit 4\Win64\Web\include.

Program Files\Chant\VoiceMarkupKit 4\WinCE\Web\include.

Access the constant values on your web page by including a reference to the file on your web page.


<head>
<script type="text/javascript" language="JavaScript" src="chant.js" />
... 
</head>
<body onload="onLoad()">
...
</body>

<head>
    <script type="text/vbscript" language="vbscript" src="chant.vb" />
    ...
</head>
<body onload="onLoad()">
...
</body>

Object Declaration

Chant VoiceMarkupKit includes a Web component library that can be accessed via script code on a web page.

The ChantVM component can be accessed via JavaScript and VBScript code on a web page. The IE browser caches the component automatically for the web page.


<!-- IE 32 declaration -->
<object id="WChantVM1" width="0" length="0"
classid="clsid:5EE90E47-A418-4D6B-96D4-2A57AA3A2EB3"
codebase="http://www.chant.net/grammarkit/cabs/WVoiceMarkupKit4.cab">
</object>

The ChantVM component can be accessed via JavaScript and VBScript code on a web page. The IE browser caches the component automatically for the web page. The 64-bit library declaration is only required when using 64-bit IE.


<!-- IE 64 declaration -->
<object id="WChantVM1" width="0" length="0"
classid="clsid:779BF5DB-C3FD-458F-B7D2-2155E03D2484"
codebase="http://www.chant.net/grammarkit/cabs/WVoiceMarkupKit4.cab">
</object>

The ChantVM component can be accessed via JavaScript code on a web page. Pocket IE browser does not support VBScript and does not cache the component automatically for the web page. The web component library must be installed on the device first.


<!-- Pocket IE declaration -->
<object id="WChantVM1" width="0" length="0"
classid="clsid:3DA8463C-E951-4AD0-86ED-E61DD996BCBA">
</object>

To install the web component library on the device, run the Program Files\Chant\VoiceMarkupKit 4\WinCE\vmkwebsetup.exe or copy the Program Files\Chant\VoiceMarkupKit 4\WinCE\WSpeechKitWCEARM4.cab to the device and execute to install.

Object Instantiation

The ChantVM class object is automatically instantiated when the web page loads. Access the instance of the ChantVM object from the document object. Set the CSPSerials property with your VoiceMarkupKit license serial number to unlock the component library for this web page. Even though you access the ChantVM object instance from as many functions as your application needs, you only need to set the CSPLicense once on page load.


<head>
<script type="text/javascript" language="JavaScript"><!--
    function onLoad() {
        // Get the object instance (Win32 and Win64)
        var chantVM = document.getElementById('WChantVM1');
        // Get the object instance (WinCE)
        var chantVM = document.all['WChantVM1'];

        // Set license property
        chantVM.SetStringProperty(CSPSerials,"LicenseSerialNumber");

        ...
    }
//-->
</script>
</head>
<body onload="onLoad()">
...
</body>

<head>
    <script type="text/vbscript" language="vbscript"> <!--
    Sub onLoad
        ' Get the object instance (Win32 and Win64. VBScript not supported on WinCE)
        Set chantVM = document.getElementById("WChantVM1")

        ' Set  license property
        chantVM.SetStringProperty CSPSerials, "LicenseSerialNumber" 
    End Sub
//-->
</script>
</head>
<body onload="onLoad()">
...
</body>

Event Callbacks

Event callbacks are the mechanism in which the component library sends information back to the application such as there was an error.


<script type="text/javascript" language="JavaScript" for="WChantVM1" event="HasEvent"><!--
    var oChantVMEvent;

    var chantVM = document.getElementById('WChantVM1');
    // Get the number of events
    numberOfEvents = chantVM.GetResourceCount(CSREvent);
    for (i = 0; i < numberOfEvents; i++)
    {
        // Get the event from the event queue
        oChantVMEvent = chantVM.GetResource(CSREvent, 0);
        switch (oChantVMEvent.ChantCallback)
        {
            case CCAPIError:
                {
                    ...       
                }
            default:
                break;
        }
        // Remove the event from the event queue
        chantVM.RemoveResource(CSREvent, 0, 0, "");
    }
//-->
</script>

<script  type="text/vbscript" language="vbscript" for="WChantVM1" event="HasEvent"><!--
    Set chantVM = document.getElementById("WChantVM1")
    ' Get the number of events
    numberOfEvents = chantVM.GetResourceCount(CSREvent)
    For I = 0 To numberOfEvents-1
        ' Get the event from the event queue
        Set oChantVMEvent = chantVM.GetResource(CSREvent, 0)

        ' Process the type of callback event
        Select Case oChantVMEvent.ChantCallback
            Case CCAPIError
                 ...
            Case Else
        End Select

        ' Remove the event from the event queue
        chantVM.RemoveResource CSREvent, 0
    Next
//-->
</script>

Deployment Checklist

When you are ready to deploy your application, you need to ensure you have a valid license, bundle the correct Chant component libraries, and configure your installation properly on the target system. Review the following checklist before deploying your applications:

  • You may deploy your web page to any domain with a valid license from the Chant.
  • Update the codebase tag in the <object> declaration with location of the VoiceMarkupKit cab file. This can be the Chant web location or the URL of that location on your website where you copy the licensed cab file.

Sample Projects

Web sample projects are installed at the following location:

  • My Documents\Chant VoiceMarkupKit 4\Win32\Web\JavaScript.
  • My Documents\Chant VoiceMarkupKit 4\Win64\Web\JavaScript.
  • My Documents\Chant VoiceMarkupKit 4\WinCE\Web\JavaScript.