Jami (logiciel)

Un article de Wikipédia, l'encyclopédie libre.
Sauter à la navigation Sauter à la recherche
Jami
Description de l'image Jami-logo-gnu-package.svg.

Informations
Développé par Savoir-faire Linux
Première version
Dernière version ()
Version avancée 20180717 ()[1]Voir et modifier les données sur Wikidata
Dépôt git.jami.netVoir et modifier les données sur Wikidata
Écrit en C++
Supporte les langages / GTKVoir et modifier les données sur Wikidata
Système d'exploitation GNU/Linux, FreeBSD, Microsoft Windows, macOS, Android et Android TVVoir et modifier les données sur Wikidata
Environnement Multiplateforme
Langues Multilingue
Type Messagerie instantanée, Voix sur réseau IP
Licence Licence publique générale GNUVoir et modifier les données sur Wikidata
Site web jami.netVoir et modifier les données sur Wikidata

Jami précédemment appelé SFLphone, puis ring[2] est un logiciel qui permet aux utilisateurs de passer des appels téléphoniques ou vidéo via Internet, ainsi que le partage d'écran. Il existe des fonctionnalités additionnelles comme la messagerie instantanée, le transfert de fichiers et la visioconférence. Il a pour volonté d'être une plateforme de communication universelle et libre, respectant les libertés et la vie privée des utilisateurs.

Jami, signifiant "communauté" en Swahili[3], est un logiciel open-source disponible sur les environnement de bureau (Windows, MacOs, Linux) ainsi que sur smartphone (Android,IOS).

Jami se positionne comme un logiciel susceptible de remplacer l'application Skype[4].

Historique[modifier | modifier le code]

En 2005, Cyrille Béraud lance le projet de développement d'un téléphone numérique pour les entreprises entièrement conçus à partir de technologies ouvertes. 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 logiciel Asterisk, PBX de référence dans le monde du logiciel Open Source sur Internet.

SFLphone était l’un des rares logiciels de téléphonie sous Linux à prendre en charge PulseAudio dès le début. Ubuntu le recommandait pour une utilisation en entreprise en raison de fonctionnalités telles que la téléconférence et le transfert d'appel assisté.

Ring, basé sur SFLPhone, y ajoute le support de OpenDHT, lui permettant de ne pas être dépendant d'un serveur.

En 2009, le magazine CIO a classé SFLphone parmi les cinq meilleurs logiciels de téléphonie VoIP open source. 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 , le nom du projet devient Ring [5]

En , elle a été intégrée au projet GNU. Jami est un logiciel gratuit et opensource publié sous la licence GNU General Public License Version 3+.

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[modifier | modifier le code]

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, et avec l’aide d’une communauté mondiale d’utilisateurs et de contributeurs, Jami se positionne comme un logiciel qui pourrait potentiellement remplacer l'application Skype[7].

Deux types de comptes sont actuellement disponibles. Les deux types de comptes offrent des fonctionnalités similaires, notamment la messagerie, la vidéo ainsi que l'audio. Les types de comptes sont SIP et Ring. Un compte SIP permet au softphone Jami de se connecter à un serveur SIP standard et un compte Ring peut enregistrer (ou utiliser un compte configuré) sur le réseau Jami décentralisé, qui ne nécessite aucun serveur central.

Jami crée son propre réseau sur lequel elle peut répartir les fonctions de répertoire, l'authentification et le cryptage sur tous les systèmes qui y sont connectés. Les packages sont disponibles pour toutes les principales distributions Linux, y compris Debian, Fedora et Ubuntu. Des versions distinctes de GNOME et de KDE sont également disponibles.

Conception[modifier | modifier le code]

Jami est basé sur un modèle MVC, avec un deamon (le modèle) et un client (la vue) en communication. Le deamon gère tout le traitement, y compris la couche de communication (SIP / IAX), la capture et la lecture audio, etc. Le client est une interface d'utilisateur graphique. D-Bus peut servir de contrôleur permettant la communication entre le client et le deamon.

Fonctionnalités[modifier | modifier le code]

  • Compatible SIP avec support OpenDHT 
  • Nombre illimité d'appels
  • Messagerie instantanée
  • Historique des appels consultables
  • Enregistrement d'appel
  • Transfert d'appels assisté
  • Réponse automatique aux appels
  • Mise en attente
  • Appels audio et vidéo avec audio multipartie et vidéoconférence expérimentale
  • Prise en charge audio multicanal (expérimental)
  • Streaming de fichiers vidéo et audio pendant un appel
  • Prise en charge de TLS et SRTP, méthode de cryptage entre les appareils[8]
  • Plusieurs codecs audio pris en charge: G711u, G711a, GSM, Speex (8, 16, 32 kHz), Opus, G.722 (détection de silence prise en charge avec Speex)
  • Prise en charge de plusieurs comptes SIP, avec prise en charge STUN par compte et abonnement de présence SIP
  • Support DTMF
  • Contrôle automatique du gain
  • Assistant de compte
  • Raccourcis clavier globaux 
  • Support de sonnerie Flac et Vorbis
  • Notification du bureau : numéro de messagerie vocale, appel entrant, messages d'information
  • SIP Re-invite
  • Intégration du carnet d'adresses dans GNOME et KDE
  • Prise en charge de PulseAudio
  • Prise en charge du kit de connexion audio Jack
  • Paramètres régionaux : français, anglais, russe, allemand, chinois, espagnol, italien, vietnamien
  • Ouverture automatique de l'URL entrant
  • Chiffrement de bout en bout utilisé pour le chat, la vidéo et la voix [21]
  • Décentralisée

Fonctionnement[modifier | modifier le code]

Jami est entièrement distribué et repose sur deux réseaux distribués distincts[9]:

Références[modifier | modifier le code]

Liens internes[modifier | modifier le code]

Liens externes[modifier | modifier le code]