Code d'invitation global facultatif

La première suggestion est de ne suivre que les invitations ? Oui, bien sûr. Un nom d’utilisateur sans jeton ne devrait pas accorder le niveau TL1, car les noms d’utilisateurs sont des informations publiques.

image

Je suggère que ces liens prennent la forme de https://meta.discourse.org/signup?u=codinghorror&token=3ojk6WTY pour refléter la première partie :slight_smile:

:+1: Je n’y avais pas pensé. Ce sera difficile à documenter, mais c’est ainsi que les paramètres devraient interagir.

8 « J'aime »

Oui, il n’y a aucun inconvénient à copier Discord ici. Je pense que nous avions auparavant des invitations basées uniquement sur l’URL (sans e-mail requis), mais nous avons dû les supprimer en raison de problèmes de sécurité. Tu te souviens, @techapj ? :thinking:

8 « J'aime »

Oui, l’option « aucune adresse e-mail requise » constituait une erreur de sécurité : ces invitations devraient toujours nécessiter une validation par e-mail (ou une connexion via un réseau social avec validation par e-mail), car elles n’arrivent pas directement dans les boîtes de réception des utilisateurs.

5 « J'aime »

Si l’objectif est de faciliter le partage, pourquoi ne pas adopter une approche similaire à celle d’un code de parrainage ? Quelque chose de facilement partageable dans une présentation, en texte brut ou par le bouche-à-oreille. Les chaînes de requête sont confuses et fragiles, tandis que domainname.tld/invite/samgdc2020 est mémorable et à faible risque, du genre de chose que l’on peut griffonner et qui résiste au transport.

Par mesure de précaution, j’aimerais vraiment voir une forme d’expiration du code comme couche de protection supplémentaire.

7 « J'aime »

La durée et/ou le nombre d’utilisations constitueraient une limite raisonnable, comme d’autres logiciels l’ont déjà mis en œuvre pour ce type de fonctionnalité. Et c’est généralement défini par l’utilisateur.

11 « J'aime »

En effet, mais en regardant la PR, il s’agit d’un seul code pour l’ensemble du site.

1 « J'aime »

Oui, nous avons toujours cette fonctionnalité, encapsulée dans un plugin :

L’URL aura la forme suivante : http://discourse.example.com/invite-token/redeem/TOKEN?username=USERNAME&email=EMAIL&name=NAME&topic=TOPICID

L’URL minimale requise doit être : http://discourse.example.com/invite-token/redeem/TOKEN?email=EMAIL

Le problème de sécurité était que nous ne vérifiions pas l’existence de l’utilisateur associé à l’adresse e-mail fournie, mais nous le faisons désormais dans le plugin.

11 « J'aime »

Je suppose que le nom d’utilisateur pourrait être intégré par défaut dans le jeton, et éventuellement remplacé en ajoutant un utilisateur explicite ?

En ce qui concerne token, je préférerais utiliser code car c’est plus compréhensible pour les personnes non techniques.

Je ne suis pas d’accord. Bien que les jetons générés par le plugin n’incluent pas d’adresses e-mail, ils ne peuvent être utilisés qu’en ajoutant une adresse e-mail, alors que l’idée ici est de supprimer cette exigence, n’est-ce pas ?

Et le problème de sécurité peut être résolu :

Ce serait formidable de pouvoir le faire. :slight_smile:

4 « J'aime »

Ces codes d’invitation expirent-ils un jour ou sont-ils valables indéfiniment ? Nous devrions peut-être prévoir une limite stricte ici en tant que paramètre du site, du moins pour l’instant ?

7 « J'aime »

N’avons-nous pas toujours besoin d’une adresse e-mail pour que GitHub - discourse/discourse-invite-tokens: Discourse Invite Tokens · GitHub fonctionne ? Il se peut que je ne comprenne pas bien son fonctionnement.

Ce que je souhaiterais, c’est un lien personnalisé (sans adresse e-mail) que je pourrais demander aux organisations d’envoyer à leurs clients, ce qui leur permettrait de les assigner à un groupe et à un sujet de démarrage lors de leur inscription. La raison en est que les organisations médicales avec lesquelles je travaille ne peuvent ou ne veulent pas partager leur liste d’e-mails, mais sont heureuses d’envoyer un e-mail à leurs membres (de leur part).

