Prefacio a la traducción
Esta es una traducción del primer borrador de Pingback. If you can read english fluently, there's nothing like the real thing
Como no soy traductor, este documento no ofrece nada más que mi promesa de que creo firmemente que no contiene errores de bulto y que refleja
fiélmente el documento original
Respecto a los anglicismos, yo los uso habitualmente al hablar y no pienso discutir sobre ello. He usado los términos que yo uso comunmente:
- "Blogware" para el software que utilizas como base (b2, blogalia, blogger,etc...) En el original se utiliza "blogging system"
- "Weblog" para weblog :) No me gusta "bitácora". En el original "blog"
- "Mensaje" y "poner un mensaje" para las anotaciones en un weblog. En realidad yo suelo utilizar "post" y "postear" pero entiendo que "mensaje"
puede servir. En el original "a post" and "to post"
- "Permalink" para los enlaces permanentes a cada "mensaje" en un "weblog". Lo he dejado tal cual porque "enlace permanente" no me gusta.
Pensé en usar "permaenlace" o "permanlace", pero no está
el horno para neologísmos :)
- denegación de servicio / denial-of service quedan así porque creo que todo el mundo lo entiende
Para cualquier cosa estoy disponible en mail y mort4ever@jabber.org (Jabber). Mi weblog está en http://mort.mine.nu:8080/b2/.
Gracias por la visita :)
Pingback
Pingback es un sistema que permite a un weblog recibir una notificación automática
cuando es enlazado desde otros weblogs. El mecanismo es completamente transparente para el
autor del weblog que realiza el enlace, no requiere la intervención del usuario y opera sobre el principio
del descubrimiento automático de todos los parámetros necesarios.
Un mensaje a un weblog utilizando Pingback funcionaría de la siguiente manera:
- Alice pone un mensaje a su weblog. Su mensaje incluye un enlace a un mensaje en el weblog de Bob
- El blogware de Alice contácta con el de Bob y le dice "Mira, Alice ha puesto un mensaje que enlaza
a uno de tus mensajes"
- Cuando alguien lee un mensaje en el weblog de Bob, su blogware se encarga de notificar que Alice
tiene un enlace a este mensaje
- Ahora los usuario pueden seguir este enlace hasta el mensaje de Alice y leer más
Permite el "enlazado a la inversa" -- poder ir hacia arriba en una cadena de enlaces
en vez de meramente seguirlos hacia abajo.
Cómo funciona: descripción técnica
Si lo único que quieres es usar Pingback no necesitas conocer esta parte. Es sólo para gente que
escribe blogware y quiere dotarlo de Pingback.
Pingback se basa en el weblog del que pone el mensaje mandando un "ping" XML-RPC al weblog al que está enlazando,
diciéndole que ha sido enlazado y de dónde viene el enlace.
Un mensaje de ejemplo, usando Pingback, a nivel técnico, iría de la siguiente manera
Por parte del weblog que pone el mensaje
- Alice pone un mensaje en su weblog, que incluye un enlace a un mensaje en el weblog de Bob (nos referiremos al
permalink del mensaje de Alice como aliceBlogPostPermalink y a la URL del enlace al weblog de Bob como bobBlogPostPermalink)
- El blogware de Alice extrae todos los enlaces externos del mensaje de Alice
- En cada enlace externo, se hace lo siguiente
- Petición del contenido de la página a la que se refiere el enlace. (Nota: puedes querer controlar esta petición,
concretamente su tamaño, ya que puede que no desees bajarte todo el contenido si este es muy extenso, ya que esto se convertiría en la práctica
en un DoS (denial-of-service/denegación de servicio) contra el weblog.
- Parsear el contenido de la página buscando la etiqueta LINK para el Pingback:
<link rel="pingback" href="http://bobblog/xmlrpcserver">
Si esta etiqueta no se encuentra en la página, el weblog de Bob no ofrece Pingback, así que lo dejamos aquí
- Si la etiqueta sí está en la página, entonces el atributo
href
indica la dirección del servidor XML-RPC al que debe hacerse el "ping" para notificar al mensaje de Bob que le están enlazando.
Ejecuta una llamada XML-RPC a la función pingback.ping(aliceBlogPostPermalink,bobBlogPostPermalink)
de ese servidor.
La parte del weblog enlazado
- El weblog de Bob recibe un ping del weblog de Alice (el enviado en el paso 3.3 mencionado arriba)
refiriendose a aliceBlogPostPermalink (el sitio desde el que se enlaza) y bobBlogPostPermalink
(la página a la que Alice ha enlazado)
- Confirma que bobBlogPostPermalink es reálmente un mensaje en su weblog
- Hace una petición al contenido de aliceBlogPostPermalin (Nota: de nuevo puede interesarte
controlar esta petición para prevenir denegaciones de servicio y puede que también comprobar el content-type del contenido que
devuelve el servidor)
- Verifica que el contenido obtenido contiene de verdad un enlace a bobBlogPostPermalink
- Recoge cualquier otro tipo de datos que se requieran del contenido de aliceBlogPostPermalink (puede incluir el enlace a bobBlogPostPermalink,
algún tipo de contexto, atributos del lenguaje de la página, etc...)
- Registra el pingback (dependiendo del blogware, esto puede incluir guardar los datos en una base de datos y/o reconstruir las páginas estáticas
que se refieran al pingback