Sortie de Dino 0.1

Ceci est une traduction en français de l’article de lancement de Dino 0.1 : https://dino.im/blog/2020/01/dino-0.1-release/

Nous sommes heureux d’annoncer la parution de la première version stable de Dino : la version 0.1. Ceci marque une étape importante du processus de développement commencé il y a trois ans, composé du travail combiné de trente contributeurs, dont quatre étudiants du Google Summer of Code et de multiples sprints de développement.

Dino est une application sécurisée et libre de messagerie instantanée décentralisée. Elle utilise le protocole XMPP (« Jabber ») et est interopérable avec les autres clients et serveurs XMPP. Nous nous efforçons de fournir une interface utilisateur intuitive, simple et moderne.

Fenêtre principale de Dino

Motivation : pourquoi Dino ?

Les applications de chat comme WhatsApp et Facebook Messenger sont faciles à utiliser, et ont donc été adoptées par des milliards de gens. Cependant, elles sont propriétaires et les entreprises derrière elles sont fréquemment critiquées pour malmener les données personnelles de leurs utilisateurs. Un certain nombre d’applications de messagerie instantanée ont été crée avec comme but de fournir une alternative plus respectueuse de la vie privée, comme par exemple Signal et Wire, mais même si elles chiffrent les messages et ont libéré leur code source, leurs utilisateurs doivent toujours accepter un service centralisé, et faire confiance à une entreprise privée.

XMPP est un protocole ouvert pour des communications fédérées. Il existe beaucoup de serveurs publics qui communiquent les uns avec les autres, et n’importe qui peut héberger son propre serveur. Cela fournit une excellente base pour fabriquer un client de messagerie instantanée décentralisé et respectueux de la vie privée. Nombre de clients existent déjà pour le protocole XMPP, cependant Dino vise un public différent. Alors que les clients existants ciblent les power users maîtrisant la technologie, l’écosystème XMPP manque d’un client qui soit agréable à utiliser tout en fournissant les fonctionnalités que les gens attendent d’une application de chat moderne. Dino remplit ce manque en tentant d’être sécurisé et respectueux de la vie privée tout en offrant une excellente expérience utilisateur.

Fonctionnalités

Au premier abord, l’interface utilisateur de Dino ressemble à celle d’autres messageries instantanées populaires qui pourraient vous être familières. Sur le côté gauche, vos conversations ouvertes sont listées, ordonnées de façon à ce que les derniers messages reçus soient toujours en haut. Vous pouvez ouvrir de nouvelles conversations ou rejoindre des salons de discussion avec le menu « + ».

Conversation avec une image embarquée et un fichier attaché dans Dino

Messagerie instantanée et plus

Vous pouvez envoyer des messages à vos contacts ainsi qu’à des groupes privés ou à des salons publics. Dino peut être utilisé en même temps que d’autres clients, ce qui fait que vous pouvez continuer une même conversation sur votre téléphone comme sur votre ordinateur. Les messages que vous envoyez et recevez lorsque Dino était éteint sont synchronisés au lancement.

La recherche de messages de Dino, avec les résultats surlignés

Recherche de message

Dino gère le partage d’images et d’autres fichiers, il peut les transférer via votre serveur ou directement à votre contact, en peer-to-peer et sans limite de taille de fichier.

Une recherche de messages avancée vous permet de rechercher et de filtrer votre historique de messages, globalement ou dans une conversation donnée. Après avoir regardé dans les résultats, vous pouvez sauter à un message pour lire davantage de contexte.

Vous pouvez utiliser plusieurs comptes dans la même interface, pour par exemple séparer facilement votre identité au travail et à la maison.

Securité et vie privée

La fenêtre de gestion des clés OMEMO de Dino

La sécurité a été un point central dans le développement de Dino depuis le tout début. C’est pourquoi nous prenons en charge deux méthodes de chiffrement bout-à-bout directement : le standard de chiffrement bien connu OpenPGP vous permet d’étendre la toile de confiance des mails à XMPP. Le chiffrement à double-ratchet OMEMO fournit un système de chiffrement moderne où chaque client a une confiance spécifique, et est utilisé à grande échelle sur le réseau XMPP.

