Hello,
I am attempting to tear down a call with a BYE packet generated
externally (kind of similar to Kamailio fifo dlg_end_dlg).
Let me describe what I am trying to do in more depth and then I will
continue to tell you the problem I think I am experiencing.
[PSTN SIP Proxy] -> [CORE SIP Proxy] -> [REGISTRAR] -> [UAC]
So the above layout is the normal call flow / structure of calls (incoming
when originating from pstn) (outgoing when originating from uac).
I then have an "external" host - I am attempting to generate a BYE to [CORE
SIP Proxy] and have it go both directions [PSTN] + [UAC].
So far I am able to get the call to tear down in only a single direction
(only kill call with PSTN) or (only kill call with UAC).
I have not been able to kill both legs of the call.
I have tried sending a single BYE and using some dlg_bye("all") magic.
- does not work, only kills one leg of the call.
I have tried sending a BYE message to SIP Proxy for each leg (two BYE).
- does not work, only kills one leg of the call.
If I alternate the later method's BYE packet and only send A or B and not
both Leg A or B will be killed... I think I am running into a race
condition where the dialog is destroyed before the 2nd BYE packet is
processed.
My Question - what am I doing wrong - or what is the best method to tackle
this task?
Thank you for all of your help and time in advance.
Sincerely,
Brandon Armstead