Désolé, c’est encore moi ![]()
Vous avez mentionné que le plugin Automation peut aider à attribuer des badges. Avez-vous peut-être quelques astuces pour le faire ? Je ne trouve rien de pertinent dans le menu déroulant :
Désolé, c’est encore moi ![]()
Vous avez mentionné que le plugin Automation peut aider à attribuer des badges. Avez-vous peut-être quelques astuces pour le faire ? Je ne trouve rien de pertinent dans le menu déroulant :
En regardant le commit, il semble qu’il devrait être disponible pour les scripts send_pms et zapier_webhook :
Ce déclencheur nécessite un
badgecomme champ obligatoire et accepte un champ facultatifonly_on_first_grant. Pour l’instant, il est utilisable pour les scripts :send_pmsetzapier_webhook.
Désolé, ce n’est peut-être pas très clair, laissez-moi vous expliquer.
Pour le moment, nous n’avons qu’un déclencheur pour les badges accordés, ce qui signifie que nous pouvons appeler des scripts lorsqu’un utilisateur reçoit un badge. Mais nous n’avons pas exactement ce que vous demandez actuellement, à savoir un script pour accorder un badge qui serait déclenché par un événement (rejoindre un groupe spécifique ?). Comme expliqué, notre meilleure solution jusqu’à présent est Creating triggered custom badge queries
Merci beaucoup pour votre aide !
J’espère vraiment que nous parviendrons à mettre en place une API pour accorder un badge chaque fois qu’un utilisateur publie son premier message ![]()
Merci !
C’est très utile !
Salut Helga,
Si vous souhaitez attribuer automatiquement un badge, la meilleure façon de procéder est d’utiliser la requête SQL pour le badge.
Vous la trouverez dans admin-badges
Faites ensuite défiler vers le bas pour trouver la requête SQL.
Si vous effectuez une recherche sur meta.discourse.org, vous aurez peut-être la chance de trouver quelqu’un qui a déjà écrit la requête que vous recherchez.
Ma requête préférée attribue un badge lorsqu’une personne rejoint un groupe. L’exemple ci-dessous attribue le badge dans les 24 heures suivant l’adhésion de la personne au groupe “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'
)
J’utilise les paramètres suivants avec la requête pour le badge
Pour cela, vous devriez activer les badges SQL personnalisés, ce qui n’est pas disponible pour tout le monde en fonction de leur hébergement :
Bien que l’utilisation de l’API soit également suggérée comme alternative.
Oh wow, je ne savais pas. Merci pour le tuyau @JammyDodger !
Je suppose qu’il serait également possible d’obtenir le résultat d’une requête SQL à partir du plugin Data Explorer, puis d’utiliser l’API pour accorder le badge.