Nous prenons votre vie privée au sérieux dans chaque détail, par exemple vous pouvez empêcher Dino d’informer l’émetteur d’un message que vous l’avez lu, pour qu’ils ne voient pas la double-check sur leurs messages. Dino vous permet de configurer ses fonctionnalités de vie privée par contact : vous pouvez garder vos meilleurs amis au courant de vos activités tout en ne partageant rien avec les étrangers.

Rapide et bien intégré

Dino n’inclue pas un navigateur web complet avec sa consommation de ressources faramineuse et ses nombreuses potentielles failles de sécurité. À la place, il est une application de bureau native, ce qui lui permet d’être léger et de consommer vraiment peu. Dino s’intègre très bien avec le reste de vos applications et services de bureau.

Prêt ?

Après avoir créé un compte XMPP, vous pouvez contacter d’autres personnes à travers du réseau XMPP globalement connecté. Les adresses XMPP sont de la forme utilisateur@example.com. Vous pouvez vous connecter avec un compte existant ou en créer un nouveau !

Jabbim a besoin de vous

Jabbim est un client jabber pour windows et linux, écrit en python et Qt. Pour la partie jabber, ils ont développé une surcouche à twisted. Ce client sur lequel nous ne connaissons finalement pas encore grand chose en est à la version 0.2 qui est sorti en octobre dernier.

De ce que les screenshots officiels nous laissent entrevoir, Jabbim a une fenêtre avec des onglets pour les salons de discussions et les discutions privées, ainsi qu’une autre fenêtre pour le roster. Tout comme son « concurent » direct, Gajim. À la différence près que Jabbim ne permet d’utiliser qu’un seul compte.

Mis à part cela, il gère les transferts de fichiers, les commandes ad-hoc, les marques-pages pour les salons, les groupes dans le roster, les meta-contacts, etc. Et il dispose aussi d’un système de « skin » (il y en a même un qui s’appelle « gajim »),

Bien que ce client ne dispose pas encore d’une version publique, il est néanmoins déjà bien avancé. La version 0.3 devrait pointer le bout de son nez d’ici quelques semaines. Et cette foi-ci, ça sera une sortie en grande pompe. De ce fait l’équipe recherche activement des bénévoles pour faire la traduction en français. Actuellement, Jabbim n’est dispoblible qu’en tchèque, slovaque et anglais.

Donc si vous avez des connaissances suffisantes en anglais pour pouvoir aider à faire la traduction en français, ou même pour aider à la relecture de la traduction, n’hésitez surtout pas à entrer directement en contact avec les développeurs jabbim@conf.netlab.cz.

Par la même occasion, n’hésitez surtout pas à compléter la page du wiki sur Jabbim qui est désespérément vide.

Merci à Omega pour la relecture.

Coccinella en version 0.96.0 !

Coccinella est un client libre et multi-plateformes dédié à Jabber. Un de ses gros avantages réside dans le fait qu’il possède un tableau blanc (whiteboard en anglais). Cela permet par exemple de jouer aux échecs avec un contact (aucun moteur de jeu n’est inclus, seul les mouvements des pièces sont transmis). Plusieurs jeux d’images sont ainsi fournis pour différents jeux de plateaux (comme pour les échecs et les dames chinoises par exemple).

Coccinella a aussi l’avantage de supporter Jingle, et d’être distribué sous forme d’archive compressée (ainsi, il n’y a pas besoin d’avoir les droits d’administrateur sur la machine pour l’installer).

