About

About.Version-1-11-0 History

Hide minor edits - Show changes to markup

May 08, 2014, at 12:10 AM by 89.120.101.121 -
Changed lines 6-8 from:
to:
March 21, 2014, at 10:38 AM by razvancrainea -
Changed line 36 from:
  • Read more ...
to:
  • Read more ...
March 20, 2014, at 10:13 PM by liviu -
Changed line 12 from:

What is new in 1.11.0

to:

What is new in 1.11.0 LTS

March 20, 2014, at 10:07 PM by 89.120.101.121 -
Changed line 8 from:

To be done on release date.

to:
March 20, 2014, at 09:17 PM by 89.120.101.121 -
Changed line 121 from:
  • Existing own_timer_pro module parameter extended from boolean value to an integer value : 0 - no separate timer proc for TM; 1 - one separate timer proc for TM; n - multiple timer procs for TM.
to:
  • Existing own_timer_proc module parameter extended from boolean value to an integer value : 0 - no separate timer proc for TM; 1 - one separate timer proc for TM; n - multiple timer procs for TM.
March 20, 2014, at 08:45 PM by razvancrainea -
Added line 28:
  • New transformations for searching the index of a substring in a string: {s.index} and {s.rindex}
March 20, 2014, at 08:12 PM by 89.120.101.121 -
Added line 85:
  • the definition of a gateway contains now the desired outbound socket (useful in multi-homed setups).
March 20, 2014, at 08:06 PM by 89.120.101.121 -
Added line 21:
  • added support for DH or DHE ciphers in the TLS implementation
March 20, 2014, at 08:02 PM by 89.120.101.121 -
Added lines 45-50:

AUTH module

  • a domain part is now allowed in the digest username (during authentication via script variables). Ex: Digest username="abc@domain", realm="domain"
March 20, 2014, at 07:58 PM by 89.120.101.121 -
Added line 77:
  • route_to_gw() may receive a list of GW IDs (instead of only one) - the list is a comma separated list of gw IDs.
March 20, 2014, at 07:56 PM by 89.120.101.121 -
Changed line 102 from:
  • local route enhancements :
to:
  • More local route enhancements :
Added lines 107-111:
  • Added support for multiple timer processes in TM. The timer process may easily become a bottleneck in TM because:
    • single lock on the timer lists,
    • single process to purge/free all transactions,
    • single process running all failure routes (with all script complexity of failure routes).
  • Existing own_timer_pro module parameter extended from boolean value to an integer value : 0 - no separate timer proc for TM; 1 - one separate timer proc for TM; n - multiple timer procs for TM.
March 20, 2014, at 07:48 PM by 89.120.101.121 -
Changed line 103 from:
  • serial forking for UAC transactions added
to:
  • support for serial forking for UAC transactions
