[OpenSIPS-Devel] Introducing OpenSIPS contributed modules

Răzvan Crainea razvan at opensips.org
Wed Oct 14 14:04:08 UTC 2026


Hi everyone,

Over the last several months, we have received an increasing number of 
pull requests introducing new OpenSIPS modules. We are very happy to see 
this level of interest and commitment from the community.

These contributions bring valuable features and integrations to 
OpenSIPS, and we want to make them available to the community as quickly 
as possible. At the same time, reviewing an entirely new module, 
however, is substantially different from reviewing a focused change to 
existing code. New modules may contain large amounts of code, unfamiliar 
designs, integrations with external services, or code produced through 
AI-assisted—or "vibe coding"—workflows. Fully understanding and 
validating every aspect of such a module before merging it requires 
considerable effort from the OpenSIPS core team and may significantly 
delay otherwise useful contributions.

To address this, we are considering introducing a new concept in 
OpenSIPS: the **Contributed modules**!

Contributed modules would be primarily maintained and supported by their 
authors and the wider OpenSIPS community. The core team's involvement 
would focus on best-effort build and integration supervision, including 
licensing, documentation, build-system compatibility, and obvious 
security or stability concerns.

This would allow valuable community work to become available sooner 
while clearly establishing the corresponding maintenance and support 
expectations.

Contributed modules would be kept under the `modules-contrib/` directory 
in the source tree. Placement in this directory would represent a 
different maintenance model from modules in the main modules/ directory. 
Responsibility for implementation, external integrations, ongoing 
maintenance, issue handling, and user support would remain primarily 
with the module's authors and interested community members.

Contributed modules would not be built by default. They could be built 
explicitly using:

`make modules-contrib`

To build all configured module collections, including contributed modules:

`make all-modules`

The proposed packaging model follows the same distinction:

* `opensips-modules-contrib` would contain contributed modules requiring 
no additional external dependencies.
* ` contributed module requiring external dependencies would have its 
own package named `opensips-module-contrib-<module>`.

Inclusion under `modules-contrib/` would not represent a complete audit 
of the module's code, functionality, or external integrations. It would 
indicate that the module passed the applicable integration checks, while 
its functional validation and long-term maintenance remained 
community-driven.

Issues and fixes would therefore be handled primarily by the module's 
authors and users. A contributed module could later move into the main 
module tree after gaining active maintainership, broader adoption, 
sufficient review, and proven operational experience.

The proposed build-system and packaging implementation is available for 
review in the modules-contrib branch:

* https://github.com/OpenSIPS/opensips/tree/modules-contrib

At this stage, this is an intention and a proposal—not a final decision. 
We would appreciate feedback from contributors, maintainers, packagers, 
and users, especially regarding any technical, maintenance, or 
distribution concerns we may have overlooked.

If no significant concerns or showstoppers are raised, we intend to 
adopt this model and finalize the implementation.

Thank you to everyone contributing code, testing modules, reporting 
issues, and helping the OpenSIPS ecosystem grow.

Best regards,
The OpenSIPS Team
-- 
Răzvan Crainea
OpenSIPS Core Developer / SIPhub CTO
http://www.opensips-solutions.com / https://www.siphub.com




More information about the Devel mailing list