Temos um formulário de feedback em nosso site, usado principalmente para perguntas de suporte. Quero que as perguntas postadas lá se tornem novos tópicos em nosso fórum, alimentado pelo Discourse.
Estou tentando implementar a seguinte sequência de ações:
Criar um novo usuário via API, com base no nome e no e-mail enviados pelo formulário.
Criar um novo tópico, escrito por esse usuário.
Enviar a esse usuário um e-mail com o link para o tópico, além de um pedido para criar uma senha.
Agora, encontrei quatro modelos de e-mail no Discourse que poderiam ser usados na etapa 3: “Conta criada”, “Login via link”, “Esqueci a senha” e “Definir senha”. Na documentação da API, encontrei apenas uma chamada que envia a mensagem “Esqueci a senha”, mas isso não parece ser a melhor opção para o meu caso.
Minhas perguntas:
a) Em que circunstâncias as outras três mensagens (“Conta criada”, “Login via link” e “Definir senha”) são enviadas?
b) Como posso enviá-las via API?
‘account_created’ é usado ao utilizar o endpoint da API ‘invite admin’ e ao criar um administrador por meio da tarefa rake admin:invite.
‘login via link’ (referido internamente como email_login) é enviado quando alguém usa o link de ‘login via e-mail’.
‘set password’ é o mesmo que ‘esqueci a senha’, quando o usuário ainda não possui uma senha no banco de dados.
Acho que a melhor abordagem é criar os novos usuários como “staged” e, em seguida, enviar-lhes um convite para o tópico. Esse convite fará o login direto na conta deles em modo staged e, em seguida, os levará ao tópico. Eles não serão solicitados a criar uma senha, mas podem fazê-lo manualmente ou simplesmente usar a opção de entrar por e-mail.