This might work.
I uses something like this in my own dialplan.
[code][karaoke]
exten => s,1,NoOp()
exten => s,n,Set(FILE_NAME=${STRFTIME(${EPOCH},%Y%m%d-%H%M%S)}-karaoke-${CALLERID})
exten => s,n,Answer()
;exten => s,n,Monitor(wav,${FILE_NAME},m) ; Record and mixing in and out in one file.
exten => s,n,Monitor(wav,${FILE_NAME},) ; Record in and out in separate files.
exten => s,n,NoOp()
exten => s,n,Wait(0.5)
exten => s,n,Playback(karaoke_music)
exten => s,n,Wait(1)
exten => s,n,Playback(vm-goodbye)
exten => s,n,Wait(0.50)
exten => s,n,Hangup()
exten => h,1,Hangup()
exten => t,1,Hangup()
[/code]