Delay before dial on DAHDI PRI

Hi,

My Asterisk with many of Digium E1 PRI cards work successfully. Call in, and out works perfectly.
The application:
My Asterisk make mass of outgoing calls. If any channel on the E1 card hangup, I starting a new call instantly. (All controlled through AMI, but it’s unimportant now)

Sometimes the calling out is unsuccessfull, especially the E1 channels almost (~90%) full. I think, I start a new call too fast after a hangup. I think, this problem is a TELCO side problem (they not free up the channel fast enough), but I need to fixup this problem on Asterisk side.

I see this on Asterisk:
– Requested transfer capability: 0x00 - SPEECH
– Called dahdi/g0/0630*******
– Moving call (DAHDI/i1/0630*******-61) from channel 11 to 30.
[Jul 3 15:13:54] WARNING[9277]: sig_pri.c:1482 pri_fixup_principle: Can’t move call (DAHDI/i1/0630*******-61) from channel 11 to 30. It is already in use.
[Jul 3 15:13:54] WARNING[9277]: sig_pri.c:1627 pri_find_fixup_principle: Span 1: PRI requested channel 0/30 is not available.

Remarks: I started the call above, after one cahannel freed up! And allways I running 27 calls only same time (instead of maximum 30 channels on E1). I don’t know, the Asterisk why can’t allocate a new channel.

My tested solution:
‘w’ before number (example Dial(DAHDI/g0/ww123456)) not works. My telco drops the call when started with ‘w’.

Wait(1) before Dial() not helps, because I can’t control what channels freed up and need a little delay.

Regards,
Tibor