
Statistics Module

Bogdan Iancu

   voice-system.ro

Edited by

Bogdan Iancu

   Copyright © 2006 voice-system.ro
     _________________________________________________________

   Table of Contents
   1. User's Guide

        1.1. Overview
        1.2. Dependencies

              1.2.1. OpenSER Modules
              1.2.2. External Libraries or Applications

        1.3. Exported Parameters

              1.3.1. variable (string)

        1.4. Exported Functions

              1.4.1. update_stat(variable,value)
              1.4.2. reset_stat(variable)

   2. Developer's Guide
   3. Frequently Asked Questions

   List of Examples
   1-1. variable example
   1-2. update_stat usage
   1-3. reset_stat usage
     _________________________________________________________

Chapter 1. User's Guide

1.1. Overview

   The Statistics module is a wrapper over the internal
   statistics manager, allowing the script writer to dynamically
   define and use of statistic variables.

   By bringing the statistics support into the script, it takes
   advantage of the script flexibility in defining logics, making
   possible implementation of any kind of statistic scenario.
     _________________________________________________________

1.2. Dependencies

1.2.1. OpenSER Modules

   The following modules must be loaded before this module:

     * No dependencies on other OpenSER modules.
     _________________________________________________________

1.2.2. External Libraries or Applications

   The following libraries or applications must be installed
   before running OpenSER with this module loaded:

     * None.
     _________________________________________________________

1.3. Exported Parameters

1.3.1. variable (string)

   Name of a new statistic variable. The name may be followed by
   additional flag which describe the variable behavior:

     * no_reset : variable cannot be reset.

   Example 1-1. variable example
modparam("statistics", "variable", "register_counter")
modparam("statistics", "variable", "active_calls/no_reset")
     _________________________________________________________

1.4. Exported Functions

1.4.1. update_stat(variable,value)

   Updates the value of the statistic variable with the new
   value.

   Meaning of the parameters is as follows:

     * variable - variable to be updated
     * value - value to update with; it may be also negative

   This function can be used from REQUEST_ROUTE, BRANCH_ROUTE,
   FAILURE_ROUTE and ONREPLY_ROUTE.

   Example 1-2. update_stat usage
...
update_stat("register_counter", "+1");
...
update_stat("active_calls", "-1");
...
     _________________________________________________________

1.4.2. reset_stat(variable)

   Resets to zero the value of the statistic variable.

   This function can be used from REQUEST_ROUTE, BRANCH_ROUTE,
   FAILURE_ROUTE and ONREPLY_ROUTE.

   Example 1-3. reset_stat usage
...
reset_stat("register_counter");
...
     _________________________________________________________

Chapter 2. Developer's Guide

   The module does not provide any API to use in other OpenSER
   modules.
     _________________________________________________________

Chapter 3. Frequently Asked Questions

   3.1. Where can I find more about OpenSER?
   3.2. Where can I post a question about this module?
   3.3. How can I report a bug?

   3.1. Where can I find more about OpenSER?

   Take a look at http://openser.org/.

   3.2. Where can I post a question about this module?

   First at all check if your question was already answered on
   one of our mailing lists:

     * User Mailing List -
       http://openser.org/cgi-bin/mailman/listinfo/users
     * Developer Mailing List -
       http://openser.org/cgi-bin/mailman/listinfo/devel

   E-mails regarding any stable OpenSER release should be sent to
   <users@openser.org> and e-mails regarding development versions
   should be sent to <devel@openser.org>.

   If you want to keep the mail private, send it to
   <team@openser.org>.

   3.3. How can I report a bug?

   Please follow the guidelines provided at:
   http://sourceforge.net/tracker/?group_id=139143.
