Documentation

Documentation.Migration-3-2-0-to-3-3-0 History

Hide minor edits - Show changes to markup

January 23, 2024, at 12:59 PM by razvancrainea -
Changed line 76 from:
  • The b2b_logic_xml module has been dropped - replace it with $b2b_logic module.
to:
  • The b2b_logic_xml module has been dropped - replace it with b2b_logic module.
January 23, 2024, at 12:58 PM by razvancrainea -
Added lines 75-76:

B2B_LOGIC_XML module

  • The b2b_logic_xml module has been dropped - replace it with $b2b_logic module.
August 31, 2023, at 09:46 AM by razvancrainea -
Changed line 46 from:
  • The $pr and $protos variables have been dropped, replaced by the $socket_in(proto) variable.
to:
  • The $pr and $proto variables have been dropped, replaced by the $socket_in(proto) variable.
June 22, 2022, at 10:13 AM by liviu -
Added line 49:
  • The $rT (top route type) variable has been dropped, replaced by the $route.type variable. Equivalent syntax is: $(route.type[-1])
May 13, 2022, at 01:30 PM by razvancrainea -
Added lines 97-99:

MEDIA_EXCHANGE module

  • Media exchange forking mode no longer works through the rtpproxy module, but has been integrated with the rtp_relay module. Therefore, if you were using media exchange forking capabilities, you need to convert your script to engage RTP Relay sessions on your calls.
April 01, 2022, at 06:48 PM by liviu -
Added lines 78-80:

DIALOG module

  • the default replicate_profiles_timer has been increased to 200 ms, up from 10 ms.
Changed line 94 from:

Group module

to:

GROUP module

Changed line 98 from:

Ratelimit module

to:

RATELIMIT module

Changed lines 100-101 from:

RTPProxy module

to:
  • the default repl_timer_interval has been increased to 200 ms, up from 10 ms.

RTPPROXY module

March 09, 2022, at 11:31 AM by liviu -
Added lines 77-79:

DIALPLAN module

  • the "attrs_pvar" output variable of dp_translate() is now always set on a successful translation, helping avoid both unwanted bugs and boilerplate script code. See the updated docs for more details.
March 01, 2022, at 02:13 PM by razvancrainea -
Changed lines 100-102 from:
  • if you were forcing a custom socket to the SIPREC SRS using the $fs or force_send_socket command, you need to set the new socket through the $siprec(socket) variable.
to:
  • if you were forcing a custom socket to the SIPREC SRS using the $fs or force_send_socket command, you need to set the new socket through the $siprec(socket) variable.
  • the rtpproxy_sock parameter has been completely dropped, as the media node is taken automatically from the rtp_relay context. In order to migrate, simply remove the parameter from the siprec_start_recording call.
  • the media_port_min and media_port_max parameters have been moved to the RTPProxy module under the name of generated_sdp_port_min and generated_sdp_port_max accordingly.
December 16, 2021, at 04:04 PM by razvancrainea -
Changed line 99 from:
  • siprec_start_recording function no longer receives a set of data as parameters - the group, caller, callee, media_ip, headers parameters have been pulled out and are now provisioned through the new $siprec variable. If you were passing any of these optional arguments to the function, you should move them as $siprec(param).
to:
  • siprec_start_recording function no longer receives a set of data as parameters - the group, caller, callee, media_ip, headers parameters have been pulled out and are now provisioned through the new $siprec variable. If you were passing any of these optional arguments to the function, you should move them as $siprec(param). Note that the media_ip parameter has been deprecated in the favor of a more flexible media parameter.
November 23, 2021, at 05:42 PM by razvancrainea -
Changed lines 99-100 from:
  • siprec_start_recording function no longer receives a set of data as parameters - the group, caller, callee, media_ip, headers parameters have been pulled out and are now provisioned through the new $siprec variable. If you were passing any of these optional arguments to the function, you should move them as $siprec(param).
to:
  • siprec_start_recording function no longer receives a set of data as parameters - the group, caller, callee, media_ip, headers parameters have been pulled out and are now provisioned through the new $siprec variable. If you were passing any of these optional arguments to the function, you should move them as $siprec(param).
  • if you were forcing a custom socket to the SIPREC SRS using the $fs or force_send_socket command, you need to set the new socket through the $siprec(socket) variable.
November 22, 2021, at 06:37 PM by razvancrainea -
Changed lines 96-99 from:
  • The rtpproxy_tout parameter has been dropped, completely replaced by the rtpproxy_timetout parameter.
to:
  • The rtpproxy_tout parameter has been dropped, completely replaced by the rtpproxy_timetout parameter.

SIPREC module

  • siprec_start_recording function no longer receives a set of data as parameters - the group, caller, callee, media_ip, headers parameters have been pulled out and are now provisioned through the new $siprec variable. If you were passing any of these optional arguments to the function, you should move them as $siprec(param).
October 20, 2021, at 03:36 PM by 109.99.227.30 -
Changed lines 73-75 from:
  • if you are using the clustering support without a sharing tag and relying on the fact that all the nodes will ping all the destinations, in order to maintain this behavior you will have now to set the cluster_probing_mode modparam to "all".
to:
Added lines 79-80:
  • if you are using the clustering support without a sharing tag and relying on the fact that all the nodes will ping all the destinations, in order to maintain this behavior you will have now to set the cluster_probing_mode modparam to "all".
October 20, 2021, at 03:35 PM by 109.99.227.30 -
Changed lines 73-75 from:
to:
  • if you are using the clustering support without a sharing tag and relying on the fact that all the nodes will ping all the destinations, in order to maintain this behavior you will have now to set the cluster_probing_mode modparam to "all".
Added lines 78-79:

DISPATCHER module

October 20, 2021, at 03:03 PM by 109.99.227.30 -
Added line 81:
  • if you are using the clustering support without a sharing tag and relying on the fact that all the nodes will ping all the gateways, in order to maintain this behavior you will have now to set the cluster_probing_mode modparam to "all".
