App自动化运营推送解决方案
| Java
评论 0 | 点赞 0 | 浏览 423

开发运营App绕不开一个话题,那就是内容或消息的推送,他可以是通知栏弹窗、短信、邮件、站内信、应用内浮层弹窗等多种形式,我带来一种方案,既能够整合这些推送渠道,又能自定义推送策略、自定义推送人群,实现精准推送。

要做一个统一的推送方案,需要先明确以下几个问题:

1、消息推送给谁

一款产品的用户可能有数万、数百万甚至数千万,而一条运营消息的目标用户可能只是其中的一部分用户,每一条运营消息的目标用户群体可能都是不同的,因此需要一个能够灵活划分用户群体的方案。

2、消息的形式和内容是什么

消息的形式包括但不限于通知栏弹窗、短信、邮件、站内信、应用内浮层弹窗,消息的内容根据实际的产品来决定。

3、消息的推送策略是怎样的

应该考虑推送开关、推送生效的时间范围、定时推送、重复推送等策略

用户分群方案

如果你的系统有统一的用户中心且具有比较完备的用户画像功能,那么可以跳过这部分。

我推荐用神策来解决用户分群问题,神策是一个第三方的数据采集与分析平台,用户的各种浏览点击行为都会被神策收集上报,再根据用户的行为,划分用户群体。比如你可以利用神策选出最近7天未活跃的用户群体、经常购买某一类商品的用户群体......

再神策完成用户分群后,业务系统可以接入神策Api,查询到用户分群下的用户。

消息的形式和内容

消息的形式和内容可以有很多种,但不管是哪一种,基本都可以抽象成消息标题、消息内容、消息跳转链接、消息图片这几个属性。推荐做一个统一的消息推送中心来整合多种消息推送渠道。

推送策略

推送计划应该有开关能够手动控制计划是否开启

推送计划应该有生效的时间范围,生效开始时间和结束时间

应该支持定时推送

应该支持消息的重复推送

一条推送计划下面应该支持配置多个内容,内容可以是逐个推送,也可以是批量推送

推送的用户应该支持全量或者增量,全量情况下,每次推送都把消息推给分群下的所有用户,增量情况下,每次只推送给最新加入分群的用户

推送策略必须依赖定时任务组件,如果是分布式系统,必须有分布式定时任务调度服务,能够支持通过Api接口创建定时任务,例如阿里云的schedulerX


推荐的系统架构方案如下:


表结构参考

运营计划表关键字段

字段名描述
plan_name计划名称
push_type推送类型,区分短信、邮件、站内信等
start_time开始时间
end_time结束时间
enable_status开关
user_scope区分增量推送还是全量推送

trigger_cycle

定时任务触发周期,可以直接存cron表达式

repeat_frequency

一次性推送任务还是重复推送任务
user_group_id目标用户群id

job_id

定时任务id,用来修改删除定时任务

推送内容表关键字段

字段名描述
plan_id计划id

title

标题
content内容,可能是富文本

link

跳转链接,消息点击后的跳转链接

reach_time

消息触达时间

推送记录表只需要模仿推送内容表,加一个user_id即可

本文作者:不是好驴
本文链接:https://www.baddonkey.cn/detail/53
版权声明:原创文章,允许转载,转载请注明出处

高谈阔论

留言列表