如何实现消息的定期摘要?

时间:2010-03-02 19:33:55

标签: design-patterns email

我的系统向用户发送消息(电子邮件,短信等)。它目前为每个事件发送它(最多只能每天一次),但我想添加一种摘要形式,用户可以选择每周或每月的消息摘要。我想看看是否有任何现有的开源解决方案,或现有的模式来实现这样的东西。

我的系统不会保留任何消息,它们会根据需要发送出去然后被遗忘。所以这是第一件需要发生的事情。我还希望能够在网站上创建一个消息页面,显示所有消息的历史记录。

然后需要有一种机制来查看消息的用户偏好并决定何时发送消息以及如何在需要时将它们分组为摘要形式。

任何指针或想法都会受到赞赏。

2 个答案:

答案 0 :(得分:2)

将消息通常存储在具有分类模式的数据库中(例如伪代码):

TABLE message {
 id,
 created_timestamp,
 user_id,
 sent,
 type (sms, email, etc),
 content
}

然后,每天午夜时,选择发送所有发送的消息= 0和user_id =并将它们聚合成一条消息,通过指定类型的方法发送,并将其全部标记为sent = 1。

您可以通过选择发送= = 1的消息来查找历史消息集。

答案 1 :(得分:1)

如果你愿意花钱,那么古老的Listserv v16会这样做。