summaryrefslogtreecommitdiff
path: root/channel.c
diff options
context:
space:
mode:
authorMatt O'Gorman <mogorman@digium.com>2006-01-14 00:32:30 +0000
committerMatt O'Gorman <mogorman@digium.com>2006-01-14 00:32:30 +0000
commit06f2040e6f27bd61dcc40546fc598c7fa5c89a7e (patch)
treed303f4edafaacbe64038bf0a496d804bfbce0e52 /channel.c
parent58bac05e592cfb246f2cac3d685af48cded9b375 (diff)
added feature for pausing and unpausing the
monitor app from manager and in the call through features.conf bug 5395 for the patch git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8070 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channel.c')
-rw-r--r--channel.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/channel.c b/channel.c
index 14b95bc58..788aca546 100644
--- a/channel.c
+++ b/channel.c
@@ -1899,8 +1899,10 @@ static struct ast_frame *__ast_read(struct ast_channel *chan, int dropaudio)
} else
chan->insmpl += f->samples;
#endif
- if (ast_writestream(chan->monitor->read_stream, f) < 0)
- ast_log(LOG_WARNING, "Failed to write data to channel monitor read stream\n");
+ if (chan->monitor->state == AST_MONITOR_RUNNING) {
+ if (ast_writestream(chan->monitor->read_stream, f) < 0)
+ ast_log(LOG_WARNING, "Failed to write data to channel monitor read stream\n");
+ }
}
if (chan->readtrans) {
f = ast_translate(chan->readtrans, f, 1);
@@ -2260,8 +2262,10 @@ int ast_write(struct ast_channel *chan, struct ast_frame *fr)
} else
chan->outsmpl += f->samples;
#endif
- if (ast_writestream(chan->monitor->write_stream, f) < 0)
- ast_log(LOG_WARNING, "Failed to write data to channel monitor write stream\n");
+ if (chan->monitor->state == AST_MONITOR_RUNNING) {
+ if (ast_writestream(chan->monitor->write_stream, f) < 0)
+ ast_log(LOG_WARNING, "Failed to write data to channel monitor write stream\n");
+ }
}
res = chan->tech->write(chan, f);