From openSIPS

About: Version-1-5-0

About -> Available Versions -> Version 1.5.x -> Release 1.5.0

Table of Content (hide)

  1. 1. Migration to 1.5.0
  2. 2. What is new in 1.5.0
    1. 2.1 Core
    2. 2.2 Stateless processing
    3. 2.3 Memory cache support
    4. 2.4 Load-balancing module (NEW)
    5. 2.5 DB enhancement
    6. 2.6 Data flush in MI commands
    7. 2.7 OpenSIPS Console - NEW
    8. 2.8 OpenSIPS Control Panel - NEW
    9. 2.9 DynamicRouting module - NEW
    10. 2.10 MaxMind GeoIP module - NEW
    11. 2.11 QOS module - NEW
    12. 2.12 Call Control - NEW
    13. 2.13 Signalling module -NEW
    14. 2.14 PUA_DIALOGINFO & PRESENCE_DIALOGINFO - NEW
    15. 2.15 SIP identity module - NEW
    16. 2.16 Dialog Module
    17. 2.17 ACC module
    18. 2.18 AVPOPS module
    19. 2.19 TEXTOPS module
    20. 2.20 TM module
    21. 2.21 PRESENCE module
    22. 2.22 Pua module
    23. 2.23 RLS module
    24. 2.24 REGISTRAR module
    25. 2.25 Domains module
    26. 2.26 SIPTRACE module
    27. 2.27 NATHELPER module
    28. 2.28 RR module
    29. 2.29 PERMISSION module
    30. 2.30 EXEC module
    31. 2.31 AUTH module
    32. 2.32 DISPATCHER module
    33. 2.33 auth_radius module
    34. 2.34 avp_radius module
    35. 2.35 group_radius module
    36. 2.36 uri_radius module
    37. 2.37 SST module
    38. 2.38 gflags module
    39. 2.39 URI_DB module
    40. 2.40 SL module
    41. 2.41 CARRIERROUATE module
    42. 2.42 GROUP module
    43. 2.43 CFGUTILS module
    44. 2.44 LCR module
    45. 2.45 UAC REDIRECT module
    46. 2.46 UAC module
    47. 2.47 CPL-c module
    48. 2.48 Generic Fixes
    49. 2.49 Tools fixing

1.  Migration to 1.5.0

A manual for how to migrate/update from 1.4.x to 1.5.0 is now available on site.


2.  What is new in 1.5.0


2.1  Core


2.2  Stateless processing

If no stateless forwarding function is detected (in config script), the core will automatically trigger the dumping of received stateless replies.
Read more: http://lists.opensips.org/pipermail/users/2009-February/002951.html


2.3  Memory cache support

Memory Cache API

A new API was added in core to allow development of different modules that implements memory functionalities like memory_store and memory_fetch. See the MemCache Tutorial

Local memory store

New module that implements local memory storage support by storing Attribute-Value pairs in shared memory

MemCache implementation

Future new implementation of the memory cache via memcache system (for external interaction) - not necessary planned for 1.5

SystemV sharing

Future new implementation of the memory cache via System V shared mem (for external interaction) - not necessary planned for 1.5


2.4  Load-balancing module (NEW)

The "load-balancing" module comes to provide traffic routing based on load. Shortly, when OpenSIPS routes calls to a set of destinations, it is able to keep the load status (as number of ongoing calls) of each destination and to choose to route to the less loaded destination (at that moment). OpenSIPS is aware of the capacity of each destination - it is preconfigured with the maximum load accepted by the destinations. To be more precise, when routing, OpenSIPS will consider the less loaded destination not the destination with the smallest number of ongoing calls, but the destination with the largest available slot.

Read: LoadBalancing Tutorial


2.5  DB enhancement

Prepared statements

The support in DB API provides support for prepared statements. Modules using DB API may or may not request the usage of prepared statements instead of normal queries.

Right now, only the mysql driver (db_mysql) implements the prepared statements support.

There are several modules already using the prepared statements support:

Memory fragmentation

The entire way of managing the DB result structure was reworked in order to avoid memory fragmentation:

Reducing the memory fragmentation is a key factor in producing a robust and endurable application.


2.6  Data flush in MI commands

This new addition is to fix the limitation related to commands not able to return large volume of data in replies (like listing all the registered users, all the ongoing dialogs, etc):


2.7  OpenSIPS Console - NEW

This is a new provisioning tool for OpenSIPS - the OpenSIPS console (osipsconsole). It intends to be a generic tool for OpenSIPS provisioning and to include all the functionalities which are now provided by several scripts - it will replace the opensipsctl & opensipsdbctl scripts.

Osipsconsole is not one command script, but a console - you start the application, you get a prompt, you can run the available commands, you have embedded help, command history (in the current session and from previous session).

