PM an eine E-Mail-Adresse von einem Plugin senden

Hallo,
ich erstelle ein Plugin und muss etwas an die E-Mail eines Benutzers senden.
Ich benutze

 creator = PostCreator.new(test_user, {
        target_recipients: "someone@toto.com",
        archetype: Archetype.private_message,
        subtype: TopicSubtype.system_message,
        title: "Hallo Testperson",
        raw: "Das ist die Nachricht. Funktioniert es?"
      })

test_user ist ein Administrator

Aber jedes Mal, wenn ich versuche, dies zu senden, erhalte ich die Fehlermeldung:
Topic is empty

Irgendwelche Ideen?

Laut den Spezifikationen sollte dies einen Gruppennamen oder einen Benutzernamen akzeptieren:

2 „Gefällt mir“

Hallo Robert,

Das ist seltsam, denn im Frontend verwendet Discourse eine Payload wie diese, und sie funktioniert (getestet mit meiner privaten E-Mail):

raw: Wieder eine Nachricht hier.
title: Hallo da, General Kenobi
archetype: private_message
target_recipients: j.doe@something.com

Ich fand es seltsam, dass wir im Backend einen Gruppennamen erwarten :confused:

1 „Gefällt mir“

TL;DR target_emails verwenden, nicht target_recipients

Beachten Sie, dass target_recipients ein Parameter für PostsController ist, kein Argument für PostCreator.
Dieser Controller ermittelt, ob die Empfänger Benutzer, Gruppen oder E-Mail-Adressen sind, und übergibt sie dann schließlich als target_emails an NewPostsManager, und es landet in TopicCreator.

5 „Gefällt mir“

Danke! Das war’s :slight_smile:

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.