Attention, les frontends et le démon forment un tout, ce ne sont pas des applis différentes avec une bibliothèque jabber, le but n'est pas de gagner en simplicité par rapport à une bibliothèque.
Le démon n'a pas non plus le rôle de proxy: c'est lui qui gère toute la logique de l'application, les frontends ne servent qu'à représenter ça. Il se connecte et se déconnecte comme un client classique. Les choses que je transmets entre démon et serveur sont des choses qui se transmettraient de la même manière avec une bibliothèque (historique, roster list, informations de présence), bref ce n'est absolument pas un "nouveau serveur jabber" (un serveur fait quand même beaucoup plus de choses).
Le choix d'une archi autour d'un démon a été fait principalement pour les raisons suivantes:
- indépendance du serveur X, ça c'était dans mon cahier des charges, je voulais pouvoir redémarrer X en restant connecté
- les différents frontends peuvent s'utiliser en même temps: un use case qui me vient tout de suite à l'esprit parce que je l'utilise déjà comme ça: j'utilise le client graphique la plupart du temps, mais je déteste devoir aller dans les boites de dialogue quand je suis en console et que je veux juste envoyer un fichier, je peux utiliser l'outil en ligne de commande (jp) et envoyer directement mon fichier, tout en continuant l'utilisation normale du client graphique. OK, DBus suffit à ce use case, mais jp gère également la réception du fichier et la barre de progression, c'est déjà moins évident avec un client classique.
- une autre chose dans mon cahier des charges: je me balade régulièrement entre plusieurs ordinateurs (portable et fixe), et je voulais pouvoir avoir la même conversation sur les machines sans contorsions du type VNC. Oui je sais il y a les ressources, très utiles avec par exemple un compte au boulot et un compte à la maison, mais elles ne permettent pas de recevoir le même message sur les 2 clients en même temps (en cas de priorité égale, c'est le dernier connecté qui reçoit). Avec ce modèle démon/frontend je peux (tiens je vois pas d'équivalent français pour frontend).
[^] # Re: Oui mais
Posté par Goffi (site web personnel, Mastodon) . En réponse au journal SàT: un client jabber (et oui, encore !). Évalué à 2.
Le démon n'a pas non plus le rôle de proxy: c'est lui qui gère toute la logique de l'application, les frontends ne servent qu'à représenter ça. Il se connecte et se déconnecte comme un client classique. Les choses que je transmets entre démon et serveur sont des choses qui se transmettraient de la même manière avec une bibliothèque (historique, roster list, informations de présence), bref ce n'est absolument pas un "nouveau serveur jabber" (un serveur fait quand même beaucoup plus de choses).
Le choix d'une archi autour d'un démon a été fait principalement pour les raisons suivantes:
- indépendance du serveur X, ça c'était dans mon cahier des charges, je voulais pouvoir redémarrer X en restant connecté
- les différents frontends peuvent s'utiliser en même temps: un use case qui me vient tout de suite à l'esprit parce que je l'utilise déjà comme ça: j'utilise le client graphique la plupart du temps, mais je déteste devoir aller dans les boites de dialogue quand je suis en console et que je veux juste envoyer un fichier, je peux utiliser l'outil en ligne de commande (jp) et envoyer directement mon fichier, tout en continuant l'utilisation normale du client graphique. OK, DBus suffit à ce use case, mais jp gère également la réception du fichier et la barre de progression, c'est déjà moins évident avec un client classique.
- une autre chose dans mon cahier des charges: je me balade régulièrement entre plusieurs ordinateurs (portable et fixe), et je voulais pouvoir avoir la même conversation sur les machines sans contorsions du type VNC. Oui je sais il y a les ressources, très utiles avec par exemple un compte au boulot et un compte à la maison, mais elles ne permettent pas de recevoir le même message sur les 2 clients en même temps (en cas de priorité égale, c'est le dernier connecté qui reçoit). Avec ce modèle démon/frontend je peux (tiens je vois pas d'équivalent français pour frontend).