[Freeswitch-dev] Shared line/call appearance, barging, and hangups
imirkin at alum.mit.edu
Wed May 17 09:09:56 MSD 2017
I've been checking out the SLA functionality in FreeSWITCH. Briefly,
the issue I'm running into is that if a second station barges in on
the first station, and then the first station hangs up, then the call
completely hangs up. I'm trying to make something where the call keeps
going, effectively replicating the old analog experience.
In commit a511ff3026b8, some short 5 years ago, you implemented
barging as eavesdropping. You also added code, which has largely
remained unchanged, in sofia_handle_sip_i_bye which looks like it
attempts to deal with the situation I describe. However it's not
working. With some hacks I was able to get the second call to not hang
up, but the media does not pass through to it anymore.
The core issue is that other_uuid is null (which is the
SWITCH_SIGNAL_BOND_VARIABLE). It may be due to the fact that I was
testing this by dialing e.g. a conference application or echo
application, and then joined the call - as such the original call
wasn't bonded in the first place. However I think I also tested it
with something more akin to a regular call and it also failed. I'm
less sure of that though.
Something else that I think I've observed is that if the initial
station puts the call on hold, then eavesdropping (i.e. barging)
station is effectively muted as well. Again, primarily testing with
e.g. the echo application.
Any advice you can give on these issues would be greatly appreciated!
Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-dev