Log In
Developer Network
Technologies
Join the Network
Member Services
Events & Community
Voice Gateway API (VGAPI) Developer Center
Overview
Documentation
Community
Testing
Blogs
Simple password control for making outbound international or longdistance call
Yaw-Ming Chen
| 12 Sep 2012
Tweet
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
MSE VOIP Sample Application
Raghavendra Gutty Veeranagappa
| 01 Feb 2012
Tweet
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
New Tcl IVR command option for "infotag get leg_dnis" and "infotag get leg_ani"
Yaw-Ming Chen
| 04 Jan 2012
Tweet
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
Fetchaudio Summary
Anusha Kannappan
| 15 Nov 2011
Tweet
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
Unified Communication 8.6 NFR Bundle Now Orderable
Xiangqian Yang
| 08 Sep 2011
Tweet
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
Video Tutorial
Yaw-Ming Chen
| 12 May 2011
Tweet
New Video Tutorial section is added for this Tcl IVR API
Video Tutorial
...Read More
Configuring single IVR appl with multiple param based on the DNIS
Raghavendra Gutty Veeranagappa
| 04 Mar 2011
Tweet
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 Live! London - Jan. 31-Feb 3, 2011
David Staudt
| 01 Nov 2010
Tweet
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
Undocumented tone for Tcl IVR playtone command
Yaw-Ming Chen
| 30 Sep 2010
Tweet
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
Yawming Chen
| 15 Mar 2010
Tweet
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
IPIPGW over TCL/VXML scripts
VijayPrasad Neelamegam
| 04 Nov 2009
Tweet
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
TCL IVR API -- Undocumented status code
YAW-MING CHEN
| 04 Mar 2009
Tweet
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
TCL-IVR applications inbuilt with Voice GW
JASMINE KALAISELVAN
| 23 Feb 2009
Tweet
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
Page
(Changing the value of this field will reload the page.)
1
of 1
First
Previous
Next
Last
Forums
Message Boards Home
Recent Posts
Statistics
Answer
(
Unmark
)
Mark as an Answer
« Back to VXML-API
DTD Error
Threads [
Previous
|
Next
]
Patrick Hartl
Posts:
28
Join Date:
9/4/09
Recent Posts
DTD Error
Answer
11/9/11 7:58 AM
Mark as an Answer
Submit
Reply with Quote
Quick Reply
Hello,
I want to build a short IVR with vxml. When I add a second form to my vxml document I become an DTD error.
Element <audio> is not used according to DTD
The beginning of my doc:
<?xml version="1.0" encoding="iso-8859-1"?>
<vxml version="2.0">
or
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE vxml
PUBLIC "-//W3C//DTD VOICEXML 2.0//EN"
"http://www.w3.org/TR/voicexml21/vxml.dtd">
<vxml version="2.0">
I want to add:
<elseif cond="mycall == 'noanswer'"/>
<goto next="#noan"/>
with an link to
<form id="noan">
but the call will be disconnected and the error occurs.
Have anyone a idea ?
thx
regards Patricio
Sign in to vote.
Flag
Please sign in to flag this as inappropriate.
Top
Anusha Kannappan
Posts:
149
Join Date:
9/15/09
Recent Posts
RE: DTD Error
Answer
11/2/09 5:19 PM as a reply to Patrick Hartl.
Mark as an Answer
Submit
Reply with Quote
Quick Reply
Hi Patricio,
I don¿t see any syntax errors in the way you have added the second form in the script. Are you trying to play an audio file in the second form? If so can you please check for the correctness of that tag and also check whether the files are there in the specified location.
Thanks,
Anusha
Sign in to vote.
Flag
Please sign in to flag this as inappropriate.
Top
Patrick Hartl
Posts:
28
Join Date:
9/4/09
Recent Posts
RE: DTD Error
Answer
11/2/09 5:53 PM as a reply to Anusha Kannappan.
Mark as an Answer
Submit
Reply with Quote
Quick Reply
Hi,
Thank you for your response. This is a sample vxml configuration. The audio files are on the flash memory.
Without the hop "goto next" and a second section <form> the default audio is played and the script seems ok.
But I have to use different sections...
<?xml version="1.0"?>
<vxml version="2.0">
<!--
Cisco Voicexml Default
File Name : sdc.vxml
-->
<catch event="error.badfetch">
<prompt>
<audio src="technical.au"></audio>
</prompt>
<log> Catch Handler :: Bad Fetch </log>
</catch>
<catch event="telephone.disconnect.transfer">
<log> Catch Handler :: Blind Transfer </log>
</catch>
<catch event="telephone.disconnect.hangup">
<log> Catch Handler :: User disconnected </log>
</catch>
<form id="main">
<var name="mydur"/>
<var name="PhoneNum" expr="session.connection.remote.uri"/>
<!-- Play music while attempting to connect to far-end -->
<transfer name="mycall" destexpr="'sip:'+session.connection.local.uri+'@192.168.251.2:5060'" transferaudio="moh01.wav" bridge="true" connecttimeout="10s">
<filled>
<assign name="mydur" expr="mycall$.duration"/>
<if cond="mycall == 'busy'">
<goto next="#busy"/>
<elseif cond="mycall == 'noanswer'"/>
<goto next="#noanswer"/>
<elseif cond="mycall == 'unknown'"/>
<goto next="#unknown"/>
<elseif cond = "mycall == 'maxtime.disconnect'"/>
<goto next="#maxtime"/>
</if>
</filled>
</transfer>
</form>
<form id="busy">
<audio src="busy.ulaw.wav"/>
</form>
<form id="noanswer">
<audio src="noanswer.ulaw.wav"/>
</form>
<form id="unknown">
<var name="phone_num"/>
<field name="get_phone_num" type="number">
<grammar type="application/grammar+regex">...</grammar>
<prompt bargein="true">
<audio src="unknown.ulaw.wav"></audio>
</prompt>
<filled>
<assign name="phone_num" expr="get_phone_num"/>
</filled>
</field>
<transfer name="mycall" destexpr="'tel: ' + phone_num" connecttimeout="30s" cisco-longpound ="true" bridge="true">
</transfer>
</form>
<form id="maxtime">
<audio src="goodbye.au"/>
</form>
</vxml>
The DEBUG:
*Nov 2 11:57:14: //2689//VXML:/Open_SetupIndication:
*Nov 2 11:57:14: //2689//AFW_:/vapp_vxmldialog: Trusted=0, DNIS Map URI=, Code = {
}
*Nov 2 11:57:14: //2689//AFW_:/vapp_vxmldialog: After DNIS Map URI=flash:sdc.vxml, Code = {
<?xml version="1.0"?>
<vxml version="2.0">
<!--
Cisco Voicexml Default
File Nam
}
*Nov 2 11:57:14: //-1//AFW_:/AFW_VxmlModule_New:
*Nov 2 11:57:14: //-1//VXML:/vxml_tree_lock:
vxmlp=67B93F3C usage_cnt=0
*Nov 2 11:57:14: //0/B21051F18CC0/VXML:/vxml_start_element_handler:
CALL_ERROR; flash:sdc.vxml
at line 56: Element <audio> is not used according to DTD
*Nov 2 11:57:14: //0/B21051F18CC0/VXML:/vxml_parse:
*Nov 2 11:57:14: vxml_parse: XML_Parse success err=0
*Nov 2 11:57:14: vxml_tree_delete_for_parse_failure:mem_mgr_mempool_free: mempool=NULL
*Nov 2 11:57:14: //0/B21051F18CC0/VXML:/vxml_session_delete:
*Nov 2 11:57:14: vxml_session_delete:mem_mgr_mempool_free: mem_refcnt(6BA9244C)=0 - mempool cleanup
*Nov 2 11:57:14: vxml_session_delete:mem_mgr_mempool_free: mempool=NULL
*Nov 2 11:57:14: //-1//VXML:/vxml_create:
*Nov 2 11:57:14: vxml_create: error exit
*Nov 2 11:57:14: //-1//VXML:/vxml_create:
CALL_ERROR; code=ERROR vapp=VAPP_SUCCESS vxml=
*Nov 2 11:57:14: //2689//AFW_:/vapp_terminate:
*Nov 2 11:57:14: //2689//AFW_:/vapp_session_exit_event_name: Exit Event vxml.session.complete
*Nov 2 11:57:14: //2689//AFW_:/AFW_M_VxmlModule_Terminate:
*Nov 2 11:57:14: //2689//AFW_:/vapp_checksessionstate:
*Nov 2 11:57:14: //2689//AFW_:/vapp_checkifdone: Object: 1, Leg: 1
*Nov 2 11:57:14: //2689//AFW_:/vapp_checksessionstate:
*Nov 2 11:57:14: //2689//AFW_:/vapp_checkifdone: Object: 0, Leg: 0
*Nov 2 11:57:14: //-1//AFW_:HNCDD7FEFC:/AFW_M_VxmlModule_Free:
*Nov 2 11:57:14: MOD[VxmlModule_67E7C8E0_0_3453484796] ( )
Regards
Patrick
Sign in to vote.
Flag
Please sign in to flag this as inappropriate.
Top
Anusha Kannappan
Posts:
149
Join Date:
9/15/09
Recent Posts
RE: DTD Error
Answer
11/2/09 8:14 PM as a reply to Patrick Hartl.
Mark as an Answer
Submit
Reply with Quote
Quick Reply
Hi Patrick,
Place the audio tag inside the block tag. Then it would work without any issue.
For example:
---------------
Instead of
<form id="noanswer">
<audio src="noanswer.ulaw.wav"/>
</form>
Use the following:
<form id="noanswer">
<block>
<audio src="noanswer.ulaw.wav"/>
</block>
</form>
Thanks,
Anusha.
Sign in to vote.
Flag
Please sign in to flag this as inappropriate.
Top
Patrick Hartl
Posts:
28
Join Date:
9/4/09
Recent Posts
RE: DTD Error
Answer
11/2/09 8:30 PM as a reply to Anusha Kannappan.
Mark as an Answer
Submit
Reply with Quote
Quick Reply
Hi,
Now I have changed the program to:
<form id="busy">
<block>
<audio src="busy.ulaw.wav"/>
</block>
</form>
Now I have an other error:
*Nov 2 14:24:07: //-1//VXML:EE66C89EFC000:/C_ServiceVxmlBase_Main:
*Nov 2 14:24:07: %VOICE_ELOG-4-MEM_USAGE_HI_WATERMARK: System memory on high usage (81/100). Stopping processing new event log for now.
*Nov 2 14:24:07: //2690//VXML:/Open_SetupIndication:
*Nov 2 14:24:07: //2690//AFW_:/vapp_vxmldialog: Trusted=0, DNIS Map URI=, Code = {
}
*Nov 2 14:24:07: //2690//AFW_:/vapp_vxmldialog: After DNIS Map URI=flash:sdc.vxml, Code = {
<?xml version="1.0"?>
<vxml version="2.0">
<!--
Cisco Voicexml Default
File Nam
}
*Nov 2 14:24:07: //-1//AFW_:/AFW_VxmlModule_New:
*Nov 2 14:24:07: //-1//VXML:/vxml_tree_lock:
vxmlp=67B93F3C usage_cnt=0
*
Nov 2 14:24:07: //0/373F49C68CC4/VXML:/vxml_character_data:
CALL_ERROR; flash:sdc.vxml
at line 55: Invalid PCDATA
*Nov 2 14:24:07: //0/373F49C68CC4/VXML:/vxml_parse:
*Nov 2 14:24:07: vxml_parse: XML_Parse success err=2
*Nov 2 14:24:07: vxml_tree_delete_for_parse_failure:mem_mgr_mempool_free: mempool=NULL
*Nov 2 14:24:07: //0/373F49C68CC4/VXML:/vxml_session_delete:
*Nov 2 14:24:07: vxml_session_delete:mem_mgr_mempool_free: mem_refcnt(6AC1A990)=0 - mempool cleanup
*Nov 2 14:24:07: vxml_session_delete:mem_mgr_mempool_free: mempool=NULL
*Nov 2 14:24:07: //-1//VXML:/vxml_create:
*Nov 2 14:24:07: vxml_create: error exit
*
Nov 2 14:24:07: //-1//VXML:/vxml_create:
CALL_ERROR; code=ERROR vapp=VAPP_SUCCESS vxml=
*Nov 2 14:24:07: //2690//AFW_:/vapp_terminate:
*Nov 2 14:24:07: //2690//AFW_:/vapp_session_exit_event_name: Exit Event vxml.session.complete
*Nov 2 14:24:07: //2690//AFW_:/AFW_M_VxmlModule_Terminate:
*Nov 2 14:24:07: //2690//AFW_:/vapp_checksessionstate:
*Nov 2 14:24:07: //2690//AFW_:/vapp_checkifdone: Object: 1, Leg: 1
*Nov 2 14:24:07: //2690//AFW_:/vapp_checksessionstate:
*Nov 2 14:24:07: //2690//AFW_:/vapp_checkifdone: Object: 0, Leg: 0
*Nov 2 14:24:07: //-1//AFW_:HNCE5E7A4C:/AFW_M_VxmlModule_Free:
*Nov 2 14:24:07: MOD[VxmlModule_67E7CDE0_0_3462298188] ( )
and after changing the form id
busy
to
busytag
- then I have the same eror as bevor:
<?xml version="1.0"?>
<vxml version="2.0">
<!--
Cisco Voicexml Default
File Nam
}
*Nov 2 14:32:51: //-1//AFW_:/AFW_VxmlModule_New:
*Nov 2 14:32:51: //-1//VXML:/vxml_tree_lock:
vxmlp=67B93F3C usage_cnt=0
*Nov 2 14:32:51: //0/008730EA8500/VXML:/vxml_start_element_handler:
CALL_ERROR; flash:sdc.vxml
at line 74: Element <block> is not used according to DTD
*Nov 2 14:32:51: //0/008730EA8500/VXML:/vxml_parse:
*Nov 2 14:32:51: vxml_parse: XML_Parse success err=0
*Nov 2 14:32:51: vxml_tree_delete_for_parse_failure:mem_mgr_mempool_free: mempool=NULL
*Nov 2 14:32:51: //0/008730EA8500/VXML:/vxml_session_delete:
*Nov 2 14:32:51: vxml_session_delete:mem_mgr_mempool_free: mem_refcnt(6A5C76E8)=0 - mempool cleanup
*Nov 2 14:32:51: vxml_session_delete:mem_mgr_mempool_free: mempool=NULL
*Nov 2 14:32:51: //-1//VXML:/vxml_create:
*Nov 2 14:32:51: vxml_create: error exit
*Nov 2 14:32:51: //-1//VXML:/vxml_create:
CALL_ERROR; code=ERROR vapp=VAPP_SUCCESS vxml=
*Nov 2 14:32:51: //2693//AFW_:/vapp_terminate:
*Nov 2 14:32:51: //2693//AFW_:/vapp_session_exit_event_name: Exit Event vxml.session.complete
*Nov 2 14:32:51: //2693//AFW_:/AFW_M_VxmlModule_Terminate:
*Nov 2 14:32:51: //2693//AFW_:/vapp_checksessionstate:
*Nov 2 14:32:51: //2693//AFW_:/vapp_checkifdone: Object: 1, Leg: 1
*Nov 2 14:32:51: //2693//AFW_:/vapp_checksessionstate:
*Nov 2 14:32:51: //2693//AFW_:/vapp_checkifdone: Object: 0, Leg: 0
*Nov 2 14:32:51: //-1//AFW_:HNCE667764:/AFW_M_VxmlModule_Free:
*Nov 2 14:32:51: MOD[VxmlModule_67E7E1E0_0_3462821732] ( )
regards
Patrick
Sign in to vote.
Flag
Please sign in to flag this as inappropriate.
Top
Anusha Kannappan
Posts:
149
Join Date:
9/15/09
Recent Posts
RE: DTD Error
Answer
11/3/09 12:30 PM as a reply to Patrick Hartl.
Mark as an Answer
Submit
Reply with Quote
Quick Reply
Hi Patrick,
No need to modify the form item variable as it is used to store the outcome of the transfer attempt. Let that be the same as before(busy). Just include the prompt tag inbetween as follows
<form id="busy">
<block>
<prompt>
<audio src="flash:no_input.au"/>
</prompt>
</block>
</form>
Thanks,
Anusha.
Sign in to vote.
Flag
Please sign in to flag this as inappropriate.
Top
Patrick Hartl
Posts:
28
Join Date:
9/4/09
Recent Posts
RE: DTD Error
Answer
11/3/09 12:40 PM as a reply to Anusha Kannappan.
Mark as an Answer
Submit
Reply with Quote
Quick Reply
Hi,
Sorry - the same error. Could it be the IOS ?
Nov 3 06:43:25: //0/053981E28CD5/VXML:/vxml_start_element_handler:
CALL_ERROR; flash:sdc.vxml
at line 78: Element <block> is not used according to DTD
regards
Patrick
Sign in to vote.
Flag
Please sign in to flag this as inappropriate.
Top
Anusha Kannappan
Posts:
149
Join Date:
9/15/09
Recent Posts
RE: DTD Error
Answer
11/3/09 1:43 PM as a reply to Patrick Hartl.
Mark as an Answer
Submit
Reply with Quote
Quick Reply
Hi Patrick,
I had tried the simple call transfer with just the 'busy' and 'noansmwer' option with the specified modification and it worked very fine. Please send me your modified script along with the configurations and logs for analysing further.
Thanks,
Anusha
Sign in to vote.
Flag
Please sign in to flag this as inappropriate.
Top
Patrick Hartl
Posts:
28
Join Date:
9/4/09
Recent Posts
RE: DTD Error
Answer
11/3/09 4:14 PM as a reply to Anusha Kannappan.
Mark as an Answer
Submit
Reply with Quote
Quick Reply
Hi,
The solution is - be careful with <block> and <promt> elements in fields.
This was the error.
thank you very much for your help
Patrick
Sign in to vote.
Flag
Please sign in to flag this as inappropriate.
Top
Anusha Kannappan
Posts:
149
Join Date:
9/15/09
Recent Posts
RE: DTD Error
Answer
11/3/09 6:03 PM as a reply to Patrick Hartl.
Mark as an Answer
Submit
Reply with Quote
Quick Reply
Hi Patrick,
I was not able to view any attachment of the script. Please let us know whether your query was addressed?
Thanks,
Anusha.
Sign in to vote.
Flag
Please sign in to flag this as inappropriate.
Top
Patrick Hartl
Posts:
28
Join Date:
9/4/09
Recent Posts
RE: DTD Error
Answer
11/3/09 6:09 PM as a reply to Anusha Kannappan.
Mark as an Answer
Submit
Reply with Quote
Quick Reply
Hi,
Here is my solution. If you have a better solution - let me know :-)
lg
Patrick
Attachments:
Sign in to vote.
Flag
Please sign in to flag this as inappropriate.
Top
Collateral
No files available