diff --git a/src/mod/event_handlers/mod_radius_cdr/mod_radius_cdr.c b/src/mod/event_handlers/mod_radius_cdr/mod_radius_cdr.c index abe41543b3..d471a66e88 100644 --- a/src/mod/event_handlers/mod_radius_cdr/mod_radius_cdr.c +++ b/src/mod/event_handlers/mod_radius_cdr/mod_radius_cdr.c @@ -155,6 +155,13 @@ static switch_status_t my_on_routing(switch_core_session_t *session) return SWITCH_STATUS_FALSE; } + if(channel) { + if(switch_true(switch_channel_get_variable(channel, "disable_radius_start"))) { + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "[mod_radius_cdr] Not Sending RADIUS Start\n"); + return SWITCH_STATUS_SUCCESS; + } + } + switch_thread_rwlock_rdlock(globals.rwlock); rad_config = my_radius_init(); @@ -385,6 +392,14 @@ static switch_status_t my_on_hangup(switch_core_session_t *session) return SWITCH_STATUS_FALSE; } + + if(channel) { + if(switch_true(switch_channel_get_variable(channel, "disable_radius_stop"))) { + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "[mod_radius_cdr] Not Sending RADIUS Stop\n"); + return SWITCH_STATUS_SUCCESS; + } + } + switch_thread_rwlock_rdlock(globals.rwlock); switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "[mod_radius_cdr] Entering my_on_hangup\n");