Il y a quelque temps, nous avons rencontré un problème avec Discourse-Automation où nous ne pouvions pas envoyer régulièrement de messages dans le chat. Nous l’utilisons pour envoyer des nouvelles hebdomadaires dans le canal de discussion. J’ai remarqué dans les /logs que les messages de chat n’avaient pas pu être envoyés en raison de problèmes d’autorisation.
Je pense que l’expéditeur configuré dans Discourse Automation devrait simplement ignorer les paramètres d’autorisation du canal, puisque ceux-ci sont définis par l’administrateur. En fait, j’utilise DiscoBot comme utilisateur d’envoi de messages. Comme DiscoBot n’était pas actif dans la catégorie liée au canal - bien sûr - il a été automatiquement retiré du canal, et le message de chat programmé que nous avions défini est donc devenu non distribuable.
Je ne sais pas, mais j’ai l’impression que c’est un Bug
[discourse-automation] Chat message failed to send:
[1/25] [policy] 'no_silenced_user' ✅
[2/25] [contract] 'default' ✅
[3/25] [model] 'channel' ✅
[4/25] [policy] 'allowed_to_join_channel' ✅
[5/25] [policy] 'allowed_to_create_message_in_channel' ✅
[6/25] [step] 'enforce_system_membership' ✅
[7/25] [model] 'channel_membership' ❌
[8/25] [model] 'reply'
[9/25] [policy] 'ensure_reply_consistency'
[10/25] [model] 'thread'
[11/25] [policy] 'ensure_valid_thread_for_channel'
[12/25] [policy] 'ensure_thread_matches_parent'
[13/25] [model] 'uploads'
[14/25] [model] 'message'
[15/25] [transaction]
[16/25] [step] 'save_message'
[17/25] [step] 'delete_drafts'
[18/25] [step] 'post_process_thread'
[19/25] [step] 'create_webhook_event'
[20/25] [step] 'update_channel_last_message'
[21/25] [step] 'update_membership_last_read'
[22/25] [step] 'process_direct_message_channel'
[23/25] [step] 'publish_new_thread'
[24/25] [step] 'publish_new_message_events'
[25/25] [step] 'publish_user_tracking_state'
/var/www/discourse/plugins/chat/app/services/service/base.rb:143:in `call': Model not found (ArgumentError)
raise ArgumentError, "Model not found" if !optional && context[name].blank?
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
from /var/www/discourse/plugins/chat/app/services/service/base.rb:368:in `block in run!'
from /var/www/discourse/plugins/chat/app/services/service/base.rb:368:in `each'
from /var/www/discourse/plugins/chat/app/services/service/base.rb:368:in `run!'
from /var/www/discourse/plugins/chat/app/services/service/base.rb:361:in `run'
from <internal:kernel>:90:in `tap'
from /var/www/discourse/plugins/chat/app/services/service/base.rb:229:in `call'
from /var/www/discourse/plugins/chat/plugin.rb:451:in `block (3 levels) in activate!'
from /var/www/discourse/plugins/discourse-automation/app/models/discourse_automation/automation.rb:131:in `trigger!'
from /var/www/discourse/plugins/discourse-automation/app/controllers/discourse_automation/automatio...