When comparing with the version we have in older versions of Kamailio (OpenSER), the new design removed a lot of locks, improved the retransmissions timers and exports richer API to build new applications in tops of it.
In order to keep the module slim, a new module was created: tmx - tm extensions, trying to collect high application level function and let tm mainly for the core of transaction management.
Here is the summary about tm module:
- module was overhauled
- faster and more lightweight timer implementations for retransmissions
- removed lot of locks by a better design
- more internal hooks to develop applications on top of module
- asynchronous message processing support
- you can park the transaction and resume the processing later
- meanwhile the SIP worker process can handle new SIP traffic
- option to decide what replies to drop in serial forking steps
- load of new functions to access transactions
- new parameters to tune transaction management
- special pseudo-variables tied to tm in request, failure, branch or reply routes:
- access to pseudo-variables and attributes of INVITE while processing the CANCEL
- access to pseudo-variables and attributes of SIP request while processing the reply
- access to pseudo-variables and attributes of SIP reply while processing the request
Best of New in Kamailio 3.0.0 - Table of Content.