<h1>Project "FreeSWITCH Source" received a push.</h1>
<h2>branch: master updated</h2>
<pre>
via: e281aca3463da39e3b0a339459d390b7c2f3ceab (commit)
via: 642882727f015be345501f6f7c727ef23ec70c9f (commit)
via: d8add09a352cdfca64fa94688285ce6c96e6f6dc (commit)
via: c81bf01fc977fd1a12b521cf29abb5b466f1fda2 (commit)
from: 86884e52568eb7cdca89995fa82f407d4c4059c9 (commit)
</pre>= COMMIT LOG ===========================================================
<div class="highlight"><pre>committer: Moises Silva
comments:
Merge branch 'netborder' of git.sangoma.com:smg_freeswitch into netborder
</pre></div>
<div class="highlight"><pre>committer: Moises Silva
comments:
freetdm: added CLI completion for core commands
<span style="color: #000080; font-weight: bold">diff --git a/libs/freetdm/mod_freetdm/mod_freetdm.c b/libs/freetdm/mod_freetdm/mod_freetdm.c</span>
<span style="color: #000080; font-weight: bold">index c0fdaa6..3cb7dce 100755</span>
<span style="color: #A00000">--- a/libs/freetdm/mod_freetdm/mod_freetdm.c</span>
<span style="color: #00A000">+++ b/libs/freetdm/mod_freetdm/mod_freetdm.c</span>
<span style="color: #800080; font-weight: bold">@@ -4269,7 +4269,9 @@ SWITCH_MODULE_LOAD_FUNCTION(mod_freetdm_load)</span>
        switch_console_set_complete("add ftdm gains");
        switch_console_set_complete("add ftdm dtmf on");
        switch_console_set_complete("add ftdm dtmf off");
<span style="color: #A00000">-</span>
<span style="color: #00A000">+        switch_console_set_complete("add ftdm core state");</span>
<span style="color: #00A000">+        switch_console_set_complete("add ftdm core flag");</span>
<span style="color: #00A000">+        switch_console_set_complete("add ftdm core calls");</span>
        SWITCH_ADD_APP(app_interface, "disable_ec", "Disable Echo Canceller", "Disable Echo Canceller", disable_ec_function, "", SAF_NONE);
        SWITCH_ADD_APP(app_interface, "disable_dtmf", "Disable DTMF Detection", "Disable DTMF Detection", disable_dtmf_function, "", SAF_NONE);
</pre></div>
<div class="highlight"><pre>committer: Moises Silva
comments:
freetdm: ftmod_r2 - Disable MF dump on call accepted core - Do not start DTMF debugging until media is available
<span style="color: #000080; font-weight: bold">diff --git a/libs/freetdm/src/ftdm_io.c b/libs/freetdm/src/ftdm_io.c</span>
<span style="color: #000080; font-weight: bold">index 906fbfe..3ef2278 100644</span>
<span style="color: #A00000">--- a/libs/freetdm/src/ftdm_io.c</span>
<span style="color: #00A000">+++ b/libs/freetdm/src/ftdm_io.c</span>
<span style="color: #800080; font-weight: bold">@@ -5536,10 +5536,6 @@ FT_DECLARE(ftdm_status_t) ftdm_span_send_signal(ftdm_span_t *span, ftdm_sigmsg_t</span>
                        }
                        ftdm_set_flag(sigmsg->channel, FTDM_CHANNEL_CALL_STARTED);
                        ftdm_call_set_call_id(sigmsg->channel, &sigmsg->channel->caller_data);
