This should really be a native feature of the Group queues, which already have a "When maximum hold time is reached, send caller to..." feature. Please upvote these feature requests and let's get this in RC. Even crummy Comcast Voiceedge has this :)
Worked with several members of support staff to find a solution here, but we have it.
1. Build your call queue/voice group under ONE user, as a ring group. (Same effect as call queue, fully customizable.)
2. Disable "take messages"
3. On missed call, direct to another group/extension/IVR tree.
I'm not sure what you mean by building a call queue under one user. We already have numerous call queues set up for the different routing patterns on incoming calls; we want to be able to utilize the existing call queues as they are.
The last step would be to set up any email notifications you would like sent out once a voicemail is received. See the Notifications by Email section in the Messages & Notifications article for steps on setting that feature.
Let us know if that helps you set up the call flow you want.