AudioHook Inherit Outbound calls

Hi,

I have users’ who make an outbound call, then have the need to transfer the call to a second person. I’ve tried using AUDIOHOOK_INHERIT prior to dialling out but the recording seems to stop as soon as the transfer is completed.

It works ok on incoming calls. DOes any one know if I’m able to do this, if so how’s it done .

Thanks for any help.

Hi
Can you post teh dialplan section of code that you are using as it should work .

Ian

Hi Ian,

Thanks for your help, the code is as follows

[internal]

exten => _9X.,hint,SIP/${CALLERID(num)}

same => 1,Verbose(2,Making outbound call)
same => n,NoOp(${CALLERID(num)})
same => n,Set(AUDIOHOOK_INHERIT(MixMonitor)=yes)
same => n,Macro(record,OUTBOUND,${MYUNIQUEID})
same => n,Dial(DAHDI/g0/${EXTEN})

Macro record is below

[macro-record]

exten => s,1,Set(CALLFILENAME=${UNIQUEID}-${STRFTIME(${EPOCH},%d% %Y-%H%M%S)}-${CALLERID(num)}-${ARG1}-${ARG2})
same => n,MixMonitor(${CALLFILENAME}.wav)

Try

[internal]

exten => _9X.,hint,SIP/${CALLERID(num)}

same => 1,Verbose(2,Making outbound call)
same => n,NoOp(${CALLERID(num)})
same => n,Macro(record,OUTBOUND,${MYUNIQUEID})
same => n,Set(AUDIOHOOK_INHERIT(MixMonitor)=yes)
same => n,Dial(DAHDI/g0/${EXTEN})

Macro record is below

[macro-record]

exten => s,1,Set(CALLFILENAME=${UNIQUEID}-${STRFTIME(${EPOCH},,%d% %Y-%H%M%S)}-${CALLERID(num)}-${ARG1}-${ARG2})
same => n,MixMonitor(${CALLFILENAME}.wav)

Thanks Ian, unfortunately this didn’t work.

Hi

Try it without using a macro to set a file name, I dont realy see the point of using a macro to replace a couple of line .

Ian

I’ve changed it to this as suggested, still no joy.

[code][internal]

exten => _9X.,hint,SIP/${CALLERID(num)}

same => 1,Verbose(2,Making outbound call)
same => n,NoOp(${CALLERID(num)})
same => n,Set(AUDIOHOOK_INHERIT(MixMonitor)=yes)
;same => n,Macro(record,OUTBOUND,${MYUNIQUEID})
same => n,MixMonitor(${CALLERID(num)}.wav)
same => n,Dial(DAHDI/g0/${EXTEN})[/code]

The order is important, try as below. also post teh verbose output of a call

[code][internal]

exten => _9X.,hint,SIP/${CALLERID(num)}

same => 1,Verbose(2,Making outbound call)
same => n,NoOp(${CALLERID(num)})
same => n,MixMonitor(${CALLERID(num)}.wav)
same => n,Set(AUDIOHOOK_INHERIT(MixMonitor)=yes)
same => n,Dial(DAHDI/g0/${EXTEN})[/code]

ouput below

== Making outbound call -- Executing [96583@internal:2] NoOp("SIP/1520-00000024", "1520") in new stack -- Executing [96583@internal:3] MixMonitor("SIP/1520-00000024", "1520.wav") in new stack -- Executing [96583@internal:4] Set("SIP/1520-00000024", "AUDIOHOOK_INHERIT(MixMonitor)=yes") in new stack -- Executing [96583@internal:5] Dial("SIP/1520-00000024", "DAHDI/g0/96583") in new stack -- Requested transfer capability: 0x00 - SPEECH -- Called DAHDI/g0/96583 == Begin MixMonitor Recording SIP/1520-00000024 -- DAHDI/i1/96583-13 is proceeding passing it to SIP/1520-00000024 -- DAHDI/i1/96583-13 is ringing -- DAHDI/i1/96583-13 is making progress passing it to SIP/1520-00000024 -- DAHDI/i1/96583-13 answered SIP/1520-00000024 -- Started music on hold, class 'default', on DAHDI/i1/96583-13 == Using SIP RTP CoS mark 5 -- Executing [1510@internal:1] NoOp("SIP/1520-00000025", "520") in new stack -- Executing [1510@internal:2] Dial("SIP/1520-00000025", "SIP/1510") in new stack == Using SIP RTP CoS mark 5 -- Called SIP/1510 -- SIP/1510-00000026 is ringing -- SIP/1510-00000026 answered SIP/1520-00000025 -- Remotely bridging SIP/1520-00000025 and SIP/1510-00000026 -- Stopped music on hold on DAHDI/i1/96583-13 == Spawn extension (internal, 96583, 5) exited non-zero on 'SIP/1520-00000024' == MixMonitor close filestream == End MixMonitor Recording SIP/1520-00000024 -- Span 1: Channel 0/1 got hangup request, cause 16 == Spawn extension (internal, 1510, 2) exited non-zero on 'DAHDI/i1/96583-13' -- Hungup 'DAHDI/i1/96583-13'

This is still a problem for me, does anyone have any ideas, the only way round it I’ve managed so far is to make the call create an IAX2 channel into another context where the actual outbound call is made from. This is not how I want it to work.

Help would be appreciated