Whilst I’m not sure that I understand the question properly, I wonder if this queue option migh help:
F - When the caller hangs up, transfer the called member to the next priority of the current extension and start execution at that location.
NOTE: Any channel variables you want the called channel to inherit from the caller channel must be prefixed with one or two underbars (‘_’).
NOTE: Using this option from a Macro() or GoSub() might not make sense as there would be no return points.