Original Message:
Sent: 04-20-2023 14:07
From: Ramu P
Subject: Is there a way to collect input from menu dynamically in Architect
Paul, not to drag the conversation or argue, i do agree that there are multiple ways to solve a problem. Genesys Cloud architect is mainly built for the people who wants to build the call flows with out having any coding experience. For them yes drag and drop the action on the call flow is easy to understand and implement. As i came from a development background i wanted to keep my code as a standard practice to implement the menus with Collect input action, this will give more free hand for me to implement the functionality. And i do use this technique to keep my code simple, the procedure is common accross the app, we call common module and mimic the menu functionality with my own retries (mixed or individual ones for nomatch or noinput counters). If i use menus then i have to add tasks for each option set max tries counter to 1 and it will add more complexity on the call flow to go back and repeat the menu.
Just adding a wrapper around the Genesys provided functionality, this help me to create low code or no code concept if we fetch the menu info from Data table. When we understand the logic how we implemented this then i don't think it will be hard for any one to manage or maintain. the same concept will help us to build the app faster if we maintain this as a template and create our flows. This is my view to save time and maintain standard practice for menus. I might be wrong, however, this is what i found so far. :)
------------------------------
Ramu P
Global Technology Solutions Inc.
Original Message:
Sent: 04-20-2023 09:19
From: Paul Simpson
Subject: Is there a way to collect input from menu dynamically in Architect
Ramu,
Interesting points, however I believe nearly all of that can still be achieved with the built-in menus.
For the "Invalid input" vs "No input", all you have to do is to create a menu option for all 12 keys and then provide your "invalid input" functionality on the unused ones.
For the default action, you can make this whatever you want - sure it pre-populates to a disconnect, but...
Interesting point about Prompts, although I would've thought you would want to know about missing prompts rather than waiting for an error?
I can see what you are trying to do, and there is nothing stopping you from doing it, but I honestly think you are re-inventing the wheel here and ultimately, you will end up with a system that is harder to maintain and support. My guess is that you are migrating from another platform, where menus are written "from scratch" in this way? I have seen many, many ORGs set up that are crazy-complicated because the person has tried to replicate the logic / methodology from another system rather than going back to the actual requirements and building against those, from the ground up. It usually manifests itself as complex configurations involving Skills and Queues when the customer is coming from Avaya or CXOne....
Just my 10 cents - feel free to ignore 😉
------------------------------
Paul Simpson
Eventus Solutions Group
Original Message:
Sent: 04-20-2023 00:12
From: Ramu P
Subject: Is there a way to collect input from menu dynamically in Architect
Hi Paul,
Here is my observations or use cases why we go with this approach.
- On GC there is no concept of throwing nomatch or noinput event by the either Menu or Collect Input, and if the client wants to play diff audio for nomatch and noinput then this logic will work. We can identify what is a valid input or not.
- In case if we are collecting an input(either range or fixed length) collect input action will not have maxtries(nomatch and noinput) logic, we need to implement this on our own. if we have implement this logic in multiple places then it is a better thought to get it implemented on CM.
- if you are exporting and importing the call flow from one instance of the GC to other, then this will not throw you any errors while importing saying that prompts does not exists or so. This will be helpful when we are going to use CX as Code concept to build the flows and import them using Archy.
- On the menus by default the default option is set to Disconnect the call, there are places we will not be able to select one of the menu choice as a default option to move on with the call flow. That time call will be disconnected by default when we reach max tries.
- If you wanted to add call tracking or add mile stones for reporting on menu level, that time also it is easy to go to common module and update the code, instead of changing the logic every where on the flow.
These are my observations and build the common module logic to collect menu input. However, as you specified, this will not work for speech enabled flows. Collect Input does not allow or have speech recognition option.
------------------------------
Ramu P
Global Technology Solutions Inc.
Original Message:
Sent: 04-19-2023 14:25
From: Paul Simpson
Subject: Is there a way to collect input from menu dynamically in Architect
I'm sorry, but I still am struggling to see the use-case or benefit to this approach. Calling a Common Module and passing it a prompt file etc. is not really any different to simply creating a menu with that Prompt file etc.
Additionally, using the Collect Input / Common Module approach, you won't be able to implement Speech Recognition, should you choose to do so.
Or am I missing something here?
------------------------------
Paul Simpson
Eventus Solutions Group
Original Message:
Sent: 04-19-2023 11:57
From: Tamnun-E Mursalin
Subject: Is there a way to collect input from menu dynamically in Architect
The goal is if we can have one commonn module to be called when we need to play menu, with customized parameter being passed.
------------------------------
Tamnun-E Mursalin
Bell Canada
Original Message:
Sent: 04-19-2023 11:31
From: Paul Simpson
Subject: Is there a way to collect input from menu dynamically in Architect
Maybe I'm not understanding your question properly, but I'm trying to figure out how calling a Common Module is preferable to simply using a menu? That would ahndle the playing of the prompt, the handling of inappropriate / invalid input, time outs and so on.....
------------------------------
Paul Simpson
Eventus Solutions Group
Original Message:
Sent: 04-18-2023 15:13
From: Tamnun-E Mursalin
Subject: Is there a way to collect input from menu dynamically in Architect
Is there a way to collect input from menu dynamically without using the collect_input action. The purpose is I want to create a common module where the audios of the menus will be passed, including the maximumNoMatch, maximumNoInputand, menuOptions and timeout, dynamically to the common module. User will make selection from the Menu (menuOptions), and the common module will dynamically check for maximum no entry, time out and others before passing the user input as output from common module. Here are the two options I can think of and if anyone can provide some feedback will be highly appreciated,
Option 1) Without collect input action: Can I use the audio action from Architect, which will play the menu and check for maxnomatch and maxnoinput inside the Audio action. Does the expression editor in Audio Action can check for this.
Option 2) If option 1 is not feasible in Audio Action, can I use the collect_input action, but only want the user input(not the no entry parameters or other options that comes with collect_input) as an output than use other logics to check for maxnoinput and maxnomatch values.
The purpose of this common module, so we can call a standard module to play menus by passing variables dynamically.
#ArchitectureandDesign
------------------------------
Tamnun-E Mursalin
Bell Canada
------------------------------