Summary:ASTERISK-16225: Impossible to record a call when the originator makes a transfer
Reporter:Henrique Grolli Bassotto (guaxinim)Labels:
Date Opened:2010-06-07 09:14:02Date Closed:2011-06-07 14:00:24
Versions:Frequency of
Description:With the current form of monitoring a channel in asterisk is impossible to record a call for a channel that was called when the caller makes a transfer.
A calls B
A transfer to C
B is on hold
C talks to B

I cant get the recording from all that B heard (a-b and c-b) since the recording is set on dialplan and is only relative to the channel that is executing it.

AUDIOHOOK_INHERIT just works when the called party transfer not the inverse.


On further thinking i see thats right for the way recording works on asterisk. But since this kind of behavior is normal and happens often on a pbx i cant see if that is a bug or a feature request.

Didn't test on 1.6 but i'm pretty sure it behaves the same.
Comments:By: Leif Madsen (lmadsen) 2010-06-07 09:45:46

Thanks for filing this issue. This clarifies what we were trying to go through on IRC the other day.

This is expected behaviour as the channel executing the recording is channel A, and when channel A goes way, the recording stops.

It may be possible to keep recording the channel with some clever dialplan magic. Since the M() and I believe G() (GoSub) options execute on the 'called' channel just prior to answer, then you could play your MixMonitor() in side the Macro or GoSub executing on the called channel in order to record that leg.

The problem is that you won't necessarily know when it was a transfer or not, but there may be ways around that.

However, this is not a bug and is expected behaviour, so I will close this issue.