[Freeswitch-users] lua IVR interactivity problem

covici at ccs.covici.com covici at ccs.covici.com
Wed Jan 6 11:51:27 MSK 2016


I get a 403 error when trying to access your page.

Ray Keating <rayk at pontimax.com> wrote:

> >> Does anyone use a scripting language based IVR and have this solved?
> >> Or otherwise have a solution that doesn't involve maintaining 2
> >> distinct IVRs
> 
> If I correctly understand your requirements, then, yes there is a solution.
> 
> Dave Kompel of Xarix.net has a set of C# classes that wrap the mod_managed
> FreeSWITCH/FreeSWITCH.Native Event and FreeSWITCH core interface routines to
> provide the capabilities that you are seeking.  His ivr.cs class includes a Play() method
> that has overloads for playing a prompt file or a list of prompt files.  A GetDTMF()
> method fully supports DTMF barge-in, as well as integrated speech recognition for mixed
> speech recognition/DTMF based barge-in.  Helper classes for dial plan and
> directory configuration and handling are provided as is FreeSWITCH event accessing and
> processing.  He makes the source freely available for redistribution. 
> 
> We have implemented a mod_managed, C# based version of the classic "Pizza Ordering"
> speech recognition demo, using Dave's C# classes and our recently introduced
> MRCPv1, Microsoft Speech Platform 11 based speech recognition server, "mrcpSP11-STT".  
> It fully illustrates the use of single prompt/multiple prompts, prompt barge-in and 
> integrated speech and DTMF handling. It also provides multiple examples of the use of his
> recently added ASR interfacing capability, via session exec of "detect_speech" and ASR 
> event tracking.
> 
> A Visual Studio solution containing Dave's C# classes and of course the IVR application
> classes is available for download at www.pontimax.com/downloads.  The IVR prompt
> files are not contained in the application solution but can be provided upon request.
> 
> 
> Ray Keating
> www.pontimax.com
> 203-526-0170
> 
> On Mon, Dec 28, 2015 at 5:41 PM, Stanislav Sinyagin <ssinyagin at gmail.com> wrote:
> > it's much easier to implement the IVR logic via an ESL connection.
> > Then you can script it in your preferred programming language and
> > perform all necessary database lookups or whatever your application
> > requires.
> >
> > But in both cases (Lua or mod_perl or mod_python or an ESL
> > application), you would need to execute playAndGetDigits in order to
> > let the user enter DTMF during the playback of the prompt. If you have
> > multiple audio files to play back, you just execute playAndGetDigits
> > with every audio file in the sequence until the DTMF input is
> > detected. You can also build a phrase macro and use it instead.
> >
> > In case of ESL, you can also subscribe to DTMF events and play audio
> > files asynchronously if playAndGetDigits is not sufficient for your
> > needs.
> >
> > Here is a short example in Golang, probably you'll find it useful:
> > https://github.com/xlab1/go-fs-secretary-prototype/blob/master/golang/secretary_server.go
> >
> >
> >
> >
> > On Mon, Dec 28, 2015 at 6:46 PM, Peter Hartmann
> > <peter at hartmanncomputer.com> wrote:
> >> I'm trying to port an IVR to lua. I'm new to lua by the way.  The big
> >> picture: the goal is that the IVR should change based on the output of
> >> a shell script.
> >>
> >> I've followed the basic example over here, substituting my several wav files
> >> for the TTS prompts.
> >>
> >> https://freeswitch.org/confluence/display/FREESWITCH/Lua+Welcome+IVR+example
> >>
> >> But I've noticed a huge difference between this and the core IVR
> >> functionality.  DTMF will not interrupt the prompts, it will only be
> >> accepted when the script reaches the session:getDigits line.   It
> >> seems like session:playAndGetDigits could be interactive, but it only
> >> accepts one wav.  Is there a way for either playAndGetDigits to accept
> >> multiple wav files (without concatinating)?  Or otherwise is there a
> >> way for a scripted IVR to have this interactive functionality?   Seems
> >> like I need to fork the getDigits first and then play the wavs, right?
> >>
> >> I realize I could probably do the logic in the dialplan and then send
> >> the caller to different IVRs, but I'd rather not maintain 2 mostly
> >> similar IVRs.
> >>
> >> Does anyone use a scripting language based IVR and have this solved?
> >> Or otherwise have a solution that doesn't involve maintaining 2
> >> distinct IVRs?
> >>
> >> Thanks much
> >>
> >>
> >>
> >>
> >>
> >> Peter Hartmann
> >> Hartmann Computer Consulting
> >> http://blog.hartmanncomputer.com
> >> (212)203-8870
> >>
> >> If I can't explain it to you in plain language, that means I don't
> >> understand it.
> >>
> >> _________________________________________________________________________
> >> Professional FreeSWITCH Consulting Services:
> >> consulting at freeswitch.org
> >> http://www.freeswitchsolutions.com
> >>
> >> Official FreeSWITCH Sites
> >> http://www.freeswitch.org
> >> http://confluence.freeswitch.org
> >> http://www.cluecon.com
> >>
> >> FreeSWITCH-users mailing list
> >> FreeSWITCH-users at lists.freeswitch.org
> >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> >> http://www.freeswitch.org
> >
> > _________________________________________________________________________
> > Professional FreeSWITCH Consulting Services:
> > consulting at freeswitch.org
> > http://www.freeswitchsolutions.com
> >
> > Official FreeSWITCH Sites
> > http://www.freeswitch.org
> > http://confluence.freeswitch.org
> > http://www.cluecon.com
> >
> > FreeSWITCH-users mailing list
> > FreeSWITCH-users at lists.freeswitch.org
> > http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> > http://www.freeswitch.org
> 
> 
> 
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services: 
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
> 
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://confluence.freeswitch.org
> http://www.cluecon.com
> 
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
> 

-- 
Your life is like a penny.  You're going to lose it.  The question is:
How do
you spend it?

         John Covici
         covici at ccs.covici.com



Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list