SIP Push Notification with OpenSIPS 3.1 LTS [RFC 8599 support][Part II]

Welcome or welcome back to the 2-part series on the RFC 8599 support in OpenSIPS! In this final post (please find the initial one here), you will learn how to enhance your platform with standards-based SIP Push Notification (PN) support using an OpenSIPS 3.1+ release, from high-level design all the way down to specific code … Continue reading SIP Push Notification with OpenSIPS 3.1 LTS [RFC 8599 support][Part II]

SIP Push Notification with OpenSIPS 3.1 LTS [RFC 8599 support][Part I]

As we get closer to the much-anticipated release of OpenSIPS 3.1 LTS, a new major feature has been merged into the master branch: full support for standards-based SIP Push Notifications (short: "SIP PN"), a.k.a. RFC 8599! In this two-part series, I'm going to present two sides of the story: first, the IETF document itself: the … Continue reading SIP Push Notification with OpenSIPS 3.1 LTS [RFC 8599 support][Part I]

Quality-based PSTN Routing in OpenSIPS 3.1 LTS [part 2]

Overview This post is a sequel to the initial write-up on the recently introduced qrouting (Quality-based Routing) module. During the last month, the module has received several key additions, aimed at both improving the data format (gateway statistics, thresholds and scores) as well as the runtime behavior, with a new traffic balancing algorithm having been … Continue reading Quality-based PSTN Routing in OpenSIPS 3.1 LTS [part 2]

Quality-based PSTN Routing in OpenSIPS 3.1 LTS [part 1]

Introduction Note: some information in this post may be outdated. Make sure to also read the follow-up post for the final view on qrouting's behavior. Up until today, the open-source SIP server garden seems to have yielded quite a handful of ways to perform PSTN routing. Some VoIP operators prefer to pull the latest rate … Continue reading Quality-based PSTN Routing in OpenSIPS 3.1 LTS [part 1]

The Module Function Interface Rework in OpenSIPS 3.0

As you begin to write or migrate to OpenSIPS 3.x configuration files, you will notice some major changes in the way module functions are invoked. These changes are part of an ongoing effort to improve the experience of writing opensips.cfg code, and in this article we're going to take a closer look at how this … Continue reading The Module Function Interface Rework in OpenSIPS 3.0

Containing Memory-Related Issues in an Easy Way with OpenSIPS 3.0

OpenSIPS 3.0 includes major changes to the way in which the available memory allocators can be embedded into a build, as well as to the manner in which they can be selected at runtime. The end goal of this rework is to simplify and speed up many existing workflows (debugging, fine tuning, development) by avoiding … Continue reading Containing Memory-Related Issues in an Easy Way with OpenSIPS 3.0

Generic Preprocessor Support in OpenSIPS 3.0

Starting with version 3.0, OpenSIPS will offer script writers full support for piping the opensips.cfg file (including any other files imported by it) to a generic preprocessing command. What's So New About It? Until now, the core problem of templating opensips.cfg was solved using fully externalized solutions such as GNU m4, which grabbed an input configuration file … Continue reading Generic Preprocessor Support in OpenSIPS 3.0

A Better Way of Saying “Thank You!” to OpenSIPS Contributors

As time goes by, code, pull requests and patches for an open-source project will naturally keep arriving in a steady stream.  Depending on the volume of these contributions, some projects end up doing just well with a single maintainer, while others require an entire team of maintainers, each specializing in one of the project's major … Continue reading A Better Way of Saying “Thank You!” to OpenSIPS Contributors