cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
446
Views
0
Helpful
4
Replies

Check data between scripts

OrBaram
Level 1
Level 1

I would be very happy for your assistance!

I have a script that I made for a bank, and I need help with the process of deploying the script because the go live will be done branch by branch, in a slow and controlled manner.

The client wants a separate "go live" script, in which they can add the branches that will be go live, and the main script will check if they exist in the second script.

The point is that, from the client's perspective, they want to add the branches on the page of the second script as a field when there is a parameter, which means not through file or document they upload.

I tried to create a SubFlow, but when I put the branches I want to deploy as "parameters," it seems like the script didn't recognize them (when I didn't put the values as parameters, everything worked fine, so it seems to be the behavior of the Subflow).

I would really appreciate your help, thank you very much.

4 Replies 4

janinegraves
Spotlight
Spotlight

I'd be happy to help,  but I don't understand your scenario. Can you give a more detailed explanation and an example?

Do you have a main call studio app (script 1) that is supposed to invoke a different app (script 2) if the call is for a bank branch that has been deployed to VXMLServer? And if that branch hasn't been deployed yet, then script 1 should do something else?

If so, why don't you just use a database or 'business hours' logic to store which branches have 'gone live' already. .

In script 1 - you can use a Call Studio Database element (or use a REST client element to query business hour logic) to check which branches have 'gone live'.

If  that wouldn't work, please explain more...

 

janinegraves
Spotlight
Spotlight

If you are using 2 different Studio apps, then you'll want to use the SubdialogInvoke element in App1 to invoke App2 as a subroutine.

In this case, the easiest way to pass data to App2, is to add it to the URL. The URL should look like: 
URL:   /CVP/Server?application=App2&param1=value1&param2=value2
LocalApp: true
ReturnValue:<name matching App2's SubdialogReturn element return value - see below >

In App2, the data will be available as Session Data with the names/values from the URL string (param1, param2 in this example). --It'll also display in the Activity Log of App2 at the start
--But it won't display in the Substitution Tag Builder. But, you can access it as {Data.Session.param1} etc.

App2 should end with a SubdialogReturn element (not CVP_Subdialog_Return) and MUST return at least one name=value pair in order not to cause a runtime error. For example: status=success  

Back in App1, if you configure the setting named ReturnValue with this name (example, ReturnValue: status) then it will magically be saved as element data for the SubdialogInvoke element with that name and value. It won't display in the Substitution tag builder, but it's there and you can reference it as {Data.Element.SubdInvoke_01.status}.

 

@janinegraves this is all UCCX based on the label.

To OP: The only thing that comes to mind is to use the parameters to have a list of allowed branches something "Branch1|Branch2|etc". Then you can use the UCCX API to look at the parameters of the other application to see if it's been added or not. This feels overly complex and it really doesn't make a lot of sense what you're doing, but I suspect there's more to this than what you've posted.

david

As others have mentioned, it isn't clear what you mean by a cutover. How would the calls get to the script if calls weren't being directed to it. I infer that you mean there are some different actions based on the location. What kind of variables/values are different based on the branch? The other questions can't be addressed until we have a better understanding of what you are trying to accomplish.