September 23, 2021, at 07:05 PM by 109.99.227.30 -
Changed lines 79-80 from:
  • if using is_from_gw() / goes_to_gw() / dr_is_gw() functions note the extra parameter "carrier_attrs_pvar" before the last "partition" parameter. If you use the partitions, you will have to insert one extra empty param before!!
to:
  • if using is_from_gw() / goes_to_gw() / dr_is_gw() functions note that there is a new extra parameter "carrier_attrs_pvar" before the last "partition" parameter. If you use the partitions, you will have to insert one extra empty param before the "partition" parameter!!
  • if using route_to_gw() functions note that there is a new extra parameter "carrier_attrs_pvar" before the last "partition" parameter. If you use the partitions, you will have to insert one extra empty param before the "partition" parameter!!
September 22, 2021, at 08:19 PM by 109.98.32.238 -
Changed line 78 from:
  • The W flag of the do_routing function has been completely dropped. Its functionality has been replaced by the new sort_alg column of the dr_rules or dr_carriers tables. See the Dynamic Routing DB schema for more details.\
to:
  • The W flag of the do_routing function has been completely dropped. Its functionality has been replaced by the new sort_alg column of the dr_rules or dr_carriers tables. See the Dynamic Routing DB schema for more details.
September 22, 2021, at 08:19 PM by 109.98.32.238 -
Added line 79:
  • if using is_from_gw() / goes_to_gw() / dr_is_gw() functions note the extra parameter "carrier_attrs_pvar" before the last "partition" parameter. If you use the partitions, you will have to insert one extra empty param before!!
August 23, 2021, at 06:49 PM by razvancrainea -
Deleted lines 83-86:

RTPProxy module

  • The rtpproxy_tout parameter has been dropped, completely replaced by the rtpproxy_timetout parameter.
Changed lines 85-88 from:
  • The ratelimit pipes replication module has been changed - instead of replicating all pipes, the rl_check function can receive a /b prefix, indicating that the pipe should be replicated over bin, or /r if it should be replicated over cachedb.
to:
  • The ratelimit pipes replication module has been changed - instead of replicating all pipes, the rl_check function can receive a /b prefix, indicating that the pipe should be replicated over bin, or /r if it should be replicated over cachedb.

RTPProxy module

  • The rtpproxy_tout parameter has been dropped, completely replaced by the rtpproxy_timetout parameter.
August 23, 2021, at 06:48 PM by razvancrainea -
Changed lines 84-85 from:

Ratelimit module

to:

RTPProxy module

Changed line 88 from:

RTPProxy module

to:

Ratelimit module

June 14, 2021, at 03:44 PM by razvancrainea -
Changed line 88 from:
  • The ratelimit pipes replication module has been changed - instead of replicating all pipes, the |rl_check function can receive a /b prefix, indicating that the pipe should be replicated over bin, or /r if it should be replicated over cachedb.
to:
  • The ratelimit pipes replication module has been changed - instead of replicating all pipes, the rl_check function can receive a /b prefix, indicating that the pipe should be replicated over bin, or /r if it should be replicated over cachedb.
June 14, 2021, at 03:44 PM by razvancrainea -
Added lines 84-86:

Ratelimit module

  • The rtpproxy_tout parameter has been dropped, completely replaced by the rtpproxy_timetout parameter.
Changed line 88 from:
  • The rtpproxy_tout parameter has been dropped, completely replaced by the rtpproxy_timetout parameter.
to:
  • The ratelimit pipes replication module has been changed - instead of replicating all pipes, the |rl_check function can receive a /b prefix, indicating that the pipe should be replicated over bin, or /r if it should be replicated over cachedb.
June 14, 2021, at 02:02 PM by razvancrainea -
Changed lines 81-82 from:
  • The is_user_in function variable has been dropped, replaced by the db_is_user_in function.
  • The get_user_group function variable has been dropped, replaced by the db_get_user_group function.
to:
  • The is_user_in function has been dropped, replaced by the db_is_user_in function.
  • The get_user_group function has been dropped, replaced by the db_get_user_group function.

RTPProxy module

  • The rtpproxy_tout parameter has been dropped, completely replaced by the rtpproxy_timetout parameter.
June 14, 2021, at 01:58 PM by razvancrainea -
Changed lines 44-48 from:
  • example
to:
  • The $Ri variable has been dropped, replaced by the $socket_in(ip) variable.
  • The $Rp variable has been dropped, replaced by the $socket_in(port) variable.
  • The $pr and $protos variables have been dropped, replaced by the $socket_in(proto) variable.
  • The $af variable has been dropped, replaced by the $socket_in(af) variable.
  • The $fs variable has been dropped, replaced by the $socket_out variable.
June 14, 2021, at 01:47 PM by razvancrainea -
Changed lines 53-59 from:
  • the rewritehost has been dropped and completely replaced by the sethost function.
  • the rewritehostport has been dropped and completely replaced by the sethostport function.
  • the rewriteuser has been dropped and completely replaced by the setuser function.
  • the rewriteuserpass has been dropped and completely replaced by the setuserpass function.
  • the rewriteport has been dropped and completely replaced by the setport function.
  • the rewriteuri has been dropped and completely replaced by the seturi function.
to:
  • the rewritehost function has been dropped and completely replaced by the sethost function.
  • the rewritehostport function has been dropped and completely replaced by the sethostport function.
  • the rewriteuser function has been dropped and completely replaced by the setuser function.
  • the rewriteuserpass function has been dropped and completely replaced by the setuserpass function.
  • the rewriteport function has been dropped and completely replaced by the setport function.
  • the rewriteuri function has been dropped and completely replaced by the seturi function.
Changed lines 74-75 from:
  • The W flag of the do_routing function has been completely dropped. Its functionality has been replaced by the new sort_alg column of the dr_rules or dr_carriers tables. See the Dynamic Routing DB schema for more details.
