APP消息推送功能,后台如何设计消息系统?消息系统的架构是什么样的?

1、背景:目前APP离不开消息推送,终端准备做消息推送功能,需要后台支持配置。 2、困惑点:对消息系统架构不熟悉,刚转入产品,不知从哪些角度去分析消息系统。
阅读全文
请先 登录 后评论
  • 0 关注
  • 0 收藏 161 浏览
  • 略问用户 提出于 2021-07-21 14:42:08

4 个回答

xxxxxa

消息推送是让自己的用户获取信息最有效和最直接的方式。

消息推送系统是对产品来说非常重要,消息推送设计也是初级产品的入门课程。

(ps:最近刚好做到后台消息推送这块,简单谈谈个人心得,欢迎拍砖)http://www.pmcaff.com/article/index/727439371381888?from=profile

消息推送是提升产品留存率、活跃度的重要功能,常见的消息一般是标题+内容,可推送优惠、活动、资讯等。

消息推送分为本地通知和服务器通知。

本地通知是指由APP本地发起,无需联网,如游戏定时任务、闹钟提醒、版本更新、基于地理位置提醒等。

服务器通知由服务器发送消息,APP联网下接收,后台设置好消息标题、内容、目标用户、音效,来发送消息。

消息推送后台设计

苹果版推送功能必须将消息、deviceToken发给苹果服务器,苹果再通过deviceToken找到用户,并将消息发给用户。安卓可自家搭建推送服务器,将消息直接发给用户,或用百度云、信鸽、极光第三方推送服务器。

苹果和安卓都可用第三方推送后台(如友盟、激光),弊端需从本地数据库导出目标用户token,比较麻烦,也可自己开发推送后台,通过关键字刷选目标用户,这样灵活方便些。

微信截图_20170428133827.png

微信截图_20170428131542.png

苹果允许用户设置app的消息推送开关,安卓很多厂家定制rom也模仿苹果设置推送通知开关,这使得消息达到率大打折扣。

消息推送APP端设计

APP接收到消息后,一般在显示于手机通知栏,点击消息调起APP进入消息详情页,点击详情页左上角返回按钮,则回到APP首页。

微信截图_20170428134640.png

建议提供我的消息的功能,以便用户查看推送消息历史记录,通过角标、已读、未读等设计吸引用户读取消息。

建议提供推送设置功能,允许用户设置推送消息是否显示于通知栏、接收消息音效、接收时间等。

推送策略设计

1、选择合适的时间进行推送,尽量避开用户休息时间(晚上22:00-早上8:00)推送,减少对用户的干扰;

2、一切从用户需求出发,精准推送。根据用户的地理位置、渠道、活跃度等维度对用户分群,从数据去提炼用户需求和使用场景,对不同的用户群推送不同的内容,能大幅度提高消息的准确度和匹配度。

例如一些视频App就利用大数据,针对不同用户的观剧偏好提供个性化的消息推送,订阅视频、同类视频更新提醒,而且常在晚上6点后推送,正是人群观影高峰期前段。百度视频App就宣称,其精准推送使得用户打开消息推送的比例提高了3-5倍;

4、结合热点,挖掘用户喜闻乐见的内容进行推送,用户关注度更高。以下是两个健身类App乐动力和完美囚徒健身的消息推送对比,尽管都是下午时间段推送,但是第二个结合统计数据和好友PK的消息,更能激发起用户的锻炼欲望;

消息流程设计
未命名文件(2).png

消息推送场景分析

微信截图_20170428125341.png

最后上个消息推送案例,实在编不下去了

微信截图_20170428125006.png

请先 登录 后评论
xxxxxa

不知道你在问这个问题之前有没有去了解过这方面的问题哈,还有就是楼上一个妹子的回答让我有点诧异。作为半个技术岗的我,都很少会一上来直接来个APNs什么什么的。我们做产品,不说懂技术多少,至少你在做这个东西之前,你得去了解一下市面上有什么还有自行实现的成本是什么,对比以后再拿数据说话。

