Soporte para etiquetas ActivityPub

Cuando se federar una publicación de Discourse al Fediverso, las etiquetas (hashtag) escritas en la publicación de Discourse deben convertirse en hashtags de ActivityPub. Actualmente, aparecen tal cual en, por ejemplo, Mastodon, pero no se reconocen como hashtags.

Las etiquetas son la forma principal de descubrir nuevos contenidos sobre un tema específico en el Fediverso. En este momento, si federas una publicación de Discourse sobre, por ejemplo, #Discourse, dependes de que tus seguidores compartan tu publicación federada, lo cual solo te llevará hasta las personas que ya conocen tu proyecto o foro de Discourse. Sin embargo, si las etiquetas fueran reconocidas, esas publicaciones federadas podrían ser captadas por personas interesadas en los mismos temas y que siguen esas etiquetas.

Ten en cuenta que la solicitud se refiere a las etiquetas escritas en la propia publicación, no a las etiquetas de Discourse de los temas federados. Esto da control al autor de la publicación federada para escribir etiquetas que puedan o no existir en la instancia de Discourse, pero que son relevantes para la publicación federada.

3 Me gusta

Lamentablemente, la forma en que Discourse utiliza las etiquetas de hashtag es actualmente incompatible con el uso más amplio de hashtags en las redes sociales… por lo que esto parece difícil.

Por ejemplo, #plugin se convierte en Plugin, #activitypub se convierte en activitypub… estas son referencias internas del foro y el contexto en el que se utilizan es diferente.

Podría escribir algo como esto en una publicación, por ejemplo:

¡Mantente atento a Announcements para conocer las nuevas funciones!

lo que no tendría sentido fuera del sitio cuando se federara como #announcements.

2 Me gusta

@awesomerobot Entiendo tu punto, pero… veamos esto desde una perspectiva centrada en el usuario en lugar de una centrada en Discourse.

Si los administradores de una instancia de Discourse deciden instalar el plugin ActivityPub y habilitar las funciones para federarse con “Mastodon”, realmente les importa difundir los temas de sus foros por todo el Fediverso. Las etiquetas de ActivityPub aumentan notablemente la probabilidad de que estas publicaciones federadas se difundan.

Mientras tanto, los autores de las publicaciones en Discourse tienen control sobre las etiquetas que escriben. Siguiendo esta solicitud de funciones, si escribieran #ActivityPub, esta cadena se convertiría en una etiqueta real en Mastodon, etc. Si quieren enlazar a, por ejemplo, su categoría de #anuncios pero no quieren que esto se federé como una etiqueta de ActivityPub, simplemente pueden enlazar a la URL de la categoría: Anuncios.

No es perfecto estéticamente, pero tanto los lectores de Discourse como los del Fediverso obtendrán el máximo provecho de estos enlaces.

1 me gusta

Sí, es posible que podamos idear un modo o una sintaxis diferente en las categorías de activitypub para soportarlo si hay suficiente demanda. Quizás nuestro autocompletado de etiquetas podría añadir una opción de etiqueta federada o algo similar además de los enlaces internos.

3 Me gusta

Bueno, las etiquetas (hashtags) son básicamente otra funcionalidad base porque es la única forma de encontrar a alguien a quien seguir, o algo, si se sigue una etiqueta.

Pero incluso si tuviéramos tal sistema mañana, el problema más importante seguiría ahí: el usuario/actor seguido.

Si una publicación de Discourse #1 (OP) pudiera encontrarse por una etiqueta, ¿quién se mostraría como remitente y a quién se podría seguir?

Solo tenemos un actor aquí al que se puede seguir, el actor de categoría/etiqueta, y ese no publica nada. Está impulsando/reenviando/compartiendo, como se quiera llamar. El editor real es un usuario de Discourse, pero a ese no se le puede seguir.

Si/cuando tengamos etiquetas, como #discourse, y con algo de magia sobreviva al proceso de limpieza de todo lo que parece texto enriquecido, el mensaje/toot que usa #discourse aparecerá si alguien lo usa para buscar seguidores.

Pero en ese caso, el usuario rastreable, el actor de etiqueta/categoría, desaparece y se muestra el usuario de Discourse sin seguidores.

