Routing Patterns

Routing logic is conceptually declarative, and many teams model it in YAML for version control, portability, and CI/CD, then map it into iX Hello flows, intents, or agent configurations.

Simple Routing

This routes the user to different handlers based only on intent, with a fallback.

Most nodes just go to the next node:

    - greeting:    
        type: say    
        message: Welcome!    
        next: main_agent

Conditional Routing

Conditional routing sends a user to a specific flow only when certain conditions are true (intent, confidence, user data, channel, etc.).

Use goals for branching based on agent analysis:

- check_result:    
        type: agent    
        preset: processor    
        system: Check if the balance is positive or negative.    
        goals:    
          positive:    
            description: Balance is positive    
            next: good_standing    
          negative:    
            description: Balance is negative    
            next: payment_needed    
          unknown:    
            description: Unable to determine    
            next: manual_review    

Chained Say Nodes

Chained Say Nodes are multiple “Say” (message) steps executed one after another before moving to a decision, input, action, or routing step.

String multiple messages together:

Routing Through Say Nodes

A Say node delivers a message and immediately routes the conversation to another node/flow based on a rule—without waiting for user input.

To say something before routing, use a dedicated say node:

Last updated

Was this helpful?