That is super strange... the listen button will just originate a call from your device and will call chanspy on the target channel. It does not fiddle with any call that is not related to the target channel you try to listen to.
You should enable the atserisk full debug log and try to look at the events just after you click the listen button, and see what is going on. I do not think that chanspy is *that* broken as to hangup all active outgoing calls on the system, and only outgoing calls ? Or is it dropping only the ones you try to listen to?
It is almost with certainty an asterisk bug. Fop2 does not hangup calls, the only thing fop2 does is fire chanspy, if then chanspy drops calls, is a bug in asterisk/chanspy itself.
i'm having the same exact problem. it *used* to work, now it doesn't. if i click the button, it hangs up the call. i haven't tested on an internal call, only external. again, this did work on this server at one time. but now, all of the sudden it does not.
fop2 instructs asterisk to start the application chan_spy. It does not instruct asterisk to hangup the spied call. If chan_spy hangs calls, then it is a chan_spy/asterisk problem. Look at the asterisk logs, start fop2 in debug and verify that it is actually originating a call to the application chan_spy.
Comments
You should enable the atserisk full debug log and try to look at the events just after you click the listen button, and see what is going on. I do not think that chanspy is *that* broken as to hangup all active outgoing calls on the system, and only outgoing calls ? Or is it dropping only the ones you try to listen to?
[2011-08-17 13:30:23] VERBOSE[13031] pbx.c: -- Executing [s@macro-dialout-trunk:20] Dial("SIP/4825-000008ef", "SIP/Airband/XXXXXXXXXX,300,") in new stack
[2011-08-17 13:30:23] VERBOSE[13031] netsock2.c: == Using SIP RTP TOS bits 184
[2011-08-17 13:30:23] VERBOSE[13031] netsock2.c: == Using SIP RTP CoS mark 5
[2011-08-17 13:30:23] VERBOSE[13031] app_dial.c: -- Called Airband/XXXXXXXXXX
[2011-08-17 13:30:25] VERBOSE[13031] app_dial.c: -- SIP/Airband-000008f0 is making progress passing it to SIP/4825-000008ef
[2011-08-17 13:30:27] VERBOSE[13031] app_dial.c: -- SIP/Airband-000008f0 is ringing
[2011-08-17 13:30:27] VERBOSE[13031] app_dial.c: -- SIP/Airband-000008f0 is making progress passing it to SIP/4825-000008ef
[2011-08-17 13:30:29] VERBOSE[13031] app_dial.c: -- SIP/Airband-000008f0 answered SIP/4825-000008ef
[2011-08-17 13:30:29] VERBOSE[13031] rtp_engine.c: -- Locally bridging SIP/4825-000008ef and SIP/Airband-000008f0
[2011-08-17 13:30:34] VERBOSE[13072] netsock2.c: == Using SIP RTP TOS bits 184
[2011-08-17 13:30:34] VERBOSE[13072] netsock2.c: == Using SIP RTP CoS mark 5
[2011-08-17 13:30:34] VERBOSE[15384] chan_sip.c: == Extension Changed 4823[ext-local] new state Ringing for Notify User 4810
[2011-08-17 13:30:36] VERBOSE[15384] chan_sip.c: == Extension Changed 4823[ext-local] new state InUse for Notify User 4810
[2011-08-17 13:30:36] VERBOSE[13073] app_chanspy.c: == Spying on channel SIP/4825-000008ef
[2011-08-17 13:30:36] NOTICE[13073] app_chanspy.c: Attaching SIP/4823-000008f1 to SIP/4825-000008ef
[2011-08-17 13:30:36] NOTICE[13073] app_chanspy.c: Attaching SIP/4823-000008f1 to SIP/4825-000008ef
[2011-08-17 13:30:36] VERBOSE[13031] pbx.c: -- Executing [h@macro-dialout-trunk:1] Macro("SIP/4825-000008ef", "hangupcall,") in new stack
[2011-08-17 13:30:36] VERBOSE[13031] pbx.c: -- Executing [s@macro-hangupcall:1] GotoIf("SIP/4825-000008ef", "1?theend") in new stack
[2011-08-17 13:30:36] VERBOSE[13031] pbx.c: -- Goto (macro-hangupcall,s,3)
[2011-08-17 13:30:36] VERBOSE[13031] pbx.c: -- Executing [s@macro-hangupcall:3] Hangup("SIP/4825-000008ef", "") in new stack
[2011-08-17 13:30:36] VERBOSE[13031] app_macro.c: == Spawn extension (macro-hangupcall, s, 3) exited non-zero on 'SIP/4825-000008ef' in macro 'hangupcall'
[2011-08-17 13:30:36] VERBOSE[13031] features.c: == Spawn extension (macro-dialout-trunk, h, 1) exited non-zero on 'SIP/4825-000008ef'
[2011-08-17 13:30:36] VERBOSE[13031] app_macro.c: == Spawn extension (macro-dialout-trunk, s, 20) exited non-zero on 'SIP/4825-000008ef' in macro 'dialout-trunk'
[2011-08-17 13:30:36] VERBOSE[13031] pbx.c: == Spawn extension (from-internal, XXXXXXXXXX, 7) exited non-zero on 'SIP/4825-000008ef'
[2011-08-17 13:30:36] VERBOSE[13031] pbx.c: -- Executing [h@from-internal:1] Hangup("SIP/4825-000008ef", "") in new stack
[2011-08-17 13:30:36] VERBOSE[13031] pbx.c: == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/4825-000008ef'
[2011-08-17 13:30:36] VERBOSE[15384] chan_sip.c: == Extension Changed 4825[ext-local] new state Idle for Notify User 4810
[2011-08-17 13:30:36] VERBOSE[13073] app_chanspy.c: == Done Spying on channel SIP/4825-000008ef
[2011-08-17 13:30:36] VERBOSE[15384] chan_sip.c: == Extension Changed 4823[ext-local] new state Idle for Notify User 4810
Any help on this would be appreciated.