[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
RE: [vtp-dev] Browser API Links
|
During last Thursday's conference call I asked whether
EVENT_ENTERED_FORM, EVENT_EXITED_FORM,
EVENT_ENTERED_FIELD, and EVENT_EXITED_FIELD would be better
represented as generic tag events.
Now I withdraw my question. I'm still not up to speed on
all this code (Eclipse plugin development and VoiceXML
browsers).
On the call today we're going to review the draft of
the browser APIs. Here are some links to look at, which I would encourage you
to review internally with your development teams over the next weeks whether
you implement a VoiceXML browser or tooling that interacts with a VoiceXML
browser. The purpose of our first milestone is to find out if the APIs as
designed are usable and useful in real-world scenarios. Please provide
feedback to the list so that the API can be improved. Keep in mind that this
release focuses solely on execution, not debugging, but should not preclude
expansion into that functionality in future releases.
The extension point schema is in CVS, but to give an
example, someone would register their browser by doing something like:
<extension
point="org.eclipse.vtp.launching.voiceXMLBrowser">
<browser
name="MyCo VoiceXML Browser 2.1"
id="com.myco.voicexmlbrowser"
class="com.myco.browser.MyVoiceXMLBrowser"
configurationUIClass="com.myco.browser.ui.MyVoiceXMLBrowserConfigurationPane"/>
</extension>
Where class is an instance of IVoiceXMLBrowser and
configurationUIClass is an optional attribute supplying an instance of
IBrowserConfigurationUI (links below). By supplying the configurationUIClass
the VTP launch configuration dialog will include the browser-specific
configuration pane in its dialog when this browser entry is selected. Tooling
can obtain a full listing of available voice browsers from this extension
point.
IVoiceXMLBrowser represents
the primary interface of tooling to configure, launch and feed input into the
voicexml browser:
http://dev.eclipse.org/viewcvs/indextech.cgi/org.eclipse.vtp/simdebug/plugins/org.eclipse.vtp.launching/src/org/eclipse/vtp/launching/IVoiceXMLBrowser.java?rev=1.2&content-type=text/vnd.viewcvs-markup
VoiceXMLBrowserInput provides a generic
input object for sending input (events, dtmf, speech) to the browser object.
May be subclassed to provide browser-specific enhancements.
http://dev.eclipse.org/viewcvs/indextech.cgi/org.eclipse.vtp/simdebug/plugins/org.eclipse.vtp.launching/src/org/eclipse/vtp/launching/VoiceXMLBrowserInput.java?rev=1.1&content-type=text/vnd.viewcvs-markup
IBrowserConfigurationUI can be
implemented if a pane is desired to configure browser-specific elements in the
launch configuration dialog.
http://dev.eclipse.org/viewcvs/indextech.cgi/org.eclipse.vtp/simdebug/plugins/org.eclipse.vtp.debug.ui/src/org/eclipse/vtp/debug/ui/IBrowserConfigurationUI.java?rev=1.1&content-type=text/vnd.viewcvs-markup
Browsers must throw standard Eclipse
DebugEvents for startup/stop as detailed in this document:
http://help.eclipse.org/help30/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/debug/core/DebugEvent.html
In addition, they are encouraged to
provide more detailed eventing by specifying the type
DebugEvent.MODEL_SPECIFIC and using the detail flags specified here:
http://dev.eclipse.org/viewcvs/indextech.cgi/org.eclipse.vtp/simdebug/plugins/org.eclipse.vtp.launching/src/org/eclipse/vtp/launching/IVoiceXMLBrowserConstants.java?rev=1.1&content-type=text/vnd.viewcvs-markup
For their event source, they should
provide the instance of their IVoiceXMLBrowser object. Tooling can listen for
these events by registering an IDebugEventSetListener as provided by the
eclipse platform:
http://help.eclipse.org/help30/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/debug/core/DebugPlugin.html
--
Brent D. Metz
Enterprise Voice
Tools
bdmetz@xxxxxxxxxx
"Simple things should be simple, and complex
things should be possible." - Alan Kay