A calling B. B makes blind transfer of the call to C. The call recording file of the A-B call also contains voice of A-C call.
It happens because the macro-record-enable calls the StopMonitor() application instead of StopMixMonitor(). As result of that recording is not stopped when it is expected.
[macro-record-enable]
include => macro-record-enable-custom
exten => s,1,GotoIf($["${BLINDTRANSFER}" = ""]?check)
exten => s,n,ResetCDR(w)
exten => s,n,StopMonitor() – IT DOESN'T STOP RECORDING THAT WAS STARTED BY MixMonitor()!!!
exten => s,n(check),AGI(recordingcheck,${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)},${UNIQUEID})
exten => s,n,MacroExit()
exten => s,1+998(record),MixMonitor(${MIXMON_DIR}${CALLFILENAME}.${MIXMON_FORMAT},,${MIXMON_POST}){noformat}