推送消息时排除重合用户的方法及装置与流程

文档序号:13886281阅读:274来源:国知局
推送消息时排除重合用户的方法及装置与流程

本发明实施例涉及消息处理技术领域,尤其涉及一种推送消息时排除重合用户的方法及装置。



背景技术:

对于消息处理过程,当需要向用户发送消息时,一般在创建任务时将消息发出,然而,这种方式导致地消息进行推送时由于设置的条件导致用户有重合的情形,即使对用户分组也可能由于同时选择两个及以上的分组而导致一名用户多次重复发送消息,对于用户而言,被多次推送同一条消息容易影响用户体验。



技术实现要素:

为了克服相关技术中存在的问题,本发明提供一种推送消息时排除重合用户的方法及装置,以实现在向用户推送消息时对用户是否重合进行排查,以避免对同一用户重复推送消息。

第一方面,本发明实施例提供了一种推送消息时排除重合用户的方法,所述方法包括:

向用户推送消息时,获取符合分组条件的用户组中包括的用户;

根据所述用户的用户标记判断所述用户是否存重合情形;

当存在重合情形时,对所述用户进行排重处理,以只对该用户发送一条消息;

当不存在重合情形时,对该用户发送消息。

结合另一方面,在另一方面的一种可能的实施方式中,所述根据所述用户的用户标记判断所述用户是否存重合情形,包括:

所述重合情形是指同一用户被分组至最少两个用户组的情形;

当所述用户存在同一用户被分组至最少两个用户组的情形时,则存在所述重合情形,此时,向用户推送消息时选择只向其中的一个用户组中的所述用户推送消息;

当所述用户不存在同一用户被分组至最少两个用户组的情形时,则不存在所述重合情形,向所述用户推送消息。

结合另一方面,在另一方面的一种可能的实施方式中,所述向用户推送消息时,获取符合分组条件的用户组中包括的用户,包括:

根据服务器接收的筛选条件对用户进行分组;

当检测到符合所述分组条件的用户组中的用户的推送消息纪录不符合预设条件时,记录向用户推送消息的频率;

当检测到符合所述分组条件的用户组中的用户的推送消息纪录符合预设条件时,进入到根据所述用户的用户标记判断所述用户是否存重合情形的步骤。

结合另一方面,在另一方面的一种可能的实施方式中,所述方法还包括:

在向用户推送消息时,判断被推送的用户是否满足n天n条消息的标准;

当被推送的用户满足n天n条消息的标准时,进入根据所述用户的用户标记判断所述用户是否存重合情形的步骤;

当被推送的用户不满足n天n条消息的标准时,向该被推送的用户推送消息,并更新数据库。

第二方面,本发明还发明了一种推送消息时排除重合用户的装置,所述装置包括:

获取模块,用于向用户推送消息时,获取符合分组条件的用户组中包括的用户;

判断模块,用于根据所述用户的用户标记判断所述用户是否存重合情形;

排重模块,用于当存在重合情形时,对所述用户进行排重处理,以只对该用户发送一条消息;

发送模块,用于当不存在重合情形时,对该用户发送消息。

上述的装置,所述判断模块还用于:

所述重合情形是指同一用户被分组至最少两个用户组的情形,当所述用户存在同一用户被分组至最少两个用户组的情形时,则存在所述重合情形,此时,向用户推送消息时选择只向其中的一个用户组中的所述用户推送消息;

当所述用户不存在同一用户被分组至最少两个用户组的情形时,则不存在所述重合情形,向所述用户推送消息。

上述的装置,所述获取模块包括:

分组模块,用于根据服务器接收的筛选条件对用户进行分组;

第一检测模块,当检测到符合所述分组条件的用户组中的用户的推送消息纪录不符合预设条件时,记录向用户推送消息的频率;

第二检测模块,当检测到符合所述分组条件的用户组中的用户的推送消息纪录符合预设条件时,进入到根据所述用户的用户标记判断所述用户是否存重合情形的步骤。

上述的装置,所述装置还包括:

标准判断模块,用于在向用户推送消息时,判断被推送的用户是否满足n天n条消息的标准;

