On Mon, Sep 1, 2008 at 12:59 PM, Raúl Alexis Betancor Santana < rabs@dimension-virtual.com> wrote:
El Monday 01 September 2008 11:12:49 DanB escribió:
Hi Matteo,
I was in the same position like you are now, months back.
At least in OpenSER (please note that 1.4 is no longer tagged as OpenSER, but Kamailio) it was hard to do call-control since SER like was not initially developed to be dialog aware server. Dialog module is coming slowly to be there but I have the feeling it will take a bit time more to have a mature product out.
In the mean time I decided to go with an easier approach, so have
installed
Yate ( I am sure Asterisk or Freeswitch can do the same job as well, but
it
is just about having yate on hands on that time). In my case Yate will
take
the timeout value from Private SIP Header and process it as global timer
of
the call (Yate acts as SBC or B2BUA).
In that scenario Yate is working as B2BUA not as SBC.
If the call does finish before the timer is hit, Yate will do the job and disconnect both legs of the call (inbound and outbound) by sending BYE to both parties, therefore reaching the scenario wanted. However, this is considered like a security whole in Yate since anyone could achieve call disconnects by using the right
private
header, so u must set also an ip acl inside yate for the calls where u process the private-timer header.
In you put a Kamailio in front of Yate you could ensure taht private-timer headers are only there because Kamailio put them, so no security hole possible.
I am at your disposal if you need further help with freeradius-cdrtool connector (planning to release out a new version soon, just hope that the time will stay still to give me that opportunity ;-) ).
In your solution, you have not considered the situation of two simultaneous calls from the same user.
And how would you treat such scenario?
d