MODENDP-169

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11160 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Anthony Minessale 2009-01-13 17:56:35 +00:00
parent 6c622d5c27
commit c488041f4a
2 changed files with 11 additions and 4 deletions

View File

@ -801,6 +801,7 @@ static switch_status_t load_config(void)
}
globals.indev = globals.outdev = globals.ringdev = -1;
globals.sample_rate = 8000;
if ((settings = switch_xml_child(cfg, "settings"))) {
for (param = switch_xml_child(settings, "param"); param; param = param->next) {
@ -821,7 +822,7 @@ static switch_status_t load_config(void)
globals.sample_rate = atoi(val);
} else if (!strcmp(var, "codec-ms")) {
int tmp = atoi(val);
if (SWITCH_ACCEPTABLE_INTERVAL(tmp)) {
if (switch_check_interval(globals.sample_rate, tmp)) {
globals.codec_ms = tmp;
} else {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING,

View File

@ -1007,6 +1007,13 @@ SWITCH_DECLARE(switch_status_t) switch_rtp_activate_ice(switch_rtp_t *rtp_sessio
return SWITCH_STATUS_SUCCESS;
}
static void ping_socket(switch_rtp_t *rtp_session)
{
uint32_t o = UINT_MAX;
switch_size_t len = sizeof(o);
switch_socket_sendto(rtp_session->sock_input, rtp_session->local_addr, 0, (void *) &o, &len);
}
SWITCH_DECLARE(void) switch_rtp_break(switch_rtp_t *rtp_session)
{
if (!switch_rtp_ready(rtp_session)) {
@ -1023,9 +1030,7 @@ SWITCH_DECLARE(void) switch_rtp_break(switch_rtp_t *rtp_session)
}
if (rtp_session->sock_input) {
uint32_t o = UINT_MAX;
switch_size_t len = sizeof(o);
switch_socket_sendto(rtp_session->sock_input, rtp_session->local_addr, 0, (void *) &o, &len);
ping_socket(rtp_session);
}
switch_mutex_unlock(rtp_session->flag_mutex);
}
@ -1037,6 +1042,7 @@ SWITCH_DECLARE(void) switch_rtp_kill_socket(switch_rtp_t *rtp_session)
if (switch_test_flag(rtp_session, SWITCH_RTP_FLAG_IO)) {
switch_clear_flag(rtp_session, SWITCH_RTP_FLAG_IO);
if (rtp_session->sock_input) {
ping_socket(rtp_session);
switch_socket_shutdown(rtp_session->sock_input, SWITCH_SHUTDOWN_READWRITE);
}
if (rtp_session->sock_output && rtp_session->sock_output != rtp_session->sock_input) {