diff --git a/main/channel.c b/main/channel.c index 865c9ca758..8db899747f 100644 --- a/main/channel.c +++ b/main/channel.c @@ -3859,7 +3859,11 @@ enum ast_bridge_result ast_channel_bridge(struct ast_channel *c0, struct ast_cha bridge_playfile(c1, c0, config->warning_sound, t); } if (config->warning_freq) { - nexteventts = ast_tvadd(nexteventts, ast_samp2tv(config->warning_freq, 1000)); + + if (time_left_ms > (config->warning_freq + 5000)) { + nexteventts = ast_tvadd(nexteventts, ast_samp2tv(config->warning_freq, 1000)); + } + } else nexteventts = ast_tvadd(config->start_time, ast_samp2tv(config->timelimit, 1000)); }