FS-8975 #resolve [DTMF variables not functioning]

This commit is contained in:
Anthony Minessale 2016-03-23 09:55:43 -05:00
parent 72e3462118
commit ddd7fa3c03
2 changed files with 11 additions and 8 deletions

View File

@ -42,6 +42,7 @@ SWITCH_BEGIN_EXTERN_C
#define SWITCH_NO_CRYPTO_TAG -1
typedef enum {
DTMF_AUTO,
DTMF_2833,
DTMF_INFO,
DTMF_NONE

View File

@ -4504,14 +4504,16 @@ SWITCH_DECLARE(uint8_t) switch_core_media_negotiate_sdp(switch_core_session_t *s
if (best_te) {
smh->mparams->te_rate = best_te_rate;
if (sdp_type == SDP_TYPE_REQUEST) {
smh->mparams->te = smh->mparams->recv_te = (switch_payload_t) best_te;
switch_channel_set_variable(session->channel, "dtmf_type", "rfc2833");
smh->mparams->dtmf_type = DTMF_2833;
} else {
smh->mparams->te = (switch_payload_t) best_te;
switch_channel_set_variable(session->channel, "dtmf_type", "rfc2833");
smh->mparams->dtmf_type = DTMF_2833;
if (smh->mparams->dtmf_type == DTMF_AUTO) {
if (sdp_type == SDP_TYPE_REQUEST) {
smh->mparams->te = smh->mparams->recv_te = (switch_payload_t) best_te;
switch_channel_set_variable(session->channel, "dtmf_type", "rfc2833");
smh->mparams->dtmf_type = DTMF_2833;
} else {
smh->mparams->te = (switch_payload_t) best_te;
switch_channel_set_variable(session->channel, "dtmf_type", "rfc2833");
smh->mparams->dtmf_type = DTMF_2833;
}
}
if (a_engine->rtp_session) {