步骤跳转模块,用于当被推送的用户满足n天n条消息的标准时,进入根据所述用户的用户标记判断所述用户是否存重合情形的步骤;

更新模块,用于当被推送的用户不满足n天n条消息的标准时,向该被推送的用户推送消息,并更新数据库。

本发明通过在推送消息时对用户是否重合进行排查,实现了在向用户推送消息时对用户是否重合进行排查处理,解决了传统做法中在创建任务时即推送消息而出现的无法排除重合用户的弊端,不仅避免了对同一用户重复推送消息的情形的发生,而且提升了用户对于消息推送的体验。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

图1是根据一示例性实施例示出的一种推送消息时排除重合用户的方法方法及装置的流程图。

图2是根据一示例性实施例示出的是否符合预设条件的判断时的流程图。

图3是根据一示例性实施例示出的一种推送消息时排除重合用户的装置的框图。

图4是根据一示例性实施例示出的预设条件判断时的框图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图中将各步骤描述成顺序的处理,但是其中的许多步骤可以并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排,当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图内的其它步骤。处理可以对应于方法、函数、规程、子例程、子程序等。

本发明涉及一种推送消息时排除重合用户的方法及装置,其主要运用于向大量的用户推送消息的场景中,其基本思想是:通过在推送消息时对用户是否重合进行排查的方式对用户进行排查,包括按照推送条件已筛选分组完成的用户,使得彻底避免了用户被分至两个及以上的用户组中而导致在推送消息时出现的向同一用户多次发送同一消息的情形的发生,实现了在向用户推送消息时对用户是否重合进行的排重处理。

本实施例可适用于带有排重模块的服务器中以进行推送消息时排除重合用户的情况中,该方法可以由排重装置来执行,其中该装置可以由软件和/或硬件来实现,一般地可集成于服务器中,或者终端中的中心控制模块来控制,如图1所示,所述方法具体包括如下步骤:

在步骤110中,向用户推送消息时,获取符合分组条件的用户组中包括的用户;

在创建推送任务时对用户按照设定的分组规则进行用户分组,或者按照分组条件进行分组,符合条件的用户组中包括较多名用户。

在步骤120中,根据所述用户的用户标记判断所述用户是否存重合情形;

每一用户在其唯一的用户标记,例如用户id,通过对用户id的用户标记进行判断,以确定其某一用户是否存在重合情形。

在步骤130中,当存在重合情形时,对所述用户进行排重处理,以只对该用户发送一条消息;

对于存在重合的用户,则将用户重合用户从各分组中调出(原用户组不再保留该用户),单独分组为重合组,以最终向该重合组中的每一用户分组推送消息。

当不存在重合情形时,对该用户发送消息。

本发明的方法,通过在推送消息时对用户是否重合进行排查,实现了在向用户推送消息时对用户是否重合进行排查处理,解决了传统做法中在创建任务时即推送消息而出现的无法排除重合用户的弊端,不仅避免了对同一用户重复推送消息的情形的发生。

在本发明示例性实施例的一种实施场景中,所述重合情形是指同一用户被分组至最少两个用户组的情形;当所述用户存在同一用户被分组至最少两个用户组的情形时,则存在所述重合情形,此时,向用户推送消息时选择只向其中的一个用户组中的所述用户推送消息;当所述用户不存在同一用户被分组至最少两个用户组的情形时,则不存在所述重合情形,向所述用户推送消息。

本发明的方法,对用户在被分组中是否存在重合情形进行区分对待,重合用户与非重合用户分别使用不同的方式进行推送,保证了对重合用户推送消息时不再重复推送。

在本发明示例性实施例的另一种实施场景中,所述向用户推送消息时,如图2所示,获取符合分组条件的用户组中包括的用户,包括:

在步骤210中,根据服务器接收的筛选条件对用户进行分组;

在步骤220中,当检测到符合所述分组条件的用户组中的用户的推送消息纪录不符合预设条件时,记录向用户推送消息的频率;

对已分组的用户组,判断被推送的用户是否满足n天n条消息的标准;

