Oh, um, I just tested this sending a 1NXXXXXXXXX CID and it stripped it. I'm tired today so I can't figure out how that happened.
Here's the outbound leg log lines from the softphone:
-- Executing [s@macro-dialout-trunk:19] ExecIf("SIP/5554-001056c0", "1?Set(CONNECTEDLINE(num,i)=1855mynumber") in new stack
-- Executing [s@macro-dialout-trunk:20] ExecIf("SIP/5554-001056c0", "1?Set(CONNECTEDLINE(name,i)=CID:19474444444)
Here's the inbound leg.
Executing [1855mynumber@from-pstn-e164-us:1] Set("SIP/VI174.30-001056c2", "CALLERID(number)=9474444444") in new stack
-- Executing [1855mynumber@from-pstn-e164-us:2] Goto("SIP/VI174.30-001056c2", "from-pstn,1855mynumber,1") in new stack
Here's the context:
[from-pstn-e164-us]
exten => _+1NXXNXXXXXX/_+1NXXNXXXXXX,1,Set(CALLERID(number)=${CALLERID(number):2})
exten => _+1NXXNXXXXXX/_NXXNXXXXXX,2,Goto(from-pstn,${EXTEN:2},1)
exten => _+1NXXNXXXXXX/_+NX.,1,Set(CALLERID(number)=011${CALLERID(number):1})
exten => _+1NXXNXXXXXX/_011NX.,n,Goto(from-pstn,${EXTEN:2},1)
exten => _+1NXXNXXXXXX,1,Goto(from-pstn,${EXTEN:2},1)
exten => _[0-9+]./_+1NXXNXXXXXX,1,Set(CALLERID(number)=${CALLERID(number):2})
exten => _[0-9+]./_1NXXNXXXXXX,1,Set(CALLERID(number)=${CALLERID(number):1})
exten => _[0-9+]./_NXXNXXXXXX,n,Goto(from-pstn,${EXTEN},1)
exten => _[0-9+]./_+NX.,1,Set(CALLERID(number)=011${CALLERID(number):1})
exten => _[0-9+]./_011NX.,n,Goto(from-pstn,${EXTEN},1)
exten => _[0-9+].,1,Goto(from-pstn,${EXTEN},1)
exten => s/_+1NXXNXXXXXX,1,Set(CALLERID(number)=${CALLERID(number):2})
exten => s/_NXXNXXXXXX,n,Goto(from-pstn,${EXTEN},1)