En 2005, Cyrille Béraud lance le projet de développement d'un téléphone numérique pour les entreprises, entièrement conçu à partir de technologies ouvertes (open source). SFLPhone est un « Téléphone Logiciel » professionnel pouvant gérer, de manière quotidienne, un nombre illimité de lignes et d'appels. Conforme aux standards de télécommunication (SIP, IAX), il s'interconnecte avec le logicielAsterisk, autocommutateur téléphonique privé de référence dans le monde du logicielopen source sur Internet.
SFLphone est l’un des rares logiciels de téléphonie sous Linux à prendre en charge PulseAudio dès le début. Ubuntu le recommande alors pour une utilisation en entreprise en raison de fonctionnalités telles que la téléconférence et le transfert d'appel assisté.
En , le magazine CIO a classé SFLphone parmi les cinq meilleurs logiciels de téléphonie VoIP open source[4]. Au-delà de SFLphone, Ring a conservé la compatibilité et le support SIP, tout en ajoutant une nouvelle plate-forme de communication ne nécessitant pas de serveur centralisé pour établir la communication.
En , Ring devient Jami afin de ne pas créer de confusion avec des produits commerciaux utilisant également le terme anglais ring[6].
Généralités
Jami est un logiciel de téléphonie et de messagerie instantanée compatible avec SIP pour Linux, Microsoft Windows, OS X, iOS et Android. Développé et mis à jour par Savoir-faire Linux[7], ainsi qu'avec l’aide d’une communauté mondiale d’utilisateurs et de contributeurs, Jami se positionne comme un logiciel concurrent de l'application Skype[8],[9],[2].
Deux types de comptes sont actuellement disponibles : SIP et Ring. Les deux types de comptes offrent des fonctionnalités similaires, notamment la messagerie, la vidéo ainsi que l'audio. Un compte SIP permet au softphone Jami de se connecter à un serveur SIP standard alors qu'un compte Ring peut enregistrer ou utiliser un compte configuré sur le réseau Jami décentralisé, ce qui ne nécessite aucun serveur central.
Jami créé son propre réseau sur lequel il peut répartir les fonctions de répertoire, l'authentification et le chiffrement sur tous les systèmes qui y sont connectés. Les paquets sont disponibles pour toutes les distributions principales Linux, y compris Debian, Fedora et Ubuntu. Des versions distinctes pour GNOME et de KDE sont également disponibles.
Conception
Jami est basé sur un modèle MVC, avec un daemon (le modèle) et un client (la vue) en communication. Le daemon (processus informatique en arrière-plan) gère tout le traitement, y compris la couche de communication (SIP / IAX), la capture et la lecture audio. Le client est une interface graphique destinée à l'utilisateur. D-Bus peut servir de contrôleur permettant la communication entre le client et le daemon.