Dial during the transfer announcement; move the caller after playout
If a transfer starts from the speech-completed callback, every second of announcement playback, plus any event-loop backlog, delays the dial. Simply running the old transfer function in the background does not work, because it gates bot media and starts hold music, which cuts off…