[OpenSIPS-Users] B2b 'terminate_call' function!

Bogdan-Andrei Iancu bogdan at opensips.org
Fri Mar 1 13:30:21 CET 2013


Hi Jorge,

trying to terminate the call on 200 ok is not really a good idea - you 
have to wait for the call to establish properly (have the ACK) and do 
the terminate.

Anyhow, sending a CANCEL to caller is bogus - CANCEL is all the time 
sent to callee sides only.

So, I suggest to wait for the ACK to pass and only then do the terminate 
stuff.

Regards,

Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com


On 03/01/2013 12:00 PM, Jorge Henrique Pinho wrote:
>
> Hi, thank you for your feedback.
>
> User A (caller) sends an Invite to User B (callee). When the Invite 
> arrives to opensips, b2b_init_request is called with 'topology hiding' 
> and the Invite is sent to User B.
>
> Callee reply with a 200OK with sdp content, when this messages arrives 
> to b2b, if something is wrong with the response i need to terminate 
> the call in this phase, and I use the 'terminate_call' function 
> present in the b2b_logic module.
>
> The b2b creates a BYE to user B (callee) but fails to generate a 
> Cancel to user A (caller).
>
> It is possible to end the call at this stage?
>
> Kind regards
>
> Jorge Pinho
>
> *From:*Bogdan-Andrei Iancu [mailto:bogdan at opensips.org]
> *Sent:* quinta-feira, 28 de Fevereiro de 2013 16:47
> *To:* OpenSIPS users mailling list
> *Cc:* Jorge Henrique Pinho
> *Subject:* Re: [OpenSIPS-Users] B2b 'terminate_call' function!
>
> Hi Jorge,
>
> The "terminate_call" is a C function in the b2b API module. Now, I do 
> not fully understand what you are trying to do - could you detail a 
> bit the state of the involved calls when you do the terminate ?
>
> Regards,
>
> Bogdan-Andrei Iancu
> OpenSIPS Founder and Developer
> http://www.opensips-solutions.com
>
>
> On 02/28/2013 05:06 PM, Jorge Henrique Pinho wrote:
>
> Hi, I am using b2b module with topology hiding.
>
> I am trying to terminate a call when i receive the 200OK response to 
> an Invite. To accomplish this i am using the 'terminate_call' function 
> defined in b2b_logic module.
>
> The b2b module successfully generates a BYE to user B (callee), but 
> fails to generate a Cancel to user A (caller). Here is the log where 
> it fails to send cancel:
>
> Feb 28 15:01:41 [1466] DBG:b2b_logic:b2bl_parse_key: hash_index = 
> [286]  - local_index= [0]
>
> Feb 28 15:01:41 [1466] DBG:b2b_entities:b2b_parse_key: hash_index = 
> [310]  - local_index= [66]
>
> Feb 28 15:01:41 [1466] DBG:b2b_entities:b2b_search_htable_next_dlg: 
> entering with start=(nil), table=0x2ba1327a39b0, hash=310, label=66
>
> Feb 28 15:01:41 [1466] DBG:b2b_entities:b2b_search_htable_next_dlg: 
> searching  callid 16[0f24ca6601104537]
>
> Feb 28 15:01:41 [1466] DBG:b2b_entities:b2b_search_htable_next_dlg: 
> searching   totag 10[B2B.310.66]
>
> Feb 28 15:01:41 [1466] DBG:b2b_entities:b2b_search_htable_next_dlg: 
> searching fromtag 8[6a18b32d]
>
> Feb 28 15:01:41 [1466] DBG:b2b_entities:b2b_search_htable_next_dlg: 
> Match for server dlg [0x2ba1327a8a20] dlg->uas_tran=[0x2ba1327a8c48]
>
> Feb 28 15:01:41 [1466] DBG:b2b_entities:b2b_send_request: Send request 
> [CANCEL] for entity type [0] for dlg[0x2ba1327a8a20]->[B2B.310.66]
>
> Feb 28 15:01:41 [1466] ERROR:b2b_entities:b2b_send_request: No 
> transaction saved. Cannot send CANCEL
>
> B2b fails to find a transaction to A (caller) and fails to generate a 
> Cancel message to this user.
>
> Is it possible to do what I am trying or is it a bug?
>
> Kind regards
>
> Jorge Pinho
>
>   
>   
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org  <mailto:Users at lists.opensips.org>
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20130301/e432516d/attachment.htm>


More information about the Users mailing list