Login | Register

About

About -> Available Versions -> 3.5.x Releases -> Release 3.5.0

This page has been visited 1639 times.


1.  Migration from 3.4.x to 3.5.0


2.  What is new in 3.5.0

2.1  OpenSIPS script

  • xlog_print_level - default logging severity for xlog() messaged has been lowered from ERROR (-1) level to NOTICE (2) level
  • The socket parameter can receive a port-range, that can be used to avoid defining the same IP multiple times just for using a different port.

2.2  OpenSIPS Core

  • the new move_branch() function allows you to move the information of a specific branch on top of a different one.
  • the swap_branches() function allows you to swap branch information between two existing branches.
  • the set_via_handling() function to control VIA related various behaviors (like rport, tcp aliasing, reply to via, etc)

2.3  [NEW] AUTH_AKA module

  • A new module that implements RFC 3310 AKA authentication mechanism. For more information check module's docs.

2.4  [NEW] AKA_AV_DIAMETER module

The new AKA_AV_Diameter module is capable of fetching authentication vectors required by auth_aka module through the Cx/Dx Diameter interface.

2.5  [NEW] HTTP2D module

An RFC 7540/9113 HTTP/2 server implementation with "h2" ALPN support, based on the nghttp2 library (https://nghttp2.org/).
Module docs: http2d

2.6  [NEW] PROTO_IPSEC module

A new protocol module used to establish IPSec tunnels according to the TS 33.203 specifications.
Module docs: proto_ipsec

2.7  [NEW] LAUNCH_DARKLY module

This module implements support for the Launch Darkly feature management cloud. The module provide the connectivity to the cloud and the ability to query for feature flags.

2.8  [NEW] MQUEUE module

MQUEUE generic message queue system in shared memory for inter-process communication using the config file

2.9  [NEW] PRESENCE_REGINFO module

Extension to Presence server for "reg"-events according to RFC 3680

2.10  [NEW] PUA_REGINFO module

Publisher for "reg"-events according to RFC 3680

2.11  [NEW] SQLOPS module

This module is an offspring of the AVPOPS module. While dropping all the AVP related function (which were obsolete), this new module brings new SQL capabilities:

  • specialized INSERT/SELECT/UPDATE/DELETE functions, with JSON encoded parameters, that are directly using the internal SQL API - this means you can query via all existing DB backends, and also take advantage of prepared statements
  • dedicated query function to return a single row, so not depending on AVPs for simple queries.
  • added support for timing out asynchronous MySQL database queries.

2.12  AAA_DIAMETER module

2.13  AVPOPS module

  • deprecated in favor of SQLOPS

2.14  B2B_ENTITIES module

  • rework the logic in order to have a proper handling of overlaping transactions, as per RFC3261, Section 14.2

2.15  B2B_LOGIC module

  • the flag with the late_bye value has been added to the b2b_bridge_request function's parameters to allow delaying the generation of a BYE until the new entity bridging the call establishes it.
  • the old_entity_term_delay parameter has been added to specify the delay for the BYE generation when the late_bye flag is used.

2.16  CACHEDB_LOCAL module

2.17  CLUSTERER module

2.18  DB_TEXT

  • new `buffer_size` parameter to control the size of the buffer used for loading the DB files.

2.19  DIALOG module

  • performance: the "dialog values" locking is now independent (per-dialog), rather than re-using the dialog hash locking. In turn, this should not only improve the OpenSIPS throughput on multi-core systems, but also make the dialog API more friendly to program with (mitigating the risk of introducing complex AB/BA deadlocks when developing dialog-client modules).
  • get_profile_size() may now be used from any type of route.
  • the name of the dialog profiles may now contain '-' and '_' chars too

2.20  DISPATCHER module

  • "ping_from", "ping_method", and "persistent_state" parameters have been added to the settings that can be defined per dispatcher partition.

2.21  DROUTING module

2.22  EVENT_RABBITMQ module

  • added new module parameter timeout to indicate how long a RabbitMQ command should be blocking before timing out.

2.23  FREESWITCH module

  • several QoL improvements in ESL socket management
    • added exponential backoff behavior when reconnecting to FS (1/5/10/30/90 second retries, counting x20 each)
    • auto-close ESL connections which go unused for a full day
    • freeswitch_esl() will now do a quick-exit in case the socket is down without unnecessarily blocking OpenSIPS (the timer should reconnect the socket anyway)

2.24  HTTPD module

  • added new module parameter conn_timeout, in order to auto-close idle TCP connections.

2.25  PRESENCE module

  • added new cluster_be_active_shtag module parameter to define a sharing tag to control the node status in HA setups.

2.26  PROMETHEUS module

2.27  PROTO_HEP module

  • TLS support added as transport protocol

2.28  RABBITMQ module

  • added two new module parameter timeout and connect_timeout that indicate how long a RabbitMQ command/connect should be blocking before timing out.

2.29  REGEX module

  • two MI functions regex_match and regex_match_group were added to test regular expressions similarly to the way there are checked from the script.

2.30  REGISTRAR module

  • remove() may take an extra optional param `bflag` to filter the records to be deleted

2.31  SIPMSGOPS module

  • add new script function append_body_to_reply() to be able to add a body to the replies generated by OpenSIPS (in stateless or stateful mode)
  • new sip_to_json() module function to re-pack the current SIP msg into JSON format.

2.32  SIPREC module

  • The siprec variable can now receive XML extensions for group and session nodes, as well as for the from_uri and to_uri of the outgoing call.
  • Added group_custom_extension and session_custom_extension to the $siprec variable to specify group and session extensions.
  • The module now replicates information over the B2B cluster, to be able to fallback on a different node.
  • Added support for handling re-INVITEs from SRS.

2.33  STIR_SHAKEN module

  • new stir_shaken_disengagement() function which appends the P-Identity-Bypass header field, in accordance with FFT/APNF regulations
  • new e164_max_length modparam, for scenarios where the 15-digit restriction must bypassed. Due to its importance, this parameter has also been backported down to 3.2 version.
  • improve the multi-IDENTITY header management, based on passport type "shaken".

2.34  SQL_CACHER module

  • the DOUBLE types are now returned as strings, rather than corrupted numerical values.
  • new bigint_to_str parameter to control how the BIGINT data is returned - integer or string.

2.35  TM module

2.36  UAC module

  • The uac_inc_cseq function has been added that allows you to increment the CSeq value of an outgoing message.

2.37  UAC_REGISTRANT module

  • new failure_retry_interval parameter to control the retry interval in case of failures/errors to register.
  • new reg_force_register MI command to force the (re-)registration of a record (before its normal timeout/retry interval).

2.38  USRLOC module


Page last modified on October 01, 2024, at 11:58 AM