Así que, básicamente, las etiquetas deberían estar ahí, pero hasta que tengamos algo sólido y rastreable para mostrar, no tiene sentido.

El sistema funciona bien Discourse ↔ Discourse. Pero Discourse ↔ Mastodon está más inacabado o en progreso. Y Discourse → Fediverse está más a nivel teórico, si no me equivoco totalmente.

1 me gusta

Quizás para ti no tenga sentido, pero para nosotros los hashtags son una característica bienvenida sin importar nada. Usamos la federación como un mecanismo para la difusión desde nuestro foro de Discourse hacia la apertura del Fediverso. Lo único que queremos es que la gente lea estas publicaciones federadas, les dé “me gusta”, las impulse, comente sobre ellas… y si hacen clic en el enlace al foro, aún mejor.

Todo esto se puede hacer independientemente del problema que presentas, que es válido pero ajeno a los hashtags.

Yo también. Pero te pierdes algo obvio. Digamos que @icaria@meta.discpurse.org escribe una publicación en Meta usando la etiqueta #activitypub y ese también es un actor. En ese momento, @activitypub@meta.discourse.org federará la publicación n.º 1 haciendo un impulso de toot y el escritor original es @icaria@meta.discourse.org.

  • El impulsor @acticitypub@meta.discourse.org puede ser seguido, pero nadie sigue nunca al actor que impulsa, y sus impulsos solo son visibles para sus seguidores (y aquí, de hecho, perdemos toda la publicidad).
  • El escritor @icaria@meta.discourse.org es alguien a quien a todos les gustaría seguir, pero nadie puede y, si lo intentan, la solicitud permanece en la etapa de “esperando aprobación”. Las publicaciones de ese usuario serían visibles localmente y en el feed federado, si alguien lo sigue, pero no puede tener seguidores.

Luego viene el usuario de Mastodon @jagster@kvarkki.nexus y ve ese impulso, porque está siguiendo a @activitypub@meta.discourse.org. De lo contrario, nunca podría ver ese mensaje. Él hace un impulso. En ese momento, @activitypub@meta.discourse.org desaparece y Mastodon, bueno, una parte limitada de él, ve a @jagster@kvarkki.nexus impulsando un mensaje de @icaria@meta.discourse.org — y ese usuario está… cerrado y es privado.

Y ahora volvemos a las etiquetas. En esa publicación hay una etiqueta #activitypub [1]. Entonces, alguien de una instancia mastodon.example.tld busca esa etiqueta y encuentra un toot de @icaria@meta.discourse.org.

¿Qué sigue? Ese usuario tiene dificultades para hacer algo, porque para el actor de Mastodon @icaria@meta.discourse.org es un usuario cerrado y privado. Y no hay ninguna señal de @activitypub@meta.discourse.org e incluso si hubiera alguna pista, a nadie le interesaría un actor que hizo un impulso. Es por eso que diría que la versión de ActivityPub de Discourse está hecha para este ecosistema, entre Discourses, y debido a que Mastodon/Fediverse funciona de manera diferente, hay un conflicto.

Sí. Las etiquetas son importantes. Pero no hay un uso real para las etiquetas hasta que tengamos un actor real al que las etiquetas conduzcan. Porque lo último que queremos hacer es dirigir a los usuarios a un actor que no se puede seguir.


  1. No sé cómo podría haberla, porque todo lo que parece texto enriquecido está invalidado y por eso Mastodon no puede mostrar negritas ni listas de Discourse, incluso Mastodon puede hacer eso ↩︎

No lo hacemos, entendemos el problema, es solo que no es un problema tan grande como la falta de hashtags para nosotros.

Esta es una solicitud de características sobre hashtags de ActivityPub. ¿Podemos usarla para discutir los hashtags de ActivityPub y mover el resto a su propio tema, por favor?

Lo estamos discutiendo. El punto es que, todavía, no tiene ningún sentido crear conexiones de etiquetas/hashtags porque no ayuda en absoluto, a menos que se resuelva la cuestión del actor seguido.

Es una cuestión de priorizar.

No te preocupes por el idioma. Sabes de qué se trata.

Ese es tu problema número 1 que no se puede resolver con hashtags. Los hashtags vienen después de que haya un actor que pueda publicar, ser encontrado y seguido.