Cannot Capture CallerID


#1

Hi All,
First of all, I’m new to Asterisk. I’ve just finished installing my first Asterisk Server:
Asterisk Ver. 13.18 Cert.2
DAHDI Ver. 2.11.1
Ubuntu Ver. 14.04 (i386) on a Pentium D Hardware
Card installed: Digium TDM400P Rev. E/F (4 FXO)

With my current setting, I’ve successfully making calls/receiving calls to/from PSTN and Mobiles. However, every time the Asterisk receive calls, it cannot capture the CallerID (and the SIP phone also cannot display CallerID only “Asterisk”).

Can anybody help me? For your info, I’ve subscribed CallerID service from my local Telco (Indonesia) and test it with normal phone and it works fine.

Following are my settings:

chan_dahdi.conf

[trunkgroups]
[channels]
#include /etc/asterisk/dahdi-channels.conf
toneduration=100
usedistinctiveringdetection=yes
distinctiveringaftercid=yes
usecallerid=yes
cidsignalling=bell
cidstart=polarity
hidecallerid=no
transfer=yes
cancallforward=yes
callreturn=yes
echocancel=no
echocancelwhenbridged=no
group=0
callgroup=0
pickupgroup=0
useincomingcalleridondahditransfer = yes
callerid=asreceived
#DEFAULT_CIDRINGS 2

dahdi_channels.conf

; Span 1: WCTDM/4 “Wildcard TDM400P REV E/F Board 5” (MASTER)
;;; line="1 WCTDM/4/0 FXSKS (EC: MG2 - INACTIVE)"
signalling=fxs_ks
callerid=asreceived
group=0
context=from-pstn
channel => 1
context=default

;;; line="2 WCTDM/4/1 FXSKS (EC: MG2 - INACTIVE)"
signalling=fxs_ks
callerid=asreceived
group=0
context=from-pstn
channel => 2
callerid=
group=
context=default

;;; line="3 WCTDM/4/2 FXSKS (EC: MG2 - INACTIVE)"
signalling=fxs_ks
callerid=asreceived
group=0
context=from-pstn
channel => 3
callerid=
group=
context=default

;;; line="4 WCTDM/4/3 FXSKS (EC: MG2 - INACTIVE)"
signalling=fxs_ks
callerid=asreceived
group=0
context=from-pstn
channel => 4
callerid=
group=
context=default

extensions.conf

[general]
static=yes
writeprotect=no
clearglobalvars=no
[globals]

[local-call]
exten => 4050,1,Dial(SIP/4050)
exten => 4070,1,Dial(SIP/4070)
exten => 4080,1,Dial(SIP/4080)
exten => 4080,1,Dial(SIP/4090)
exten => 5110,1,Dial(SIP/5110)
exten => 5220,1,Dial(SIP/4050)
exten => 5230,1,Dial(SIP/5230)
exten => 5310,1,Dial(SIP/5310)

;;-- from local via pstn call --;;
exten =>_9X.,1,Dial(DAHDI/1/${EXTEN:1})
exten =>_9X.,2,Hangup

;;incoming call
[from-pstn]
exten => s,1,NoOp(${CALLERID(num)})
exten => s,n,Dial(SIP/4080)
exten => s,n,Hangup()

sip.conf

[4050]
type=friend
context=local-call
callerid=<4080>
host=dynamic
;defaultip=192.168.0.18
qualify=yes
disallow=all
allow=g722

[4070]
type=friend
context=local-call
callerid=<4080>
host=dynamic
;defaultip=192.168.0.18
qualify=yes
disallow=all
allow=g722

[4080]
type=friend
context=local-call
callerid=<4090>
host=dynamic
;defaultip=192.168.0.18
qualify=yes
disallow=all
allow=g722


#2

Try adding a Wait(2) in your from-pstn context before the dial.

You may need to wait for the caller ID to be transmitted.


#3

Hi,
Thanks for the suggestion. I’ve tried to add the Wait(2) extension.conf

exten => s,1,Wait(2)
exten => s,n,NoOp(${CALLERID(num)})

But the result is still the same, no CallerID


#4

Hi All,

anybody else can help me on this issue?


#5

Enable low level debugging on DAHDI to see the line states. (Sorry I don’t use DAHDI, so can’t give details.)

Contact the card vendor, assuming the card is a current one. You may need the card serial number for this.