Read: http://lists.opensips.org/pipermail/users/2008-October/000795.html


2.8 OpenSIPS Control Panel - NEW

OpenSIPS Control Panel (OpenSIPS-CP) is a web interface (PHP based) for provisioning your OpenSIPS system. OpenSIPS-CP is not designed for provisioning users, but for provisioning the operational side of OpenSIPS (like DB, MI operations).

OpenSIPS-CP is a collection of tools - different functionalities are implemented in separated tools.

Read: http://lists.opensips.org/pipermail/users/2008-October/000844.html
Web Site: http://opensips-cp.sourceforge.net/


2.9  DynamicRouting module - NEW

Dynamic Routing is a module for selecting (based on multiple criteria) the the best gateway/destination to be used for delivering a certain call. Least Cost Routing (LCR) is a special case of dynamic routing - when the rules are ordered based on costs.

See detailed documentation: http://www.opensips.org/html/docs/modules/devel/drouting.html


2.10  MaxMind GeoIP module - NEW

The module provides runtime geo-location information to the OpenSIPS scripting environment. Various geographic data available include country code, region, city, postal code, time zone and more, all described in the module documentation.

Read: http://lists.opensips.org/pipermail/users/2008-November/001244.html
Documentation: http://www.opensips.org/html/docs/modules/devel/mmgeoip.html

---

2.11  QOS module - NEW

The qos module uses the dialog module to be notified of any new or updated dialogs. It will then look for and extract the SDP session (if present) from SIP requests and replies and keep track of it for the entire life of a dialog.

Read: http://lists.opensips.org/pipermail/users/2008-December/002163.html
Documentation: http://www.opensips.org/html/docs/modules/devel/qos.html


2.12  Call Control - NEW

This module allows one to limit the duration of calls and automatically end them when they exceed the imposed limit. Its main use case is to implement a prepaid system, but it can also be used to impose a global limit on all calls processed by the proxy

Read: http://lists.opensips.org/pipermail/users/2008-December/002062.html
Documentation: http://www.opensips.org/html/docs/modules/devel/call_control.html


2.13  Signalling module -NEW

The SIGNALING module comes as a wrapper over tm and sl modules and offers one function to be called from script or by the modules that want to send a reply. The reply (depending of the current state - if transaction exists or not) will be automatically sent in the best manner (stateless or stateful).

Read: http://lists.opensips.org/pipermail/users/2008-November/001543.html
Documentation: http://www.opensips.org/html/docs/modules/devel/signaling.html


2.14  PUA_DIALOGINFO & PRESENCE_DIALOGINFO - NEW

The modules enable the handling of "Event: dialog" (as defined in RFC 4235) inside of the presence module. This can be used distribute the dialog-info status to the subscribed watchers.

Documentation: http://www.opensips.org/html/docs/modules/devel/pua_dialoginfo.html
Documentation: http://www.opensips.org/html/docs/modules/devel/presence_dialoginfo.html


2.15  SIP identity module - NEW

This is an implementation of SIP identity as per RFC 4474. The module implements both identification and verification of the SIP messages.

Documentation: http://www.opensips.org/html/docs/modules/devel/identity.html


2.16  Dialog Module

Available PVs:

  • $DLG_flags (can be used directly from script via bitwise ops)

Available PVs:

  • $dlg_val("attr_name"); // set and get available

READ: http://lists.opensips.org/pipermail/users/2009-January/002446.html


2.17  ACC module


2.18  AVPOPS module


2.19  TEXTOPS module


2.20  TM module

Read: http://lists.opensips.org/pipermail/users/2009-January/002364.html


2.21  PRESENCE module

	- keep a pointer to the sockinfo structure in memory
	- when updating in database - store the corresponding string
	- when fetching dialog info from database parse the string and search for the sockinfo structure

2.22  Pua module


2.23  RLS module


2.24  REGISTRAR module


2.25  Domains module

2.26  SIPTRACE module


2.27  NATHELPER module


2.28  RR module


2.29  PERMISSION module


2.30  EXEC module


2.31  AUTH module


2.32  DISPATCHER module


2.33  auth_radius module


2.34  avp_radius module


2.35  group_radius module


2.36  uri_radius module

---

2.37  SST module


2.38  gflags module


2.39  URI_DB module


2.40  SL module


2.41  CARRIERROUATE module


2.42  GROUP module


2.43  CFGUTILS module


2.44  LCR module


2.45  UAC REDIRECT module


2.46  UAC module


2.47  CPL-c module


2.48  Generic Fixes


2.49  Tools fixing

Retrieved from https://www.opensips.org/About/Version-1-5-0
Page last modified on May 14, 2013, at 01:49 PM