Can't get called id working

I am running asterisk asterisk14-1.4.42-3_centos5 and I have installed:

  • dahdi-linux-2.7.0-1_centos5
  • dahdi-tools-2.7.0-1_centos5
  • dahdi-linux-kmod-2.7.0-1_centos5.2.6.18_408.el5
  • kmod-dahdi-linux-2.7.0-1_centos5.2.6.18_408.el5
  • asterisk14-dahdi-1.4.42-3_centos5

Also I live in the United States.

I have a Digium TDM 400p with 1 FXS and 2 FXO modules.
I have also tested the line with a regular phone and caller id works.

=== dahdi-channels.conf ===
signalling=fxo_ks
callerid="me myself and I" <100>
mailbox=1000
group=2
context=default
channel => 1

;;; line="2 WCTDM/4/1 FXSKS  (In use)"
signalling=fxs_ks
callerid=asreceived
group=1
context=incoming
channel => 3-4

=== chan_dahdi.conf ===
[trunkgroups]

[channels]
switchtype=national
signalling=fxo_ks
rxwink=300
usecallerid=yes
; I have tried:
; v23, dtmf and smdi all without success
cidsignalling=bell
; also tried cidstart=polarity without success.
cidstart=ring
hidecallerid=no
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=no
echotraining=800
immediate=no
busydetect=yes
busycount=8
hanguponpolarityswitch=no
callprogress=no
mohinterpret=default
mohsuggest=default

#include dahdi-channels.conf

=== relevant section of extensions.conf ===
[incoming]

exten => s,1,Wait(2)
exten => s,2,NoOp("CALLERID: ${CALLERID(num)}");
exten => s,3,PrivacyManager()
exten => s,4,Set(CALLFILENAME=${UNIQUEID})
exten => s,5,Answer()
exten => s,n,Dial(DAHDI/1|20,tHw) 
exten => s,n,Voicemail(100@default|su)
exten => s,n,Hangup

=== From Log File ===
    -- Starting simple switch on 'DAHDI/4-1'
[Feb 20 12:31:26] NOTICE[10045]: chan_dahdi.c:7339 ss_thread: Got event 18 (Ring Begin)...
[Feb 20 12:31:29] NOTICE[10045]: chan_dahdi.c:7339 ss_thread: Got event 2 (Ring/Answered)...
[Feb 20 12:31:32] NOTICE[10045]: chan_dahdi.c:7339 ss_thread: Got event 18 (Ring Begin)...
[Feb 20 12:31:32] DEBUG[10045]: pbx.c:1873 pbx_extension_helper: Launching 'Wait'
    -- Executing [s@incoming:1] Wait("DAHDI/4-1", "1") in new stack
[Feb 20 12:31:33] DEBUG[10045]: pbx.c:1721 pbx_substitute_variables_helper_full: Function result is ''
[Feb 20 12:31:33] DEBUG[10045]: pbx.c:1873 pbx_extension_helper: Launching 'NoOp'
    -- Executing [s@incoming:2] NoOp("DAHDI/4-1", ""CALLERID: "") in new stack
[Feb 20 12:31:33] DEBUG[10045]: pbx.c:1873 pbx_extension_helper: Launching 'PrivacyManager'
    -- Executing [s@incoming:3] PrivacyManager("DAHDI/4-1", "") in new stack

=================================

Any ideas on how to resolve this?

-itjack

Find Out how the callerid is sent, and enable these 3 parameters on your chan_dahdi.conf, you need to set these parameters to match what the PBX actually uses

cidsignalling=dtmf
cidstart=polarity
relaxdtmf=yes

; Type of caller ID signalling in use
;     bell     = bell202 as used in US (default)
;     v23      = v23 as used in the UK
;     v23_jp   = v23 as used in Japan
;     dtmf     = DTMF as used in Denmark, Sweden and Netherlands
;     smdi     = Use SMDI for caller ID.  Requires SMDI to be enabled (usesmdi).
;
;cidsignalling=v23
;
; What signals the start of caller ID
;     ring        = a ring signals the start (default)
;     polarity    = polarity reversal signals the start
;     polarity_IN = polarity reversal signals the start, for India, 
;                   for dtmf dialtone detection; using DTMF.
;                   (see doc/India-CID.txt)
;
;cidstart=polarity

Also, Asterisk 1.4 is many years beyond the end of its support life.