diff options
author | Kinsey Moore <kmoore@digium.com> | 2012-12-18 17:48:36 +0000 |
---|---|---|
committer | Kinsey Moore <kmoore@digium.com> | 2012-12-18 17:48:36 +0000 |
commit | dec9ee2f042bcddb38a9393c95a7a79e4cb2e2c2 (patch) | |
tree | 7734d73cafaac3c5acdeba08f3e4bc950049bf07 | |
parent | 5e2c52a546f6e38939abc40e88058fc253467d79 (diff) |
Add test events for time limit-related hangups
This patch adds hangup-related test events in order to support testing
of time-limited bridges. This aids in testing the S() and L() bridge
options.
(issue SWP-4713)
........
Merged revisions 378119 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 378120 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 378121 from http://svn.asterisk.org/svn/asterisk/branches/11
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@378122 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r-- | main/channel.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/main/channel.c b/main/channel.c index ce3a58ffd..7ccdaf557 100644 --- a/main/channel.c +++ b/main/channel.c @@ -73,6 +73,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") #include "asterisk/data.h" #include "asterisk/channel_internal.h" #include "asterisk/features.h" +#include "asterisk/test.h" /*** DOCUMENTATION ***/ @@ -3242,6 +3243,7 @@ struct ast_channel *ast_waitfor_nandfds(struct ast_channel **c, int n, int *fds, now = ast_tvnow(); diff = ast_tvsub(*ast_channel_whentohangup(c[x]), now); if (diff.tv_sec < 0 || ast_tvzero(diff)) { + ast_test_suite_event_notify("HANGUP_TIME", "Channel: %s", ast_channel_name(c[x])); /* Should already be hungup */ ast_channel_softhangup_internal_flag_add(c[x], AST_SOFTHANGUP_TIMEOUT); ast_channel_unlock(c[x]); @@ -3315,6 +3317,7 @@ struct ast_channel *ast_waitfor_nandfds(struct ast_channel **c, int n, int *fds, now = ast_tvnow(); for (x = 0; x < n; x++) { if (!ast_tvzero(*ast_channel_whentohangup(c[x])) && ast_tvcmp(*ast_channel_whentohangup(c[x]), now) <= 0) { + ast_test_suite_event_notify("HANGUP_TIME", "Channel: %s", ast_channel_name(c[x])); ast_channel_softhangup_internal_flag_add(c[x], AST_SOFTHANGUP_TIMEOUT); if (winner == NULL) { winner = c[x]; @@ -7939,6 +7942,7 @@ enum ast_bridge_result ast_channel_bridge(struct ast_channel *c0, struct ast_cha bridge_playfile(c1, c0, config->end_sound, 0); *fo = NULL; res = 0; + ast_test_suite_event_notify("BRIDGE_TIMELIMIT", "Channel1: %s\r\nChannel2: %s", ast_channel_name(c0), ast_channel_name(c1)); break; } |