Hola, ¿hay alguna manera de crear publicaciones en Discourse automáticamente a partir de las publicaciones en Discord?
¡Hola Sam! Bienvenido a nuestra comunidad. Echa un vistazo a Set up Discord notifications with the discourse-chat-integration plugin
En el futuro, intenta usar la búsqueda
: muchas preguntas ya se han discutido aquí y la búsqueda es bastante buena para ayudar a encontrarlas.
Gracias, pero ya lo busqué y esto no es lo que estoy buscando; esto es de Discourse a Discord, no de Discord a Discourse.
Escenario de ejemplo:
Un canal en Discord recibe un mensaje, y ese mensaje se envía a Discourse, donde se crea un hilo con la información.
La integración de chat puede hacer eso en Slack; buscas que se implemente la función de transcripciones de publicaciones para Discord.
Gracias, así que no hay una manera automatizada de hacerlo entonces.
Podrías hacer esto con un bot personalizado de Discord que copie el contenido de los mensajes y envíe una solicitud POST a tu foro.
Esto implicaría un alojamiento adicional, a menos que quieras escribir tu bot en discordrb y usar un complemento en tu foro.
Intenta usar esto:
https://meta.discourse.org/t/how-to-connect-discourse-with-hundreds-of-apps-using-integromat/
Gracias, lo intenté, pero por alguna razón no puedo configurar correctamente la variable del ID del mensaje para que funcione.
Su soporte técnico probablemente pueda ayudarte a resolverlo.
¿Cómo funcionaría eso en cuanto a permisos y llamadas?
¿Deseas que se copien todos los mensajes o solo los de un canal en particular? ¿Se agregarán todos a un solo tema? ¿Qué provocaría la creación de un tema nuevo?
¿Todos los usuarios de Discord tendrían derecho a hacerlo?
¿Dónde terminaría? ¿Sin categoría?
Solo los mensajes en el canal de invocación, idealmente hasta un punto de parada especificado.
Una forma elegante de hacerlo sería:
- Hacer clic en “Responder” en el primer mensaje que quieras publicar
- Escribir @TuCuentaDeBotDeIntegraciónDeDiscourse, añadiendo opcionalmente
transcripto una de sus traducciones al final - Se publicará en Discourse un transcripción desde ese mensaje hasta el momento actual, limitada a unos 50 mensajes, como el usuario que actúa, si es posible
Podrías hacerlo más avanzado si deseas permitir entrada interactiva, como establecer un punto de parada personalizado, excluir algunos mensajes o elegir una categoría de destino personalizada. Esta es la mejor experiencia de usuario que puedo imaginar sin necesidad de un intercambio continuo.
De hecho, sería bastante sencillo hacer esto interactivo:
const BASE_URL = "https://discourse.example.com";
// precondiciones:
// msg.type == REPLY (19)
// msg.mentions o msg.mention_roles contiene al bot
// esto está en JS pero necesitaría estar en Ruby
function onMentionWithReply(msg) {
discord.sendMessage({
content: "<" + BASE_URL +
"/chat-integration/discord/make-transcript/" +
msg.channel_id + "/" +
msg.message_reference.message_id + ".." + msg.id +
">";
type: REPLY,
message_reference: { message_id: msg.id },
});
}
Donde /chat-integration/discord/make-transcript/:channel_id/:id1..:id2 mostraría una página interactiva en Discourse donde podrías previsualizar los mensajes y finalizarlos.
Posibles problemas:
- Es necesario verificar el acceso del usuario que visita esa página para evitar la divulgación indebida de transcripciones.
Actualmente, tengo un enlace de Slack a Trello y de Trello a Discord, así que me gustaría que esos mensajes se publiquen en Discord, o, supongo, que Trello cree un nuevo mensaje bajo un tema específico.
¡Demasiados lugares para publicar y poco tiempo! ![]()
Gracias, lo revisaré
¡Oh! Disculpas. No me había dado cuenta de que esta integración no publica en ambas direcciones, como lo hace la integración con Slack.
En general, me pregunto… ¿por qué querrías hacer esto? Solo llenarás tu memoria a largo plazo en Discourse con conversaciones triviales.
No hay problema, las publicaciones del canal que quiero publicar en Discourse son anuncios de nuevas actualizaciones del juego. Es muy laborioso publicar lo mismo en varios lugares, y a menudo se olvida Discourse. Por lo tanto, estoy tratando de reducir mi carga de trabajo y, al mismo tiempo, espero aumentar la actividad en Discourse.
Ok, encontré una solución alternativa que, supongo, tendrá que servir.
Tuve que usar Zapier (la desventaja es que el plan gratuito no es suficiente para cubrir las publicaciones) para conectar mi Trello con Discourse y responder a un hilo que tuve que crear para esto.
Así que ahora el flujo es:
API desde la base de datos hacia Slack, Slack crea una tarjeta en Trello, Trello publica en Discord y Discourse. ![]()
Excepto que ahora tengo un bucle donde Discourse vuelve a publicar en Discord, jaja. ¿Hay alguna manera de excluir mis publicaciones de eso?
He añadido una función relacionada a: Discord Bot Construction Kit 🤖 - #79 by merefield
Si designas un Canal como el “Canal de Anuncios”, cualquier mensaje escrito allí se publicará en tu Tema de Discourse designado.
(Actualmente, la actualización también monitorea los anuncios de Discourse que se copian a Discord en el mismo canal)
Esto también ocurre en mi implementación, pero no es un bucle infinito; simplemente confirma que la publicación se ha agregado. Puedes evitarlo colocando el Tema de Discord en Discourse en un lugar diferente y evitando las Categorías vigiladas.
¡Oh, gracias! Esto podría ahorrarme el tener que usar otra aplicación de terceros. Solo tendré que ver cómo maneja los enlaces de imágenes.
En realidad, no estoy entendiendo bien tus instrucciones; no encuentro esto en los menús de Discourse bajo ‘plugin’ y no entiendo cómo instalar tu plugin.
Por favor, publica los problemas específicos con las instrucciones en el tema del plugin.
Tu problema es un poco vago en este momento para poder ayudarte. Asegúrate de haber leído el OP a fondo, luego publica un problema específico y estaré encantado de ayudarte.