Hier est sortie la version 0.96.0 qui apporte son lot de nouveautés, mais surtout d’améliorations. En voici la liste :

  • Possibilité d’effectuer une recherche dans son roster
  • Amélioration du code concernant le tableau blanc
  • Support de la géolocalisation des utilisateurs
  • Support des commandes Ad-Hoc
  • Support des proxy pour les transferts de fichiers
  • Mis à jour du support de PEP et de User Mood
  • Vérification des hash md5 pour les transferts de fichiers (assurant ainsi l’intégrité des fichiers reçus)
  • Optimisation en vitesse du code relatif au chargement du roster
  • Utilisation du navigateur web et du client mail configuré par defaut sur les systèmes d’exploitation de type unix
  • Lors de la création d’un nouveau compte, coccinella récupère maintenant de façon automatique et transparente la liste des serveurs jabber publics

Merci à Omega pour la relecture.

Jabber et le Google Summer of Code 2007

Comme l’année dernière et l’année d’avant, Google sponsorise encore des étudiants travaillant sur des projets libres cet été à travers son Summer of Code. La XSF fait parti des organisations y participant, et plusieurs étudiants vont donc travailler sur des projets en relation avec Jabber cet été

Voici donc un petit aperçu des projets retenus :

  • Support de BOSH dans gloox : Gloox est une bibliothèque C++ pour développer des applications utilisant XMPP. BOSH (autrefois appelé http-binding) est un protocole permettant de se connecter à un serveur Jabber en passant par HTTP (donc permettant de contourner certains firewall et proxy).
  • Data Form Designer Suite for XMPP : Ce projet permettra de créer des formulaires Jabber graphiquement, et pourra servir par exemple à proposer facilement des sondages par Jabber.
  • Implémentation et suite de tests pour les Encrypted Sessions : Encrypted Sessions est une série de protocoles pour Jabber visant à fournir un chiffrage bout à bout des communications par Jabber. Ce projet établira des outils pour tester des implémentations de ces protocoles, et les implémentera dans Gajim.
  • Extended Stanza Addressing et d’autres XEP dans ejabberd : l’étudiant veut implémenter la XEP-0033 dans ejabberd. Ce protocole permet d’envoyer facilement un même message à plusieurs personnes, et réduit la bande passante utilisée pour émettre ce message. L’étudiant veut aussi implémenter les XEP 0133 (administration d’un serveur en utilisant des commandes ad-hoc), 0157 (spécifier les adresses des personnes à contacter pour les services XMPP) et 0203 (qui remplace la XEP 0091 pour signaler qu’un message a été délivré avec du retard).
  • Jingle Audio et Vidéo dans Gajim : implémentation de la visioconférence et de la voix sur IP en utilisant le protocole Jingle dans Gajim.

En plus des projets de la XSF, d’autres organisations ont des projets en relation avec Jabber :

Bien sûr, même sans participer au SoC, vous pouvez tout de même aider Jabber. La liste des idées pour le SoC est toujours disponible sur le wiki de Jabber.org.

Sources : Blog de stpeter, Blog de la XSF.

Google Talk Gagdet

Aujourd’hui, Google a présenté un nouveau « gadget » pouvant être inséré dans la page personnalisé google (www.google.com/ig). Il s’agit d’un client Web pour son service Google talk, qui, est-il besoin de le rappeler, est basé sur le protocole jabber. Ce client nécessite Flash 8.

Après la version lourde du client (talk.google.com), et la version intégré à son client mail (gmail.com), voici donc une troisième manière d’accéder au serveur jabber que nous propose le moteur de recherche.

J’avoue ne pas avoir poussé le test dans ses retranchements, mais voici plutôt mes premières remarques :

Google Talk Gagdet

Contrairement à GTalk et GMail, ici, tout passe par des onglets, ce qui est plutôt un bon point.

Le premier onglet concerne les contacts, puis un onglet par conversation.

Sur l’onglet des contacts, on retrouve, comme dans GTalk, son propre avatar ainsi que l’avatar de ses contacts, ce qui n’est pas le cas dans GMail (il faut passer la souris sur les contacts pour voir l’avatar). On retrouve également le lien en bas de liste pour ajouter un contact.

