Enviar PM para um endereço de e-mail de um plugin

Olá,
Estou construindo um plugin e preciso enviar algo para o e-mail de um usuário.
Eu uso

 creator = PostCreator.new(test_user, {
        target_recipients: "someone@toto.com",
        archetype: Archetype.private_message,
        subtype: TopicSubtype.system_message,
        title: "Hello test subject",
        raw: "This is the message. Does it work ?"
      })

test_user é administrador

Mas toda vez que tento enviar usando isso, recebo o erro:
Tópico está vazio

Alguma ideia?

De acordo com as especificações, isso deve aceitar um nome de grupo ou um nome de usuário:

2 curtidas

Olá Robert,

Isso é estranho porque no front-end, o Discourse usa um payload como este e está funcionando (testado com meu e-mail particular):

raw: Novamente um conteúdo de mensagem aqui.
title: Olá, general Kenoby
archetype: private_message
target_recipients: j.doe@something.com

Achei estranho que esperemos um nome de grupo no back-end :confused:

1 curtida

TL;DR use target_emails e não target_recipients

Note que target_recipients é um parâmetro para PostsController, não um argumento para PostCreator.
Esse controller descobre se os destinatários são usuários, grupos ou endereços de e-mail e, em seguida, eventualmente o passa como target_emails para NewPostsManager, e ele acaba em TopicCreator.

5 curtidas

Obrigado! Era isso :slight_smile:

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