<span style="color: #A00000">-                        if (sigmsg->channel->dtmfdbg.requested) {</span>
<span style="color: #A00000">-                                ftdm_channel_command(sigmsg->channel, FTDM_COMMAND_ENABLE_DEBUG_DTMF, NULL);</span>
<span style="color: #A00000">-                        }</span>
<span style="color: #A00000">-</span>
                        /* when cleaning up the public API I added this because mod_freetdm.c on_fxs_signal was
                        * doing it during SIGEVENT_START, but now that flags are private they can't, wonder if
                        * is needed at all?
<span style="color: #000080; font-weight: bold">diff --git a/libs/freetdm/src/ftmod/ftmod_r2/ftmod_r2.c b/libs/freetdm/src/ftmod/ftmod_r2/ftmod_r2.c</span>
<span style="color: #000080; font-weight: bold">index 83705d9..4265c9b 100644</span>
<span style="color: #A00000">--- a/libs/freetdm/src/ftmod/ftmod_r2/ftmod_r2.c</span>
<span style="color: #00A000">+++ b/libs/freetdm/src/ftmod/ftmod_r2/ftmod_r2.c</span>
<span style="color: #800080; font-weight: bold">@@ -676,12 +676,6 @@ static void ftdm_r2_on_call_offered(openr2_chan_t *r2chan, const char *ani, cons</span>
        ftdm_log_chan(ftdmchan, FTDM_LOG_NOTICE, "Call offered with ANI = %s, DNIS = %s, Category = %d, ANI restricted = %s\n",
                        ani, dnis, category, ani_restricted ? "Yes" : "No");
<span style="color: #A00000">-        /* nothing went wrong during call setup, MF has ended, we can and must disable the MF dump */</span>
<span style="color: #A00000">-        if (r2data->mf_dump_size) {</span>
<span style="color: #A00000">-                ftdm_channel_command(ftdmchan, FTDM_COMMAND_DISABLE_INPUT_DUMP, NULL);</span>
<span style="color: #A00000">-                ftdm_channel_command(ftdmchan, FTDM_COMMAND_DISABLE_OUTPUT_DUMP, NULL);</span>
<span style="color: #A00000">-        }</span>
<span style="color: #A00000">-</span>
        /* check if this is a collect call and if we should accept it */
        if (!r2data->allow_collect_calls && category == OR2_CALLING_PARTY_CATEGORY_COLLECT_CALL) {
                ftdm_log_chan_msg(ftdmchan, FTDM_LOG_NOTICE, "Rejecting collect call\n");
<span style="color: #800080; font-weight: bold">@@ -770,6 +764,12 @@ static void ftdm_r2_on_call_accepted(openr2_chan_t *r2chan, openr2_call_mode_t m</span>
        
        R2CALL(ftdmchan)->accepted = 1;
<span style="color: #00A000">+        /* nothing went wrong during call setup, MF has ended, we can and must disable the MF dump */</span>
<span style="color: #00A000">+        if (r2data->mf_dump_size) {</span>
<span style="color: #00A000">+                ftdm_channel_command(ftdmchan, FTDM_COMMAND_DISABLE_INPUT_DUMP, NULL);</span>
<span style="color: #00A000">+                ftdm_channel_command(ftdmchan, FTDM_COMMAND_DISABLE_OUTPUT_DUMP, NULL);</span>
<span style="color: #00A000">+        }</span>
<span style="color: #00A000">+</span>
        if (OR2_DIR_BACKWARD == openr2_chan_get_direction(r2chan)) {
                if (R2CALL(ftdmchan)->answer_pending) {
                        ftdm_log_chan_msg(ftdmchan, FTDM_LOG_DEBUG, "Answer was pending, answering now.\n");
<span style="color: #800080; font-weight: bold">@@ -778,11 +778,6 @@ static void ftdm_r2_on_call_accepted(openr2_chan_t *r2chan, openr2_call_mode_t m</span>
                        return;
                }
        } else {
<span style="color: #A00000">-                /* nothing went wrong during call setup, MF has ended, we can and must disable the MF dump */</span>
<span style="color: #A00000">-                if (r2data->mf_dump_size) {</span>
<span style="color: #A00000">-                        ftdm_channel_command(ftdmchan, FTDM_COMMAND_DISABLE_INPUT_DUMP, NULL);</span>
<span style="color: #A00000">-                        ftdm_channel_command(ftdmchan, FTDM_COMMAND_DISABLE_OUTPUT_DUMP, NULL);</span>
<span style="color: #A00000">-                }</span>
                ftdm_set_state(ftdmchan, FTDM_CHANNEL_STATE_PROGRESS_MEDIA);
        }
}
<span style="color: #000080; font-weight: bold">diff --git a/libs/freetdm/src/include/private/ftdm_core.h b/libs/freetdm/src/include/private/ftdm_core.h</span>
<span style="color: #000080; font-weight: bold">index ba16c7c..7b26d65 100644</span>
<span style="color: #A00000">--- a/libs/freetdm/src/include/private/ftdm_core.h</span>
<span style="color: #00A000">+++ b/libs/freetdm/src/include/private/ftdm_core.h</span>
<span style="color: #800080; font-weight: bold">@@ -688,6 +688,9 @@ FT_DECLARE(void) ftdm_set_echocancel_call_end(ftdm_channel_t *chan);</span>
                        if (!ftdm_test_flag((fchan), FTDM_CHANNEL_MEDIA)) { \
                                ftdm_set_flag((fchan), FTDM_CHANNEL_MEDIA); \
                                ftdm_set_echocancel_call_begin((fchan)); \
<span style="color: #00A000">+                                if ((fchan)->dtmfdbg.requested) { \</span>
<span style="color: #00A000">+                                        ftdm_channel_command((fchan), FTDM_COMMAND_ENABLE_DEBUG_DTMF, NULL); \</span>
<span style="color: #00A000">+                                } \</span>
                        } \
                } while (0);
</pre></div>
<div class="highlight"><pre>committer: Moises Silva
comments:
freetdm: ftmod_r2 - set MF dump directory default to logdir
<span style="color: #000080; font-weight: bold">diff --git a/libs/freetdm/src/ftmod/ftmod_r2/ftmod_r2.c b/libs/freetdm/src/ftmod/ftmod_r2/ftmod_r2.c</span>
<span style="color: #000080; font-weight: bold">index d86fb43..83705d9 100644</span>
<span style="color: #A00000">--- a/libs/freetdm/src/ftmod/ftmod_r2/ftmod_r2.c</span>
<span style="color: #00A000">+++ b/libs/freetdm/src/ftmod/ftmod_r2/ftmod_r2.c</span>
<span style="color: #800080; font-weight: bold">@@ -725,9 +725,10 @@ static void dump_mf(openr2_chan_t *r2chan)</span>
        if (r2data->mf_dump_size) {
                char *logname = R2CALL(ftdmchan)->logname;
                
<span style="color: #A00000">-                ftdm_log_chan(ftdmchan, FTDM_LOG_ERROR, "Dumping IO output in prefix %s\n", logname);</span>
<span style="color: #A00000">-                snprintf(dfile, sizeof(dfile), logname ? "%s.s%dc%d.input.alaw" : "%s/s%dc%d.input.alaw", </span>
<span style="color: #A00000">-                                logname ? logname : r2data->logdir, ftdmchan->span_id, ftdmchan->chan_id);</span>
<span style="color: #00A000">+                ftdm_log_chan(ftdmchan, FTDM_LOG_ERROR, "Dumping IO output in prefix %s\n", !ftdm_strlen_zero(logname)</span>
<span style="color: #00A000">+                                ? logname : r2data->logdir);</span>
<span style="color: #00A000">+                snprintf(dfile, sizeof(dfile), !ftdm_strlen_zero(logname) ? "%s.s%dc%d.input.alaw" : "%s/s%dc%d.input.alaw", </span>
<span style="color: #00A000">+                                !ftdm_strlen_zero(logname) ? logname : r2data->logdir, ftdmchan->span_id, ftdmchan->chan_id);</span>
                f = fopen(dfile, "wb");
                if (f) {
                        ftdm_log_chan(ftdmchan, FTDM_LOG_ERROR, "Dumping IO input in file %s\n", dfile);
<span style="color: #800080; font-weight: bold">@@ -737,8 +738,8 @@ static void dump_mf(openr2_chan_t *r2chan)</span>
                        ftdm_log_chan(ftdmchan, FTDM_LOG_ERROR, "Could not dump IO input in file %s, error: %s", dfile, strerror(errno));
                }
<span style="color: #A00000">-                snprintf(dfile, sizeof(dfile), logname ? "%s.s%dc%d.output.alaw" : "%s/s%dc%d.output.alaw", </span>
<span style="color: #A00000">-                                logname ? logname : r2data->logdir, ftdmchan->span_id, ftdmchan->chan_id);</span>
<span style="color: #00A000">+                snprintf(dfile, sizeof(dfile), !ftdm_strlen_zero(logname) ? "%s.s%dc%d.output.alaw" : "%s/s%dc%d.output.alaw", </span>
<span style="color: #00A000">+                                !ftdm_strlen_zero(logname) ? logname : r2data->logdir, ftdmchan->span_id, ftdmchan->chan_id);</span>
                f = fopen(dfile, "wb");
                if (f) {
                        ftdm_log_chan(ftdmchan, FTDM_LOG_ERROR, "Dumping IO output in file %s\n", dfile);
</pre></div>
========================================================================<pre>
Summary of changes:
libs/freetdm/mod_freetdm/mod_freetdm.c | 4 ++-
libs/freetdm/src/ftdm_io.c | 4 ---
libs/freetdm/src/ftmod/ftmod_r2/ftmod_r2.c | 28 +++++++++++--------------
libs/freetdm/src/include/private/ftdm_core.h | 3 ++
4 files changed, 18 insertions(+), 21 deletions(-)
</pre>
<p>this email was generated because of /git/your-repo.git/hooks/post-receive by the file /git-core/contrib/hooks/post-receive-email<br />
For more info, see <a href="http://blog.chomperstomp.com/?p=630">http://blog.chomperstomp.com/?p=630</a>
-- <br />
FreeSWITCH Source</p>