to:
  • The W flag of the do_routing function has been completely dropped. Its functionality has been replaced by the new sort_alg column of the dr_rules or dr_carriers tables. See the Dynamic Routing DB schema for more details.

Group module

  • The is_user_in function variable has been dropped, replaced by the db_is_user_in function.
  • The get_user_group function variable has been dropped, replaced by the db_get_user_group function.
June 14, 2021, at 01:29 PM by razvancrainea -
Changed lines 52-58 from:
  • example
to:
  • the rewritehost has been dropped and completely replaced by the sethost function.
  • the rewritehostport has been dropped and completely replaced by the sethostport function.
  • the rewriteuser has been dropped and completely replaced by the setuser function.
  • the rewriteuserpass has been dropped and completely replaced by the setuserpass function.
  • the rewriteport has been dropped and completely replaced by the setport function.
  • the rewriteuri has been dropped and completely replaced by the seturi function.
June 14, 2021, at 01:21 PM by razvancrainea -
Changed line 40 from:
  • example
to:
  • the tcp_listen_backlog has been dropped and completely removed by the tcp_socket_backlog parameter.
June 14, 2021, at 01:08 PM by razvancrainea -
Added lines 63-65:

CGRateS module

  • The $cgrret variable has been dropped, replaced by the $cgr_ret variable.
June 14, 2021, at 01:03 PM by razvancrainea -
Changed lines 64-65 from:

EXAMPLE module

  • example
to:

DROUTING module

  • The W flag of the do_routing function has been completely dropped. Its functionality has been replaced by the new sort_alg column of the dr_rules or dr_carriers tables. See the Dynamic Routing DB schema for more details.
May 27, 2021, at 06:39 PM by razvancrainea -
Changed line 1 from:
Documentation -> Migration -> Migration from 3.1.x to 3.2.0
to:
Documentation -> Migration -> Migration from 3.2.x to 3.3.0
Changed lines 6-9 from:

This section is meant to provide useful help in migrating your OpenSIPS installations from the 3.1.0 version to 3.2.0.

You can find the all the new additions in the 3.2.0 release compiled under this page. The ChangeLog may help your understanding of the migration / update process.

to:

This section is meant to provide useful help in migrating your OpenSIPS installations from the 3.2.0 version to 3.3.0.

You can find the all the new additions in the 3.3.0 release compiled under this page. The ChangeLog may help your understanding of the migration / update process.

Changed line 15 from:

You can migrate your 3.1.x MySQL DB to the 3.2.x format using the opensips-cli tool :

to:

You can migrate your 3.2.x MySQL DB to the 3.3.x format using the opensips-cli tool :

Changed line 17 from:
   # opensips-cli -x database migrate 3.1_to_3.2 opensips_3_1 opensips_3_2
to:
   # opensips-cli -x database migrate 3.2_to_3.3 opensips_3_2 opensips_3_3
Changed lines 20-23 from:
  • opensips_3_1 is the existing DB name corresponding to version 3.1.x format
  • opensips_3_2 is the DB name to be created for 3.2.x format
to:
  • opensips_3_2 is the existing DB name corresponding to version 3.2.x format
  • opensips_3_3 is the DB name to be created for 3.3.x format
Deleted lines 43-46:
  • the $rT pseudo-variable (topmost route type) has been replaced by $route (route call stack). The equivalent syntax is $(route[-1]).

Core keywords

Added lines 46-49:

Core keywords

  • example
Changed lines 64-78 from:

CFGUTILS module

  • the time_string parameter of check_time_rec() has been extended with a leading timezone field. Although we made strings such as "20200101T...|..." backwards-compatible with the current implementation, strings such as "|20200101T..." will now break your logic unless you prepend your input with the "timezone |" string. To use the system timezone, just prepend an empty-string timezone followed by the delimiter, i.e. "|".
  • time recurrences: the byyearday, bymonth and byweekno integers are now 1-indexed instead of 0-indexed (per RFC 5545)! Make sure to convert any such data accordingly, otherwise your time recurrence strings will no longer match as expected following an upgrade to 3.2

DIALPLAN module

  • the timerec column syntax has been normalized. Firstly, the "dtend" field has been added, so the final column value has been made compatible with the input of check_time_rec(). Secondly, the leading "timezone" field has been added, so it must be prepended accordingly -- in order to keep using the system timezone, just prepend a "|" string.
  • time recurrences: the byyearday, bymonth and byweekno integers are now 1-indexed instead of 0-indexed (per RFC 5545)! Make sure to convert any such data accordingly, otherwise your time recurrence strings will no longer match as expected following an upgrade to 3.2

Dialog module

  • the E_DLG_STATE_CHANGED parameters have changed. The hash_id and hash_entry parameters were replaced by id and db_id, to be more consistent with the output of dlg_list and what OpenSIPS advertises in the Record-Route header. If you are listening for this event in your external application, or directly in OpenSIPS script using the EVI interface, make sure you adapt the $param names to the new format.

DROUTING module

  • the timerec column syntax has been normalized. Firstly, the "dtend" field has been added, so the final column value has been made compatible with the input of check_time_rec(). Secondly, the leading "timezone" field has been added, so it must be prepended accordingly -- in order to keep using the system timezone, just prepend a "|" string.
  • time recurrences: the byyearday, bymonth and byweekno integers are now 1-indexed instead of 0-indexed (per RFC 5545)! Make sure to convert any such data accordingly, otherwise your time recurrence strings will no longer match as expected following an upgrade to 3.2
to:

EXAMPLE module

  • example
April 09, 2021, at 05:17 PM by razvancrainea -
Changed line 68 from:

DROUTING module

to:

DIALPLAN module

Changed lines 72-76 from:

DIALPLAN module

to:

Dialog module

  • the E_DLG_STATE_CHANGED parameters have changed. The hash_id and hash_entry parameters were replaced by id and db_id, to be more consistent with the output of dlg_list and what OpenSIPS advertises in the Record-Route header. If you are listening for this event in your external application, or directly in OpenSIPS script using the EVI interface, make sure you adapt the $param names to the new format.

