| VoiceXML 2.1 Development Guide | Home | Frameset Home |
|
<?xml version="1.0" encoding="UTF-8"?>
<vxml version = "2.1">
<form id="MyForm">
<field name="MyField" type="digits?minlength=1;maxlength=2">
<prompt>
How old are you?
</prompt>
<filled>
You said <value expr="MyField"/>
</filled>
</field>
</form>
</vxml>
3a544c162fc80442b58af315a219336c64ad8675e554...
http://api.voxeo.net/SessionControl/VoiceXML.start?
numbertodial=8001112222&
tokenid=yourTokenIDhere

<html>
<head>
<title>My first token app</title>
</head>
<body>
<form action="http://api.voxeo.net/SessionControl/VoiceXML.start"
method="get" target="_blank">
<input type="hidden" name="tokenid" value="insertYOURtokenIDhere">
Phone Number:<input type="text" name="numbertodial"><br>
<input type="submit" value="submit">
</form>
</body>
</html>
| Variable | Description | Notes |
| tokenid | The token ID assigned to this application by community support. | Required |
| numbertodial | The phone number to dial for this session initiation request | Required |
| callerid | Value to which the callerID will be set for the outbound call. This should be a 10 digit number | Defaults to the BN (billing number) for the telecommunications circuit. |
| calltimeout | Number of seconds to wait for an outbound call to be answered before the call is considered not answered. | Defaults to 35 seconds. Maximum value is 120. |
http://api.voxeo.net/SessionControl/VoiceXML.start?
numbertodial=8001112222&
tokenid=yourTokenIDhere&
MyVar1=foo&
MyVar2=bar&
MyVar3=gronk
| Result Value | Description |
| failure: No answer | The call was not answered |
| failure: Busy | The line is busy |
| Call number is bad | The number provided was not a validly formatted number (stop that!) |
| Invalid Token. | The token provided was not a valid token. |
| Internal error | There was an error in the token initiation |
| Not specified | An error occurred with no specific reason given |
| success | The call was initiated successfully |
| ANNOTATIONS: EXISTING POSTS |
rapts
|
|
| For an outbound call with tokenid, I want to pass some user defined variable to the startURL and want the application to take it and read it during the prompt. For example, I add user defined variable called accountNumber to the start URL, will the snippet given below work:
<?xml version="1.0" encoding="UTF-8"?> <vxml version = "2.1"> <meta name="maintainer" content="YOUREMAILADDRESS@HERE.com"/> <form> <block> <prompt> Your account number is <var expr="'<%requestst.getParameter("accountNumber")%>'"/> </prompt> </block> </form> </vxml> |
|
mikethompson
|
|
| Hi Vangipuram,
It seems to me like you want to use some server-side scripting to make your applications more dynamic! This is definitely possible on the Voxeo platform, and we actually have great documentation on how to do this. You can find out all about passing variables into the querystring here: http://docs.voxeo.com/voicexml/2.0/qs_vars.htm This shows you how to retrieve the parameters from the querystring with php/jsp/asp/coldfusion/etc... Hope this helps, Mike Thompson Voxeo Extreme Support |
|
santy1976
|
|
| Hi Guys,
I am a newbie on VXML stuff, but have gone thru the hello world traditional examples stuff on this site. This site really rocks for newbies .I'm in the process of writing usecases for my project and theres an reqt where in I have to initiate the IVR App whenever the user tries to send a SMS(Short Message Service)(i.e The user requests for a transaction).The IVR would actually call back the userand would narratew the transaction summary which he has been called for.How do I initiate the IVR App in case of SMS ??Please do let me know ASAP. Thanks in Advance.... Cheers Santy |
|
mikethompson
|
|
| Santy,
I am glad to see you are liking our documentation sets! :) Before I dive into this I just want to be clear, any SMS functionality needs to be taken care of outside of the VoiceXML application context. That is, you need to have your own seperate web application which handles the SMS and callerID information. When your web app receives this information, it needs to fire off an HTTP requested token call (check out token calls here: http://docs.voxeo.com/voicexml/2.0/t_15.htm). You will also need to send along any callerID information as a parameter. This token will fetch your invoking application, which should then pull the callerID value of the SMS sender from the querystring, and fill the call value from within the application. Hope this helps explain things... Best, Mike Thompson Voxeo Corporation |
|
cmarko
|
|
| When placing an outbound call over HTTP with VoiceXML.start, it is mentioned that the token router returns results on whether "No answer", "Busy", "Invalid token", etc. How are these results actually pulled back from HTTP and fed back to the HTML or exposed to the web application?
Thanks, Chris |
|
Michael.Book
|
|
| Hi Chris,
The result of a token initiation request is returned as the body of the return itself - as form data. How to access the 'errorcode' would, of course, depend on what method and server-side scripting language you used to make the HTTP request. I hope this helps to get you started. If you would like a specific example for your favorite flavor of server-side scripting, just let us know. We'll gladly pull an example out for you... Cheers, ~ Michael |
|
mallen
|
|
| Is there a way to pass to http://session.voxeo.net/VoiceXML.start a Skype ID instead of a phone number? How do I get my app to call someone via Skype? | |
mikethompson
|
|
| Hi Mallen,
Sadly, there is no way for us to send outbound calls to Skype IDs. The only use of Skype on our platform is through inbound calls to the Skype numbers in your application manager. We would like to be able to one day include outbound calls to Skype as a feature, but we are waiting on Skype to allow such functionality. Best, Mike Thompson Voxeo Corporation |
|
bruce_zhang
|
|
| I tried many phone numbers(available US phone number) to outbound my voice applications and I always receive a failure message: "failure: Call number is bad".
Can you tell me the possible reason? Thanks Bruce |
|
jbassett
|
|
| Hello,
Go ahead and give this a try again. I have enabled the correct setting for outbound US calling onto your account. Let me know if you still have problems. Thanks Jesse Bassett Voxeo Support |
|
fayyazkl
|
|
| Hi,
when i make an outbound call through tokens via http request, can i play a .wav file to the listener. Actually, i dont require to be able to talk to calle. Instead i only need to play an audio file to him and act according to his responses. Is it possible using voiceXML? or for that matter CCXML etc. Please give some directions. Thank you. Fayyaz |
|
jbassett
|
|
| Hello,
You would probably want to use CCXML for the calling out itself and then transition to a vXML document to handle the playing of audio and handling the user repsonse. This is probably where you would want to start. http://docs.voxeo.com/ccxml/1.0/createcall.htm Let me know if you have any other questions. If you try some of this and run into some problems, feel free to open a support ticket. Thanks Jesse Basse |
|
rapts
|
|
|
Hi, How do I get call duration in a token-initiated outbound call. Is there a shadow variable in this type of call, which contains call duration. Thanks. |
|
mikethompson
|
|
| Hi there,
VoiceXML does not have a simple shadow variable available to log the duration of the call, unless you are using <transfer>. This being said, if you'd like to determine how long your VoiceXML outbound call has been, simply use ECMA Script to grab the time as needed. For example: _______________________________________________________________________________________ <var name="dateUnixEpoch" expr="new Date().getTime()"/> <log expr="'*** Milliseconds since the Unix Epoch (January 1 1970 00:00:00 GMT) is: [' + dateUnixEpoch + '] ***'"/> <var name="dateRFC2822" expr="new Date()"/> <log expr="'*** RFC 2822 formatted date is: [' + dateRFC2822 + '] ***'"/> <var name="timeVar" expr="new Date().getHours() + ':' + new Date().getMinutes() + ':' + new Date().getSeconds() + ':' + new Date().getMilliseconds()"/> <log expr="'*** The current time is: [' + timeVar + '] ***'"/> <var name="MyVar2" expr="new Date().getTimezoneOffset()"/> <log expr="'*** THE GMT OFFSET IS: ' + MyVar2 + ' ***'"/> <var name="MyVar3" expr="new Date().getTime() + (new Date().getTimezoneOffset() * 1000)"/> <log expr="'*** THE TIME WITH GMT OFFSET IS: ' + MyVar3 + ' ***'"/> ________________________________________________________________________________________ This site was helpful in explaining why some browsers (like our VXML browsers) return the year as '106'. http://www.quirksmode.org/js/introdate.html Here is my BeginTime code. <var name="BeginTime" expr="(new Date().getMonth()+1) + '/' + new Date().getDate() + '/' + (new Date().getYear()+1900) + ':' + new Date().getHours() + ':' + new Date().getMinutes() + ':' + new Date().getSeconds() + ':' + new Date().getMilliseconds()"/> Hope this helps, Mike Thompson Voxeo Corporation |
|
tf8252
|
|
| My VXML application will initiate calls to an existing IVR (OpenWave Voice Mail platform) via an http request.
The application needs to "listen" for the first few words of the far end speech to verify that the IVR is playing. Can I use the record element to do this? If so can I cut off the recording after the first few words rather than force the app to "listen" to the entire greeting? |
|
VoxeoBrian
|
|
| Hello,
You would be able to utilize the record element to implement what you are trying to do. Here is a snippet from our docs using the record element and limiting the time with the maxtime attribute. <record name="R_1" maxtime="20s" finalsilence="5s"> I hope this helps to answer your question, if you have any others don't hesitate to ask. Regards Brian |
|
adarsh
|
|
| Hello there,
we would like to use our community developer account to provide commercial application to our clients like "HTTP initiated phone applications " to thewebsite of our clients: >open community developer account>get tokenid and outbound previlages for this account>insert this code in webpage> <form action="http://session.voxeo.net/VoiceXML.start" method="get" target="_blank"> <input type="hidden" name="tokenid" value="insertYOURtokenIDhere"><input type="submit" value="Call Sales Person"></form> there will be free 500 outdial minutes per month any usage over this limit usually indicates commercial traffic, billable at $0.18 per minute. we would like to take your permission,what do you say ? how shall we go abt it can you plz guide us. also in calling via HTTP what are the call charges and who will have to pay the charges and how ? |
|
adarsh
|
|
| Hello there,
we would like to use our community developer account to provide commercial application to our clients like "HTTP initiated phone applications " to thewebsite of our clients: >open community developer account>get tokenid and outbound previlages for this account>insert this code in webpage> <form action="http://session.voxeo.net/VoiceXML.start" method="get" target="_blank"> <input type="hidden" name="tokenid" value="insertYOURtokenIDhere"><input type="submit" value="Call Sales Person"></form> there will be 500 outdial minutes per month any usage over this limit usually indicates commercial traffic, billable at $0.18 per minute. we would like to take your permission,what do you say ? how shall we go abt it can you plz guide us. also in calling via HTTP what are the call charges and who will have to pay the charges and how ? |
|
voxeojeff
|
|
| Hi there,
Unfortunately, we limit our developer accounts to 100 minutes per month of outdial access, and we do not allow commercial traffic to be run through our Staging development environment. However, we do have these limitations in our Production environment. If this is something you would be interested in, please feel free to contact sales@voxeo.com and a sales team member will gladly contact you with all the details. Best regards, Jeff Menkel Voxeo Corporation |
|
kumbhamd
|
|
| Hello There,
we are trying to test some outbound calls. I see we can use token to initiate the call using http://session.voxeo.net/VoiceXML.start, my questions is there any other way to initiate the call using the prophecy 8.x software locally? Regards, dk |
|
mikethompson
|
|
| Hello,
If you would like to spawn outbound call in Prophecy, you can do so via similar methodology: http://127.0.0.1:9998/VoiceXML.start?tokenid=MyRouteID&numbertodial=YourNumber As you can see, the only change is the host address and the tokenID is associated with the route ID of the application, not a long string such as in hosted. Hope this helps, Mike Thompson Voxeo Corporation |
|
itgrakesh
|
|
| We are looking for a published web service where we can post VoiceXML to place IVR calls. And there should be some mechanism to get the response and details of the placed calls.
Also I want to know what are Call Start Tokens (Outbound Dialing Tokens) and how to write or use these tokens. The intend is to your system to test our prototype application |
|
mikethompson
|
|
| Hi Rakesh,
I'd like to answer your last question first, as I think this will help clarify things... A call start token is a unique string which you tie to an application mapped in your Voxeo Application Manager. It's a means of launching your VoiceXML/CallXML/CCXML applications without having to dial into them first. In order to do this, you simply need to send the token ID to the following servlet: http://api.voxeo.net/SessionControl/4.5/VoiceXML.start?tokenid=YourTokenIDHere This will ultimately find the application tied to that token, and begin processing the output. I should mention VoiceXML.start brings up a stock CCXML script under the covers to launch the outbound call. Then, when the call is answered, it launches your VoiceXML application as a dialog. This being said, when using VoiceXML.start, you need to pass in your destination phone number with the numbertodial parameter. So again, we should have something like this: http://api.voxeo.net/SessionControl/4.5/VoiceXML.start?tokenid=YourTokenIDHere&numbertodial=4075551234 Both CallXML and CCXML are capable of sending out calls by themselves, so when using CallXML.start and CCXML10.start, you'll need to hard code the destination in your actual start document, instead of passing in numbertodial like the VoiceXML servlet. All this being said, you should not need a web-service to launch these calls. You can code a simple PHP script which uses CURL to send a request to api.voxeo.net and launch the script. On a large scale deployment, you could tie this server-side code into a database and dynamically generate calls to destinations pulled from a database. Hope this helps, Mike Thompson Voxeo Corporation |
|
ragjeff
|
|
| Hello,
I see that in a previous post you mention how to spawn an outbound call using Prophecy locally, described here: If you would like to spawn outbound call in Prophecy, you can do so via similar methodology: http://127.0.0.1:9998/VoiceXML.start?tokenid=MyRouteID&numbertodial=YourNumber I may be missing something really obvious, but what is the route ID, and where do I find it for an application? Also, if I eventually use a telephony card to use my own phone lines to run this application, is this how I would initiate an outbound call, or is there another way to initiate using a local phone line? |
|
mikethompson
|
|
| Hello,
The RouteID is the name you give our route when in the call routing section of the Prophecy Administration Page. You can name it whatever you want. As for your other question, this would be how you spawn an outbound call over a regular phone line. Of course, Prophecy will need to be fully configured with your hardware in order to do this effectively. For instance, have a dialogic card installed on the server which is used in conjunction with Paraxip (SIP gateway software). Hope this helps, Mike Thompson Voxeo Corporation |
|
mike.j.stein
|
|
| Hello,
I'm having trouble with a simple "Hello World" test on outbound dialing, with my community developer account. I've got a token for my account, and I've mapped my .vxml file correctly (when I call the skype number for the account, I hear my hello world test). But when I try the outbound call, I get the following error: event: name="error.dialog.notstarted", callid="3fd11e63619c10ae544b4f0786cc60cc", error="no dialog target available", reason="no dialog target available", dialogid="3fd11e63619c10ae544b4f0786cc60cc" Has anybody else had this problem, and any ideas for a solution? Thanks, Mike |
|
VoxeoDustin
|
|
| Hey Mike,
I took a quick look at your account and does not appear you have a token nor are you setup for outbound dialing. If you're interested in setting this up, please open a support ticket and we can provide you with further details. Thanks, Dustin |
|
mikejstein
|
|
| Hi Dustin,
I realized that there was some confusion because I've actually wound up with two accounts : "mike.j.stein", which I initally posted on, and "mikejstein", which does have a token. I'm posting under the correct account, where I've been having the trouble with dialing tokens. It's the problem as described in my previous post - getting the no dialogue found error. Thanks, Mike |
|
mikethompson
|
|
| Hello,
There is currently an issue with sending outbound calls via token in Prophecy 8 VoiceXML staging. Specifically, there is a configuration issue in the environment, which needs to be corrected. In speaking with my Platform Operations team, the issue should be fixed during this weekend's maintenance window. As such, come Monday, your applications will successfully launch out of Prophecy 8 VoiceXML in staging. Best, Mike Thompson Voxeo Corporation |
|
eraldo
|
|
| Is there a way to pass to http://session.voxeo.net/VoiceXML.start a SIP number instead of a phone number? I mean something like: http://api.voxeo.net/SessionControl/VoiceXML.start?
numbertodial=sip:17473083562!198.65.166.131@sbc-staging-internal& tokenid=yourTokenIDhere |
|
VoxeoDustin
|
|
| Hey,
That will work just fine, though you can probably leave off the country code and simply pass it as [b]sip:4075551212!66.77.88.99@sbc-staging-internal[/b] Cheers, Dustin |
|
eraldo
|
|
| Thanks a lot | |
eraldo
|
|
| i'm testing an outbound vocicemail application via http, i entered this line in my web browser: http://api.voxeo.net/SessionControl/VoiceXML.start?numbertodial=sip:17473083562!198.65.166.131@sbc-staging-internal&tokenid=hereIputMyTokenID
and then i receive a call in my internet phone(gizmo), but when i answer it there's no voice, there's nothing, and it was supposed to be a voice saying:Hello World. This is my first telephone application. my Starturl application is: <?xml version="1.0" encoding="UTF-8"?> <vxml version = "2.1" > <form> <block> <prompt> Hello World. This is my first telephone application. </prompt> </block> </form> </vxml> i don`t know why i don`t hear anything. Maybe i need to add some extra code in my application. PLEASE HELP ME!!!. |
|
voxeojeremyr
|
|
| Hi eraldo,
To further investigate as to what is exactly happening in your application, I would like to see the application logs. If you would open a support ticket and attach a copy of the log after you initiate the outbound call, I would be happy to take a look at why this is happening. If you have any questions, please let me know. Thanks, Jeremy |
|
eraldo
|
|
| Hi,
I would like to know how can we get the values returned by the VoiceXML.start token router when placing an outbound call over HTTP with VoiceXML.start? because i was trying to find some voxeo docs that maybe could help me but i couldn't get it.And other question, is it possible to send the results of token router, like 'busy', 'no answer',etc..., to a servlet instead of a jsp file? Thanks... |
|
mikethompson
|
|
| Hello,
Would you be so kind as to provide me with an example of what you're looking to do? Are you simply looking to pull the parameter values into your application? If this is the case, you'll need to use server-side scripting in your invoked script to pull the parameters from the querystring. We happen to have some good documentation on this very feature here: http://docs.voxeo.com/voicexml/2.0/qs_vars.htm As for your second question, you can grab the result of the token request by grabbing the message body from the HTTP response header. This can be done easily via server-side as well. Hope this helps, Mike Thompson Voxeo Corporation |
|
schleiff
|
|
| What a great service! I can recognize that this is a very powerful capability. However, I'm still plagued by newbie ignorance.
When I click the token to manually trigger my outbound call, it works great; however, when I try to paste the http into my browser (and include the right phone number and token) I get back "Invalid Token". Any hints? Thanks again. |
|
schleiff
|
|
| Me again! My prior problem was because when I copy-pasted the tokenID, I failed to copy the complete token.
Now I'm to the point where my phone rings, but as soon as I answer it the browser displays "failure: Not specified". I consider this to be progress, because now I've progressed far enough to make the phone ring. |
|
jdyer
|
|
| Hey Marty,
I am afraid we are going to need a bit more information from you on this issue so we can get a firm handle on whats going on. First off we would like to see the URL you are using the initiate the cell, second we would like you to replicate the issue with the debugger open and send us the session logs for an instance of this issue. The application debugger is the best diagnostic tool that we have for getting insight into applications that aren't behaving the way we want them to, but it takes a bit of experience to intuit the messages displayed. Click on the "account" tab at the top right of evolution site, and select the "application debugger" prior to making test calls to capture the data. You can then select the "support" tab in the debugger to send us a problem report. Some additional links on this utility are provided below: http://docs.voxeo.com/voicexml/2.0/loggerfeatures.htm http://docs.voxeo.com/voicexml/2.0/mot_loggermessages.htm http://docs.voxeo.com/voicexml/2.0/gettingsupport.htm We'll be standing by for your response! Regards, John D. Customer Engineer Voxeo Support |
|
schleiff
|
|
| Here's some comments and a question about the list of possible values returned by the VoiceXML.start token router. The responses I see differ in minute ways, so I'm trying to confirm that they are indeed from the same place (i.e., the token router). I see the following:
Invalid Token. (upper case T and a period) failure: Busy (preceded by the failure:) failure: No answer (Preceded by failure:) success (not in the list) |
|
MattHenry
|
|
|
Hello Marty, As I understand it, this posting is twofold. Assuming that I am correct in my interpretation of your posting, I will post replies inline for your review and conformation. In the event that I have misunderstood something, please let me know: 1 - Are all of these results returned from the token router? Matt: Yes indeedy 2 - The results returned from the token router are formatted slightly differently than what is listed in the documentation Matt: Likely a goof in the documentation. I'll see that this is corrected ASAP. ~Matthew Henry |
|
vaibhavsinha
|
|
| Hi,
I think this is a great platform! I have a question on whether multiple sessions are possible: is it possible for multiple callers to call different destination numbers at the same time? For example, Abe and Bob are two users who are calling my direct dial-in number and they want to be connected to two different people (Abe to Lincoln and Bob to Hope) at the same time. Can this be done using either VoiceXML.start or a token-initiated mechanism? |
|
voxeojeremyr
|
|
| Hi,
Yes, you can certainly accept multiple phone calls. Each, phone call would be running as its own thread. A good analogy would be a web browser. You can open up multiple web browsers and have then each fetching a different page at the same time. The VXML browser works in the same way. Regards, Jeremy Richmond Voxeo Support |
|
ekramer
|
|
| It seems that when using token-initiated calling, if the party doesn't pick up, Voxeo will retry up to a total of three times. Could someone point me to the documentation of why this happens and how to control it? Would using CCXML for my outbound app instead of VoiceXML give me more control? Thanks! -Eric | |
VoxeoDustin
|
|
| Hello ekramer,
This will only occur on Voxeo's hosted platform and is due to logic built in our session border controllers. They will try the call across up to 3 separate carriers as a failover if any one call fails. There are methods to circumvent the failover routing, however we highly recommend that you do not do this. If one carrier is experiencing issues, then 100% of your calls will fail. With the failover routing, we will seamlessly revert to a working carrier. Regards, Dustin Hayre Customer Support Engineer II Voxeo Support |
|
tennvol
|
|
| After clicking on the 'embarrassment' link in the first paragraph, I'm wondering if that is the result of long hours of vxml debugging? | |
voxeoJeffK
|
|
| Hello,
As many times as I've been through our documentation pages I've never clicked that link. I am now going to go over to his desk, and point and laugh at him for the both of us. Regards, Jeff Kustermann Voxeo Support |
|
team1
|
|
| Hi,
i think i'm having a problem with IP address & port number. when i added in another IP address & port number it worked. but not mine. by any chance do you know where the problem lies with? <?php include 'openDB.php'; $number=$_POST['numbertodial']; $comment=$_POST['comment']; header('Location:http://localhost:9990/VoiceXML.start?tokenid=insertyourtokenid¶m1='.$comment.'¶m2=text&numbertodial=sip:'.$number.'@172.20.20.16'); ?> the IP address and the port number stated is the one i'm having problem with. Thanks! |
|
VoxeoDustin
|
|
| Hello,
Which portion are you having difficulty with? http://localhost:9990/VoiceXML.start? or sip:'.$number.'@172.20.20.16')? 172.20.20.16 is a private IP address. Is this a machine on your network with a SIP client? Regards, Dustin Hayre Solutions Engineer Voxeo Corporation |
|
MattHenry
|
|
|
In the interest of clearing up any possible confusion, there are several annotations here that reference the deprecated token API: * http://session.voxeo.net/VoiceXML.start This API should no longer be used by developers: Instead developers should reference the new-and-improved API: * http://api.voxeo.net/SessionControl/VoiceXML.start ~Matthew Henry |
|
bradnemer
|
|
| The demo URLs didn't work for me, but Support gave me the following one, which works great:
http://session.voxeo.net/SessionControl/4.5.40/VoiceXML.start |
|
leu
|
|
| I tried my french phone number to outbound my voice applications and I always get this failure message: "failure: Not specified ".
Can you please tell me why? Thank you Lea |
|
voxeoJeffK
|
|
| Hello Lea,
To best investigate we'd recommend testing with the Application Debugger running. Then near the top-right of the window you can send the debugger output to us. We'll examine the details to discover what is occurring. Regards, Jeff Kustermann Voxeo Support |
|
aantik
|
|
| Hello there, I have a question. Suppose we need an aplication that a customer needs to be informed when an operation on his/her credit card by an outbound call. The IVR outbound call mus be linked to a vXML application on your infraestructure, but every customer has a different credit card number and the call must inform about the amount of the operation. So, I understand how to assign variables by a server side scripting but in this case the IVR application must call the dynamic vxml passing the credit card number in order to provide the correct operation. How do you do that?. Can you pass some parameter (credit card number) to the "http://api.voxeo.net/SessionControl/VoiceXML.start" request so the main vXML application can call the correct dynamic page for the matching credit card number? | |
VoxeoDante
|
|
| Hello Aantik,
You would need to utilize server-side scripting on your side to capture the variables and print that data into the VXML as simple VXML, but yes, you can do this. When you pass parameters in the API call those parameters are tacked on and sent over to the URL defined in the application manager. http://www.vxml.org/frame.jsp?page=qs_vars.htm So the Flow might look something like this; 1 - http request to http://session.voxeo.net/CCXML10.start is kicked off with some variable/value pairs: http://api.voxeo.net/SessionControl/CCXML10.start?tokenid=abc123?myVar1=foo&myVar2=bar 2 - the primary application URL that is mapped will then be loaded: http://myServer.com/apps/mCCXMLApp.jsp?tokenid=abc123&myVar1=foo&myVar2=bar I hope that clears things up for you. 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] |
|
dhavalkapasi
|
|
| I would like to make an outbound call to multiple recipients at one time with the same message using the HTTP API for a Poll. Recipients will enter a digit as a response and we need that response per user sent back to the application. Once the user enters a response, would also like to send them a follow-up thank you message.
I went through all the annotations and could not figure out how this is possible. Can you help me guide if this is possible and if yes, how it is possible? Also, can you enable outbound dialing on my account? Thank you in advance. |
|
MattHenry
|
|
|
Hi there, Outbound dialing to multiple recipients is indeed possible with our technologies. It's a fairly straightforward process where you'd invoke the token multiple times, changing the numbertodial string on each invocation of the API. Note that it is the developer's responsibility to throttle calls, and we ask that on our staging network that developers limit themselves to only 2 concurrent calls up at any given time. You can find a helpful how-to on this topic in our blogs: * http://blogs.voxeo.com/voxeodeveloperscorner/2009/03/16/how-to-outbound-notification-applications/ Regarding your request for outbound dialing access, this permission has been granted; please use this with sound judgment, and be mindful of our EULA policies. Regards, ~Matthew Henry |
|
abeall
|
|
| Hello,
How do you pass query string parameters into the voice xml script using the example above: http://api.voxeo.net/SessionControl/VoiceXML.start? numbertodial=8001112222& tokenid=yourTokenIDhere& myparam1=123& myparam2=abc How does the voice xml script get access to the query string parameters? Thanks Art |
|
MattHenry
|
|
|
Hi Art, In order to pass variables from the API to the start URL, the document that is fetched should be dynamic (eg, .NET, PHP, etc). The dynamic markup in question would be coded to extract the querystring parameters and import them into the VXMLcontext. For instance, when using the API invocation: http://api.voxeo.net/SessionControl/VoiceXML.start? numbertodial=8001112222& tokenid=yourTokenIDhere& myparam1=123& myparam2=abc A PHP-capable VXML document might do something like this: <xml version="1.0"> <?php //grab each param $myPHPVar1 = $_REQUEST["myparam1"]; $myPHPVar2 = $_REQUEST["myparam2"]; ?> <vxml version="2.1"> <var name="VXMLVar1" expr="<?php echo $myPHPVar1?>"/> <var name="VXMLVar2" expr="<?php echo $myPHPVar2?>"/> <form> <block> <log expr="'PARAMS = ' + VXMLVar1 + ' and ' + VXMLVar2"/> </block> </form> </vxml> ~Matthew Henry |
| login |
|