Overview
This guide covers common issues you may encounter when building and deploying Hamsa Telephony agents, along with step-by-step solutions and debugging strategies.Tool-Related Issues
Issue: Tool Not Executing
Symptoms:- Tool node is reached but doesn’t execute
- No API call is made
- Flow skips to next node immediately
1. Tool Not Found in agentSettings.tools
Diagnosis:- Re-select the tool in the node configuration
- Save the agent to regenerate tool references
- Verify tool is active and not deleted
2. Invalid Tool Configuration
Diagnosis:- Tool has no toolId or persistentId
- Tool type is undefined
- Tool was deleted from tool library
3. Missing Required Parameters
Diagnosis:- Required parameters not provided
- Parameter values are empty or invalid
Issue: Tool Times Out
Symptoms:- Tool execution exceeds timeout limit
- Call continues but tool results are missing
- Error logged: “Tool execution timeout”
Increase Timeout
Optimize API Performance
- Check target API response time
- Reduce data being requested
- Use caching when possible
- Consider async processing for slow operations
Use Processing Message
Issue: Tool Returns Error
Symptoms:- Tool executes but returns error response
- Error message in logs: “Tool execution failed”
- Flow transitions to error handling
1. Test Tool Directly
2. Check Tool Configuration
- Verify URL is correct and accessible
- Check authentication headers/API keys
- Validate request method (GET, POST, etc.)
- Ensure content-type headers are set
3. Review Parameter Mapping
4. Check Response Format
Issue: Tool Override Not Working
Symptoms:- Parameter overrides not applied
- Tool uses default values instead of overrides
- Changes to tool configuration don’t take effect
For FUNCTION Tools
For WEB_TOOL Tools
For MCP Tools
Tool Type Override Capabilities:
- FUNCTION: Full overrides (URL, method, headers, params, auth, timeout)
- WEB_TOOL: Limited overrides (name, description, params only)
- MCP: No overrides (server-managed)
Issue: Tool Version Mismatch
Symptoms:- Warning: “Tool version out of sync”
- Tool behavior changed unexpectedly
- Parameters missing or renamed
Check Version Status
Sync to Latest Version
Variable-Related Issues
Issue: Variable Not Extracted
Symptoms:- Variable is undefined in subsequent nodes
- Condition checking variable always fails
- Output shows empty or null value
1. Check Extraction Configuration
2. Verify Extraction Method
llm_function_calling: Most accurate, uses LLM function calling (recommended)regex: Pattern matching, fast but requires exact formatnlp: Natural language processing, good for unstructured data
3. Check Conversation Context
Issue: Variable Reference Not Working
Symptoms:{{variable_name}}appears literally in output- Tool parameter shows
{{variable_name}}instead of value - Variable not being substituted
1. Check Variable Name
2. Verify Variable Exists
3. Check Variable Scope
Issue: Enum Variable Validation Fails
Symptoms:- Variable extraction succeeds but validation fails
- Error: “Value not in enum”
- Flow doesn’t transition correctly
Issue: Context Rules Not Applied
Symptoms:- Intelligent context rules not providing recommendations
- Context not being used effectively
- Variable suggestions missing
DTMF Issues
Issue: DTMF Keys Not Working
Symptoms:- User presses keys but nothing happens
- DTMF transitions don’t trigger
- Keys not captured
1. Check Phone Provider Support
2. Verify Transition Configuration
3. Check for DTMF Input Capture Conflict
Issue: DTMF Input Not Captured
Symptoms:- Variable remains empty after DTMF input
- Timeout occurs before capture complete
- Wrong digits captured
1. Configure Capture Settings
2. Choose Right Termination Method
3. Validate Captured Value
Issue: DTMF Navigation Not Working (Outbound)
Symptoms:- Agent not navigating outbound IVR menus
- Stuck on IVR prompts
- Can’t reach human agent
DTMF Navigation vs DTMF Transitions:
- DTMF Navigation: Agent navigates IVR menus on outbound calls (auto-dials keys)
- DTMF Transitions: User presses keys on inbound calls (routing logic)
- DTMF Input Capture: Collects digit sequences (account numbers, PINs)
Transition Issues
Issue: Transition Not Triggering
Symptoms:- Flow gets stuck on a node
- Expected transition doesn’t happen
- Falls through to “always” transition unexpectedly
1. Check Transition Order
2. Verify Condition Syntax
3. Test Natural Language Conditions
Issue: Equation Transition Failing
Symptoms:- Equation condition should be true but doesn’t trigger
- Variables not being compared correctly
- Unexpected type errors
1. Check Data Types
2. Handle Null/Undefined
3. Test Complex Conditions
Call Quality Issues
Issue: Poor Audio Quality
Symptoms:- Robotic or distorted voice
- Choppy audio
- Echo or feedback
- Voice cuts out
1. Adjust Voice Settings
- Try a different voice from the voice library
- Adjust speed settings (default: 1.0)
- Test with different dialects to find the best match
2. Check Network Conditions
- Ensure stable internet connection
- Test with different network
- Check for bandwidth limitations
- Monitor WebRTC connection stats
3. Optimize Transcriber Settings
- Adjust end-of-speech detection threshold if the agent cuts off too early or waits too long
- Check audio input quality and format
Issue: High Latency / Slow Responses
Symptoms:- Long pauses between user speech and agent response
- Delayed reactions
- Conversation feels sluggish
1. Optimize Model Settings
2. Reduce Tool Call Overhead
3. Optimize Prompts
Issue: Interruption Problems
Symptoms:- User can’t interrupt agent
- Agent stops mid-sentence when not appropriate
- Awkward conversation flow
Interruption is controlled at the global level in agent settings, not per-node. Use
skipResponse: true for nodes where you don’t want the user to respond at all.Flow Logic Issues
Issue: Infinite Loop
Symptoms:- Flow keeps returning to same node
- Call never progresses
- User gets stuck in repeat
1. Check for Circular Transitions
2. Use Retry Counters
3. Add Safety Net
Issue: Flow Skips Nodes
Symptoms:- Expected node not reached
- Flow jumps over nodes
- Conversation feels incomplete
1. Check Call History Logs
2. Verify Transition Logic
3. Test Systematically
Global Node Issues
Issue: Global Node Not Accessible
Symptoms:- User trigger phrase doesn’t work
- Global DTMF key doesn’t respond
- Global node never reached
1. Verify Global Configuration
2. Check Condition Clarity
3. Test Global Trigger
Authentication & API Issues
Issue: API Key Invalid
Symptoms:- Error: “Invalid API key”
- Authentication failed
- 401 Unauthorized responses
Issue: Rate Limiting
Symptoms:- Error: “Too many requests”
- 429 Rate Limit Exceeded
- Some calls fail during high volume
1. Implement Retry Logic
2. Use Caching
3. Optimize Call Volume
Testing Issues
Issue: Test Agent Not Working
Symptoms:- Test button doesn’t start call
- No audio in test
- Test fails to connect
1. Check Browser Permissions
2. Verify Agent Configuration
3. Check Network
Performance Issues
Issue: High Token Usage
Symptoms:- Expensive calls
- Token usage exceeds expectations
- Billing concerns
1. Optimize Prompts
2. Use Appropriate Models
3. Limit Response Length
Deployment Issues
Issue: Agent Not Receiving Calls
Symptoms:- Phone number configured but calls don’t reach agent
- Callers get busy signal or error
- Calls go to wrong agent
1. Check Phone Number Configuration
2. Verify Agent Status
Getting Help
Debug Checklist
Before reaching out for support:- Check Call History logs for specific call
- Test agent in Test Agent interface
- Verify all tool configurations
- Validate variable names and references
- Check transition conditions and order
- Review global settings
- Test with simple flow to isolate issue
- Check browser console for JavaScript errors
- Verify API keys are valid
- Confirm phone numbers are active
Support Resources
Documentation: Community:- GitHub Issues: Report bugs and request features
- Discord: Join community discussions
- Email Support: [email protected]
- Start simple, add complexity gradually
- Test each change before adding more
- Use descriptive names for nodes and variables
- Document complex logic with node descriptions
- Keep prompts focused and concise
- Monitor call history for patterns