res_pjsip: Add an 'auto' option for DTMF Mode

This patch adds support for automatically detecting the type of DTMF that a
PJSIP endpoint supports. When the 'dtmf_mode' endpoint option is set to 'auto',
the channel created for an endpoint will attempt to determine if RFC 4733
DTMF is supported. If so, it will use that DTMF type. If not, the DTMF type
for the channel will be set to inband.

Review: https://reviewboard.asterisk.org/r/4438

ASTERISK-24706 #close
Reported by: yaron nahum
patches:
  yaron_patch_3_Feb.diff submitted by yaron nahum (License 6676)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@434637 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Matthew Jordan
2015-04-10 17:53:44 +00:00
parent 16afee4651
commit 88b0fa7755
10 changed files with 133 additions and 8 deletions

View File

@@ -138,6 +138,9 @@ void ast_dsp_digitreset(struct ast_dsp *dsp);
/*! \brief Select feature set */
void ast_dsp_set_features(struct ast_dsp *dsp, int features);
/*! \brief Get features */
int ast_dsp_get_features(struct ast_dsp *dsp);
/*! \brief Get pending DTMF/MF digits */
int ast_dsp_getdigits(struct ast_dsp *dsp, char *buf, int max);

View File

@@ -252,6 +252,8 @@ enum ast_sip_dtmf_mode {
AST_SIP_DTMF_INBAND,
/*! Use SIP INFO DTMF (blech) */
AST_SIP_DTMF_INFO,
/*! Use SIP 4733 if supported by the other side or INBAND if not */
AST_SIP_DTMF_AUTO,
};
/*!