Kazoo-Classic Development Status

Last Update: 17/03/2025

Welcome to our ongoing efforts to maintain and modernize Kazoo, a robust, open-source telephony platform leveraging FreeSWITCH, Kamailio, CouchDB, and others.

Planned Stages

As to not spread ourselves too thin, we will approach development in the following stages.


Stage 1 - Kazoo Classic 4.3 - Alma/Rocky 8 Build & Packages

As it has been shown that the existing code base for all components can with little to no modification can run on Alma/Rocky/RHEL8 or Debain 11, the first step is to have a release that works that doesn’t rely on the EOL’d Centos 7.

Therefore, apart from compatibility fixes, the first step is to work on building binaries and releasing a repository for RHEL8, specifically Alma Linux and associated metapackages to allow distributed or all-in-one installs.

This also includes changing Kamailio to use PostgreSQL instead of KazooDB (which is closed-source) for presence, watcher lists, and carrier allow listing.


Stage 2 - Kazoo Classic 4.3.X - Add STIR/SHAKEN support

To comply with the US FCC regulations, STIR/SHAKEN support will be added.


Stage 3 - Kazoo Classic 4.4 - Erlang and Dependency Updates / Bugfixing

Getting things on a current operating system is only the first step. Kazoo runs on Erlang 19, which reached EOL in 2019 and doesn’t support later OpenSSL versions. Work has already begun by other talented individuals to move the codebase towards Erlang OTP 24 and 26.

Testing and review of this work will begin in ernest once stage 1 is completed.

Several known bugs such as the SSO login, T.38 bugs, and potentially the queue system (ACDC) will be targeted to be fixed.


Stage 4 - Kazoo Classic 4.5 - Technology Changes, Feature Adds

Components like the mod_kazoo freeswitch module will be replaced with mod_amqp, mod_kazoo had its purpose when it was developed, but mod_amqp has its own benefits.

Additional modules or guides will be created to handle things like email-to-fax security, DKIM signing system notifications, frontend updates.

As CouchDB (the database Kazoo runs on) clusters well over lan, but poorly over wan, and HTTP replication of couchdb can become overloaded at large scale, middlware or a custom service will need to be developed for better inter-region replication.


Stage 5 - TBD

Nothing to add at this stage, though it will likely be continuing to maintain and adding more modules and functionality, potentially adding integrations to popular platforms, reworking the billing modules/etc.

We may look into an open-source kazoo based softphone with updated push notifications.


Current Contributors

We have many contributors on the discord channel. Additional users will be added below as the efforts become more coordinated. The current notable works that are moving this project towards completion can be found here.

https://github.com/kageds

Especially the Erlang Updates in;

And his Kamailio Postgres updates in

https://github.com/ruhnet

Updates to callflows (forked from OpenTelecom)

https://github.com/mooseable

Work on adding additional security filters

Kazoo Binary Build Process for Alma/RHEL8

Monster-UI build process through docker

Help Desired

  • Though a labour of love, any funding would be appreciated when we are ready to take them
  • Building RPM packages
  • Erlang, Elixir, Rebar, Node/JS developers
  • Experience in configuring Kamailio Routing
  • Testers, especially those with infrastructure

Contributing

The best way to coordinate efforts is to join our Discord server.