osip-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [osip-dev] default release cause


From: Aymeric Moizard
Subject: Re: [osip-dev] default release cause
Date: Wed, 14 Jan 2015 15:35:05 +0100

Hi Christoph,

eXosip_call_terminate API include a "default" way to answer the call. However,
in your own application, when you are receiving a call, you should use directly
this API:

i = eXosip_call_send_answer (excontext, tr->transactionid, YOURCODE, NULL);

So you can always avoid sending a 603 if you don't like!

No trouble!

Tks!
Aymeric


2015-01-13 16:27 GMT+01:00 FEICHTER Christoph <address@hidden>:
hi aymeric,
 
I have an improvement for the function eXosip_call_terminate.
I would suggest to use as default the reason cause 480 – instead of 603.
The reason is, that a 6xx causes at a SIP-proxy all other call-branches to be terminated,
if the call has been forked. with a 4xx response the other branches remain active.
 
the fix is in eXcall_api.c, line 935:
 
   if (tr == NULL) {
     /*this may not be enough if it's a re-INVITE! */
     tr = _eXosip_find_last_inc_invite (jc, jd);
     if (tr != NULL && tr->last_response != NULL && MSG_IS_STATUS_1XX (tr->last_response)) {     /* answer with 480 */
       osip_generic_param_t *to_tag;
 
       osip_from_param_get_byname (tr->orig_request->to, "tag", &to_tag);
 
       i = eXosip_call_send_answer (excontext, tr->transactionid, 480, NULL);
 
       if (to_tag == NULL)
         return i;
     }
   }
 
br,
christoph
 
 

_______________________________________________
osip-dev mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/osip-dev




--
Antisip - http://www.antisip.com

reply via email to

[Prev in Thread] Current Thread [Next in Thread]