[Python] avantage de xmpp sur les websocket ?

Pourquoi wmpp ne decolle pas

a marqué ce sujet comme résolu.

salut, je cherche une solution simple pour creer une messagerie entre joueurs par robots interposés (filtrage,regles,anti-triche…). j ai besuin de pubsub, et de webhook.

je viens de découvrir l’api Slack qui semble intéressante (mais non-libre). et je me tatais sur le protocole xmpp qui semble sous-coté . qu’en pensez vous ?

peut on associer asyncio / trio / aiohttp avec xmpp ?

+0 -0

Salut,

En intégration de messagerie instantanée j’y connais pas grand chose mais j’avais cherché des logiciels de messageries instantanées en tant qu’utilisateur.

Et je trouvais que xmpp est en bonne voie aussi, mais sa caractéristique extensible semble rendre sa gestion compliquée pour réussir à gérer tout comme il faut. (la mise en oeuvre la plus complète que j’ai trouvé de xmpp c’est movim qui est carrément un réseau social construit sur ce socle)

Tu t’intéressait à Slack, tu peux jeter un oeil à mattermost qui est son clone libre

Et enfin j’ajoute une autre messagerie instantanée très intéressante à la liste, c’est Matrix, qui ressemble un peu à un super IRC

+1 -0

Bonjour,

Websocket et XMPP n’ont rien à voir sur la forme (de même que sur la fonctionnalité ou sur les buts).

Websocket, c’est un framing très très simple (2–3 octets par message) qui permet de faire de l’orienté message sur du TCP, et un handshake composé d’une requête et d’une réponse HTTP « classiques ». Websocket a été créé pour permettre aux navigateurs d’initier des connexions de type asynchrone bidirectionnelle comme une socket classique, mais sans prendre le risque que des applications web puissent parasiter des protocoles préexistants plus que HTTP ne le permet (imagine si une simple page web pouvait se mettre à envoyer du SMTP). Websocket n’a donc pas vraiment d’autres fonctionnalités.

XMPP est un protocole très, très complexe basé sur des échanges de messages XML, destiné à couvrir (presque) toutes les formes de messagerie instantanée possibles, différents mécanismes d’authentification, et une interopérabilité entre des serveurs sans trop de rapport. Tellement complexe que Google l’a adopté, puis abandonné fut un temps, vraisemblablement pour des raisons d’évolutivité et de coût de maintenance.

Pour ton usage, tu peux simplement échanger quelques messages JSON sur une Websocket (si ton but est de faire quelque chose dans le navigateur, sinon une socket tout court peut convenir aussi).

Tu peux mutualiser n’importe quels protocoles réseau au sein d’une même boucle évènementielle avec asyncio. Tu peux aussi faire du XMPP sur du Websocket (techniquement).

Bonne journée,

+1 -0

@romantik je regarde tes liens ce week-end. @roanne y a t il une bibliothèque user friendly en xmpp, j’ai trouvé sleekxmpp.

oui ça à l’air complexe la messagerie et l’authentification. c’est comme cela que j’ai decouvert pyrebase. ce site montre flask avec firebase. https://youtu.be/aojoWWMN1r0

je me dis qu’il faut mieux se concentrer sur le coeur de mon projet, et de "déléguer" certaines parties critiques à des services pro qui feront vite et mieux. donc faire savoir connecter les bidules entre eux maintenant. comment "proteger" son code source dans ce cas ? qu’en pensez vous ? quelles solutions utilisez vous ?

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