cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2365
Views
0
Helpful
18
Replies

CVP - Should we use Sub Dialog or Sub Flow or App Jump to move between CVP Applications

DEWAYNE BRANDON
Level 1
Level 1

All,

Looking for design input and/or recommendations on best approach for moving between call studio applications.  We are in the process of creating complex self-service applications in call studio (10.5) and want to have a modular design where we can have reusable functionality contained in smaller applications that can/will be called multiple times from the main applications.  We are not sure if the best approach is to use the Sub Dialog Start and Return Elements as the method to move between the applications or if we should the new Sub Flow functionality or Application Jump functionality.

The concern with using the Sub Dialog approach is a possible performance impact to the JVM if we go with that approach vs the concerns with the limited use of the Sub Flow approach by users because of the relative newness of the feature.  It appears that using the application jump is the more common approach that we hear about, but wanted to get input and/or recommendations from users who have used any of the approaches.

Any input that could be provided would be greatly appreciated.

Thanks,

18 Replies 18

Parent Application : using subdialog invoke>subdialog return.

For child application tried to capture session data. but not receiving any value.

Below param pass through Parent application. 

<form id="start">
<block>
<var name="P1" expr="'English'" />
<var name="P2" expr="'123456'" />
<var name="P3" expr="'3939393'" />
<var name="P4" expr="'949238490238420938420984902'" />
<var name="P5" expr="'vxml1'" />
<var name="P6" expr="'3939393'" />
<return namelist="P1 P2 P3 P4 P5 P6" />
</block>
</form> 

Child application receiving no data.

<?xml version="1.0" encoding="UTF-8"?>
<vxml xmlns="http://www.w3.org/2001/vxml" version="2.1" application="/CVP/Server?audium_root=true&amp;calling_into=ChildService_IVR&amp;session_id=xxx.xxx.x.xxx.1674470798671.17.ChildService_IVR">
  <catch event="error">
    <var name="audium_action" expr="'custom_disconnect'" />
    <var name="audium_type" expr="_event" />
    <var name="audium_message" expr="_message" />
    <submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action" />
  </catch>
  <form>
    <var name="P1" />
    <var name="P2" />
    <var name="P3" />
    <var name="P4" />
    <var name="P5" />
    <var name="P6" />
    <block>
      <assign name="audium_vxmlLog" expr="''" />
      <submit next="/CVP/Server" method="post" namelist="P1 P2 P3 P4 P5 P6 audium_vxmlLog" />
    </block>
  </form>
</vxml>

Any suggestion to find cause to resolve. Also what are the impact if we use application transfer instead of subdialog flow.

 

 

Are you using a Call Studio app to do the Subdialog_Invoke and to write the child app?
If so, the child app must begin with a Subdialog_Start element and list the VXML Params (P1, P2, etc) that it wants to retrieve. List them one per line in the repeatable setting named Parameter.

 

I just tested this. And my vxml code looks like yours. In the subdialog app, you MUST start with Subdialog_Start and list the param names you're receiving (1 per line). They'll be saved as Session Data. But they don't show in the logs (for security purposes) the only way to know you've gotten them is to either play them out or use Add To Log.  See snapshots below where I passed P1=Testing. Then played that out in the subdialog app.

I tried to log information on addtoLog but there also null value is getting logged.

After adding other audio element and assigning this value it got printed. I don't understand this behavior.

However, thanks for sharing this information, this is very much helpful for me.