消息推送的话就现在来看,基本都会使用第三方的推送来做,第一方便,第二节省成本,第三避免不需要的人员开支以及设备维护。现在常用的基本都是腾讯的信鸽,百度云推,极光,个推,华为云推,友盟等等一系列的第三方平台,拿到sdk,简单配置,调试就可以了。对于推送是作为辅助业务的公司,请尽管选择第三方平台来进行你所需要的服务;如果推送是作为你的主打服务,需要保持极高的精度和准确度,那么请招人搭设自己的服务器以及专人开发及维护,因为第三方肯定是满足不了你的高强度需求的。

至于消息架构的问题,第一个回答的大大写得很清楚了,我就不不懂装懂了。

请先 登录 后评论
xxxxxa

首先认真仔细的看完了田凯大大的回答,针对流程设计和推送场景分析感觉很棒,也很具体,已经收藏起来,感恩。

其次,针对APP的推送功能,以下是我展开的两个方面的思考。

一、安卓系统和IOS系统系统推送的原理或者怎样触发push?

为什么思考这个问题呢,因为我认为任何东西只要把原理搞清楚了,之后的事情就是水到渠成的。

IOS系统中的推送原理是APP的PUSH服务器把要发送的消息发给APNS(苹果服务器的简称),APNS接收到消息以后在已经注册的服务列表里,查找到相应标识的IPHONE,然后将消息发送给它们。目标IPONE收到消息以后,将消息传递给用户手机的APP程序,程序按照规定弹出PUSH通知。

安卓系统的推送是通过自身应用单独后台进程与各自服务器交换数据从而触发程序弹出PUSH通知。这里的PUSH系统可以自己开发,市面上目前也有一些服务平台,例如腾讯的信鸽推送,百度的云,PUSH WOOSH,个推,友盟等。不过这些第三方的平台,私下里认为只适合做内容运营类的PUSH,他们目标是为我们省出来更多的时间,加快产品开发进度,而不会为我们提供个性化运营方案,所以一般还是建议自己开发PUSH系统。

说完原理以后,就进入第二个问题了。

二、我们开发PUSH系统的目的是什么?如何更好的运营APP消息推送?

针对目的,我们希望通过推送提高产品活跃度,有效带动产品其他模块的使用率,唤醒沉睡的用户等等。这些都是基于我们设计PUSH的功能产品的角度去思考的。然而,到了用户的手中,若假设他手机上最少有10个APP,一天不关闭推送的情况下,最少也会收到10条推送,且有的APP每天推送的频率会超过2次,所以给用户造成了极大的困扰。在这种情况下,我们自己都会主动关闭推送功能,而且若在没有设置推送功能可以进行自我选择的情况下,最快速的解决心理烦躁的行为就是卸载。

因此,我们在设计这个系统的时候,首先应该尽量将运营方向定为功能性推送的运营,其次给用户一定的选择自由。做用户的贴心助手,这才是我们开发这个系统的目的。

如何更好的运营APP消息推送?1.减少营销型的内容推送,多一些功能型的。2.尽量减少给用户推送的次数,且根据每个用户的使用习惯,建立数据库,确保推送的内容是有效的。3.根据自己产品的客户使用场景去反推消息推送的时间。例如,最近喜欢上了每天早餐自己做早餐,若使用的美食类的APP监测到我这个习惯以后,给我最好的推送的时间就是每周日下午1-4点(喜欢提前一周做计划的用户)或者是每天下午6-8点(针对不知道第二天吃啥但又要买菜的客户)。

一点点小思考,谢谢提问的上善若水,还有田凯大大的高质量的回答。

请先 登录 后评论
xxxxxa

通常直接用友盟、个推的第三方接口来实现推送。

对于运营端,需要支持个性化自定义的操作界面,如果第三方提供的界面可以满足,则直接用,比如个推。如果不能满足,则根据推送需求来设计操作界面即可。

请先 登录 后评论