installation_guide:asterisk:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revisionBoth sides next revision
installation_guide:asterisk:start [2016/09/09 13:44] – [Examples] borjainstallation_guide:asterisk:start [2017/06/27 20:39] – [Variables] borja
Line 1: Line 1:
-====== Asterisk integration ======+====== Voximal Asterisk integration ======
  
 ===== The Asterisk Module ===== ===== The Asterisk Module =====
Line 138: Line 138:
    
  
-==== Variables ====+==== Voximal variables ====
  
 Variables to set before or filled after the Vxml() execution : Variables to set before or filled after the Vxml() execution :
Line 183: Line 183:
   * VOXIMAL_ERROR=INTERPRETER ; Session refused, critical error with the VoiceXML browser connection.   * VOXIMAL_ERROR=INTERPRETER ; Session refused, critical error with the VoiceXML browser connection.
  
 +==== Asterisk Global Variables ====
 +
 +You can set and get variable at any moment from the VoiceXML syntax using the <transfer> tag : 
 +
 +** GET **
 +
 +<code>
 +     <transfer name="getvar" bridge="true" dest="execute:get(ID)" />
 +     <block>
 +       <prompt>
 +         End of Transfer test <value expr="getvar$.value" />.
 +       </prompt>
 +     </block>
 +</code>
 +
 +** SET **
 +
 +<code>
 +     <transfer name="toto" bridge="true" dest="execute:set(MOMO)=10">
 +     </transfer>
 +</code>
  
  
Line 188: Line 209:
  
 Online help can be accessed by typing the following command at the CLI prompt: Online help can be accessed by typing the following command at the CLI prompt:
 +
 +<code>
 *CLI> help voximal *CLI> help voximal
 +</code>
  
 ===== CLI Management Commands ====== ===== CLI Management Commands ======
Line 280: Line 304:
 The following entries are the Asterisk CLI commands for the VoiceXML browser. The following entries are the Asterisk CLI commands for the VoiceXML browser.
  
-===== Example ======+===== Examples =====
  
 Add extensions to the Asterisk dial plan /etc/asterisk/extensions.conf: Add extensions to the Asterisk dial plan /etc/asterisk/extensions.conf:
 +
 +Example use with an URL parameter:
 <code> <code>
-exten => 888,1,Answer +[incoming]  
-exten => 888,n,Wait(3) +exten => 888,1,Answer  
-exten => 888,n,Voximal(file:///root/example.vxml)+exten => 888,n,Wait(3)  
 +exten => 888,n,Voximal(http://localhost/vxml/index.vxml)
 exten => 888,n,Hangup exten => 888,n,Hangup
 +</code>
 +
 +Example to catch the Vxml() errors :
 +<code>
 +exten => _X.,1,Voximal()
 +exten => _X.,n,NoOp(${VOXIMAL_ERROR})
 +exten => _X.,n,GotoIf($["${VOXIMAL_ERROR}" == ""]?hangup)
 +exten => _X.,n,Busy()
 +exten => _X.,n(hangup),Hangup()
 </code> </code>
  
Line 321: Line 357:
 </code> </code>
  
 +===== Load Balancer =====
 +
 +Example using the Dialplan and 4 different accounts (with differents ASR and TTS ressources).
 +
 +<code>
 +exten => s,1,NoOp(Balancing)
 +exten => s,n,Set(ACCOUNTMAX=4)
 +exten => s,n,Set(TRIES=0)
 +exten => s,n,Set(ACCOUNT=${RAND(1,${ACCOUNTMAX})})
 +exten => s,n(retry),Set(TRIES=$[${TRIES} + 1])
 +exten => s,n,Voximal(account${ACCOUNT})
 +exten => s,n,ExecIf($["${VOXIMAL_ERROR}" = ""]?Goto(app-blackhole,hangup,1))
 +exten => s,n,ExecIf($["${TRIES}" = "${ACCOUNTMAX}"]?Goto(app-blackhole,hangup,1))
 +exten => s,n,Set(ACCOUNT=$[${ACCOUNT} + 1])
 +exten => s,n,ExecIf($[${ACCOUNT} = ${ACCOUNTMAX}]?Set(ACCOUNT=1))
 +exten => s,n,goto(s,retry)
 +</code>
  
 ===== Troubleshooting (for Support) ===== ===== Troubleshooting (for Support) =====
  • installation_guide/asterisk/start.txt
  • Last modified: 2017/06/27 20:40
  • by borja