SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano

273 Plugins, 191 contribs sur SPIP-Zone, 59 visiteurs en ce moment

Accueil du site > Interactivité, échanges > Profil, avatars > Omniprésence > Omniprésence

Omniprésence

15 août 2009 – par davux – <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

5 votes

Permet d’accéder aux informations de « présence étendue » et d’activité d’un utilisateur Jabber (ça inclut les adresses Gmail).

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
  • État de présence :
    • Nom de l’état (connecté, absent, déconnecté, etc.) : #JABBER_STATUS [2]
    • Icône représentant l’état : #JABBER_STATUS_ICON [3]
    • Texte libre : #JABBER_STATUS_TEXT
  • 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
  • Activité (doc) :
    • Nom de l’activité : #JABBER_ACTIVITY [2]
    • Icône représentant l’activité : #JABBER_ACTIVITY_ICON
    • Texte libre : #JABBER_ACTIVITY_TEXT
  • Musique en cours d’écoute (doc) :
    • Artiste : #JABBER_TUNE_ARTIST
    • Titre de l’œuvre : #JABBER_TUNE_TITLE

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)

Notes

[1Un argument {utilisateur@exemple.org} facultatif permet de spécifier l’identifiant Jabber (JID) pour lequel on souhaite afficher l’information. En l’absence d’argument, on récupère le JID dans le contexte.

[2On peut spécifier un code de langue comme deuxième argument facultatif, par exemple « fr » ou « fr_FR ». Sinon, c’est la langue du contexte qui est utilisée.

[3On peut spécifier un thème d’icône comme deuxième argument facultatif.

Retour en haut de la page

Vos commentaires

  • Le 16 août 2009 à 02:16, par davux En réponse à : Omniprésence

    En effet, c’était pas très clair. C’est corrigé, merci de la suggestion.

    Répondre à ce message

  • Le 15 août 2009 à 12:48, par RastaPopoulos En réponse à : Omniprésence

    « à 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.

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d'abord sur gravatar.com (gratuit et indolore) et n'oubliez pas d'indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Transaction : créer des formulaires avec paiement en ligne

    13 mars 2011 – 32 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Transaction est une extension du plugin de création de formulaires Formidable pour concevoir des formulaires de paiement en ligne et les connecter aux principales API bancaires françaises. Présentation Transaction introduit 3 nouveaux types de (...)

  • Formulaire de contact avancé

    23 mars 2009 – 1041 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Un formulaire de contact configurable, avec de multiples options.

  • Squelette Multi-Saisons

    19 février 2009 – 226 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Un squelette qui change de couleurs suivant les saisons, un graphisme tout en rondeurs et de très nombreuses options.

  • JQuery Masonry

    15 août 2011 – <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Ce plugin est un portage pour Spip du plugin jQuery Masonry de David DeSandro : http://masonry.desandro.com/ Principe Ce plugin réorganise les blocs de votre page page d’après une grille (de manière verticale et horizontale) pour réduire au maximum (...)

  • Thélia

    26 juin 2007 – 835 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Une approche basée sur l’utilisation conjointe des deux logiciels SPIP et Thélia pour la réalisation de sites de publication et de vente en ligne