Sujets avec le même titre, générés à partir d'un e-mail

Bonjour experts Discourse —

Nous disposons de scripts qui génèrent des courriels vers nos catégories Discourse afin de suivre automatiquement les événements de projet, tels que les résultats de tests, les nouveaux problèmes signalés par les utilisateurs, etc. J’avais naïvement supposé que si deux courriels apparaissaient avec le même sujet (par exemple, « tests linux64 »), ils finiraient automatiquement dans le même sujet ; pourtant, il semble que nous obtenions un sujet distinct pour chaque courriel de ce type. (répondre à un sujet par courriel le maintient dans le même sujet, comme on s’y attend naturellement).

En cherchant un peu sur les forums à ce sujet, j’ai trouvé des mentions des paramètres « Autoriser les sujets avec des titres identiques et dupliqués » et « Autoriser les sujets avec des titres identiques et dupliqués si la catégorie est différente ». À ma surprise, aucun n’est coché sur notre site, et pourtant nous avons des sujets avec le même titre grâce à ces scripts. Est-il vrai que ces paramètres s’appliquent uniquement aux sujets générés via l’interface du site web, et non par courriel ?

Quoi qu’il en soit, existe-t-il un moyen de configurer un site Discourse de sorte que les courriels envoyés à une catégorie donnée avec un sujet donné soient automatiquement fusionnés en un seul sujet, plutôt que de donner lieu à un sujet par message ? (Je comprends que cela pourrait causer une légère confusion si deux utilisateurs publient par hasard des sujets par courriel avec le même sujet, mais cela me semble être un compromis raisonnable).

Merci,
-Brad

2 « J'aime »

Après avoir un peu plus expérimenté, il me semble que le paramètre « Autoriser les sujets avec des titres identiques et dupliqués » ne s’applique qu’aux sujets créés via le site web, et non à ceux reçus par e-mail. J’ai ouvert une demande de fonctionnalité pour étendre les sujets lorsqu’un sujet d’e-mail correspond à son titre plutôt que de créer une multitude de sujets avec le même titre.

Si vous ne regardez pas le site, comment savez-vous si un titre a déjà été utilisé ?

Si vous ne consultez pas le site, comment savez-vous si un titre a déjà été utilisé ?

Je ne suis pas certain de bien comprendre votre question (car je crains de me répéter), mais je vais tenter d’y répondre :

Le scénario qui motive cette question pour notre site Discourse est celui où des posts sont générés par des scripts utilisant des lignes d’objet prévisibles (par exemple, « linux64 testing »), avec l’intention qu’ils soient regroupés dans un seul sujet. Pour ces scripts, peu importe que le titre ait déjà été utilisé, tant que le comportement est le suivant : « si un sujet avec le titre de la ligne d’objet existe déjà, ajoutez le message au sujet existant plutôt que d’en créer un nouveau ; s’il n’existe pas encore, créez un nouveau sujet dont le titre est celui de la ligne d’objet. »

En devenant un peu plus hypothétique, je pourrais imaginer un utilisateur travaillant dans un environnement sécurisé et n’étant pas autorisé à interagir directement avec des sites web, mais dont les administrateurs système répliquent le contenu d’un site d’intérêt dans leur environnement pour une consultation en lecture seule. Connaître la ligne d’objet d’un sujet donné permettrait à un tel utilisateur d’ajouter un nouveau message à ce sujet par e-mail, sans avoir besoin d’un e-mail sur ce sujet dans sa boîte de réception pour y répondre.

Faites-moi savoir si j’ai mal compris ce que vous demandez.

1 « J'aime »

C’est un cas d’usage très spécifique que de demander de modifier un comportement entier.

Avez-vous envisagé d’utiliser autre chose que SMTP pour la livraison des messages ?

Avez-vous envisagé d’utiliser autre chose que SMTP pour la livraison des messages ?

Nous ne l’avons pas fait, mais nous pourrions certainement y réfléchir si cela est considéré comme une bonne pratique. Pour m’assurer de bien comprendre, suggérez-vous que nos scripts publient sur Discourse en interagissant avec le site web via HTML, comme le ferait un humain ? Ou bien les sites Discourse prennent-ils en charge une API que nos scripts pourraient cibler directement ? Si vous avez des pistes ou des exemples sur la façon dont nous pourrions aborder cela, ce serait très utile ; nous sommes encore très novices en matière d’administration de Discourse.

Ou alors, je me demandais s’il n’y avait pas un autre astuce que nous pourrions utiliser dans les en-têtes des e-mails pour amener Discourse à les ajouter au sujet existant plutôt que d’en créer un nouveau. Je suppose que rendre le sujet « Re : tests linux64 » est insuffisant et que c’est l’adresse Reply-to: et/ou les métadonnées de l’en-tête de l’e-mail qui font qu’une réponse est ajoutée à un sujet plutôt que d’en démarrer un nouveau ? (dans ce cas, nous pourrions créer manuellement des sujets pour chaque ligne de sujet possible de script dans la catégorie, déterminer quelles sont ces métadonnées, puis les intégrer dans notre script, mais cela semblerait assez fastidieux s’il existait déjà un moyen de fusionner automatiquement les e-mails dans un sujet existant par ligne de sujet, en particulier pour les scripts qui pourraient générer de nouvelles lignes de sujet au fil du temps).

C’est un cas d’usage très spécifique pour demander de modifier un comportement global.

Peut-être, mais pour être juste, dans le message original, je demandais simplement s’il existait un moyen d’obtenir ce que nous souhaitions et exprimais ma confusion face au fait que nous obtenions plusieurs sujets avec le même titre, malgré la désactivation du paramètre « autoriser les sujets en double ». Je n’ai pas trouvé de documentation indiquant que ce comportement était attendu, et je pensais que, puisque Discourse rejette les e-mails pour diverses raisons (par exemple, « cette ligne de sujet ne semble pas être une phrase »), nous aurions peut-être reçu des rebonds indiquant « ce titre de sujet existe déjà dans cette catégorie » (ce qui ne m’aurait pas rendu plus heureux, mais cela aurait semblé plus cohérent avec les libellés des cases à cocher).

Cependant, je ne pense pas non plus que la demande de changement de comportement soit si étrange : je trouve vraiment génial et puissant que les sites Discourse puissent accepter des publications par e-mail. Et dans notre cas, cela représente 80 % de la solution pour permettre aux scripts de générer des mises à jour sur des sujets Discourse existants. Et la demande de fonctionnalité semblait similaire à d’autres que j’avais vues sur Discourse-meta et qui ont été implémentées, car elle paraît clairement utile (de nombreux projets ont des scripts qui génèrent des e-mails) et ne me semblait pas être en opposition inhérente à la philosophie de Discourse (même si, encore une fois, nous sommes nouveaux dans le domaine de l’administration). Cela ne signifie pas que c’est une évidence en soi, mais simplement que je ne trouvais pas déraisonnable de poser la question.

Démarrer ici

1 « J'aime »

Lorsqu’il s’agit d’un utilisateur interagissant avec le site, ce sont les clés de réponse par e-mail qui sont utilisées pour maintenir tout le contenu dans le même sujet. Vous utiliseriez ici le mode liste de diffusion pour intégrer ces clés de réponse dans l’environnement sécurisé.

La fonctionnalité « envoi par e-mail » (distincte de la « réponse par e-mail ») ne créera actuellement que de nouveaux sujets et n’ajoutera jamais de contenu à un sujet existant.

3 « J'aime »

Bonjour @riking et @Stephen

Je pensais avoir compris l’état actuel de Discourse suite à vos commentaires sur cette question la semaine dernière (que je résumerais ainsi : « par conception, les titres en double sont acceptés lorsqu’ils sont envoyés via la fonctionnalité « envoi par e-mail », indépendamment du paramètre « autoriser les sujets en double », car il n’est pas clair ce que le site pourrait faire d’autre ? »). Mais aujourd’hui, je suis confus car nos scripts ont reçu un rebond pour certains e-mails, indiquant :

Ce titre a déjà été utilisé

Aurais-je mal compris la situation, ou y a-t-il eu un changement de votre côté depuis la semaine dernière ?

Quelques éléments ont changé de notre côté, ce qui pourrait expliquer ce changement de comportement :

  • J’ai transformé l’adresse e-mail depuis laquelle nos scripts envoient des messages en un « utilisateur connu » sur le site Discourse, car je rencontrais occasionnellement des rebonds. J’ai donc pensé lui attribuer un niveau de confiance plus élevé pour contourner ce problème (dans mes messages précédents, le script agissait en tant qu’« utilisateur anonyme »).

  • J’ai ajouté cet utilisateur connu à un groupe afin de lui permettre de publier des sujets dans un groupe autrement restreint (en raison de l’erreur rencontrée sur Category not accepting "anonymous email" from known users - #13 by BradCray).

  • J’ai désactivé la possibilité pour les utilisateurs anonymes de publier dans cette catégorie, maintenant que notre script est un utilisateur connu.

En supposant qu’aucun changement n’ait eu lieu de votre côté, est-il exact que les utilisateurs enregistrés sont soumis à des critères plus stricts concernant l’impossibilité d’envoyer des sujets par e-mail avec des titres en double, contrairement aux utilisateurs anonymes ? Et y a-t-il une justification à ce choix ? (Je m’attendrais généralement à ce que les capacités d’un utilisateur enregistré dépassent celles d’un utilisateur anonyme).

Merci pour toute information à ce sujet.

1 « J'aime »