I've been developing with Twilio for the last few months and have found that sometimes if a user hangs up during certain studio flow widgets the executions become stuck. This wasn't really a problem until yesterday when we were getting billed for Gather
widgets after the hangup occurred, as it wasn't leaving the Gather
widget.
Here's what we've been doing:
... -> Start stream -> Gather verb -> End stream -> ...
So the hangups are happening between the start and end of the streaming.
This happens with a few widgets - here's an example with the SIDs removed for clarity:
Received an 'hangup' event while processing the 'startStream' widget for Execution Sid foo and Flow Sid bar. Ignoring this event and not transitioning to another widget
I've noticed this also happens with the endStream
widget, so I think it's just happening with the streaming.
This happens a lot and results in stuck executions, which I can't ignore due to the way my backend system works.
Does anyone know how to end these stuck executions, or make sure that we don't end up stuck on the widget after a hangup so that they can end more gracefully?
Let me know if there's any more information you need.