Hi!

Is there a way to somehow provide an outgoing request with a 
context/magic specific to that request?
In my case, the user application shall be able to send SIP INFO requests 
inside an active call.
The application provides a "request_status" callback in which the final 
response of the request is to be delivered.
I have to assume that the application wants to send a couple of SIP INFO 
requests shortly after one another.
I've got a nua handle magic, but that one is for the entire call.

I was thinking of something like this:

struct info_ctxt
{
     my_callback_t cb;
};

void sendInfo( my_callback_t cb, <other stuff> )
{
     info_ctxt = (info_ctxt*)malloc( sizeof( info_ctxt ) );
     info_ctxt->cb = cb;

     nua_info( nua_handle,
                    NUTAG_RMAGIC_REF( info_ctxt ),
                    .....,
                    TAG_END() );
}

void sofia_callback( <lots of stuff> )
{
     switch( event )
     {
         ...
         case nua_r_info:
         {
             info_ctxt* ctxt = NULL;
             tl_gets( tags, NUTAG_RMAGIC_REF( ctxt ), TAG_END() )
             <and so on>
         }
         ...
     }
}

Am I dreaming, or do I have to implement my own queue and send INFO 
requests after getting nua_r_info
when a preceding request has completed?

Best regards,
Andreas


------------------------------------------------------------------------------
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce.
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
_______________________________________________
Sofia-sip-devel mailing list
Sofia-sip-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel

Reply via email to