I have a basic Auto Attentant configured, and when inbound caller selects an option; say 1, they get a "wait while I transfer your call" and then the hold music. This last for 15 seconds or so; then call gets transferred to the correct DN.
Looking for direction to remove the long delay. Assuming this is a UNITY issue and not CM related, as transfer from handset to handset work just fine.
Based on the description you provided it seems the delay is happening on the CUCM side, the reason is that when Unity COnnection does a Release to Switch means that it does not keep the call any longer it just let's it go to it's destination, on the other hand CUCM needs to be able to handle this call.
To check this you would see in the Port Status Monitor output XFer followed by the HangUp event, therefore the call would no longer be in CUC.