This page has been visited 412 times.
2. What is new in 2.3.0
2.1 OpenSIPS core
2.2 OpenSIPS script
- new pseudo variable $xlog_level to be used inside an xlog() or xdbg() statement to print the log level used for it.
- new custom index append for $avp variables to allow you to add new values at the end of the list (at the bottom of the stack) - $(avp(name)[append]) = "last value";
- $rb can now take as name a mime, in order to access the body parts by mime : $rb(application/sdp) - get the first SDP body part ; $(rb(application/isup)[-1]) - get the last ISUP body part
2.3 Async layer
- new launch statement to starts a function/job in async mode and continue the script immediately, without waiting for the job to be terminated. A "report" route may be triggered (outside the context of the msg launching the job) when the job is terminated to be able to access the return code and the possible returned data. See for more.
2.4 OpenSIPS troubleshooting / development
2.5 CGRATES module (new)
- the cgrates module provides an interface to the CGRateS rating eninge. Using this module you can do multi-tenant prepaid and postpaid billing in the OpenSIPS script. Read more information here.
2.6 MID_REGISTRAR module (new)
- the mid_registrar enables a series of scenarios in which OpenSIPS acts as a SIP registration front-end. This novel SIP platform component is able to throttle down SIP registration traffic rates on the way to existing farms of SIP registrars, by extending contact expiration intervals. Moreover, it can also be configured to take over all parallel forking duties for these existing SIP infrastructures.
2.7 RABBITMQ module (new)
- a new RabbitMQ module provides a more flexible and easy to use interface to a RabbitMQ server. Check out more!
2.8 ACC module
- diameter support has been removed;
- extra variables engine was reworked(including both extra and leg engine); *_extra and *_extra_bye parameters have been replaced with extra_fields with which you can define tags to be used in the script using acc_extra script variable; the variable can be set/modified until the accounting is being made;
- leg variables engine was also reworked; now you can define leg variables for each of the available backends(log, db, aaa, evi); the modparam section is the same as for the extra_fields parameter whereas in the script you can use acc_leg variable to set the leg values; the variable can be indexed with the index of the leg; it accepts both positive index(0 is the first leg) and negative indexes(-1 is the last leg);
- the leg accounting engine is not based anymore on AVPs; each time you want to create a new leg you have to call acc_new_leg function which will create a new leg for you; the value of the last leg shall be accessed with acc_current_leg variable;
- for further information read the docs
2.9 Dialog module
- the dlg_list and dlg_end_dlg are not using (display and accept) h_label and h_id as identifier for the dialogs, but the dialog ID instead - this is a single unique numerical ID .
2.10 Dispatcher module
- the module now supports FreeSWITCH-enabled destinations with dynamic weights!
- the weight column type is now "string", as it can receive both an integer or a FreeSWITCH ESL socket. However, OpenSIPS still retains internal backwards-compatibility with the previous schema
2.11 Registrar module
- the obsolete functions registered() and is_other_contact() finally removed. You should we their replacements 'is_registered() and is_ip_registered().
2.12 Cachedb_local module
- in previous versions the module had only one "database"(one hash); now multiple such databases can be defined, each of these representing an unique collection having it's own set of keys and values;
- the collections can be defined using cache_collections module parameter;
- each collection should be assigned to a cachedb_url; same collection can be assign to multiple cachedb_urls;
- for more information check the official documentation
2.13 RTPProxy module
- add support to specify RTPProxy to record both streams in a single file;
- add support for the latest notification mechanism in the RTPProxy master branch;
- add new rtpproxy_stats command that returns statistics about the call, such as packet loss, messages received from each side, etc.;
- add new rtpproxy_all_stats command that returns advanced statistics about the call, such as SSRC changes. This is only available in the RTPProxy master branch.