<div dir="ltr">Hello,<br><div class="gmail_quote"><div dir="ltr"><div><br></div><div>I'm happy to announce the first open source release[1] of NkSIP, an Erlang framework to ease the building of SIP applications. SIP is a very powerful, flexible and complex protocol, and NkSIP tries to facilitate the development of any SIP application, including proxies and B2BUAs, allowing the developer to focus on the application logic.</div>


<div><br></div><div>The main features are:</div><div><div><ul><li>Full RFC3261 coverage, including SIP Registrar (RAM storage only).<br></li><li>A written from scratch, fully typed Erlang code easy to understand and extend, with more than 50 unit tests.<br>


</li><li>Hot core and application code upgrade.<br></li><li>Very few external dependencies: Lager for error logging and Cowboy as TCP/SSL acceptor and Websocket server.<br></li><li>UDP, TCP and TLS transports, capable of handling thousands of simultaneous sessions.<br>


</li><li>Stateful proxy servers with serial and parallel forking.<br></li><li>Stateless proxy servers, even using TCP/TLS.<br></li><li>Automatic registrations and timed pings.<br></li><li>Dialog and SDP media start and stop detection.<br>


</li><li>SDP processing utilities.<br></li><li>Simple STUN server (for future SIP Outbound support).<br></li><li>Robust and highly scalable, using all available processor cores.<br></li></ul></div></div>
<div>NkSIP is currently alpha quality and not suitable for production, but it is quite robust and has already a decent documentation, a tutorial and some sample applications.</div><div><br></div><div>There is also some exciting stuff in the radar like SIP Websockets support and a fully distributed version based on Riak Core.</div>


<div><br></div><div>Any feedback is welcomed. Thank you!</div><div><br></div><div>[1] <a href="https://github.com/kalta/nksip" target="_blank">https://github.com/kalta/nksip</a><br></div><div><br></div><div>
Carlos González</div><div>@carlosjgf</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div>
<br></div><div><br></div><div><br><div><br></div><div><br></div></div></div>
</div><br></div>