esl module v11.0.1 is out

The esl module allows Node.js to interact with and control FreeSWITCH, a multimedia platform. This release is a major release and introduces some breaking changes, alongside with improvements.

Breaking changes first!

This version does away with binding callbacks to the this object representing a call. For people who used previous versions of the module this means code using this should instead now use the object passed as parameter. The main driver here has been performance related to the bloating of the this object, and the introduction in modern ECMAScript of the => notation.

This version also uses updated creation procedures for the connections, using standard new FreeSwitchClient and new FreeSwitchServer patterns.

Improvements

The main improvement is the addition of TypeScript declarations; this was long overdue and will provide much better developper experience with modern development environments.

Another improvement is the automatic reconnection to FreeSwitch when using the FreeSwitchClient API. Automatic reconnection was previously available but was cumbersome to use; it is now the default!

The test suite has been rewritten to account for the changes in JS code practices and the module's API.

Finally the documentation has been updated and provides more details on each methods.

Availability

The release is available on https://www.npmjs.com/package/esl immediately and may be used in a new project using

npm install esl

or corresponding syntax for yarn, pnpm.

About

The esl module is maintained by Stéphane Alnet. He is available for short-term contract or part-time opportunities to help you integrate and deploy your FreeSWITCH/Kamailio/OpenSIPS solutions.