DROUTING module

December 10, 2020, at 08:38 PM by liviu -
Changed line 44 from:
  • the $rT (topmost route type) has been replaced by $route (route call stack). The equivalent syntax is $(route[-1]).
to:
  • the $rT pseudo-variable (topmost route type) has been replaced by $route (route call stack). The equivalent syntax is $(route[-1]).
November 25, 2020, at 01:50 PM by liviu -
Changed line 44 from:
  • the $rT (topmost route type) has been replaced by $route. The equivalent syntax is $(route[-1]).
to:
  • the $rT (topmost route type) has been replaced by $route (route call stack). The equivalent syntax is $(route[-1]).
November 25, 2020, at 01:49 PM by liviu -
Added lines 41-44:

Core Variables

  • the $rT (topmost route type) has been replaced by $route. The equivalent syntax is $(route[-1]).
October 31, 2020, at 08:24 PM by liviu -
Changed lines 62-63 from:
  • time recurrences: the byyearday, bymonth and byweekno integers are now 1-indexed instead of 0-indexed!! Make sure to convert any such data accordingly, otherwise your time recurrence strings will no longer match as expected following an upgrade to 3.2
to:
  • time recurrences: the byyearday, bymonth and byweekno integers are now 1-indexed instead of 0-indexed (per RFC 5545)! Make sure to convert any such data accordingly, otherwise your time recurrence strings will no longer match as expected following an upgrade to 3.2
Changed lines 66-67 from:
  • time recurrences: the byyearday, bymonth and byweekno integers are now 1-indexed instead of 0-indexed!! Make sure to convert any such data accordingly, otherwise your time recurrence strings will no longer match as expected following an upgrade to 3.2
to:
  • time recurrences: the byyearday, bymonth and byweekno integers are now 1-indexed instead of 0-indexed (per RFC 5545)! Make sure to convert any such data accordingly, otherwise your time recurrence strings will no longer match as expected following an upgrade to 3.2
Changed line 70 from:
  • time recurrences: the byyearday, bymonth and byweekno integers are now 1-indexed instead of 0-indexed!! Make sure to convert any such data accordingly, otherwise your time recurrence strings will no longer match as expected following an upgrade to 3.2
to:
  • time recurrences: the byyearday, bymonth and byweekno integers are now 1-indexed instead of 0-indexed (per RFC 5545)! Make sure to convert any such data accordingly, otherwise your time recurrence strings will no longer match as expected following an upgrade to 3.2
October 31, 2020, at 08:23 PM by liviu -
Changed lines 62-63 from:
to:
  • time recurrences: the byyearday, bymonth and byweekno integers are now 1-indexed instead of 0-indexed!! Make sure to convert any such data accordingly, otherwise your time recurrence strings will no longer match as expected following an upgrade to 3.2
Changed lines 66-67 from:
to:
  • time recurrences: the byyearday, bymonth and byweekno integers are now 1-indexed instead of 0-indexed!! Make sure to convert any such data accordingly, otherwise your time recurrence strings will no longer match as expected following an upgrade to 3.2
Changed lines 69-70 from:
  • the timerec column syntax has been normalized. Firstly, the "dtend" field has been added, so the final column value has been made compatible with the input of check_time_rec(). Secondly, the leading "timezone" field has been added, so it must be prepended accordingly -- in order to keep using the system timezone, just prepend a "|" string.
to:
  • the timerec column syntax has been normalized. Firstly, the "dtend" field has been added, so the final column value has been made compatible with the input of check_time_rec(). Secondly, the leading "timezone" field has been added, so it must be prepended accordingly -- in order to keep using the system timezone, just prepend a "|" string.
  • time recurrences: the byyearday, bymonth and byweekno integers are now 1-indexed instead of 0-indexed!! Make sure to convert any such data accordingly, otherwise your time recurrence strings will no longer match as expected following an upgrade to 3.2
October 07, 2020, at 08:25 PM by liviu -
Changed line 10 from:

Make sure you don't carry a left-over Makefile.conf file in your OpenSIPS source tree if checking out a new branch! This configuration file, generated by make menuconfig, is usually not compatible with the one of a previous major release!

to:

Make sure you don't carry a left-over Makefile.conf file in your OpenSIPS source tree if migrating to a new branch! This configuration file, generated by make menuconfig, is usually not compatible with the one of a previous major release!

October 07, 2020, at 08:24 PM by liviu -
Changed line 10 from:

Make sure you don't have a left-over Makefile.conf file in your OpenSIPS source tree if checking out a new branch! This configuration file, generated by make menuconfig, is usually not compatible with the one of a previous major release!

to:

Make sure you don't carry a left-over Makefile.conf file in your OpenSIPS source tree if checking out a new branch! This configuration file, generated by make menuconfig, is usually not compatible with the one of a previous major release!

October 07, 2020, at 08:23 PM by liviu -
Changed line 10 from:

Make sure you don't have any left-over Makefile.conf file in your OpenSIPS source tree if checking out a new branch! This configuration file, generated by make menuconfig, is usually not compatible with the one of a previous major release!

to:

Make sure you don't have a left-over Makefile.conf file in your OpenSIPS source tree if checking out a new branch! This configuration file, generated by make menuconfig, is usually not compatible with the one of a previous major release!

October 07, 2020, at 08:23 PM by liviu -
Changed line 10 from:

Make sure you don't have any left-over Makefile.conf file in your OpenSIPS source tree if checking out a new branch! This configuration file, generated by make menuconfig, is usually not compatible with the one of an older major release!

to:

Make sure you don't have any left-over Makefile.conf file in your OpenSIPS source tree if checking out a new branch! This configuration file, generated by make menuconfig, is usually not compatible with the one of a previous major release!

October 07, 2020, at 08:22 PM by liviu -
Changed line 10 from:

Make sure you don't have any left-over Makefile.conf file in your OpenSIPS source tree before starting the migration! This configuration file, generated by make menuconfig, is usually not compatible with the one of an older major release!

