Incorrect caller id (Inteno EG300)

Hi,

Im using a Inteno EG300 and on it there is a Asterisk server running (Asterisk 1.8.10.1). My problem is caller id. There is possibility to use both analogue telephone and DECT phone (using Inteno EG300 as basstation).
I can see in SIP-trace that FROM-field, PAI-field and TO-field all have numbers in international format (+358xxx, finland). I can also verify in Inteno log (GUI) that incoming call has format +358xxx.

The problem is that the analogue phone does not show correct caller id. It shows 00358457123456 instead of +3584571234567. This makes callback to missed call impossible as one digit is missing. I have found possibility to edit caller id in extensions.conf file.
This is standard setup:

[call_line]
; Incoming calls will end up in this context when a local line should be dialled
exten => +358xxxxx,1,Macro(call_filter0-incoming)
exten => +358xxxxx,n,Set(__TRANSFER_CONTEXT=${CHANNEL(peername)}-transfer)
exten => +358xxxxx,n,GotoIf($["${CALLERID(NUM):0:1}" = "+"]?rewrite:norewrite)
exten => +358xxxxx,n(rewrite),Set(CALLERID(num)="00${CALLERID(num):1}"))
exten => +358xxxxx,n(norewrite),NoOp()
exten => +358xxxxx,n,GotoIf(${DB_EXISTS(CFBS/sip0)}?cfbs)
exten => +358xxxxx,n,Dial(BRCM\/0\&BRCM\/4,,tF(hangup,h,2))
exten => +358xxxxx,n,Goto(+358xxxxx,nocfbs)
exten => +358xxxxx,n(cfbs),Dial(BRCM\/0\&BRCM\/4,20,tF(hangup,h,2))
exten => +358xxxxx,n(nocfbs),NoOp()
exten => +358xxxxx,n,GotoIf($["${DIALSTATUS}"="ANSWER"]?endcall)
exten => +358xxxxx,n,GotoIf($["${DIALSTATUS}"="BUSY"]?noanswer)
exten => +358xxxxx,n,GotoIf($["${DIALSTATUS}"="NOANSWER"]?noanswer:endcall)
exten => +358xxxxx,n(noanswer),Macro(callhandler-noanswer,${CHANNEL(peername)})
exten => +358xxxxx,n(endcall),Hangup()

if I change these line
exten => +358xxxxx,n,GotoIf($["${CALLERID(NUM):0:1}" = "+"]?rewrite:norewrite)
to
exten => +358xxxxx,n,GotoIf($["${CALLERID(NUM):0:1}" = "3"]?rewrite:norewrite)
Then caller id is 3584571234567.

My question is how can I alter caller id so that I caller id becomes +3584571234567 ??

Please mark up your dialplan (and any subsequent logs) as preformatted text, when using the forum.

Please provide evidence that the internal caller ID in Asterisk is truncated; there may be a length limitation downstream of Asterisk. I’d suspect the, non-standard, BRCM channel driver.

I don’t understand this:

if I change these line

exten => +358xxxxx,n,GotoIf($["${CALLERID(NUM):0:1}" = “+”]?rewrite:norewrite)
to

exten => +358xxxxx,n,GotoIf($["${CALLERID(NUM):0:1}" = “3”]?rewrite:norewrite)

Then caller id is 3584571234567.

as the second version won’t match 3 at all.

Please note that Asterisk 1.8 is well past end of life, and GUIs aren’t supported here.

Hi,

How can I do that? (provide evidence)

BR Henke

Produce a log of the dialplan execution, showing the wrong right hand side on a Set.

Add debuggng code (Noop) to the dialplan, to show the final value of CALLERID(num).

Using the debugging code in the BRCM channel driver (which probably only the vendor can support).

Etc.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.