XMPP (le protocole sous-jacent du système de messagerie instantanée Jabber) permet aux utilisateurs d’annoncer dynamiquement certains types d’information variable dans le temps. Parmi eux: l’avatar, l’état de présence, la musique qu’on écoute, etc.
Ce plugin permet donc de récupérer ces informations, à partir d’un JID (adresse Jabber) donné explicitement ou enregistré dans le profil d’un auteur.
Qu’est-ce qu’Omniprésence ?
Omniprésence est un bot Jabber qui, une fois que vous l’y avez autorisé (en l’ajoutant dans votre liste de contacts), se tient à jour des informations que vous annoncez via Jabber. Ces informations sont : état de présence (en ligne, absent, déconnecté, occupé, etc.), message de statut, avatar, humeur du moment, activité du moment, musique en cours d’écoute.
Une fois collectées, il publie ces informations via le protocole HTTP, ce qui les rend utilisables directement par n’importe quel site web via une API spécifique.
Une instance du bot tourne actuellement sur http://presence.jabberfr.org, mais le code est téléchargeable : si vous avez un serveur web, vous pouvez donc tout-à-fait fournir vous aussi un serveur Omniprésence.
Que fait ce plugin ?
Le plugin Omniprésence permet d’intégrer les informations fournies par un ou plusieurs serveurs Omnipresence dans un site SPIP. Il fournit pour cela plusieurs nouvelles balises [1], suivant le type d’information souhaitée :
- Avatar (doc):
- Avatar Jabber:
#JABBER_AVATAR
- Logo de l’auteur s’il en a un, sinon avatar Jabber :
#LOGO_AUTEUR
- Avatar Jabber:
- État de présence:
- Humeur du moment (doc):
- Nom de l’humeur:
#JABBER_MOOD
[2] - Icône représentant l’humeur:
#JABBER_MOOD_ICON
- Texte libre:
#JABBER_MOOD_TEXT
- Nom de l’humeur:
- Activité (doc):
- Nom de l’activité:
#JABBER_ACTIVITY
[2] - Icône représentant l’activité:
#JABBER_ACTIVITY_ICON
- Texte libre:
#JABBER_ACTIVITY_TEXT
- Nom de l’activité:
- Musique en cours d’écoute (doc):
- Artiste:
#JABBER_TUNE_ARTIST
- Titre de l’œuvre:
#JABBER_TUNE_TITLE
- Artiste:
Prérequis pour utiliser ce plugin
- Les auteurs qui souhaitent voir leur information affichée doivent ajouter le JID d’un bot Omniprésence à leur liste de contacts, puis fournir dans leur profil l’URL (commençant par http:// ou https://) du bot.
- Le cas le plus probable étant que l’on souhaite afficher l’information d’un auteur SPIP, il est nécessaire d’installer également le plugin Adresse Jabber (fournissant le champ JID sur les auteurs) si vous installez ce plugin.
- Le plugin ajoute un champ omnipresence_serveur aux auteurs. Il nécessite donc aussi le plugin Champs Extras 2 (requis de toutes façons par Adresse Jabber). Ce champ est utilisable dans vos squelettes via la balise #OMNIPRESENCE_SERVEUR
.

Configuration
Ce plugin utilise optionnellement CFG. Ce dernier permet de spécifier l’URL du serveur Omniprésence à utiliser pour les utilisateurs qui n’en ont pas indiqué dans leur profil. Si vous n’installez pas CFG ou si vous laissez ce champ de configuration également vide, l’URL suivante sera utilisée : http://presence.jabberfr.org
.

Discussion sur l’architecture
L’idée de ce plugin est née du plugin Gravatar, dont le code a servi de base pour développer Omniprésence. Merci !
Concernant le système Gravatar lui-même (pas le plugin), ce qui me gêne cependant est son aspect centralisé. Vu qu’il n’existe pas de manière standard de déclarer un avatar chez les hébergeurs de mail, pas vraiment moyen de faire autrement. Inversement, l’avatar Jabber étant intégré dans le compte lui-même, il n’y a pas ce problème structurel.
L’approche d’Omnipresence apporte malgré tout, malheureusement, une certaine “presque-centralisation” : actuellement, le seul serveur fournissant ce service est presence.jabberfr.org, ce qui oblige à donner notre avatar (via l’autorisation dans la liste de contacts) au bot de ce serveur. Cependant, la grosse différence avec Gravatar est qu’il est possible pour d’autres serveurs Jabber de fournir un service Omniprésence, utilisable de façon immédiate avec le plugin.
Une autre approche, plus directe, serait d’implémenter la connexion en tant que client Jabber par un plugin SPIP, et d’aller récupérer directement l’avatar de l’utilisateur via Jabber. À vos claviers...
À faire
- Trouver un moyen de découvrir automatiquement le serveur Omniprésence utilisé par un utilisateur d’après son JID, sans passer par un champ à remplir. (si quelqu’un a des idées, moi je sèche)
Discussions by date of activity
2 discussions
En effet, c’était pas très clair. C’est corrigé, merci de la suggestion.
Reply to this message
“à votre roster” ça ne veut pas dire grand chose pour la plupart des gens. Il vaut mieux mettre “ajouté à vos contacts” ou quelque chose dans ce genre.
Reply to this message
Add a comment
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Follow the comments:
|