当被推送的用户满足n天n条消息的标准时,进入根据所述用户的用户标记判断所述用户是否存重合情形的步骤;

当被推送的用户不满足n天n条消息的标准时,例如在m天内向该用户发送n条消息(m<n),则可以判断为该用户不满足预设条件,此时记录其用户推送消息的频率,并向该被推送的用户推送消息,同时更新数据库。

在步骤230中,当检测到符合所述分组条件的用户组中的用户的推送消息纪录符合预设条件时,进入到根据所述用户的用户标记判断所述用户是否存重合情形的步骤。

在筛选用户时,筛选条件是由外部需要推送消息至用户的外部运维人员进行的,其可以为对服务器或应用程序进行维护的专门人员,也可以为服务器在接收到指令后自动进行筛选,对于用户是否符合预设条件的判断,使得对用户推送消息的规范化推送过程中进一步根据预设条件对其进行判断,以进一步有利于对重合用户的排除。

图3为本发明实施例提供的一种推送消息时排除重合用户的装置的信令流程图/结构示意图,该装置可由软件和/或硬件实现,一般地集成于服务器中,可通过推送消息时排除重合用户的方法来实现。如图所示,本实施例可以以上述实施例为基础,提供了一种推送消息时排除重合用户的装置,其主要包括了获取模块310、判断模块320、排重模块330以及发送模块340。

其中的获取模块310,用于向用户推送消息时,获取符合分组条件的用户组中包括的用户;

其中的判断模块320,用于根据所述用户的用户标记判断所述用户是否存重合情形;

其中的排重模块330,用于当存在重合情形时,对所述用户进行排重处理,以只对该用户发送一条消息;

其中的发送模块340,用于当不存在重合情形时,对该用户发送消息。

在本发明示例性实施例的另一种实施场景中,所述判断模块还用于:

所述重合情形是指同一用户被分组至最少两个用户组的情形,当所述用户存在同一用户被分组至最少两个用户组的情形时,则存在所述重合情形,此时,向用户推送消息时选择只向其中的一个用户组中的所述用户推送消息;

当所述用户不存在同一用户被分组至最少两个用户组的情形时,则不存在所述重合情形,向所述用户推送消息。

在本发明示例性实施例的另一种实施场景中,所述获取模块包括:

分组模块,用于根据服务器接收的筛选条件对用户进行分组;

第一检测模块,当检测到符合所述分组条件的用户组中的用户的推送消息纪录不符合预设条件时,记录向用户推送消息的频率;

第二检测模块,当检测到符合所述分组条件的用户组中的用户的推送消息纪录符合预设条件时,进入到根据所述用户的用户标记判断所述用户是否存重合情形的步骤。

在本发明示例性实施例的另一种实施场景中,如图4所示,所述装置还包括:

标准判断模块410,用于在向用户推送消息时,判断被推送的用户是否满足n天n条消息的标准;

步骤跳转模块420,用于当被推送的用户满足n天n条消息的标准时,进入根据所述用户的用户标记判断所述用户是否存重合情形的步骤;

更新模块430,用于当被推送的用户不满足n天n条消息的标准时,向该被推送的用户推送消息,并更新数据库。

上述实施例中提供的推送消息时排除重合用户的装置可执行本发明中任意实施例中所提供的推送消息时排除重合用户的方法,具备执行该方法相应的功能模块和有益效果,未在上述实施例中详细描述的技术细节,可参见本发明任意实施例中所提供的推送消息时排除重合用户的方法。

将意识到的是,本发明也扩展到适合于将本发明付诸实践的计算机程序,特别是载体上或者载体中的计算机程序。程序可以以源代码、目标代码、代码中间源和诸如部分编译的形式的目标代码的形式,或者以任何其它适合在按照本发明的方法的实现中使用的形式。也将注意的是,这样的程序可能具有许多不同的构架设计。例如,实现按照本发明的方法或者系统的功能性的程序代码可能被再分为一个或者多个子例程。

