欢迎光临小豌豆知识网!
当前位置:首页 > 生活技术 > 运动娱乐> 消息推送方法、装置、计算机设备和存储介质独创技术42424字

消息推送方法、装置、计算机设备和存储介质

2021-02-01 09:33:52

消息推送方法、装置、计算机设备和存储介质

  技术领域

  本申请涉及数据推送领域,特别是涉及一种消息推送方法、装置、计算机设备和存储介质。

  背景技术

  目前,越来越多的游戏玩家通过手机等智能终端来玩游戏。为了让游戏玩家获得更好的游戏体验,游戏服务商需要向游戏玩家推送一些重要信息,比如,游戏服务商向游戏玩家推送即将举办的游戏活动的活动信息、向游戏玩家推送游戏服务器的突发状况等。

  当前智能终端上搭载的操作系统主要有安卓操作系统(即Android操作系统)和苹果操作系统(即IOS操作系统),所以一款游戏或者一款游戏的某个游戏区服中的游戏玩家通常可以分为使用安卓操作系统的游戏玩家和使用苹果操作系统的游戏玩家。由于目前安卓操作系统和苹果操作系统对应的消息推送方式不同,因此游戏服务商需要分别为使用安卓操作系统的游戏玩家和使用苹果操作系统的游戏玩家搭建推送服务来推送消息。

  然而,上述方案会使得游戏服务商为游戏玩家推送消息的操作变得繁琐,并且多套系统不利于后期进行维护。

  发明内容

  本发明针对现有技术的缺点,提供了一种消息推送方法、装置、计算机设备和存储介质,本发明实施例能够降低游戏服务商为游戏玩家推送消息的操作的复杂程度,并且有利于游戏服务商对推送服务的后期维护。

  本发明根据第一方面提供了一种消息推送方法,在一个实施例中,该方法包括:

  响应于来自游戏服务端或推送任务配置端的消息推送请求,确定需要推送消息的多个目标玩家账号,以及各个目标玩家账号对应的推送消息;

  确定各个目标玩家账号对应的系统标识,各个目标玩家账号对应的系统标识用于标识该各个目标玩家账号对应的目标玩家终端的操作系统类型;

  按照与各个目标玩家账号的系统标识对应的推送方式,将该各个目标玩家账号对应的推送消息推送给该各个目标玩家账号对应的目标玩家终端。

  在一个实施例中,消息推送请求包括N份玩家信息、以及与每份玩家信息对应的系统标识和推送消息,玩家信息用于确定多个目标玩家账号,N为大于0的正整数;

  确定需要推送消息的多个目标玩家账号,以及各个目标玩家账号对应的推送消息,包括:

  根据N份玩家信息确定需要推送消息的N个目标玩家组合,任一个目标玩家组合包括多个目标玩家账号;

  将各个目标玩家组合对应的玩家信息的推送消息确定为该各个目标玩家组合中所有目标玩家账号对应的推送消息;

  确定各个目标玩家账号对应的系统标识,包括:

  将各个目标玩家组合对应的玩家信息的系统标识确定为该各个目标玩家组合中所有目标玩家账号对应的系统标识。

  在一个实施例中,确定各个目标玩家账号对应的系统标识,包括:

  确定预先存储的玩家账号与系统标识的关联信息;

  根据该玩家账号与系统标识的关联信息确定各个目标玩家账号对应的系统标识。

  在一个实施例中,该消息推送方法还包括:

  接收玩家终端发送的设备信息,设备信息包括玩家终端的第一系统标识和玩家终端的第一玩家账号;

  确定该玩家账号与系统标识的关联信息中与第一玩家账号对应的第二系统标识;

  若第二系统标识与第一系统标识不一致,将该玩家账号与系统标识的关联信息中与第一玩家账号对应的系统标识更新为第一系统标识。

  在一个实施例中,按照与各个目标玩家账号的系统标识对应的推送方式,将该各个目标玩家账号对应的推送消息推送给该目标玩家账号对应的目标玩家终端,包括:

  若目标玩家账号对应的系统标识为苹果系统标识,调用苹果消息推送服务,以通过苹果消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端;

  若目标玩家账号对应的系统标识为安卓系统标识,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端。

  在一个实施例中,若目标玩家账号对应的系统标识为安卓系统标识,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端,包括:

  若目标玩家账号对应的系统标识为安卓系统标识,确定目标玩家账号对应的区域标识;

  当区域标识为第一区域标识时,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端;

  当区域标识为第二区域标识时,调用谷歌消息推送服务,以通过谷歌消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端。

  在一个实施例中,将各个目标玩家账号对应的推送消息推送给该各个目标玩家账号对应的目标玩家终端步骤之后,包括:

  若接收到该各个目标玩家账号对应的目标玩家终端发送的消息接收失败标识,调用消息重发服务,以通过消息重发服务向该各个目标玩家账号对应的目标玩家终端重新发送该各个目标玩家账号对应的推送消息,直至接收到该各个目标玩家账号对应的目标玩家终端发送的消息接收成功标识。

  本发明根据第二方面提供了一种消息推送装置,在一个实施例中,该装置包括:

  第一确定模块,用于响应于来自游戏服务端或推送任务配置端的消息推送请求,确定需要推送消息的多个目标玩家账号,以及各个目标玩家账号对应的推送消息;

  第二确定模块,用于确定各个目标玩家账号对应的系统标识,各个目标玩家账号对应的系统标识用于标识该各个目标玩家账号对应的目标玩家终端的操作系统类型;

  推送模块,用于按照与各个目标玩家账号的系统标识对应的推送方式,将该各个目标玩家账号对应的推送消息推送给该各个目标玩家账号对应的目标玩家终端。

  本发明根据第三方面提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一方法的实施例的步骤。

  本发明根据第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一方法的实施例的步骤。

  在上述实施例中,游戏服务端和搭载不同操作系统的玩家终端之间设置有推送端,该推送端集成了为安卓终端和苹果终端推送消息的方式,能够同时为安卓终端和苹果终端推送消息,当该推送端在接收到来自游戏服务端或推送任务配置端的消息推送请求之后,确定需要推送消息的多个目标玩家账号以及各个目标玩家账号对应的推送消息,以及确定各个目标玩家账号对应的系统标识,其中,各个目标玩家账号对应的系统标识用于标识该各个目标玩家账号对应的目标玩家终端的操作系统类型;最后按照与各个目标玩家账号的系统标识对应的推送方式,将该各个目标玩家账号对应的推送消息推送给该各个目标玩家账号对应的目标玩家终端,从而任何游戏服务端要推送消息时不再需要考虑其要推送的玩家终端的操作系统类型,降低了游戏服务商为游戏玩家推送消息的操作的复杂程度,另一方面,将安卓终端和苹果终端的推送方式都集成于推送端,有利于游戏服务商对推送服务的后期维护。

  附图说明

  图1为一个实施例中一种消息推送方法的应用环境图;

  图2为一个实施例中一种消息推送方法的流程示意图;

  图3为另一个实施例中一种消息推送方法的应用环境图;

  图4为另一个实施例中一种消息推送方法的流程示意图;

  图5为一个实施例中一种消息推送装置的结构框图;

  图6为一个实施例中计算机设备的内部结构图。

  具体实施方式

  为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。

  如图1所示为本发明一个实施例中消息推送方法的应用环境。图1中所示的11是游戏服务端,12是推送任务配置端,20是推送端,终端31-33是指安装了苹果操作系统的智能终端(下文简称为苹果终端),终端41-43是指安装了安卓操作系统的智能终端(下文简称为安卓终端)。上述游戏服务端可以是某个游戏的服务器、也可以是某个游戏中的某个游戏区服的服务器,上述推送端可以是负责向智能终端推送消息的服务器,上述终端可以是手机、平板电脑等计算设备。具体地,上述游戏服务端和推送端可以通过独立的服务器、或多台服务器来实现。需要说明的是,图1中示出的游戏服务端的数量以及终端的数量仅作为示例,推送端11可以对接多个游戏服务端,而推送端20需要推送的苹果终端或是安卓终端的数量也取决于具体的应用场景。

  其中,游戏服务端11需要推送消息的游戏玩家所使用的智能终端可能同时包括苹果终端和安卓终端,但游戏服务端11不需要考虑如何为这两类终端推送消息,当游戏服务端11需要向游戏玩家推送消息时,游戏服务端11只需向设置于该游戏服务端11与登录了游戏玩家的游戏账号的智能终端(即玩家终端,如图1中的终端31-33、终端41-43)之间的中间件即推送端20发送消息推送请求,以向推送端20指示其需要向哪些游戏玩家(即目标游戏玩家)推送消息,以及具体要向目标游戏玩家推送什么消息(即推送消息),然后推送端20会基于游戏服务端11发送的消息推送请求中的具体信息执行将推送消息推送给目标游戏玩家的操作。进一步地,运营人员/策划人员等具有配置推送任务权限的人可以基于其需求(比如,临时游戏活动)在推送任务配置端12上配置推送任务,然后通过推送任务配置端12向推送端20发送消息推送请求,消息推送请求中的内容与推送端12对该消息推送请求的响应过程可参考上述关于游戏服务端11与推送端20之间交互过程的描述。

  具体地,由于目前要给苹果终端推送消息只能通过苹果公司指定的推送服务即APNS(Apple Push Notification service,苹果推送通知服务)来推送消息,因此,当游戏服务端11要给使用苹果终端的游戏玩家推送消息时,推送端20需要调用外部的苹果推送服务(即前述APNS)来向该游戏玩家使用的苹果终端推送消息。而安卓终端没有指定的消息推送方式,因此推送端20中设置有图1所示的集成推送服务,推送端20通过其内部的集成推送服务向安卓终端推送消息。其中,该集成推送服务集成了多种消息推送方式,比如,C2DM(Cloud to Device Messaging,云端推送)、轮询方式、长连接方式、MQTT(Message QueuingTelemetry Transport,消息队列遥测传输协议)方式等。

  如图2所示,是本发明一个实施例提供的一种消息推送方法,下面以该方法应用于图1中的推送端20为例进行说明。该方法包括以下步骤:

  步骤S110:响应于来自游戏服务端或推送任务配置端的消息推送请求,确定需要推送消息的多个目标玩家账号,以及各个目标玩家账号对应的推送消息。

  在本实施例中,推送端接收到来自游戏服务端或推送任务配置端的消息推送请求之后,会基于该消息推送请求中包括的信息来确定出需要推送消息的多个目标玩家账号,以及各个目标玩家账号对应的推送消息。

  在一个实施方式中,推送端确定需要推送消息的多个目标玩家账号,以及各个目标玩家账号对应的推送消息的步骤,包括以下步骤:

  根据N份玩家信息确定需要推送消息的N个目标玩家组合,任一个目标玩家组合包括多个目标玩家账号;

  将各个目标玩家组合对应的玩家信息的推送消息确定为该各个目标玩家组合中所有目标玩家账号对应的推送消息。

  在本实施方式中,消息推送请求中包括N份玩家信息、以及与每份玩家信息对应的推送消息,N为大于0的正整数。其中,每份玩家信息用于确定多个目标玩家账号,目标玩家账号是游戏服务端或者推送任务配置端要推送消息的游戏玩家的游戏账号,其可以是整个游戏的唯一账号ID、游戏中某一游戏区服中的唯一账号ID,如pid123123、playerid-123123等;与玩家信息对应的推送消息是游戏服务端或推送任务配置端要推送给通过该份玩家信息确定出的所有目标玩家账号的信息;与玩家信息对应的系统标识用于标识通过该份玩家信息确定出的所有目标玩家账号对应的目标玩家终端对应的操作系统类型。

  在不同场景中,玩家信息的作用及其中包括的信息可能不同。

  对于玩家账号以及与其对应的玩家终端信息的关联信息由推送端维护的场景,玩家信息包括游戏区服标识和多个玩家账号,其中,该关联信息可以是数据映射表。可以理解的,不同游戏区服中玩家账号的数据通常会分开存储,因此在确定目标玩家账号时需要通过游戏区服标识和玩家账号来确定目标玩家账号;同一份玩家信息中的多个玩家账号属于同一游戏区服。

  在本场景中,游戏服务端或推送任务配置端只需要向推送端发送用于确定目标玩家账号的玩家信息,而不需要向推送端发送与目标玩家账号对应的玩家终端信息,推送端在确定出目标玩家账号后,可以根据该关联信息来确定出目标玩家账号对应的玩家终端(即目标玩家终端),从而能够在后续向相关的玩家终端推送与其对应的推送消息。其中,玩家终端信息可以包括设备标识、移动令牌等。

  对于玩家账号以及与其对应的玩家终端信息的关联信息由各游戏服务端或推送任务配置端维护的场景,玩家信息除了包括上述的游戏区服标识和多个玩家账号,还包括各个玩家账号对应的玩家终端信息。这样推送端能够在后续向相关的玩家终端推送与其对应的推送消息。

  步骤S120:确定各个目标玩家账号对应的系统标识,各个目标玩家账号对应的系统标识用于标识该各个目标玩家账号对应的目标玩家终端的操作系统类型。

  在本实施例中,每个玩家账号都对应有系统标识,该系统标识用于表示该玩家账号对应的玩家终端的操作系统类型,如苹果系统标识、安卓系统标识,可以理解的,苹果系统标识用于表示该玩家终端的操作系统类型为苹果操作系统,而安卓系统标识用于表示该玩家终端的操作系统类型为安卓操作系统。

  在一个实施方式中,消息推送请求中除了N份玩家信息、以及与每份玩家信息对应的推送消息,还包括与每份玩家信息对应的系统标识。

  在本实施方式中,推送端确定各个目标玩家账号对应的系统标识的步骤,包括:

  将各个目标玩家组合对应的玩家信息的系统标识确定为该各个目标玩家组合中所有目标玩家账号对应的系统标识。

  在本实施方式中,玩家账号以及与其对应的系统标识的关联信息由各游戏服务端或推送任务配置端维护,推送端本身不能确定需要推送消息的玩家终端搭载什么操作系统,因此,游戏服务端或推送任务配置端发送的消息推送请求中需要包括与每份玩家信息对应的系统标识。可以理解的,对应于同一份玩家信息的多个玩家账号的系统标识是相同的。

  在另一个实施方式中,推送端确定各个目标玩家账号对应的系统标识的步骤,包括:

  确定预先存储的玩家账号与系统标识的关联信息,根据该玩家账号与系统标识的关联信息确定各个目标玩家账号对应的系统标识。

  在本实施方式中,玩家账号以及与其对应的系统标识的关联信息由推送端维护。因此,消息推送请求中不需要包括与每份玩家信息对应的系统标识。

  进一步地,本实施方式中的消息推送方法,还包括以下步骤:

  接收玩家终端发送的设备信息,设备信息包括玩家终端的第一系统标识和玩家终端的第一玩家账号;

  确定该玩家账号与系统标识的关联信息中与第一玩家账号对应的第二系统标识;

  若第二系统标识与第一系统标识不一致,将该玩家账号与系统标识的关联信息中与第一玩家账号对应的系统标识更新为第一系统标识。

  其中,每个玩家终端会向推送端发送自身的设备信息,该设备信息包括该玩家终端对应的系统标识和玩家账号,推送端在收到设备信息后,为其生成关联信息并进行存储。

  考虑到有些游戏同时支持游戏玩家在苹果终端和安卓终端上登录同一游戏账号,而苹果终端和安卓终端采用的推送方式并不相同,为了能够保证游戏服务端或者推送任务配置端要推送的推送消息能够成功推送给相关游戏玩家,需要及时更新游戏玩家使用的玩家终端的操作类型。

  具体地,推送端在收到玩家终端发送的第一系统标识和第一玩家账号后,查询自身维护的玩家账号与系统标识的关联信息,如果该关联信息中没有与第一玩家账号,那么将该第一玩家账号和第一系统标识添加到该关联信息中;如果该关联信息中有该第一玩家账号,那么进一步确定在该关联信息中,与该第一玩家账号对应的系统标识是否为第一系统标识,假如是,那么不需要进行其他操作,假如不是,推送端需要将该关联信息中与第一玩家账号对应的系统标识更新为第一系统标识。

  步骤S130:按照与各个目标玩家账号的系统标识对应的推送方式,将该各个目标玩家账号对应的推送消息推送给该各个目标玩家账号对应的目标玩家终端。

  目前安卓操作系统和苹果操作系统各自采用的消息推送方式不同,因此,本实施例中推送端在给目标玩家账号对应的目标玩家终端推送消息时,需要采用与目标玩家账号的系统标识对应的推送方式来推送消息。

  本实施例通过在游戏服务端和搭载不同操作系统的玩家终端之间设置推送端,该推送端能够同时为安卓终端和苹果终端推送消息,从而任何游戏服务端要推送消息时不再需要考虑其要推送的玩家终端的操作系统类型,降低了游戏服务商为游戏玩家推送消息的操作的复杂程度,而把安卓终端和苹果终端的推送方式都集成于推送端,有利于游戏服务商对推送服务的后期维护。

  在一个实施方式中,推送端按照与各个目标玩家账号的系统标识对应的推送方式,将该各个目标玩家账号对应的推送消息推送给该目标玩家账号对应的目标玩家终端的步骤,包括:

  若目标玩家账号对应的系统标识为苹果系统标识,调用苹果消息推送服务,以通过苹果消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端;

  若目标玩家账号对应的系统标识为安卓系统标识,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端。

  由于目前要给苹果终端推送消息只能通过苹果公司指定的推送服务即APNS(Apple Push Notification service,苹果推送通知服务)来推送消息,因此,推送端向苹果终端推送消息时需要调用外部的苹果推送服务(即前述APNS)来向该苹果终端推送消息。而安卓终端目前没有指定的消息推送方式,因此,推送端调用集成于推送端内部的集成推送服务即可向安卓终端推送消息。

  进一步地,在一个实施例中,按照与各个目标玩家账号的系统标识对应的推送方式,将该各个目标玩家账号对应的推送消息推送给该目标玩家账号对应的目标玩家终端,包括:

  若目标玩家账号对应的系统标识为苹果系统标识,调用苹果消息推送服务,以通过苹果消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端;

  若目标玩家账号对应的系统标识为安卓系统标识,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端。

  示例性地,本实施例的应用环境如图3所示,其中,对于苹果终端,还是通过上述APSN来向苹果终端推送消息。而对于安卓终端,本实施例将安卓终端进一步划分为国(指中国)内安卓终端和国外安卓终端。对于国内安卓终端,可以通过推送端内部的集成消息推送服务来推送消息,而对于国外安卓终端,可以通过调用推送端外部的谷歌公司提供的推送服务,即FCM(firebase cloud message,firebase云消息)来推送消息。

  如图4所示,在一个实施例中,将各个目标玩家账号对应的推送消息推送给该各个目标玩家账号对应的目标玩家终端步骤之后,包括以下步骤:

  步骤S140:若接收到该各个目标玩家账号对应的目标玩家终端发送的消息接收失败标识,调用消息重发服务,以通过消息重发服务向该各个目标玩家账号对应的目标玩家终端重新发送该各个目标玩家账号对应的推送消息,直至接收到该各个目标玩家账号对应的目标玩家终端发送的消息接收成功标识。

  在本实施例中,消息重发服务可以是部署于推送端中的模块,用于执行消息重发机制。具体地,为了保证推送消息能够成功发送给目标玩家终端,玩家终端会向推送端反馈用于表示消息接收状态的标识,以使推送端基于该标识执行相应的操作。

  具体地,如果玩家终端反馈的标识是消息接受失败标识,那么推送端会调用消息重发服务向该玩家终端重新推送消息,直到接收到该玩家终端推送的消息接收成功标识。其中,可以为消息重发服务设置定时任务,使消息重发服务独立于推送端运行。推送端会将需要重发推送消息的玩家终端的相关信息发送给消息重发服务,当系统时间满足定时任务的触发条件时,消息重发服务自动执行该定时任务的任务内容。示例性地,每隔一个预设时间区间(比如,5秒、10秒等),消息重发服务就为该预设时间区间内推送端发送过来的玩家终端重发一次推送消息。

  进一步地,导致玩家终端无法成功接收推送消息的问题可能短时间内无法解决,因此可以为消息重发服务设置消息重发的最大次数阈值,消息重发服务在为玩家终端重发推送消息后,记录该玩家终端的重发次数,当该玩家终端的重发次数,即消息重发服务为该玩家终端重发推送消息的次数,达到该最大次数阈值时,那么消息重发服务就不再向该玩家终端重发推送消息,避免重复占用计算资源。

  在一个实施例中,如图5所示,提供了一种消息推送装置,包括以下模块:

  第一确定模块110,用于响应于来自游戏服务端或推送任务配置端的消息推送请求,确定需要推送消息的多个目标玩家账号,以及各个目标玩家账号对应的推送消息;

  第二确定模块120,用于确定各个目标玩家账号对应的系统标识,各个目标玩家账号对应的系统标识用于标识该各个目标玩家账号对应的目标玩家终端的操作系统类型;

  推送模块130,用于按照与各个目标玩家账号的系统标识对应的推送方式,将该各个目标玩家账号对应的推送消息推送给该各个目标玩家账号对应的目标玩家终端。

  在一个实施例中,消息推送请求包括N份玩家信息、以及与每份玩家信息对应的系统标识和推送消息,玩家信息用于确定多个目标玩家账号,N为大于0的正整数。其中,第一确定模块,包括:

  玩家组合确定子模块,用于根据N份玩家信息确定需要推送消息的N个目标玩家组合,任一个目标玩家组合包括多个目标玩家账号;

  推送消息确定子模块,用于将各个目标玩家组合对应的玩家信息的推送消息确定为该各个目标玩家组合中所有目标玩家账号对应的推送消息;

  第二确定模块,包括:

  系统标识确定子模块,用于将各个目标玩家组合对应的玩家信息的系统标识确定为该各个目标玩家组合中所有目标玩家账号对应的系统标识。

  在一个实施例中,第二确定模块,包括:

  关联信息确定子模块,用于确定预先存储的玩家账号与系统标识的关联信息;

  系统标识确定子模块,用于根据该玩家账号与系统标识的关联信息确定各个目标玩家账号对应的系统标识。

  在一个实施例中,设备信息接收模块,用于接收玩家终端发送的设备信息,设备信息包括玩家终端的第一系统标识和玩家终端的第一玩家账号;

  第三确定模块,用于确定该玩家账号与系统标识的关联信息中与第一玩家账号对应的第二系统标识;

  更新模块,用于在第二系统标识与第一系统标识不一致时,将该玩家账号与系统标识的关联信息中与第一玩家账号对应的系统标识更新为第一系统标识。

  在一个实施例中,推送模块,包括:

  第一推送子模块,用于在目标玩家账号对应的系统标识为苹果系统标识时,调用苹果消息推送服务,以通过苹果消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端;

  第二推送子模块,用于在目标玩家账号对应的系统标识为安卓系统标识时,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端。

  在一个实施例中,第二推送子模块,包括:

  区域标识确定单元,用于在目标玩家账号对应的系统标识为安卓系统标识时,确定目标玩家账号对应的区域标识;

  第一推送单元,用于当区域标识为第一区域标识时,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端;

  第二推送单元,用于当区域标识为第二区域标识时,调用谷歌消息推送服务,以通过谷歌消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端。

  在一个实施例中,该消息推送装置还包括消息重发模块140。

  其中,消息重发模块140,用于在接收到该各个目标玩家账号对应的目标玩家终端发送的消息接收失败标识时,调用消息重发服务,以通过消息重发服务向该各个目标玩家账号对应的目标玩家终端重新发送该各个目标玩家账号对应的推送消息,直至接收到该各个目标玩家账号对应的目标玩家终端发送的消息接收成功标识。

  关于消息推送装置的具体限定可以参见上文中对于消息推送方法的限定,在此不再赘述。上述消息推送装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

  在一个实施例中,提供了一种计算机设备,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储玩家账号与其对应的玩家终端的关联信息等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种消息推送方法。

  本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

  在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:

  响应于来自游戏服务端或推送任务配置端的消息推送请求,确定需要推送消息的多个目标玩家账号,以及各个目标玩家账号对应的推送消息;确定各个目标玩家账号对应的系统标识,各个目标玩家账号对应的系统标识用于标识该各个目标玩家账号对应的目标玩家终端的操作系统类型;按照与各个目标玩家账号的系统标识对应的推送方式,将该各个目标玩家账号对应的推送消息推送给该各个目标玩家账号对应的目标玩家终端。

  在一个实施例中,消息推送请求包括N份玩家信息、以及与每份玩家信息对应的系统标识和推送消息,玩家信息用于确定多个目标玩家账号,N为大于0的正整数;处理器执行计算机程序,实现确定需要推送消息的多个目标玩家账号,以及各个目标玩家账号对应的推送消息时,还实现以下步骤:

  根据N份玩家信息确定需要推送消息的N个目标玩家组合,任一个目标玩家组合包括多个目标玩家账号;将各个目标玩家组合对应的玩家信息的推送消息确定为该各个目标玩家组合中所有目标玩家账号对应的推送消息;

  处理器执行计算机程序,实现确定各个目标玩家账号对应的系统标识时,还实现以下步骤:

  将各个目标玩家组合对应的玩家信息的系统标识确定为该各个目标玩家组合中所有目标玩家账号对应的系统标识。

  在一个实施例中,处理器执行计算机程序,实现确定各个目标玩家账号对应的系统标识时,还实现以下步骤:

  确定预先存储的玩家账号与系统标识的关联信息,根据该玩家账号与系统标识的关联信息确定各个目标玩家账号对应的系统标识。

  在一个实施例中,处理器执行计算机程序,还实现以下步骤:

  接收玩家终端发送的设备信息,设备信息包括玩家终端的第一系统标识和玩家终端的第一玩家账号;确定该玩家账号与系统标识的关联信息中与第一玩家账号对应的第二系统标识;若第二系统标识与第一系统标识不一致,将该玩家账号与系统标识的关联信息中与第一玩家账号对应的系统标识更新为第一系统标识。

  在一个实施例中,处理器执行计算机程序,实现按照与各个目标玩家账号的系统标识对应的推送方式,将该各个目标玩家账号对应的推送消息推送给该目标玩家账号对应的目标玩家终端时,还实现以下步骤:

  若目标玩家账号对应的系统标识为苹果系统标识,调用苹果消息推送服务,以通过苹果消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端;若目标玩家账号对应的系统标识为安卓系统标识,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端。

  在一个实施例中,处理器执行计算机程序,实现若目标玩家账号对应的系统标识为安卓系统标识,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端时,还实现以下步骤:

  若目标玩家账号对应的系统标识为安卓系统标识,确定目标玩家账号对应的区域标识;当区域标识为第一区域标识时,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端;当区域标识为第二区域标识时,调用谷歌消息推送服务,以通过谷歌消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端。

  在一个实施例中,处理器执行计算机程序时,实现将各个目标玩家账号对应的推送消息推送给该各个目标玩家账号对应的目标玩家终端步骤之后,还实现以下步骤:

  若接收到该各个目标玩家账号对应的目标玩家终端发送的消息接收失败标识,调用消息重发服务,以通过消息重发服务向该各个目标玩家账号对应的目标玩家终端重新发送该各个目标玩家账号对应的推送消息,直至接收到该各个目标玩家账号对应的目标玩家终端发送的消息接收成功标识。

  在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

  响应于来自游戏服务端或推送任务配置端的消息推送请求,确定需要推送消息的多个目标玩家账号,以及各个目标玩家账号对应的推送消息;确定各个目标玩家账号对应的系统标识,各个目标玩家账号对应的系统标识用于标识该各个目标玩家账号对应的目标玩家终端的操作系统类型;按照与各个目标玩家账号的系统标识对应的推送方式,将该各个目标玩家账号对应的推送消息推送给该各个目标玩家账号对应的目标玩家终端。

  在一个实施例中,消息推送请求包括N份玩家信息、以及与每份玩家信息对应的系统标识和推送消息,玩家信息用于确定多个目标玩家账号,N为大于0的正整数;计算机程序被处理器执行,确定需要推送消息的多个目标玩家账号,以及各个目标玩家账号对应的推送消息时,还实现以下步骤:

  根据N份玩家信息确定需要推送消息的N个目标玩家组合,任一个目标玩家组合包括多个目标玩家账号;将各个目标玩家组合对应的玩家信息的推送消息确定为该各个目标玩家组合中所有目标玩家账号对应的推送消息;

  确定各个目标玩家账号对应的系统标识时,还实现以下步骤:

  将各个目标玩家组合对应的玩家信息的系统标识确定为该各个目标玩家组合中所有目标玩家账号对应的系统标识。

  在一个实施例中,计算机程序被处理器执行,确定各个目标玩家账号对应的系统标识时,还实现以下步骤:

  确定预先存储的玩家账号与系统标识的关联信息,根据该玩家账号与系统标识的关联信息确定各个目标玩家账号对应的系统标识。

  在一个实施例中,计算机程序被处理器执行,还实现以下步骤:

  接收玩家终端发送的设备信息,设备信息包括玩家终端的第一系统标识和玩家终端的第一玩家账号;确定该玩家账号与系统标识的关联信息中与第一玩家账号对应的第二系统标识;若第二系统标识与第一系统标识不一致,将该玩家账号与系统标识的关联信息中与第一玩家账号对应的系统标识更新为第一系统标识。

  在一个实施例中,计算机程序被处理器执行,按照与各个目标玩家账号的系统标识对应的推送方式,将该各个目标玩家账号对应的推送消息推送给该目标玩家账号对应的目标玩家终端时,还实现以下步骤:

  若目标玩家账号对应的系统标识为苹果系统标识,调用苹果消息推送服务,以通过苹果消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端;若目标玩家账号对应的系统标识为安卓系统标识,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端。

  在一个实施例中,计算机程序被处理器执行,若目标玩家账号对应的系统标识为安卓系统标识,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端时,还实现以下步骤:

  若目标玩家账号对应的系统标识为安卓系统标识,确定目标玩家账号对应的区域标识;当区域标识为第一区域标识时,调用集成消息推送服务,以通过集成消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端;当区域标识为第二区域标识时,调用谷歌消息推送服务,以通过谷歌消息推送服务将目标玩家账号对应的推送消息推送给目标玩家账号对应的目标玩家终端。

  在一个实施例中,计算机程序被处理器执行时,将各个目标玩家账号对应的推送消息推送给该各个目标玩家账号对应的目标玩家终端步骤之后,还实现以下步骤:

  若接收到该各个目标玩家账号对应的目标玩家终端发送的消息接收失败标识,调用消息重发服务,以通过消息重发服务向该各个目标玩家账号对应的目标玩家终端重新发送该各个目标玩家账号对应的推送消息,直至接收到该各个目标玩家账号对应的目标玩家终端发送的消息接收成功标识。

  本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

  以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

  以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

《消息推送方法、装置、计算机设备和存储介质.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)