Summary:ASTERISK-12094: Monitor fails to record call after second Dial(...)
Reporter:Stanislaw Pitucha (viraptor)Labels:
Date Opened:2008-05-28 08:00:51Date Closed:2011-06-07 14:08:20
Versions:Frequency of
Description:Using dialplan like this:

exten => _501,1,MixMonitor(recording.wav)
exten => _501,n,Dial(SIP/501)
exten => _555,1,Answer()
exten => _555,n,Dial(Local/500,10,tr)
exten => _555,n,Dial(Local/501,10,tr)
exten => _555,n,Hangup()

(happens also with normal Monitor)
if 501 answers I get only ~1KB file instead of whole call recorded. If Monitor is placed after Answer, everything works as expected, but in this dialplan monitor fails every time.

Console output when using MixMonitor:
   -- Called 501
 == Begin MixMonitor Recording Local/501@default-84a1,2
   -- SIP/501-081b6f40 is ringing
   -- Local/501@default-84a1,1 is ringing
   -- SIP/501-081b6f40 is ringing
   -- SIP/501-081b6f40 is ringing
   -- SIP/501-081b6f40 answered Local/501@default-84a1,2
   -- Local/501@default-84a1,1 answered SIP/502-081a0860
 == Spawn extension (default, 501, 2) exited non-zero on 'Local/501@default-84a1,2'
   -- Executing [h@default:1] Set("Local/501@default-84a1,2", "CDR(userfield)=") in new stack
 == End MixMonitor Recording Local/501@default-84a1,2
   -- fixed jitterbuffer created on channel SIP/502-081a0860
 == Spawn extension (default, 555, 3) exited non-zero on 'SIP/502-081a0860'
   -- Executing [h@default:1] Set("SIP/502-081a0860", "CDR(userfield)=ssrc=2014719930;themssrc=3346387491;lp=0;rxjitter=0.001814;rxcount=1406;txjitter=0.000000;txcount=1394;rlp=0;rtt=0.000000") in new stack
   -- fixed jitterbuffer destroyed on channel SIP/502-081a0860

So it looks like monitor is closed down just before actual channel is created.

Tested on versions between 1.4.11 and
Comments:By: Joshua C. Colp (jcolp) 2008-05-28 08:04:01

This is a configuration issue. You are starting MixMonitor on a Local channel that has the possibility of going away due to the optimization feature. If you add /n to the end of your Local dial lines this will disable the optimization and it should record fine. The other option is to not start MixMonitor on the Local channel that may go away.