一种定制事件通知的方法、服务器和系统的制作方法_2

文档序号:9711331阅读:来源:国知局
提供了灵活的订阅机制,并且其管理的与终端之间的会话适时结束,不会浪费服务器 和客户端的资源来维持不必要存在的会话。
【附图说明】
[0024] 图1表示网络配置协议的分层结构示意图;
[0025] 图2表示一种定制事件通知的方法流程示意图;
[0026] 图3表示基于网络配置协议定制事件通知在不同场景下的消息交互图一;
[0027] 图4表示基于网络配置协议定制事件通知在不同场景下的消息交互图二;
[0028] 图5表示客户端向服务器定制事件通知的流程详图。
【具体实施方式】
[0029] 为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具 体实施例进行详细描述。
[0030] 本发明实施例提供一种定制事件通知的方法,应用于服务器,如图2所示,方法包 括:
[0031] 步骤21,与客户端建立会话,通过所述会话接收来自客户端的订阅事件通知的自 定义过滤规则,所述自定义过滤规则中规定了客户端需要的事件通知应当满足的条件;
[0032] 步骤22,根据所述自定义过滤规则对服务器中存放的历史事件通知以及服务器当 前生成的事件通知进行筛选,得到满足条件的事件通知;
[0033] 步骤23,将满足条件的事件通知发送给所述客户端。
[0034] 应用所提供的技术,由客户端确定自定义过滤规则和指定起始时间,服务器向客 户端发送的事件通知必须符合自定义过滤规则和指定起始时间,为客户端提供了灵活的订 阅机制。
[0035] 客户端在订阅事件通知请求中的选项中记录了该客户端自定义的过滤规则(称 为:自定义过滤规则),服务器通过会话接收到来自客户端的订阅事件通知的订阅事件通 知请求,记录订阅事件通知请求中的选项信息作为通过与客户端之间的会话向客户端发送 事件通知的过滤规则。
[0036] 在一个优选实施例中,自定义过滤规则包括指定的事件通知名称、时间段、日期 段、事件级别以及自定义备注。自定义过滤规则包括但不限于这些项目或者这些项目的选 项组合。
[0037] 在一个优选实施例中,根据所述自定义过滤规则对服务器中存放的历史事件通知 以及服务器当前生成的事件通知进行筛选,得到满足条件的事件通知包括:
[0038] 将接到所述自定义过滤规则的时间点作为订阅时间;
[0039] 根据所述自定义过滤规则中的指定起始时间和所述订阅时间,确定一时间范围, 将该时间范围内的事件通知作为所述满足条件的事件通知。
[0040] 在一个优选实施例中,根据所述自定义过滤规则中的指定起始时间和所述订阅时 间,确定一时间范围包括:
[0041] 规则一,当没有所述指定起始时间时,所述时间范围的默认起始时间是所述订阅 时间;
[0042] 规则二,如图3所示,当所述指定起始时间不晚于订阅时间时,按照服务器缓存的 历史事件通知的时间和所述指定起始时间的交集,确定所述时间范围;
[0043] 当指定起始时间不晚于订阅时间,向客户端发送事件通知开始消息 〈notificationBegin〉,并按照本地缓存记录历史事件时间和指定起始时间的交集,向客户 端发送符合会话事件通知过滤规则的历史事件通知。
[0044] 发送完历史事件通知后,向客户端发送历史事件通知结束消息 〈repIayComplete>〇
[0045] 规则三,如图4所示,当所述指定起始时间晚于订阅时间时,所述时间范围从所述 指定起始时间起算;
[0046] 规则四,当所述自定义过滤规则中没有指定结束时间时,所述会话将处理事件通 知直至会话终止。
[0047] 如图3所示,指定起始时间不晚于订阅时间时,即指定起始时间早于或者等于订 阅时间,按照服务器缓存的历史事件通知的时间和指定起始时间的交集,确定时间范围。客 户端与服务器通过Hello报文进行能力交换,客户端向服务器发送订阅请求,当到达时间 范围的起始时间点时,服务器向客户端发送事件通知开始消息〈notificationBegin〉,并发 送符合该会话事件通知过滤规则的事件通知;在完成发送之后,向客户端发送事件通知结 束消息〈notificationComplete〉;之后会话可以开始正常处理RPC请求。
[0048] 服务器管理的与终端之间的会话适时结束,不会浪费服务器和客户端的资源来维 持不必要存在的会话。
[0049] 在一个优选实施例中,还包括:
[0050] 当所述指定起始时间晚于订阅时间时,从所述订阅时间到指定起始时间的范围 内,与客户端建立的会话正常处理一般协议(RPC)请求;
[0051] 当所述自定义过滤规则中有指定结束时间时,在所述指定结束时间之后,所述会 话开始正常处理一般协议请求。如果指定结束时间,当到达指定结束时间后,通过会话向客 户端发送事件通知结束消息〈notificationComplete〉,之后会话开始正常处理一般协议请 求。
[0052] 如图4所示,指定起始时间晚于订阅时间,所述时间范围从所述指定起始时间起 算,客户端与服务器通过Hello报文进行能力交换,在订阅时间到指定起始时间的这一段 时间,会话正常处理RPC请求,当到达指定起始时间后,服务器处理完当前操作,服务器向 客户端发送事件通知开始消息〈notificationBegin〉,并发送符合该会话事件通知过滤规则 的事件通知;在完成发送之后,向客户端发送事件通知结束消息〈notificationComplete〉; 之后会话开始正常处理一般协议请求。
[0053] 在一个优选实施例中,还包括:
[0054] 将事件通知发送给客户端之前,向所述客户端发送事件通知开始消息;
[0055] 将事件通知发送给客户端完毕之后,向所述客户端发送事件通知结束消息。
[0056] 本发明实施例提供一种定制事件通知的服务器,包括:
[0057] 会话管理单元,用于与客户端建立会话,通过所述会话接收来自客户端的订阅事 件通知的自定义过滤规则,所述自定义过滤规则中规定了客户端需要的事件通知应当满足 的条件;
[0058] 通知管理单元,用于根据所述自定义过滤规则对服务器中存放的历史事件通知以 及服务器当前生成的事件通知进行筛选,得到满足条件的事件通知;
[0059] 所述会话管理单元,还用于将满足条件的事件通知发送给所述客户端。
[0060] 在一个优选实施例中,还包括:事件中心单元,用于在系统中有事件发生时,根据 需要生成与所述事件对应的类型的事件通知,并将所述事件通知发送至通知管理单元。
[0061] 在一个优选实施例中,通知管理单元包括:
[0062] 时间范围筛选模块,用于将接到所述自定义过滤规则的时间点作为订阅时间;
[0063] 根据所述自定义过滤规则中的指定起始时间和所述订阅时间,确定一时间范围, 将该时间范围内的事件通知作为所述待发送的事件通知。
[0064] 在一个优选实施例中,时间范围筛选模块包括:
[0065] 规则执行模块,用于执行
[0066] 规则一,当没有所述指定起始时间时,所述时间范围的默认起始时间是所述订阅 时间;
[0067] 规则二,当所述指定起始时间不晚于订阅时间时,按照服务器缓存的历史事件通 知的时间和指定
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1