Jami (software)


Jami is a SIP-compatible distributed peer-to-peer softphone and SIP-based instant messenger for Linux, Microsoft Windows, OS X, iOS, and Android.
Developed and maintained by the Canadian company Savoir-faire Linux, and with the help of a global community of users and contributors, Jami positions itself as a potential free Skype replacement.
Jami is free and open-source software released under the GNU General Public License. In November 2016, it became part of the GNU Project.
Two account types are currently available, and many of each type can be configured concurrently. Both types offer similar features including messaging, video and audio. The account types are SIP and Ring. A SIP account enables the Jami softphone to connect to a standard SIP server and a Ring account can register on the decentralised Jami network which requires no central server. However, Jami still has to use bootstrap server to connect making it not a truly internet free communication platform as its claim.
By adopting distributed hash table technology, Jami creates its own network over which it can distribute directory functions, authentication and encryption across all systems connected to it.
Packages are available for all major Linux distributions including Debian, Fedora, and Ubuntu. Separate GNOME and KDE versions are available. Documentation is available on Ring's Tuleap wiki.
On 18 December 2018, Ring was renamed Jami.

History

Jami was initially known as SFLphone, and was one of the few softphones under Linux to support PulseAudio out of the box. The Ubuntu documentation recommended it for enterprise use because of features like conferencing and attended call transfer. In 2009, CIO magazine listed SFLphone among the top five open-source VoIP softphones to watch.
In November 2016, SFLphone was renamed GNU Ring as it became officially part of the GNU Project. It retained SIP support while adding a new communication platform that does not require a centralized server to establish communication.
On 18 December 2018, Ring was renamed to Jami, a GNU package, also known as GNU Jami within the GNU Project.

Design

Jami is based on a MVC model, with a daemon and client communicating. The daemon handles all the processing including communication layer, audio capture and playback, and so on. The client is a graphical user interface. D-Bus can act as the controller enabling communication between the client and the daemon.

Features