[Home]

Summary:ASTERISK-14881: Mixmonitor stop recording after atxfer
Reporter:Fabiano Heringer (fabianoheringer)Labels:
Date Opened:2009-09-24 08:38:31Date Closed:2011-06-07 14:08:19
Priority:MinorRegression?Yes
Status:Closed/CompleteComponents:Applications/app_mixmonitor
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:Hi, I made an alternative solution to record calls after an attendend transfer, I made an context e defined the context transfer, in this extensions I created a macro to start a mixmonitor, when the call is transfered the macro starts and record in a new file the call, it´s worked fine until I made upgrade to 1.4.26.1. Now when I make the atxfer, he start the filestream (the file is created), but when the call is really transfered (after the short conversation) the file stream close, not recording any audio.

If have another solution to record call without the creation of 2 files, I made a deep search and not found.

****** ADDITIONAL INFORMATION ******

its my transfer context.

When the call is made, and the call will be transfered via atxfer, it´s go to these transfer context, this an example of a complete call (the call is maked by secretary, and transfered to another channel, note the 2 files are created, one for call made by secretary, and other wich should be recorded the transfered call, wich not happens)

# The call was initiated by attendent
   -- Executing [0018134941718@recepcao-sip:1] Dial("SIP/recepcao-linha1-08212450", "DGV/g1/002118134941718||gtTM(grava|Recepcao|0018134941718)") in new stack
   -- Called g1/002118134941718
   -- DGV/1 answered SIP/recepcao-linha1-08212450
# IN THIS POINT THE RECORD WAS INITIATED (THIS FILE WAS GENERATED CORRECLTY AND AUDIO RECORDED FINE)
   -- Executing [s@macro-grava:1] Set("DGV/1", "CALLFILENAME=24092009-1020-Recepcao-0018134941718") in new stack
   -- Executing [s@macro-grava:2] MixMonitor("DGV/1", "outgoing/24092009-1020-Recepcao-0018134941718.gsm|b") in new stack
 == Begin MixMonitor Recording DGV/1
#IN THIS POINT THE ATXFER WAS INITIATED
   -- Started music on hold, class 'default', on DGV/1
   -- <SIP/recepcao-linha1-08212450> Playing 'pbx-transfer' (language 'pt_BR')
   -- Executing [210@transferencia:1] NoCDR("Local/210@transferencia-49c6,2", "") in new stack
   -- Executing [210@transferencia:2] Dial("Local/210@transferencia-49c6,2", "SIP/rogerio_escritorio&DAHDI/6r2||tTgM(grava-transferencia|recepcao-linha1|210)") in new stack
   -- Called rogerio_escritorio
   -- Called 6r2
   -- DAHDI/6-1 is ringing
   -- Local/210@transferencia-49c6,1 is ringing
   -- SIP/rogerio_escritorio-082b4868 is ringing
   -- DAHDI/6-1 is ringing
   -- DAHDI/6-1 is ringing
   -- DAHDI/6-1 is ringing
   -- DAHDI/6-1 answered Local/210@transferencia-49c6,2
   -- Executing [s@macro-grava-transferencia:1] Set("DAHDI/6-1", "CALLFILENAME=24092009-1021-recepcao-linha1-210-TRANSFERIDO") in new stack
   -- Executing [s@macro-grava-transferencia:2] MixMonitor("DAHDI/6-1", "outgoing/24092009-1021-recepcao-linha1-210-TRANSFERIDO.gsm|b") in new stack

#
# THE MIXMONITOR WAS INITIATED TO RECORD THE CONVERSATION BETWEEN SECRETARY AND # THE CALLED PART
#

 == Begin MixMonitor Recording DAHDI/6-1
#
# HERE´S THE PROBLEM, THE FILESTREAM WAS CLOSED, BUT IT NOT SHOULD BE HAPPEN
# BECAUSE IT WASN´T FINISHED YET
#
 == MixMonitor close filestream
 == Spawn extension (transferencia, 210, 2) exited non-zero on 'Local/210@transferencia-49c6,2'
   -- Stopped music on hold on DGV/1
#
# IN THIS POINT THE CALL WAS REALLY TRANSFERED AND FILESTREAM WAS CLOSED. IN   # OLDER VERSION THE CLOSED WILL ONLY HAPPEN IN THE END OF CALL
#
   -- New owner for port 1 is DGV/1 (Old: Transfered/DGV/1<ZOMBIE>)
   -- <DAHDI/6-1> Playing 'beeperr' (language 'pt_BR')
 == MixMonitor close filestream
 == Spawn extension (recepcao-sip, 0018134941718, 1) exited non-zero on 'SIP/recepcao-linha1-08212450'
Comments:By: Leif Madsen (lmadsen) 2009-09-24 08:56:06

What was the older version this worked in?

By: Fabiano Heringer (fabianoheringer) 2009-09-24 09:16:28

1.4.22

By: Leif Madsen (lmadsen) 2009-09-24 10:15:16

Sorry, I should have asked this first time around, but could you provide the dialplan associated with this issue so we can reproduce it? Thanks!

By: Fabiano Heringer (fabianoheringer) 2009-09-24 12:05:42

ok, here goes:

I will put only part of dialplan and context transfer:

Example:

exten => _00XXXXXXXX.,1,Dial(${CANAL_SAIDA}/0021${EXTEN:2},,gtT(grava,${CALLERID}(name)},${EXTEN}))

grava macro:

[macro-grava]
exten => s,1,Set(CALLFILENAME=${STRFTIME(${EPOCH},,%d%m%Y-%H%M)}-${ARG1}-${ARG2})
exten => s,2,MixMonitor(outgoing/${CALLFILENAME}.gsm,b)

in context for transfer:
TRANSFER_CONTEXT=>transferencia

exten => _20X,1,NoCDR()
exten => _20X,2,Dial(DAHDI/${EXTEN:2}r2,,tTgM(grava-transferencia,${CALLERID(number)},${EXTEN}))


grava-transferencia macro:
[macro-grava-transferencia]
exten => s,1,Set(CALLFILENAME=${STRFTIME(${EPOCH},,%d%m%Y-%H%M)}-${ARG1}-${ARG2}-TRANSFERIDO)
exten => s,2,MixMonitor(outgoing/${CALLFILENAME}.gsm,b)

By: Russell Bryant (russell) 2009-09-24 16:16:29

I see that a channel driver with the key "DGV" is in use.  We do not support systems with third party code on this issue tracker.

However, it looks like this issue is due to not using audiohook inheritance.  See "core show function AUDIOHOOK_INHERIT".