to:

Make sure you don't have any left-over Makefile.conf file in your OpenSIPS source tree if checking out a new branch! This configuration file, generated by make menuconfig, is usually not compatible with the one of an older major release!

October 07, 2020, at 08:22 PM by liviu -
Changed line 10 from:

Make sure you don't have any Makefile.conf files in your sources' root before starting the migration! This configuration file, generated by 'menuconfig, is not compatible with the one of an older version!

to:

Make sure you don't have any left-over Makefile.conf file in your OpenSIPS source tree before starting the migration! This configuration file, generated by make menuconfig, is usually not compatible with the one of an older major release!

October 07, 2020, at 08:20 PM by liviu -
Changed line 10 from:

Make sure you don't have any Makefile.conf files in your sources' root before starting the migration. The configuration file generated by 'menuconfig is not compatible with the one in older version!

to:

Make sure you don't have any Makefile.conf files in your sources' root before starting the migration! This configuration file, generated by 'menuconfig, is not compatible with the one of an older version!

October 07, 2020, at 07:53 PM by liviu -
Changed line 61 from:
  • the time_string parameter of check_time_rec() has been extended with a leading timezone field. Although we made strings such as "20200101T...|..." backwards-compatible with the current implementation, strings such as "|20200101T..." will now break your logic unless you prepend your input with the "timezone |" string. To use the system timezone, just prepend an empty-string timezone, followed by the delimiter, i.e. "|".
to:
  • the time_string parameter of check_time_rec() has been extended with a leading timezone field. Although we made strings such as "20200101T...|..." backwards-compatible with the current implementation, strings such as "|20200101T..." will now break your logic unless you prepend your input with the "timezone |" string. To use the system timezone, just prepend an empty-string timezone followed by the delimiter, i.e. "|".
October 07, 2020, at 07:52 PM by liviu -
October 07, 2020, at 07:52 PM by liviu -
Changed line 61 from:
  • the time_string parameter of check_time_rec() has been extended with a leading timezone field. Although we made strings such as "20200101T...|..." backwards-compatible with the current implementation, strings such as "|20200101T..." will now break your logic unless you prepend your input with the "timezone |" string. To use the system timezone, just prepend "|".
to:
  • the time_string parameter of check_time_rec() has been extended with a leading timezone field. Although we made strings such as "20200101T...|..." backwards-compatible with the current implementation, strings such as "|20200101T..." will now break your logic unless you prepend your input with the "timezone |" string. To use the system timezone, just prepend an empty-string timezone, followed by the delimiter, i.e. "|".
October 07, 2020, at 07:51 PM by liviu -
Changed lines 61-62 from:
  • the time_string parameter of check_time_rec() has been extended with a leading timezone field. Although we made strings such as "20200101T...|..." backwards-compatible with the current implementation, strings such as "|20200101T..." will now break your logic unless you prepend your input with the "timezone |" string. To use the system timezone, just prepend "|".
to:
  • the time_string parameter of check_time_rec() has been extended with a leading timezone field. Although we made strings such as "20200101T...|..." backwards-compatible with the current implementation, strings such as "|20200101T..." will now break your logic unless you prepend your input with the "timezone |" string. To use the system timezone, just prepend "|".
Changed lines 64-65 from:
  • the time_rec column syntax has been normalized. Firstly, the "dtend" field has been added, so the final column value has been made compatible with the input of check_time_rec(). Secondly, the leading "timezone" field has been added, so it must be prepended accordingly -- in order to keep using the system timezone, just prepend a "|" string.
to:
  • the timerec column syntax has been normalized. Firstly, the "dtend" field has been added, so the final column value has been made compatible with the input of check_time_rec(). Secondly, the leading "timezone" field has been added, so it must be prepended accordingly -- in order to keep using the system timezone, just prepend a "|" string.
Changed line 67 from:
  • the time_rec column syntax has been normalized. Firstly, the "dtend" field has been added, so the final column value has been made compatible with the input of check_time_rec(). Secondly, the leading "timezone" field has been added, so it must be prepended accordingly -- in order to keep using the system timezone, just prepend a "|" string.
to:
  • the timerec column syntax has been normalized. Firstly, the "dtend" field has been added, so the final column value has been made compatible with the input of check_time_rec(). Secondly, the leading "timezone" field has been added, so it must be prepended accordingly -- in order to keep using the system timezone, just prepend a "|" string.
October 07, 2020, at 07:50 PM by liviu -
Changed line 61 from:
  • the time_string parameter of check_time_rec() has been extended with a leading timezone field. Although we made strings such as "20200101T...|..." backwards-compatible with the current implementation, strings such as "|20200101T..." will now break your code unless you prepend your input with the "timezone |" string. To use the system timezone, just prepend "|".
to:
  • the time_string parameter of check_time_rec() has been extended with a leading timezone field. Although we made strings such as "20200101T...|..." backwards-compatible with the current implementation, strings such as "|20200101T..." will now break your logic unless you prepend your input with the "timezone |" string. To use the system timezone, just prepend "|".
October 07, 2020, at 07:49 PM by liviu -
Changed line 61 from:
  • the time_string parameter has been extended with a leading timezone field. Although we made strings such as "20200101T...|..." backwards-compatible with the current implementation, strings such as "|20200101T..." will now break your code unless you prepend your input with the "timezone |" string. To use the system timezone, just prepend "|".
to:
  • the time_string parameter of check_time_rec() has been extended with a leading timezone field. Although we made strings such as "20200101T...|..." backwards-compatible with the current implementation, strings such as "|20200101T..." will now break your code unless you prepend your input with the "timezone |" string. To use the system timezone, just prepend "|".
