I have a SurVo that is called from another SurVo by netget. In this new SurVo, I am prompting for a credit card number and expiration date. Then I am going to pass these values on to another netget where I will call my credit card webservice with this information. I am passing the credit card number and the expiration date as A1 and A2. However, the dollar amount was obtained through a database read in another earlier SurVo. There is also a parameter where I can pass a note to the credit card processor. I want to send a message there with the customer ID. Since both of these values are not obtained within this particular SurVo I am assuming they are sent via "Passthrough data" parameters. Is that correct? If so, how do I need to set these up or assign values to them? The ifbyphone doco seems a little skimpy in talking about that.
BTW - When I get this done I may post it under the "interesting applications" section. I am writing an Accounts Receivable application that will allow businesses to use voice broadcasts to call their customers that owe them money. The customers may pay using a credit card. One of my customers can't wait for me to make this available to them. I imagine that there will be a huge demand once it is in place.
Thanks for any help you can offer. I'm pretty sure this is bombing when I'm trying to call the credit card validator webservice.
Passthrough data is absolutely the way to go. We don't use it for any processing, we just take it in at the beginning of the Survo and pass it back as part of the NetGet. A couple pointers:
Passthrough data (p_t) can change every time you do a NetGet. That is, if your code is gathering more information as the call progresses, you can add information to p_t each time you do a NetGet.
Secondly, you can add multiple key\value pairs by delimiting them with |. If you wanted to get a user_id and a pin, you could use the following p_t: user_id|1234||pin\9876, where the single bar separates the key from the value, and the double bar delineates the pairs.
So, just how do you assign values to the passthrough data? When looking at the net integration screen I see that "passthrough data" is one of the drop downs I can choose as the parameter type. Let's say that in a webservice I get a dollar amount, as I described above. In the first webservice call, I returned it in a user parameter called amtowed. Let's say the value was $124.56. Can you tell me the steps necessary to take that value and pass it as passthrough data to my credit card processing webservice? I understand the whole parameter1|value||parameter2|value thing. But I'm thinking that that comes into play when I am building the return xml while in the webservice. In my net integration definition section inside my SurVo, how do I get the value of
amtowed|124.56||ccnote|"This is a note"
into the passthrough parameter? I keep hitting brick walls when I try this. Then when I call the next webservice, does it get passed in as this type of string so that I would need to parse it out in order to get the correct value?
Maybe if you could point to an example of passthrough data being used sucessfully, that may help.
On your first webservice you'll be echoing back XML to redirect the call. That is where you add in the pass through. So for example, your XML is going to look something like this:
<action>
<app>SurVo</app>
<parameters>
<id>75</id>
<user_parameters>
<param1>value1</param1>
<param2>value2</param2>
</user_parameters>
<p_t>mypassthrough data</p_t>
</parameters>
</action>
Where the pass through is set between the and tag. Note that you should probably avoid the double quotes. I *think* the spaces should work, but you should test. Remember the pass through will show up in a URL (for the next NetGet), so all data must be URL compatible.
If this doesn't answer your questions, PM me and we can set up a call if you like.
-- Edited by KhyleK on Tuesday 26th of April 2011 01:00:17 PM