Blogs

If you just need a simple password control for long distance or international call and don't want to use RADIUS, you can set a parameter in service then in script ask caller to enter password if it matched the one set in IOS configuration then make the call out otherwise disconnect call. A sample script is posted in Documentation section. ...Read More

 

Hi Cisco Developers,

MSE VOIP Sample Application along with User Guide can be found under the below location.
http://developer.cisco.com/web/vgapi/docs

The goal of this sample application is to demonstrate the Integration of IVR(Interactive Voice response) and MSE(Mobility service Engine).
...Read More

 

In IOS 15.2(2)T a new option is introduced for infotag get leg_dnis and infotag get leg_ani

"callnumber" is keyword

infotag get leg_dnis
infotag get leg_ani

example:

infotag get leg_dnis callnumber leg_incoming


This option services the following purposes:

1. Return number portion only for DNIS or ANI in SIP trunk ...Read More

 

The fetchaudio attribute specifies the URI of the audio to be played while the document is being fetched. It can be used with any one of the following VXML Elements <data>; <goto>; <link>; <subdialog>; <submit>

Example: ...Read More

 

Cisco Technology Developer Partners,

Cisco is proud to announce the availability of our Cisco Unified Communications System Release 8.6 Not-For-Resale software bundle on Cisco Marketplace (Partner Login Required).

To purchase the latest Unified Communications NFR Software bundle
- Navigate to Cisco Marketplace
- Login using your Cisco.com UserID ...Read More

 

New Video Tutorial section is added for this Tcl IVR API
Video Tutorial ...Read More

 

param CLI can be mapped to IVR either in the global application mode, or as group params or under the specific dial-peer.

config t
application
service aa flash: app-b-acd-aa.tcl
param aa-pilot 7001

Having the param under the specific dial-peer provides the flexibility by having same application to work with various dial-peers in various ways. ...Read More

 



Cisco Developer Network will be presenting a CDN Developer Track at Cisco Live! London the week of January 31, 2011.

We are presenting technical sessions which highlight Application Programming interfaces (APIs) and Software Developer Kits (SDKs) for Cisco technologies such as Unified Communications, IOS, and Access Routing Technologies ¿ including the new Cisco Cius ...Read More

 

There are a few more tones can be played but are not listed in the programming guide

tn_ringback -- Plays a ring back tone
tn_congestion -- Play a congestion tone
tn_stuttdial -- plays a stutter dial tone
tn_intercept --plays a intercept tone, like busy tone

For example I have to use "leg setup $dest callinfo" for a reason ...Read More

 

Ultimate AA script


Suffering the AA menu prompt tree changing that you need to modify the script frequently? Or trying to find an AA script can fit all menu prompt tree?
You really can create an ultimate script that can fit all prompt structure
Here is the solution: ...Read More

 

I would like to shed some light on IPIPGW concept and its features.
IPIPGW Over TCL-VXML scripts:
We can deploy TCL and VXML scripts on IPIPGW,where DSP¿s are not requried to use this feature.You have to record prompt in the same codec type as you use for a call.This feature will be useful when we deploy prepaid calling cards.
IPIPGW : ...Read More

 

If we download the complete book length programming guide, the information tag leg_state and the status for that lg_xxx are missed.
But if we download chapter by chapter we can get those information.

Here is the link:

http://www.cisco.com/en/US/docs/ios/voice/tcl/developer/guide/tclivrv2_ch5.html


Leg State
The state of the call leg and the corresponding status code is reported in lg_xxx format:
Value for xxx Call Leg
000 LEG_INIT ...Read More

 



There is a perspective that TCL-IVR applications are not flexible enough for a newbie to play around. But in fact, there are lots of IVR applications that are coming inbuilt with Voice GW. You just need to copy/paste in a file editor and tweak it.
...Read More

 

Showing 13 results.
Items per Page 20
of 1

Forums

« Back to VXML-API

Barge in issue with 15.1(2)T2 IOS image

Combination View Flat View Tree View
Threads [ Previous | Next ]
Hi,
 
