• [^] # Re: Déplacer le problème ?

    Posté par (site web personnel, Mastodon) . En réponse au journal XMPP et (micro)blogage: la donne a changé. Évalué à 10. Dernière modification le 27 mai 2015 à 11:30.

    Dans l'idéal tout serait implémenté par tous les serveurs oui.

    Mais en pratique les implémentations sont soit inexistantes, soit incomplètes, soit ont des problèmes de performances.

    Alors pourquoi c'est comme ça ? La XEP-0060 et une XEP longue et complexe (c'est une des plus longues de XMPP), et de nombreuses choses sont optionnelles. Les implémentations sont souvent incomplètes pour une ou plusieurs de ces raisons:

    • beaucoup de serveurs et clients se concentrent plutôt sur la messagerie instantanée, même si je pense que c'est en train de changer

    • comme peu de clients utilisent pubsub de manière intensive, il y a peu de demandes pour améliorer les implémentations côté serveurs

    • beaucoup de choses optionnelles, donc même si on a une implémentation, on n'a pas forcément ce que l'ont souhaite

    • il y a des choses comme les signets (bookmarks ou XEP-0048) qui au départ n'utilisaient pas pubsub - qui n'existait pas - et qui ont ensuite été mises à jour pour utiliser pubsub. Comme la première implémentation marche, beaucoup ne voient pas de raison de changer.

    • et surtout c'est un gros boulot, un projet à part entière, il faut les ressources pour implémenter pubsub + le boulot déjà existant sur le serveur.

    Bref à mon sens c'est beaucoup plus logique d'avoir ça comme composant extérieur complet, que comme un parent pauvre du serveur. Et si on veut améliorer l'implémentation d'un serveur ça peut aller, mais tous les serveurs avec les dizaines de langages et d'architectures utilisés, c'est plus compliqué.

    D'autre part, nous bougeons beaucoup sur PubSub, et il peut y avoir de nouvelles XEPs à implémenter, qui mettront du temps à arriver dans les serveurs: avec la maîtrise du composant, on peut faire une implémentation immédiatement (et pour tous les serveurs !), la chaîne de développement est beaucoup plus rapide.

    Dans notre cas particulier, nous avons une extension non standard (pour le moment) qui permet d'envoyer un message à un groupe uniquement: vu qu'il n'y a pas de XEP associée, aucune chance de voir ça dans un serveur. Là on peut tester et améliorer avant de proposer une XEP.

    Enfin oui ces 2 XEPs sont beaucoup plus faciles à implémenter (il m'a fallu quelques jours pour Prosody alors que ce sont mes premiers modules pour ce serveur), regarde leur taille et compare à la XEP-0060 pour comprendre, et ça peut servir dans d'autres cas qu'un composant PEP/PubSub. D'autre part tout ce qui est nécessaire à faire un service PEP est obligatoire dans ces XEPs, alors que tout ce dont on a besoin dans PubSub ne l'est pas forcément. Donc si elles sont implémentées, on est sûr d'avoir ce qu'il faut.