Genesys Cloud - Main

 View Only

Sign Up

  • 1.  Understanding AVA's Capability to Make Decisions Based on Input Context

    Posted 09-04-2026 12:01

    Hi Team,

    I would like to understand AVA's capability to make runtime decisions based on an input context variable. To illustrate the requirement, please consider the following example:

    1. A customer calls the inbound flow, which prompts for a car registration number.
    2. After successful validation, the flow transfers the interaction to a Bot Flow that eventually invokes AVA. AVA greets the customer by name based on the validated car registration number.
    3. AVA captures the customer's issue, raises a complaint, and provides a complaint reference number.
    4. AVA then asks whether the customer would like to raise another complaint for a different car registration number.
    5. If the customer responds Yes, AVA exits and returns the interaction to the inbound flow to capture a new car registration number.
    6. Once the new registration number is validated, the interaction is transferred back to the Bot Flow and AVA.

    Challenge

    During the second invocation of AVA, we do not want the customer greeting to be played again.

    One approach is to pass an input context variable, such as call_sequence, with a value of:

    • 1 for the initial entry into AVA
    • 2 for subsequent entries into AVA

    My question is whether AVA can evaluate this context variable and conditionally follow prompt instructions. For example:

    • If call_sequence = 1, execute the greeting guideline.
    • If call_sequence = 2, skip the greeting guideline and continue with the rest of the conversation flow.

    Is there a recommended way to achieve this behavior through AVA prompting, or would this need to be handled through flow logic before invoking AVA?

    Thanks in advance for your guidance.


    #ConversationalAI(Bots,VirtualAgent,etc.)

    ------------------------------
    Shishir
    Manager
    ------------------------------


  • 2.  RE: Understanding AVA's Capability to Make Decisions Based on Input Context
    Best Answer

    Posted 09-04-2026 13:06

    Hi Shishir,

    Yes, AVA can receive this information at runtime through Start Context, and this is the mechanism I would use to make the agent aware of whether this is the first or a subsequent invocation.

    However, I would separate two concepts:

    1. Passing runtime state to AVA

    2. Making a deterministic flow decision

    For the first part, Start Context is exactly the right mechanism.

    In AI Studio, I would create a Boolean Start Context variable such as:

    is_first_ava_entry

    with a clear description such as:

    True only when this is the first AVA invocation for the current customer journey. When false, the customer has already interacted with this AVA during the current call.

    Then, in Architect's Call Agentic Virtual Agent action, populate that input dynamically:

    First invocation:

    is_first_ava_entry = true

    Subsequent invocation:

    is_first_ava_entry = false

    I would prefer a Boolean over call_sequence = 1/2 because the business meaning is clearer to both the flow author and the agent.

    Then add an explicit AVA guideline such as:

    If is_first_ava_entry is true, greet the customer once using customer_name before beginning complaint handling. If is_first_ava_entry is false, do not greet or welcome the customer again. Continue directly with the complaint journey.

    This should allow the same AVA to behave differently based on the runtime context passed by Architect.

    There is one important architectural consideration, though.

    If "never repeat the greeting" is a strict deterministic requirement, I would keep that decision in Architect rather than relying exclusively on generative instructions.

    For example:

    Inbound Flow
    → validate registration
    → determine whether this is the first AVA invocation
    → if first invocation, play the personalized greeting
    → Call Bot Flow / AVA
    → AVA handles complaint journey

    On the second pass:

    Validate new registration
    → first invocation = false
    → skip greeting
    → invoke the same AVA

    In that design, I would remove the initial greeting responsibility from AVA entirely.

    That is the approach I would recommend for production because Architect remains responsible for deterministic state and branching, while AVA remains responsible for the conversational complaint handling.

    If you prefer to keep the greeting inside AVA, then passing a Boolean Start Context variable and using a very explicit guideline is a supported and reasonable implementation.

    So I would summarize the two options as:

    Context-driven AVA behavior

    Architect → is_first_ava_entry → AVA guideline → greet/skip

    Suitable when some conversational flexibility is acceptable.

    Deterministic behavior - my preferred design

    Architect → Decision → greeting only on first invocation → AVA

    Suitable when the greeting must never be repeated.

    In both cases, I would keep the invocation state in Architect and pass only the information AVA actually needs through Start Context.



    ------------------------------
    Gabriel
    NA
    ------------------------------



  • 3.  RE: Understanding AVA's Capability to Make Decisions Based on Input Context

    Posted 09-06-2026 08:10

    Thanks, Gabriel.

    Yes, I tested it and observed the same behavior you described. When I remain logged into AVA, it works most of the time, but there are still cases where it can be skipped. Therefore, I believe it would be best for the decision to be made in Architect.

    Thanks again for your support.



    ------------------------------
    Shishir
    Manager
    ------------------------------