Friday, September 28, 2018

New Kamailio Module Exports Interface

As a result of collaborative work at Kamailio Developers Meeting, we succeeded to merge the two existing module exports interface (one for Kamailio modules and the other one from SER modules) in a single one.
All public modules were updated, but if you have any private module then you have to update as well in order to get it compiled with the latest master. Just look at one of the modules (e.g., sl module is a good option) and all the fields in mod exports structure have comments with their meaning.
In short: we removed unused fields for statistics, mi commands and extra-processes (from Kamailio old interface) and oncancel (from SER old interface), kept the RPC exports from SER interface and PV exports and dlopen flags from kamailio interface. The other fields were common in both interfaces, but be aware that order was also changed.
If you have a module implementing the SER old interface, you also need to add the free fixup field in functions exports structure — you can just set it to 0.
With this we have now a single mod exports interface in all modules, the core is also cleaner as we got rid of the various compatibility layers.
Thanks for flying Kamailio!

No comments:

Post a Comment