On 8/12/05, Ted Husted <[EMAIL PROTECTED]> wrote:
> A colleague is looking to add VoiceXML capabilities to their Struts
> consumer-to-business application.
> 
> I don't see any prior references to VoiceXML in the archives, just
> this one aside:
> 
> * http://www.mail-archive.com/user@struts.apache.org/msg30556.html
> 
> I wonder if anyone here has any VoiceXML best practices, war stories,
> or gotchas to share, especially relating to Struts or development
> tools, or the Jakarta Taglibs Reuseable Dialog Components (RDC).

Ted, I can add a little to the link you mentioned.

Several years ago when Struts was young and hip ;) we developed an app
using Struts + Weblogic/EJB (aw, entity beans) + IBM Voice Response
Server (for VoiceXML).

Application has the following features:
* renders regular HTML
* delivers WML output
* delivers voice responses via VoiceXML + voice server (we used IBM
Voiceresponce, but then switched to much smaller and cheaper in-house
VoiceXML browser); gets DTMF input.

We do not use voice recognition or voice generation. We use
pre-recorded voice sequences in sound files, and touch-tone DTMF
input.

For these three categories we have common EJB/business/Struts actions,
but different JSPs. When client hits the application for the first
time, we check "accepts" header and set medium to either WEB, WAP or
IVR. Then startup action forwards to to an actual welcome action
corresponding to the medium.

We have three types of action mappings for each medium, like 
<action path = "/login" type = "acme.struts.LoginAction">  <-- for html
<action path = "/vlogin" type = "acme.struts.LoginAction"> <-- for voice xml
<action path = "/wlogin" type = "acme.struts.LoginAction"> <-- for wap

Each action mapping has its own JSPs which is reasonable since markup
is so different. Each JSP contains links only to actions for its own
medium, so after "welcome" action detects the medium, all interaction
happens within actions and JSPs for a particular medium.

This is a pretty cool application, a lot of stuff there: EJB,
WebLogic, clustering, telephony, sound-processing, WML markup, WML
gateway interaction, VoiceXML markup, VoiceXML browser, ... Yep, this
was a great project.

Michael.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to