Changed line 106 from:
  • DNS based failover works now for UAC transactions (solving #140)
to:
  • DNS based failover works now for UAC transactions
March 20, 2014, at 07:48 PM by 89.120.101.121 -
Added lines 102-106:
  • local route enhancements :
    • serial forking for UAC transactions added
    • possibility to use ONREPLY and FAILURE routes for UAC transactions
    • ability to use (transaction wise) AVPs, flags, timeouts
    • DNS based failover works now for UAC transactions (solving #140)
March 20, 2014, at 07:45 PM by 89.120.101.121 -
Added lines 31-34:

NEW CALL_CENTER module

  • A new module to provide implementation for call queuing, typical for inbound call centers. The module allows definition of multiple queues/flows (each with its own announcements, on-hold music, required skill from agents), agents (an agent may provide multiple skills). Incoming calls for a flow are distributed to agents based on an even dispersion over the agents (only agents providing same skill as the flow will server that flow). A rich set of statistics (global, per flow, per agent) and detailed CDRs are provided by the module. Note that the module does not provide the media playing capability - an external SIP media server is required for that.
  • Read more ...
March 20, 2014, at 07:37 PM by 89.120.101.121 -
Changed lines 104-137 from:

Devel Plan 1.11 release (TODO list)

ImportanceModuleDescription
xxxxTMeven if decide to "go stateful" very early in your script (via t_newtran), all changes you do later over the request (in request route, branch route, failure route) must be updated/pushed into transaction and remembered at later processing
xxxxDIALOGre-INVITE based in-dialog pinging (with proper SDP handling)
xxxREGISTRARlookup() should have a flag to force lookup on all branches (and not only on RURI)
xxxDIALOGNew events for dialog matched, terminated, etc
xxxDIALOGcontrol profiles/variables DB storage - specify whether we want to ever dump the profies/variables in the DB or only on shutdown. Rethink the current design to see if is the best.
xxxUSRLOCdistributed storage via a NoSQL DB
xxxDIALOGdistributed storage via a NoSQL DB
xxxUSRLOCwhen db is updated based on timer, combine multiple deletes in a single query
xxxSIPCAPTURETCP support
xxxRTPProxyadd ICE support for rtpproxy
xxxEvent Interfaceadd ZeroMQ support for Event Interface
xxxcoresend function (including from TM) should return a dedicated ret code to indicate network errors (failure in sending)
xxxnewIntegrate OpenSIPS with libpurple library for IM and Presence
xxTLS coreadd an internal API for TLS management to allow registration of certificates ; a new module to allow TLS certificates provisioning via DB (per domain, per IP, etc)
xxDROUTINGAllow the option to call do_routing with a particular number, but to propagate downstream a different number ( useful for number portability scenarios )
xxUSRLOCuse a single Primary Key (non SIP related) for DB ops
xxTMallow dynamic number of branches per transaction (on demand)
xxStatistics Interfacereplace the BIG LOCK (if other arch than i386) with multiple shared locks (to protect the values)
xxnewnew cachedb_virtual modules, similar to db_virtual, but for NoSQL databases
xxdb_virtualOpensips should be able to start even if db_virtual was not able to connect to all databases. So long as it can connect to at least 1 it should still work
xxB2BSupport for attended transfers on B2BUA
xxevent_datagramInstead of pushing events in text/plan format, to have also the options to pack the event in a json format -> easier to parse by the receiver
xxnewmi_xmlrpc to support also REST queries
xxnewsupport for RFC5626 - Managing Client-Initiated Connections in SIP
xnewnew module mi_stream to provide MI interaction via connection oriented links (TCP or fifo)
xnewRFC6140 Registration for Multiple Phone Numbers
xAVPOPSRegexp based filter for avp_db_load - what AVPs to be loaded
xcoreBe able to specify multiple keys with the "cache_fetch" MI command
xTMFlag to hide call-id for topology_hiding()
to:

March 20, 2014, at 07:14 PM by liviu -
Changed line 20 from:
  • memory allocation pattern recording and fragmentation-on-startup - for optimum restarts on systems with great amounts of memory (8GB+)
to:
  • memory allocation pattern recording and fragmentation-on-startup - for optimum restarts on platforms which deal with a high number of calls-per-second
March 20, 2014, at 07:11 PM by liviu -
Changed line 20 from:
  • memory allocation pattern recording and fragmentation-on-startup - for optimum restarts on systems with great amounts of memory
to:
  • memory allocation pattern recording and fragmentation-on-startup - for optimum restarts on systems with great amounts of memory (8GB+)
March 20, 2014, at 07:11 PM by liviu -
Changed lines 17-21 from:
  • new memory allocator - featuring fine-grained locking and a tunable two-level hashing of free memory fragments, the High Performance Allocator is an ideal choice when dealing with thousands of calls per second on multi-core systems
to:
  • new memory allocator - the High Performance Allocator is an ideal choice when dealing with thousands of calls per second on multi-core systems. Features:
    • fine-grained locking
    • tunable two-level hashing of free memory fragments
    • memory allocation pattern recording and fragmentation-on-startup - for optimum restarts on systems with great amounts of memory
March 20, 2014, at 07:05 PM by liviu -
Changed line 17 from:
  • new memory allocator - featuring fine-grained locking and two-level hashing, the High Performance Allocator is the way to go when dealing with thousands of calls per second on multi-core systems
to:
  • new memory allocator - featuring fine-grained locking and a tunable two-level hashing of free memory fragments, the High Performance Allocator is an ideal choice when dealing with thousands of calls per second on multi-core systems
March 20, 2014, at 07:04 PM by liviu -
Added line 17:
  • new memory allocator - featuring fine-grained locking and two-level hashing, the High Performance Allocator is the way to go when dealing with thousands of calls per second on multi-core systems
March 20, 2014, at 03:25 PM by liviu -
Changed line 34 from:
  • script writing made easier - Transparent sequential request management (through record routing and loose routing). May be configured to use dialog support.
to:
  • script writing made easier - Transparent sequential request management (through record routing and loose routing). May be configured to use dialog support. Future directions include embedded NAT and auth support.
March 20, 2014, at 03:22 PM by liviu -
Added lines 30-34:
  • Read more ...

NEW SCRIPT_HELPER module

  • script writing made easier - Transparent sequential request management (through record routing and loose routing). May be configured to use dialog support.
March 18, 2014, at 01:00 PM by liviu -
Changed line 87 from:
  • New $T_fr_timer and $T_fr_inv_timer module variables, as a replacement for the equivalent module parameter AVPs.
to:
  • New $T_fr_timeout and $T_fr_inv_timeout module variables, as a replacement for the equivalent module parameter AVPs.
March 17, 2014, at 09:58 AM by razvancrainea -
Added lines 45-48:

DIALOG module

  • timeout_avp parameter functionality has been replaced with a new $DLG_timeout pseudo variable that allows you to change the dialog timeout both before and after loose_route()
Added lines 76-79:

RTPProxy module

  • set_rtp_proxy_set() function and rtpp_sock_pvar parameter have been removed and replaced by optional parameters to all RTPProxy functions (i.e. rtpproxy_offer(), rtpproxy_answer(), start_recording(), etc.)
March 14, 2014, at 09:16 AM by liviu -
Added line 58:
  • rework of attributes AVPs - they are now given as function parameters. Overall performance is the same, but scripting is easier
March 07, 2014, at 03:52 PM by razvancrainea -
Added line 21:
  • Optional parameters can now be skipped by comma (i.e. rtpproxy_offer(,,"$var(set_id)",))
March 05, 2014, at 04:35 PM by osas - dispatcher: ability to dispatch over multiple dispatching groups
Added line 52:
  • ability to dispatch over multiple dispatching groups;
March 05, 2014, at 11:53 AM by liviu -
Changed line 20 from:
  • New script statement! - for-each - iterate through the values of an indexed pseudo-variable (i.e. $avp, $ct, $ct.fields, $branch, $hdr...) easier and faster with "for ($var(ct) in $(ct[*])) { ... }"
to:
  • New script statement! - for-each - iterate through the values of an indexed pseudo-variable (i.e. $avp, $ct, $ct.fields, $branch, $hdr...) easier and faster with "for ($var(ct) in $(ct[*])) { ... }"
March 05, 2014, at 11:51 AM by liviu -
Changed line 68 from:
  • new parameters to control the SSL certificate verifications of remote parties
to:
  • new parameters to control the SSL certificate verifications of remote parties
March 05, 2014, at 11:51 AM by liviu -
Added lines 65-68:

REST_CLIENT module

  • new parameters to control the SSL certificate verifications of remote parties
March 04, 2014, at 02:42 PM by liviu -
Added lines 65-68:

STUN module

  • The advertised IPs and ports can now be specified for the listening interfaces. This allows the module to be used behind NAT.
March 02, 2014, at 03:19 PM by liviu -
Changed line 20 from:
  • New script statement! - for-each - iterate through the values of an indexed pseudo-variable (i.e. $avp, $ct, $ct.fields, $branch, $hdr...) easier and faster with "for ($var(i) in $(ct[*])) { ... }"
to:
  • New script statement! - for-each - iterate through the values of an indexed pseudo-variable (i.e. $avp, $ct, $ct.fields, $branch, $hdr...) easier and faster with "for ($var(ct) in $(ct[*])) { ... }"
March 02, 2014, at 03:18 PM by liviu -
Changed lines 20-21 from:
  • New script statement! - for-each - iterate through the values of an avp easier and faster with "for ($var(i) in $avp(array)) { ... }"
to:
  • New script statement! - for-each - iterate through the values of an indexed pseudo-variable (i.e. $avp, $ct, $ct.fields, $branch, $hdr...) easier and faster with "for ($var(i) in $(ct[*])) { ... }"
Deleted line 103:
xxscript"for-each" script statement TODO: iterate over any pv, also its [*] syntax and special fields if supported
February 27, 2014, at 01:29 AM by liviu -
Changed line 46 from:
  • attrs_pvar dropped; it is now an optional parameter of dp_translate()
to:
  • attrs_pvar dropped; it is now an optional parameter of dp_translate()
February 27, 2014, at 12:17 AM by liviu -
Changed line 64 from:
  • New script function! remove - explicitly remove one, more or all contacts belonging to an address-of-record. For usage examples, refer to the documentation section.
to:
  • New script function! remove - explicitly remove one, more or all contacts belonging to an address-of-record. For usage examples, refer to the documentation section.
February 27, 2014, at 12:16 AM by liviu -
Deleted line 46:
  • destination's state are reload persistent (via memory); after reloading, the destinations (kept in the new set) will preserve their state;
February 27, 2014, at 12:16 AM by liviu -
Added lines 43-47:

DIALPLAN module

  • attrs_pvar dropped; it is now an optional parameter of dp_translate()
  • destination's state are reload persistent (via memory); after reloading, the destinations (kept in the new set) will preserve their state;
February 27, 2014, at 12:14 AM by liviu -
Added lines 61-64:

TM module

  • New $T_fr_timer and $T_fr_inv_timer module variables, as a replacement for the equivalent module parameter AVPs.
December 19, 2013, at 12:52 AM by liviu -
Changed line 96 from:
xxscript"for-each" script statement TODOs: iterating $branch and $ct (should also work with their fields)
to:
xxscript"for-each" script statement TODO: iterate over any pv, also its [*] syntax and special fields if supported
December 13, 2013, at 06:42 PM by osas - NEW B2B_SCA module
Added lines 22-25:

NEW B2B_SCA module

  • Shared Call Appearance functionality - Uses the OpenSIPS b2b_logic module as a foundation to provide SCA functionality.
  • Read more ...
Changed lines 28-29 from:
  • JSON replies via HTTP GET - Uses the OpenSIPS "httpd" module as an HTTP server engine in order to reply in a JSON format to MI Interface commands Read more...
to:
  • JSON replies via HTTP GET - Uses the OpenSIPS "httpd" module as an HTTP server engine in order to reply in a JSON format to MI Interface commands.
  • Read more ...
December 09, 2013, at 07:56 PM by bogdan -
Added lines 38-47:

DISPATCHER module

  • destination's state are restart persistent (across database); after restarting, the destinations are preserving their previous states;
  • destination's state are reload persistent (via memory); after reloading, the destinations (kept in the new set) will preserve their state;

DROUTING module

  • gateway's state are restart persistent (across database); after restarting, the gateways are preserving their previous states;
  • gateway's state are reload persistent (via memory); after reloading, the gateways (kept in the new set) will preserve their state;
November 25, 2013, at 01:37 PM by liviu -
Changed line 20 from:
  • for-each statement iterate through the values of an avp easier and faster with "for ($var(i) in $avp(array)) { ... }"
to:
  • New script statement! - for-each - iterate through the values of an avp easier and faster with "for ($var(i) in $avp(array)) { ... }"
November 25, 2013, at 01:31 PM by liviu -
Changed line 45 from:
  • New script function! remove - explicitly remove one, more or all contacts belonging to an address-of-record. For usage examples, refer to the module doc page.
to:
  • New script function! remove - explicitly remove one, more or all contacts belonging to an address-of-record. For usage examples, refer to the documentation section.
November 25, 2013, at 01:30 PM by liviu -
Changed line 45 from:
  • New script function! remove - explicitly remove one, more or all contacts belonging to an address-of-record. For usage examples, refer to the module doc page.
to:
  • New script function! remove - explicitly remove one, more or all contacts belonging to an address-of-record. For usage examples, refer to the module doc page.
November 22, 2013, at 06:58 PM by liviu -
Changed line 45 from:
  • remove function - explicitly remove one, more or all contacts belonging to an address-of-record. For usage examples, refer to the module doc page.
to:
  • New script function! remove - explicitly remove one, more or all contacts belonging to an address-of-record. For usage examples, refer to the module doc page.
November 22, 2013, at 06:56 PM by liviu -
Added lines 43-46:

REGISTRAR module

  • remove function - explicitly remove one, more or all contacts belonging to an address-of-record. For usage examples, refer to the module doc page.
Deleted line 65:
xxxREGISTRARNew function to remove an AOR or a contact, from script
November 20, 2013, at 12:32 PM by 109.99.235.212 -
Deleted line 61:
xxxDB/cacheDBThresholds for DB and cacheDB ops - similar to the ones in db_mysql module
November 20, 2013, at 12:31 PM by 109.99.235.212 -
Added lines 34-37:

CACHEDB_* modules

  • Added exec_threshold parameter in order to be able to track slow queries
November 04, 2013, at 08:44 PM by 109.99.235.212 -
Changed line 24 from:
  • JSON replies via HTTP GET - Uses the OpenSIPS "httpd" module as an HTTP server engine in order to reply in a JSON format to MI Interface commands Read more...
to:
  • JSON replies via HTTP GET - Uses the OpenSIPS "httpd" module as an HTTP server engine in order to reply in a JSON format to MI Interface commands Read more...
November 04, 2013, at 08:44 PM by 109.99.235.212 -
Added lines 21-24:

NEW MI_JSON module

  • JSON replies via HTTP GET - Uses the OpenSIPS "httpd" module as an HTTP server engine in order to reply in a JSON format to MI Interface commands Read more...
November 04, 2013, at 07:50 PM by bogdan -
Changed line 1 from:

About -> Available Versions -> 1.11.x Releases -> Release 1.11.0

to:
About -> Available Versions -> 1.11.x Releases -> Release 1.11.0
November 04, 2013, at 03:33 PM by 109.99.235.212 -
Added lines 21-25:

CACHEDB_COUCHBASE module

  • Better reconnect support
  • Added 'lazy_connect' parameter, which delays making the connection to couchbase until the connection is actually used ( If you are connecting to multiple buckets and run many opensips children it can be time consuming to make all the connections on startup )
November 04, 2013, at 01:40 PM by 109.99.235.212 -
Changed lines 22-26 from:

NATHELPER modules

to:

CACHEDB_REDIS module

  • Added Raw Query running capabilities via cachedb_raw_query See more ...

NATHELPER module

November 01, 2013, at 04:51 PM by bogdan -
Changed line 1 from:

About -> Available Versions -> 1.11.x Releases -> Release 1.11.0

to:

About -> Available Versions -> 1.11.x Releases -> Release 1.11.0

November 01, 2013, at 04:44 PM by bogdan -
Added lines 22-25:

NATHELPER modules

  • 100.64.0.0/10 address block (RFC 6598 for Shared Address Space) is processed like any RFC 1918 blocks
Added line 29:
October 28, 2013, at 12:39 PM by liviu -
Changed line 24 from:
  • binary replication feature introduced. Offers transparent, real-time, complete user location mirroring between multiple OpenSIPS instances, commonly used in order to achieve redundancy. For more details on the usrloc binary replication, please visit the module documentation page.
to:
  • binary replication feature introduced. Offers transparent, real-time and complete user location mirroring between multiple OpenSIPS instances, commonly used in order to achieve redundancy. For more details on the usrloc binary replication, please visit the module documentation page.
October 28, 2013, at 12:39 PM by liviu -
Changed line 24 from:
  • binary replication feature introduced. Offers transparent, real-time data mirroring between multiple OpenSIPS instances, commonly used in order to achieve redundancy. For more details on the usrloc binary replication, please visit the module documentation page.
to:
  • binary replication feature introduced. Offers transparent, real-time, complete user location mirroring between multiple OpenSIPS instances, commonly used in order to achieve redundancy. For more details on the usrloc binary replication, please visit the module documentation page.
October 23, 2013, at 02:31 PM by razvancrainea -
Changed line 35 from:
xxxDIALOGcontrol profiles/variables DB storage
to:
xxxDIALOGcontrol profiles/variables DB storage - specify whether we want to ever dump the profies/variables in the DB or only on shutdown. Rethink the current design to see if is the best.
October 21, 2013, at 12:30 PM by liviu -
Changed line 20 from:
  • for-each statement iterate through the values of an avp easier and faster with for ($var(i) in $avp(array)) { ... }
to:
  • for-each statement iterate through the values of an avp easier and faster with "for ($var(i) in $avp(array)) { ... }"
October 21, 2013, at 12:30 PM by liviu -
Added lines 17-20:

Script

  • for-each statement iterate through the values of an avp easier and faster with for ($var(i) in $avp(array)) { ... }
October 18, 2013, at 06:28 PM by liviu -
Changed line 53 from:
xxscript"for-each" script statement TODOs: iterating $branch and $ct (should also work with their parameters)
to:
xxscript"for-each" script statement TODOs: iterating $branch and $ct (should also work with their fields)
October 18, 2013, at 06:06 PM by liviu -
Changed line 53 from:
xxscriptimplement the "for-each" script statement! usage cases: iterating an avp, $branch or $ct, iterating through the "s.select" script transformation
to:
xxscript"for-each" script statement TODOs: iterating $branch and $ct (should also work with their parameters)
October 18, 2013, at 01:33 PM by 109.99.235.212 -
Changed line 53 from:
xxscriptimplement the "for-each" script statement! usage cases: iterating an avp, iterating through the "s.select" script transformation
to:
xxscriptimplement the "for-each" script statement! usage cases: iterating an avp, $branch or $ct, iterating through the "s.select" script transformation
October 17, 2013, at 06:15 PM by liviu -
Added lines 17-20:

USRLOC module

  • binary replication feature introduced. Offers transparent, real-time data mirroring between multiple OpenSIPS instances, commonly used in order to achieve redundancy. For more details on the usrloc binary replication, please visit the module documentation page.
October 04, 2013, at 04:00 PM by razvancrainea -
Added line 27:
xxxDIALOGcontrol profiles/variables DB storage
October 02, 2013, at 03:48 PM by razvancrainea -
Added line 34:
xxxEvent Interfaceadd ZeroMQ support for Event Interface
September 30, 2013, at 08:28 PM by liviu -
Deleted line 35:
xxscriptimplement the "for-each" script statement! usage cases: iterating an avp, iterating through the "s.select" script transformation
Added line 47:
xxscriptimplement the "for-each" script statement! usage cases: iterating an avp, iterating through the "s.select" script transformation
September 30, 2013, at 08:26 PM by liviu -
Added line 36:
xxscriptimplement the "for-each" script statement! usage cases: iterating an avp, iterating through the "s.select" script transformation
September 20, 2013, at 07:33 PM by bogdan -
Added lines 13-16:

Core

  • dns_try_naptr option added to disable the NAPTR lookups when doing DNS based routing for SIP requests. By default it is enabled.
September 20, 2013, at 02:07 PM by liviu -
Changed line 46 from:
xcoreFetch multiple keys with the "cache_fetch" MI command
to:
xcoreBe able to specify multiple keys with the "cache_fetch" MI command
September 20, 2013, at 02:06 PM by liviu -
Changed line 46 from:
xcoreFetch multiple local cache keys with one command
to:
xcoreFetch multiple keys with the "cache_fetch" MI command
September 20, 2013, at 02:05 PM by liviu -
Changed line 46 from:
xcoreFetch multiple local cache keys with one command
to:
xcoreFetch multiple local cache keys with one command
September 20, 2013, at 02:05 PM by liviu -
Added line 46:
xcoreFetch multiple local cache keys with one command
September 19, 2013, at 08:12 PM by nikbyte -
Changed lines 45-46 from:
xAVPOPSRegexp based filter for avp_db_load - what AVPs to be loaded
to:
xAVPOPSRegexp based filter for avp_db_load - what AVPs to be loaded
xTMFlag to hide call-id for topology_hiding()
August 26, 2013, at 06:30 PM by 109.99.235.212 -
Deleted line 19:
xxxxnewnew module to drive SANGOMA cards in for transcoding (similar to driving the rtpproxy or mediaproxy)
August 05, 2013, at 04:41 PM by razvancrainea -
Deleted lines 13-88:

CORE

  • Asynchronous TCP support - Added support for Asynchronous Connect and Write operations on TCP Read More...
  • TCP read optimizations - Improved overall TCP reading ( faster and with less memory used ). Also made TCP more resilient to outside attack by allowing the script writer to limit the amount of fragmentation that is permitted on TCP connections. Read More...
  • NEW Binary Internal Interface - Allows a quick and efficient information exchange between OpenSIPS instances by exporting a series of functions used to build, send and receive Binary Packets. This API can be then used by any OpenSIPS module in order to communicate with the same module of one or more other instances. Read More...
  • NEW -F startup option - If set, OpenSIPS will leave the main process in foreground, so that it can be controlled by daemon-tools or old buggy upstart.
  • conflicting changes solves by discarding changes over the chunks which were deleted (the conflict between add and remove lumps).

NEW DB_CACHEDB module

  • SQL to NoSQL conversions - it provides the SQL API while directly operating with a noSQL engine. Thus, any OpenSIPS module that would regularily need a regular SQL-based database, will now be able to run over a NoSQL back-end, allowing for a much easier distribution and integration of the currently existing OpenSIPS modules in a distributed environment. Read More....

NEW MATHOPS module

  • Floating point arithmetic at OpenSIPS script level, along with a series of rounding capabilities Read More...

NEW MI_XMLRPC_NG module

  • Improved XMLRPC support - Dropped the libxmlrpc-c3 library. Uses the "httpd" module as an HTTP server engine.Read More...

NEW REST_CLIENT module

  • HTTP GET and POST are currently the methods supported by the new HTTP client module. Read More...

NEW Transformations

  • hex2dec and dec2hex transformations, used for conversions between decimal and hexadecimal numbers. Read More...

AVPOPS module

  • avp_db_load() - new optional "avp name prefix" parameter which allows distiction between identical attributes when loading AVPs from the database. Read More...

B2B_LOGIC module

  • NEW custom_header_regexp param - Regexp to search SIP header by names that should be passed from the dialog of one side to the other side. Read More ...

CACHE_LOCAL module

  • Remove Chunks - have the ability to remove entire chunks of the cache, from the MI and Script level Read More...

DB_HTTP module

  • NEW timeout param - limit the number of milliseconds that a query is allowed to last Read More ...

DIALOG module

  • NEW dialog replication - Realtime mirroring of all dialog-related events taking place in one OpenSIPS instance to one or more other instances, for failover purposes. The logic is based on the new Binary Internal Interface. More details can be found in the module documentation
  • $DLG_end_reason - new PVAR to tell you the way how to dialog ended ( either normal termination, FIFO, media timeout, lifetime expire, etc ) Read More ...
  • dlg_restore_db - new MI command which truncates and repopulates the dialog table with the currently confirmed dialogs in memory Read More ...

HTTPD module

  • POST support added (additional to GET support) - this will open the way for the migration of mi_xmlrpc module and other new features.

PRESENCE_CALLINFO module

  • SCA support with dialog module ; this module provides OpenSIPS support for shared call appearances (SCA) as defined by BroadWorks SIP Access Side Extensions Interface specifications; it was integrated with the dialog module, so that the dialog module will automatically generate dialog related events for updating the call-info state. Read More ...

REGISTRAR module

  • Store information per location entry - the 'attr_avp' module parameter is used to specify an avp which will be used to store/load additional registration-related information in/from the location table. Read More...

RTPPROXY module

  • NEW rtpp_sock_pvar parameter - expose to the script the actual RTPProxy URI used in the case of multiple RTPProxy instances load balancing Read More...

UAC and UAC_AUTH modules

  • module parameters auth_realm_avp, auth_username_avpand auth_password_avp moved from the UAC module to the UAC_AUTH module. The UAC_AUTH module is responsible for handling all the credentials (static or dynamic). B2B module gets visibility to credentials defined via AVPs.

USRLOC module

  • AOR insert and delete events - the usrloc module raises events when a new AOR is inserted or deleted. This allows you to build custom applications to track the customers. Read More....
Changed line 15 from:

Devel Plan 1.10 release (TODO list)

to:

Devel Plan 1.11 release (TODO list)

August 05, 2013, at 04:40 PM by razvancrainea -
Added lines 1-122:

About -> Available Versions -> 1.11.x Releases -> Release 1.11.0

This page has been visited 10818 times. (:toc-float Table of Content:)


Migration from 1.10.x to 1.11.0

To be done on release date.


What is new in 1.11.0

CORE

  • Asynchronous TCP support - Added support for Asynchronous Connect and Write operations on TCP Read More...
  • TCP read optimizations - Improved overall TCP reading ( faster and with less memory used ). Also made TCP more resilient to outside attack by allowing the script writer to limit the amount of fragmentation that is permitted on TCP connections. Read More...
  • NEW Binary Internal Interface - Allows a quick and efficient information exchange between OpenSIPS instances by exporting a series of functions used to build, send and receive Binary Packets. This API can be then used by any OpenSIPS module in order to communicate with the same module of one or more other instances. Read More...
  • NEW -F startup option - If set, OpenSIPS will leave the main process in foreground, so that it can be controlled by daemon-tools or old buggy upstart.
  • conflicting changes solves by discarding changes over the chunks which were deleted (the conflict between add and remove lumps).

NEW DB_CACHEDB module

  • SQL to NoSQL conversions - it provides the SQL API while directly operating with a noSQL engine. Thus, any OpenSIPS module that would regularily need a regular SQL-based database, will now be able to run over a NoSQL back-end, allowing for a much easier distribution and integration of the currently existing OpenSIPS modules in a distributed environment. Read More....

NEW MATHOPS module

  • Floating point arithmetic at OpenSIPS script level, along with a series of rounding capabilities Read More...

NEW MI_XMLRPC_NG module

  • Improved XMLRPC support - Dropped the libxmlrpc-c3 library. Uses the "httpd" module as an HTTP server engine.Read More...

NEW REST_CLIENT module

  • HTTP GET and POST are currently the methods supported by the new HTTP client module. Read More...

NEW Transformations

  • hex2dec and dec2hex transformations, used for conversions between decimal and hexadecimal numbers. Read More...

AVPOPS module

  • avp_db_load() - new optional "avp name prefix" parameter which allows distiction between identical attributes when loading AVPs from the database. Read More...

B2B_LOGIC module

  • NEW custom_header_regexp param - Regexp to search SIP header by names that should be passed from the dialog of one side to the other side. Read More ...

CACHE_LOCAL module

  • Remove Chunks - have the ability to remove entire chunks of the cache, from the MI and Script level Read More...

DB_HTTP module

  • NEW timeout param - limit the number of milliseconds that a query is allowed to last Read More ...

DIALOG module

  • NEW dialog replication - Realtime mirroring of all dialog-related events taking place in one OpenSIPS instance to one or more other instances, for failover purposes. The logic is based on the new Binary Internal Interface. More details can be found in the module documentation
  • $DLG_end_reason - new PVAR to tell you the way how to dialog ended ( either normal termination, FIFO, media timeout, lifetime expire, etc ) Read More ...
  • dlg_restore_db - new MI command which truncates and repopulates the dialog table with the currently confirmed dialogs in memory Read More ...

HTTPD module

  • POST support added (additional to GET support) - this will open the way for the migration of mi_xmlrpc module and other new features.

PRESENCE_CALLINFO module

  • SCA support with dialog module ; this module provides OpenSIPS support for shared call appearances (SCA) as defined by BroadWorks SIP Access Side Extensions Interface specifications; it was integrated with the dialog module, so that the dialog module will automatically generate dialog related events for updating the call-info state. Read More ...

REGISTRAR module

  • Store information per location entry - the 'attr_avp' module parameter is used to specify an avp which will be used to store/load additional registration-related information in/from the location table. Read More...

RTPPROXY module

  • NEW rtpp_sock_pvar parameter - expose to the script the actual RTPProxy URI used in the case of multiple RTPProxy instances load balancing Read More...

UAC and UAC_AUTH modules

  • module parameters auth_realm_avp, auth_username_avpand auth_password_avp moved from the UAC module to the UAC_AUTH module. The UAC_AUTH module is responsible for handling all the credentials (static or dynamic). B2B module gets visibility to credentials defined via AVPs.

USRLOC module

  • AOR insert and delete events - the usrloc module raises events when a new AOR is inserted or deleted. This allows you to build custom applications to track the customers. Read More....

Devel Plan 1.10 release (TODO list)

ImportanceModuleDescription
xxxxTMeven if decide to "go stateful" very early in your script (via t_newtran), all changes you do later over the request (in request route, branch route, failure route) must be updated/pushed into transaction and remembered at later processing
xxxxnewnew module to drive SANGOMA cards in for transcoding (similar to driving the rtpproxy or mediaproxy)
xxxxDIALOGre-INVITE based in-dialog pinging (with proper SDP handling)
xxxREGISTRARlookup() should have a flag to force lookup on all branches (and not only on RURI)
xxxDIALOGNew events for dialog matched, terminated, etc
xxxUSRLOCdistributed storage via a NoSQL DB
xxxDIALOGdistributed storage via a NoSQL DB
xxxUSRLOCwhen db is updated based on timer, combine multiple deletes in a single query
xxxSIPCAPTURETCP support
xxxDB/cacheDBThresholds for DB and cacheDB ops - similar to the ones in db_mysql module
xxxREGISTRARNew function to remove an AOR or a contact, from script
xxxRTPProxyadd ICE support for rtpproxy
xxxcoresend function (including from TM) should return a dedicated ret code to indicate network errors (failure in sending)
xxxnewIntegrate OpenSIPS with libpurple library for IM and Presence
xxTLS coreadd an internal API for TLS management to allow registration of certificates ; a new module to allow TLS certificates provisioning via DB (per domain, per IP, etc)
xxDROUTINGAllow the option to call do_routing with a particular number, but to propagate downstream a different number ( useful for number portability scenarios )
xxUSRLOCuse a single Primary Key (non SIP related) for DB ops
xxTMallow dynamic number of branches per transaction (on demand)
xxStatistics Interfacereplace the BIG LOCK (if other arch than i386) with multiple shared locks (to protect the values)
xxnewnew cachedb_virtual modules, similar to db_virtual, but for NoSQL databases
xxdb_virtualOpensips should be able to start even if db_virtual was not able to connect to all databases. So long as it can connect to at least 1 it should still work
xxB2BSupport for attended transfers on B2BUA
xxevent_datagramInstead of pushing events in text/plan format, to have also the options to pack the event in a json format -> easier to parse by the receiver
xxnewmi_xmlrpc to support also REST queries
xxnewsupport for RFC5626 - Managing Client-Initiated Connections in SIP
xnewnew module mi_stream to provide MI interaction via connection oriented links (TCP or fifo)
xnewRFC6140 Registration for Multiple Phone Numbers
xAVPOPSRegexp based filter for avp_db_load - what AVPs to be loaded

Page last modified on May 08, 2014, at 12:10 AM