sonus sonus sonus, sonus is a 4 letter word

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10744 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Anthony Minessale 2008-12-12 22:34:41 +00:00
parent d8fe781613
commit a064847a11
2 changed files with 13 additions and 0 deletions

View File

@ -2197,6 +2197,16 @@ uint8_t sofia_glue_negotiate_sdp(switch_core_session_t *session, sdp_session_t *
switch_set_flag_locked(tech_pvt, TFLAG_BUGGY_2833);
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Activate Buggy RFC2833 Mode!\n");
}
if (strstr(tech_pvt->origin, "Sonus_UAC")) {
switch_set_flag_locked(tech_pvt, TFLAG_BUGGY_2833);
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING,
"Hello,\nI see you have a Sonus!\n"
"FYI, Sonus cannot follow the RFC on the proper way to send DTMF.\n"
"Sadly, my creator had to spend several hours figuring this out so I thought you'd like to know that!\n"
"Don't worry, DTMF will work but you may want to ask them to fix it......\n"
);
}
}
if ((m = sdp->sdp_media) && (m->m_mode == sdp_sendonly || m->m_mode == sdp_inactive)) {

View File

@ -1204,6 +1204,9 @@ static void do_2833(switch_rtp_t *rtp_session)
rtp_session->dtmf_data.timestamp_dtmf,
rtp_session->dtmf_data.out_digit_sofar,
rtp_session->dtmf_data.out_digit_sub_sofar, rtp_session->dtmf_data.out_digit_dur, rtp_session->seq);
if (switch_test_flag(rtp_session, SWITCH_RTP_FLAG_BUGGY_2833)) {
rtp_session->dtmf_data.timestamp_dtmf = rtp_session->last_write_ts + samples;
}
}
if (loops != 1) {