用于在这些子例程中间分布功能性的许多不同方式将对技术人员而言是明显的。子例程可以一起存储在一个可执行文件中,从而形成自含式的程序。这样的可执行文件可以包括计算机可执行指令,例如处理器指令和/或解释器指令(例如,java解释器指令)。可替换地,子例程的一个或者多个或者所有子例程都可以存储在至少一个外部库文件中,并且与主程序静态地或者动态地(例如在运行时间)链接。主程序含有对子例程中的至少一个的至少一个调用。子例程也可以包括对彼此的函数调用。涉及计算机程序产品的实施例包括对应于所阐明方法中至少一种方法的处理步骤的每一步骤的计算机可执行指令。这些指令可以被再分成子例程和/或被存储在一个或者多个可能静态或者动态链接的文件中。

另一个涉及计算机程序产品的实施例包括对应于所阐明的系统和/或产品中至少一个的装置中每个装置的计算机可执行指令。这些指令可以被再分成子例程和/或被存储在一个或者多个可能静态或者动态链接的文件中。

计算机程序的载体可以是能够运载程序的任何实体或者装置。例如,载体可以包含存储介质,诸如(rom例如cdrom或者半导体rom)或者磁记录介质(例如软盘或者硬盘)。进一步地,载体可以是可传输的载体,诸如电学或者光学信号,其可以经由电缆或者光缆,或者通过无线电或者其它手段传递。当程序具体化为这样的信号时,载体可以由这样的线缆或者装置组成。可替换地,载体可以是其中嵌入有程序的集成电路,所述集成电路适合于执行相关方法,或者供相关方法的执行所用。

应该留意的是,上文提到的实施例是举例说明本发明,而不是限制本发明,并且本领域的技术人员将能够设计许多可替换的实施例,而不会偏离所附权利要求的范围。在权利要求中,任何放置在圆括号之间的参考符号不应被解读为是对权利要求的限制。动词“包括”和其词形变化的使用不排除除了在权利要求中记载的那些之外的元素或者步骤的存在。在元素之前的冠词“一”或者“一个”不排除复数个这样的元素的存在。本发明可以通过包括几个明显不同的组件的硬件,以及通过适当编程的计算机而实现。在列举几种装置的装置权利要求中,这些装置中的几种可以通过硬件的同一项来体现。在相互不同的从属权利要求中陈述某些措施的单纯事实并不表明这些措施的组合不能被用来获益。

如果期望的话,这里所讨论的不同功能可以以不同顺序执行和/或彼此同时执行。此外,如果期望的话,以上所描述的一个或多个功能可以是可选的或者可以进行组合。

如果期望的话,上文所讨论的各步骤并不限于各实施例中的执行顺序,不同步骤可以以不同顺序执行和/或彼此同时执行。此外,在其他实施例中,以上所描述的一个或多个步骤可以是可选的或者可以进行组合。

虽然本发明的各个方面在独立权利要求中给出,但是本发明的其它方面包括来自所描述实施方式的特征和/或具有独立权利要求的特征的从属权利要求的组合,而并非仅是权利要求中所明确给出的组合。

这里所要注意的是,虽然以上描述了本发明的示例实施方式,但是这些描述并不应当以限制的含义进行理解。相反,可以进行若干种变化和修改而并不背离如所附权利要求中所限定的本发明的范围。

本领域普通技术人员应该明白,本发明实施例的装置中的各模块可以用通用的计算装置来实现,各模块可以集中在单个计算装置或者计算装置组成的网络组中,本发明实施例中的装置对应于前述实施例中的方法,其可以通过可执行的程序代码实现,也可以通过集成电路组合的方式来实现,因此本发明并不局限于特定的硬件或者软件及其结合。

本领域普通技术人员应该明白,本发明实施例的装置中的各模块可以用通用的移动终端来实现,各模块可以集中在单个移动终端或者移动终端组成的装置组合中,本发明实施例中的装置对应于前述实施例中的方法,其可以通过编辑可执行的程序代码实现,也可以通过集成电路组合的方式来实现,因此本发明并不局限于特定的硬件或者软件及其结合。

注意,上述仅为本发明的示例性实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1