MixMonitor
Record A Call NativelyDescription
MixMonitor(<file>.<ext>[|<options>[|<command>]])Records The audio on the current channel to the specified file.
Valid Options:
b - Only save audio to the file while the channel is bridged. *does not include conferences*
a - Append to the file instead of overwriting it.
v(<x>) - Adjust the heard volume by a factor of <x> -4/4.
V(<x>) - Adjust the spoken volume by a factor of <x> -4/4.
W(<x>) - Adjust the overall volume by a factor of <x> -4/4.
<command> will be executed when the recording is over. Any strings matching ^{X} will be unescaped to ${X} and all variables will be evaluated at the time the application is called. Where <command> is a system (Linux shell) command, see Asterisk cmd System for example values.
- The variable MIXMONITOR_FILENAME will contain the name of the file used for recordings.
- Note do NOT include the dialplan command System(blah), just blah.
- If you don't specify a full path of the sound file, the file will be stored in the "monitor" subdir of the path specified with astspooldir in asterisk.conf (so default will be /var/spool/asterisk/monitor).
- Note that no environment variables are given to <command> — you must pass these on via command-line arguments.
The audio file is closed and processing of <command> is started *after* the 'h' extension priorities have been run.
Version
New in Asterisk 1.2Details
This application is similar to the Monitor application only it's designed to record 1 audio and mix them natively as the call is in progress to avoid the need to spawn external processes which lead to harmful cpu usage spikes.Benefits:
- One call can record to mutiple files at the same time.
- Allows for recording a call to a single g729 file
- An append mode allows an agent to record all their calls in 1 file
- A bridge flag allows recording to only take place when the channel is bridged.
- The volume for either side of the channel may be adjusted seperatly.
- a cli interface makes it possible to start and stop the monitoring at will from a manager session or the cli prompt.
See also
- Asterisk cmd StopMixMonitor
- Asterisk cmd Monitor
- Asterisk cmd Record
- Asterisk cmd ChanSpy
- submitted in bug/patch 4735
- StopMixMonitor submitted in bug/patch 6122
- RTP MixSound: This tool takes the contents of a .wav or tcpdump format file and mixes the sound into an active conversation.
Asterisk | Applications | Functions | Variables | Expressions | Asterisk FAQ

Comments
333Mixmonitor fails to record after attended transfer
Here's hoping that this will be rectified soon
333Re: incomplete recording
I am using .wav format and W(-2) option.
Any suggestions?
i have the same problem, anybody can help us ???
333Re: Can you show me a sample...?!
Thank U~~?!
333Re: Can you show me a sample...?!
Thank U~~?!
333Can you show me a sample...?!
I can't understand Mixmonitor....
Please telle me Mixmonitor and easy.....^^
And I have a book that Asterisk 1.4
The book tell me a Using the mixmonitor application.
But there are no example to mixmonitor, and this web pages too!
So....Please Show me a Mixmonitor application examples!
Good luck to you~
333incomplete recordings
reference for this is bug is: http://bugs.digium.com/view.php?id=6457
333Re: incomplete recording
333automixmon?
333MixMonitor casues asterisk 1.2.3 to terminate
The following batch of extensions:
exten => 299,1,Answer()
exten => 299,n,MixMonitor(manuel.gsm)
exten => 299,n,SayDigits(12345670)
exten => 299,n,StopMonitor()
exten => 299,n,Hangup()
runs ok until hangup. At that point Asterisk terminates. (That is the process terminates with a signal 11)
333incomplete recording
I have applied MixMonitor to an outside prefix rule. Everything seems to be working properly, however when I check the sound files that are recorded, I notice they are not complete. Either the file size or sound duration seem arbitrary. While recording, there is nothing weird on the console, it says "Begin MixMonitor Recording (...)" and "End MixMonitor Recording (...)". I find the sound files broken somewhere between these two messages.
I am using .wav format and W(-2) option.
Any suggestions?