lo siento, soy yo de nuevo ![]()
Mencionaste que el plugin de Automatización puede ayudar a otorgar insignias. ¿Quizás tengas alguna pista sobre cómo hacerlo? No encuentro nada relacionado en el menú desplegable:
lo siento, soy yo de nuevo ![]()
Mencionaste que el plugin de Automatización puede ayudar a otorgar insignias. ¿Quizás tengas alguna pista sobre cómo hacerlo? No encuentro nada relacionado en el menú desplegable:
Mirando el commit, parece que debería estar disponible para los scripts send_pms y zapier_webhook:
Este disparador necesita un
badgecomo campo obligatorio y acepta un campo opcionalonly_on_first_grant. Actualmente es utilizable para: scriptssend_pmsyzapier_webhook.
Lo siento, puede que no esté muy claro, así que déjame explicarlo.
Actualmente solo tenemos un disparador para la insignia concedida, lo que significa que podemos ejecutar scripts cuando a un usuario se le otorga una insignia. Pero no tenemos exactamente lo que pides actualmente, un script para otorgar una insignia que se activaría en algún evento (¿unirse a un grupo específico?). Como se explicó, nuestra mejor solución hasta ahora es Creating triggered custom badge queries
¡Muchas gracias por tu ayuda!
Espero de verdad que logremos configurar una API para otorgar una insignia cada vez que un usuario publique su primer post ![]()
¡Gracias!
¡Esto es muy útil!
Hola Helga,
Si quieres otorgar una insignia automáticamente, la mejor manera de hacerlo es a través de la consulta SQL para la insignia.
Esto se puede encontrar en admin->insignias
Luego, desplázate hacia abajo para encontrar la consulta SQL.
Si buscas en meta.discourse.org, es posible que tengas suerte y encuentres que alguien ya ha escrito la consulta que buscas.
Mi consulta favorita otorga una insignia cuando alguien se une a un grupo. El siguiente ejemplo otorga la insignia dentro de las 24 horas posteriores a que la persona se una al grupo “discourse-admin”.
select user_id, created_at granted_at, NULL post_id
from group_users
where group_id = (
select g.id from groups g where g.name = 'discourse-admin'
)
Utilizo la siguiente configuración con la consulta para la insignia.
Para eso necesitarías habilitar las insignias SQL personalizadas, lo cual no está disponible para todos dependiendo de su alojamiento:
Aunque usar la API también se sugiere como una alternativa.
Vaya, no sabía eso. ¡Gracias por el consejo @JammyDodger!
Supongo que también sería posible obtener el resultado de una consulta SQL del plugin Data Explorer y luego usar la API para otorgar la insignia.