Chaque fois qu’un utilisateur s’inscrit avec un lien d’invitation, j’aimerais que ce compte ne dure que x mois et une fois la date limite atteinte, l’utilisateur doit renouveler son compte, est-ce possible ?
Il s’agit essentiellement d’une adhésion avec une date d’expiration et un renouvellement. Si cette fonctionnalité n’existe pas dans Discourse, est-il possible de la programmer via un plugin ou quelque chose de similaire sans toucher au cœur ? ou n’y a-t-il pas de support dans l’API et les webhooks pour quelque chose comme ça ?
Vous les ajouteriez à un groupe lorsqu’ils rejoignent. Vous auriez ensuite un plugin qui les retirerait du groupe une fois le délai écoulé. La façon dont vous suivriez le mois n’est pas claire. Probablement un champ personnalisé utilisateur avec la date de fin serait le plus simple.
« Vous auriez alors un plugin qui les retirerait du groupe une fois le délai dépassé. » Quel plugin ?
« Probablement un champ personnalisé utilisateur avec la date de fin serait le plus simple. » Dois-je ajouter cette information lors de l’inscription ? Je devrais alors utiliser un webhook à ce moment-là, n’est-ce pas ?
Il n’existe pas de tel plugin. Il faudrait que quelqu’un l’écrive.
Non. Le plugin s’en chargerait. Et il est probable qu’il existe un moyen de discerner quand ils ont été ajoutés via l’explorateur de données et la base de données, bien que je ne sois pas vraiment sûr.
Si vous n’êtes pas auto-hébergé, ou si pour une autre raison vous ne voulez pas d’un plugin,
Il serait également possible de bricoler quelque chose en utilisant le plugin d’exploration de données (pour obtenir des données sur quand ils ont été ajoutés et donc, devraient être supprimés) et d’utiliser un outil d’automatisation/API (comme zapier, bien que j’aie aussi utilisé github actions) pour les supprimer du groupe le moment venu.
Ce serait un bon candidat pour un script d’automatisation ! Il n’existe pas encore, vous pourriez donc y contribuer ou engager quelqu’un pour le faire pour vous et le contribuer, dans Marketplace.
Je peux le faire, mais avec une fonctionnalité supplémentaire : cela devrait permettre d’ajouter des champs clé-valeur.
L’idée est que je puisse associer des informations à un lien d’invitation avec les informations que je souhaite. Les valeurs peuvent être une simple chaîne de caractères ou un JSON, et chaque clé est une colonne dans la base de données. Ensuite, lorsque l’utilisateur a terminé son inscription, une paire clé-valeur supplémentaire est ajoutée, qui est son nom d’utilisateur.
Ma question est, cela passera-t-il vos filtres et sera-t-il ajouté au code source natif de Discourse ? Et cela m’amène à une question supplémentaire, les liens d’invitation sont-ils toujours uniques ?
J’ai déplacé ce sujet vers Dev car nous sortons du territoire du support. Vous devez commencer à créer le plugin ou l’automatisation qui fait ce que vous voulez. Faites-nous savoir comment vous vous en sortez ! Si les fonctionnalités que vous ajoutez sont plus largement utiles, elles pourront éventuellement être prises en compte dans le cœur de Discourse.
Vous pouvez également créer d’autres sujets dans Dev pour poser d’autres questions, mais je vous recommande de partager du code lorsque vous le faites. Il est plus facile pour les autres de vous aider s’ils peuvent voir ce que vous avez fait jusqu’à présent.
Oui, les liens d’invitation sont toujours uniques.
Je ne sais pas ce que vous entendez par « passera-t-il vos filtres et sera-t-il ajouté au code source natif de Discourse ».
Ce sont le genre de questions que je pense que vous pourrez découvrir par vous-même en explorant le code.