dm.linov
(Dmitry)
1
我们在网站上有一个反馈表单,主要用于支持咨询。我希望将提交到该表单的问题转化为由 Discourse 驱动的新论坛主题。
我正尝试实现以下操作序列:
- 根据表单提交的用户名和电子邮件,通过 API 创建一个新用户。
- 创建由该用户发布的新主题。
- 向该用户发送一封电子邮件,其中包含该主题的链接,以及创建密码的请求。
目前,我已在 Discourse 中找到了四个可能用于步骤 3 的电子邮件模板:“账户已创建”、“通过链接登录”、“忘记密码”和“设置密码”。在 API 文档中,我只找到了一个发送“忘记密码”消息的调用,但这似乎不是最适合我案例的选项。
我的问题:
a) 其他三条消息(“账户已创建”、“通过链接登录”和“设置密码”)在什么情况下会被发送?
b) 如何通过 API 发送这些消息?
david
(David Taylor)
3
当使用“邀请管理员”API 端点,或通过 admin:invite rake 任务创建管理员时,会发送 ‘account_created’ 消息。
‘login via link’(内部称为 email_login)会在有人使用“通过电子邮件登录”链接时发送。
‘set password’ 与“忘记密码”相同,适用于数据库中该用户尚无密码的情况。
[quote=“dm.linov, post:1, topic:141825”]
- 向该用户发送一封包含本主题链接的电子邮件,并附上创建密码的请求。[/quote]
我认为最佳做法是将新用户创建为“暂存”状态,然后向他们发送该主题的“邀请”。该邀请会直接将其登录到暂存账户,然后引导至该主题。他们不会被要求创建密码,但可以手动操作,或直接使用通过电子邮件登录的选项。
dm.linov
(Dmitry)
4
谢谢你,David!
创建“暂存”用户的 API 调用是什么?我以为只能通过电子邮件创建。