-
Notifications
You must be signed in to change notification settings - Fork 69
Description
Describe the bug
When running IVR tests using botium-cli with the twilio-ivr connector and Microsoft Health Bot, the call is initiated via Twilio, but the test hangs and eventually fails with a timeout error.
Botium is unable to receive the inbound webhook events from Twilio, resulting in:
Error: Timeout of 60000ms exceeded.
Error: _waitForInboundEvent: Waiting for event EVENT_CALL_COMPLETED timed out after 10000ms
To Reproduce
Steps to reproduce the behavior:
Set up Botium with botium-connector-twilio-ivr
Use conversation.convo.txt to simulate an IVR dialog
Run npx botium-cli run --verbose
Botium starts the call, but never receives call completion events
Test fails with timeout errors
Expected behavior
Botium should:
Receive the webhook event from Twilio
Complete the test successfully by validating the conversation
Not timeout while waiting for the call status
Screenshots and Log files
Call logs from Twilio:
Twilio POSTs to /twilio-ivr/status and /twilio-ivr/start return 404 Not Found or 502 Bad Gateway
Botium CLI output:
vbnet
Copy
Edit
Botium Test-Suite
"before each" hook for "specs/conversation.convo.txt":
Error: Timeout of 60000ms exceeded
Error: _waitForInboundEvent: Waiting for event EVENT_CALL_COMPLETED timed out after 10000ms
Botium proxy output:
Botium Twilio Inbound Messages proxy is listening on port 3000
Botium Twilio Inbound Messages endpoint available at http://xxxxxx:3000/botium
Twilio Webhook for status:
https:///botium
Botium Flavour
Botium CLI
Botium Version
Botium CLI: 0.43.x
botium-connector-twilio-ivr: latest from npm (^1.0.x)
Additional context
The webhook /botium is exposed via ngrok, and accessible manually via Postman
Twilio number is correctly configured to send Call Status Callback to the ngrok endpoint
Microsoft Health Bot is configured as the primary webhook for handling Twilio voice
The call is completed in Twilio (5 secs duration), but Botium never sees the status callback event