Toujours présent à l’identique de GTalk et GMail, juste au dessus du champ de recherche, un moyen rapide et efficace de changer de statut ou d’état.

Léger bémol, il n’y a pas d’ascenseur pour faire défiler la liste des contacts, cela se passer par le champ de recherche, à la manière de GMail.

Google Talk Gagdet

Les smileys sont toujours de la partie, tout comme les sons avertissant l’arrivée d’un message.

Lorsqu’on l’utilise sur un ordinateur où GTalk est installé, on a la possibilité de commencer une conversation audio via jingle grâce au bouton « call ».

Autre nouveauté : Lors de l’envoi d’un lien vers PicasaWeb ou une vidéo YouTube, le client affiche un aperçu en plus du lien vers le site.

Google Talk Gagdet

Coté paramètres, on a la possibilité de choisir l’aspect des bordures, couleurs, etc …

Google Talk Gagdet

Et enfin, dernière info, mais pas des moindre, il est possible d’utiliser ce client en dehors de la page d’accueil Google, en utilisant le lient qui est fourni.

Google Talk Gagdet

Voilà pour les premières impressions. Pour vous faire une plus grande idée de la bête, rendez-vous sur http://www.google.com/ig/add?moduleurl=googletalk.xml

Un aperçu du futur client Jabbim

Depuis peu de temps, un nouveau client est en train de voir le jour, il nous vient de la république Tchèque, a un nom certes peu original, mais est déjà très prometteur.

Ce client est donc Jabbim, que l’on peut récupérer depuis http://dev.jabbim.cz/jabbim. L’installation n’est pas très simple, mais le client étant pour l’instant encore à ses débuts, il n’est pas conseillé de l’utiliser pour le moment.

Le roster

Comme dans la majorité des clients Jabber, Jabbim dispose d’une fenêtre de roster (liste de contacts). Elle a la particularité de contenir des onglets qui contiennent par exemple la liste des salons du serveur, ou un formulaire pour ajouter un contact.

Roster de Jabbim

Les fenêtres de discussions

Les discussions sont regroupés en onglets.

Chat avec Jabbim

On peut aussi faire des discussions de groupe, Jabbim gère déjà bien le protocole pour les salons. On remarquera qu’un onglet de la liste de contact permet d’avoir la liste des salons du serveur.

MUC avec Jabbim

Fonctionalités

Pour l’instant les fonctionalités de Jabbim sont assez limités, mais suffisantes pour beaucoup de gens.

Il supporte l’envoie de fichier, la lecture des vCard et des avatars (en les lisant dans la vCard). Il permet aussi d’ajouter des marques-pages pour les salons, ces marques-pages apparaissent dans le quatrième onglet de la fenêtre principale.

Une option permet de jouer à des jeux, mais cela ne semble pas encore fonctionnel.

Conclusion

Jabbim souffre encore de son très jeune âge (quelques mois), il n’est pas facile à installer, mais encore aucune version stable n’est sortie, gageons que la situation se sera améliorée d’ici là. Le développement progresse rapidement, et des nouvelles fonctionnalités apparaissent régulièrement.

Son principal désavantage est que le site de développement ne soit pas en anglais, il est donc difficile de suivre l’avancement du projet.

Merci à Nÿco et Elghinn pour la relecture.

Nouveautés logicielles du côté des clients Jabber

Voici une série de publication de logiciels et services basés sur Jabber/XMPP ces derniers temps.

Me.dium est un service XUL sous forme d’extension Firefox permettant le « social browsing » (navigation sociale). Il se présente sous la forme d’une barre latérale qui contient un chat dans la partie inférieure et un plan des sites web avoisinants ainsi que les utilisateurs avoisinants du service. Le plan est dynamique, lorsque vous changez de site et d’onglet, vous vous déplacez sur la carte et vos voisins se replacent autour de vous. Bien que encore en version beta, Me.dium est un produit quasiment fini (alpha/beta).

