Jabber et les usines à gaz
Jabber, est un ensemble de protocoles standards ouvert de l'IETF de messagerie instantanée et de présence
. Et parmi toutes les choses innovantes et intéressantes que propose XMPP, nous avons par exemple les ressources et les priorités. Ces deux petites choses permettent de se connecter au même compte simultanément et de sélectionner quel est le logiciel qui recevra les messages (gardez ceci en tête pour la suite du billet). Aussi, en ce moment, parmi les principaux clients de messagerie instantanée basés sur Jabber, on assiste à une véritable régression : on passe de la simplicité d'un logiciel de conversation à l'usine à gaz du logiciel qui veut tout implémenter. Voici donc mon point de vue concernant cette manie qu'ont ces projets principaux de vouloir à tout prix intégrer toutes les fonctionnalités offertes par Jabber/XMPP.
Premièrement, soyons logiques : que faire avec un client Jabber ? Gérer ses contacts, sa présence et discuter avec ses contacts et dans des salons de discussion. Le reste n'est qu'artifice. Seulement voilà, il suffit de voir Gajim (le client que j'utilise) qui, dans sa version de développement, est atteint d'une véritable folie d'intégration. Notamment avec PEP, qui permet l'échange d'informations passionnantes et vitales telles que la musique en écoute, l'humeur ou l'occupation de quelqu'un. Si vous voulez plus d'informations sur cette extension du protocole XMPP, il y a le billet d'Omega résumant tout ça.
Et là, même problème : les clients Jabber (ou tout du moins leurs développeurs) veulent que tout passe par eux. Beurk. Je disais au tout début du billet, dans un succin rappel de ce qu'est Jabber, qu'il existe la possibilité de se connecter simultanément au même compte, ce n'est pas si anodin que ça. Et pour démontrer que la philosophie selon laquelle tout-doit-passer-par-le-client est une mauvaise idée, je vais prendre l'exemple de la musique.
Si Bob écoute du gros-hip-hop-de-r3b3lZ sur son logiciel de lecture de musique et qu'il veut frimer auprès de ses contacts par le simple fait de montrer ce qu'il écoute, que se passe-t-il ?
- Le lecteur de musique doit implémenter une méthode d'envoi des données propre au client de messagerie qu'il utilise à condition que ce dernier implémente le nécessaire de son côté : si Bob décide de changer de client ou de lecteur de musique, peut-être bien que le support ne sera plus existant
- Le lecteur de musique ne va implémenter une méthode que pour les clients de messagerie les plus connus et les plus populaires, laissant de côté les autres
- Bob est obligé d'avoir un client de messagerie instantanée ouvert et connecté
- Le client de messagerie instantanée de Bob gagne le Trophée International du plus beau score à htop \o/
- premièrement, dans le code de decibel-audio-player (non-hébergé sur le net où bien j'ai mal cherché), il y a un fichier src/modules/IMStatus.py qui contient le nécessaire pour contacter les clients de messagerie principaux)
- deuxièmement, un autre exemple où le problème a été pris carrément dans l'autre sens (c'est le client de messagerie instantanée qui attend les événements envoyés par le lecteur de musique). Mais les inconvénients restent les mêmes : seuls les logiciels de lecture audio principaux (ou tout du moins, ceux connus des développeurs) sont implémentés : music_track_listener.py (dans Gajim).
D'autant que, comme il est rappelé sur cette page, il est relativement simple de travailler sur une intégration Jabber/PEP. Malheureusement, aucun lecteur de musique connu ne l'implémente. Alors, certes, on peut penser que ce n'est pas non plus le rôle du lecteur de musique d'aller se balader sur le net pour avertir les gens de ce qu'il fait en ce moment. Mais cet argument ne tient pas vraiment la route : presque tous les lecteurs de musique implémentent maintenant des choses comme la soumission des écoutes à Last.fm (le genre de service pas très utile mais ultra-populaire, m'étant moi-même fait prendre au jeu).
D'ailleurs, pour mon projet Bluemindo, j'ai développé un plugin permettant justement d'envoyer des notifications via PEP (jolie capture d'écran) alors qu'Omega a développé un robot pour MPD. Cette façon de faire semble plus logique puisque c'est le lecteur de musique qui lit la musique, donc, si quelqu'un doit avertir, c'est lui. Le client de messagerie instantanée n'a rien à voir là dedans.
Du coup, une seule chose à retenir de ce billet :
- aux développeurs de clients de messagerie instantanée : allégez ces usines à gaz de ces fonctionnalités qui ne leurs sont pas propres
- aux développeurs de lecteurs de musique : ajoutez à vos options les notifications PEP (et arrêtez de pourrir les messages de statut des gens)
Seul bémol à tout ça, dans mon exemple, un problème va se déplacer et les logiciels de lecture de musique vont finir par devenir des usines à gaz (quoique, la majorité des lecteurs de musique sont déjà des grosses usines à gaz inutilisables, non ?). D'où un certain intérêt pour des projets à suivre comme lastfmsubmitd et pourquoi pas un équivalent xmppsubmitd ?
Aidez Bob à frimer de la meilleure façon possible.
Publié le samedi 20 septembre 2008, par xbright dans la catégorie : Divers - Lien permanent
Commentaires
16 commentaires
samedi 20 septembre 2008
23:49
Ouais, que mon lecteur de musique se connecte à mon compte jabber pour dire ce que j'écoute, c'est cool, mais si ça ouvre un popup « louiz' vient de se connecter » à tous mes contacts dès que je mets « play » sur mon lecteur, ça craint.
Sinon, oui, c'est évidemment cette méthode que j'utiliserais, si y'avait pas cet inconvénient idiot.
Et pour la vidéo et l'audio, ça doit pas être le client de messagerie qui devra s'en occuper ?
— louiz'43 commentaire(s) - Petit floodeur
samedi 20 septembre 2008
23:53
Ouais mais ça c'est un petit bugounet de l'implémentation PEP de Bluemindo et ça sera corrigé. :)
Moi, j'dois sûrement être un des seuls rabat-joie à penser que les audio/vidéo conférences c'est kikoolol, mais c'est pas grave. Ceci étant, ça reste dans « discuter avec ses contacts », non ? Donc, ça a sa place dans un client de messagerie instantanée qui décide de l'implémenter.
— xbright363 commentaire(s) - Squatteur <3
dimanche 21 septembre 2008
00:00
Ouais, d'ailleurs j'attends que tu corriges ce bug ;)
Perso l'audio et la vidéo, je m'en fous, mais ça sert à plein de gens, et je comprends que ça puisse même être très important pour certains.
Mais bon, que gajim aille demander à rhythmbox ce qu'il écoute, plutôt que ce soit rhythmbox qui s'en occupe, je vois pas trop ce qui est dérangeant. C'est pas la solution parfaite, mais si rhythmbox se décide pas à implémenter un truc qui communique à mon compte jabber, je préfère que gajim s'en occupe.
Et de toute façon, ces problèmes risquent d'être réglés (pour gajim en tout cas) avec l'arrivée des plugins :o
Suffira de virer les plugins qui nous intéressent pas.
Donc je finirai sur une note super trop top moumoute :
« manu: mais il n'y a pas de problème ! »
— louiz'43 commentaire(s) - Petit floodeur
dimanche 21 septembre 2008
00:10
Bon j'croyais que tu allais... Je vois... En fait tu laisses le choix aux lecteurs.
Vu que t'en parles pas dans ton billet. T'abordes pas le sujet des logiciels dit " messageries instantannées " qui sont en réalité, eux aussi de vrais et grosses usines à gaz de merde.
Sans trop donner de nom, je dirais Gajim ou Pidgin!
Est-ce encore un billet publicitaire de plus pour bluemindo ? Oui!
D'ailleurs les trois premiers commentaires, le prouve assez bien.
Faudrait que tu choisisses vraiment de quoi parler. Je crois que le titre «Jabber et les usines à gaz» est mal choisit.
Ce qui aurait été mieux pour toi c'est:
— le fils de terrien« Pep et mon Bluemindo d'amour que j'aime, vous en pensez quoi les petits cons? »
3 commentaire(s) - Trolleur égaré
dimanche 21 septembre 2008
00:29
C'est pas tant que ça soit dérangeant pour toi, utilisateur final, mais c'est assez dérangeant sur le principe. En fait, Jabber ça permet plein de choses mais il n'est à mon avis pas judicieux de tout faire passer par un seul et unique logiciel.
Et je ne vois pas le rapport avec les plugins. Parce que fonctionnalité optionnelle ou pas, ça reste en dehors du champ d'action d'un client de messagerie instantanée. Ce genre d'applications est faite pour discuter, pas pour envoyer des notifications d'écoute. La question n'est pas d'activer ou non une fonctionnalité, elle est toujours là. La question de fond est : est-ce que c'est vraiment à ce logiciel de faire ça ? Clairement non.
Et puisqu'on est dans la folie des citations, en voici une autre :
<davux> non mais la notion de client jabber c'est idiot, faut bien le dire
<davux> (le premier qui quote se prend une baffe)
<davux> je veux dire, client de messagerie instantanée ok
<davux> mais du coup ça veut dire que user tune ça a rien à foutre là, par exemple
Et sinon, terrien, tu diras à ton fils que non, ce n'était pas un billet pour faire de la publicité pour Bluemindo, j'aborde juste le sujet à un moment, mais ce billet concerne plutôt une mauvaise habitude de certains logiciels, c'tout.
— xbright363 commentaire(s) - Squatteur <3
dimanche 21 septembre 2008
00:48
Si c'est de la publicité déguisé pour bluemindo, car a la rigueur il doit y avoir une ligne seulement sur pep, et le reste du paragraphe décrit l'utilisation de bluemindo.
Ou alors, dans le pire des cas, je persiste et j'insiste change ton sujet en
« Publicité pour bluemindo, mais pep c'est de la merde. »
— le fils de terrien3 commentaire(s) - Trolleur égaré
dimanche 21 septembre 2008
01:08
Le fond du problème n'est pas PEP qui est là un exemple plus que parlant, mais la manie qu'ont ces clients de messagerie instantanée de tout vouloir implémenter, ce qui aboutit à en faire de grosses usines à gaz qui en deviennent assez repoussante. :P
— xbright363 commentaire(s) - Squatteur <3
dimanche 21 septembre 2008
01:46
moi je remercie YDB et MsieurHappy de m'avoir guidé vers la lumière de mcabber !
Pas chiant, et puis utilisable avec GNU/Screen facilement sur mon serveur connecté 24/24h.
Le plus bandant c'est que avec screen j'alterne les fenêtres mcabber, weechat-curses et nano!
C'est vraiment génial tout ces p'tits trucs en ligne de commande qui ne consomme rien du tout, il me manque juste un bon gestionnaire FTP. Vraiment un très beau jeux d'enfants.
— le fils de terrien3 commentaire(s) - Trolleur égaré
dimanche 21 septembre 2008
03:26
Je vois toujours pas le rapport entre jabber et une usine à gaz.
— fluonimousJabber serait-il une nouvelle source d'énergie? Non.
Les usines à gaz permettent-elles d'envoyer des messages à tes potes? Non.
C'est l'hôpital qui se moque de la charrue avant les boeufs, n'importe quoi.
18 commentaire(s) - Trolleur égaré
dimanche 21 septembre 2008
07:29
Et bien... il n'y a plus qu'à attendre une réelle intégration du framework Empathy au sein de GNOME, et l'on devrait tendre vers ce genre de fonctionnalités.
— SamaelhCela devrait commencer d'ici 6 mois normalement, pour la 2.26 :)
1 commentaire(s) - Trolleur égaré
lundi 22 septembre 2008
20:22
C'est déjà ce que tente de faire le framework empathy, non ? Il gère toutes les connections des IM (XMPP et autre...) et fourni des API simples pour que des softs utilisent des "services" fournis par les protocoles IM. Genre le plugin Collaborate d'abiword. Ça me parait effectivement la meilleur voie de developement, mais bon en attendant dans l'idée d'un logiciel par protocole, l'implémentation d'un max de fonctionnalité s'est un peu obliger non?
— Guyome2 commentaire(s) - Trolleur égaré
mardi 23 septembre 2008
20:12
Vous êtes bien gentils avec vos bizarreries[1] à la sauce GNOME microsoftisé, mais ceux ci n'ont d'utilité que pour les protocoles de messagerie instantanée *fermés* (et dont le développement ou même la vie dépendent d'un seule et unique entreprise) qui ne permettent pas de se connecter au même compte depuis plusieurs endroits avec une gestion fine des ressources et priorités (ce que permet Jabber/XMPP). Au point de vue XMPP, donc, l'intérêt de ces choses me semble très limité puisque le protocole lui-même permet que chaque programme fasse ses petites affaires sans gêner les autres.
[1] Ouais, bizarreries, parce que Google me renvoie là dessus : http://live.gnome.org/Empathy
Et quand on lit rapidos la page et qu'on survole les captures d'écran, on voit un client *multi-protocoles pour GNOME* qui a pour but de fournir des librairies pour son intégration un peu partout ailleurs. Mouais. Rien à voir avec le billet, non ? Je parlais des clients *jabber* qui s'alourdissent en imposant de fait que passe par eux des choses qui ne les concernent pas.
D'ailleurs, toutes les solutions favorisant l'essor de protocoles fermés devraient être boudées par les développeurs consciencieux (qu'on retrouve pourtant souvent dans le milieu du logiciel libre) pour des raisons plus qu'évidentes. M'enfin, je ne pense vraiment pas qu'alourdir encore et encore des logiciels déjà bien costauds représente une solution viable, que ce soit sur le court ou le long terme.
De plus, l'informatique ne se résume (heureusement) pas à GNOME...
— xbright363 commentaire(s) - Squatteur <3
samedi 27 septembre 2008
02:38
L’alternative : Pizzja <http://trac.last-exile.org/pizzja >. Ça ne fonctionne pas encore, le code ne respecte pas la PEP 8 et autres habitudes Python, mais l’idée est vraiment bonne.
Totalement d’accord avec le billet.
— Merwok21 commentaire(s) - Trolleur de passage
mardi 14 octobre 2008
05:56
Comme dit plus haut, si c'est le lecteur de musique qui doit s'occuper de ça, il va devenir une usine à gaz également.
Je fait donc la contre-proposition d'intégrer une fonction de lecteur multimédia aux clients jabber, via par exemple mplayer, et je sors...
Plus sérieusement, les problèmes de convergence qui transforment des outils en usines à gaz n'est pas nouveau, et s'étend.
Entre le navigateur internet dont on voit des tentatives d'évolution vers lecteur multimédia connecté (miro), ou qui doit carrément devenir le système d'exploitation à distance (ultéo et autres), on ne va bientôt plus très bien savoir qui fait quoi, ce qui d'ailleurs explique peut-être pourquoi on peut recevoir des photos collées dans des documents MS Word avec les commentaires "voilà mes photos de vacances!" (sic!).
Et ça s'éloigne de la conception Unix des outils: faire une seule chose, la faire bien!
Mais alors, si c'est au lecteur multimédia de le faire, comment doit-il le gérer?
- Tout seul comme un grand en embarquant sa bibliothèque perso xmpp? Trop lourd!
- En utilisant une bibliothèque commune avec... qui?!
- En utilisant une infrastructure telle que Telepathy (freedesktop.org), et qu'arrivera-t-il à la portabilité?
Et le problème peut se reposer pour beaucoup de chose: est-ce vraiment le rôle du client jabber de proposer un tableau blanc? (Coccinella) ou faut-il passer par une solution basée sur un logiciel de dessin (inkscape), qui doit donc embarquer une bibliothèque xmpp!!
Où s'arrêtera la simple communication, et où commencera le travail collaboratif?
Je peux aussi soulever la question du "texte riche" avec le support des balises xhtml dans les clients jabber. Si je peux avoir du gras/italique/souligné de toutes les couleurs qui clignotent, je vais aussi demander le support du mathml (standardisé, les plugins LaTeX c'est bien mais à ce que je sache, ce n'est pas standardisé), et finalement ne vais-je pas progressivement transformer mon client jabber en navigateur web?? Et pourquoi ensuite ne pas ajouter pour le confort des plugins pour lire les PDF envoyés via Jabber, et vous devinez la suite...
Tout le monde réclame le support de la VOIP et vidéo, est-ce le travail de ce qui au départ est censé être un client de messagerie par écrit? Oui sous prétexte que les autres font pareil?
On peut en parler longtemps, de ce sujet!
— maclag1 commentaire(s) - Trolleur égaré
mardi 27 janvier 2009
07:57
Je pense que avoir une VOIP c'est faire de son logiciel une usine à chiotte, je m'explique.
Il y a plusieurs méthodes de communication sur Internet, le clavier, la souris, l'écran mais aussi l'imprimante, je suis de ceux qui peuvent transformer un imprimante en FAX TCP/IP ! Oui croyez le ou non, mon imprimante fonctionne par IPv6;
— fabriceJ'utilise un protocole aux dimensions d'une flûte à gazon. Mon arme de propagande est donc le cyber-fax. Je suis l'homme qui agit par spam-print (en français spam-primante (mélange de spam et imprimante)) . La voIP est une leçon de morale qu'il faut retenir, l'échec et le desespoir humain, voulant repousser les faits et les médias de masses vers la communication extra-blog-worldwide ; Le surdimensionalisme, de l'execution d'un serveur permet en outre, d'agir sur les voies des cables, par bytes et autres éléments, facilitant la communication des machines. Ma façon de voir les choses, permet d'agir en tout conséquence sur chaqu'une des fabriques industrielles de l'ex empire ottoman. Voyez quand même, que je peux être fort sur ce point faible. Ma personnalité exige que je puisse feindre les moindres systèmes informatisés à distance. La configuration de l'administration d'un micro sur une simple prise électronique d'ordinateur, peut tout à fait basculer dans les mains du diable. L'opposition par exemple d'une bonne utilisation commerciale d'un élément "microphonique", la personne mineure agissant sans scrupule à enregistrer sa voix, permettra au pédophile de capturer plus facilement son empreinte, il est donc préconcevable d'obtenir un simple appel téléphone d'une personne qui déguise sa personnalité, les intrusions sont extremes, les faibles utilisent encore back orifice. Faut vouloir a tout prix, l'achat d'un casque-multifonction avec micro, seulement pour Skype par exemple. Skype propose des services d'offres d'achats en ligne pour leurs produits fabriqués en Chine. Maintenant, à vous de choisir. Notre époque est résolument de mauvaise réalisation architecturale. Le code est dégueulasse, sal, voir pire complètement obselète. L'appat du gain rend les choses difficiles. Choisissons la sympathie du peule pour mieux nous organiser sur internet. Non à la VoIP ! Ce n'est pas le bon avenir.
4 commentaire(s) - Trolleur égaré
mardi 27 janvier 2009
08:12
Je voudrais quand même donner mon avis sur Jabber.
Il existe l'alternative d'une puissance mondiale dans notre monde, elle n'est ni russe, ni américaine, ni européenne. Notre source provient d'un pays qui n'existe pas encore. Ce pays sera signer dans le prochain accord, je ne vous parles pas d'israël, on leur a offert un bout de terre pour les casés momentanément, histoire qu'on ne leur entend pas trop brailler dans nos oreilles. Ma foi, je ne m'exposerais pas trop la dessus. Oh grand diable que tu es plaisant ! J'en prendrais mon pied avec toi ! Hrmm (j'ai oublié, je suis sur le blog de xbright) hrm, hrm !
Pour en revenir au sujet, je suis sûr qu'il pourrait se faire une pièce de théâtre sur jabber, il y a une forte diversité de personne voulant aller plus haut, aller plus loin, poursuivre leurs études sur internet. On le sait bien, les grandes universités américaines investissent dans le virtuel, il y a des coins de bavardage sur Second Life, réservé aux étudiants, c'est tout un enjeux économique. Si par exemple, l'univers 3D de Second Life, qui n'est autre qu'un " T'Chat 3D " était reposé sur une technologie propre, dont les animations seraient faites a partir de vectoriel libre, pour donner comme exemple le .svg . On pourrait le complémenter par un code xml, pour faciler la tache vers une intégration XMPP ! Voilà, une solution, qui serait bonne, un Second Life for xmpp sous Gnu/GPL par exemple ?
Moi je dis juste ça, après je ne dis rien. On sait tous que l'impossible n'est possible qu'a partir du moment ou il n'y a plus aucun survivant. La vérité, c'est que le singe ne descend pas de l'homme. Moi, je suis pourtant sûr à 100% qu'il existe une alternative à Adobe ou Macromedia, par exemple. Je ne donnerais pas une liste d'entreprise, éditrice de logiciel, mais voyons quand même, qu'il y a de l'avenir. À condition de ne pas se renfermer sur de petits trucs sans aucuns interets, comme la VoIP. Où la webcam. Faut voir plus loin que son nez. Mais non, je rigole. Faites ce que vous voullez.
— fabrice4 commentaire(s) - Trolleur égaré