| VoiceXML 2.1 Development Guide | Home | Frameset Home |
| aaiexpr | Data Type: CDATA | Default: Optional |
| This attribute is currently disabled on the Voxeo network The aaiexpr specifies an expression that evaluates to the aai data to be sent to the receving application. | ||
| bridge | Data Type: (true|false) | Default: Optional |
| The bridge attribute specifies whether or not the outbound call is to be a blind transfer or a bridged transfer. When the value is set to ‘true’, then this indicates that a bridged transfer is intended. A bridged transfer will allow the application to continue to execute when the transfer is completed, whereas a blind transfer will terminate the application once the outbound call has been completed and disconnected. Please note that the usage of blind transfers, or SIP REFER is only available on the hosted network in specific circumstances, and this service requires dedicated telephone resources to be deployed by the customer beforehand. Blind transfers can be used in a local Prophecy deployment in circumstances where the telco provider supports it. Note: Either the type or the bridge attribute may be specified, but not both. | ||
| cond | Data Type: CDATA | Default: Optional (true) |
| The cond attribute specifies a Boolean expression, which must equate to ‘true’ in order for the content to be visited and executed. (Additionally, the expr attribute must also be set to ‘undefined’, see below). | ||
| connecttimeout | Data Type: CDATA | Default: Optional |
| The connecttimeout attribute specifies the amount of time that the platform will attempt to connect the call, before a ‘noanswer’ event is returned. Note that this element is subject to the strict time syntax, where the time value must be followed by ‘s’ or ‘ms’. | ||
| dest | Data Type: CDATA | Default: Optional |
| The dest attribute specifies the destination number or URI to transition the caller to. The Voxeo platform supports both the ‘tel’ and the ‘sip’ protocols for outbound dialing: <transfer dest=”tel:+18002223333”> (absolute syntax) <transfer dest=”tel:18002223333”> (exact syntax) <transfer dest=”sip:xxx.xxx.xxx.xxx”> (sip address) Note that developers who use the non-US datacenters are required to specify an E164-formatted dial string: tel:+[country code][number] In addition, the developer can include post dial dtmf input to trigger after the call is connected, by using the following syntax: <transfer dest=”tel:+18002223333;postd=ppp4444”> Note that the ‘p’ character indicates a pause between connection and post-dial input from the application; navigation of voicemail systems using the postdial method should be timed carefully using this syntax. | ||
| destexpr | Data Type: CDATA | Default: Optional |
| The destexpr attribute allows the developer to specify an ECMAScript expression resolving to the destination of a transfer. Note that either dest or destexpr may be specified, but not both. | ||
| expr | Data Type: CDATA | Default: Optional |
| The expr attribute specifies the initial value of the element; if this value is ‘undefined’, (default), then the element will be visited by the FIA and executed. If this attribute has a value other than ‘undefined’, then the element will not be visited until explicitly set to 'undefined', by use of the clear element. | ||
| maxtime | Data Type: CDATA | Default: Optional |
| The maxtime attribute specifies the duration of the transferred call. By default, this is set to ‘0’, which indicates that the call can last an arbitrary length of time; i.e., until the caller or the callee disconnects. | ||
| name | Data Type: NMTOKEN | Default: Optional |
| The name attribute specifies the ECMAScript form item variable name for the transfer. Conditional statements in the filled portion of a transfer are based upon this variable name. See Appendix G for additional information on transferring calls. | ||
| transferaudio | Data Type: CDATA | Default: Optional |
| The transferaudio attribute is a VXML 2.0 that allows the developer to specify what is played to the caller in place of the default 'ring-tone'. The value of this can be any wav file, assuming that it meets the criteria for a 'playable' file. | ||
| type | Data Type: (bridge|blind|refer) | Default: bridge |
| The type attribute allows you a method to specify the type of call transfer performed. On the Voxeo Prophecy hosted platform, if you specify consultation as the value for a transfer, it is not supported, and the transfer is bridged. You can also specify refer as a Voxeo extension that allows a SIP REFER to be performed using telco-dependent support. For more information, see Blind Transfers Sample Application. Also note that either the type or the bridge attribute may be specified, but not both. | ||
| voxeo:callerid | Data Type: CDATA | Default: Optional |
| This attribute allows developers to spoof a callerID for an outbound bridged <transfer>. As this attribute is a voxeo-specific extension, it is required that the "xmlns:voxeo" attribute be specified within the <vxml> element, and its value set to the voxeo namespace. | ||
| TransferName$.duration | A handy way to log a transferred call's duration is by making use of the TransferName$.duration shadow variable. The resulting value from this logs the amount of time, in seconds, that the transfer lasted. Note that in the event that the original called party that initiated the transfer hangs up before the called party, this variable will not be populated with a value at all, per the specification. If the retention of this call data is of critical imprtance in your application, it is suggested that you use server side or client side coding to calculate transfer durations. |
| TransferName$.inputmode | The 'inputmode' shadow variable is used when a caller uses a hotword to terminate a bridged transfer. When this occurs, this shadow variable will hold the value of the mode of input used, (DTMF, or Voice), that matched the hotword grammar. |
| TransferName$.utterance | When used with transfer hotwording, this shadow variable will ihold the value of the utterance value that the caller, (near-end), used to terminate the bridged transfer. |
| <?xml version="1.0" encoding="UTF-8"?>
<vxml version = "2.1"> <meta name="author" content="Matthew Henry"/> <meta name="copyright" content="2005 voxeo corporation"/> <meta name="maintainer" content="YOUR_EMAIL@HERE.COM"/> <form id="F1"> <transfer name="T_1" bridge="true" dest="tel:+12223334444"> <!-- ************************************************* --> <!-- Transfer code remix, courtesy of D.J. Johnnie Cochran --> <!-- ************************************************* --> <prompt> Placing the call, y'all</prompt> <filled> <if cond="T_1 == 'busy'"> <prompt>The line is busy, Lizzie. </prompt> <exit/> <elseif cond="T_1 == 'noanswer'"/> <prompt> No one's home, metronome. </prompt> </if> </filled> </transfer> <block> <goto next="#F2"/> </block> </form> <form id="F2"> <block> <prompt>if the bridge is true, then the call goes on for you. </prompt> </block> </form> </vxml> |
| <?xml version="1.0" encoding="UTF-8"?>
<vxml version = "2.1"> <meta name="author" content="Matthew Henry"/> <meta name="copyright" content="2005 voxeo corporation"/> <meta name="maintainer" content="YOUR_EMAIL@HERE.COM"/> <form id="F1"> <transfer name="T_1" bridge="true" cond="false" dest="tel:+12223334444"> <!-- ************************************************* --> <!-- Transfer code as performed by the esteemed Pikey, Mickey O'Neil --> <!-- http://imdb.com/title/tt0208092 --> <!-- ************************************************* --> <prompt> Bwarshe blarn. Eriddie me beer! Fragunt! </prompt> <!-- this will not get exectued, as the condition = false --> </transfer> <transfer name="T_2" bridge="true" expr="'shampoohorn'" dest="tel:+12223334444"> <prompt> Harrgun blime shnoggin enell O' Rillbey! </prompt> <!-- this will not get exectued, as the expr != undefined --> </transfer> <transfer name="T_3" bridge="true" dest="tel:+12223334444" cond="true" expr=""> <prompt> Bir nolley O'malley dor tuggatinya er street!</prompt> <!-- preparing to place the call --> <filled> <if cond="T_3 == 'busy'"> <prompt> Nad to sham er Blimey! </prompt> <!-- the call is busy --> <exit/> <elseif cond="T_3 == 'noanswer'"/> <prompt> Gurt dermit, esh murka nam. </prompt> <!-- there is no answer --> </if> </filled> </transfer> </form> </vxml> |
| <?xml version="1.0" encoding="UTF-8"?>
<vxml version = "2.1"> <meta name="author" content="Matthew Henry"/> <meta name="copyright" content="2005 voxeo corporation"/> <meta name="maintainer" content="YOUR_EMAIL@HERE.COM"/> <property name="com.nuance.tts.ResourceName" value="en-US.English-Male2" /> <property name="Persona" value="KeanuReeves" /> <var name="DestVar" expr="'tel:+12223334444'"/> <form id="F1"> <transfer name="T_1" bridge="false" destexpr="DestVar"> <!-- ************************************************* --> <!-- Transfer code, as performed by Keanu Reeves --> <!-- ************************************************* --> <prompt> Huh. Dude. </prompt> <filled> <if cond="T_1 == 'busy'"> <prompt>Whoah. </prompt> <exit/> <elseif cond="T_1 == 'noanswer'"/> <prompt> Whoah. </prompt> </if> <prompt> Dude. Whoah. Your call. It was like. <value expr="T_1$.duration"/> seconds. Whoah. </prompt> </filled> </transfer> </form> </vxml> |
| ANNOTATIONS: EXISTING POSTS |
visionik
|
|
| Note that the ability to specify the ANI / Caller ID that the Voxeo platform will use is not included in the documentation above. You can specify the ANI / Caller ID to use with the following syntax:
<transfer dest="tel:+14075551234;ani=5551234567"/> the ANI must be exactly 10 digits long. Also note that both the ability to place outbound calls and to specify a "customer" caller ID are restricted by default. If you need to make outbound calls or specify caller ID, please contact voxeo support via email to support@voxeo.com |
|
PUNUKA
|
|
| Hi.. long time i have been away. I am just wondering how to test a performance of my vxml ivr to support many number of call(sessions) at once. Since I dont have many number of hard phones or softphones too to dial to the ivr, I thought of writing a script that will dial to the ivr directly.. I have been thinking of shell script but since I am working on vxml, I thought of usign CCXML embedded into my vxml application. The embedded CCXML should be able to create different sessions of calls to the system and therefore be able to create different legs of vxml interpreter which are independent call sessions... will that be possible? if so how will i do that? help soon... | |
Michael.Book
|
|
| Hello,
Telephony application and/or IVR/PBX load-testing is indeed possible using HTTP (token) initiated CCXML sessions. However, load-tests should never be attempted on the free Staging (development) network. It is intended for proof-of-concept application development, and simply does not have the allocated resources for load-testing. Our Production VoiceCenters, on the other hand, are not lacking in available resources, so all load-tests should be scheduled to run there. For more information about scheduling a load-test, contact the fine folks in our sales (sales@voxeo.com) department for pricing information. For more information on HTTP token initiated CCXML sessions and outbound dialing, see our handy CCXML documentation and tutorials at: - http://docs.voxeo.com/ccxml/1.0/ - http://docs.voxeo.com/ccxml/1.0/tutorialhome.htm I hope this helps to get you started. Do let us know if additional questions pop up along the way. Have Fun, ~ Michael |
|
haigang
|
|
| hello , how many tel id i can call in
<transfer dest="tel:+18002223333"> Simultaneously? Thanks |
|
sidvoxeo
|
|
| Hi there,
You can only make a single transfer using the dest="tel:xxxx" attribute of VoiceXML transfer element. On our Staging platform if you use tokens to make outbound calls, you can make two calls concurrently. ~Sid |
|
sam_kumar
|
|
| Hi All,
When i m using transfer element then following error is coming VOICEXML EXCEPTION Node: OpenCallSvr Category: vxml_exception Time: 050814 16:10:18.572 Message: eventname: error.connection.noauthorization message : Call transfer is not permitted what i need to do to resolve the above prob ?????? |
|
jbassett
|
|
| Hello,
How exactly are you trying to use the tranfer tag ? (please paste the actual syntax}. Also, are you trying to use it to dial outbound, and if so, have you been granted outbound dialing permissions ? Thanks Jesse Bassett Voxeo Support |
|
VoxeoDante
|
|
| Note: If you are looking to perform a VXML transfer and would like to know the duration of this transfer, there are two ways to do so. The first way would be to use the "TransferName$.durration" shadow variable. This is a generally accepted method and works well in most cases. One case where this does not work is if the transfer is ended by the originating party before the new leg is answered. Below is a code sample which will gather the time value of the transfer from the time the transfer form is hit, until the transfer is ended and log this value in milliseconds. Enjoy!
<?xml version="1.0" encoding="UTF-8"?> <vxml version = "2.1"> <var name="startTime" expr="new Date();"/> <var name="endTime"/> <var name="DestVar" expr="'tel:+15055555555'"/> <catch event="connection.disconnect.hangup"> <goto next="#timeCount"/> </catch> <form id="F1"> <transfer name="T_1" bridge="true" destexpr="DestVar"> <prompt> Transfer Time </prompt> <filled> <goto next="#timeCount"/> </filled> </transfer> </form> <form id="timeCount"> <block> <assign name="document.startTime" expr="startTime.getTime();"/> <assign name="document.endTime" expr="new Date();"/> <assign name="document.endTime" expr="endTime.getTime();"/> <assign name="document.startTime" expr="Number(startTime);"/> <assign name="document.endTime" expr="Number(endTime);"/> <log expr="'*** START TIME = ' + document.startTime"/> <log expr="'*** END TIME = ' + document.endTime"/> <if cond="'document.startTime' > 'document.endTime'"> <assign name="document.endTime" expr="document.endTime + 1000"/> <log expr="'*** endTime is now = ' + document.endTime"/> <log expr="'**** CONFERENCE DURATION = ' + (document.endTime - document.startTime); "/> </if> </block> </form> </vxml> |
|
Jenny
|
|
| Hi,
I am working on one project, which need to log information after successful call transfer. We are using bridge transfer. What will be the value of "T_1" in the following code if call is answered..If I know that I can code accordingly. <transfer name="T_1" bridge="true" dest="tel:+12223334444"> <!-- ************************************************* --> <!-- Transfer code remix, courtesy of D.J. Johnnie Cochran --> <!-- ************************************************* --> <prompt> Placing the call, y'all</prompt> <filled> <if cond="T_1 == 'busy'"> <prompt>The line is busy, Lizzie. </prompt> <exit/> <elseif cond="T_1 == 'noanswer'"/> <prompt> No one's home, metronome. </prompt> <elseif cond="T_1 == 'XXXXX'"/> <prompt> Call is answered </prompt> </if> </filled> </transfer> What shall I put in the place of 'XXXXX' to find out call is answered / successful. Any suggestions are invited. Thanks, Jenny |
|
voxeojeff
|
|
| Hi Jenny,
The T_1 variable is simply the variable name of the transfer for referencing in the application. From this variable, we can log shadow variables: T_1$.duration T_1$.inputmode T_1$.utterance As far as telling whether or not a call was transferred successfully, we could do something like this: <prompt> Placing the call, y'all</prompt> <filled> <if cond="T_1 == 'busy'"> <prompt>The line is busy, Lizzie. </prompt> <exit/> <elseif cond="T_1 == 'noanswer'"/> <prompt> No one's home, metronome. </prompt> <else/> <prompt> Call is answered </prompt> <goto next="#NextForm"/> </if> </filled> Hope this helps, Jeff |
|
SSA_telespectrum
|
|
| I need t transfer the call and then to recieve the call for some specific purpose.
<transfer name="T_2" dest="tel:+17208978916;ANI=pp5551234567"/> I have ANI and DNIS value in the variable.Someone confirm me the following syntax <transfer name="T_2" dest="tel:+17208978916;ANI;DNIS"/> is that the right syntax?if not then plz inform me about the correct one. |
|
mikethompson
|
|
| Hello,
In searching through the VoiceXML spec and Voxeo documentation, I do not see a way to pass the DNIS in a VoiceXML transfer. However, you are correct in using ;ani, as this is supported. Would you be so kind as to elaborate on why you need to spoof the DNIS in this transfer? Please advise, Mike Thompson Voxeo Corporation |
|
ricarjos
|
|
| Hi, i've a problem, my permission to do a calls was aprovate today, but when i use the coded shawn below all times the answer is that the line is busy, but i sure that the phone is not being used.
What could be the problem? <?xml version="1.0" encoding="UTF-8"?> <vxml version = "2.1"> <meta name="author" content="Matthew Henry"/> <meta name="copyright" content="2005 voxeo corporation"/> <meta name="maintainer" content="YOUR_EMAIL@HERE.COM"/> <form id="F1"> <transfer name="T_1" bridge="true" dest="tel:+XXXXXXXXXX"> <!-- ************************************************* --> <!-- Transfer code remix, courtesy of D.J. Johnnie Cochran --> <!-- ************************************************* --> <prompt> Placing the call, y'all</prompt> <filled> <if cond="T_1 == 'busy'"> <prompt>The line is busy, Lizzie. </prompt> <exit/> <elseif cond="T_1 == 'noanswer'"/> <prompt> No one's home, metronome. </prompt> </if> </filled> </transfer> </form> </vxml> thanks. |
|
VoxeoDustin
|
|
| Hey,
Can you verify you are using the proper syntax: <transfer dest="tel:+18002223333"> (absolute syntax) or <transfer dest="tel:18002223333"> (exact syntax) You'll need to include the country code, as well as the 10 digit number when creating a transfer. If you're still having difficulty after trying this, please open an account ticket and include the debugger logs for one of the calls that failed. Thanks, Dustin |
|
ricarjos
|
|
| Hi, the two options already I had proven them, but continuous the problem, I probe with the following options:
<transfer dest="tel:1609xxxxxxx"> <transfer dest="tel:+1609xxxxxxx"> Another problem is that not like obtaining debugger log that requests to me that sent, please said me where I can obtain this log. Thanks. |
|
Jenny
|
|
| Hi,
Thanks for answering me about Handling success scenario. Now I need to differentiate the hangup event triggered with in transfer and normal hangup events; as both need different handling; For this purpose I can override the hangup catch event with in transfer Eg: <vxml> <form> <prompt> Please be in line before transfer </prompt> <catch event ="connection.disconnect.hangup"> <log expr="'Hangup before transfer'" label="info"/> </catch> <transfer name="transfer" destexpr="transferNumber"> . . <catch event ="connection.disconnect.hangup"> <log expr="'Hangup After transfer'" label="info"/> </catch> </transfer> </form> </vxml> If I am hanging up while playing the prompt "Please be in line before transfer" I want "Hangup before transfer" to be logged. But instead I am getting "Hangup After transfer". As per my understanding transfer part is being executed while prompt is played from the Queue. But I need to get "Hangup before transfer" if i hungup during playing the prompt. How could I achieve that? Any Suggestions welcome. Thanks. |
|
MattHenry
|
|
|
Hello Jenny, I think this is due to how the VXML FIA processes form items that do not contain recogntion fields, specifically detailed in this section of the spec: http://www.w3.org/TR/voicexml20/#dml2.1.6 As we have a prompt existing outside of an input field (note that this current incarnation isn't really legal, you'd want it enclosed in a <block> tag), then the FIA renders the prompt microseconds before the transfer is initiated. I'd think that you can get the behavior that you want here by enclosing the prompt within a "dummy" field, as detailed in our docs at the below link: http://docs.voxeo.com/voicexml/2.0/mot_disconnectevents.htm ~Matt |
|
Jenny
|
|
| Thanks for your prompt reply. Your suggestion helped me to solve the problem. But I m getting more delay while transferring.Thanks | |
repion
|
|
| Hello,
I have 5 lines. When a line is busy, it will be transferred to another. What should I do? Thanks. |
|
MattHenry
|
|
|
Hi there, Assuming that I understand your question, then I think it would be a simple matter to handle this scenario by: 1 - Setting a document scoped variable for a transfer target 2 - Using the "destexpr" attribute of the transfer tag for the outbound call 3 - In the event of a "busy" signal, trap the event using if/else logic 4 - Change the value of the document scoped variable to the alternate transfer destination 5 - <clear> the form-item variable for the transfer element 6 - Use <goto> to revisit the transfer form-item variable, which will use the new variable value as a transfer target Hope this helps, ~Matt |
|
mako85
|
|
| Hello,
Is there a way to catch a baddest (bad destination) event on my transfer? This would be great because it would allow me to make it transfer to a main number instead of just dropping the caller. -Mako |
|
voxeojohnq
|
|
| Hello,
In VoiceXML the error returned for an invalid number is "busy". If you are looking for finer grain control over your transfers, you may want to take a look at CCXML. CCXML is an excellent language for handling things like conferencing, transfers, answering machine detection, etc, while leaving VoiceXML for dialog duties like TTS and ASR. CCXML is definitely capable of doing exactly what you are trying to do. For more information on handling transfers in CCXML, click here: http://docs.voxeo.com/ccxml/1.0-final/createcall.htm I hope this helps! If you have any further questions, please don't hesitate to ask. Regards, John Quinn Voxeo Support |
|
phanimca2006
|
|
| Hi
I need a solution for recording the conversation between the parties when transferred through bridge transfer. Once the call been transferred then the session is not allowing to do another operation. Thanks |
|
voxeoJeffK
|
|
| Hi,
You might have success using the voxeo:recordcall element which is documented here: http://docs.voxeo.com/voicexml/2.0/voxeo-recordcall.htm During a transfer operation the interpreter has to park until it receives an event ending the transfer. So what you can do is enable voxeo:recordcall just before the transfer, and then disable it afterwards. <!-- the value of 100 will start recording --> <voxeo:recordcall value="100" info="Passcode" /> <transfer name="T_1" bridge="true" dest="tel:+12223334444"> <filled> <!-- the value of '0' will turn off recording --> <voxeo:recordcall value="0" info="Passcode" /> </filled> </transfer> Hope this helps, Jeff Kustermann |
|
phanimca2006
|
|
| Hi Jeff,
Thank you for sending the code.This will help us concept but it wont help with my browser.My browser will help only w3c supported tags. Please let me know if you had any other tag which supports w3c. Thanks |
|
voxeoJeffK
|
|
| Hi,
Unfortunately the <record> element won't be much help to you. This is the reason Voxeo implements the voxeo:recordcall, so as to fill the need for for recording both sides of a transfer. Regards, Jeff Kustermann |
|
phanimca2006
|
|
| Hi,
This might not help me with my browser. Any ways thanks for the info. Phani |
|
phanimca2006
|
|
| Hi,
Is your browser will support consultation transfer. As i need to test undefined propery on consultation mode. If you have any such code please send me Thanks, Phani |
|
voxeojohnq
|
|
| Hello,
Could you please clarify what you mean by "undefined property"? Also, if this is a required property as defined in the w3c specification, we will support it. Thanks, John Quinn |
|
phanimca2006
|
|
| Hi John,
There is a mode Consultation in transfer tag.In this there is a property undefined,which specifies when the call connects and that call is not filled up with any events like busy,noanswer,disconnect etc. Thanks, Phani. |
|
voxeojohnq
|
|
| Hello,
I did a little digging and was able to find the w3 documentation on a consultation transfer. Unfortunately, at this time we only support bridged transfers. If you have any further questions, please don't hesitate to ask. Regards, John Quinn Voxeo Support |
|
phanimca2006
|
|
| Hi,
How can i implement recording the conversation while transfer. Without using Voxe0:record call. Thanks, Phani. |
|
voxeojohnq
|
|
| Hello,
In order to record both sides of a bridged call, you would have to use voxeo:recordcall. The VoiceXML <record> element will not work for you in this case since it will only record one side of the conference. Since you can't use voxeo specific elements, I don't think there is a way to record both sides. Regards, John Quinn Voxeo Support |
|
mtatum111
|
|
| What would be contained in the name attribute if the transfer was successful. I have seen what it contains if it is not successful such as 'no answer' 'busy' 'network_disconnect' and so on. I was just wondering what it contains if it is indeed successful. Would it be something like 'answered' | |
VoxeoDustin
|
|
| Hey,
The value of the name attribute of transfer will not be populated until the call either disconnects or fails. If the call is answered, this value will be populated when either caller hangs up - [b]far_end_disconnect[/b] if the callee hangs up, and [b]near_end_disconnect[/b] if the original caller hangs up. Cheers, Dustin |
|
mtatum111
|
|
| Can you tell me if the valid shadow variable is
application.lastresult$.mode or application.lastresult$.inputmode I have seen in reading from vxmlguide.com that it is application.lastresult$.mode However, I think that this is not valid. Thanks for any clarification. |
|
voxeojeremyr
|
|
| Hi,
Yes you are correct. When put into a test script I get the following outputs: LOG: application.lastresult$.mode : undefined LOG: application.lastresult$.inputmode : voice According to the VXML specification, it has the following: application.lastresult$[i].inputmode For this interpretation,the mode in which user input was provided: dtmf or voice. Thanks, Jeremy Richmond Voxeo Support |
|
tssaini7
|
|
| Hi,
I am using Voice Xml with TTS engine enabled to convert the text to speech on the Asterisk server. Currently the prompt and the audio elements of Voice Xml playback the message to the calling party. But, I want to know that how to dial from within the vxml code and play the prompt message to the called party. Please help as soon as possible. Regards, Tejinder Singh. |
|
voxeoJeffK
|
|
| Hello,
May we ask some clarification of your environment and your goals so that we may give you an appropriate answer? - Are you using a Prophecy server in conjunction with an Asterisk PBX, or using a different VoiceXML platform within the Asterisk itself? - Do you need specific help with creating outbound calls, or transferring inbound callers to another number? Regards, Jeff Kustermann Voxeo Support |
|
adbadel
|
|
|
Hi all, I'm trying to a do a bridge call transfer but as the other party answers the call, the connection hangs and I get this error: ============ Exception generated when attempting to play post-dial or talk to party C vcommerce.core.util.NonFatalException: NuanceSpeechChannel.setStringParameter({param="audio.sip.OnHold",val="A"}): NonFatalException ? ERROR ============ Does anyone know what it means? and how to fix it? Hope to hear from you all. Regards, Allan |
|
VoxeoDante
|
|
| Hello Allan,
We will need to take a look at the entire log for the call in order to be able to determine what is happening here. If I had to guess I might say you are trying to use PostDial on a Blind transfer which is not allowed, but I really would like to take a look at the logs first before I say what I think the issue is. Please Let us know if you can provide the whole log file. We can also move this post into a private account ticket if you do not want to post your whole log file in a public forum. Regards, Dante Vitulano Customer Support Engineer II Voxeo Corporation |
|
adbadel
|
|
|
Hi, For a conditional or bridge transfer, is it possible to do a conversational dialog with the recipient of the call (callee) before bridging the call to the caller? Hear from you soon. Regards, Allan |
|
voxeojeremyr
|
|
| Hello Allan,
Yes that is certainly possible, however it would involve using CCXML as a wrapper for the application. I am not entirely certain of your exact specifications for the application, but as an example: if you have a call that comes in from Caller A, you would have a CCXML application that would handle the initial call and then do a <dialogstart> to a VXML application, if Caller A needed to be transferred to say an agent, you would do a exit from that VXML using something like <exit namelist="transfer agent_num"/>. This would pass those variables back to the original CCXML wrapper, and it would be coded to use the 'agent_num' variable as a number to call out to. Once the agent answered the call you would then do another <dialogstart> element to play a VXML application to the Agent. Something like, "you have a call from Caller A, press 1 to accept". When the agent pressed 1, you would do another <exit>, returning back to the CCXML application, which then would be coded to do a <join> on both of the call legs. I hope this explains how this functionality would be possible. If your end goal is something different than I assumed, please give us additional details and we would be happy to assist you. Regards, Jeremy Richmond Voxeo Support |
|
adbadel
|
|
|
Hi Jeremy, Thanks for the info. But is there a way by using only VXML. I'm only familiar with VXML and no knowledge of CCXML Hear from you soon. Regards, Allan |
|
jdyer
|
|
| Hello,
To achieve this type of functionality you will require a CCXML Wrapper, but fear not we can help you out in this regard! To start you should review this section in or docs, which I have linked here: ( http://docs.voxeo.com/ccxml/1.0-final/appendixh_ccxml10.htm ). This section focuses specifically on passing values from CCXML => VoiceXML, and you should find it helpful. You will want to make sure you check out the sub-section, ( http://docs.voxeo.com/ccxml/1.0-final/ccxml10_passtovxml.htm ), as it provides some great examples. If you have any questions as you review this material please let us know, as we are most certainly standing by to assist! Regards, John Dyer Customer Engineer Voxeo Support |
|
adbadel
|
|
| Thanks for your help. I will look into it.
Regards, Allan |
|
jas_singh
|
|
| Hi, I need to transfer the call to a variable phone number which I fetch from the database. I have this phone number in a variable say "curRec". I tried doing this using the destexpr attribute of the transfer tag.
<var name="DestVar" expr="'tel:+1'+curRec"/> <transfer name="Xfer" destexpr="DestVar" connecttimeout="30s" bridge="false"> but this always gives me an error - "event error.telephone.baddestination:1|The transfer destination is invalid" Have tried using DestVar populated with the following values but nothing worked DestVar = tel:+13144894443 DestVar = tel:3144894443 please suggest what is going wrong here. Appretiate your help |
|
jdyer
|
|
| Hello,
Without complete logs it is difficult to say for certain what is happening here, but I did notice that you did not have outbound dialing rights in your account. We also noticed that you have no applications in your hosted account. Are you seeing this behavior on a Premise system? If this is the case can you please open a support ticket and attach an export of your XML code, your config.xml file. We would also like you to please produce this behavior once more with the log viewer open. Once you have done so please export the log viewer contents into a text file, and attach this to the ticket for our review. This data will help get us the insight needed to further investigate this behavior. Until then we will be standing by for your response. Regards, John Dyer Customer Engineer Voxeo Support |
|
sundarm
|
|
| Hi,
<?xml version="1.0" ?> <vxml version="2.0"> <menu id="mainmenu"> <prompt> For informations.press 1. To contact us.press 4. </prompt> <choice dtmf="1" next="#info"/> <choice dtmf="2" next="#contact"/> </menu> <form id="contact"> <transfer name="T_1" bridge="true" dest="tel:+919677265555"/> </form> </vxml> This is my code .when i press 2 .i want to connect with the mob no(9677265555).But it is not working what can i do.Help me. Regards Anand |
|
voxeoJason
|
|
| Hi Anand,
It appears as though you may be trying to transfer out to an international number, however I don't see any applications under your account so I am assuming you are using a local version of Prophecy. Unfortunately in order to be able to dial into 'hard' or physical phones with Prophecy you would need either a [url=http://docs.voxeo.com/prophecy/9.0/sipgateway.htm]gateway[/url] or a [url=http://docs.voxeo.com/prophecy/9.0/voipintegration.htm]VoIP provider[/url]. These provide a way for Prophecy to interact with the real world. However you should be able to dial into SIP phones without a problem. Regards, Jason Voxeo Support |
|
voxeoblehn
|
|
| Hello Anand,
I see you are attempting to transfer to a +9 prefixed number. As this is the international dialing prefix for Japan I am assuming you are attempting to transfer outside the US? If so, this is not possible without international dialing privileges on our platform, which is a pay service. I have gone ahead and enabled US and SIP outbound for your account, which is free. If you wish to dial internationally you will need to speak with out sales team in order to enable this function, they can be contacted at sales@voxeo.com If I am mistaken, please give your application another try now and let us know if you encounter any further issues. Best Regards, Brian Lehnen Voxeo Support |
|
nileshpundkar
|
|
| Hi,
will it possible to make a confirence call from VXML application without using CCXML. Regards, Nilesh |
|
voxeoJeffK
|
|
| Hello Nilesh,
VoiceXML has very limited call control facilities since its underlying CCXML wrapper is used for that. Within VoiceXML you can use the <transfer> element to create and connect an outbound call to the already established connection. This would give you a simple 2-leg conference with the VoiceXML application waiting in the middle. Any more complex conferencing would require CCXML or CallXML. Regards, Jeff Kustermann Voxeo Support |
|
asilberfein
|
|
| I'm trying to do a simple sequence where the caller is asked to enter a phone number, and the system then transfers them to that phone number with a fixed caller ID. I've gotten it almost working, but I'm not sure what the syntax would be to concatenate one variable in another. I'd like to replace 'whatGoesHere' with the variable called 'transferNum'. Here's what I have:
<form> <field name="transferNum" type="digits?length=10"> Please enter the phone number you wish to call </field> <var name="DestVar" expr="'tel:+1' + whatGoesHere? + ';ani=2125551212'"/> <transfer name="MyCall" destexpr="DestVar" bridge="true" connecttimeout="120s" transferaudio="Ring3.wav"> </transfer> </form> Can you please provide any guidance as to what to do next? Thanks! |
|
voxeoJeffK
|
|
| Hello,
You'll want to use <filled> to access the value entered in transferNum: <form> <field name="transferNum" type="digits?length=10"> Please enter the phone number you wish to call </field> <filled> <var name="DestVar" expr="'tel:+1' + transferNum + ';ani=2125551212'"/> </filled> <transfer name="MyCall" destexpr="DestVar" bridge="true" connecttimeout="120s" transferaudio="Ring3.wav"> </transfer> </form> Regards, Jeff Kustermann Voxeo Support |
|
sagarg
|
|
| Hi I am having vxml application developed using velocity and spring mvc, I want to transfer uui data to populate the pop-up and also want to receive uui data in my vxml app. Can anyone know how to do that?
Thanks, Sagar |
|
VoxeoDante
|
|
| Hello Sagar,
Does the data need to be in the UUI field specifically, or would you possibly be able to use data is some other predefined SIP header? I only ask this because while we can support sending UUI data, it does require special setup with carrier lines that must be dedicated to a particular customer in the hosted network. If you are working with a premise environment and you have your own TDM lines coming in to your setup, let us know and we can help you figure out how to send the UUI data. Regards, Danté Vitulano Hosted Solutions Engineer [url=http://www.voxeo.com/university/home.jsp] [img=http://www.voxeo.com/images/logos/VoxeoUnivLogo.png/] [/url] [b][color=blue]Interested in Training? Visit the Voxeo University Page to Learn More![/color][/b] |
| login |