Dotclear

Vous n'êtes pas identifié(e).

Annonce

13 février 2024 Sortie de Dotclear 2.29

#1 2016-11-14 14:24:57

JcDenis
Membre
Lieu : Lyon, France
Inscription : 2007-08-31
Site Web

Webmention

Webmention est une façon simple de notifier toutes les URL contenus dans un billet. Du coté réception, c'est une façon de recevoir des notifications quand on vous cite. C'est un système proche des Trackbacks/Pings.

La recommandation W3C est la: https://www.w3.org/TR/webmention/
Et le ticket sur le HG est la: http://dev.dotclear.org/2.0/ticket/1917

J'ai commencé à faire un plugin pour tester le système mais comme j'ai tendance à vite partir trop loin, je préfère en discuter ici.
Enfin je pose mes questions dans un premier temps ici car si le système de Webmentions est bien et pas trop lourd, il sera intégré à la distribution.


Cordialement,
_JC | Intérimaire | En mode invisible

Hors ligne

#2 2016-11-14 14:26:20

JcDenis
Membre
Lieu : Lyon, France
Inscription : 2007-08-31
Site Web

Re : Webmention

Je n'en suis qu'au début, et je test simplement le concept, et je suis loin d'avoir tout implementé la recommandation.

Pour l'instant, j'ai créer simplement un parser qui récupère les liens contenu dans un billet, pour envoyer une webmention (un ping) à ces liens, à chaque création/mise à jour du billet.
De l'autre coté, j'ai ouvert une URL (endpoint) public pour recevoir les mentions venues d'ailleurs.
A l'instant T, je stock une trace des liens envoyés et reçus dans la table meta.

Mes premières questions sont:
- Doit-on envoyer les mentions aux liens contenus dans un billet en automatique, ou doit-on faire comme pour trackback un onglet à part ? Sachant que la recommandation est d'envoyer de nouveau les mentions à chaque modif de billet.
- Doit-on laisser les paramètres (activation, protection contre les self URL/domaine) aux super admin ou descendre plus bas
- Que fait-on des mentions reçus ? on crée un commentaire (sachant que le commentaire non pas de type (commentaire ou trackback)

Les système de Webmention est très proche des Trackbacks, sauf que c'est à celui qui recoit une mention de retourner chercher/verifier l'info, c'est aussi un risque en cas de flood, il faudra en tenir compte.


Cordialement,
_JC | Intérimaire | En mode invisible

Hors ligne

#3 2016-11-14 16:24:31

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : Webmention

Perso je gérerai les webmentions comme les pingbacks le sont déjà dans Dotclear. Après tout ils sont très similaires, non ?

Donc pas de réglages particulier, à part l'activation si tu le souhaites, mais pour moi ça relève de la même logique que les trackbacks. Donc tout ce qui concerne les trackbacks concerne aussi les webmentions, comme les pingbacks d'ailleurs.

(réflexion à chaud)


Dotclear addicted since 2004

Hors ligne

#4 2016-11-14 16:46:25

JcDenis
Membre
Lieu : Lyon, France
Inscription : 2007-08-31
Site Web

Re : Webmention

Franck a écrit :

Perso je gérerai les webmentions comme les pingbacks le sont déjà dans Dotclear. Après tout ils sont très similaires, non ?

Donc pas de réglages particulier, à part l'activation si tu le souhaites, mais pour moi ça relève de la même logique que les trackbacks. Donc tout ce qui concerne les trackbacks concerne aussi les webmentions, comme les pingbacks d'ailleurs.

(réflexion à chaud)

Donc zéro onglets/réglages, (juste l'activation global qui du coup ne sert a rien puisqu'elle existe dans le module de plugins) et quand même une case à cocher dans l’édition de billet histoire de pas renvoyer le bouzin si c'est juste une correction d'othografffe. Ça me va.


Ensuite, on fait comme les trackbacks ? un commentaire ? Mais comment je le range ? Comme un commentaire, comme un trackback ? Il n'y a pas de comment_type dans Dotclear.


Cordialement,
_JC | Intérimaire | En mode invisible

Hors ligne

#5 2016-11-14 21:06:38

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : Webmention

JcDenis a écrit :
Franck a écrit :

Perso je gérerai les webmentions comme les pingbacks le sont déjà dans Dotclear. Après tout ils sont très similaires, non ?

Donc pas de réglages particulier, à part l'activation si tu le souhaites, mais pour moi ça relève de la même logique que les trackbacks. Donc tout ce qui concerne les trackbacks concerne aussi les webmentions, comme les pingbacks d'ailleurs.

(réflexion à chaud)

Donc zéro onglets/réglages, (juste l'activation global qui du coup ne sert a rien puisqu'elle existe dans le module de plugins) et quand même une case à cocher dans l’édition de billet histoire de pas renvoyer le bouzin si c'est juste une correction d'othografffe. Ça me va.


Ensuite, on fait comme les trackbacks ? un commentaire ? Mais comment je le range ? Comme un commentaire, comme un trackback ? Il n'y a pas de comment_type dans Dotclear.

Comme pour les pingbacks, sous forme de trackbacks. C'est du lien entrant/sortant, pas du commentaire local.


Dotclear addicted since 2004

Hors ligne

#6 2016-11-15 07:32:29

JcDenis
Membre
Lieu : Lyon, France
Inscription : 2007-08-31
Site Web

Re : Webmention

Bon je réfléchie en écrivant (j'aime bien cette méthode en ce moment)

Je crois que comme dans le temps je suis parti un peu vite un peu loin. Comme tu le disais c'est quand même très proche du couple pingback/trackback, j'ai regardé d'un peu plus près la class dcTrackback, il faut réécrire quelques bouts de fonctions d'envoi/réception/test, mais la trame est la même. Sauf que...

Sauf que la recommandation recommande (oh!) d'envoyer un ping, aux URLs déjà sonnées en cas de modification du billet (là, pas de problème) mais aussi en cas de suppressions de lien dans un billet ou suppression du billet lui même, et là ça cloche, enfin j'en suis là.
A première vu si cette partie de la recommandation est gardée, l'intégration à DC serait un plus permettant par exemple de faire facilement un diff des liens avant/après modification/suppression du billet...

Bref, je vais arrêter d'écrire en réfléchissant sinon je vais en faire des pages !


Cordialement,
_JC | Intérimaire | En mode invisible

Hors ligne

#7 2016-11-15 16:49:02

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : Webmention

Je pense que tu arrives (doucement) à la même conclusion que je m'étais faite il y a quelque mois, à savoir que ça sera plus rapide à intégrer directement dans le core que d'implémenter ça sous forme de plugin :-)

Pour la suppression d'URL, j'avais zappé ça… Faut que j'y réfléchisse.


Dotclear addicted since 2004

Hors ligne

#8 2016-11-16 06:44:07

JcDenis
Membre
Lieu : Lyon, France
Inscription : 2007-08-31
Site Web

Re : Webmention

Oui je réfléchie beacoup pour pas grand chose ;)

