[OpenSIPS-Users] [NEW] exchanging info between dialogs

Bogdan-Andrei Iancu bogdan at voice-system.ro
Tue May 11 08:33:35 CEST 2010


Hi Erik,

erik pepermans wrote:
> Hi Bogdan,
>
> I included an ngrep sip trace file which should explain :
>
> 2 asterisk servers on public addresses 11.01.01.001 and 22.02.02.002 are
> connected to OpenSIPS which listens on port 5071 at private address
> 192.168.5.1 (public address 99.09.09.009)
>
> - 11.01.01.001 sends an invite to 192.168.5.1 with the phone number of A
> - 192.168.5.1 prefixes the phone number of A via drouting module
> - 192.168.5.1 sends an invite to 22.02.02.002 with the prefixed phone number
> of A
> - 22.02.02.002 dials A
> - A picks up the phone and dials the phone number of B
> - 22.02.02.002 sends an invite to 192.168.5.1 with the phone number of B
> - 192.168.5.1 prefixes the phone number of B via drouting module
> - 192.168.5.1 sends an invite to 22.02.02.002 with the prefixed phone number
> of B
> - 22.02.02.002 dials B
> - B picks up the phone and talks to A
>
> So far so good; both legs have their own dialog did; then
>
> - B hangs up
> - 22.02.02.002 sends BYE to 192.168.5.1
> - 192.168.5.1 sends BYE to 22.02.02.002 where I expect it should go to
> 11.01.01.001
>   
why do you expect to be send to 001 ? B is involved in only one dialog 
(second one) between A (behind .002) and B (behind .002)...  So, why the 
BYE should be sent to .001 when the other call leg (A) is behind .002 ??

Regards,
Bogdan

> 11.01.01.001 never receives a BYE and keeps the session live forever -
>
> Thanks for your effort -
>
> Brgds
> Erik
>
> -----Oorspronkelijk bericht-----
> Van: users-bounces at lists.opensips.org
> [mailto:users-bounces at lists.opensips.org] Namens Bogdan-Andrei Iancu
> Verzonden: maandag 10 mei 2010 14:47
> Aan: OpenSIPS users mailling list
> Onderwerp: Re: [OpenSIPS-Users] [NEW] exchanging info between dialogs
>
>
> Hi Erik,
>
> how does your opensips distribute the requests among the asterisk 
> servers ? dispatching? or ?
>
> Regards,
> Bogdan
>
> erik pepermans wrote:
>   
>> Hi,
>>
>> I have the following scenario :
>>
>>
>> A1 asterisk server initiates a call to A2 asterisk server thru opensips;
>> This A2 calls A and A lands on A1 asking A to dial a number. A then
>> initiates a new call to A2 asterisk server thru opensips which calls B. A
>> talks to B.
>>
>> The issue is that when B hangs up the 'BYE' message is not sent to A1, but
>> twice to A2. The session on A1 hangs forever.
>>
>> Does the below fix this ?
>>
>> Brgds
>> Erik 
>>
>> -----Oorspronkelijk bericht-----
>> Van: users-bounces at lists.opensips.org
>> [mailto:users-bounces at lists.opensips.org] Namens Bogdan-Andrei Iancu
>> Verzonden: woensdag 28 april 2010 17:47
>> Aan: users at lists.opensips.org; devel at lists.opensips.org;
>> news at lists.opensips.org
>> Onderwerp: [OpenSIPS-Users] [NEW] exchanging info between dialogs
>>
>>
>> Hi,
>>
>> just added to the dialog module a new function that allow you to 
>> exchange data between dialogs - mainly to extract data from a different 
>> ongoing dialog.
>>
>> Such functionality is vital in complex scenarios (PBX related) like 
>> attended call transfer - in such cases you may want to route a new call 
>> based on information of existing dialogs.
>>
>> Real case example:
>>
>>     OpenSIPS is doing dispatching over a set of Asterisk boxes (which 
>> act as SIP servers).
>>     A calls B and the call is established (by dispatching from OpenSIPS) 
>> via A1 Asterisk server
>>     A wants to transfer B to a new party C, so A makes a new call to C 
>> -> this call must end on A1 also, without going via dispatcher in
>>     
> openSIPS.
>   
>>     So, when A calls C, OpenSIPS will check if A has an already existing 
>> call and if so, it will send the new call to the same Asterisk box as 
>> the existing call.
>>
>> In such a case, for each call, you need to attached to the call (as 
>> dialog variables) the callee, caller and the Asterisk box . When a new 
>> call is coming, you check if the new caller is already involved in a 
>> call and if so, fetch the value of the proxy in order to send to the 
>> same box.
>>
>> For more about the technical details of the function, see
>>
>>     
> http://www.opensips.org/html/docs/modules/devel/dialog.html#id272137
>   
>> Regards,
>> Bogdan
>>
>>   
>>     
>
>
>   
> ------------------------------------------------------------------------
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users


-- 
Bogdan-Andrei Iancu
www.voice-system.ro




More information about the Users mailing list