[OpenSER-Users] multi-leg accounting
Ruchir
ruchir.lists at gmail.com
Thu Jun 12 14:25:42 CEST 2008
Can anyone give me suggestion for storing and manipulating multi-leg
accounting records?
On Thu, Jun 12, 2008 at 2:03 PM, Ruchir <ruchir.lists at gmail.com> wrote:
> Any suggestions from experts? :)
>
>
> On Thu, Jun 12, 2008 at 1:27 PM, Bogdan-Andrei Iancu <
> bogdan at voice-system.ro> wrote:
>
>> Hi Ruchir,
>>
>> with multi-leg accounting, you can match all the records belonging to the
>> same call by using call_id, to_tag and from_tag. How you format and store
>> the CDRS is your choice :).
>>
>> Regards,
>> Bogdan
>>
>> Ruchir wrote:
>>
>>> Yeah I just noticed that INVITE & BYE time difference gives accurate
>>> duration of the call. We can drop using ACK now :)
>>> Are there any standards for storing records for multi-leg accounting? I
>>> tried to find it but didn't get success. Can you please suggest which way we
>>> should store CDR to identify the records properly?
>>>
>>> On Wed, Jun 11, 2008 at 8:10 PM, Bogdan-Andrei Iancu <
>>> bogdan at voice-system.ro <mailto:bogdan at voice-system.ro>> wrote:
>>>
>>> Well, depends of how you process the ACC infor for building CDRs -
>>> that was more an opinion/recommendation than a must :).
>>>
>>> Regarding the ACK and call duration -- actually the media starts
>>> to flow immediately after the 200OK (when the INVITE log is
>>> generated) - most of the devices wait for ACK as confirmation that
>>> everything is ok and not for starting the call.
>>>
>>> Regards,
>>> Bogdan
>>>
>>>
>>> Ruchir wrote:
>>>
>>> I was thinking it should generate 9 records so it'll show up
>>> as 3 different calls so we can show CDR properly in web
>>> interface as well as calculate billing for users as the user
>>> who forwarded the call should be charged for the call. Also if
>>> we get INVITE only then we may not get accurate duration of
>>> call as actual duration starts when callee accepts the call
>>> and ACK is received. Is this scenario wrong?
>>>
>>> On Wed, Jun 11, 2008 at 5:19 PM, Bogdan-Andrei Iancu
>>> <bogdan at voice-system.ro <mailto:bogdan at voice-system.ro>
>>> <mailto:bogdan at voice-system.ro
>>> <mailto:bogdan at voice-system.ro>>> wrote:
>>>
>>> Perfect !
>>>
>>> regarding multi-leg calls - first of all, there is no need to
>>> enabled in for ACK and BYEs - make no sense. usually you
>>> want to
>>> see all the legs of the call for INVITE.
>>>
>>> Now, about how many records you get - depends on how many AVPs
>>> (used of multi-leg acc) you set from the script. If you 3
>>> INVITEs,
>>> means you add 3 values for at least of the AVPs .
>>>
>>> Regards,
>>> Bogdan
>>>
>>> Ruchir wrote:
>>>
>>> I had put setflag after t_newtran() previously. Now I
>>> moved it
>>> before t_newtran() and got records for INVITE, ACK &
>>> BYE for
>>> normal call perfectly. :)
>>> Then I tested for call forwarding scenario. In this case
>>> forwarding is set as below:
>>> 90004 -> 90001 -> 90003.
>>>
>>> I called 90004 from 90002 and I got 7 records in acc
>>> table. 3
>>> INVITEs, 3 BYEs and only single ACK. Shouldn't it log 3 ACK
>>> messages?
>>>
>>>
>>> On Wed, Jun 11, 2008 at 4:32 PM, Bogdan-Andrei Iancu
>>> <bogdan at voice-system.ro <mailto:bogdan at voice-system.ro>
>>> <mailto:bogdan at voice-system.ro <mailto:bogdan at voice-system.ro>>
>>> <mailto:bogdan at voice-system.ro
>>> <mailto:bogdan at voice-system.ro>
>>> <mailto:bogdan at voice-system.ro
>>> <mailto:bogdan at voice-system.ro>>>> wrote:
>>>
>>> Be sure you set the accounting flag before any
>>> t_relay() or
>>> t_newtran() for the INVITE. To be sure, try to use
>>> log/xlog
>>> to put
>>> some debugs in your script and check if the flag is
>>> really set
>>> before t_relay().
>>>
>>>
>>> Regards,
>>> Bogdan
>>>
>>> Ruchir Lists wrote:
>>>
>>> I configured simple acc module to store records
>>> in acc
>>> table,
>>> set proper flags. Then tried to call number
>>> directly(not with
>>> forwarding) but still I get only BYE record. Any
>>> suggestion?
>>>
>>> On Wed, Jun 11, 2008 at 2:43 PM, Bogdan-Andrei Iancu
>>> <bogdan at voice-system.ro
>>> <mailto:bogdan at voice-system.ro> <mailto:bogdan at voice-system.ro
>>> <mailto:bogdan at voice-system.ro>>
>>> <mailto:bogdan at voice-system.ro
>>> <mailto:bogdan at voice-system.ro> <mailto:bogdan at voice-system.ro
>>> <mailto:bogdan at voice-system.ro>>>
>>> <mailto:bogdan at voice-system.ro
>>> <mailto:bogdan at voice-system.ro>
>>> <mailto:bogdan at voice-system.ro
>>> <mailto:bogdan at voice-system.ro>>
>>> <mailto:bogdan at voice-system.ro
>>> <mailto:bogdan at voice-system.ro>
>>> <mailto:bogdan at voice-system.ro
>>> <mailto:bogdan at voice-system.ro>>>>> wrote:
>>>
>>> Hi Ruchir,
>>>
>>> There are two aspects here:
>>> 1) making acc to work - setting the flags and
>>> getting the ACC
>>> records
>>> 2) enabling multi-leg account and putting more
>>> info into the
>>> accounted info
>>>
>>> First you should to solve (1) - just getting a
>>> simple ACC
>>> record
>>> for INVITEs and BYEs (no multi leg
>>> accounting) - it this
>>> working
>>> for you or you get only BYE acc?
>>>
>>> Regards,
>>> Bogdan
>>>
>>> Ruchir Lists wrote:
>>>
>>> Hi All,
>>>
>>> I'm trying to configure OpenSER with
>>> multi-leg
>>> accounting. I'm
>>> using OpenSER 1.2 & radius. I'm using
>>> acc_radius
>>> table for
>>> writing cdr records. I've searched through
>>> several articles
>>> and mailing list posts about configuring
>>> multi-leg
>>> accounting
>>> and everywhere they talk about setting up
>>> multi-leg-info
>>> parameter of acc module to configure leg
>>> source &
>>> destination
>>> and setting up accounting flag. But this
>>> is not
>>> working for
>>> me. I get only BYE record in table if I
>>> use this
>>> way to
>>> write
>>> multiple records for one call in call
>>> forwarding
>>> scenario. I
>>> managed to get multiple records by calling
>>> acc_rad_request on
>>> INVITE, ACK, BYE & CANCEL. For instance,
>>> I have
>>> 4 users;
>>> 90001, 90002, 90003, 90004. The call
>>> forwarding is
>>> setup as below:
>>> 90004 -> 90001 -> 90003.
>>>
>>> I dial 90004 from 90002 user and it
>>> forwards the
>>> call
>>> to 90001
>>> & then 90003 and they're connected properlry.
>>> However I
>>> don't
>>> get leg source/destination properly and
>>> also I
>>> get 7-8 bye
>>> records for this call. Can anyone guide
>>> me in right
>>> direction
>>> if I'm doing anything wrong.
>>>
>>> Regards,
>>> Ruchir
>>>
>>> ------------------------------------------------------------------------
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.openser.org
>>> <mailto:Users at lists.openser.org>
>>> <mailto:Users at lists.openser.org
>>> <mailto:Users at lists.openser.org>>
>>> <mailto:Users at lists.openser.org
>>> <mailto:Users at lists.openser.org>
>>> <mailto:Users at lists.openser.org
>>> <mailto:Users at lists.openser.org>>>
>>> <mailto:Users at lists.openser.org
>>> <mailto:Users at lists.openser.org>
>>> <mailto:Users at lists.openser.org
>>> <mailto:Users at lists.openser.org>>
>>> <mailto:Users at lists.openser.org
>>> <mailto:Users at lists.openser.org>
>>> <mailto:Users at lists.openser.org
>>> <mailto:Users at lists.openser.org>>>>
>>>
>>>
>>>
>>> http://lists.openser.org/cgi-bin/mailman/listinfo/users
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kamailio.org/pipermail/users/attachments/20080612/c19d8be3/attachment.htm
More information about the Users
mailing list