Sinon pour le problème de ping de liens supprimé, ça doit pouvoir se faire assez rapidement en récupérant les liens soit de la table ping, soit du contenu, avant la modification/suppression du billet puis faire un diff après.


Cordialement,
_JC | Intérimaire | En mode invisible

Hors ligne

#9 2016-11-16 12:07:19

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : Webmention

JcDenis a écrit :

Oui je réfléchie beacoup pour pas grand chose ;)

Sinon pour le problème de ping de liens supprimé, ça doit pouvoir se faire assez rapidement en récupérant les liens soit de la table ping, soit du contenu, avant la modification/suppression du billet puis faire un diff après.

À mon avis les liens enregistrés dans la table de ping devrait suffire. A priori pas besoin de prévenir ceux qui ne l'ont jamais été et qui vont en plus disparaître du billet :-p


Dotclear addicted since 2004

Hors ligne

#10 2016-11-18 06:37:59

JcDenis
Membre
Lieu : Lyon, France
Inscription : 2007-08-31
Site Web

Re : Webmention

J'essaie d'intégrer dans Dotclear ce que j'ai fait en plugin avant mais j'arrive dans une impasse...

Du coté des sortants, pour les trackbacks, on choisi ceux à qui on veut ou non envoyer un ping, il sont alors ajoutés à la table ping, alors que pour les webmentions on devrait le faire en auto pour tous les liens (pour un suivi tel que décrit dans la recommandation), du coup je ne peux pas utiliser la table ping pour faire deux choses différentes...

Du coté des entrants, idem, les trackbacks reçu créés un commentaire (comment_trackback=1), les webmentions reçu doivent faire de même, sauf qu'après comment différencier les trackbacks des webmentions ? (notamment pour la suppression des liens disparus lors de mise à jour de pages distantes qui nous reping)

Je pense pas être très clair, mais en gros en envoie ou réception on a un problème de conflit des enregistrements différenciables. Des idées ?


Cordialement,
_JC | Intérimaire | En mode invisible

Hors ligne

#11 2016-11-18 07:12:43

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : Webmention

