定时发送个性化邮件开发教程

2020-02-27 15:30:20 +08:00
 LeanCloud

我们生活中接触到的很多互联网服务都有定时发送个性化邮件提醒的功能,比如信用卡公司会在客户每个月的账单日发出还款提醒,还有项目管理类应用会定期给用户发送即将到期的待办事项的汇总。作为应用开发者,我们该如何去实现这类功能呢?

很多邮件群发服务商允许你设定时间间隔来自动向用户发送邮件,不过这类服务的缺点是内容无法做到高度定制化。通常你可以在邮件模版中插入能够在用户列表里找到的姓名、称谓等资料,但这些资料都是静态的。如果我们希望邮件内容可以基于用户的实际使用数据来动态生成(比如在还款提醒里面插入还款金额),那么这其中一定需要某种机制从应用的数据库中拉取与用户相关的数据(通常还需进行一定的计算),这是基于模版的群发服务做不到的。另外如果需要在不同时间向不同用户发送提醒(比如不同的信用卡客户有不同的账单日,或者应用允许用户自定义接收提醒的时间和频率),那么如何管理发送时间也成了难题。

所以如果想要给用户个性化的提醒,就需要独立于邮件群发服务商之外维护一个定时器,这个定时器应该能够主动访问应用数据库并基于获取到的数据执行特定的代码;与此同时,选用一个支持通过 API 调用来传入邮件内容和收件人的邮件服务商,让前面的定时器在需要发送邮件时将相关数据传入 API。

我们制作了一个展示如何实现这些功能的 Demo。这个 Demo 包含了一个最基本的 Todo 应用,用户可以创建 Todo 项目并为每个项目设置一个截止时间,Todo 会被保存在 LeanCloud 的数据存储服务中。这个 Demo 还包含一个云函数(可以在云端执行的代码),用于查询是否有在接下来一定时间内到期但尚未完成的项目,如果有的话就会调用 SendGrid 的 API 给一个固定地址发送一封包含这些项目的邮件。这个云函数会被托管在 LeanCloud 云引擎上面,每隔一段时间执行一次。

如果大家感兴趣请 点击这里查看具体教程 >>>

2017 次点击
所在节点    推广
2 条回复
dingdangnao
2020-02-27 15:43:49 +08:00
邮件还是算了吧😂自己写的 telegram 小机器人 也很好用啊😂
CEBBCAT
2020-02-27 23:44:52 +08:00
(一篇真正的好文,应该让一个乏困的旅人也能明白你是谁,你要说什么)

楼主下次可以尝试用总分总来写软文

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/648074

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX