Hi community,
We make a call from a Cisco video endpoint towards Asterisk (Cisco SIP-cabaple video endpoint-> CUCM → Cisco VCS → Asterisk external SIP interface (chan_sip)).
- Cisco VCS initiates the SIP session with slow start INVITE (without SDP).
- Asterisk responds with 200 OK SDP (offer) including the list of codecs enabled in general SIP settings, however this 200 OK SDP (offer) does not include “telephone-event”.
- Now that telephone-event is missing, we are not able to make DTMF (RFC2833) work.
Is there a way to make Asterisk include the telephone-event in 200 OK SDP (offer)?
-
Asterisk version: FPBX-15.0.17.67(16.17.0)
-
DTMF mode in default SIP settings is RFC2833.
-
DTMF mode is set to RFC2833 in “dtmf_mode=rfc2833” in “sip_general_additional.conf” (chan_sip settings).
Below you can find the SIP trace from Asterisk console:
<--- SIP read from TCP:X.X.X.X:27339 --->
INVITE sip:bob@X.X.X.X SIP/2.0
Via: SIP/2.0/TCP X.X.X.X:5060;egress-zone=DNS1;branch=z9hG4bK1a78e818d37bd4c6dfff6471516aa90d60535;proxy-call-id=363d641e-4ec9-4f70-afcd-605479c5fa7a;rport
Call-ID: 50b38100-21817ab3-35f954-1a46de0a@X.X.X.X
CSeq: 101 INVITE
Remote-Party-ID: "C102" <sip:alice@X.X.X.X>;privacy=off;screen=no;party=calling
Contact: <sip:X.X.X.X:5073;transport=tcp>
From: "C102" <sip:alice@X.X.X.X>;tag=55477354~a8c47ddd-95c1-4495-8516-36aa922eb5fd-45076815
To: <sip:bob@X.X.X.X>
Max-Forwards: 14
Allow: INVITE,ACK,BYE,CANCEL,INFO,OPTIONS,REFER,SUBSCRIBE,NOTIFY
User-Agent: TANDBERG/4352 (X8.10.4-b2bua-1.0)
Supported: X-cisco-srtp-fallback,replaces,timer
Session-Expires: 1800;refresher=uac
Min-SE: 500
P-Asserted-Identity: "C102" <sip:alice@X.X.X.X>
X-TAATag: 1ed3ee20-f8b0-4a34-8d25-e816bf1fa658
Session-ID: c9b0fc5179dd99ac59250faa55477353;remote=00000000000000000000000000000000
Content-Length: 0
<------------->
--- (24 headers 0 lines) ---
Sending to X.X.X.X:27339 (NAT)
Using INVITE request as basis request - 50b38100-21817ab3-35f954-1a46de0a@X.X.X.X
No matching peer for 'alice' from 'X.X.X.X:27339'
Looking for bob in from-sip-external (domain X.X.X.X)
sip_route_dump: route/path hop: <sip:proxy-call-id=363d641e-4ec9-4f70-afcd-605479c5fa7a@X.X.X.X:5060;transport=tcp;lr>
<--- Transmitting (NAT) to X.X.X.X:27339 --->
SIP/2.0 100 Trying
Via: SIP/2.0/TCP X.X.X.X:5060;egress-zone=DNS1;branch=z9hG4bK1a78e818d37bd4c6dfff6471516aa90d60535;proxy-call-id=363d641e-4ec9-4f70-afcd-605479c5fa7a;received=X.X.X.X;rport=27339
From: "C102" <sip:alice@X.X.X.X;tag=55477354~a8c47ddd-95c1-4495-8516-36aa922eb5fd-45076815
To: <sip:bob@X.X.X.X>
Call-ID: 50b38100-21817ab3-35f954-1a46de0a@X.X.X.X
CSeq: 101 INVITE
Server: FPBX-15.0.17.67(16.17.0)
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE
Supported: replaces, timer
Session-Expires: 1800;refresher=uac
Contact: <sip:bob@X.X.X.X:5060;transport=tcp>
Content-Length: 0
<------------>
Audio is at 14960
Video is at X.X.X.X:14354
Adding codec opus to SDP
Adding codec ulaw to SDP
Adding codec alaw to SDP
Adding codec g722 to SDP
Adding codec g729 to SDP
Adding video codec h264 to SDP
<--- Reliably Transmitting (NAT) to X.X.X.X:27339 --->
SIP/2.0 200 OK
Via: SIP/2.0/TCP X.X.X.X:5060;egress-zone=DNS1;branch=z9hG4bK1a78e818d37bd4c6dfff6471516aa90d60535;proxy-call-id=363d641e-4ec9-4f70-afcd-605479c5fa7a;received=X.X.X.X;rport=27339
From: "C102" <sip:alice@X.X.X.X>;tag=55477354~a8c47ddd-95c1-4495-8516-36aa922eb5fd-45076815
To: <sip:bob@X.X.X.X>;tag=as2337c223
Call-ID: 50b38100-21817ab3-35f954-1a46de0a@X.X.X.X
CSeq: 101 INVITE
Server: FPBX-15.0.17.67(16.17.0)
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE
Supported: replaces, timer
Session-Expires: 1800;refresher=uac
Contact: <sip:bob@X.X.X.X:5060;transport=tcp>
Content-Type: application/sdp
Require: timer
Content-Length: 411
v=0
o=root 1865105692 1865105692 IN IP4 X.X.X.X
s=Asterisk PBX 16.17.0
c=IN IP4 X.X.X.X
b=CT:6000
t=0 0
m=audio 14960 RTP/AVP 107 0 8 9 18
a=rtpmap:107 opus/48000/2
a=fmtp:107 useinbandfec=1
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:9 G722/8000
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=no
a=maxptime:20
a=sendrecv
m=video 14354 RTP/AVP 99
a=rtpmap:99 H264/90000
a=sendrecv
<------------>
<--- SIP read from TCP:X.X.X.X:27339 --->
ACK sip:bob@X.X.X.X:5060;transport=tcp SIP/2.0
Via: SIP/2.0/TCP X.X.X.X:5060;egress-zone=DNS1;branch=z9hG4bKb988232f6956c0af3c1e22d35b9db41260537;proxy-call-id=363d641e-4ec9-4f70-afcd-605479c5fa7a;rport
Call-ID: 50b38100-21817ab3-35f954-1a46de0a@X.X.X.X
CSeq: 101 ACK
From: "C102" <sip:alice@X.X.X.X>;tag=55477354~a8c47ddd-95c1-4495-8516-36aa922eb5fd-45076815
To: <sip:bob@X.X.X.X>;tag=as2337c223
Max-Forwards: 70
User-Agent: TANDBERG/4352 (X8.10.4-b2bua-1.0)
X-TAATag: 1ed3ee20-f8b0-4a34-8d25-e816bf1fa658
Session-ID: c9b0fc5179dd99ac59250faa55477353;remote=b1c6339a00255000a00002e48a000000
Content-Type: application/sdp
Content-Length: 641
v=0
o=tandberg 0 1 IN IP4 X.X.X.X
s=-
c=IN IP4 X.X.X.X
b=AS:6000
t=0 0
m=audio 51960 RTP/AVP 9 0 8 18 101
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=no
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=sendrecv
a=rtcp:51961 IN X.X.X.X
m=video 51464 RTP/AVP 97
b=TIAS:5936000
a=rtpmap:97 H264/90000
a=fmtp:97 profile-level-id=420016;max-mbps=245000;max-fs=9000;max-cpb=200;max-br=5000;max-smbps=245000;max-fps=6000;packetization-mode=0;max-rcmd-nalu-size=3456000;sar-supported=16
a=sendrecv
a=label:11
a=rtcp:51465 IN IP4 X.X.X.X
<------------->
--- (13 headers 23 lines) ---
Got SDP version 1 and unique parts [tandberg 0 IN IP4 X.X.X.X]
Found RTP audio format 9
Found RTP audio format 0
Found RTP audio format 8
Found RTP audio format 18
Found RTP audio format 101
Found audio description format G722 for ID 9
Found audio description format PCMU for ID 0
Found audio description format PCMA for ID 8
Found audio description format G729 for ID 18
Found audio description format telephone-event for ID 101
Found RTP video format 97
Found video description format H264 for ID 97
Capabilities: us - (opus|ulaw|alaw|g722|g729|h264), peer - audio=(ulaw|alaw|g722|g729)/video=(h264)/text=(nothing), combined - (ulaw|alaw|g722|g729|h264)
Non-codec capabilities (dtmf): us - 0x1 (telephone-event|), peer - 0x1 (telephone-event|), combined - 0x1 (telephone-event|)