Vais y réfléchir, mais pas ce matin (plutôt dans l'aprème ou ce week-end).


Dotclear addicted since 2004

Hors ligne

#12 2016-11-18 14:57:16

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : Webmention

Bon, dans un premier temps, je ferais l'impasse sur cette notion de « systématique » et je gérerais ça comme les trackbacks/pingbacks.

Les cas particuliers que tu mentionnes ne doivent pas être si fréquents je pense.

Puis si jamais on a des retours négatifs la dessus, on pourra toujours prévoir un moyen de différencier les types (tb = 1, pb = 2, wm = 3, …) pour les entrants, quand aux sortants on pourra aussi modifier la table pour inclure ce type.


Dotclear addicted since 2004

Hors ligne

#13 2016-11-18 18:03:28

JcDenis
Membre
Lieu : Lyon, France
Inscription : 2007-08-31
Site Web

Re : Webmention

Donc squeezer l'aspect automatique ainsi que maintient (màj), juste ajouter le format "webmention" à la réception et à l'envoie de trackbacks coté code, et ne faire aucune différence coté écran. C'est un peu maigre mais pourquoi pas.
A noter que de toute façon même en version "plugin", la traça des liens est un peu tordue...
J'ai quelques autres petits soucis comme comment intégrer proprement la balise dans le body>head des pages, j'ai l'habitude avec les plugins d’utiliser le behavior publicHeadContent mais la...

Bref, je continue d'explorer différentes solutions, de la plus light à la plus complète et je reviens faire des propositions une fois testées.


Cordialement,
_JC | Intérimaire | En mode invisible

Hors ligne

#14 2016-11-21 02:08:05

JcDenis
Membre
Lieu : Lyon, France
Inscription : 2007-08-31
Site Web

Re : Webmention

C'est encore moi :)
L'intégration avance, ça ping-pong, et du coup j'ai une question concernant l'ordre des choses...
Pour une URL trouver dans le billet on va chercher quel(s) service(s) elle sait utiliser, si elle en reconnait plusieurs, on ne va pas sonner sur tous ses services, du coup quel ordre de préférence utiliser ?

1) Pingback
2) Trackback
3) Webmention

ou bien ?


Cordialement,
_JC | Intérimaire | En mode invisible

Hors ligne

#15 2016-11-21 06:54:39

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : Webmention

Pour l'instant (dans le code) c'est Trackback d'abord, puis ensuite Pingback

Ajoute Webmention à la fin, non ?

De toute façon, à la fin, le résultat est quasi le même, ça aura sonné en face ;-)

Maintenant on peut prévoir un réglage de blog avancé qui permette de choisir l'ordre, mais j'suis pas certain que ce soit réellement indispensable.


Dotclear addicted since 2004

Hors ligne

#16 2016-11-21 12:39:39

JcDenis
Membre
Lieu : Lyon, France
Inscription : 2007-08-31
Site Web

Re : Webmention

+1 pas envie d'alourdir le truc avec des paramètres qui ne serviront jamais :)
Et oui c'est Trackback en premier.


Cordialement,
_JC | Intérimaire | En mode invisible

Hors ligne

#17 2016-11-22 07:25:54

JcDenis
Membre
Lieu : Lyon, France
Inscription : 2007-08-31
Site Web

Re : Webmention

Re, décidément je n'arrête pas avec mes questions !
J'ai quasi fini et c'est plutôt simple et efficace. (même si du coup on squeeze quelques trucs)

Suite aux remarques faites dans ce fil, je pense quand même faire une mini plugin par la suite pour ajouter deux fonctions de la recommandation mais qui sont trop lourdes à intégrer dans le core amha. Le re-ping des liens effacés d'un billet modifié et le re-ping des liens effacés d'un billet effacé. C'est faisable directement dans la classe dcBlog mais pas propre, je pense qu'il vaut mieux passer par un plugin additionnel et des behaviors.

Z'en pensez ?

PS: En attendant je continue quand même à cherche à le faire simplement dans dc.


Cordialement,
_JC | Intérimaire | En mode invisible

Hors ligne

#18 2016-11-22 11:38:06

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : Webmention

J'suis d'ac pour les fonctions avancées → plugin


Dotclear addicted since 2004

Hors ligne

#19 2016-11-23 07:28:02

JcDenis
Membre
Lieu : Lyon, France
Inscription : 2007-08-31
Site Web

Re : Webmention

C'est commité.
Je prépare un plugins pour le reste mais ça sera pas tout de suite hein :)


Cordialement,
_JC | Intérimaire | En mode invisible

Hors ligne

Vous n'êtes pas identifié(e).

Pied de page des forums

Sites map