<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <title>Going to the next node dynamically</title>
  <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_thread?p_l_id=&amp;threadId=11129306" />
  <subtitle>Going to the next node dynamically</subtitle>
  <id>http://developer.cisco.com/c/message_boards/find_thread?p_l_id=&amp;threadId=11129306</id>
  <updated>2013-05-18T15:28:40Z</updated>
  <dc:date>2013-05-18T15:28:40Z</dc:date>
  <entry>
    <title>RE: Going to the next node dynamically</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11544173" />
    <author>
      <name>Aaron Harrison</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11544173</id>
    <updated>2013-02-04T22:17:09Z</updated>
    <published>2013-02-04T22:17:09Z</published>
    <summary type="html">Hi
From your earlier description, you basically want to have a number of available 'actions', based on 'inputs' which will be DTMF digits. You want to be able to change the flow 'at runtime', but you've not described what factors should change that other than suggesting that tomorrow it might be different. 
To do that you basically need to give the customer the option to press a digit, and collect it in a variable. You would then use that input digit to look up a mapping of some sort - that could be:
- Against a parameter on the script
- Against a database
- Against an XML file
- Any of the last two above could have their values modified either through a management script (telephone interface based or web if you have premium) or through whatever means you like. If it's simply going to change based on day of the week, then you can again set that up as part of the lookup data in any of those methods.
So for example, user presses 1, you look up 1 against your XML file and that tells you that the action is 'recent transactions'. Script has
IF returnvalue == "recent transactions"
true: goto 'recenttransactions'
Perhaps if you can detail what you requirements actually are there will be a better way of designing this. The point is that you only have so many 'things' you can do, and you only have so many potential inputs from a phone, you just need to map the two externally.
This isn't something that is commonly done, as generally the prompts you play to a user will be prerecorded - e.g. press 2 for recent transactions. There are ways around that as well, of course..
 
Aaron</summary>
    <dc:creator>Aaron Harrison</dc:creator>
    <dc:date>2013-02-04T22:17:09Z</dc:date>
  </entry>
  <entry>
    <title>RE: Going to the next node dynamically</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11149166" />
    <author>
      <name>Fidelus TAC</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11149166</id>
    <updated>2013-01-25T20:35:37Z</updated>
    <published>2013-01-25T20:35:37Z</published>
    <summary type="html">As Jonathon pointed out, it's highly recommended to not increase the maxiumum number of steps.  This is regarded as Cisco best practices.  Howerver, if you need to change this value, it can be done in system parameters under applications.  Be very careful with changing this.  It can have a significant negative effect on the performance of the server.</summary>
    <dc:creator>Fidelus TAC</dc:creator>
    <dc:date>2013-01-25T20:35:37Z</dc:date>
  </entry>
  <entry>
    <title>RE: Going to the next node dynamically</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11143856" />
    <author>
      <name>Binny Mathew</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11143856</id>
    <updated>2013-01-25T18:28:46Z</updated>
    <published>2013-01-25T18:28:46Z</published>
    <summary type="html">I got your point. But do let me know if you have any suggestions on how to achieve this.
 
Also how can we increase the steps as in one of my recent project i got an exception regaring this and then we had to do some work around on that.
 
Binny</summary>
    <dc:creator>Binny Mathew</dc:creator>
    <dc:date>2013-01-25T18:28:46Z</dc:date>
  </entry>
  <entry>
    <title>RE: Going to the next node dynamically</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11141060" />
    <author>
      <name>Jonathan Adams</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11141060</id>
    <updated>2013-01-25T16:11:02Z</updated>
    <published>2013-01-25T16:09:23Z</published>
    <summary type="html">Honestly, don't waste your time making different versions of the script before you present it. Have your basic features for demonstration purposes if that's what they want. Present it while letting your customer know that you're flexible and can fit it to their needs/specifications. Don't want that menu option? Cool, I can do that. Want another one that does ____? Got it, I'll make sure to change the call flow diagram and program the script accordingly, etc. If you're so tied up on having a hard set version of the script that they can't have you change, they're probably not going to buy it. I know I wouldn't.

As for the default maximum number of steps, usually you don't want a script going over that, but it can be increased significantly.</summary>
    <dc:creator>Jonathan Adams</dc:creator>
    <dc:date>2013-01-25T16:09:23Z</dc:date>
  </entry>
  <entry>
    <title>RE: Going to the next node dynamically</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11139324" />
    <author>
      <name>Binny Mathew</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11139324</id>
    <updated>2013-01-25T16:00:16Z</updated>
    <published>2013-01-25T16:00:16Z</published>
    <summary type="html">Thanks Johnathan/Steve
