Hi Mike
This is a copy from the PI that would not connect to the 553182 would only say it was connect to 55318
[general]
static = yes ; These two lines prevent the command-line interface
writeprotect = yes ; from overwriting the config file. Leave them here.
[globals]
HOMENPA = 999 ; change this to your Area Code
NODE = 65930 ; change this to your node number
[default]
exten => i,1,Hangup
[radio-secure]
;exten => ${NODE},1,rpt(${EXTEN})
exten => _XXXX!,1,Set(NODENUM=${CALLERID(num)})
same => n,NoOp(Connect from node: ${NODENUM})
same => n,NoOp(Connect to: ${EXTEN})
same => n,NoOp(Channel type: ${CHANNEL(channeltype)})
same => n,GotoIf($["${CHANNEL(channeltype)}" = "IAX2"]?:allowlist) ; if not IAX2, skip IP check
; if peer IP is localhost, connect
same => n,NoOp(Channel Peer IP: ${CHANNEL(peerip)})
same => n,GotoIf($["${CHANNEL(peerip)}" = "127.0.0.1"]?connect) ; if localhost; connect
; if allowlist/extension doesn't exist, check the denylist
same => n(allowlist),GotoIf($[${DB_KEYCOUNT(allowlist/${EXTEN})} = 0]?denylist) ; no allowlist, check denylist
; if allowlist/extension/callerID exists, connect
same => n,GotoIf(${DB_EXISTS(allowlist/${EXTEN}/${NODENUM})}?connect) ; in allowlist, connect
same => n,NoOp(${EXTEN} not in allowlist, Hangup)
same => n,Hangup
; if denylist/extension/callerID doesn't exist, connect
same => n(denylist),GotoIf(${DB_EXISTS(denylist/${EXTEN}/${NODENUM})}?:connect) ; not in denylist, connect
same => n,NoOp(${EXTEN} is in denylist, Hangup)
same => n,Hangup
; connect!
same => n(connect),rpt(${EXTEN})
same => n,Hangup
[iaxrpt]
; Entered from iaxrpt in iax.conf
; Info: The X option passed to the Rpt application
; disables the normal security checks.
; Because incoming connections are validated in iax.conf,
; and we don't know where the user will be coming from in advance,
; the X option is required.
exten => ${NODE},1,rpt(${EXTEN},X) ; NODE is the Name field in iaxrpt
[iax-client] ; for IAX VoIP clients.
exten => _XXXXX!,1,Ringing()
same => n,Wait(1)
same => n,Answer()
same => n,Set(CALLSIGN=${CALLERID(name)})
same => n,NoOp(Caller ID name is ${CALLSIGN})
same => n,NoOp(Caller ID number is ${CALLERID(number)})
same => n,GotoIf(${ISNULL(${CALLSIGN})}?hangit)
same => n,Playback(rpt/connected-to&rpt/node)
same => n,SayDigits(${EXTEN})
same => n,rpt(${EXTEN},P,${CALLSIGN})
same => n(hangit),NoOp(No Caller ID Name)
same => n,Playback(connection-failed)
same => n,Wait(1)
same => n,Hangup1
; Comment-out the following clause if you want Allstar Autopatch service
[pstn-out]
exten => _NXXNXXXXXX,1,playback(ss-noservice)
same => n,Congestion
; Un-comment out the following clause if you want Allstar Autopatch service
;[pstn-out]
;exten => _NXXNXXXXXX,1,Dial(IAX2/allstar-autopatch/${EXTEN})
; same => n,Busy
[invalidnum]
exten => s,1,Wait(3)
same => n,Playback(ss-noservice)
same => n,Wait(1)
same => n,Hangup
[radio]
exten => _X11,1,Goto(check_route,${EXTEN},1);
exten => _NXXXXXX,1,Goto(check_route,1${HOMENPA}${EXTEN},1)
exten => _1XXXXXXXXXX,1,Goto(check_route,${EXTEN},1)
exten => _07XX,1,Goto(parkedcalls,${EXTEN:1},1)
exten => 00,1,Goto(my-ip,s,1)
[check_route]
exten => _X.,1,NoOp(${EXTEN})
; no 800
exten => _1800NXXXXXX,2,Goto(invalidnum,s,1)
exten => _1888NXXXXXX,2,Goto(invalidnum,s,1)
exten => _1877NXXXXXX,2,Goto(invalidnum,s,1)
exten => _1866NXXXXXX,2,Goto(invalidnum,s,1)
exten => _1855NXXXXXX,2,Goto(invalidnum,s,1)
; no X00 NPA
exten => _1X00XXXXXXX,2,Goto(invalidnum,s,1)
; no X11 NPA
exten => _1X11XXXXXXX,2,Goto(invalidnum,s,1)
; no X11
exten => _X11,2,Goto(invalidnum,s,1)
; no 555 Prefix in any NPA
exten => _1NXX555XXXX,2,Goto(invalidnum,s,1)
; no 976 Prefix in any NPA
exten => _1NXX976XXXX,2,Goto(invalidnum,s,1)
; no NPA=809
exten => _1809XXXXXXX,2,Goto(invalidnum,s,1)
; no NPA=900
exten => _1900XXXXXXX,2,Goto(invalidnum,s,1)
; okay, route it
exten => _1NXXXXXXXXX,2,Goto(pstn-out,${EXTEN:1},1)
exten => _X.,2,Goto(invalidnum,s,1)
[my-ip]
exten => s,1,Wait(1)
same => n,SayAlpha(${CURL(http://myip.vg)})
same => n,Hangup
[allstar-sys]
exten => _1.,1,Rpt(${EXTEN:1},Rrpt/node:NODE:rpt/in-call:digits/0:PARKED,120)
exten => _1.,n,Hangup
exten => _2.,1,Ringing
exten => _2.,n,Wait(3)
exten => _2.,n,Answer
exten => _2.,n,Playback(rpt/node)
exten => _2.,n,Saydigits(${EXTEN:1})
exten => _2.,n,Rpt(${EXTEN:1},P,${CALLERID(name)}-P)
exten => _2.,n,Hangup
exten => _3.,1,Ringing
exten => _3.,n,Wait(3)
exten => _3.,n,Answer
exten => _3.,n,Playback(rpt/node)
exten => _3.,n,Saydigits(${EXTEN:1})
exten => _3.,n,Rpt(${EXTEN:1},Pv,${CALLERID(name)}-P)
exten => _3.,n,Hangup
exten => _4.,1,Ringing
exten => _4.,n,Wait(3)
exten => _4.,n,Answer
exten => _4.,n,Playback(rpt/node)
exten => _4.,n,Saydigits(${EXTEN:1})
exten => _4.,n,Rpt(${EXTEN:1},D,${CALLERID(name)}-P)
exten => _4.,n,Hangup
exten => _5.,1,Ringing
exten => _5.,n,Wait(3)
exten => _5.,n,Answer
exten => _5.,n,Playback(rpt/node)
exten => _5.,n,Saydigits(${EXTEN:1})
exten => _5.,n,Rpt(${EXTEN:1},Dv,${CALLERID(name)}-P)
exten => _5.,n,Hangup
[allstar-public]
exten => s,1,Ringing
same => n,Set(RESP=${CURL(https://register.allstarlink.org/cgi-bin/authwebphone.pl?${CALLERID(name)})})
same => n,GotoIf($["${RESP:0:1}" = "?"]?hangit)
same => n,GotoIf($["${RESP:0:1}" = ""]?hangit)
same => n,GotoIf($["${RESP:0:5}" != "OHYES"]?hangit)
same => n,Set(CALLSIGN=${RESP:5})
same => n,Set(NODENUM=${CALLERID(num)})
; if allowlist/extension doesn't exist, check the denylist
same => n,GotoIf($[${DB_KEYCOUNT(allowlist/${NODENUM})} = 0]?denylist) ; no allowlist, check denylist
; if allowlist/extension/callsign exists, connect
same => n,GotoIf(${DB_EXISTS(allowlist/${NODENUM}/${CALLSIGN})}?connect) ; in allowlist, connect
same => n,NoOp(${CALLSIGN} not in allowlist, Hangup)
same => n,Hangup
; if denylist/extension/callsign doesn't exist, connect
same => n(denylist),GotoIf(${DB_EXISTS(denylist/${NODENUM}/${CALLSIGN})}?:connect) ; not in denylist, connect
same => n,NoOp(${CALLSIGN} is in denylist, Hangup)
same => n,Hangup
; connect!
same => n(connect),Set(CALLERID(name)=${CALLSIGN})
same => n,Set(CALLERID(num)=0)
same => n,Wait(3)
same => n,Playback(rpt/connected-to&rpt/node,noanswer)
same => n,SayDigits(${NODENUM})
same => n,Rpt(${NODENUM},X)
same => n,Hangup
; hangup!
same => n(hangit),Answer
same => n,Wait(1)
same => n,Hangup
#tryinclude "custom/extensions.conf"