Need help flash hook

hi ,all
1.A call to B
2. B transfer to C (use flash hook)
3. B hangup
question: 4. A have no ringbacktone ?

use blindxfer to transfer ,it is ok. but some problem I have to use flash hook.

thank you ! all!

1 ------------------< sip/109 call 5008>--------------------------­ -------------
Executing [5008@from-internal:1] Macro(“SIP/109-b760db90”, “exten-vm|5008|5008”) in new stack
– Executing [s@macro-exten-vm:1] Macro(“SIP/109-b760db90”, “user-callerid”) in new stack
– Executing [s@macro-user-callerid:1] NoOp(“SIP/109-b760db90”, “user-callerid: device 109”) in new stack
– Executing [s@macro-user-callerid:2] GotoIf(“SIP/109-b760db90”, “0?report”) in new stack
– Executing [s@macro-user-callerid:3] GotoIf(“SIP/109-b760db90”, “0?start”) in new stack
– Executing [s@macro-user-callerid:4] Set(“SIP/109-b760db90”, “REALCALLERIDNUM=109”) in new stack
– Executing [s@macro-user-callerid:5] NoOp(“SIP/109-b760db90”, “REALCALLERIDNUM is 109”) in new stack
– Executing [s@macro-user-callerid:6] Set(“SIP/109-b760db90”, “AMPUSER=109”) in new stack
– Executing [s@macro-user-callerid:7] Set(“SIP/109-b760db90”, “AMPUSERCIDNAME=109”) in new stack
– Executing [s@macro-user-callerid:8] GotoIf(“SIP/109-b760db90”, “0?report”) in new stack
– Executing [s@macro-user-callerid:9] Set(“SIP/109-b760db90”, “CALLERID(all)=109 <109>”) in new stack
– Executing [s@macro-user-callerid:10] Set(“SIP/109-b760db90”, “REALCALLERIDNUM=109”) in new stack
– Executing [s@macro-user-callerid:11] NoOp(“SIP/109-b760db90”, “TTL: ARG1: 5008”) in new stack
– Executing [s@macro-user-callerid:12] GotoIf(“SIP/109-b760db90”, “0?continue”) in new stack
– Executing [s@macro-user-callerid:13] Set(“SIP/109-b760db90”, “__TTL=64”) in new stack
– Executing [s@macro-user-callerid:14] GotoIf(“SIP/109-b760db90”, “1?continue”) in new stack
– Goto (macro-user-callerid,s,21)
– Executing [s@macro-user-callerid:21] NoOp(“SIP/109-b760db90”, “Using CallerID “109” <109>”) in new stack
– Executing [s@macro-exten-vm:2] Set(“SIP/109-b760db90”, “FROMCONTEXT=exten-vm”) in new stack
– Executing [s@macro-exten-vm:3] Set(“SIP/109-b760db90”, “VMBOX=5008”) in new stack
– Executing [s@macro-exten-vm:4] Set(“SIP/109-b760db90”, “EXTTOCALL=5008”) in new stack
– Executing [s@macro-exten-vm:5] Set(“SIP/109-b760db90”, “CFUEXT=”) in new stack
– Executing [s@macro-exten-vm:6] Set(“SIP/109-b760db90”, “CFBEXT=”) in new stack
– Executing [s@macro-exten-vm:7] Set(“SIP/109-b760db90”, “RT=40”) in new stack
– Executing [s@macro-exten-vm:8] Macro(“SIP/109-b760db90”, “record-enable|5008|IN”) in new stack
– Executing [s@macro-record-enable:1] GotoIf(“SIP/109-b760db90”, “0?2:4”) in new stack
– Goto (macro-record-enable,s,4)
– Executing [s@macro-record-enable:4] DeadAGI(“SIP/109-b760db90”, “recordingcheck|20080109-195022|11­ 99926222.16”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/recordin­ gcheck
recordingcheck|20080109-195022|119­ 9926222.16: Inbound recording not enabled
– AGI Script recordingcheck completed, returning 0
– Executing [s@macro-record-enable:5] NoOp(“SIP/109-b760db90”, “No recording needed”) in new stack
– Executing [s@macro-exten-vm:9] Macro(“SIP/109-b760db90”, “dial|40|tr|5008”) in new stack
– Executing [s@macro-dial:1] DeadAGI(“SIP/109-b760db90”, “dialparties.agi”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/dialpart­ ies.agi
dialparties.agi: Starting New Dialparties.agi
== Parsing ‘/etc/asterisk/manager.conf’: Found
== Manager ‘admin’ logged on from 127.0.0.1
dialparties.agi: Caller ID name is ‘109’ number is '109’
dialparties.agi: USE_CONFIRMATION: 'FALSE’
dialparties.agi: RINGGROUP_INDEX: '
dialparties.agi: Methodology of ring is ‘none’
– dialparties.agi: Added extension 5008 to extension map
– dialparties.agi: Extension 5008 cf is disabled
– dialparties.agi: Extension 5008 do not disturb is disabled

dialparties.agi: extnum 5008 has: cw: 1; hascfb: 0 [] hascfu: 0 []
dialparties.agi: ExtensionState: 0
– dialparties.agi: dbset CALLTRACE/5008 to 109
== Manager ‘admin’ logged off from 127.0.0.1
– AGI Script dialparties.agi completed, returning 0
– Executing [s@macro-dial:10] Dial(“SIP/109-b760db90”, “ZAP/8|40|tr”) in new stack
– Called 8
– Zap/8-1 is ringing
– Zap/8-1 is ringing
2-------------<5008 answered109>-------------------­ ----------------------------------­ —
– Zap/8-1 answered SIP/109-b760db90
3 -----------<5008 press flashhook, 109 hear music,5008 hear ringbacktone>------------------­ -----
–Started three way call on channel 8
– Started music on hold, class ‘default’, on SIP/109-b760db90
– Starting simple switch on ‘Zap/8-1’
– Stopped music on hold on SIP/109-b760db90
– Started music on hold, class ‘default’, on SIP/109-b760db90
– Executing [5004@from-internal:1] Macro(“Zap/8-1”, “exten-vm|novm|5004”) in new stack
– Executing [s@macro-exten-vm:1] Macro(“Zap/8-1”, “user-callerid”) in new stack
– Executing [s@macro-user-callerid:1] NoOp(“Zap/8-1”, “user-callerid: device 5008”) in new stack
– Executing [s@macro-user-callerid:2] GotoIf(“Zap/8-1”, “0?report”) in new stack
– Executing [s@macro-user-callerid:3] GotoIf(“Zap/8-1”, “0?start”) in new stack
– Executing [s@macro-user-callerid:4] Set(“Zap/8-1”, “REALCALLERIDNUM=5008”) in new stack
– Executing [s@macro-user-callerid:5] NoOp(“Zap/8-1”, “REALCALLERIDNUM is 5008”) in new stack
– Executing [s@macro-user-callerid:6] Set(“Zap/8-1”, “AMPUSER=5008”) in new stack
– Executing [s@macro-user-callerid:7] Set(“Zap/8-1”, “AMPUSERCIDNAME=5008”) in new stack
– Executing [s@macro-user-callerid:8] GotoIf(“Zap/8-1”, “0?report”) in new stack
– Executing [s@macro-user-callerid:9] Set(“Zap/8-1”, “CALLERID(all)=5008 <5008>”) in new stack
– Executing [s@macro-user-callerid:10] Set(“Zap/8-1”, “REALCALLERIDNUM=5008”) in new stack
– Executing [s@macro-user-callerid:11] NoOp(“Zap/8-1”, “TTL: ARG1: novm”) in new stack
– Executing [s@macro-user-callerid:12] GotoIf(“Zap/8-1”, “0?continue”) in new stack
– Executing [s@macro-user-callerid:13] Set(“Zap/8-1”, “__TTL=64”) in new stack
– Executing [s@macro-user-callerid:14] GotoIf(“Zap/8-1”, “1?continue”) in new stack
– Goto (macro-user-callerid,s,21)
– Executing [s@macro-user-callerid:21] NoOp(“Zap/8-1”, “Using CallerID “5008” <5008>”) in new stack
– Executing [s@macro-exten-vm:2] Set(“Zap/8-1”, “FROMCONTEXT=exten-vm”) in new stack
– Executing [s@macro-exten-vm:3] Set(“Zap/8-1”, “VMBOX=novm”) in new stack
– Executing [s@macro-exten-vm:4] Set(“Zap/8-1”, “EXTTOCALL=5004”) in new stack
– Executing [s@macro-exten-vm:5] Set(“Zap/8-1”, “CFUEXT=”) in new stack
– Executing [s@macro-exten-vm:6] Set(“Zap/8-1”, “CFBEXT=”) in new stack
– Executing [s@macro-exten-vm:7] Set(“Zap/8-1”, “RT=”"") in new stack
– Executing [s@macro-exten-vm:8] Macro(“Zap/8-1”, “record-enable|5004|IN”) in new stack
– Executing [s@macro-record-enable:1] GotoIf(“Zap/8-1”, “0?2:4”) in new stack
– Goto (macro-record-enable,s,4)
– Executing [s@macro-record-enable:4] DeadAGI(“Zap/8-1”, “recordingcheck|20080109-195031|11­ 99926228.18”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/recordin­ gcheck
recordingcheck|20080109-195031|119­ 9926228.18: Inbound recording not enabled
– AGI Script recordingcheck completed, returning 0
– Executing [s@macro-record-enable:5] NoOp(“Zap/8-1”, “No recording needed”) in new stack
– Executing [s@macro-exten-vm:9] Macro(“Zap/8-1”, “dial||tr|5004”) in new stack
– Executing [s@macro-dial:1] DeadAGI(“Zap/8-1”, “dialparties.agi”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/dialpart­ ies.agi
dialparties.agi: Starting New Dialparties.agi
== Parsing ‘/etc/asterisk/manager.conf’: Found
== Manager ‘admin’ logged on from 127.0.0.1
dialparties.agi: Caller ID name is ‘5008’ number is '5008’
dialparties.agi: USE_CONFIRMATION: 'FALSE’
dialparties.agi: RINGGROUP_INDEX: '
dialparties.agi: Methodology of ring is ‘none’
– dialparties.agi: Added extension 5004 to extension map
– dialparties.agi: Extension 5004 cf is disabled
– dialparties.agi: Extension 5004 do not disturb is disabled
dialparties.agi: extnum 5004 has: cw: 1; hascfb: 0 [] hascfu: 0 []
dialparties.agi: ExtensionState: 0
– dialparties.agi: dbset CALLTRACE/5004 to 5008
== Manager ‘admin’ logged off from 127.0.0.1
– AGI Script dialparties.agi completed, returning 0
– Executing [s@macro-dial:10] Dial(“Zap/8-1”, “ZAP/4||tr”) in new stack
– Called 4
– Zap/4-1 is ringing
– Zap/4-1 is ringing
– Zap/4-1 is ringing
– Hungup ‘SIP/109-b760db90’
– Stopped music on hold on Zap/8-1
4----------------<5004 ring,5008hangup,109 no voice>-------------------------­ ----------
– Hungup ‘Zap/8-1’
== Spawn extension (macro-dial, s, 10) exited non-zero on ‘Zap/8-1’ in macro ‘dial’
== Spawn extension (macro-dial, s, 10) exited non-zero on ‘Zap/8-1’ in macro ‘exten-vm’
== Spawn extension (macro-dial, s, 10) exited non-zero on ‘Zap/8-1’
– Executing [h@macro-dial:1] Macro(“Zap/8-1”, “hangupcall”) in new stack
– Executing [s@macro-hangupcall:1] ResetCDR(“Zap/8-1”, ­ “w”) in new stack
– Executing [s@macro-hangupcall:2] NoCDR(“Zap/8-1”, “”) in new stack
– Executing [s@macro-hangupcall:3] GotoIf(“Zap/8-1”, “1?skiprg”) in new stack
– Goto (macro-hangupcall,s,6)
– Executing [s@macro-hangupcall:6] GotoIf(“Zap/8-1”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,9)
– Executing [s@macro-hangupcall:9] Wait(“Zap/8-1”, “5”) in new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on ‘Zap/8-1’ in macro ‘hangupcall’
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'Zap/8-1’
5-----------------<5004 ring,but109 no voice,can fix something let 109 hear ringback tone(5004’s ring)>-------------------------­ --------------------------------
– Zap/4-1 is ringing
– Zap/4-1 is ringing
– Zap/4-1 is ringing
– Zap/4-1 answered SIP/109-b760db90

my question is 4 and 5, anyone can help me? thank you!

any luck?

yes ,change asterisk version work well