rendered paste body[ldtoll]
; Begin processing LD call 15 digit, AAAA-NPA-NXX-XXXX
exten => _9XXX9NXXNXXXXXX,1,NoOp(Processing LD call dialed as ${EXTEN})
; Capture the accountcode
exten => _9XXX9NXXNXXXXXX,n,Set(accountcode=${EXTEN:0:${PGCODE}})
exten => _9XXX9NXXNXXXXXX,n,NoOp(Account code extracted as ${accountcode})
; Get the number to be dialed (length of account code)
exten => _9XXX9NXXNXXXXXX,n,Set(mynum=${EXTEN:${PGCODE}})
exten => _9XXX9NXXNXXXXXX,n,NoOp(LD number extracted as ${mynum})
; Dial
exten => _9XXX9NXXNXXXXXX,n,NoOp(Dialing LD call)
exten => _9XXX9NXXNXXXXXX,n,Macro(lddial|${accountcode}|${mynum})
exten => _9XXX9NXXNXXXXXX,n,NoOp(LD call to ${mynum} ended)
exten => _9XXX9NXXNXXXXXX,n,Hangup
[macro-lddial]
; $ARG1 = account code
; $ARG2 = number
exten => s,1,Set(CDR(accountcode)=$ARG1)
exten => s,n,Dial(${LDTRUNK}|${ARG2}|100|tRP)
exten => s,n,Hangup