October 07, 2020, at 07:49 PM by liviu -
Changed lines 35-42 from:
  • the listen parameter was renamed as socket parameter, with the same definition and behavior.
  • the tcp_listen_backlog parameter was renamed as tcp_socket_backlog parameter, with the same definition and behavior.
  • script variable $fs to be replaced with $socket_out
  • script variable $Ri to be replaced with $socket_in(ip)
  • script variable $Rp to be replaced with $socket_in(port)
  • script variable $af to be replaced with $socket_in(af)
  • script variables $proto/$pr to be replaced with $socket_in(proto)
to:
  • example
Deleted lines 39-42:
  • the auto_aliases is now by default off, so if you had no setting of it in the old script you should set it explicitly to "on" to keep the same behavior.

Core keywords

Added lines 42-45:

Core keywords

  • example
Deleted lines 47-58:
  • The following alias names were dropped:
    • rewritehost() for sethost()
    • rewritehostport() for sethostport()
    • rewriteuser() for setuser()
    • rewriteuserpass() for setuserpass()
    • rewriteport() for setport()
    • rewriteuri() for seturi()
  • cache_raw_query()'s last parameter is now an unquoted variable
  • construct_uri()'s user, port and extra are now optional parameters

Core MI commands

Added lines 50-53:

Core MI commands

  • example
Changed lines 60-61 from:

FOOBAR module

  • example
to:

CFGUTILS module

  • the time_string parameter has been extended with a leading timezone field. Although we made strings such as "20200101T...|..." backwards-compatible with the current implementation, strings such as "|20200101T..." will now break your code unless you prepend your input with the "timezone |" string. To use the system timezone, just prepend "|".

DROUTING module

  • the time_rec column syntax has been normalized. Firstly, the "dtend" field has been added, so the final column value has been made compatible with the input of check_time_rec(). Secondly, the leading "timezone" field has been added, so it must be prepended accordingly -- in order to keep using the system timezone, just prepend a "|" string.

DIALPLAN module

  • the time_rec column syntax has been normalized. Firstly, the "dtend" field has been added, so the final column value has been made compatible with the input of check_time_rec(). Secondly, the leading "timezone" field has been added, so it must be prepended accordingly -- in order to keep using the system timezone, just prepend a "|" string.
October 07, 2020, at 07:39 PM by liviu -
Changed line 1 from:
Documentation -> Migration -> Migration from 3.0.x to 3.1.0
to:
Documentation -> Migration -> Migration from 3.1.x to 3.2.0
Changed lines 6-9 from:

This section is meant to provide useful help in migrating your OpenSIPS installations from the 3.0.0 version to 3.1.0.

You can find the all the new additions in the 3.1.0 release compiled under this page. The ChangeLog may help your understanding of the migration / update process.

to:

This section is meant to provide useful help in migrating your OpenSIPS installations from the 3.1.0 version to 3.2.0.

You can find the all the new additions in the 3.2.0 release compiled under this page. The ChangeLog may help your understanding of the migration / update process.

Changed line 15 from:

You can migrate your 3.0.x MySQL DB to the 3.1.x format using the opensips-cli tool :

to:

You can migrate your 3.1.x MySQL DB to the 3.2.x format using the opensips-cli tool :

Changed line 17 from:
   # opensips-cli -x database migrate 3.0_to_3.1 opensips_3_0 opensips_3_1
to:
   # opensips-cli -x database migrate 3.1_to_3.2 opensips_3_1 opensips_3_2
Changed lines 20-23 from:
  • opensips_3_0 is the existing DB name corresponding to version 3.0.x format
  • opensips_3_1 is the DB name to be created for 3.1.x format
to:
  • opensips_3_1 is the existing DB name corresponding to version 3.1.x format
  • opensips_3_2 is the DB name to be created for 3.2.x format
Changed lines 73-117 from:

B2B_ENTITIES module

  • dropped the replication_mode module parameter.

DIALOG module

  • the $DLG_did format has been changed from printing the entry:id of the dialog to hex(entry).hex(id), just as the Record-Route parameter is added
  • the dlg_list MI command no longer outputs the DB id as the ID of the dialog, but a hex(entry).hex(id) representation of its id. The DB id field has been moved in the db_id node.
  • the dlg_end_dlg MI command no longer receives the DB id as an identifier for finding the dialog to terminate, but the same hex(entry).hex(id) printed by the $DLG_did variable and by the dlg_list command.

EVENT_DATAGRAM module

  • The event payload is now formated as a JSON-RPC notification instead of the custom OpenSIPS line oriented formatting, so you have to change the parsing of the event in your external applications.