In the process of upgrading our CVP version to CVP 8.x, we ran into a bargein issue with the IOS image: c5350-is-mz.151-2.T2.bin, as summarized below:
 
Our test consists of two simple VXML test pages as given in 1) and 2) below. The first page plays a TTS prompt (highlighted in blue) and navigates to the 2nd page, which contains a <field> element that plays a 2nd TTS prompt (highlighted in blue), listens for a boolean input, and when filled plays the result and loops back to the first page.
 
To simplify the communication, I'll refer to the two prompts (highlighted in blue) as "Prompt #1" and "Prompt #2".
 
When we tested 1) and 2) as is (i.e. by commenting out the "fetchaudio" property, as highlighted in red), barge in works as expected at BOTH prompts. Not only were we able to barge in on either Prompt #1 or Prompt #2, our bargein input (e.g. dtmf-1) was also buffered correctly till the next input state.
 
However, if we uncomment the "fetchaudio" property line, barge in no longer works with Prompt #1. (It only works with Prompt #2.) So, say I press dtmf-1 right after hearing TTS "First prompt", it will NOT stop Prompt #1 from playing, nor will my DTMF input be buffered.

We believe the bargein behavior detailed in the last paragraph is not per VXML 2.0 standards, with regards to "prompt quequeing" and "DTMF buffering". As the issue has a fairly extensive impact on our CVP applications, we need your feedback on the following:
 
a) Is this a bug or known issue with the 15.1(2)T2 IOS image?
b) Do you have a fix to this in a later image? If so, what is the image #?
 
Your earliest assistance much appreciated!
 
Thanks,
Rachel

----------------------------------------------
1) bargeinTest_page1.vxml:

<?xml version="1.0" encoding="UTF-8"?>
<vxml version="2.0">
<!-- <property name="fetchaudio" value="http://SomeServerName/audio/earcon.wav"/> -->
  <form id="start">
    <block>
      <prompt bargein="true">
          First prompt. Welcome to barge in test page 1.
      </prompt>
      <goto next="/Test/bargeinTest_page2.vxml"/>
    </block>
  </form>
</vxml>

2) bargeinTest_page2.vxml:
 
<?xml version="1.0" encoding="UTF-8"?>
<vxml version="2.0">
<form id="f1">  
    <field name="foundation_fld" type="boolean">   
      <prompt bargein="true">
           2nd prompt. Please say or enter your input.
      </prompt> 
      <catch event="nomatch">
        <prompt bargein="true">form no match</prompt>   
      </catch>    
      <catch event="noinput">
        <prompt bargein="true">form no input</prompt>
      </catch>     
      <filled>       
        You entered <value expr="foundation_fld"/>       
        <goto next="/Test/bargeinTest_page1.vxml"/>
      </filled>
    </field>
  </form>
</vxml>

Hi Rachel,

please send us the logs by enabling debugs "debug voip app vxml all" for both cases comment and uncomment the "fetchaudio" property line.
BTW for fetchaudio bargein is true by default so did u press dtmf-1 after hearing fetchaudio prompt and 1st prompt.

Thanks,
Raghavendra

Hi Raghavendra,

I never heard the fetchaudio as there was no latency in my tests. All i heard were the first and second prompts, and i was trying to barge in on the first.

Will send you the logs with the suggested debugs soon.

Thanks,
Rachel

Hi Raghavendra,
 
Attached please find the requested logs (in a zip file), with 'fetchaudio' turned on and off.
 
Here're the debugs enabled in the gateway:
 
  debug voip application vxml error software is ON
  debug voip application vxml error call is ON (filter is OFF)
  debug voip application vxml application is ON (filter is OFF)
  debug voip application vxml inout is ON (filter is OFF)
  debug voip application vxml event is ON (filter is OFF)
  debug voip application vxml trace is ON (filter is OFF)
  debug voip application vxml log is ON (filter is OFF)
  debug voip application vxml warning is ON (filter is OFF)
  debug voip application vxml background is ON (filter is OFF)
  debug voip application vxml gtd is ON (filter is OFF)
 
Also, just so you know, we did confirm that the fetchaudio as specified in the property line IS accessible from the gateway.
 
