[macro-autodial] ; ( 3), exten => s,1,ExecIf($["${ARG1:0:1}" = "*" | ${LEN(${ARG2})} != 3 ],Hangup) ; .call- exten => s,n,System(echo "Channel: Local/${ARG1}@from-internal" > /tmp/${ARG2}${UNIQUEID}.call) exten => s,n,System(echo "MaxRetries: 10" >> /tmp/${ARG2}${UNIQUEID}.call) exten => s,n,System(echo "RetryTime: 20" >> /tmp/${ARG2}${UNIQUEID}.call) exten => s,n,System(echo "WaitTime: 40" >> /tmp/${ARG2}${UNIQUEID}.call) exten => s,n,System(echo -e "Callerid: \\x22CallBack ${ARG1}\\x22 \\x3C${ARG2}\\x3E" >> /tmp/${ARG2}${UNIQUEID}.call) ; , exten => s,n,System(echo "Context: autodial-internal" >> /tmp/${ARG2}${UNIQUEID}.call) exten => s,n,System(echo "Extension: ${ARG2}" >> /tmp/${ARG2}${UNIQUEID}.call) exten => s,n,System(echo "Priority: 1" >> /tmp/${ARG2}${UNIQUEID}.call) ; exten => s,n,System(sleep 15 && mv -f /tmp/${ARG2}${UNIQUEID}.call /var/spool/asterisk/outgoing/ &) ; - exten => s,n,Playback(ozhidajte-soedinenija) [autodial-internal] exten => _XXX,1,Dial(SIP/${EXTEN}) exten => _XXX,2,Hangup()
; *20<> <> exten => _*20X.,1,Macro(autodial,${EXTEN:3},${CALLERID(number)}) exten => _*20X.,2,Hangup()
[from-internal] ; exten => _[0-9*#]X.,1,Set(DB(LASTCALLED/${CALLERID(number)})=${EXTEN}) ; exten => _[0-9*#]X.,2,Goto(from-internal-my,${EXTEN},1) ; *20 exten => *20,1,Macro(autodial,${DB(LASTCALLED/${CALLERID(number)})},${CALLERID(number)}) exten => *20,2,Hangup() ; *20<> <> exten => _*20X.,1,Macro(autodial,${EXTEN:3},${CALLERID(number)}) exten => _*20X.,2,Hangup() ; [from-internal] , , , , [from-internal-my] include => from-internal-xfer include => bad-number
Source: https://habr.com/ru/post/214093/
All Articles