[asterisk-commits] russell: branch 1.4 r99923 - /branches/1.4/apps/app_chanspy.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Jan 23 11:46:56 CST 2008


Author: russell
Date: Wed Jan 23 11:46:55 2008
New Revision: 99923

URL: http://svn.digium.com/view/asterisk?view=rev&rev=99923
Log:
ChanSpy issues a beep when it starts at the beginning of a list of channels to
potentially spy on.  However, if there were no matching channels, it would beep
at you over and over, which is pretty annoying.  Now, it will only beep once in
the case that there are no channels to spy on, but it will still beep again once
it reaches the beginning of the channel list again.

(closes issue #11738, patched by me)

Modified:
    branches/1.4/apps/app_chanspy.c

Change Statistics:
 0 files changed

Modified: branches/1.4/apps/app_chanspy.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/apps/app_chanspy.c?view=diff&rev=99923&r1=99922&r2=99923
==============================================================================
--- branches/1.4/apps/app_chanspy.c (original)
+++ branches/1.4/apps/app_chanspy.c Wed Jan 23 11:46:55 2008
@@ -377,6 +377,7 @@
 	int res;
 	char *ptr;
 	int num;
+	int num_spyed_upon = 1;
 
 	if (chan->_state != AST_STATE_UP)
 		ast_answer(chan);
@@ -386,7 +387,7 @@
 	waitms = 100;
 
 	for (;;) {
-		if (!ast_test_flag(flags, OPTION_QUIET)) {
+		if (!ast_test_flag(flags, OPTION_QUIET) && num_spyed_upon) {
 			res = ast_streamfile(chan, "beep", chan->language);
 			if (!res)
 				res = ast_waitstream(chan, "");
@@ -405,6 +406,7 @@
 		/* reset for the next loop around, unless overridden later */
 		waitms = 100;
 		peer = prev = next = NULL;
+		num_spyed_upon = 0;
 
 		for (peer = next_channel(peer, spec, exten, context);
 		     peer;
@@ -470,7 +472,8 @@
 			
 			waitms = 5000;
 			res = channel_spy(chan, peer, &volfactor, fd, flags);
-			
+			num_spyed_upon++;	
+
 			if (res == -1) {
 				break;
 			} else if (res > 1 && spec) {




More information about the asterisk-commits mailing list