Hi Pekka, and thanks for replying.

On date Tuesday 2009-03-03 20:35:50 +0200, Pekka Pessi phoned this:
> 2009/3/3 Stefano Sabatini <ssabat...@reilabs.com>:
> > I was investigating about how to get the state of a nua_handle,
> > couldn't find nothing about it.
> 
> The current state is not very well defined, nor it is kept in handle.

I'm having this problem in a disconnection scenario, I need to know
the state of the SIP dialog when the user provides a disconnection
request, this may be done both when the ACK is already arrived or when
the ACK hasn't still been sent.

For this reason I need to know in which state the handle is, and send
a BYE or a CANCEL consistently with the current state.

sofsip_cli bookeeps this information in the ssc_oper_s struct
(ssc_oper.h), I also tried the i_state event management approach but
it is not correct, since the i_state event (setting the state in the
operation context/magic) is processed by the sofia event handler
*after* the actual event which causes the state transition.

So I wonder if it would make sense to set this information in the
handle itself, when the various nua_invite/nua_ack/... operations are
performed, rather than re-implement that logic in every app.

Or maybe I'm just confused.

> > I also wonder if it is possible for example to extract other
> > informations related to it, for example the Call-ID of a dialog.
> 
> nua_handle_make_replaces() returns a Replaces header, you can get
> Call-ID from it.
> 
> I'll gladly accept patch for something like
> 
> char *nua_handle_make_call_id(nua_handle_t *nh)

Do you mean a function to *set* the call_id for example in a just
created handle?

But do you think would be also possible to define a function to *get*
the call_id of an already created handle? nua_handle_make_replaces
looks overkill for just that.

[...]

Kind regards.

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Sofia-sip-devel mailing list
Sofia-sip-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel

Reply via email to