Joe,
There is a simple sample script, called icd.aef' in the repository.
This script looks for an agent, and if there is no an agent available, queue the call and played a waiting prompt.
It could be useful for your purpouses. You only have to add new steps as Delay or promts with a 30 seconds lenght.
For leave a message, you can send the call with a 'Call Redirect' step to Unity, for example.
Hope this helps,
Juan Luis