OpenSIPS - an event-driven SIP routing engine
When moving from a linear processing architecture to an event-oriented one, OpenSIPS becomes able to handle more advanced SIP scenarios, as well as to perform complex integrations with external applications.
The new OpenSIPS version follows a Subscribe/Notify model, which allows the SIP routing to be driven by events. These events are triggered from both inside and outside OpenSIPS, and are internally dispatched by OpenSIPS to the right process/subscriber.
During this presentation, I will show how the asynchronous architecture revamp of the upcoming OpenSIPS 2.3 facilitates a series of state-of-the-art integrations (SIP transaction pausing while push notifications are taking effect, custom suspend-resume logic while waiting for an external event, etc.).
The discussion will also include OpenSIPS scripting, and how we tweaked it to incorporate all these changes in a simple, straightforward, and efficient manner.