Jami

Une plateforme libre de communication. Ex Ring.

a marqué ce sujet comme résolu.

Coucou les agrumes ! Je n’étais plus très actif ces dernières semaines, pris par plusieurs projets dont certains auront leur topic ici je pense. Voici donc un des projets, qui est aussi ma job de tous les jours.

Jami c’est quoi ?

Jami (qui vient du mot Jamii, communauté en Swahili) est le nouveau nom de Ring. C’est une plateforme de communication, un skype-like, qui fonctionne sans dépendance à un service central quelconque (et pouvant fonctionner sur un réseau local sans accès internet), sous licence GPLv3. La majorité du code est écrite en C++ (14 ou supérieur). Avec des clients natifs sur pas mal de plateformes (GNU/Linux, Windows, MacOS, iOS, Android, Android TV). La technologie de base est un autre projet : https://opendht.net, une table de hashage distribuée.

Jami
Jami

La documentation demande un petit coup de nettoyage, mais il y a pas mal d’informations sur le wiki et ici.

Mais en gros, la plateforme est divisée en plusieurs couches:

  1. OpenDHT, la table de hashage distribuée, qui sert pour le stockage et la distribution de la communication. Un noeud peut aussi fonctionner en mode proxy, pour pouvoir se plugger à des services ou écouter le réseau quand l’application ne tourne pas.
  2. Le daemon, qui se charge de tout l’aspect gestion de comptes, gestion de la vidéo, etc.
  3. Des clients ou des bibliothèques clientes.

Fonctionnalités

  • Création de comptes sans informations personnelles (mot de passe non obligatoire, pseudo optionel, pas de mail / téléphone)
  • Communication texte/vidéo
  • Vidéo conférences
  • Streaming de fichiers
  • Envoi de fichiers
  • Support SIP
  • Enregistrement des appels
  • Auto nettoyage de l’historique, etc.

Non disponible pour le moment

  • Conversations de groupes (cf roadmap plus bas)
  • Messages hors ligne (cf plus bas)
  • Récupération de compte (vu qu’il n’y a pas de serveur central, si quelqu’un perd son compte, le compte est perdu à jamais)
  • Synchronisation des historiques à travers plusieurs appareils.

2019

Au moins pour ce que je souhaite faire.

  • Les conversations de groupes (qui demandent un énorme travail), donc mise à jour de la crypto, utilisations de clés de groupes, transfert de fichiers pairs à pairs, synchronisation de l’historique
  • Il faudra faire un client web un jour
  • Des bridges vers d’autres technologies, et pourquoi pas du support d’activity pub pour des messages publics
  • FOSS push pour remplacer les push notifications actuelles.
  • Support de VP9, AV1 (je ne travaillerais pas sur ce point)
App (gif provenant du site jami.net)
App (gif provenant du site jami.net)

Liens

+9 -0

Au début en lisant juste le titre et sans voir le sous-titre je pensais que ça parlerai de c’est pas sorcier…

J’ai téléchargé la version android, meme si je doute qu’elle me soit très utile : j’ai toujours du mal à convaincre mes quelques connaissances à migrer ou tester vers autre chose.

Néanmoins j’aime beaucoup l’initiative, bravo à vous.

+2 -0

Au début en lisant juste le titre et sans voir le sous-titre je pensais que ça parlerai de c’est pas sorcier…

Ouai on est d’accord, mais le clin d’oeil reste fr. (Ca reste aussi une personne qui a "bercé" mes 17h30 en rentrant de l’école).

J’ai téléchargé la version android, meme si je doute qu’elle me soit très utile : j’ai toujours du mal à convaincre mes quelques connaissances à migrer ou tester vers autre chose.

D’où la nécessité de créer des bridges. J’en conviens.

Néanmoins j’aime beaucoup l’initiative, bravo à vous.

Tamwile

Thx

@Phigger Par rapport à Tox, le principe reste très similaire (même concept, une DHT aussi, même problématiques aussi, comme la messagerie offline). La grosse différence vient du SIP (supporté ici). Sinon je ne fais que suivre de trop loin Tox pour énumérer toutes les différences, on doit avoir des features en plus (surement le client Android TV, la possibilité d’enregistrer les appels), des features en moins (il me semble qu’on peut faire des conversations de textes à plusieurs pour Tox, alors que les clients "officiels" de jami ne le font pas (il me semble que le client KDE le fait, mais la méthode n’est pas optimisé et c’est plus du workaround)), des clients différents.

Beau projet ! À quoi ressemble l’équipe derrière ? D’où viennent les revenus ?

tleb

Actuellement, on est moins que l’année précédente. On est 5 à travailler dessus au total, plus quelques patchs de contributeurs ou quelques stagiaires.

Pour le moment le projet ne génère aucun revenu. Mais l’idée est de vendre des services autour. Vu qu’il s’agit de faire de la R&D, des aides peuvent financer le projet, et parfois on est amené à faire des projets autres pour rapporter des sous (par exemple, j’ai fait quelques mois de Yocto en fin d’année précédente pour faire une boîte embarquée.)

Excellent, merci pour la publicité, on cherchait quelque chose dans le genre de notre côté.

Une question qu’on m’a posée là dessus, c’est à propos des codecs. Étant un projet GNU, quels sont les raisons de supporter des codecs comme h264 ? Il semblait que les projets GNU était relativement loins des technologies avec des brevets privés.

Pour répondre ici et éviter de perdre ca dans les méandres d’IRC, je n’ai pas les raisons pour h264, mais pour les push notifications (qui sont limites limites niveau libre).

Tant que c’est pas incompatible avec la GPL, que tout le code de ton coté est libre et qu’il s’agit d’une réponse à un problème technique, c’est faisable (mais pas idéal).

Par exemple, niveau libre, les push notifications, ca commence juste à être faisable, j’espère pouvoir faire ca cette année, mais à l’époque, GCM/FCM ou APN était les seules solutions viables (pour iOS je ne sais pas si y a des alternatives aujourd’hui). Pour les codecs, d’après le thread suivant (https://lists.gnu.org/archive/html/ring/2017–08/msg00014.html), ce sera mis comme une dépendance plus tard (et il y aura l’ajout de VP9 et AV1 bientôt). À mon avis c’est largement faisable aujourd’hui, faudra juste que quelqu’un prenne le temps de le faire.

Salut \o

Le support de SIP … implique que l’on peut téléphoner à un téléphone (un vrai, comme un téléphone quoi) ? Je sais que non mais je pose quand même la question, c’est prévu, en voix, pas du tout ?

Je précise que ça m’intéresse car j’ai eu des cours dessus. Et surtout également car j’ai pas de téléphone mais que je communique quasi exclusivement via email et SMS. (Pour les SMS je me débrouille avec un programme ncurses que j’ai codé, gammu et une clé 4G que j’ai trouvé) Si j’arrivais à téléphoner depuis mon ordinateur portable, ça serait idéal pour moi.

+0 -0

Coucou @ache

Ca dépend de la nature de ton compte SIP, mais généralement oui. Par exemple, un compte SIP ip2ip ne pourras pas appeller un téléphone. Par contre un compte SIP comme ceux d’OVH par exemple, il n’y a pas de soucis et par exemple on s’en sert ici pour tout ce qui est reception d’appels & transferts d’appels.

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte