Discourse résolu

Sur la page d’accueil, à côté de Top, Hot, Latest, etc., comment puis-je ajouter Unsolved ?

Vous pouvez utiliser le composant Custom Top Navigation Links pour ajouter des liens personnalisés à côté de ceux configurés dans les paramètres du site. Pour filtrer la liste des sujets par les sujets non résolus, vous pouvez ajouter solved=no. Par exemple \u003chttps://meta.discourse.org/?solved=no\u003e

6 « J'aime »

Je rencontre la même erreur de plugin incompatible mentionnée plus haut, mais nous utilisons la version officielle :

Journaux
********************************************************
*** Veuillez patienter, les prochaines étapes peuvent prendre un certain temps ***
********************************************************
Cycling Unicorn, pour libérer de la mémoire
Redémarrage de Unicorn pid : 551
En attente du rechargement de Unicorn.
En attente du rechargement de Unicorn..
En attente du rechargement de Unicorn...
En attente du rechargement de Unicorn....
En attente du rechargement de Unicorn.....
En attente du rechargement de Unicorn......
En attente du rechargement de Unicorn.......
Arrêt de 3 travailleur(s) Unicorn, pour libérer de la mémoire
Arrêt de la file d'attente des tâches pour récupérer de la mémoire, le pid du maître est 3004191
$ cd /var/www/discourse/plugins/docker_manager && git fetch --tags --prune-tags --prune --force
$ cd /var/www/discourse/plugins/docker_manager && git reset --hard HEAD@{upstream}
HEAD est maintenant sur 930ec25 DEV : Réactiver les spécifications de fumée
$ bundle install --retry 3 --jobs 4
Bundle terminé ! 146 dépendances Gemfile, 189 gems maintenant installées.
Les gems dans les groupes 'test' et 'development' n'ont pas été installées.
Les gems bundled sont installées dans `./vendor/bundle`
3 gems installées dont vous dépendez directement cherchent un financement.
  Exécutez `bundle fund` pour plus de détails
$ if [ -f yarn.lock ]; then yarn install; else CI=1 pnpm install; fi
Portée : tous les 17 projets de l'espace de travail
Le fichier de verrouillage est à jour, l'étape de résolution est ignorée
Déjà à jour