5 « J'aime »

Je pense que votre demande ici et la demande de fonctionnalité de @nathank sont assez liées.

Actuellement, nous disposons d’un seul code d’invitation global, sans date d’expiration. Pour le désactiver, l’administrateur peut simplement le remettre à zéro ou le modifier.

Ce qui est demandé ici, c’est un mécanisme plus sophistiqué pour les codes d’invitation, intégré au système d’invitation global.

Les fonctionnalités clés demandées sont :

  • Nouveau lien d’invitation

    • Réutilisable N fois

    • (Optionnel) Ajoute automatiquement l’utilisateur à un groupe

    • Expiré après M jours

Cela me semble donc être une extension de cette fenêtre de dialogue :

Peut-être un onglet supplémentaire ?

[invitation en masse]

  • Supprimer l’email

  • Supprimer le bouton « Envoyer l’invitation »

  • Ajouter :

    Combien de personnes sont autorisées à s’inscrire via ce lien ?

    Quelle durée de validité souhaitez-vous pour ce lien d’invitation ? Par défaut : 1 mois.

Une fois ces informations renseignées, vous obtiendrez un lien d’invitation valable pendant une durée limitée, intégré au reste du système d’invitation, permettant d’ajouter des personnes à des groupes, etc.

Avec cette fonctionnalité en place, nous pourrons même supprimer entièrement la fonctionnalité globale « code d’invitation ».

17 « J'aime »

Exactement – cela répondrait parfaitement au besoin.

Ce serait également idéal d’inclure un sujet ou un message de destination, comme pour les invitations en masse via CSV. Cela garantit également une cohérence globale.

7 « J'aime »

Si cela est pertinent par rapport aux événements mondiaux actuels, je soutiens la priorisation de ce travail, mais c’est à vous de décider, @sam.

10 « J'aime »

Non, invite-tokens n’a pas besoin d’adresse e-mail. Consultez Generating lots of Invite Tokens pour comprendre comment cela fonctionne.

8 « J'aime »

Je l’ai lu, mais je reste confus.

Cela semble impliquer très fortement que vous avez besoin de l’adresse e-mail de l’utilisateur. Ou est-ce que je suis simplement obtus ?

4 « J'aime »

D’après ma compréhension, les jetons d’invitation en masse permettent d’obtenir un jeton par invitation. Cela est très éloigné de ce que vous souhaitez ici.

Je vais en discuter avec @techAPJ. Je pense que l’intégration efficace des nouveaux utilisateurs sur un nouveau forum est très pertinente et importante en ce moment. Nous allons prioriser l’amélioration de ce sujet.

9 « J'aime »

L’adresse e-mail est requise au moment d’accepter l’invitation, mais pas lors de la génération du jeton d’invitation.

Vous pouvez transmettre cette URL à l’utilisateur final et lui demander de remplacer EMAIL par son adresse e-mail : http://discourse.example.com/invite-token/redeem/TOKEN?email=EMAIL.

J’espère que cela clarifie la confusion.

7 « J'aime »

Je trouve vraiment excellente votre solution proposée dans post 31 à ce sujet, @sam, qui étend la fonctionnalité des codes d’invitation.

5 « J'aime »

Je suis d’accord, c’est aussi ce que j’aimerais vraiment voir implémenté.

Ainsi, toute personne ayant l’autorisation d’inviter des utilisateurs pourrait générer un lien d’invitation générique permettant à l’utilisateur de rejoindre et d’être ajouté à la liste des utilisateurs invités du parrain.

Les invitations vers des groupes avec des limites de temps ou de membres seraient bienvenues, mais ce n’est pas une priorité pour moi.

3 « J'aime »

J’obtiens un message « Oups ! Cette page n’existe pas ou est privée » lorsque j’essaie cela.

amazing.forum.com/signup ouvre la fenêtre contextuelle d’inscription, mais amazing.forum.com/signup?code=fantastic ne semble pas transmettre la valeur à la fenêtre (j’ai aussi essayé invite_code=fantastic).

Et, lorsque cela fonctionnera, il serait agréable de l’ajouter au premier message.

2 « J'aime »