EVENT_JSONRPC module

  • the event_jsonrpc module has been renamed to event_stream. you have to replace your modparam("event_jsonrpc"... lines with modparam("event_stream"... lines
  • the transport protocol token from the event socket has been changed from jsonrpc to tcp (for example, you have to use tcp:127.0.0.1:8080/block_ip instead of jsonrpc:127.0.0.1:8080/block_ip).

EVENT_RABBITMQ module

  • The event payload is now formated as a JSON-RPC notification instead of the custom OpenSIPS line oriented formatting, so you have to change the parsing of the event in your external applications.

PRESENCE module

  • switch to string values instead of integers for the cluster_federation_mode module parameter (disabled instead of 0 and on-demand-sharing instead of 1)

PROTO_TLS module

  • the tls_handshake_timeout and tls_send_timeout parameters have been moved from the tls_mgm module to the proto_tls module. Check out the new documentation ]. To migrate your script, you should replace any of your lines as it follows:
    # Before 3.1 was modparam("tls_mgm", "tls_handshake_timeout", 200)
    modparam("proto_tls", "tls_handshake_timeout", 200)
    # Before 3.1 was modparam("tls_mgm", "tls_send_timeout", 200)
    modparam("proto_tls", "tls_send_timeout", 200)

PROTO_WSS module

  • the tls_handshake_timeout and tls_send_timeout from the tls_mgm module have been removed, thus they can no longer be used to tune the proto_wss module. Instead of those parameters, we've added the and , that are now part of the proto_wss module. To migrate your script, you should replace any of your lines as it follows:
    # Before 3.1 was modparam("tls_mgm", "tls_handshake_timeout", 200)
    modparam("proto_wss", "wss_tls_handshake_timeout", 200)
    # Before 3.1 was modparam("tls_mgm", "tls_send_timeout", 200)
    modparam("proto_wss", "wss_send_timeout", 200)

TLS_MGM module

  • the default tls_method has been changed from SSLv23 to TLSv1_2. Therefore if you were not setting the tls_method parameter in your script, you will now have to explicitly set it: modparam("tls_mgm", "tls_method", "[default]SSLv23")
to:

FOOBAR module

  • example
May 27, 2020, at 02:47 AM by rvlad_patrascu -
May 27, 2020, at 02:16 AM by rvlad_patrascu -
May 27, 2020, at 02:03 AM by rvlad_patrascu -
Added lines 73-75:

B2B_ENTITIES module

  • dropped the replication_mode module parameter.
Added lines 91-93:

PRESENCE module

  • switch to string values instead of integers for the cluster_federation_mode module parameter (disabled instead of 0 and on-demand-sharing instead of 1)
May 27, 2020, at 12:35 AM by rvlad_patrascu -
Added lines 78-87:

EVENT_DATAGRAM module

  • The event payload is now formated as a JSON-RPC notification instead of the custom OpenSIPS line oriented formatting, so you have to change the parsing of the event in your external applications.

EVENT_JSONRPC module

  • the event_jsonrpc module has been renamed to event_stream. you have to replace your modparam("event_jsonrpc"... lines with modparam("event_stream"... lines
  • the transport protocol token from the event socket has been changed from jsonrpc to tcp (for example, you have to use tcp:127.0.0.1:8080/block_ip instead of jsonrpc:127.0.0.1:8080/block_ip).

EVENT_RABBITMQ module

  • The event payload is now formated as a JSON-RPC notification instead of the custom OpenSIPS line oriented formatting, so you have to change the parsing of the event in your external applications.
May 26, 2020, at 07:40 PM by liviu -
Added lines 23-25:

See the opensips-cli documentation for more details.

Deleted lines 28-29:

See the opensips-cli documentation for more details.

May 26, 2020, at 07:39 PM by liviu -
Changed line 15 from:

You can migrate your 3.0.x MySQL DB to the 3.1.x format by using the opensipsdbctl tool :

to:

You can migrate your 3.0.x MySQL DB to the 3.1.x format using the opensips-cli tool :

Changed line 17 from:
   # opensipsdbctl migrate opensips_3_0 opensips_3_1
to:
   # opensips-cli -x database migrate 3.0_to_3.1 opensips_3_0 opensips_3_1
Deleted line 22:
Changed lines 27-30 from:

NOTE that the migration tool is available only for MYSQL databases!

NOTE that the default MySQL DB engine is now InnoDB!

to:

See the opensips-cli documentation for more details.

May 26, 2020, at 02:00 PM by razvancrainea -
Changed line 79 from:
  • the dlg_list MI command no longer outputs the DB id as the ID of the dialog, but a hex(entry).hex(id) representation of its id. The DB id field has been moved in the 'db_id node.
to:
  • the dlg_list MI command no longer outputs the DB id as the ID of the dialog, but a hex(entry).hex(id) representation of its id. The DB id field has been moved in the db_id node.
May 26, 2020, at 01:59 PM by razvancrainea -
Added lines 75-80:

DIALOG module

  • the $DLG_did format has been changed from printing the entry:id of the dialog to hex(entry).hex(id), just as the Record-Route parameter is added
  • the dlg_list MI command no longer outputs the DB id as the ID of the dialog, but a hex(entry).hex(id) representation of its id. The DB id field has been moved in the 'db_id node.
  • the dlg_end_dlg MI command no longer receives the DB id as an identifier for finding the dialog to terminate, but the same hex(entry).hex(id) printed by the $DLG_did variable and by the dlg_list command.
April 23, 2020, at 02:14 PM by 109.98.32.84 -
Added line 43:
April 23, 2020, at 01:24 PM by 109.98.32.84 -
Added lines 40-43:
April 23, 2020, at 12:22 PM by 109.98.32.84 -
Added line 39:
  • the tcp_listen_backlog parameter was renamed as tcp_socket_backlog parameter, with the same definition and behavior.
April 23, 2020, at 11:59 AM by 109.98.32.84 -
Changed lines 37-38 from:

The following is the full list of backwards-incompatible syntax or functional changes in the OpenSIPS configuration script (some of them are fixes):

to:

The following is the full list of backwards-incompatible syntax or functional changes in the OpenSIPS configuration script:

  • the listen parameter was renamed as socket parameter, with the same definition and behavior.
January 16, 2020, at 05:54 PM by razvancrainea -
Changed lines 89-91 from:

PROTO_WSS module

  • the default tls_method has been changed from SSLv23 to TLSv1_2. Therefore if you were not setting the tls_method parameter in your script, you will now have to explicitly set it to the SSLv23 value in your script.
to:

TLS_MGM module

  • the default tls_method has been changed from SSLv23 to TLSv1_2. Therefore if you were not setting the tls_method parameter in your script, you will now have to explicitly set it: modparam("tls_mgm", "tls_method", "[default]SSLv23")
January 16, 2020, at 05:52 PM by razvancrainea -
Changed line 81 from:
  • the tls_handshake_timeout and tls_send_timeout from the tls_mgm module have been removed, thus they can no longer be used to tune the proto_wss module. Instead of those parameters, we've added the ] and ], that are now part of the proto_wss module. To migrate your script, you should replace any of your lines as it follows:
to:
  • the tls_handshake_timeout and tls_send_timeout from the tls_mgm module have been removed, thus they can no longer be used to tune the proto_wss module. Instead of those parameters, we've added the and , that are now part of the proto_wss module. To migrate your script, you should replace any of your lines as it follows:
Changed lines 87-91 from:

@]

to:

@]

PROTO_WSS module

  • the default tls_method has been changed from SSLv23 to TLSv1_2. Therefore if you were not setting the tls_method parameter in your script, you will now have to explicitly set it to the SSLv23 value in your script.
January 10, 2020, at 11:38 AM by razvancrainea -
Changed lines 73-74 from:
    modparam("proto_tls", "tls_handshake_timeout", 200) # OLD was modparam("tls_mgm", "tls_handshake_timeout", 200)
    modparam("proto_tls", "tls_send_timeout", 200) # OLD was modparam("tls_mgm", "tls_send_timeout", 200)
to:
    # Before 3.1 was modparam("tls_mgm", "tls_handshake_timeout", 200)
    modparam("proto_tls", "tls_handshake_timeout", 200)
    # Before 3.1 was modparam("tls_mgm", "tls_send_timeout", 200)
    modparam("proto_tls", "tls_send_timeout", 200)
Changed lines 83-84 from:
    modparam("proto_wss", "wss_tls_handshake_timeout", 200) # OLD was modparam("tls_mgm", "tls_handshake_timeout", 200)
    modparam("proto_wss", "wss_send_timeout", 200) # OLD was modparam("tls_mgm", "tls_send_timeout", 200)
to:
    # Before 3.1 was modparam("tls_mgm", "tls_handshake_timeout", 200)
    modparam("proto_wss", "wss_tls_handshake_timeout", 200)
    # Before 3.1 was modparam("tls_mgm", "tls_send_timeout", 200)
    modparam("proto_wss", "wss_send_timeout", 200)
January 10, 2020, at 11:37 AM by razvancrainea -
Changed lines 69-83 from:
  • example
to:

PROTO_TLS module

  • the tls_handshake_timeout and tls_send_timeout parameters have been moved from the tls_mgm module to the proto_tls module. Check out the new documentation ]. To migrate your script, you should replace any of your lines as it follows:
    modparam("proto_tls", "tls_handshake_timeout", 200) # OLD was modparam("tls_mgm", "tls_handshake_timeout", 200)
    modparam("proto_tls", "tls_send_timeout", 200) # OLD was modparam("tls_mgm", "tls_send_timeout", 200)

