Genesys Cloud - Main

 View Only

Sign Up

  Thread closed by the administrator, not accepting new replies.
  • 1.  Inbound call flow Decision tool

    Posted 07-25-2024 02:48
    No replies, thread closed.

    Hello Everyone,

    Apologies for this silly question, we're just new to the system. Could you please help me what does this expression on decision means?

    -ToBool(If(FindFirst(Flow.StatusList, "IDLE") >= 0, GetAt(Flow.QueueCounts, FindFirst(Flow.StatusList, "IDLE")), 0))

    Based on my own understanding, it says that when 1 or more agent is Idle, the decision succeeds right? please confirm if I have understood it correctly.

    Thank you in advance.


    #ArchitectureandDesign

    ------------------------------
    Justine Carlos
    Cushman & Wakefield Holdings, Inc.
    ------------------------------


  • 2.  RE: Inbound call flow Decision tool

    Posted 07-25-2024 05:03
    No replies, thread closed.

    Hey Justine

    Welcome to the community.  Great question and hopefully someone with a better understanding of these expressions will be able to answer you.



    ------------------------------
    Sam Jillard
    Online Community Manager/Moderator
    Genesys - Employees
    ------------------------------



  • 3.  RE: Inbound call flow Decision tool

    Posted 07-25-2024 08:51
    No replies, thread closed.

    Justine,

    It is true that the If statement would be true at that point, and then it return the value of GetAt(Flow.QueueCounts, FindFirst(Flow.StatusList, "IDLE") and convert it to boolean.  This may cause problems if the index value of the first IDLE in the Flow.StatusList is greater than the count of Flow.QueueCounts.  I don't know the context of the expression, whether or not it is part of an Update Data action or part of a bigger expression of something else.  But, you are not storing the results of  GetAt(Flow.QueueCounts, FindFirst(Flow.StatusList, "IDLE") anywhere, why wouldn't the then, in the if/then statement just be 1?

    Thanks, 



    ------------------------------
    Jason Tripp
    Independent Health Association, Inc.
    ------------------------------



  • 4.  RE: Inbound call flow Decision tool

    Posted 07-25-2024 13:50
    No replies, thread closed.

    Hi Jason, 

    with regard to the above suggestion, would the if/then statement be like this? I have highlighted the possible changes.

    #73 Decision -ToBool(If(FindFirst(Flow.StatusList, "IDLE") >= 0, GetAt(Flow.QueueCounts, FindFirst(Flow.StatusList, "IDLE")), 1))

    Also, here's a snap of our inbound call flow for your reference. 

    Thank you and have a great day. 



    ------------------------------
    Justine Carlos
    Cushman & Wakefield Holdings, Inc.
    ------------------------------



  • 5.  RE: Inbound call flow Decision tool
    Best Answer

    Posted 07-25-2024 14:14
    No replies, thread closed.

    Justine,

    It looks like you want to route to a queue if you have agent at least 1 idle agent in the queue.  If that's the case, the only thing you need for the expression in the Decision action is, FindFirst(Flow.StatusList, "IDLE") >= 0.  The Decision action itself is an if/then statement.  So, FindFirst is going to return the index value for the first "IDLE" in the Flow.StatusList array.  So, as long as "IDLE" is in the array, the return value will be >= 0, and it will follow the yes path.  If there are no agents IDLE then, it will return the value of -1, which will follow the No path.    

    Thank you,



    ------------------------------
    Jason Tripp
    Independent Health Association, Inc.
    ------------------------------



  • 6.  RE: Inbound call flow Decision tool

    Posted 07-25-2024 14:34
    No replies, thread closed.

    Thanks, Jason. Appreciate your kind assistance. 

    Have a great weekend.

    Cheers!



    ------------------------------
    Justine Carlos
    Cushman & Wakefield Holdings, Inc.
    ------------------------------