具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为一个实施例中信息推送任务执行方法的应用环境图。参照图1,该信息推送任务执行方法应用于信息推送任务执行系统。信息推送任务执行系统包括终端110、推送服务器120、业务服务器130、队列服务器140和终端150,其中终端110和终端150通过网络与推送服务器120、业务服务器130和队列服务器140连接,推送服务器120、业务服务器130和队列服务器140之间通过网络连接。终端110和终端150可以是固定终端或移动终端,固定终端具体可以是打印机、扫描仪和监控器中的至少一种,移动终端具体可以是平板电脑、智能手机、个人数据助理和数码相机中的至少一种。
图2为一个实施例中图1信息推送任务执行系统中的推送服务器120的内部结构示意图。如图2所示,该推送服务器120包括通过系统总线连接的处理器、非易失性存储介质、内存储器和网络接口。推送服务器120的处理器用于提供计算和控制能力,支撑整个推送服务器120的运行,存储器用于存储数据、代码指令等,网络接口用于与终端110、队列服务器130、业务服务器140和终端150进行网络通信。存储器上存储有至少一个计算机可执行指令,该计算机可执行指令可被处理器执行,以实现本申请实施例中提供的适用于推送服务器120的信息推送任务执行方法。存储器可包括磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。例如,在一个实施例中,存储器包括非易失性存储介质及内存储器;非易失性存储介质存储有操作系统、数据库和计算机可执行指令,数据库存储着多个消息推送方案和与各消息推送方案对应的消息推送模板,该计算机可执行指令可被处理器执行以实现上述的信息推送任务执行方法;内存储器为非易失性存储介质中的操作系统及计算机可执行指令提供高速缓存的运行环境。
如图3所示,在一个实施例中,提供一种信息推送任务执行方法,本实施例以该方法应用于图1中的推送服务器120来举例说明,该方法具体包括以下内容:
S302,监听任务消息队列中由业务服务器添加的信息推送任务;信息推送任务为业务服务器根据用户消费信息生成的。
具体地,终端150可以通过浏览器或安装的业务应用访问业务服务器140。业务服务器140通过浏览器或业务应用向终端150提供业务服务。用户在终端150的浏览器或安装的业务应用中输入用户账号登录到业务服务器140提供的业务交易页面。用户通过终端150登录的业务交易页面购买产品,在用户购买成功后,业务服务器140获取用户所购买的产品信息和用户账号,根据获取到的产品信息和用户账号生成用户消费信息。其中,用户消费信息包括产品标识、购买产品的订单号、消费金额和用户账号,还可以包括应用标识;产品标识包括产品名称和产品编号。
业务服务器140根据用户消费信息生成信息推送任务,将信息推送任务添加到业务对应的任务消息队列中。推送服务器120监听任务消息对列中是否存在信息推送任务。其中,任务消息队列可以设置在推送服务器120、队列服务器130和业务服务器140中任一种服务器上。
在一个实施例中,业务服务器140获取配置的队列标识,在队列服务器130中查询与获取的队列标识对应的任务消息队列,将生成的信息推送任务添加到查询到的任务消息队列中。
S304,从监听到的信息推送任务中提取用户消费信息。
具体地,推送服务器120监听任务消息队列中存在业务服务器140添加的信息推送任务后,从任务消息队列中获取监听到的信息推送任务,从获取到的信息推送任务中提取用户消费信息。
S306,查询与提取到的用户消费信息匹配的信息推送方案。
具体地,推送服务器120从提取到的用户消费信息中获取的应用标识和方案匹配值,根据应用标识从数据库中查询对应的信息推送方案,检测查询到的信息推送方案中的方案匹配值与获取的方案匹配值是否匹配,若匹配,则查询到的信息推送方案为可用方案;若不匹配,查询到的信息推送方案为不可用方案。
在一个实施例中,用户消费信息中包括多种类型的消费信息。推送服务器120获取提取到的用户消费信息中的消费信息类型标识,根据获取到的消费信息类型标识查询匹配的信息推送方案。
在一个实施例中,推送服务器120可以提取用户消费信息中的应用标识和业务类型,根据查询与应用标识和业务类型匹配的信息推送方案。
S308,获取查询到的信息推送方案所对应的消息推送模板。
具体地,推送服务器120查询到与提取到的用户消费信息匹配的信息推送方案后,从查询到的信息推送方案中提取消息推送模板标识,从数据库中查询与提取到的消息推送模板标识对应的消息推送模板。
S310,根据提取到的用户消费信息和获取的消息推送模板生成推送消息体。
具体地,推送服务器120在提取到的用户消费信息中查询待推送的信息,将待推送的信息填写到获取到的消息推送模板中,生成推送消息体。
S312,将生成的推送消息体推送至以包含于提取到的用户消费信息的用户账号所登录的终端。
具体地,推送服务器120从提取到的用户消费信息中获取用户账号,查询以获取到的用户账号登录的终端,将推送消息体发送至查询到的终端。用户可以通过终端上安装的应用或浏览器查看接收到的推送消息体中的消息内容。
在一个实施例中,S312具体包括以下内容:获取与查询到的消息推送方案对应的推送通道类型;通过与获取的推送通道类型对应的推送通道,将生成的推送消息体推送至以包含于提取到用户消费信息中的用户账号所登录的终端。
具体地,推送服务器120从查询到的消息推送方案中提取对应的推送通道类型,推送通道类型包括短信类型和应用程序类型中的至少一种。推送服务器120从提取到的用户消费信息中获取与提取到的推送通道类型匹配的用户账号,推送服务器120通过与提取到的推送通道类型对应的推送通道,将推送消息体推送至以获取到的用户账号登录的终端。其中,若提取到的推送通道类型为短信类型,则与短信类型匹配的用户账号为手机号码;若提取到的推送通道类型为应用程序类型,则与应用程序类型匹配的用户账号为登录应用程序的用户账号。
本实施例中,在监听到任务消息对中存在业务服务添加的信息推送任务时,从监听到的信息推送任务中提取用户消费信息,查询与提取到的用户消费信息匹配的信息推送方案,保证可以根据匹配的信息推送方案进行信息推送。在查询到匹配的信息推送方案,获取查询到的信息推送方案所对应的消息推送模板,根据提取到用户消费信息和获取到的消息推送模板生成推送消息体,使生成的推送消息体具有针对性。从提取到的用户消费信息中获取用户账号,将具有针对性的推送消息发送至相应的用户账号登录的终端,保证推送的推送消息体与用户消费信息相匹配,从而提高了信息推送的准确率。
如图4所示,在一个实施例中,S302具体包括监听任务消息队列的步骤,该步骤具体包括以下内容:
S402,接收以推送管理员账号登录的终端上传的队列监听指令。
具体地,推送管理员可以推送管理员账号输入终端110来登录推送服务器120提供的队列监听配置页面,推送管理员在队列监听配置页面中输入队列监听配置信息。其中队列监听配置信息包括队列标识,还可以包括业务类型、队列服务器地址和消息推送任务的解析格式标识中的至少一种。终端110获取队列监听配置页面中输入的队列监听配置信息,根据队列监听配置信息生成队列监听指令,将队列监听指令发送至推送服务器120。推送服务器120接收终端110上传的队列监听指令。
S404,提取队列监听指令中的队列标识。
具体地,推送服务器120接收到终端110上传的队列监听指令后,对队列监听指令进行解析,通过解析提取队列监听指令中的队列监听配置信息,从队列监听配置信息中提取队列标识。
S406,在队列服务器中查询与提取到的队列标识对应的任务消息队列。
具体地,队列服务器130中建立有多个任务消息队列,一个应用可以对应一个或多个任务消息队列,一个任务消息队列对应一个应用。推送服务器120提取对列监听配置信息中的队列服务器地址,根据队列服务器地址访问队列服务器130。推送服务器120在队列服务器130中根据提取到的队列标识查询任务消息队列。
S408,监听查询到的任务消息队列中由业务服务器添加的信息推送任务。
具体地,推送服务器120在查询到任务消息队列后,监听查询到的消息队列中是否存在业余服务器140添加的信息推送任务。其中,信息推送任务为业务服务器140根据用户消费信息生成的。
本实施例中,在接收到终端上传的队列监控指令,根据队列监控指令中携带的队列标识在队列服务器中查询任务消息队列,对查询到的任务消息队列进行监听,保证监听到正确的任务消息队列,提供队列监听的准确性。
如图5所示,在一个实施例中,S306具体还包括查询消息推送方案的步骤,该步骤具体包括以下内容:
S502,提取用户消费信息中的应用标识和各类消费信息的消息类型标识。
具体地,用户消费信息中包括应用标识和各类消费信息,其中各类消息信息分别与对应的消息类型标识对应存储。推送服务器120从用户消息信息中提取应用标识和各类消费信息对应的消息类型标识。
S504,获取应用标识对应的消息推送方案集合。
具体地,推送服务器120的数据库中存储着消息推送方案和应用标识,各消息推送方案分别与应用标识对应,一个消息推送方案可以对应一个应用标识,一个应用标识可以对应一个或多个消息推送方案。推送服务器120在数据库中查询应用标识对应的多个消息推送方案,得到应用标识对应的消息推送方案集合。
S506,在获取到的消息推送方案集合中查询与提取到的消息类型标识匹配的消息推送方案。
具体地,不同的消息推送方案对应的消息类型标识不同。推送服务器120在获取到的消息推送方案集合中查询与提取到的消息类型标识匹配的消息推送方案。
本实施例中,从用户消费信息中提取应用标识和各类消费信息的消息类型标识,根据应用标识获取消息推送方案集合,缩小了消息推送方案的查询范围。在获取到的消息推送方案集合中查询与消息类型标识匹配的消息推送方案,提高了查询消息推送方案的准确性。
如图6所示,在一个实施例中,S310具体还包括生成推送消息体的步骤,该步骤具体包括以下内容:
S602,从获取到的消息推送模板中提取待添加信息的信息标识。
具体地,消息推送模板包括固定信息和待添加信息的信息标识。推送服务器120在获取到的消息推送模板中提取待添加信息的信息标识。
S604,在提取到的用户消费信息中查询与提取到的信息标识匹配的待添加信息。
具体地,推送服务器120在从消息推送模板中提取待添加信息的信息标识后,根据提取到的信息标识在提取到的用户消费信息中查询匹配的待添加信息。
S606,将查询到的待添加信息添加到获取到的消息推送模板中生成推送消息体。
具体地,推送服务器120将查询到的待添加信息,添加到消息推送模板中的信息标识对应的位置,在将查询到的待添加信息添加到消息推送模板中后,根据消息推送模板中添加的信息和固定信息生成了完整的推送消息体。
本实施例中,根据消息推送模板中的待添加信息的信息标识,在用户消费信息中查询与信息标识对应的待添加信息,将查询到的待添加信息添加到消息推送模板中,根据消息推送模板中添加的信息和固定信息生成了完整的推送消息体,使推送消息体与用户消费信息相匹配,提高了推送消息体的准确性,使得推送消息体更加具有针对性。
在一个实施例中,推送管理员在终端110中输入推送管理员账号,登录到推送服务器120的队列监听配置页面,通过在队列监听配置页面中输入监听配置信息向推送服务器120发送队列监听指令。
推送服务器120接收到队列监听指令后,提取队列监听指令中的队列标识,对队列服务器130中与提取到的队列标识对应的任务消息队列进行监听,监听该任务消息队列中是否存在业务服务器140添加的信息推送任务。其中,信息推送任务是业务服务器140根据用户消费信息生成的。
例如,用户通过在终端150中输入用户账号登录到业务服务器140提供的业务交易页面,用户在业务交易页面中购买了产品,业务服务器140就会产生相应的用户消费信息,用户消费信息包括应用标识、订单号、消费金额、方案匹配值、用户账户和产品标识等。
推送服务器120监听到任务消息队列中存在任务消息队列时,提取监听到的任务消息队列中的用户消费信息,根据用户消费信息中应用标识、产品标识和方案匹配值,根据应用标识和产品标识在数据库中查询对应的信息推送方案,检验用户消费信息中的方案匹配值与信息推送方案中的方案匹配值是否一致。
推送服务器120在检验到用户消费信息中的方案匹配值与信息推送方案中的方案匹配值一致时,提取信息推送方案中的消息推送模板标识,根据消息推送模板标识从数据库中获取消息推送模板。推送服务器120提取消息推送模板中待添加信息的信息标识,在用户消费信息中查询信息标识对应的待添加信息,将查询到的待添加信息添加到消息推送模板中得到推送消息体。例如,待添加信息的信息标识为订单号、用户账号和消费金额等。推送服务器120提取用户消费信息中的用户账号,将推送消息体推送至以提取到的用户账号登录的终端。
如图7所示,在一个实施例中,提供一种信息推送任务执行装置700,该装置具体包括以下内容:队列监听模块702、信息提取模块704、方案查询模块706、模板获取模块708、消息体生成模块710和消息体推送模块712。
队列监听模块702,用于监听任务消息队列中由业务服务器添加的信息推送任务;信息推送任务为业务服务器根据用户消费信息生成的。
信息提取模块704,用于从监听到的信息推送任务中提取用户消费信息。
方案查询模块706,用于查询与提取到的用户消费信息匹配的信息推送方案。
模板获取模块708,用于获取查询到的信息推送方案所对应的消息推送模板。
消息体生成模块710,用于根据提取到的用户消费信息和获取的消息推送模板生成推送消息体。
消息体推送模块712,用于将生成的推送消息体推送至以包含于提取到的用户消费信息的用户账号所登录的终端。
在一个实施例中,消息体推送模块712还用于获取与查询到的消息推送方案对应的推送通道类型;通过与获取的推送通道类型对应的推送通道,将生成的推送消息体推送至以包含于提取到用户消费信息中的用户账号所登录的终端。
本实施例中,在监听到任务消息对中存在业务服务添加的信息推送任务时,从监听到的信息推送任务中提取用户消费信息,查询与提取到的用户消费信息匹配的信息推送方案,保证可以根据匹配的信息推送方案进行信息推送。在查询到匹配的信息推送方案,获取查询到的信息推送方案所对应的消息推送模板,根据提取到用户消费信息和获取到的消息推送模板生成推送消息体,使生成的推送消息体具有针对性。从提取到的用户消费信息中获取用户账号,将具有针对性的推送消息发送至相应的用户账号登录的终端,保证推送的推送消息体与用户消费信息相匹配,从而提高了信息推送的准确率。
如图8所示,在一个实施例中,队列监听模块702具体包括以下内容:监听指令接收模块702a、队列标识提取模块702b、任务队列查询模块702c和推送任务监听模块702d。
监听指令接收模块702a,用于接收以推送管理员账号登录的终端上传的队列监听指令。
队列标识提取模块702b,用于提取队列监听指令中的队列标识。
任务队列查询模块702c,用于在队列服务器中查询与提取到的队列标识对应的任务消息队列。
推送任务监听模块702d,用于监听查询到的任务消息队列中由业务服务器添加的信息推送任务。
本实施例中,在接收到终端上传的队列监控指令,根据队列监控指令中携带的队列标识在队列服务器中查询任务消息队列,对查询到的任务消息队列进行监听,保证监听到正确的任务消息队列,提供队列监听的准确性。
如图9所示,在一个实施例中,方案查询模块706具体包括:类型标识提取模块706a、推送方案获取模块706b和推送方案查询模块706c。
类型标识提取模块706a,用于提取用户消费信息中的应用标识和各类消费信息的消息类型标识;
推送方案获取模块706b,用于获取应用标识对应的消息推送方案集合;
推送方案查询模块706c,用于在获取到的消息推送方案集合中查询与提取到的消息类型标识匹配的消息推送方案。
本实施例中,从用户消费信息中提取应用标识和各类消费信息的消息类型标识,根据应用标识获取消息推送方案集合,缩小了消息推送方案的查询范围。在获取到的消息推送方案集合中查询与消息类型标识匹配的消息推送方案,提高了查询消息推送方案的准确性。
如图10所示,在一个实施例中,消息体生成模块710具体还包括:标识提取模块710a、信息查询模块710b和信息添加模块710c。
标识提取模块710a,用于从获取到的消息推送模板中提取待添加信息的信息标识。
信息查询模块710b,用于在提取到的用户消费信息中查询与提取到的信息标识匹配的待添加信息。
信息添加模块710c,用于将查询到的待添加信息添加到获取到的消息推送模板中生成推送消息体。
本实施例中,根据消息推送模板中的待添加信息的信息标识,在用户消费信息中查询与信息标识对应的待添加信息,将查询到的待添加信息添加到消息推送模板中,根据消息推送模板中添加的信息和固定信息生成了完整的推送消息体,使推送消息体与用户消费信息相匹配,提高了推送消息体的准确性,使得推送消息体更加具有针对性。
一种计算机设备,计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:监听任务消息队列中由业务服务器添加的信息推送任务;信息推送任务为业务服务器根据用户消费信息生成的;从监听到的信息推送任务中提取用户消费信息;查询与提取到的用户消费信息匹配的信息推送方案;获取查询到的信息推送方案所对应的消息推送模板;根据提取到的用户消费信息和获取的消息推送模板生成推送消息体;将生成的推送消息体推送至以包含于提取到的用户消费信息的用户账号所登录的终端。
在一个实施例中,监听任务消息队列中由业务服务器添加的信息推送任务,包括:接收以推送管理员账号登录的终端上传的队列监听指令;提取队列监听指令中的队列标识;在队列服务器中查询与提取到的队列标识对应的任务消息队列;监听查询到的任务消息队列中由业务服务器添加的信息推送任务。
在一个实施例中,查询与提取到的用户消费信息匹配的信息推送方案,包括:提取用户消费信息中的应用标识和各类消费信息的消息类型标识;获取应用标识对应的消息推送方案集合;在获取到的消息推送方案集合中查询与提取到的消息类型标识匹配的消息推送方案。
在一个实施例中,根据提取到的用户消费信息和获取的消息推送模板生成推送消息体,包括:从获取到的消息推送模板中提取待添加信息的信息标识;在提取到的用户消费信息中查询与提取到的信息标识匹配的待添加信息;将查询到的待添加信息添加到获取到的消息推送模板中生成推送消息体。
在一个实施例中,将生成的推送消息体推送至以包含于提取到的用户消费信息的用户账号所登录的终端,包括:获取与查询到的消息推送方案对应的推送通道类型;通过与获取的推送通道类型对应的推送通道,将生成的推送消息体推送至以包含于提取到用户消费信息中的用户账号所登录的终端。
本实施例中,在监听到任务消息对中存在业务服务添加的信息推送任务时,从监听到的信息推送任务中提取用户消费信息,查询与提取到的用户消费信息匹配的信息推送方案,保证可以根据匹配的信息推送方案进行信息推送。在查询到匹配的信息推送方案,获取查询到的信息推送方案所对应的消息推送模板,根据提取到用户消费信息和获取到的消息推送模板生成推送消息体,使生成的推送消息体具有针对性。从提取到的用户消费信息中获取用户账号,将具有针对性的推送消息发送至相应的用户账号登录的终端,保证推送的推送消息体与用户消费信息相匹配,从而提高了信息推送的准确率。
一个或多个存储有计算机可执行指令的存储介质,计算机可执行指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:监听任务消息队列中由业务服务器添加的信息推送任务;信息推送任务为业务服务器根据用户消费信息生成的;从监听到的信息推送任务中提取用户消费信息;查询与提取到的用户消费信息匹配的信息推送方案;获取查询到的信息推送方案所对应的消息推送模板;根据提取到的用户消费信息和获取的消息推送模板生成推送消息体;将生成的推送消息体推送至以包含于提取到的用户消费信息的用户账号所登录的终端。
在一个实施例中,监听任务消息队列中由业务服务器添加的信息推送任务,包括:接收以推送管理员账号登录的终端上传的队列监听指令;提取队列监听指令中的队列标识;在队列服务器中查询与提取到的队列标识对应的任务消息队列;监听查询到的任务消息队列中由业务服务器添加的信息推送任务。
在一个实施例中,查询与提取到的用户消费信息匹配的信息推送方案,包括:提取用户消费信息中的应用标识和各类消费信息的消息类型标识;获取应用标识对应的消息推送方案集合;在获取到的消息推送方案集合中查询与提取到的消息类型标识匹配的消息推送方案。
在一个实施例中,根据提取到的用户消费信息和获取的消息推送模板生成推送消息体,包括:从获取到的消息推送模板中提取待添加信息的信息标识;在提取到的用户消费信息中查询与提取到的信息标识匹配的待添加信息;将查询到的待添加信息添加到获取到的消息推送模板中生成推送消息体。
在一个实施例中,将生成的推送消息体推送至以包含于提取到的用户消费信息的用户账号所登录的终端,包括:获取与查询到的消息推送方案对应的推送通道类型;通过与获取的推送通道类型对应的推送通道,将生成的推送消息体推送至以包含于提取到用户消费信息中的用户账号所登录的终端。
本实施例中,在监听到任务消息对中存在业务服务添加的信息推送任务时,从监听到的信息推送任务中提取用户消费信息,查询与提取到的用户消费信息匹配的信息推送方案,保证可以根据匹配的信息推送方案进行信息推送。在查询到匹配的信息推送方案,获取查询到的信息推送方案所对应的消息推送模板,根据提取到用户消费信息和获取到的消息推送模板生成推送消息体,使生成的推送消息体具有针对性。从提取到的用户消费信息中获取用户账号,将具有针对性的推送消息发送至相应的用户账号登录的终端,保证推送的推送消息体与用户消费信息相匹配,从而提高了信息推送的准确率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。