Thanks for looking into this!
Rachel
Attachments:

Hi Rachel,

Please find below description about fetchaudio.
Fetchaudio summary

* All prompts queued prior to the fetchaudio will be played prior to the
fetchaudio.
* All prompts played before the fetchaudio are non-bargeable.
* Audio associated with fetchaudio is also non-bargeable.
* All prompts before the fetchaudio are guaranteed to be played to
completion, regardless of when the fetch finishes. See Known issues for
important information regarding this point.

* Audio associated with fetchaudio will be interrupted as soon as the
interpreter is ready to flush the next set of prompts from the queue.
* When a sequence of elements specify fetchaudio, the interpreter
interrupts the previous fetchaudio when it begins to process the next
element that has a fetchaudio attribute.

hope this helps!

Thanks,
Raghavendra

Hi Raghavendra,
 
Thanks for sharing the gateway info re: fetchaudio!
 
The original reason for my inquiry was that we have NEVER experienced this bargein issue before, running the same applications against a CVP 4 gateway (i.e. 12.4 ios images). In the above scenario, barge-in has always worked fine at both Prompt #1 and Prompt #2. This led to our initial conclusion that it could be a gateway bug introduced in the new 15.x image. 
 
After digging further, we found out that the difference is actually attributable to one crucial command in the 15.x gateway configuration, i.e. "vxml version 2.0". We also found out that in the 15.1(2)T2 gateway, if we remove the the "vxml version 2.0" command, we can revert the barge-in behavior back to the same as before (i.e. allowing barge-in at both Prompt #1 and Prompt #2).
 
Now, we understand the primary goal of the "vxml version 2.0" command is to enable VXML 2.0-compliant features, so at some point down the road we'll likely have to turn on that command in order to enable certain VXML 2.0 features.
 
But for the near term, here are our questions:
 
1) For the SAME applications that have been running well in the past against a 12.4(x) IOS gateway WITHOUT the "vxml version 2.0" command, if we have to run them against the 15.1(2)T2 gateway, would you recommend turning the "vxml version 2.0" command ON or OFF?

2) We know that the "vxml version 2.0" command is now auto-inserted into gateway configuration during 15.1(2)T2 gateway installation. Are there any special implications we need to be aware of, if we disable the "vxml version 2.0" command in the 15.1(2)T2 gateway?
 
Any comments or pointers on this are appreciated!
 
Thanks,
Rachel

Hi Rachel,

Here is the snapshot from the following link http://www.cisco.com/en/US/docs/ios/voice/ivr/configuration/guide/ivrapp02.html for your reference.

VoiceXML Before Version 2.0 and Version 2.0 Behavior

The default VoiceXML behavior is compatible with versions earlier than W3C VoiceXML 2.0. You can enable W3C VoiceXML 2.0 behavior by entering the vxml version 2.0 command in global configuration mode. This command enables the following features:

¿An audio error event, error.badfetch, is not thrown when an audio file cannot be played, for instance, because the file is in an unsupported format, the src attribute references an invalid URI, or the expr attribute evaluates to an invalid URI.

¿Support for the beep attribute of the <record> element.

¿Blind transfer compliant with W3C VoiceXML 2.0 and not the same as consultation transfer.

¿A semantic error is generated if an undeclared variable is used. You must declare variables before using them.

Use the no vxml version 2.0 command to revert to the default behavior.

You can turn on the audio error feature only, which is compatible with versions earlier than W3C VoiceXML 2.0, by entering the vxml audioerror command in global configuration mode. Use the no vxml audioerror command to disable this feature. The vxml audioerror command overrides the vxml version 2.0 command, so that if both commands are entered, the audio error event will be thrown when an audio file cannot be played.

Thanks,
Anusha

Thanks Anusha for the pointer on the doc!
 
One more question:
 
Any idea if having the following IOS command turned on is a prerequisite for CVP 8.0?
 
vxml version 2.0

I also posted this inquiry on the CVP forum, but any insight from you would be appreciated!

Thanks,
Rachel

Collateral


No files available