PROTO_WSS module

  • the tls_handshake_timeout and tls_send_timeout from the tls_mgm module have been removed, thus they can no longer be used to tune the proto_wss module. Instead of those parameters, we've added the ] and ], that are now part of the proto_wss module. To migrate your script, you should replace any of your lines as it follows:
    modparam("proto_wss", "wss_tls_handshake_timeout", 200) # OLD was modparam("tls_mgm", "tls_handshake_timeout", 200)
    modparam("proto_wss", "wss_send_timeout", 200) # OLD was modparam("tls_mgm", "tls_send_timeout", 200)
November 14, 2019, at 03:11 PM by 109.99.227.30 -
Changed line 41 from:
  • example
to:
  • the auto_aliases is now by default off, so if you had no setting of it in the old script you should set it explicitly to "on" to keep the same behavior.
August 20, 2019, at 07:56 PM by rvlad_patrascu -
Added lines 56-57:
  • cache_raw_query()'s last parameter is now an unquoted variable
  • construct_uri()'s user, port and extra are now optional parameters
August 20, 2019, at 07:46 PM by rvlad_patrascu -
Changed line 1 from:
Documentation -> Migration -> Migration from 3.1.x to 3.1.0
to:
Documentation -> Migration -> Migration from 3.0.x to 3.1.0
Changed lines 6-7 from:

This section is meant to provide useful help in migrating your OpenSIPS installations from the 3.1.0 version to 3.1.0.

to:

This section is meant to provide useful help in migrating your OpenSIPS installations from the 3.0.0 version to 3.1.0.

Changed line 15 from:

You can migrate your 3.1.x MySQL DB to the 3.1.x format by using the opensipsdbctl tool :

to:

You can migrate your 3.0.x MySQL DB to the 3.1.x format by using the opensipsdbctl tool :

Changed line 20 from:
  • opensips_3_0 is the existing DB name corresponding to version 3.1.x format
to:
  • opensips_3_0 is the existing DB name corresponding to version 3.0.x format
Added lines 46-55:

Core functions

  • The following alias names were dropped:
    • rewritehost() for sethost()
    • rewritehostport() for sethostport()
    • rewriteuser() for setuser()
    • rewriteuserpass() for setuserpass()
    • rewriteport() for setport()
    • rewriteuri() for seturi()
April 16, 2019, at 09:55 PM by razvancrainea -
Added lines 1-57:
Documentation -> Migration -> Migration from 3.1.x to 3.1.0

This page has been visited 3114 times. (:toc-float Table of Contents:)


This section is meant to provide useful help in migrating your OpenSIPS installations from the 3.1.0 version to 3.1.0.

You can find the all the new additions in the 3.1.0 release compiled under this page. The ChangeLog may help your understanding of the migration / update process.

Make sure you don't have any Makefile.conf files in your sources' root before starting the migration. The configuration file generated by 'menuconfig is not compatible with the one in older version!


DB migration

You can migrate your 3.1.x MySQL DB to the 3.1.x format by using the opensipsdbctl tool :

   # opensipsdbctl migrate opensips_3_0 opensips_3_1

where :

  • opensips_3_0 is the existing DB name corresponding to version 3.1.x format
  • opensips_3_1 is the DB name to be created for 3.1.x format

NOTE:

  • the old database will not be deleted, altered or changed - it will not be touched at all
  • new database will be created and data from old DB will be imported into it

NOTE that the migration tool is available only for MYSQL databases!

NOTE that the default MySQL DB engine is now InnoDB!

(:toc-back Back to Table of Contents:)


Script migration

The following is the full list of backwards-incompatible syntax or functional changes in the OpenSIPS configuration script (some of them are fixes):

Global Parameters

  • example

Core keywords

  • example

Core MI commands

  • example

Statistics migration

  • example

Module migration

  • example

Page last modified on January 23, 2024, at 12:59 PM