[Home]

Summary:ASTERISK-21672: Early media not properly handled on outbound TCP trunk
Reporter:dcitelecom (dcitelecom)Labels:
Date Opened:2013-04-23 10:38:55Date Closed:2013-04-23 12:29:16
Priority:MajorRegression?No
Status:Closed/CompleteComponents:Channels/chan_sip/CallCompletionSupplementaryServices
Versions:10.12.1 Frequency of
Occurrence
Constant
Related
Issues:
is duplicated byASTERISK-21673 Asterisk conversion of 183 without SDP to 180 breaks interoperability with Microsoft Lync
Environment:FreePBX distro 3.211.63-7 Centos 6.3, Asterisk 10.12.1Attachments:( 0) Early_media_debug.log
Description:Voxbone DID (defined in inbound routes) is sent out to customer trunk ABCco (TCP) trunk.
They reply with 183 session progress (early media announcement) and Asterisk sends 180 ringing back to Voxbone.

This is problematic where the DID is forwarded to a cell phone and the phone is off or the forwarding number was entered wrong. In both cases the user should hear an early media announcement that the user is not available or the number is not in service. Instead they hear a ring tone and don't know there is a problem. Log attached
Comments:By: dcitelecom (dcitelecom) 2013-04-23 10:44:01.266-0500

debug file


By: dcitelecom (dcitelecom) 2013-04-23 11:00:05.963-0500

DIALPLAN
exten => #0216479999999,1,Set(__FROM_DID=${EXTEN})
exten => #0216479999999,n,Gosub(app-blacklist-check,s,1())
exten => #0216479999999,n,Gosub(sub-record-cancel,s,1())
exten => #0216479999999,n,Set(__REC_POLICY_MODE=never)
exten => #0216479999999,n,Set(CDR(did)=${FROM_DID})
exten => #0216479999999,n,ExecIf($[ "${CALLERID(name)}" = "" ] ?Set(CALLERID(name)=${CALLERID(num)}))
exten => #0216479999999,n,Set(CHANNEL(musicclass)=none)
exten => #0216479999999,n,Set(__MOHCLASS=none)
exten => #0216479999999,n,Set(__CALLINGPRES_SV=${CALLERPRES()})
exten => #0216479999999,n,Set(CALLERPRES()=allowed_not_screened)
exten => #0216479999999,n(dest-ext),Goto(ext-trunk,5,1)

[ABCAsia] (trunk 5)
disallow=all
type=peer
host=2x2.xxx.2x3.1x5
transport=tcp
allow=alaw
allow=ulaw
relaxdtmf=yes
dtmfmode=rfc2833
directmedia=yes
context=from-ABCco-HK


By: Michael L. Young (elguero) 2013-04-23 12:29:02.315-0500

Per the Asterisk versions page at https://wiki.asterisk.org/wiki/display/AST/Asterisk+Versions, maintenance (bug) support for the 10 branch has ended. For continued maintenance support please move to 11 branch which is a long term support (LTS) branch.  After testing with a supported branch, if you find this problem has not been resolved, please open a new issue against Asterisk 11.



By: David Woolley (davidw) 2013-04-25 05:12:04.186-0500

Also note that it is a deliberate policy, introduced in, I think, 1.6.2, that early media will not be forwarded on SIP channels unless the dialplan explicitly calls the Progress() application.

By: dcitelecom (dcitelecom) 2013-04-25 07:33:05.169-0500

I think the progress() application is meant for outbound calls from Asterisk where we want to play early media generated in Asterisk (i.e. some recording) and then continue in the dial plan. Anyways, I tried using that and it did not work either in this specific case. Please note that this issue is closed in Asterisk 10 and another ticket was opened in Asterisk 11.