That makes * wait 2 secs before starting the replay, won’t do any good (tried it anyway and it doesn’t help).
But I came across some documentation mentioning that it is default * call file behavior to first wait for the channel to be answered, THEN jump to the dial plan.
Check it out:
May be this will lead to a clue:
I open a SIP channel with the Call File and the SIP channel is forwarded to a land line by a gateway provider. Would it be possible that what causes the problem is this:
The gateway provider answers the SIP channel to be able to forward it to a land line. For asterisk, the channel is instantly “answered” by my external provider to process the forward even though the land line the call is routed to has not been picked up yet.
What about putting a Wait() before the Answer(), or extending the Wait() afterward? If * considers the call answered, as far as I know it’s the only way to delay playing the message.
You may be able to use waitforsilence to wait for a specified length of silence prior to playing the message. The silence threshold would need to be longer than the time between rings.
You have to check for the status. This is a copy and past of a working configuration. I did some translations of the labels because they were in Dutch. I hope I didn’t make any typos