LumenVox

From Asterisk Australia
Jump to: navigation, search

LumenVox Overview

Lumenvox is a speech to text processor to jazz up your voice applications. Instead of press 1 for sales, the user could simply say sales to have the call routed. This gives many more options for an IVR and removes the need for nested options. Eg Press 1 for sales (they select 1) press 1 for existing customer, 2 for new customer. With lumenvox they could just say 'New customer sales' or 'Sales new customer' and be routed to the right area. Brilliant!.

Cost/Where to Buy

Lumenvox offer an Asterisk starter kit that includes 1 Lumenvox Lite license for $50(US). There are more options for the full edition and support. The lite edition is limited to one channel and 500 prompts. Purchase and checkout via digium.com, my order took around 12 hours to process.

Installation

After purchase, you will be given login details to the lumenvox website where you can download and install your files. I was installing on Trixbox with Centos 5, so used the following method.

Add Lumenvox YUM repository

  • Log into your Trixbox (Asterisk PBX) using putty or your preferred command line utility.
  • Add the file /etc/yum.repos.d/LumenVox.repo (eg. nano /etc/yum.repos.d/LumenVox.repo)
  • Cut and paste the following. (See the Lumenvox for different versions)
 ###################################################
 [LumenVox] 
 name=LumenVox Products $basearch
 baseurl=http://www.LumenVox.com/packages/EL5/i386/
 enabled=1
 gpgcheck=0
 ###################################################
  • You can then install lumenvox and components (Enter: yum install LumenVoxCore LumenVoxClient LumenVoxSRE LumenVoxLicenseServer)
  • I got the error "libjs dependancy required" (or similar) but it is looking for a javascript library called SpiderMonkey.
  • The fastest way to install this is to add the rpmforge yum.
  • Add the file /etc/yum.repos.d/rpmforge.repo, cut and paste the following.
 # Name: RPMforge RPM Repository for Red Hat Enterprise 5 - dag
 # URL: http://rpmforge.net/
 [rpmforge]
 name = Red Hat Enterprise $releasever - RPMforge.net - dag
 baseurl = ftp://ftp.pbone.net/mirror/atrpms.net/el5-i386/atrpms/stable
 enabled = 1
 protect = 0
 gpgcheck = 0
  • You can now install libjs by typing (yum install js-devel).
  • Finally the lumenvox install should work (yum install LumenVoxCore LumenVoxClient LumenVoxSRE LumenVoxLicenseServer)
  • Note this is a big download (over 500Mb) - Have a Coffee.

License Lumenvox

  • Lumenvox have excellent instructions for this located by clicking Here

Install the Asterisk Bridge

  • Again the lumenvox instructions are great for this one Click Here
  • It is worth checking that the modules are loaded after installation. To do this, within asterisk -vvvvvvvvvvvvvvvvr do a show modules and you should see the speech and lumenvox modules loaded.

Create a Test dial plan

  • The following is an example direct from Lumenvox, cut and paste it into extensions-custom.conf
 [lumenvox-test]
 exten => s,1,Answer
 exten => s,n,Wait(1)
 exten => s,n,SpeechCreate
 exten => s,n,SpeechLoadGrammar(yesno,/etc/lumenvox/Lang/BuiltinGrammars/ABNFBoolean.gram) 
 exten => s,n,SpeechActivateGrammar(yesno)
 exten => s,n,SpeechBackground(beep)
 exten => s,n,Verbose(1,Result was ${SPEECH_TEXT(0)})
 exten => s,n,Verbose(1,Confidence was ${SPEECH_SCORE(0)})
  • To make it so we can dial and test the application using extension 122 add
 exten => 122,1,Goto(lumenvox-test,s,1)
  • above the [lumenvox-test] line.

Finally check it is all working

  • Open an asterisk cli (eg asterisk -vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvr)
  • Dial extension 122 from one of your phone, you should hear a beep. Say either yes or no.
  • Yes should return true and no should return false.
  • Here is some example output for dialing and saying 'YES'
   -- Executing [122@from-internal:1] Goto("SIP/3692-091932e8", "lumenvox-test|s|1") in new stack
   -- Goto (lumenvox-test,s,1)
   -- Executing [s@lumenvox-test:1] Answer("SIP/3692-091932e8", "") in new stack
   -- Executing [s@lumenvox-test:2] Wait("SIP/3692-091932e8", "1") in new stack
   -- Executing [s@lumenvox-test:3] SpeechCreate("SIP/3692-091932e8", "") in new stack
   -- Executing [s@lumenvox-test:4] SpeechLoadGrammar("SIP/3692-091932e8", "yesno|/etc/lumenvox/Lang/BuiltinGrammars/ABNFBoolean.gram") in new stack
   -- Executing [s@lumenvox-test:5] SpeechActivateGrammar("SIP/3692-091932e8", "yesno") in new stack
   -- Executing [s@lumenvox-test:6] SpeechBackground("SIP/3692-091932e8", "beep") in new stack
   -- Executing [s@lumenvox-test:7] Verbose("SIP/3692-091932e8", "1|Result was true") in new stack
Result was true
   -- Executing [s@lumenvox-test:8] Verbose("SIP/3692-091932e8", "1|Confidence was 1000") in new stack
Confidence was 1000


  • Here is some example output for dialing and saying 'No'
   -- Executing [122@from-internal:1] Goto("SIP/3692-091f6790", "lumenvox-test|s|1") in new stack
   -- Goto (lumenvox-test,s,1)
   -- Executing [s@lumenvox-test:1] Answer("SIP/3692-091f6790", "") in new stack
   -- Executing [s@lumenvox-test:2] Wait("SIP/3692-091f6790", "1") in new stack
   -- Executing [s@lumenvox-test:3] SpeechCreate("SIP/3692-091f6790", "") in new stack
   -- Executing [s@lumenvox-test:4] SpeechLoadGrammar("SIP/3692-091f6790", "yesno|/etc/lumenvox/Lang/BuiltinGrammars/ABNFBoolean.gram") in new stack
   -- Executing [s@lumenvox-test:5] SpeechActivateGrammar("SIP/3692-091f6790", "yesno") in new stack
   -- Executing [s@lumenvox-test:6] SpeechBackground("SIP/3692-091f6790", "beep") in new stack
   -- ast_get_srv: SRV lookup for '_sip._udp.sip.pennytel.com' mapped to host sip6.pennytel.com, port 5060
   -- Executing [s@lumenvox-test:7] Verbose("SIP/3692-091f6790", "1|Result was false") in new stack
Result was false
   -- Executing [s@lumenvox-test:8] Verbose("SIP/3692-091f6790", "1|Confidence was 658") in new stack
Confidence was 658

Finished

So Lumenvox is all installed and working. You can now start to build voice driven applications.