Caducidad automática de insignias

Me gustaría proporcionar beneficios a mis usuarios de Discourse que se mantengan comprometidos periódicamente. Por ejemplo, quiero ofrecer beneficios solo a los usuarios que inviten al menos a 1 nuevo usuario por mes.

Podría configurar esto indicando que todos los usuarios que posean la insignia “Promotor” recibirán dichos beneficios. Sin embargo, la insignia “Promotor” requiere que los usuarios inviten solo a un visitante y luego el usuario conserva esa insignia para siempre.

¿Existe alguna forma de configurar una caducidad automática de la insignia para que, después de un mes, la insignia “Promotor” (o cualquier otra) sea eliminada del usuario, obligándolo a ganarla nuevamente?

¿O existe un enfoque mejor para lo que estoy intentando hacer (requerir compromisos mensuales de los usuarios)?

Gracias de antemano.

Definitivamente una idea interesante.

@codinghorror, ¿entiendo entonces que aún no existe tal función? :slight_smile:
¿Existe alguna solución alternativa que se pueda utilizar para implementarlo, incluso si es de forma manual? El principal problema que veo ahora es que ni siquiera puedo ver información sobre cuándo se otorgó una insignia a un usuario. ¿Está esto disponible en algún lugar, incluso si es a través de la API?

Supongo que podrías usar Discourse Data Explorer para replicar consultas SQL y añadir restricciones de tiempo para crear nuevas insignias «caducables». No verifiqué en la categoría #plugin:data-explorer ni en la colección (Superseded) What cool data explorer queries have you come up with? si ya existen consultas de este tipo. ¡Sin duda se agradecería compartir lo que logres en este tema!

Debajo de las 3 líneas junto a tu avatar, haz clic en Insignias. Cada insignia tiene un número… para cuántos usuarios la tienen. Haz clic en el número que muestra. Luego, cada usuario con la insignia aparecerá listado con la fecha en que obtuvo la insignia.

Pero, ¿por qué querría alguien insignias con fecha de caducidad? Creo que los usuarios se molestarán, en mi opinión.

Esto es en realidad una consulta común en el espacio de la comunidad. Se trata de insignias vinculadas a acciones más recientes o actuales de los usuarios, en lugar del otorgamiento histórico de insignias que conservas para siempre, independientemente de si sigues activo o no en la comunidad. Esto es especialmente relevante para comunidades que llevan años en línea. Facebook lo hace con la insignia “Fan principal”, que no es estática y puede desaparecer si dejas de participar en la página.

Si simplemente elimino manualmente una insignia de un usuario, ¿volverá a obtenerla si realiza las acciones necesarias?

Para esto, creo que el consejo seguiría siendo crear nuevas insignias que tuvieran un elemento de tiempo incorporado en la consulta SQL subyacente.

Si alguien necesita ayuda con una consulta, puede iniciar un tema en Data & reporting. :+1: