웹사이트에 피드백 양식이 있으며, 주로 지원 관련 질문을 위해 사용됩니다. 이 양식을 통해 제출된 질문이 Discourse 기반 포럼에서 새로운 토픽으로 생성되도록 하려는 것입니다.
다음과 같은 동작 순서를 구현하려고 합니다:
양식을 통해 제출된 이름과 이메일을 기반으로 API를 통해 새로운 사용자를 생성합니다.
이 사용자가 작성자로 등록되는 새로운 토픽을 생성합니다.
이 사용자에게 해당 토픽 링크와 함께 비밀번호 생성 요청이 포함된 이메일을 보냅니다.
현재 Discourse에서 3단계에 사용할 수 있는 네 가지 이메일 템플릿을 찾았습니다. “계정 생성”, “링크로 로그인”, “비밀번호를 잊으셨나요?” 그리고 "비밀번호 설정"입니다. API 문서에서는 “비밀번호를 잊으셨나요?” 메시지를 보내는 호출만 찾을 수 있었는데, 제 경우에는 가장 적합하지 않은 것 같습니다.
질문:
a) 나머지 세 가지 메시지(“계정 생성”, “링크로 로그인”, “비밀번호 설정”)는 어떤 상황에서 발송되나요?
b) API를 통해 이들을 어떻게 보낼 수 있나요?
'account_created’는 ‘invite admin’ API 엔드포인트를 사용할 때와 admin:invite rake 작업을 통해 관리자를 생성할 때 사용됩니다.
‘링크로 로그인’(내부적으로 email_login이라고 불림)는 사용자가 ‘이메일로 로그인’ 링크를 사용할 때 전송됩니다.
'비밀번호 설정’은 '비밀번호 찾기’와 동일하며, 데이터베이스에 이미 비밀번호가 없는 경우입니다.
가장 좋은 방법은 새 사용자를 “staged” 상태로 생성한 다음, 해당 주제에 '초대’를 보내는 것이라고 생각합니다. 이 초대를 통해 사용자는 staged 계정으로 바로 로그인되고 주제 페이지로 이동하게 됩니다. 이때 비밀번호 생성을 요구받지는 않지만, 사용자가 직접 비밀번호를 설정하거나 이메일 로그인 옵션을 사용할 수 있습니다.