Terminé en 3,2 s
$ LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all
Vérification de la version compatible de discourse-calendar : 8d09cf8503b78f4c72b47a7319c0f4b9ad0247e7
HEAD est maintenant sur 8d09cf8 DEV : mise à jour des régions (#717)
Vérification de la version compatible de discourse-reactions : f87583d9054421869ba0de16c24ad15e32bbebe7
HEAD est maintenant sur f87583d DEV : Ajout d'une spécification système pour vérifier que les fonctionnalités principales fonctionnent bien (#361)
Vérification de la version compatible de discourse-solved : 4f0234f5be3aaa77db277e0f224cd9750d2713cd
HEAD est maintenant sur 4f0234f DEV : Ajout d'une spécification système pour vérifier que les fonctionnalités principales fonctionnent bien (#357)
discourse-spoiler-alert est déjà à la dernière version compatible
docker_manager est déjà à la dernière version compatible
$ SKIP_POST_DEPLOYMENT_MIGRATIONS=1 bundle exec rake multisite:migrate
	81 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/bin/bundle:25:in `<main>'
	80 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/bin/bundle:25:in `load'
	79 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/exe/bundle:20:in `<top (required)>'
	78 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/friendly_errors.rb:117:in `with_friendly_errors'
	77 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/exe/bundle:28:in `block in <top (required)>'
	76 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli.rb:29:in `start'
	75 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/vendor/thor/lib/thor/base.rb:584:in `start'
	74 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli.rb:35:in `dispatch'
	73 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/vendor/thor/lib/thor.rb:538:in `dispatch'
	72 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
	71 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/vendor/thor/lib/thor/command.rb:28:in `run'
	70 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli.rb:452:in `exec'
	69 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli/exec.rb:23:in `run'
	68 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli/exec.rb:59:in `kernel_load'
	67 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli/exec.rb:59:in `load'
	66 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/bin/rake:25:in `<top (required)>'
	65 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/bin/rake:25:in `load'
	64 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/exe/rake:27:in `<top (required)>'
	63 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:80:in `run'
	62 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:214:in `standard_exception_handling'
	61 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:83:in `block in run'
	60 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:132:in `top_level'
	59 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:147:in `run_with_threads'
	58 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:138:in `block in top_level'
	57 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:138:in `each'
	56 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:138:in `block (2 levels) in top_level'
	55 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:188:in `invoke_task'
	54 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:188:in `invoke'
	53 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:199:in `invoke_with_call_chain'
	52 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:199:in `synchronize'
	51 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:218:in `block in invoke_with_call_chain'
	50 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:241:in `invoke_prerequisites'
	49 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:241:in `each'
	48 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:243:in `block in invoke_prerequisites'
	47 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:199:in `invoke_with_call_chain'
	46 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:199:in `synchronize'
	45 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:218:in `block in invoke_with_call_chain'
	44 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:241:in `invoke_prerequisites'
	43 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:241:in `each'
	42 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:243:in `block in invoke_prerequisites'
	41 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:199:in `invoke_with_call_chain'
	40 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:199:in `synchronize'
	39 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:219:in `block in invoke_with_call_chain'
	38 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:281:in `execute'
	37 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:281:in `each'
	36 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/task.rb:281:in `block in execute'
	35 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/application.rb:559:in `block in run_tasks_blocks'
	34 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/application.rb:411:in `require_environment!'
	33 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.2/lib/zeitwerk/core_ext/kernel.rb:34:in `require'
	32 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bootsnap-1.18.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
	31 : depuis /usr/local/lib/ruby/3.3.0/bundled_gems.rb:69:in `block (2 levels) in replace_require'
	30 : depuis /usr/local/lib/ruby/3.3.0/bundled_gems.rb:69:in `require'
	29 : depuis /var/www/discourse/config/environment.rb:7:in `<main>'
	28 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/application.rb:435:in `initialize!'
	27 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/initializable.rb:60:in `run_initializers'
	26 : depuis /usr/local/lib/ruby/3.3.0/tsort.rb:208:in `tsort_each'
	25 : depuis /usr/local/lib/ruby/3.3.0/tsort.rb:229:in `tsort_each'
	24 : depuis /usr/local/lib/ruby/3.3.0/tsort.rb:350:in `each_strongly_connected_component'
	23 : depuis /usr/local/lib/ruby/3.3.0/tsort.rb:350:in `call'
	22 : depuis /usr/local/lib/ruby/3.3.0/tsort.rb:350:in `each'
	21 : depuis /usr/local/lib/ruby/3.3.0/tsort.rb:352:in `block in each_strongly_connected_component'
	20 : depuis /usr/local/lib/ruby/3.3.0/tsort.rb:434:in `each_strongly_connected_component_from'
	19 : depuis /usr/local/lib/ruby/3.3.0/tsort.rb:353:in `block (2 levels) in each_strongly_connected_component'
	18 : depuis /usr/local/lib/ruby/3.3.0/tsort.rb:231:in `block in tsort_each'
	17 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/initializable.rb:61:in `block in run_initializers'
	16 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/initializable.rb:32:in `run'
	15 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/initializable.rb:32:in `instance_exec'
	14 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/application/finisher.rb:94:in `block in <module:Finisher>'
	13 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/lazy_load_hooks.rb:77:in `run_load_hooks'
	12 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/lazy_load_hooks.rb:77:in `each'
	11 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/lazy_load_hooks.rb:78:in `block in run_load_hooks'
	10 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/lazy_load_hooks.rb:92:in `execute_hook'
	9 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/lazy_load_hooks.rb:87:in `with_execution_control'
	8 : depuis /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/lazy_load_hooks.rb:94:in `block in execute_hook'
	7 : depuis /var/www/discourse/config/application.rb:241:in `block in <class:Application>'
	6 : depuis /var/www/discourse/lib/plugin.rb:6:in `initialization_guard'
	5 : depuis /var/www/discourse/config/application.rb:241:in `block (2 levels) in <class:Application>'
	4 : depuis /var/www/discourse/config/application.rb:241:in `each'
	3 : depuis /var/www/discourse/lib/plugin/instance.rb:629:in `notify_after_initialize'
	2 : depuis /var/www/discourse/lib/plugin/instance.rb:629:in `each'
	1 : depuis /var/www/discourse/lib/plugin/instance.rb:631:in `block in notify_after_initialize'
/var/www/discourse/plugins/discourse-solved/plugin.rb:172:in `block in activate!': méthode `register_category_list_topics_preloader_associations' non définie pour une instance de Plugin::Instance (NoMethodError)

** PLUGIN INCOMPATIBLE **

Vous ne pouvez pas démarrer Discourse en raison d'erreurs dans le plugin situé à
/var/www/discourse/plugins/discourse-solved

Veuillez essayer de supprimer ce plugin et de reconstruire à nouveau !
Docker Manager : ÉCHEC DE LA MISE À NIVEAU
#<RuntimeError: RuntimeError>
/var/www/discourse/plugins/docker_manager/lib/docker_manager/upgrader.rb:211:in `run'
/var/www/discourse/plugins/docker_manager/lib/docker_manager/upgrader.rb:109:in `upgrade'
/var/www/discourse/plugins/docker_manager/scripts/docker_manager_upgrade.rb:19:in `block in <main>'
/var/www/discourse/plugins/docker_manager/scripts/docker_manager_upgrade.rb:6:in `fork'
/var/www/discourse/plugins/docker_manager/scripts/docker_manager_upgrade.rb:6:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/commands/runner/runner_command.rb:44:in `load'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/commands/runner/runner_command.rb:44:in `block in perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/execution_wrapper.rb:91:in `wrap'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/commands/runner/runner_command.rb:70:in `conditional_executor'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/commands/runner/runner_command.rb:43:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/thor-1.3.2/lib/thor/command.rb:28:in `run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/thor-1.3.2/lib/thor/invocation.rb:127:in `invoke_command'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/command/base.rb:178:in `invoke_command'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/thor-1.3.2/lib/thor.rb:538:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/command/base.rb:73:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/command.rb:71:in `block in invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/command.rb:149:in `with_argv'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/command.rb:69:in `invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/commands.rb:18:in `<main>'
/usr/local/lib/ruby/3.3.0/bundled_gems.rb:69:in `require'
/usr/local/lib/ruby/3.3.0/bundled_gems.rb:69:in `block (2 levels) in replace_require'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bootsnap-1.18.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
bin/rails:18:in `<main>'
Démarrage de 3 travailleur(s) Unicorn qui avaient été arrêtés initialement

Résumé des journaux :

** PLUGIN INCOMPATIBLE **

Vous ne pouvez pas démarrer Discourse en raison d'erreurs dans le plugin situé à
/var/www/discourse/plugins/discourse-solved

Veuillez essayer de supprimer ce plugin et de reconstruire à nouveau !
Docker Manager : ÉCHEC DE LA MISE À NIVEAU
#<RuntimeError: RuntimeError>


Nous ne sommes pas très en retard, mais quelque chose ne va pas.

Édition : Donc, tout concernant cette mise à jour s’est mal passé. docker_manager a échoué comme indiqué dans les journaux ci-dessus, mais il a ensuite été affiché comme « à jour ». Une mise à jour principale de Discourse a complètement échoué — elle a indiqué être en cours de mise à jour mais n’a jamais progressé et aucun processus n’a changé. J’ai désactivé Solved ! dans app.yml et reconstruit l’application — tout semble bon maintenant, sauf Solved. Si quelqu’un commente qu’il est sûr de le réactiver, je le reconstruirai.

3 « J'aime »

Pour information, j’ai le plugin Solved installé et je l’ai mis à jour plus tôt dans la journée via l’interface utilisateur et cela s’est bien passé. :+1:


J’aurais dû vérifier avant de poster… :slight_smile: Il semble qu’une nouvelle validation pour Solved ait été ajoutée entre-temps. Laissez-moi faire une reconstruction en ligne de commande juste pour vérifier et confirmer que tout se passe bien.

ETA : @Frully Ma reconstruction (y compris Solved) a été réussie :partying_face:

2 « J'aime »

Pour compléter ce que Jam a dit. Je n’ai également rencontré aucun problème avec Solved.

Si c’est la première fois que vous installez Solved, vérifiez que votre adresse GitHub est correcte.

Si possible, partagez également si vous utilisez la version Stable ou la version recommandée testée.

Si vous pouvez publier une partie de la section plugin de votre app.yml, cela pourrait aussi aider.

2 « J'aime »

Merci à vous deux pour la vérification. Maintenant que c’est mis à jour, je me sens plus en sécurité pour réactiver le plugin. Je vous informerai lorsque j’aurai le temps de tester et noter les résultats.

3 « J'aime »

Nous souffrons toujours de ce problème (bien que, comme personne d’autre ne semble l’avoir signalé, je commence à me demander si ce n’est pas juste nous ?)

En creusant un peu plus, j’ai constaté que l’ajout d’un padding-top et d’un padding-bottom de 15 px à la classe CSS topic-statuses résout le problème. J’espère qu’un mainteneur du plugin pourra le corriger de manière plus permanente.

3 « J'aime »

Je pense que cela est lié à Discourse Tooltips. Il ne s’agit pas seulement des boîtes non résolues sur votre site, mais aussi de toutes les épingles et des cadenas.

Je pense qu’il y a quelques autres rapports :

5 « J'aime »

Depuis que nous avons mis à jour Discourse, les webhooks de résolution sont inversés.

Si je résous un sujet, le webhook sera envoyé comme ceci :

    "can_accept_answer": true,
    "can_unaccept_answer": false,
    "accepted_answer": false,
    "topic_accepted_answer": null

et si je désélectionne la réponse, c’est l’inverse.

:partying_face: Ce plugin est maintenant inclus dans le cœur de Discourse dans le cadre de Bundling more popular plugins with Discourse core. Si vous auto-hébergez et utilisez le plugin, vous devez le supprimer de votre app.yml avant votre prochaine mise à niveau.

3 « J'aime »

Il y a une erreur avec la dernière version de discourse

Je dois désactiver cela pour reconstruire l'application (discourse)

Il est maintenant inclus dans le cœur du système

3 « J'aime »

Accueil > Les publications de la catégorie afficheront les sujets résolus comme des sujets non résolus

Ai-je besoin d’autres paramètres ?

1 « J'aime »

Est-il possible d’ajouter une entrée dans Filtres avancés dans la zone de recherche de Discourse pour n’afficher que les non résolus ?

vous pouvez utiliser /filter et in:solved / in:unsolved

3 « J'aime »

Ma compréhension est que nous pouvons utiliser le déclencheur « first_accepted_solution » de Solved lors de la création d’une automatisation. Une automatisation avec ce déclencheur ne s’exécuterait-elle qu’une seule fois pour chaque sujet résolu, ou s’agit-il de la première solution acceptée par un utilisateur et non par un sujet ? Je ne suis pas sûr que la question ait du sens, désolé.

« Première solution acceptée » se déclenche la première fois qu’une publication d’un utilisateur est sélectionnée comme solution à un sujet quelconque.


Vous pouvez, par exemple, l’utiliser pour remercier un utilisateur de son aide la première fois qu’il en apporte.

Salut @Moin ,

Merci beaucoup pour la clarification, c’est logique.

Question de suivi : existe-t-il un déclencheur « accepted-solution » ou seulement « first-accepted-solution » ?

Raisonnement : J’aimerais créer une automatisation personnalisée qui crée un Post chaque fois qu’un Sujet est résolu (un Post est marqué comme solution).

J’ai essayé avec « first-accepted-solution », mais cela ne fonctionne qu’une seule fois, comme je le vois maintenant, c’est attendu. Des recommandations ou des idées ?

Sans savoir ce que vous voulez faire de cette publication ou pourquoi vous en avez besoin, il est un peu difficile de vous suggérer quelque chose d’utile.
Voulez-vous simplement savoir si des publications sont marquées comme solution ?

Vous pourriez alors utiliser une requête d’explorateur de données et le script « Planifier une publication dans un sujet avec les résultats de l’explorateur de données ». Vous pourriez, par exemple, exécuter une requête qui renvoie les solutions des 10 dernières minutes toutes les 10 minutes. Je suppose que vous pourriez aussi l’exécuter plus souvent, mais je ne suis pas sûr de ce que cela ajoute au serveur. Mais même si vous l’exécutiez chaque minute, vous n’obtiendriez pas nécessairement une publication pour chaque solution. Peut-être que 2 sujets sont résolus dans la minute. De plus, la publication résultante ne peut être personnalisée que dans une mesure limitée. (Bien sûr, vous pouvez personnaliser les textes utilisés comme n’importe quel autre texte, mais vous devez garder à l’esprit que vous devrez alors le faire pour chaque publication modifiée par l’automatisation avec ce script. Cela ne fonctionne donc pas vraiment si vous voulez être trop individuel.)

Exemple simple d’une publication créée par cette automatisation

Le contenu du tableau dépend de la requête. Il est possible d’étendre la requête, par exemple, pour afficher un lien vers le sujet ou la solution. Je l’ai gardé simple pour démontrer comment la fonctionnalité fonctionne en général.

La requête que j'ai utilisée
SELECT
  dst.created_at AS solution_accepted_at,
  dst.topic_id,
  dst.answer_post_id,
  dst.accepter_user_id
FROM discourse_solved_solved_topics dst
WHERE dst.created_at >= NOW() - INTERVAL '10 minutes'
ORDER BY dst.created_at DESC
1 « J'aime »

Salut @Moin,

Merci beaucoup pour ta réponse :slight_smile:

C’est super, j’ai testé et ça fonctionne - grâce à ta réponse :

De plus, ce n’est toujours pas ce que je cherchais.
Désolé si je n’ai pas été clair dans ma question précédente.

Ce que j’essaie de faire, c’est de créer une automatisation qui créera un message (à partir d’un utilisateur système) chaque fois qu’un sujet sera résolu. Dans ce sujet, le message nouvellement généré contiendra une enquête (l’enquête sera le markdown des enquêtes Discourse).