著录项信息
专利名称 | 一种信息推送方法及装置 |
申请号 | CN201210086749.3 | 申请日期 | 2012-03-28 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2013-10-23 | 公开/公告号 | CN103368992A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L29/08 | IPC分类号 | H;0;4;L;2;9;/;0;8查看分类表>
|
申请人 | 阿里巴巴集团控股有限公司 | 申请人地址 | 英属开曼群岛大开曼岛资本大厦一座四层847号邮箱
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 阿里巴巴集团控股有限公司 | 当前权利人 | 阿里巴巴集团控股有限公司 |
发明人 | 贾亮 |
代理机构 | 北京集佳知识产权代理有限公司 | 代理人 | 逯长明;王宝筠 |
摘要
本申请提供一种信息推送方法及装置,所述方法包括:接收信息的推送请求,所述推送请求包含多个信息数据;从所述推送请求中提取至少一个信息数据作为当前处理数据;获取所述当前处理数据的历史推送状态,如果为未推送状态,则将所述当前处理数据设定为可推送信息数据;判断所述推送请求中是否存在未提取的信息数据,如果存在,则返回所述提取信息数据的步骤;如果不存在,则从设定的可推送信息数据中选取预置个数的信息数据作为本批待推送信息数据,发送至客户端。本申请公开的方法和装置,可解决现有技术在进行信息推送时因重复推送无效信息数据造成的服务器处理性能低以及浪费传输资源的技术问题。
一种信息推送方法及装置\n技术领域\n[0001] 本申请涉及网络数据处理领域,特别涉及一种信息推送方法及装置。\n背景技术\n[0002] 随着信息技术的飞速发展,以电子及电子技术为手段的数字化电子方式的交互越来越普及,而实现这种电子化交互过程的前提就需要服务器向客户端进行信息推送。电子邮件作为目前被广泛应用的一种推送信息的手段,其具体实现过程可描述如下:\n[0003] 邮件组装服务器搜索预置邮件模板中包含的变量,并自邮件数据库中查找与搜索到的变量相对应的数据,然后再利用查找到的数据替换模板中包含的变量,最后在遍历邮件模板包含的所有变量后,将邮件模板组装成一封完整的电子邮件发送至客户端显示。\n[0004] 如图1所示,为邮件模板的一种展现形式,其中“dear $姓名......”位置为用于显示用户姓名的区域,“$姓名......”即为待替换的变量。当邮件组装服务器在邮件模板中搜索到姓名变量时,就会自动查询邮件数据库,从中查找用来替换该变量的姓名数据,例如查找到的姓名数据为“张三”,邮件组装服务器则利用数据“张三”替换模板中的变量“$姓名......”。这样,当组装后的邮件发送至客户端后,在用户姓名区域显示的内容即为“dear张三”。\n[0005] 同样地,对于模板中包含的产品信息变量亦可按照上述方法被替换为本次待推送的产品信息数据,由服务器组装后发送至客户端。但是,因为邮件组装服务器主要以与产品信息变量相对应为原则来确定待推送产品信息数据,这就可能导致服务器本次组装邮件确定的待推送产品信息数据与先前已推送至客户端被用户查看甚至点击访问过的数据部分或者全部相同。\n[0006] 在实际应用中,上述已被推送过且为用户所知晓的数据在一定的时间段内可视为无效数据不再向用户终端推送,然而现有的推送方法却无法区分出该部分无效数据,进而在邮件组装服务器替换产品信息变量时,可能会选取部分或者全部无效数据替换到模板中进行邮件组装处理。如果服务器多次组装并向客户端发送一些无效的产品信息数据,一方面就会占用邮件组装服务器处理其它数据的资源,降低了服务器的处理性能;另一方面还会造成网络传输资源的浪费。此外,如果每次通过电子邮件推送的产品信息都出现重复现象,还会影响用户的回点操作,导致邮件的回点率下降。\n发明内容\n[0007] 本申请所要解决的技术问题是提供一种信息推送方法,用以解决现有技术在进行信息推送时因重复推送无效信息数据造成的服务器处理性能低以及浪费传输资源的技术问题。\n[0008] 本申请还提供了一种信息推送装置,用以保证上述方法在实际中的实现及应用。\n[0009] 为了解决上述问题,本申请公开了一种信息推送方法,包括如下步骤:\n[0010] 接收信息的推送请求,所述推送请求包含多个信息数据;\n[0011] 从所述推送请求中提取至少一个信息数据作为当前处理数据;\n[0012] 获取所述当前处理数据的历史推送状态,如果为未推送状态,则将所述当前处理数据设定为可推送信息数据;\n[0013] 判断所述推送请求中是否存在未提取的信息数据,如果存在,则返回所述提取信息数据的步骤;如果不存在,则从设定的可推送信息数据中选取预置个数的信息数据作为本批待推送信息数据,发送至客户端。\n[0014] 优选的,所述未推送状态的判断方式具体为:\n[0015] 获取所述当前处理数据的历史推送状态标识,并与预设未推送状态标识进行比对,如果相同,则判定该当前处理数据的历史推送状态为未推送状态。\n[0016] 优选的,所述未推送状态的判断方式具体为:\n[0017] 获取所述当前处理数据作为待推送信息数据的次数,如果所述次数为零,则判定该当前处理数据的历史推送状态为未推送状态;如果所述次数不为零,则获取该当前处理数据作为待推送信息数据发送至客户端后的状态,如果该当前处理数据未被用户查看,则判定该当前处理数据的历史推送状态为未推送状态。\n[0018] 优选的,在获取当前处理数据的查看状态之前,所述方法还包括:\n[0019] 分别为每批待推送信息数据设置第一专属链接,所述第一专属链接中包含本批待推送信息数据的身份标识;\n[0020] 建立每批待推送信息数据与其身份标识间的对应关系表;\n[0021] 判断是否接收到客户端发送的查看反馈信息,如果接收到,则查找与所述查看反馈信息中包含的身份标识相对应的待推送信息数据的批次,并将该批待推送信息数据包含的信息数据的查看状态记录为被用户查看;否则,记录为未被用户查看。\n[0022] 优选的,所述未推送状态的判断方式还包括:\n[0023] 如果所述当前处理数据作为待推送信息数据发送至客户端后被用户查看,则获取该当前处理数据的访问状态,如果所述当前处理数据未被访问,则判定该当前处理数据的历史推送状态为未推送状态。\n[0024] 优选的,在获取当前处理数据的访问状态之前,所述方法还包括:\n[0025] 分别为每个信息数据设置第二专属链接,所述第二专属链接中包含本信息数据所属批次的待推送信息数据的身份标识;\n[0026] 建立每个信息数据与身份标识间的对应关系表;\n[0027] 判断是否接收到客户端发送的访问反馈信息,如果接收到,则将所述访问反馈信息中包含的第二专属链接对应的信息数据的访问状态记录为已被访问;否则,记录为未被访问。\n[0028] 优选的,将信息数据的访问状态记录为已被访问之后,所述方法还包括:\n[0029] 查找与所述访问反馈信息中包含的身份标识相对应的待推送信息的批次。\n[0030] 优选的,所述信息推送方法还包括:\n[0031] 在每个信息数据的推送状态发生变化的情况下,实时更新该信息数据的历史推送状态。\n[0032] 优选的,所述信息推送方法还包括:\n[0033] 在所述从设定的可推送信息数据中选取预置个数的信息数据作为本批待推送信息数据之前,\n[0034] 对可推送信息数据排序;\n[0035] 所述从设定的可推送信息数据中选取信息数据具体为:\n[0036] 按照所述可推送信息数据的排序顺序,选取预置个数的信息数据作为本批待推送信息数据。\n[0037] 优选的,对可推送信息数据排序的方式具体为:\n[0038] 选取用户最近访问的信息数据作为参考数据;\n[0039] 根据信息属性计算可推送信息数据与所述参考数据间的关联度,并按所述关联度的大小对可推送信息数据排序;所述信息属性包括产品类别、品牌、名称、产地、价格中的一项或多项。\n[0040] 相应地,本申请还公开了一种信息推送装置,该装置包括:\n[0041] 推送请求接收单元,用于接收信息的推送请求,所述推送请求包含多个信息数据;\n[0042] 提取单元,用于从所述推送请求中提取至少一个信息数据作为当前处理数据;\n[0043] 历史推送状态获取单元,用于获取所述当前处理数据的历史推送状态,如果为未推送状态,则将所述当前处理数据设定为可推送信息数据;\n[0044] 发送单元,用于判断所述推送请求中是否存在未提取的信息数据,如果存在,则通知所述提取单元继续提取信息数据;如果不存在,则从设定的可推送信息数据中选取预置个数的信息数据作为本批待推送信息数据,发送至客户端。\n[0045] 优选的,所述历史推送状态获取单元具体包括:\n[0046] 标识获取单元,用于获取所述当前处理数据的历史推送状态标识;\n[0047] 比对单元,用于将所述历史推送状态标识与预设未推送状态标识进行比对,如果相同,则判定该当前处理数据的历史推送状态为未推送状态。\n[0048] 优选的,所述历史推送状态获取单元具体包括:\n[0049] 推送次数获取单元,用于获取所述当前处理数据作为待推送信息数据的次数,如果所述次数为零,则判定该当前处理数据的历史推送状态为未推送状态;\n[0050] 查看状态获取单元,用于在所述当前处理数据作为待推送信息数据的次数不为零时,获取该当前处理数据作为待推送信息数据发送至客户端后的状态,如果该当前处理数据未被用户查看,则判定该当前处理数据的历史推送状态为未推送状态。\n[0051] 优选的,所述信息推送装置还包括:\n[0052] 第一链接设置单元,用于分别为每批待推送信息数据设置第一专属链接,所述第一专属链接中包含本批待推送信息数据的身份标识;\n[0053] 第一对应关系建立单元,用于建立每批待推送信息数据与其身份标识间的对应关系表;\n[0054] 查看状态记录单元,用于判断是否接收到客户端发送的查看反馈信息,如果接收到,则查找与所述查看反馈信息中包含的身份标识相对应的待推送信息数据的批次,并将该批待推送信息数据包含的信息数据的查看状态记录为被用户查看;否则,记录为未被用户查看。\n[0055] 优选的,所述历史推送状态获取单元还包括:\n[0056] 访问状态获取单元,用于在所述当前处理数据作为待推送信息数据发送至客户端并被用户查看时,获取该当前处理数据的访问状态,如果所述当前处理数据未被访问,则判定该当前处理数据的历史推送状态为未推送状态。\n[0057] 优选的,所述信息推送装置还包括:\n[0058] 第二链接设置单元,用于分别为每个信息数据设置第二专属链接,所述第二专属链接中包含本信息数据所属批次的待推送信息数据的身份标识;\n[0059] 第二对应关系建立单元,用于建立每个信息数据与身份标识间的对应关系表;\n[0060] 访问状态记录单元,用于判断是否接收到客户端发送的访问反馈信息,如果接收到,则将所述访问反馈信息中包含的第二专属链接对应的信息数据的访问状态记录为已被访问;否则,记录为未被访问。\n[0061] 优选的,所述信息推送装置还包括:\n[0062] 批次查找单元,用于查找与所述访问反馈信息中包含的身份标识相对应的待推送信息的批次。\n[0063] 优选的,所述信息推送装置还包括:\n[0064] 状态更新单元,用于在每个信息数据的推送状态发生变化的情况下,实时更新该信息数据的历史推送状态。\n[0065] 优选的,所述信息推送装置还包括:\n[0066] 排序单元,用于对可推送信息数据排序;\n[0067] 所述发送单元,具体用于按照所述可推送信息数据的排序顺序选取预置个数的信息数据作为本批待推送信息数据。\n[0068] 优选的,所述排序单元具体包括:\n[0069] 参考数据选取单元,用于选取用户最近访问的信息数据作为参考数据;\n[0070] 排序子单元,用于根据信息属性计算可推送信息数据与所述参考数据间的关联度,并按所述关联度的大小对可推送信息数据排序;所述信息属性包括产品类别、品牌、名称、产地、价格中的一项或多项。\n[0071] 与现有技术相比,本申请包括以下优点:本申请获取推送请求中包含的每个信息数据的历史推送状态,以此作为判断该信息数据能否成为本次信息推送的备选对象的依据,不再仅是单纯的进行变量与数据间的匹配,这就可以区分出一定时间段内被视为无效的信息数据,并在服务器处理推送数据的过程中将其剔除,避免服务器对无效信息数据的处理,就能提高服务器的处理性能;同时,由于服务器不对该部分无效信息数据进行处理,也就不会出现将无效信息数据发送至客户端的情况,这就节省了网络传输资源。此外,因为客户端用户查看到的信息不会出现重复现象,还能增加用户的回点操作,提升回点率。\n附图说明\n[0072] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。\n[0073] 图1是现有技术中邮件模板的一种展现形式的意图;\n[0074] 图2是本申请的一种信息推送方法实施例1的流程图;\n[0075] 图3是本申请中未推送状态判断方式实施例1的流程图;\n[0076] 图4是本申请中未推送状态判断方式实施例2的流程图;\n[0077] 图5是本申请中未推送状态判断方式实施例3的流程图;\n[0078] 图6是本申请的一种信息推送方法实施例2的流程图;\n[0079] 图7为本申请的一种信息推送方法实施例3的流程图;\n[0080] 图8是信息推送方法实施例3中步骤605的一种实现流程图;\n[0081] 图9是本申请的一种信息推送装置实施例1的结构框图;\n[0082] 图10是本申请中历史推送状态获取单元实施例1的结构框图;\n[0083] 图11是本申请信息推送装置中用于记录查看状态的结构框图;\n[0084] 图12是本申请中历史推送状态获取单元实施例2的结构框图;\n[0085] 图13是本申请信息推送装置中用于记录访问状态的结构框图;\n[0086] 图14是本申请中历史推送状态获取单元实施例3的结构框图;\n[0087] 图15是本申请的一种信息推送装置实施例2的结构框图;\n[0088] 图16是本申请的一种信息推送装置实施例3的结构框图;\n[0089] 图17是本申请中排序单元的结构框图。\n具体实施方式\n[0090] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。\n[0091] 本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、包括以上任何系统或设备的分布式计算环境等等。\n[0092] 本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。\n[0093] 本申请获取每个信息数据的历史推送状态,并在其状态为未推送状态时,将其作为本次信息推送的备选对象,这就可区分出一定时间段内已向客户端推送过的无效信息数据,避免该部分无效数据占用服务器的处理资源,因此可以提高服务器的处理性能;同时,由于不会将该部分无效数据发送至客户端,还能节省网络传输资源。此外,因为客户端用户查看到的信息不会出现重复现象,还能增加用户的回点操作,提升回点率。\n[0094] 参考图2,示出了本申请一种信息推送方法实施例1的流程图,可以包括以下步骤:\n[0095] 步骤101,接收信息的推送请求,所述推送请求包含多个信息数据。\n[0096] 在服务器向客户端进行信息推送时,一般至少要确定以下两方面信息:一是本次信息推送针对的用户,即确定信息推送的目的地,这可以通过匹配姓名变量与姓名数据来完成;二是本次信息推送的对象,即确定本次向用户推送的信息数据,在服务器搜索到信息变量时,会自动调用保存信息的数据库,由数据库完成信息变量到信息数据的匹配,查找出多个信息数据,并向服务器发送包含该多个信息数据的推送请求,以触发服务器对无效信息数据的剔除过程。\n[0097] 本步骤即是数据库查找到多个信息数据时,向服务器提交推送请求。\n[0098] 步骤102,从所述推送请求中提取至少一个信息数据作为当前处理数据。\n[0099] 服务器接收到推送请求后,即被触发进入无效信息数据剔除阶段,首先需要将信息数据从推送请求中提取出来,以备后续判断每个信息数据的有效性。本申请实施例可按照以下方式提取信息数据:\n[0100] 服务器可以逐一地依次从推送请求中提取信息数据;也可以按照预先设定的个数依次从推送请求中提取信息数据,例如,服务器每次从推送请求中提取5个信息数据,对这5个信息数据进行批次处理;或者,服务器还可以按照一定的规则逐一或成批的从推送请求中提取信息数据,例如,服务器按照以下定义的规则进行数据提取:先提取奇数位置上的信息数据,再提取偶数位置上的信息数据,当然在提取过程中可以是单个提取也可以是批次提取,可以是按顺序依次提取也可以打乱顺序提取。本申请实施例对提取信息数据的方式不做限定,只要能遍历推送请求包含的所有信息数据即可。\n[0101] 步骤103,获取所述当前处理数据的历史推送状态,如果为未推送状态,则将所述当前处理数据设定为可推送信息数据。\n[0102] 经由步骤102提取出的信息数据被视为当前处理数据(可包括单个数据,也可包括多个数据),由服务器判断其有效性。具体地,服务器是根据当前处理数据的历史推送状态来判断其有效性的,如果当前处理数据的历史推送状态显示为未推送,则认为该当前处理数据为有效数据,服务器将其设定为可推送信息数据,作为本次信息推送的备选对象等待下一步处理。而如果当前处理数据的历史推送状态显示为已推送,则认为该当前处理数据为无效数据,将其剔除出本次信息推送的处理过程。\n[0103] 对本步骤中判断信息数据的历史推送状态为未推送状态的具体方式此处暂不详述。\n[0104] 步骤104,判断所述推送请求中是否存在未提取的信息数据,如果存在,则返回所述提取信息数据的步骤,即步骤102;如果不存在,则执行步骤105。\n[0105] 步骤105,从设定的可推送信息数据中选取预置个数的信息数据作为本批待推送信息数据,发送至客户端。\n[0106] 服务器确定的当前处理数据经步骤103处理后,或作为有效数据被设定为可推送信息数据,或作为无效信息数据被剔除,步骤105主要是为了从有效数据中选取出预置个数的待推送信息数据发送至客户端。但是,在选取待推送信息数据之前,还需要先执行步骤\n104确认目前是否已遍历推送请求中所有的信息数据。如果推送请求中还存在未提取的数据,则返回继续执行步骤102和步骤103,直至完成推送请求中所有信息数据的有效性判断。\n如果推送请求中不存在未提取的数据,服务器则从设定的所有可推送信息数据中选取出预置个数的待推送信息数据发送至客户端。\n[0107] 本申请实施例剔除被认定为无效的信息数据,并从有效的可推送信息数据中选取本次信息推送发往客户端的待推送信息数据,就可避免服务器处理无效数据消耗的资源,提高了服务器的处理性能,并且,避免向客户端传输无效数据,还节省了网络传输资源。\n[0108] 需要说明的是,本申请实施例中的有效数据和无效数据均具有时效性,也就是说,有效数据和无效数据只是在一个特定时间段内的两个相对概念。具体地,服务器可以预先设定一个特定时间段,例如15天;然后记录该时间段内每个数据的历史推送状态,供服务器在判断信息数据有效性时使用;最后在下一时间段开始的时候将上一时间段记录的信息做清零处理。这样在本时间段内无效的数据有可能在下一时间段成为有效数据,而在本时间段内有效的数据则可能在下一时间段被推送至客户端并被用户知晓后变成无效数据。\n[0109] 另外,需要说明的是,本申请实施例中的信息数据可体现为视频、音频、图片或文本等格式,可涵盖产品推介、广告宣传、新闻推广等内容,对于信息数据的格式以及内容本申请实施例不做限定。\n[0110] 对于步骤103中未推送状态的具体判断方式,本申请提供了三种实现方式,下面一一进行简单介绍。\n[0111] 参考图3,示出了本申请实施例中未推送状态判断方式实施例1的流程图,可以包括以下步骤:\n[0112] 步骤201,获取所述当前处理数据作为待推送信息数据的次数,如果所述次数为零,则判定该当前处理数据的历史推送状态为未推送状态;如果所述次数不为零,则执行步骤202。\n[0113] 步骤202,获取该当前处理数据作为待推送信息数据发送至客户端后的状态,如果该当前处理数据未被用户查看,则判定该当前处理数据的历史推送状态为未推送状态。\n[0114] 所谓有效数据,是指不为客户端用户所知晓的信息数据,因此,本实施例可以从信息数据作为待推送数据的次数以及数据发送至客户端后是否被用户查看过两方面来判断数据的有效性。其中,如果某一信息数据作为待推送信息数据的次数为零,则说明服务器从未处理过该数据,更不会将该数据推送至客户端供用户查看知晓,因此这种信息数据一定是有效数据。而对于曾作为待推送信息数据由服务器处理并发送至客户端的数据来说,如果用户未打开查看该信息数据,则该数据在实质上仍属于用户不知晓的数据,因此这种信息数据也属于有效数据。增加对这部分已发送但未被查看的数据的判断过程,还能保证本申请实施例判断有效信息数据的准确性、全面性以及灵活性。\n[0115] 要实现获取信息数据查看状态这一目的,首先要保证服务器内记录有每个信息数据的查看状态,下面以服务器通过电子邮件方式向客户端推送产品信息为例,对服务器记录产品信息数据查看状态的过程进行简单介绍。\n[0116] 首先,分别为每批待推送信息数据设置第一专属链接,所述第一专属链接中包含本批待推送信息数据的身份标识log_id。\n[0117] 在通过电子邮件方式推送产品信息的示例中,本步骤可体现为:为每封邮件设置一个专属链接,也就是说,一封邮件就对应一个批次的待推送信息数据。可通过在链接中增加字符串“&log_id=1213232”的方式实现。“&”表示增加的意思,“log_id=1213232”表示这封邮件的标识log_id为1213232。需要说明的是,log_id是邮件的专属身份标识,不能出现两封邮件的log_id一样的情况。\n[0118] 其次,建立每批待推送信息数据与其身份标识间的对应关系表。\n[0119] 在通过电子邮件方式推送产品信息的示例中,本步骤可体现为:生成如表1所示邮件和邮件log_id的对应关系表。\n[0120] 表1\n[0121]\n log_id 发送时间 发送对象\n 1213231 2011-12-20 14:30:20 张三\n 1213232 2011-12-21 15:30:00 张三\n ...... ...... ......\n[0122] 最后,判断是否接收到客户端发送的查看反馈信息,如果接收到,则查找与所述查看反馈信息中包含的身份标识相对应的待推送信息数据的批次,并将该批待推送信息数据包含的信息数据的查看状态记录为被用户查看;否则,记录为未被用户查看。\n[0123] 在通过电子邮件方式推送产品信息的示例中,本步骤可体现为:根据客户端的反馈判断邮件是否被打开,记录信息数据的查看状态。当用户打开邮件时就会自动访问为其设定的专属链接,客户端就会将用户的打开操作反馈给服务器,由服务器调用邮件和邮件log_id对应关系表,确定用户打开查看的是哪天发送的邮件,最后将该邮件的状态记录为已打开状态,相应地将该邮件内包含的信息数据的状态记录为已被用户查看。\n[0124] 参见表2,示出了服务器记录查看状态的一种展现形式。\n[0125] 表2\n[0126]\n 统计时间 log_id 打开时间\n 2011-12-20 1213231 2011-12-20 15:30:00\n 2011-12-20 1213231 2011-12-20 15:30:00\n 2011-12-21 1213232 2011-12-21 15:30:00\n ...... ...... ......\n[0127] 参考图4,示出了本申请实施例中未推送状态判断方式实施例2的流程图,可以包括以下步骤:\n[0128] 步骤301,获取所述当前处理数据作为待推送信息数据的次数,如果所述次数为零,则判定该当前处理数据的历史推送状态为未推送状态;如果所述次数不为零,则执行步骤302。\n[0129] 步骤302,获取该当前处理数据作为待推送信息数据发送至客户端后的状态,如果所述当前处理数据未被用户查看,则判定该当前处理数据的历史推送状态为未推送状态;\n如果所述当前处理数据被用户查看,则执行步骤303。\n[0130] 步骤303,获取该当前处理数据的访问状态,如果所述当前处理数据未被访问,则判定该当前处理数据的历史推送状态为未推送状态。\n[0131] 在实际应用过程中,可能会出现在用户查看信息数据时并未访问该数据,而在日后有需求时才会访问曾经查看过的信息数据的情况。例如,用户在2012年1月10号查看了服务器发送的多个手机产品信息数据,当时未进一步点击访问,而在2012年1月15号有了购买手机的需求,需要了解手机产品信息,此时用户再去查找服务器曾向其推送过的手机产品信息数据就比较困难,甚至还可能出现因用户删除了服务器2012年1月10号推送的数据导致无法查看的情况。\n[0132] 为解决上述问题,本申请实施例对有效数据的含义进行了扩展,将用户查看但未访问的信息数据也定义为用户不知晓的信息数据,这样,在进行信息数据有效性判断时也能将该部分数据设定为可推送信息数据,再次作为备选对象由服务器做进一步处理。\n[0133] 同样地,要实现获取信息数据访问状态这一目的,首先要保证服务器内记录有每个信息数据的访问状态,下面以服务器通过电子邮件方式向客户端推送产品信息为例,对服务器记录产品信息数据访问状态的过程进行简单介绍。\n[0134] 首先,分别为每个信息数据设置第二专属链接,所述第二专属链接中包含本信息数据所属批次的待推送信息数据的身份标识log_id。\n[0135] 在通过电子邮件方式推送产品信息的示例中,本步骤可体现为:为邮件包含的每个产品信息数据设置一个专属链接。可通过在产品信息数据的链接中增加字符串“&log_id=1213232”的方式实现。同样地,“&”表示增加的意思,“log_id=1213232”表示该产品信息数据所属的邮件的标识log_id为1213232。需要说明的是,增加到产品信息数据链接中的字符串要与增加到包含该产品信息数据的邮件链接中的字符串保持一致,这样服务器才能区分用户通过哪封邮件访问了哪些产品信息数据。\n[0136] 其次,建立每个信息数据与身份标识间的对应关系表。\n[0137] 在通过电子邮件方式推送产品信息的示例中,本步骤可体现为:生成如表3所示产品信息数据和log_id的对应关系表。\n[0138] 表3\n[0139]\n log_id 发送时间 发送对象 产品信息数据\n 1213231 2011-12-20 14:30:20 张三 蓝魔、魅族、...\n 1213232 2011-12-21 15:30:00 张三 联想、苹果、...\n ...... ...... ...... ......\n[0140] 当然,表3所示的产品信息数据和log_id对应关系表可以是在表1所示的邮件和邮件log_id对应关系表的基础上增加产品信息数据内容,也可以是与表1并列的两个独立表格。\n[0141] 最后,判断是否接收到客户端发送的访问反馈信息,如果接收到,则将所述访问反馈信息中包含的第二专属链接对应的信息数据的访问状态记录为已被访问;否则,记录为未被访问。\n[0142] 在通过电子邮件方式推送产品信息的示例中,本步骤可体现为:根据客户端的反馈判断产品信息数据是否被访问,记录产品信息数据的访问状态。当用户访问产品信息数据时就会自动访问为其设定的专属链接,客户端就会将用户的访问操作反馈给服务器,由服务器将该反馈对应的产品信息数据的状态记录为被访问状态。\n[0143] 除此之外,在将信息数据的访问状态记录为已被访问之后,还可以进一步查找与所述访问反馈信息中包含的身份标识相对应的待推送信息的批次。\n[0144] 在通过电子邮件方式推送产品信息的示例中,本步骤可体现为:\n[0145] 服务器根据客户端反馈的信息,调用产品信息数据和log_id对应关系表,一方面可以确定用户访问了哪些产品信息数据,另一方面还可以确定用户是通过服务器发送的哪封邮件访问的这些产品信息数据(根据产品信息数据的专属链接,服务器就可以确认用户访问了哪些产品信息数据,根据链接中包含的log_id,服务器就可以确认用户是通过哪天发送的哪封邮件访问的这些数据),最后将上述确定的两方面信息记录为本产品信息数据的访问状态。\n[0146] 参见表4,示出了服务器记录访问状态的一种展现形式。\n[0147] 表4\n[0148]\n 统计时间 log_id 打开时间 访问产品信息数据\n 2011-12-20 1213231 2011-12-20 15:30:00 蓝魔\n 2011-12-20 1213231 2011-12-20 15:30:00 魅族\n 2011-12-21 1213232 2011-12-21 15:30:00 联想\n ...... ...... ...... ......\n[0149] 当然,表4所示的服务器记录访问状态的表格可以是在表2所示的记录查看状态表格的基础上增加了产品信息数据访问状态的内容,也可以是与表2并列的两个独立表格。\n[0150] 参考图5,示出了本申请实施例中未推送状态判断方式实施例3的流程图,可以包括以下步骤:\n[0151] 步骤401,获取所述当前处理数据的历史推送状态标识;\n[0152] 步骤402,将获取的所述历史推送状态标识与预设未推送状态标识进行比对,如果相同,则判定该当前处理数据的历史推送状态为未推送状态。\n[0153] 本实施例中,为每个信息数据设置一个表示其历史推送状态的标识位,例如,标识位为“1”表示信息数据为未推送状态,标识位为“0”表示信息数据为已推送状态。服务器在进行数据有效性判断时,只需要读取信息数据标识位即可。这就不需要存储信息数据的推送次数、查看状态、访问状态等信息,节省了服务器的存储空间。\n[0154] 需要说明的是,信息数据的历史推送状态标识是根据信息数据的推送次数、查看状态和访问状态设定的。\n[0155] 参考图6,示出了本申请一种信息推送方法实施例2的流程图,可以包括以下步骤:\n[0156] 步骤501,在每个信息数据的推送状态发生变化的情况下,实时更新该信息数据的历史推送状态。\n[0157] 在实际应用中,服务器会多次向客户端推送信息,如果服务器向客户端推送信息的周期小于预先设定的特定时间段,例如,服务器预设的特定时间段为15天,而推送信息的周期为1天,即服务器每天都向客户端发送信息数据,则服务器在接收到客户端反馈的信息数据状态(可为查看状态或者访问状态)后,需要更新该信息数据的历史推送状态,这样才能保证服务器在下次剔除无效信息数据时的准确性。\n[0158] 步骤502,接收信息的推送请求,所述推送请求包含多个信息数据。\n[0159] 步骤503,从所述推送请求中提取至少一个信息数据作为当前处理数据。\n[0160] 步骤502和503与实施例1中的步骤101和102相同,在此不再赘述。\n[0161] 步骤504,获取所述当前处理数据的历史推送状态,如果为未推送状态,则将所述当前处理数据设定为可推送信息数据。\n[0162] 在本实施例中,当步骤501对历史推送状态进行更新之后,本步骤中需要获取当前处理数据更新后的历史推送状态。\n[0163] 对于信息数据未推送状态的判断方式仍可采取上述介绍的三种实现方式,通过获取信息数据作为待推送信息数据的次数、信息数据的查看状态、信息数据的访问状态判断信息数据的历史推送状态,此处不再赘述。\n[0164] 步骤505,判断所述推送请求中是否存在未提取的信息数据,如果存在,则返回所述提取信息数据的步骤,即步骤503;如果不存在,则执行步骤506。\n[0165] 步骤506,从设定的可推送信息数据中选取预置个数的信息数据作为本批待推送信息数据,发送至客户端。\n[0166] 参考图7,示出了本申请一种信息推送方法实施例3的流程图,可以包括以下步骤:\n[0167] 步骤601,接收信息的推送请求,所述推送请求包含多个信息数据。\n[0168] 步骤602,从所述推送请求中提取至少一个信息数据作为当前处理数据。\n[0169] 步骤603,获取所述当前处理数据的历史推送状态,如果为未推送状态,则将所述当前处理数据设定为可推送信息数据。\n[0170] 步骤601、602和603与实施例1中的步骤101、102和103相同,在此不再赘述。此外,需要说明的是,如果服务器根据客户端反馈的信息更新了信息数据的历史推送状态,则本步骤中获取的是信息数据更新后的状态。\n[0171] 步骤604,判断所述推送请求中是否存在未提取的信息数据,如果存在,则返回所述提取信息数据的步骤;如果不存在,则执行步骤605。\n[0172] 步骤605,对可推送信息数据排序。\n[0173] 步骤606,按照所述可推送信息数据的排序顺序,选取预置个数的信息数据作为本批待推送信息数据,发送至客户端。\n[0174] 对于服务器从备选对象中选取预置个数N的信息数据作为一批待推送信息数据的方法可以有多种实现方式,例如,可按照提取信息数据的顺序,选取前N个被设定为可推送信息数据的数据作为一批待推送信息数据;也可以随机抽取N个可推送信息数据作为一批待推送信息数据;还可以如本实施例所述的方式,先对可推送信息进行排序,然后再按照排序的顺序选取N个数据作为一批待推送信息数据。\n[0175] 当然,在信息推送过程中,可同时包括信息数据历史推送状态更新步骤以及对可推送信息数据排序的步骤。\n[0176] 参见图8,示出了一种对可推送信息数据排序的实现方式,具体可包括如下步骤:\n[0177] 步骤701,选取用户最近访问的信息数据作为参考数据。\n[0178] 步骤702,根据信息属性计算可推送信息数据与所述参考数据间的关联度,并按所述关联度的大小对可推送信息数据排序;所述信息属性包括产品类别、品牌、名称、产地、价格中的一项或多项。\n[0179] 因为用户最近访问的信息数据即代表了用户的最近需求,因此,本实施例以用户最近访问的数据作为参考数据,分别计算每个可推送信息数据与该参考数据间的关联度,然后按照关联度大小对可推送信息排序,再由服务器选取前N个与参考数据关联度最大的数据作为待推送信息数据,这样选取出的数据是与用户需求最相关的数据,更能满足用户需求。\n[0180] 下面以电子邮件方式向客户端推送产品信息为例,对本申请的信息推送方法进行简单介绍。\n[0181] 首先,邮件组装服务器调用邮件模板,并搜索模板中包含的变量,如果搜索到姓名变量,则自邮件数据库中查找姓名数据,将姓名变量“dear$姓名......”替换为姓名数据“张三”,确定好本次邮件发送的目的地。\n[0182] 其次,邮件组装服务器搜索到产品信息变量,并调用邮件数据库查找产品信息数据,邮件数据库则将匹配出的多个产品信息数据添加到推送请求中发送至邮件组装服务器。例如,邮件数据库匹配出的多个产品信息数据为:蓝魔、魅族、联想、苹果、三星。\n[0183] 然后,邮件组装服务器自推送请求中提取产品信息数据,并判断每个产品信息数据的历史推送状态,确定本次信息推送的备选对象。\n[0184] 以图5所示的未推送状态判断方式的实施例3为例,服务器获取每个产品信息数据的历史推送状态标识,分别为:蓝魔(标识位为1)、魅族(标识位为1)、联想(标识位为1)、苹果(标识位为1)、三星(标识位为0),然后与预设的未推送状态标识“1”进行比对,发现本次作为备选对象的可推送产品信息数据为:蓝魔、魅族、联想、苹果。\n[0185] 接着,邮件组装服务器选取蓝魔、魅族和联想3个数据作为本批待推送产品信息数据替换到邮件模板中,组装生成一封邮件发送至客户端。\n[0186] 需要说明的是,在组装生成邮件之前,邮件组装服务器需要分别为本封邮件以及邮件中包含的3个产品信息数据设置专属链接;而在组装生成邮件之后,邮件组装服务器还需要保存本封邮件的信息,包括:邮件标识log_id、邮件发送时间、邮件发送对象、邮件包含的产品信息数据。保存的信息如下表所示:\n[0187]\n log_id 发送时间 发送对象 产品信息数据\n 1213231 2011-12-20 14:30:20 张三 蓝魔、魅族、联想\n[0188] 最后,邮件组装服务器统计客户端反馈的信息,并根据反馈信息更新本封邮件包含的产品信息数据的历史推送状态,以便下次推送产品信息时根据更新后的状态准确确定备选对象。\n[0189] 统计的信息如下表所示:\n[0190]\n log_id 统计时间 统计对象 打开时间 访问数据\n 1213231 2011-12-21 张三 2011-12-20 15:30:00 蓝魔\n[0191] 邮件组装服务器就会根据上表统计的结果将蓝魔的历史推送状态标识更新为“0”,而魅族和联想的历史推送状态标识仍为“1”,至此就完成了本申请信息推送方法向客户端用户推介产品信息的全部过程。\n[0192] 另外需要说明的是,在一个预设特定时间段(根据经验数据统计可知,一般用户在看到一封邮件的15天之后,就对邮件中包含的产品信息数据没印象了,因此可将特定时间段设定为15天)完成之后,开始下一特定时间段之前,邮件组装服务器需要将全部产品信息数据的历史状态标识初始化为“1”,即将全部产品信息数据均视为是未向客户端推送过的有效数据。\n[0193] 与上述本申请一种信息推送方法实施例1所提供的方法相对应,参见图9,本申请还提供了一种信息推送装置实施例1,在本实施例中,该装置可以包括:\n[0194] 推送请求接收单元801,用于接收信息的推送请求,所述推送请求包含多个信息数据。\n[0195] 提取单元802,用于从所述推送请求中提取至少一个信息数据作为当前处理数据。\n[0196] 历史推送状态获取单元803,用于获取所述当前处理数据的历史推送状态,如果为未推送状态,则将所述当前处理数据设定为可推送信息数据。\n[0197] 发送单元804,用于判断所述推送请求中是否存在未提取的信息数据,如果存在,则通知所述提取单元继续提取信息数据;如果不存在,则从设定的可推送信息数据中选取预置个数的信息数据作为本批待推送信息数据,发送至客户端。\n[0198] 本申请实施例获取每个信息数据的历史推送状态,并以历史推送状态为判断依据,决定信息数据能否作为备选对象,进一步由服务器选取确定为待推送信息数据发送至客户端。为了避免客户端用户已获知的无效数据占用服务器处理资源以及网络传输资源,本申请实施例仅将历史推送状态为未推送的数据作为备选对象供服务器选取处理。发送至客户端的数据均为用户未获知的数据,还能增加用户的回点操作,提高回点率。\n[0199] 进一步地,本申请实施例中的历史推送状态获取单元可采用三种具体实现方式,下面对其构成一一进行介绍。\n[0200] 与上述未推送状态判断方式实施例1所提供的方法相对应,参见图10,本申请还提供历史推送状态获取单元实施例1,在本实施例中,该单元可以包括:\n[0201] 推送次数获取单元901,获取所述当前处理数据作为待推送信息数据的次数,如果所述次数为零,则判定该当前处理数据的历史推送状态为未推送状态。\n[0202] 查看状态获取单元902,用于在所述当前处理数据作为待推送信息数据的次数不为零时,获取该当前处理数据作为待推送信息数据发送至客户端后的查看状态,如果该当前处理数据未被用户查看,则判定该当前处理数据的历史推送状态为未推送状态。\n[0203] 本申请主要是剔除已被用户知晓的无效数据,并从不为用户知晓的有效数据中选取出待推送信息数据发送至客户端。因此本实施例从信息数据作为待推送数据的次数以及数据发送至客户端后的查看状态两方面来判断数据的有效性。对于作为待推送信息数据次数为零的数据来说,其必然为有效数据,而对于次数不为零的数据则需要进一步通过数据的查看状态来判断其是否被用户所知。\n[0204] 针对上述未推送状态判断方式实施例1所提供的方法,为了实现获取信息数据查看状态这一目的,如图11所示,本申请的推送装置还包括:\n[0205] 第一链接设置单元1001,用于分别为每批待推送信息数据设置第一专属链接,所述第一专属链接中包含本批待推送信息数据的身份标识;\n[0206] 第一对应关系建立单元1002,用于建立每批待推送信息数据与其身份标识间的对应关系表;\n[0207] 查看状态记录单元1003,用于判断是否接收到客户端发送的查看反馈信息,如果接收到,则查找与所述查看反馈信息中包含的身份标识相对应的待推送信息数据的批次,并将该批待推送信息数据包含的信息数据的查看状态记录为被用户查看;否则,记录为未被用户查看。\n[0208] 与上述未推送状态判断方式实施例2所提供的方法相对应,参见图12,本申请还提供历史推送状态获取单元实施例2,在本实施例中,该单元可以包括:\n[0209] 推送次数获取单元1101,获取所述当前处理数据作为待推送信息数据的次数,如果所述次数为零,则判定该当前处理数据的历史推送状态为未推送状态。\n[0210] 查看状态获取单元1102,用于在所述当前处理数据作为待推送信息数据的次数不为零时,获取该当前处理数据作为待推送信息数据发送至客户端后的状态,如果该当前处理数据未被用户查看,则判定该当前处理数据的历史推送状态为未推送状态。\n[0211] 访问状态获取单元1103,用于在所述当前处理数据作为待推送信息数据发送至客户端并被用户查看时,获取该当前处理数据的访问状态,如果所述当前处理数据未被访问,则判定该当前处理数据的历史推送状态为未推送状态。\n[0212] 在实际应用过程中,可能会出现在用户查看信息数据时并未访问该数据,而在日后有需求时才会访问曾经查看过的信息数据的情况。因此,本实施例中将用户查看但未访问的信息数据也定义为用户不知晓的信息数据,这样服务器就可以再次将这种数据作为备选对象进一步处理。\n[0213] 针对上述未推送状态判断方式实施例2所提供的方法,为了实现获取信息数据查看状态这一目的,参见图13,本申请的推送装置还包括:\n[0214] 第二链接设置单元1201,用于分别为每个信息数据设置第二专属链接,所述第二专属链接中包含本信息数据所属批次的待推送信息数据的身份标识;\n[0215] 第二对应关系建立单元1202,用于建立每个信息数据与身份标识间的对应关系表;\n[0216] 访问状态记录单元1203,用于判断是否接收到客户端发送的访问反馈信息,如果接收到,则将所述访问反馈信息中包含的第二专属链接对应的信息数据的访问状态记录为已被访问;否则,记录为未被访问。\n[0217] 在服务器记录信息数据的状态为被访问状态之后,还可进一步记录客户端用户是在哪个批次的待推送信息数据中访问的该信息数据,相应地,如图13所示,所述信息推送装置还包括:\n[0218] 批次查找单元1204,用于查找与所述访问反馈信息中包含的身份标识相对应的待推送信息的批次。\n[0219] 与上述未推送状态判断方式实施例3所提供的方法相对应,参见图14,本申请还提供历史推送状态获取单元实施例3,在本实施例中,该单元可以包括:\n[0220] 标识获取单元1301,用于获取所述当前处理数据的历史推送状态标识;\n[0221] 比对单元1302,用于将所述历史推送状态标识与预设未推送状态标识进行比对,如果相同,则判定该当前处理数据的历史推送状态为未推送状态。\n[0222] 为达到剔除无效数据的目的,本实施例通过信息数据的历史推送状态标识来判断数据的有效性。当信息数据的历史推送状态标识与预设未推送状态标识相同时,则将该数据视为有效的可推送信息数据,如果与预设未推送状态标识不同,则将该数据视为无效数据剔除。这样服务器不需要存储信息数据的推送次数、查看状态、访问状态等信息,节省了服务器的存储空间。\n[0223] 与上述本申请一种信息推送方法实施例2所提供的方法相对应,参见图15,本申请还提供了一种信息推送装置实施例2,在本实施例中,该装置可以包括:\n[0224] 推送请求接收单元1401,用于接收信息的推送请求,所述推送请求包含多个信息数据。\n[0225] 提取单元1402,用于从所述推送请求中提取至少一个信息数据作为当前处理数据。\n[0226] 历史推送状态获取单元1403,用于获取所述当前处理数据的历史推送状态,如果为未推送状态,则将所述当前处理数据设定为可推送信息数据。\n[0227] 发送单元1404,用于判断所述推送请求中是否存在未提取的信息数据,如果存在,则通知所述提取单元继续提取信息数据;如果不存在,则从设定的可推送信息数据中选取预置个数的信息数据作为待推送信息数据,发送至客户端。\n[0228] 状态更新单元1405,用于在每个信息数据的推送状态发生变化的情况下,实时更新该信息数据的历史推送状态。\n[0229] 在实际应用中,服务器会多次向客户端推送信息,如果服务器向客户端推送信息的周期小于预先设定的特定时间段,例如,服务器预设的特定时间段为15天,而推送信息的周期为1天,即服务器每天都向客户端发送信息数据,则服务器在接收到客户端反馈的信息数据状态(可为查看状态或者访问状态)后,需要更新该信息数据的历史推送状态,这样才能保证服务器在下次剔除无效信息数据时的准确性。\n[0230] 与上述本申请一种信息推送方法实施例3所提供的方法相对应,参见图16,本申请还提供了一种信息推送装置实施例3,在本实施例中,该装置可以包括:\n[0231] 推送请求接收单元1501,用于接收信息的推送请求,所述推送请求包含多个信息数据。\n[0232] 提取单元1502,用于从所述推送请求中提取至少一个信息数据作为当前处理数据。\n[0233] 历史推送状态获取单元1503,用于获取所述当前处理数据的历史推送状态,如果为未推送状态,则将所述当前处理数据设定为可推送信息数据。\n[0234] 排序单元1504,用于对可推送信息数据排序。\n[0235] 参见图17,作为排序单元的一种实现方式,该单元可以包括:\n[0236] 参考数据选取单元1601,用于选取用户最近访问的信息数据作为参考数据。\n[0237] 排序子单元1602,用于根据信息属性计算可推送信息数据与所述参考数据间的关联度,并按所述关联度的大小对可推送信息数据排序;所述信息属性包括产品类别、品牌、名称、产地、价格中的一项或多项。\n[0238] 发送单元1505,用于判断所述推送请求中是否存在未提取的信息数据,如果存在,则通知所述提取单元继续提取信息数据;如果不存在,则按照所述可推送信息数据的排序顺序选取预置个数的信息数据作为待推送信息数据,发送至客户端。\n[0239] 发送单元从备选对象中选取出预置个数N的待推送信息数据的方式多种多样,为了使得选取出的N个待推送信息数据能尽量满足用户需求,本实施例以用户最近访问的数据作为参考数据,分别计算每个可推送信息数据与该参考数据间的关联度,然后按照关联度大小对可推送信息排序后,再由服务器选取前N个与参考数据关联度最大的数据作为待推送信息数据。\n[0240] 需要说明的是,本申请信息推送装置可以同时包括状态更新单元和排序单元可。\n[0241] 需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。\n对于系统类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。\n[0242] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。\n[0243] 以上对本申请所提供的一种信息推送方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
法律信息
- 2017-05-03
- 2013-11-20
实质审查的生效
IPC(主分类): H04L 29/08
专利申请号: 201210086749.3
申请日: 2012.03.28
- 2013-10-23
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2010-02-24
|
2009-08-18
| | |
2
| |
2008-09-10
|
2008-04-21
| | |
3
| | 暂无 |
2002-08-14
| | |
4
| |
2009-04-01
|
2007-09-30
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |