Skip to main content

Overview

Call routing determines where conversations flow based on context, user input, and business logic. Effective routing ensures callers reach the right destination quickly, improving satisfaction and reducing handling time.
Routing Methods in Hamsa:
  • Router Nodes - Conditional logic-based routing
  • Transition Conditions - Flow between nodes based on rules
  • Natural Language - AI-powered intent routing
  • DTMF - Keypad-based menu navigation
  • Time-Based - Route by time, day, or date
  • Data-Driven - Route based on caller data or API responses

Routing Fundamentals

Router Nodes

Router nodes evaluate conditions and direct calls to appropriate destinations. How Router Nodes Work:
  1. Evaluate conditions in order (top to bottom)
  2. First matching condition wins
  3. Route call to connected node
  4. If no conditions match, use fallback (Always)
Basic Structure:

Transition Types

Different ways to move between nodes: 1. Always Transition
  • Unconditional, always fires
  • Used for sequential flow
  • No conditions needed
2. Natural Language Transition
  • AI determines if condition met
  • Based on conversation context
  • Flexible, conversational
3. DTMF Transition
  • Triggered by keypad press
  • Exact, predictable
  • Good for menus
4. Conditional Transition
  • Based on variable values
  • Logical expressions
  • Data-driven routing

Basic Routing Patterns

Intent-Based Routing

Route based on what the caller wants.
1

Collect Intent

2

Route by Intent

Example Flow:

Priority-Based Routing

Route urgent or VIP calls differently.

Skill-Based Routing

Route to agents with specific skills.

Advanced Routing Patterns

Time-Based Routing

Route differently based on time, day, or date. Business Hours Routing:
Holiday Routing:
Timezone-Aware Routing:

Load-Based Routing

Distribute calls based on queue length or agent availability.
Overflow Routing:

Geographic Routing

Route based on caller location.

Language-Based Routing

Route to language-specific agents.

Data-Driven Routing

Route based on customer data from your systems.

Multi-Stage Routing

Sequential Qualification Routing

Progressively qualify and route callers.

Escalation Routing

Route to higher tiers when needed.

Router Node Configuration

Building Conditions

Comparison Operators:
Logical Operators:
Examples:

Condition Ordering

Order matters! First match wins.
Best Practice Ordering:

Testing Routing Logic

Testing Checklist

1

Test Each Path

Verify every condition can be reached
2

Test Edge Cases

  • Boundary values (e.g., exactly 100)
  • Missing variables
  • Null values
  • Empty strings
3

Test Condition Order

Ensure specific conditions before general
4

Test Fallback

Verify “Always” catches everything else
5

Test Variable Extraction

Confirm variables populate correctly

Common Issues

Causes:
  • Variable not extracted
  • Variable name typo
  • Wrong comparison operator
  • Case sensitivity issue
Debug:
  • Check variable value in logs
  • Verify variable name exactly matches
  • Test with simpler condition
  • Add logging/debugging node
Causes:
  • Condition ordering wrong
  • Too broad condition earlier
  • Variable contains unexpected value
Debug:
  • Review condition order
  • Check actual variable values
  • Make conditions more specific
Causes:
  • Missing “Always” fallback
  • All conditions too specific
Solution:
  • Always include “Always” fallback
  • Review conditions for gaps

Complete Examples

Example 1: E-commerce Support Router

Example 2: Healthcare Appointment Router

Example 3: Multi-Department Company Router

Next Steps

IVR Menus

Build interactive menu systems

Data Collection

Collect data to inform routing decisions

Variables

Learn about the variable system

Flow Agents

Master flow-based agent design