Author |
Message |
|
|
RajeshBairagoni
Joined: Dec 16, 2013
Messages: 98
Offline
|
Hi,
We are calling external vxml application using sudialog , I write all the subdialog logic in the VXMLSERVLET node. I want to set the subdilaog return value to the DD project label variables.
Please guide me here or provide me some sample application.
Thanks,
Rajesh
|
|
|
|
|
NeilGoldsmith
Joined: Nov 6, 2013
Messages: 902
Offline
|
You need to return the value in a namelist like below:
1:<vxml version="2.1" xmlns="http://www.w3.org/2001/vxml" xml:lang="en-us">
2:<meta name="author" content="Avaya Aura Orchestration Designer"/>
3:<meta name="runtime-version" content="07.00.18.01"/>
4:<meta name="runtimecommon-version" content="07.01.00.00"/>
5:<meta name="copyright" content="Copyright (c) 2002-2011, Avaya"/>
6:<form id="untitledReturn1">
7:<block>
8:<var name="myOutput" expr="'somevalue'"/>
9:<return namelist="myOutput"/>
10:</block>
11:</form>
12:</vxml>
|
|
|
|
|
RajeshBairagoni
Joined: Dec 16, 2013
Messages: 98
Offline
|
Thanks!! for the reply.
can you please let me know how to catch external vxml returned values in Avaya DD VXMLSERVLET and assign to project variables ?
Thanks,
Rajesh
|
|
|
|
|
NeilGoldsmith
Joined: Nov 6, 2013
Messages: 902
Offline
|
You would invoke the subdialog and save off the return value.
In this case, I have an OD app with a complex variable called child1 that has a field called output1 which is where I want to store the return value.
1:<vxml version="2.1" xmlns="http://www.w3.org/2001/vxml" xml:lang="en-us">
2:<meta name="author" content="Avaya Aura Orchestration Designer"/>
3:<meta name="runtime-version" content="07.00.18.01"/>
4:<meta name="runtimecommon-version" content="07.01.00.00"/>
5:<meta name="copyright" content="Copyright (c) 2002-2011, Avaya"/>
6:<form id="child1">
7:<var name="child1___output1"/>
8:<subdialog name="child1" src="/child/Start?___DDSESSIONID=F406A5714E6725CF65CDF08C7DBD56E8%3A%2Fparent&sagecall=english&sagecfhport=50637&sagecfhhost=LU110978" method="get">
9:<filled>
10:<assign name="child1___output1" expr="child1.output1"/>
11:</filled>
12:</subdialog>
13:<catch event="connection.disconnect">
14:<goto next="AvayaDefaultDisconnectHandler?___DDSESSIONID=F406A5714E6725CF65CDF08C7DBD56E8%3A%2Fparent"/>
15:</catch>
16:<block>
17:<submit next="untitledReturn1?___DDSESSIONID=F406A5714E6725CF65CDF08C7DBD56E8%3A%2Fparent" namelist="child1__output1" method="post"/>
18:</block>
19:</form>
20:</vxml>
|
|
|
|
|
RajeshBairagoni
Joined: Dec 16, 2013
Messages: 98
Offline
|
When i try to access Avaya OD variables inside Vxml servlet with user defined vxml piece of code , its considering as string and not assigning the returned values by another vxml application (not an Avaya VP application ) to Avaya OD variables.
Note: I have tried the way you have mentioned.
Can you please help me ?
Thanks
|
|
|
|
|
RajeshBairagoni
Joined: Dec 16, 2013
Messages: 98
Offline
|
Hi,
If you consider below piece of code
I am invoking Avaya VP application using subdialog in vxml servlet.TestApp is returning output1 , when i assign
out.println("<assign name=\"output1\" expr=\"testSubdialog.output1\"/>");
I do not see the value with testSubdialog.output1
out.println("<var name=\"input1\" expr=\"'test'\"/>");
out.println("<var name=\"output1\" />");
out.println("<subdialog name=\"testSubdialog\" srcexpr=\"\'http://hostname/TestApp/Start\'\" namelist=\"input1\">");
out.println("<filled>");
out.println("<assign name=\"output1\" expr=\"testSubdialog.output1\"/>");
out.println("</filled>");
out.println("</subdialog>");
and also how do we assign testSubdialog.output1 value to Avaya OD variable using user defined vxml servlet.
Thanks
|
|
|
|
|
RajeshBairagoni
Joined: Dec 16, 2013
Messages: 98
Offline
|
Hi NeilGoldsmith,
As you have given some piece of code .
Its looks like you have imported another AOD app as a resuable module in Avaya OD.
Here I am writing plain vxml code with subdialog to call another AOD application inside VXML Servlet node of Avaya OD .
I am not able to catch response of called application.
Can you please suggest me the way , how to call another vxml application with plain vxml subdialog ?
Thanks
Rajesh
|
|
|
|
|
NeilGoldsmith
Joined: Nov 6, 2013
Messages: 902
Offline
|
OD uses standard VXML. The subdialog call in my example, upon filled you reference the subdialog by name and the return value: child1.output1
In OD, we store that as a complex var field: child1___output1 The underscores are a notation to store the value as complex. You could bypass the complex format and just use a simple name as a simple variable.
Can you show me both the subdialog and calling VXML? You can also look at the AVB on the MPP to see how it is handling your VXML to make sure there aren't any errors. Look at the sessionslot log for the AVB.
|
|
|
|
|
AmbikaSivasurianarayanan
Joined: Nov 8, 2013
Messages: 29
Offline
|
Hi Neil,
From my parent OD application I am calling a second OD application using SubDialog. I am also dynamically updating the "webappentrypoint" and "inputparms" in the java file using the
@Override
public String updateWebAppEntryPoint(SCESession mySession, String appName, String moduleName, String oldEntryPoint)
and
@Override
public void updateInputParams(Collection inputParams, SCESession mySession)
In the called application I am returning an output variable, how do I see this in the calling(parent) application?
Appreciate your help on this.
|
|
|
|
|
WilsonYu
Joined: Nov 6, 2013
Messages: 3950
Offline
|
What do you mean by returning an output variable? Values are supposed to be returned using output parameters from the called app.
|
|
|