Call back to PSTN number

I am trying to make a dialplan in which it hangups without answering to the incoming call from PSTN number and call back to the same number by using .call file. Then I wrote following dialplam

exten =>s,1,NoOp()
	same=>n,System(echo "Channel: DAHDI/1/${CALLERID(num)}\\nContext:from_out\\nExtension: 100" > /tmp/
	same=>n,System(touch /tmp/
	same=>n,System(mv /tmp/ /var/spool/asterisk/outgoing/)

include => default_cont
exten => 100,1,Verbose(1, Caller ${CALLERID(all)} has entered the auto attendant)
	same => n,Set(TIMEOUT(digit)=2)					
	same => n,Answer()
	same => n,Wait(RING_TIME)
	same => n,Playback(gud/welcome)	
;---other dialplan

test .call is created in the /var/spool/asterisk/outgoing/ directory but can’t make callback because it can’t save caller number. file is look like …

Channel: DAHDI/1/
Extension: 100

What is the problem with it ?

Have you got caller ID working? If not you should contact the commercial support people at your card supplier, although you may also need to talk to the PTT. Details of the PSTN service provider will be needed.

If caller ID does work, you might have an open source support question, in which case you should use Asterisk Support. Firstly, I would turn up the logging to the point where you can see the caller ID coming in; it is possible that you are trying to use it before it has arrived.