< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index  

Re: [reSIProcate-users] Receiving TCP-based connection termination callback.


I'm truly impressed on how quick your response and fix was... I appreciate that, thanks :).

Regards,
Jorge Bustamante

On Mon, Jul 15, 2013 at 12:59 PM, Scott Godin <sgodin@xxxxxxxxxxxxxxx> wrote:
This should now be fixed in rev 10256.

Scott


On Mon, Jul 15, 2013 at 1:52 PM, Scott Godin <sgodin@xxxxxxxxxxxxxxx> wrote:
I believe there was a bug introduced with the merge of the TKLC-perf_work branch back in Feb 2012.  I will look into addressing this - thanks for the detailed report!

Scott

On Mon, Jul 15, 2013 at 12:55 PM, Jorge Bustamante <jorge@xxxxxxxxxxxxxxxxxx> wrote:
Hi,

I am looking for a way to receive a connection termination callback for TCP-based connections (TCP, WS, etc) from reSIProcate. I need to be able to get this even if there is no Dialog ongoing through the connection.

Right now I call registerForConnectionTermination(...) on the DialogUsageManager object with a Postable object passed as parameter that implements the post() function.

Looking on reSIProcate code, I found out that ConnectionBase destructor calls flowTerminated on the corresponding Transport object, then the Transport object adds a ConnectionTerminated message to the StateMachineFifo that is shared by SipStack and is processed by its corresponding TransacitonController. The TransactionController passes the message to the TransactionState object and this object checks whether the message has a TransactionUser associated (hasTransactionUser() function), which returns false. Since it returns false, the message is notposted on a fifo that is processed by the DialogUsageManager object and thus, the post() callback is never called. I can't find where setTransactionUser(...) function might be called on the ConnectionTerminated message just created, and obviously since it is created internally by reSIProcate, I can't do it manually on my application. Removing this check on reSIProcate code(hasTransactionUser()), I am able to get the post() callback called succesfully.

So, my question is, how or where is this message supposed to set its transaction user? or at any case, how can I get such a callback for TCP-Based connection termination??

I would appreciate any hints.

Regards,
Jorge Bustamante

_______________________________________________
resiprocate-users mailing list
resiprocate-users@xxxxxxxxxxxxxxx
List Archive: http://list.resiprocate.org/archive/resiprocate-users/