SamePlace est une application libre en XUL sous forme d’extension Firefox, permettant le « social browsing » (navigation sociale) et le tableau blanc (« whiteboarding ») aux fonctionnalités très basiques. C’est une interface en panneau latéral. SamePlace se base sur le framework complet xmpp4moz (XMPP for Mozilla, et son diminutif x4m) qui est un vaste chantier dont on reparlera à coup sûr.

OneTeam est une application XUL de la société Process One (éditeur du serveur Jabber libre ejabberd, mais aussi Epeios et Tsung). Cette application est disponible sur le web, mais seulement sur les navigateurs basés sur Mozilla (Firefox par exemple), elle ne nécessite pas d’installation et s’exécute dans un onglet ou dans une nouvelle fenêtre. OneTeam est entré dans une phase de beta fermée, il est possible de s’y inscrire pour l’essayer et participer à la remontée de bugs via le forum et ticket tracker. Le client est lié au serveur Jabber oneteam.im qui est fédéré, ce qui signigie que l’on peut joindre les contacts Jabber, mais pas utiliser de compte sur d’autres serveurs pour l’instant. Par la suite, cette application sera dispo en XUL par le web (comme c’est le cas actuellement, sans d’installation), en extension Firefox, ou en standalone avec XULRunner.

Mooch est un client Jabber libre (licence GPL) écrit en Java 6 qui sert à partager des parties d’écran en temps-réel. Ce projet semble malheureusement un peu mis entre parenthèses.

Adium, le tant attendu client libre multi-protocole pour Mac OS X, est sorti en version 1.0 puis 1.0.1 apportant près de 600 corrections de bugs. Les nombres sont sympathiques : plus de 650 000 downloads en 15 jours.

Jive Software, via son site communautaire IgniteRealTime.org de projets open source, publie Spark 2.0.8, 2.5.0 Beta 2 et Sparkweb alpha.

JabberWorld est un client Jabber libre sous forme d’une application web en AJAX, similaire à JWChat donc, mais encore en version alpha.

Enfin, Psi 0.11-beta5 est sorti ainsi qu’une mise à jour de Gajim, la version 0.11.1.

emacs-jabber en version 0.7.1 !

Pour ceux qui ne le connaissent pas encore, jabber.el (plus communément appelé emacs-jabber) est un client jabber pour emacs. La version 0.7 (sortie en décembre 2005) avait déjà un bon support jabber pour un client en mode texte : gestion des MUC (avec possibilité de l’administrer), bonne gestion du roster, gestion des commandes Ad-Hoc, affichage des états de conversations, etc. Ce client est très intuitif du moment où l’on sait déjà se servir d’emacs.

Après 13 mois d’une interminable attente, la version 0.7.1 de emacs-jabber est enfin sortie.

Et elle ne vient pas les mains vides. Voici les nouveautés :

  • STARTTLS
  • enregistrement SRV (requière No Gnus)
  • buffer de composition de message (permet de pouvoir envoyer un message à plusieurs utilisateurs en une seule fois)
  • les URI XMPP sont maintenant gérés (voir la documentation officielle pour la configuration)
  • changement automatique du statut lorsque l’on est absent
  • Amélioration de la gestion des MUC :
    • n’affiche plus d’alerte pour nos propres messages
    • les changements de présence sont maintenant aussi envoyés aux salons
    • récupère la configuration du salon avant de le rejoindre (pour les cas où le salon requière un mot de passe, ou si on ne peut y entrer que sur invitation par exemple)
  • gestion des avatars
  • transfert de fichier
  • notification sonore personnalisable pour chaque contact
  • nouvelle fonction : « jabber-send-directed-presence ». Utile pour se connecter ou se déconnecter d’une passerelle, ou tout simplement pour apparaître absent pour un contact en particulier.
  • support de la XEP-0090 (permet de connaître l’heure locale d’un contact)
  • support de la XEP-0012 (permet de connaître l’heure de la dernière activité d’un contact)