Hi there,
What you're trying to do is not easy, you will need to program a DLL and call that DLL from the VAD.
First, the VAD will receive the call when the extension is not available, so you need to forward calls to the VAD app in that case. Next, when the VAD receives the call, it needs to determine the extension previously called, that can be done using the 3CX Call Control API: http://www.3cx.com/blog/docs/call-control-api/
Then, you need to use that same API to read the profile for that extension, and then you know when it will become available again. Finally, you can inform that to the calling party.
In order to use the 3CX Call Control API, you need to create a DLL in .NET and consume that API from your DLL, returning a single value to the VAD app in each method, for example the hour when the extension will become available. Then from the VAD you can use that information as usual to play a prompt message.
Hope the information helps.
Kind regards.