Jonathan,
Agreed, But this is something that I will be building as a product and then presenting it. So here need to develop this even befoer the customer asks for this. :)
Steve,
In this case will i not be restricting my self of the options or i need to have all permutations and combinations in the if block as i suppose in case of UCCX you can execute only 1000 steps (runtime) So i will run out of this considering the fact i need to include my features (e.g. Recent Activity, ...). Hope i got what your point. :)
What i was thinking is will form the call flow using a java code and then for every active option (DTMF) will map a script so if DTMF 1 is for RecentActivity then will return relevant script if DTMF 1 is Transactions then return relevant script name and use a subflow to jump to these scripts which would be already there.
Seems the above approach may work and may give a better dynamism, But need to work out on this.
[b]Let me know if there are any other optimal ways to achieve the same.[/b]
Binny</summary>
    <dc:creator>Binny Mathew</dc:creator>
    <dc:date>2013-01-25T16:00:16Z</dc:date>
  </entry>
  <entry>
    <title>RE: Going to the next node dynamically</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11140615" />
    <author>
      <name>Fidelus TAC</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11140615</id>
    <updated>2013-01-25T15:49:21Z</updated>
    <published>2013-01-25T15:49:21Z</published>
    <summary type="html">hi Binny,
If you wanted it to be a completely dynamic menu, you'd use something like a series of If statements that you can toggle with a boolean variable:
If (option1) then
    play (choice1)
If (option2) then
    play(choice2)
If (option3) then
    play(choice3)
Follow this with an enter digits to capture their choice and manipulate on this choice with a switch statement.  a menu is a combination of play prompt, enter digits, and a switch step.
 
Steve</summary>
    <dc:creator>Fidelus TAC</dc:creator>
    <dc:date>2013-01-25T15:49:21Z</dc:date>
  </entry>
  <entry>
    <title>RE: Going to the next node dynamically</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11137418" />
    <author>
      <name>Jonathan Adams</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11137418</id>
    <updated>2013-01-25T14:53:12Z</updated>
    <published>2013-01-25T14:53:12Z</published>
    <summary type="html">Sounds to me like you have a planning problem :)
What I would actually recommend doing before you go any further is sit down with your customer, get every last detail of what they'd like you to build, make a Visio drawing of the call flow including the verbiage of the prompts, and have them sign off on it. Then from there, any changes out of the scope of work are a minimum of 1 hour paid time (more if it takes you longer to change the script as requested) for you.</summary>
    <dc:creator>Jonathan Adams</dc:creator>
    <dc:date>2013-01-25T14:53:12Z</dc:date>
  </entry>
  <entry>
    <title>RE: Going to the next node dynamically</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11133434" />
    <author>
      <name>Binny Mathew</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11133434</id>
    <updated>2013-01-25T13:03:48Z</updated>
    <published>2013-01-25T13:03:48Z</published>
    <summary type="html">Thanks Jonathan for your response,
It's like consider a example like below
 
banks Menu
      Recent Activity - Press 1
      Recent Transactions - Press 2
 
Tomorrow, if the customer decides to remove the option of Recent Activity then in this case Press 1 should go to Recent Transactions rather than RecentAcivity
BanksMenu
      Recent Transactions - Press 1
So now my end point for DTMF 1 changes. 
So what you are suggesting is to have a switch case right? In this case also it does not solve my problem as i still will have goto correct? or you are suggesting something else?
 
Rgds/Binny</summary>
    <dc:creator>Binny Mathew</dc:creator>
    <dc:date>2013-01-25T13:03:48Z</dc:date>
  </entry>
  <entry>
    <title>RE: Going to the next node dynamically</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11131855" />
    <author>
      <name>Jonathan Adams</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11131855</id>
    <updated>2013-01-25T12:44:58Z</updated>
    <published>2013-01-25T12:44:58Z</published>
    <summary type="html">Not sure why you'd have it do that, but if it's certain days it needs to go to the other part of the script, you could have a Day of Week switch in the menu with a different GoTo. Otherwise, if you need to manually change it and you want to do that without getting into the script, you could set a boolean variable as a Paramater. That way, you can just go to the application in UCCX and change it there instead of having to get into the script and make changes, save, and reload the app.</summary>
    <dc:creator>Jonathan Adams</dc:creator>
    <dc:date>2013-01-25T12:44:58Z</dc:date>
  </entry>
  <entry>
    <title>Going to the next node dynamically</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11129305" />
    <author>
      <name>Binny Mathew</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11129305</id>
    <updated>2013-01-25T10:48:18Z</updated>
    <published>2013-01-25T10:48:18Z</published>
    <summary type="html">Is there any way that i can route my flow (i.e where to go) during runtime.
In case of goto it will jump only to the labels which are created. But which node to go will be decided @runtime. 
For eg.
[b]For Balance and recent activity Press1, For Recent Transactions Press 2[/b]
[b]So in this i can jump to specific labels and get my work done. But Tomorrow Press 1 [DTMF 1] should go to  Recent Transactions without change in the script.[/b]
[b]So is there any way we can acheive this. [/b]
Rgds/Binny </summary>
    <dc:creator>Binny Mathew</dc:creator>
    <dc:date>2013-01-25T10:48:18Z</dc:date>
  </entry>
</feed>

