CN101131747B - 捕获和/或分析客户端的Web页面事件的方法、装置及系统 - Google Patents
捕获和/或分析客户端的Web页面事件的方法、装置及系统 Download PDFInfo
- Publication number
- CN101131747B CN101131747B CN2006101213053A CN200610121305A CN101131747B CN 101131747 B CN101131747 B CN 101131747B CN 2006101213053 A CN2006101213053 A CN 2006101213053A CN 200610121305 A CN200610121305 A CN 200610121305A CN 101131747 B CN101131747 B CN 101131747B
- Authority
- CN
- China
- Prior art keywords
- message
- web
- client
- event message
- event
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 108
- 238000004458 analytical method Methods 0.000 claims abstract description 67
- 230000010354 integration Effects 0.000 claims abstract description 56
- 238000012544 monitoring process Methods 0.000 claims abstract description 14
- 238000013515 script Methods 0.000 claims description 45
- 230000000875 corresponding effect Effects 0.000 claims description 35
- 238000013507 mapping Methods 0.000 claims description 16
- 238000012806 monitoring device Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 3
- 230000002194 synthesizing effect Effects 0.000 claims description 3
- 230000009471 action Effects 0.000 abstract description 5
- 238000012545 processing Methods 0.000 description 27
- 230000008569 process Effects 0.000 description 25
- 238000010586 diagram Methods 0.000 description 12
- 230000004048 modification Effects 0.000 description 8
- 238000012986 modification Methods 0.000 description 8
- 238000010960 commercial process Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000013439 planning Methods 0.000 description 5
- 238000013068 supply chain management Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000036651 mood Effects 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000003760 hair shine Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 101100518972 Caenorhabditis elegans pat-6 gene Proteins 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 230000007306 turnover Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3495—Performance evaluation by tracing or monitoring for systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/86—Event-based monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/875—Monitoring of systems including the internet
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/80—Management or planning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Computer Hardware Design (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Tourism & Hospitality (AREA)
- Game Theory and Decision Science (AREA)
- General Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Information Transfer Between Computers (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种用于在计算机网络中捕获客户端的Web页面事件的方法和装置、一种用于对来自客户端的用户接口事件消息进行Web事件分析以生成Web应用事件消息的方法和装置、以及一种用于在计算机网络中对客户端的Web页面事件进行捕获和分析以生成Web应用事件消息的方法和系统。其中,捕获客户端的Web页面事件,以生成用户接口事件消息,对该用户接口事件消息进行Web事件分析,以生成整合事件消息,并且根据整合事件消息的关联模式,生成Web应用事件消息,从而触发相应的后续动作。本发明可以适用于在企业内实现Web应用整合以及对企业员工的行为进行监控。
Description
技术领域
本发明总体上涉及Web服务和应用领域,并且尤其涉及用于在计算机网络中对联网计算机(或客户端)上发生的Web事件进行捕获和/或分析并进而实现Web应用整合的方法、装置和系统。
背景技术
近年来,随着计算机技术和网络技术的迅猛发展,基于浏览器的应用(通常也被称为Web应用)也得到了广泛的发展,以便满足各种企业和个人的要求。
随着企业内各种应用的迅速增加,尤其是伴随着互联网和XML技术的兴起,更多的企业在把自己的业务转向电子商务的同时,也发现孤立的信息系统无法有效地提供跨部门、跨系统的综合性信息,无法实现实时的信息存取和对业务流程的透视。企业的业务流程可能同时涉及到多个应用系统,因此要求这些系统能够协同,但接口、架构的不统一往往使得这些本应紧密集成的应用系统成为了一个个“信息孤岛”。于是,企业应用整合(Enterprise Application Integration,EAI)技术应运而生,它可以通过中间件(middleware)作为“总线”来连接企业内外各种业务相关的异构系统、应用以及数据源,从而把各个既有的孤立的应用象PC的各种零部件一样接入这个总线,从而构成一个整合的企业业务系统,以满足在电子商务(E-Commerce)、企业资源规划(Enterprise Resource Planning,ERP)、客户关系管理(Customer Relationship Management,CRM)、供应链管理(SupplyChain Management,SCM)、办公自动化(OFFICE AUTOMATION,OA)、企业信息系统(Enterprise Information System,EIS)、数据库、数据仓库等重要系统之间无缝地共享和交换数据的需要。
例如,一个公司中的员工通常在其日常工作中将会使用到多个Web应用,其中这多个Web应用可能由分布在因特网和企业内部网上的不同提供商提供。而且,在许多情况下,一个或多个应用与公司的规则或者商业处理过程有关。为了符合公司的规则或者商业处理过程,在公司的员工和Web应用进行交互期间,这些应用应当是通过Web事件彼此相关的。例如,一个订单生成处理可能涉及客户关系管理(CRM)应用和企业资源规划(ERP)应用;处理实例的一部分应当是对CRM应用和ERP应用的Web事件进行流水线处理(streamlining)的结果。概括来说,应当在公司内部对发生的Web事件进行关联和分析,以便使之符合公司的规则或者商业处理过程。
在能够使Web事件相关联之前,应当首先捕获Web事件。捕获Web事件的一种方法是:在相应的HTML Web页面中添加事件监控性能。这是一种侵入式的(intrusive)方法,这是因为,它需要对原始的Web页面进行相应修改。然而,在如上所述的通常情况下,那些应用在公司的控制之外,并且该公司不能修改Web页面。此外,还存在着基于代理的方法,其使得能够对Web页面进行非侵入式的(non-intrusive)修改,并且其已经得到了广泛的使用。这种基于代理的方法的基本原理是:当经由代理服务器访问Web页面时,对原有的HTML文档对象模型(Document Object Model,DOM)树进行代码修改或者向其中添加一些代码。为了捕获Web事件,基于代理的方法将会在Web页面中添加事件监控功能,并且当在用户交互期间有事件发生时,将该事件发送到代理服务器。这种方法的缺点是:在每次访问Web页面时,代理服务器都需要分析和修改该HTML Web页面,这样会降低互联网访问性能。
这里的另一个重要问题是如何指定在这些Web应用当中的关联关系,以及在假定捕获一系列Web事件的情况下如何识别彼此之间的关联模式。关联模式通常代表一定的商业规则或者商业处理过程。上述问题在现有技术的应用和研究中并未得到解决。
在现有技术中,当前的Web应用事件捕获/生成解决方案可以被分为两种方法:第一种方法是使用轮询服务(Polling Service)来监控网络应用事件,而第二种方法是通过代码注入(code injection)进行Web页面用户接口(UI)事件登记。这两种方法都存在缺陷,它们要么是低效的,要么是成本上令人无法接受的。
以第一种方法、即轮询服务为例,在通常情况下,Web应用独立软件开发商(Independent Software Vender,ISV)提供用以访问数据中心的Web服务,以便使客户可以使用应用编程接口(ApplicationProgramming Interface,API)来同步不同的系统。其中一种方法是:例如每个小时或者在每天中午12:00进行调度服务(即轮询),以同步两个或多个系统中的数据。虽然Web服务是一种较好的使Web应用的信息与EIS相同步的方法,但是,该方法也具有明显的缺点。例如,系统可能无法得知要在何时进行轮询;许多的Web应用甚至都没有提供Web服务接口;如果调度时间片被设置为小的,则整个系统的负载将会是极大的,相反,不一致的时间片将会是毫无价值的。
与第一种方法相比,第二种方法是比较有效的。例如,在美国专利US 6,944,660 B2和US 6,442,563 B1和美国专利申请公开2002/0165954 A1分别都提供了一种基于浏览器的UI事件触发方法,其通过使用Web页面事件、收集基于浏览器的信息来触发工作流程活动或是触发对活动进行监控。然而,上述方法都是以在Web页面中插入脚本标记为基础的,也就是说,它们需要对Web页面进行侵入式的修改,或者是对Web页面进行侵入式的重新设计。但是,在大多数情况下,Web应用供应商根本不会提供Web页面修改功能。换句话说,代码注入是一种特殊方式,并且不容易被概括为统一的方法。
由此可以看出,在现有技术中,没有一种高效的且成本经济的系统性方法能够解决如何指定这些Web应用之间的关联关系以及在假定捕获了一系列Web事件的情况下如何识别关联模式的问题。
发明内容
在下文中给出了关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图描述本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
为解决现有技术中存在的上述问题,本发明的目的之一是提供一种用于对客户端的Web页面事件进行捕获的方法和装置。
本发明的另一个目的是提供一种用于对来自客户端的用户接口事件消息进行Web事件分析以生成Web应用事件消息并进而实现Web应用整合的方法和装置。
本发明的再一个目的是提供一种用于在计算机网络中对客户端的Web页面事件进行捕获和分析以生成Web应用事件消息的方法和系统,其能够登记和捕获来自多个客户端的Web事件,并且分析Web事件间的关联模式,从而匹配某一商业规则和商业处理过程。
本发明还有一个目的是提供一种相应的计算机可读存储介质和计算机程序产品。
为了实现上述目的,依据本发明的第一个方面,提供了一种用于对来自客户端的用户接口事件消息进行Web事件分析以生成Web应用事件消息的方法,包括以下步骤:接收来自客户端的有用的用户接口事件消息;将所接收的用户接口事件消息映射成整合事件消息;确定所述接收的用户接口事件消息属于哪一个会话;根据所述用户接口事件所属会话的不同,将生成的整合事件消息分发到不同的相应通道中;以及根据整合事件消息之间的关联模式,在各个通道内生成Web应用事件消息。
依据本发明的第二个方面,提供了一种用于对来自客户端的用户接口事件消息进行Web事件分析以生成Web应用事件消息的装置,包括:事件储存库,用于存储用户接口事件消息和整合事件消息之间的映射关系;浏览器事件处理器,用于接收来自客户端的有用的用户接口事件消息,根据所述事件储存库中存储的映射关系,将所接收的用户接口事件消息映射成整合事件消息,并且从用户接口事件消息中获得必要的有用信息;事件会话管理器,用于根据由浏览器事件处理器所获得的有用信息,确定所接收的用户接口事件消息属于哪一个会话,并且根据所属会话的不同,将所述整合事件消息分发到不同的相应通道;应用事件模式库,用于存储整合事件消息之间的关联模式;以及一个或多个应用事件模式分析器,用于根据整合事件消息之间的关联模式,在各个通道内生成Web应用事件消息。
依据本发明的第三个方面,提供了一种用于在计算机网络中捕获客户端的Web页面事件的方法,包括以下步骤:响应于客户端通过互联网对Web应用服务器的访问,识别客户端的有用的Web页面事件;记录并监控作为监控目标的Web页面事件,并从中检取和收集有用的信息;以及捕获客户端的Web页面事件消息,并进行Web事件处理,以生成用户接口事件消息。
依据本发明的第四个方面,提供了一种用于在计算机网络中捕获客户端的Web页面事件的装置,包括:浏览器导航监控器,用于监控客户端用户要访问的目标Web页面是否属于要被监控的Web页面;事件配置库,用于存储事件配置信息,该信息用于指示为捕获和监控客户端的Web页面事件需要记录和监控哪些信息;事件侦听寄存器,用于存储需要记录和监控的Web页面事件及有用信息;事件侦听器,用于捕获客户端的Web页面事件消息,进行Web事件处理,以生成用户接口事件消息;以及Web信息收集器,用于从所捕获的Web页面事件消息中检取和收集有用的信息,并将其提供给所述事件侦听器。
依据本发明的第五个方面,提供了一种用于在计算机网络中对客户端的Web页面事件进行捕获和分析以生成Web应用事件消息的方法,包括:上述用于在计算机网络中捕获客户端的Web页面事件的方法步骤,以及上述用于对来自客户端的用户接口事件消息进行Web事件分析以生成Web应用事件消息的方法步骤。
依据本发明还有的第六个方面,还提供了一种用于在计算机网络中对客户端的Web页面事件进行捕获和分析以生成Web应用事件消息的系统,包括:一个或多个客户端,通过互联网访问Web应用服务器;上述用于在计算机网络中捕获客户端的Web页面事件的装置;以及事件分析和整合服务器,包括上述用于对来自客户端的用户接口事件消息进行Web事件分析以生成Web应用事件消息的装置。
依据本发明的其它方面,还提供了相应的计算机可读存储介质和计算机程序产品。
本发明的一个优点在于,通过利用根据本发明的方法和装置,可以以非侵入的方式对客户端的Web事件进行捕获和分析,并识别和确定Web事件之间的关联模式,从而将基于浏览器的事件映射为诸如整合之类的商业动作,以实现Web应用整合。这是比现有技术中的诸如轮询和侵入机制之类的传统方法更有效和更可行的方法。
本发明的又一个优点在于,通过利用根据本发明的方法和装置,可以以非侵入的方式在计算机网络中对客户端的基于浏览器的事件(即Web事件)进行捕获和/或分析,从而可以对客户端用户的互联网访问行为进行监控。
通过以下结合附图对本发明的最佳实施例的详细说明,本发明的这些以及其他优点将更加明显。
附图说明
本发明可以通过参考下文中结合附图所进行的描述而得到更好的理解,其中在所有附图中使用了相同或相似的附图标记来表示相同或者相似的部件。所述附图连同下面的详细说明一起包含在本说明书中并且形成本说明书的一部分,而且用来进一步举例说明本发明的优选实施例和解释本发明的原理和优点。在附图中:
图1示出了其中可以应用根据本发明的一个方面的优选实施例的计算机网络环境;
图2示出了根据本发明的一个实施例、在如图1所示的计算机网络环境下对客户端的Web页面事件进行捕获和分析从而实现Web应用整合的方法的流程图;
图3示出了根据本发明的一个实施例、如何捕获客户端的Web页面事件以生成用户接口(UI)事件消息(即图2中的步骤230)的具体处理过程的流程图;
图4示出了根据本发明的一个实施例、如图1所示的事件分析和整合服务器2如何将UI事件消息映射成整合事件消息并进而得到应用事件消息(即图2中的步骤240)的具体处理过程的流程图;
图5示出了一个典型的HTML事件处理模型,以及一段示范性的用于捕获客户端Web页面事件的脚本;
图6示出了根据本发明一个实施例的一个示范性的Web页面、以及所使用的Web页面事件消息、UI事件消息和合成的UI事件消息的格式;
图7示出了根据本发明一个实施例的UI事件消息与整合事件消息之间的映射关系;
图8示出了与根据本发明一个实施例的一种示范性关联模式相对应的、由用户提交信息以产生一个应用事件消息(即,触发一个应用事件)的三个Web页面;
图9示出了根据本发明的实施例、在图1所示的计算机网络环境下用于实现如图2-4所示的方法的客户端1以及事件分析和整合服务器2的主要结构;
图10示出了根据本发明的另一个实施例、用于对客户端的Web页面事件消息进行捕获、分析并且进而进行Web应用整合的系统、以及事件分析和整合服务器的主要结构。
本领域技术人员应当理解,附图中的元件仅仅是为了简单和清楚起见而示出的,而且不一定是按比例绘制的。例如,附图中某些元件的尺寸可能相对于其他元件放大了,以便有助于提高对本发明实施例的理解。
具体实施方式
在下文中将结合附图对本发明的示范性实施例进行描述。为了清楚和简明起见,在说明书中并未描述实际实施方式的所有特征。然而,应该了解,在开发任何这种实际实施例的过程中必须做出很多特定于实施方式的决定,以便实现开发人员的具体目标,例如符合那些与系统及业务相关的限制条件,其中这些限制条件会随着实施方式的不同而改变。此外,还应该了解,虽然开发工作有可能非常复杂和费时,但对得益于本公开的本领域技术人员来说,这种开发工作仅仅是例行的任务。
在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的装置结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
图1示出了其中可以应用根据本发明的一个方面的优选实施例的计算机网络环境。
如图1所示,根据实际情况的不同,在企业内部网内通常会包含一个或多个客户端1、事件分析和整合服务器2(也可以称之为“中间件(middleware)系统”)以及一个或多个后端应用系统3,所述后端应用系统可以是企业资源规划(ERP)、客户关系管理(CRM)、供应链管理(SCM)、办公自动化(OA)、企业信息系统(EIS)等多种应用系统。
客户端可以通过互联网访问可能分布在世界各地的多个外部Web应用服务器(也可简称为Web服务器)。为了简单起见,在图1中仅仅示出了两个客户端、两个Web应用服务器4及两个后端应用系统ERP和CRM。例如,如图1中所示,客户端1可以通过互联网经由Http Request访问网站www.Employease.com和www.Salesforce.com,并且可以经由Http Get获得来自Web应用服务器的原始Web页面。
在客户端1第一次访问Web应用服务器4时,客户端1向事件分析和整合服务器2发送Web页面事件消息,并从事件分析和整合服务器2下载Web框架页面以及预定的脚本。然后,在客户端上执行所述下载的脚本,并且对所下载的Web框架页面和从Web应用服务器所接收到的原始Web页面进行组合,从而在客户端的显示器上显示包含有脚本的组合的Html框架页面。其中,所述预定脚本是根据需要预先设计和存储在所述事件分析和整合服务器2中的。
此外,事件分析和整合服务器2还可以与一个或多个后端应用系统3之间进行信息同步和/或工作流程整合。
下面将参考图2-4的流程图更为详细地说明客户端1、事件分析和整合服务器2以及后端应用系统3的处理过程及其之间的相互关系。
图2示出了根据本发明的一个方面、在如图1所示的计算机网络环境下对客户端1的Web页面事件进行捕获和分析从而实现Web应用整合的方法的流程图。
如图2所示,该方法在步骤200中开始。然后,在步骤210中,客户端1的用户(也可以称为终端用户)在其Web浏览器中输入例如下述URL网址:www.Employease.com或者www.Salesforce.com,以便经由互联网访问相应的Web应用服务器4或者网站,并接收来自相应Web应用服务器或者网站的原始Web页面。
接着,在步骤220中,客户端1确定要访问的目标Web页面在事件分析和整合服务器2中是否被登记为要监控的网页,并且如果是的话,则可以在客户端用户没有察觉的情况下,从事件分析和整合服务器2下载Web框架页面和用于捕获客户端的Web页面事件的脚本。
在此,该脚本可以是诸如遵循Microsoft或者W3C标准的JavaScript、或者遵循Microsoft标准的VB Script之类的脚本语言。当然,其他的脚本语言也是可能的。
在用于捕获客户端的Web页面事件的脚本中,包含有事件配置信息,其向客户端指示为了捕获和监控Web页面事件需要记录和监控哪些信息,例如其中可以包括文档对象模型(DOM)、鼠标事件、按键事件、表单事件等有关信息。
在图5的右半部分中显示了一段示范性的用于捕获客户端的Web页面事件的脚本语言。
在接收到来自事件分析和整合服务器2的脚本和Web框架页面后,在步骤230中,在客户端1上显示通过将该Web框架页面和所述原始的目标Web页面进行组合而得到的组合的HTML框架页面,并执行所述脚本,以便捕获客户端1上的Web页面事件消息,并生成基于Web浏览器的UI事件消息。
关于步骤230的具体处理过程,将在下文中参考图3所示的流程图来进行详细说明。
在此,需要说明的一点是,所述脚本和Web框架页面是在客户端1第一次访问Web应用服务器4时从事件分析和整合服务器2中下载的,并且此后被存储在客户端的存储器中。在客户端下一次访问Web应用服务器时,客户端直接从存储器中读取原来下载的脚本和Web框架页面即可。
图3显示了根据本发明的一个实施例如何捕获客户端的Web页面事件以生成UI事件消息、即图2中的步骤230的具体处理过程的流程图。
如图3所示,步骤230的处理在步骤300中开始,即在客户端1上执行从事件分析和整合服务器2上下载的脚本。
然后,在步骤310中,根据从事件分析和整合服务器2中下载的事件配置信息,识别目标网页表单中的全部有用的Web页面事件、诸如“点击”等。
在此,Web页面事件类型遵循Microsoft和W3C DOM事件标准,以便可以在单独的表单中登记该事件,而不用对原始服务器Web页面进行代码注入。
在步骤320中,记录所有需要被监控的Web页面事件。
随后,在步骤330中,对作为监控目标的Web页面事件进行监控,并且从中检取和收集有用的信息,例如DOM-OBJ值等,从而得到Web页面事件消息。
然后,在步骤340中,根据步骤330中收集的有用信息,进行Web事件处理。具体来说,对所捕获的Web页面事件消息进行处理(例如,对其进行打包和/或映射),以生成UI事件消息。
在图5的左半部分中显示了一个典型的HTML事件处理模型,而图5的右半部分中显示了一些基本的HTML事件类型。
在图6中显示了一个示范性的Web页面、以及所使用的Web页面事件消息和UI事件消息的格式。
如图6所示,以普通Web页面为例,用户请求的页面中包含以下信息:页面本身信息-URL以及相应参数,页面session信息,业务数据信息。与UI事件消息的映射关系如下:选择性业务数据(pageDataSet)来自于web页中的业务数据信息,web应用名称targetApplication来自于URL,Session信息来自于页面SessionID(是可选的),当前页面ID信息来自于页面内容本身或URL(是可选的),而用户ID来自于Session相关信息(是可选的)。
在图6的右下部分还示出了合成的UI事件消息的格式,其可以适用于例如下述这样的情形。例如,客户端用户在提交一个网页表单之前,可能会遇到一个网页表单比较长不能显示在一个页面中的情形,这时用户需要进行翻页操作,以便在下一个页面中继续填写表单。在这种情况下,就需要把所生成的多个Web页面消息进行必要的合成。
为此,针对上述情形,如图3所示,在步骤350中,判断是否需要合成所生成的UI事件消息。
如果在步骤350中判定需要进行合成,则所述处理进行到步骤360,对所生成的多个UI事件消息进行合成,以生成合成的UI事件消息。然后,处理进行到步骤370。
如果在步骤350中判定不需要进行合成,则所述处理进行到步骤370。
当目标Web页面刷新或者提交到Web应用服务器时,在步骤370中,客户端1将所生成的UI事件消息(或者合成的UI事件消息)发送到事件分析和整合服务器2。
然后,图3所示的处理在步骤380中返回,从而完成了图2中步骤230的处理。
现在返回参见图2,在步骤230之后,即事件分析和整合服务器2在接收到来自客户端的UI事件消息(或者合成的UI事件消息)之后,在步骤240中,根据预定的规则或者商业处理规则,对UI事件消息(或者合成的UI事件消息)进行分析(即将其映射成整合事件消息)并生成应用事件消息。
下面将结合图4的流程图具体说明步骤240的处理过程。
图4显示了根据本发明的一个实施例、所述事件分析和整合服务器2如何对UI事件消息进行分析(即如何将其映射成整合事件消息)并进而得到应用事件消息(即,图2中的步骤240)的具体处理过程的流程图。
如图4所示,步骤240的处理在步骤400中开始。
然后,在步骤410中,事件分析和整合服务器2从客户端1接收(获取)有用的UI事件消息(或者合成的UI事件消息)。
接下来,处理进行到步骤420,事件分析和整合服务器2根据UI事件消息与整合事件消息之间的预先设定的映射关系,将所接收的UI事件消息(或者合成的UI事件消息)映射成整合事件消息,而且同时还从Web页面事件中继承有用的信息。
在图7中显示了根据本发明一个实施例的UI事件消息与整合事件消息之间的映射关系。
在如图7所示的UI事件与整合事件的映射过程中,首先从UI事件的ID信息中取得User ID、Session ID等信息,维护web事件的上下文信息,另外还需要取得事件所属web应用的相关信息以确定处理通道。此外,根据需要,可以将web UI事件中传递的简单类型数据转化为整合所需要的复杂类型(是可选的)。
随后,在步骤430中,所述事件分析和整合服务器2根据映射得到整合事件消息,根据UI事件消息中的SessionID(会话ID)来确定所述整合事件消息所属的会话,以便将整合事件消息分发到分别与会话对应的相关通道中。
为了更清楚和简单地说明本发明起见,在此可以假定一个会话对应于一个通道,并且接下来以一个通道内的处理过程为例进行说明。显然,一个会话对应于多个通道也是可能的。
该处理过程接着进行到步骤440,在各个通道内由来自同一用户(或客户端)的整合事件消息构成(或创建)一个整合事件消息序列。
然后,在步骤450中,判断该整合事件消息序列是否符合预先设定的整合事件消息之间的关联模式(也可以称之为应用事件模式)。
例如,如果假设3个Web页面事件的成功提交可以触发一个应用事件,而且它们中每个Web页面事件的失败都将导致不能产生一个应用事件消息,从而导致了用户动作的失败。
关于整合事件消息之间的关联模式,下面参考图8通过一个例子来对其进行进一步说明。
图8示出了与根据本发明一个实施例的一种示范性关联模式相对应的由用户提交信息以产生一个应用事件消息(即,触发一个应用事件)的三个Web页面。
以终端用户登录一个外部CRM系统并进行创建合同的活动为例来说明如何分析整合事件消息的关联模式。
假设终端用户在外部CRM系统上创建合同的这个活动涉及三个Web页面的提交,其中的三个网页如图8所示。其中这三个网页的提交事件必须顺序发生,才会触发企业内部的后端应用系统(例如ERP系统)的其他业务行为。
在此,同一个用户的在一个会话中的这三个顺序发生的Web页面提交操作(或Web页面提交事件消息)就构成了一种整合事件消息的关联模式。
在定义了图8所示的关联模式的情况下,在客户端记录这三个Web页面的提交事件,在如上所述对Web页面事件消息进行事件处理后,会连续产生三个UI事件消息。然后,事件分析和整合服务器2在接收到上述三个UI事件消息后,将其映射成整合事件消息并记录下来。只有当事件分析和整合服务器2顺序地接收到来自同一用户的在同一个会话内的上述三个整合事件消息,也就是说,只有当同一用户在同一会话内的整合事件消息符合预先定义的关联模式时,事件分析和整合服务器2才会生成一个应用事件消息,以便触发与之相应的业务行为或动作。
下面,再次返回参见图4。
如果在步骤450中判定所述整合事件消息序列(即,所述通道内的来自同一用户(或客户端)的整合事件消息)符合所述关联模式,则在步骤460中,生成一个应用事件消息。
在本发明中,可以用相应的标识和有用信息对应用事件消息进行预定义和结构化。
如果在步骤450中判定所述整合事件消息序列不符合所述关联模式,则处理进行到步骤455,判断系统是否超时。
如果在步骤455中判定并未超时,则处理返回到步骤410,以便从客户端接收进一步的UI事件消息(或者合成的UI事件消息)。
如果在步骤455中判定已经超时了,则处理进行到步骤475。
在步骤460之后,处理进行到步骤470,判断是否已经成功地生成了应用事件消息。
如果在步骤460中判定已经成功地生成了应用事件消息,则处理进行到步骤475。
在此,不能成功地生成应用事件消息,可能是由于多种原因造成的。例如,以图8所示的情形为例,只有当与同一用户的三个Web页面顺序提交的事件消息相对应的整合消息在事件分析和整合服务器中构成一个完整的整合消息序列时,才可能成功地生成应用事件消息,否则,只要其中的一个Web页面提交事件失败或者超时,就会造成无法成功地生成应用事件消息。当然,也可能有其他的原因导致应用事件消息的生成不成功。
在步骤475中,删除(或者清空)整合消息序列。然后,处理返回到步骤410,以便从客户端接收进一步的UI事件消息(或者合成的UI事件消息),并重复上述步骤。
如果在步骤470中判定已经成功地生成了应用事件消息,则处理进行到步骤480,根据该应用事件消息确定下一步将会采取的相应动作。
然后,在步骤490中,根据所确定的相应动作,将应用事件消息发送到相应的后端应用系统,例如企业信息系统(EIS)、客户关系管理(CRM)系统、企业资源规划(ERP)系统或者其他系统等。
随后,图4所示的处理(即图2中的步骤240)在步骤495中返回到图2所示的处理中。
再次返回参见图2。在步骤240之后,处理进行到步骤250,在其中根据应用事件消息,在相应的后端应用系统中触发相应的动作。
然后,图2所示的处理在步骤260中结束。
上面已经结合图1至图8对根据本发明一个实施例、对客户端的Web页面事件进行捕获、分析并且进而实现Web应用整合的方法的处理过程进行了说明。然而,本领域技术人员应当明白,其中说明的一些步骤或处理仅仅是示范性的,例如,图5所示的HTML事件处理模型和脚本,图6所示的Web页面消息、UI事件消息和合成的UI事件消息的格式,图7所示的UI事件消息和整合事件消息的映射关系,以及结合图8说明的整合事件消息的关联模式等。本领域技术人员完全可以根据实际情况和需要,对其中的脚本设计、消息格式、映射关系、整合事件消息的关联模式等进行各种修改。
图9显示了根据本发明的实施例、在图1所示的计算机网络环境下用于实现如图2-4所示的方法的客户端1以及事件分析和整合服务器2的主要结构。
在此需要说明的是,在图9所示的客户端1以及事件分析和整合服务器2中仅仅显示了与本发明密切相关的部分,并且其中各个装置或设备之间的连线和箭头表示了它们彼此之间的信号传送关系。
如图9所示,事件分析和整合服务器2中包括浏览器事件处理器901、事件储存库902、事件会话管理器903、一个或多个应用事件模式分析器904、应用事件模式库905、一个或多个应用事件发射器906、Web应用注册库907、事件配置储存库908、框架/入口页面909和脚本库910。
如前面参考图1和2所描述的那样,客户端在第一次要通过互联网连接到外部Web应用服务器时,会分别从事件分析和整合服务器2中的框架/入口页面909和脚本库910中下载Web框架页面和脚本。
客户端在下载了Web框架页面和脚本后,会将来自外部Web应用服务器的原始网页与Web框架页面进行组合,从而在客户端的显示器上显示经过上述组合而得到的组合的HTML框架页面,并执行所下载的脚本。
客户端在执行脚本后,会在客户端1中生成浏览器导航监控器801、事件配置库802、事件侦听寄存器803、事件侦听器804和Web信息收集器805等。
显然,客户端1中的事件配置库803与事件分析和整合服务器2中的事件配置储存库909是相关的。
其中,浏览器导航监控器801负责监控客户端用户要访问的目标Web页面是否属于登记在事件分析和整合服务器2中的Web应用注册库908中的要监控的页面。
事件配置库803包含事件配置信息,其用于指示为捕获和监控Web页面事件需要记录和监控哪些信息、例如键盘事件、鼠标事件等。
此外,在确定要访问的目标Web页面被登记在Web应用注册库908中的情况下,浏览器导航监控器801根据事件配置库803中包含的事件配置信息,确定需要记录和监控Web页面事件中的哪些有用信息,并且将需要记录和监控的Web页面事件及其中的有用信息记录在事件侦听寄存器802中。
事件侦听器804根据所述确定需要监控的Web页面事件及有用信息,捕获和监控(或者侦听)客户端的Web页面事件消息。Web信息收集器805从事件侦听器804所捕获的Web页面事件中检取和收集有用的信息、例如DOM-OBJ值等,然后将所收集的有用信息提供给事件侦听器804。
事件侦听器804根据Web信息收集器805所收集的有用信息,对有用的Web事件进行处理,即对所捕获的Web页面事件消息进行处理(例如,对其进行打包和/或映射),以生成UI事件消息。此外,在必要时,事件侦听器804还会对UI事件消息进行合成,从而生成合成的UI事件消息。在生成UI事件消息或者合成的UI事件消息之后,事件侦听器804将所生成的消息发送至事件分析和整合服务器2中的浏览器事件处理器901。
浏览器事件处理器901在接收到从客户端1传来的UI事件消息(或者合成的UI事件消息)后,根据事件储存库902中存储的UI事件消息与整合事件消息的预先设定的映射关系,对其进行映射,以生成整合事件消息,并从UI事件消息中获得必要的有用信息、例如SessionID等。
然后,浏览器事件处理器901将所生成的整合事件消息以及例如从UI事件消息中获得的例如SessionID等之类的必要信息提供给事件会话管理器903。
事件会话管理器903根据所获得SessionID等必要信息,确定所接收的UI事件消息(或者合成的UI事件消息)属于哪一个会话,并且根据会话的不同而将所生成的整合事件消息分发到不同的相应通道,并进而将其传送到位于相应通道内的相应的应用事件模式分析器904。
为了清楚和简单地说明本发明的原理起见,在此假设一个会话对应于一个通道,而且在一个通道内有一个应用事件模式分析器904和一个应用事件发射器906。当然,一个会话对应于多个通道,以及多个通道共用一个应用事件模式分析器904和一个应用事件发射器906,也都是可能的。
应用事件模式分析器904根据应用事件模式库905中预先设定好的应用事件模式(即,整合事件之间的关联模式),对所接收的多个整合事件消息进行分析,以确定其是否符合预定的关联模式,并且在多个整合事件消息符合预定关联模式的情况下,生成应用事件消息,然后确定其将要触发的相应动作。
然后,应用事件发射器906根据所述确定的要触发的相应动作,将应用事件消息传送到相应的后端应用系统、例如EIS系统或者业务工作流程引擎中,以便触发相应的后续动作。
虽然以上结合图1-9描述了根据本发明一个方面的、对客户端的Web页面事件进行捕获和分析从而进行Web应用整合的方法和系统、以及其中包括的客户端1与事件分析和整合服务器2的结构,但是根据上述公开的原理和教义,显然可以对其进行各种修改,从而得到各种变体。
例如,虽然以上描述了客户端1中包括的各个装置或模块是通过从事件分析和整合服务器2中下载脚本并执行该脚本后生成的这种情形(即,客户端中包括的上述各个装置或模块是通过计算机软件的形式实现的),但是,本领域技术人员通过阅读以上的相关描述可知,客户端1中包括的各个装置或模块也可以单独地用计算机硬件或固件来实现,或者也可以用计算机软硬件和固件的任意组合形式来实现。
不仅如此,而且本领域技术人员还应当明白,上述事件分析和整合服务器2中包括的各个装置和模块也可以单独地用计算机软件、硬件或者固件、或者用计算机软硬件和固件的任意组合形式来实现。
此外,虽然在上文中将框架/入口页面909、脚本库910、Web应用注册库907、事件配置储存库908描述为包括在上述事件分析和整合服务器2中,但是显然下述这样的情形也是可能的:上述信息或者数据库未包含在事件分析和整合服务器2中,而是存储在一个与事件分析和整合服务器2分离的独立存储器或存储设备中,这时只要事件分析和整合服务器2可以对该独立存储器或存储设备进行访问以获得相应的信息并将必要信息提供给客户端即可。
除此之外,还有可能根据情况对上述实施例进行其他方面的修改。例如,虽然在以上的描述中对来自客户端的UI事件消息(或者合成的UI事件消息)进行映射以获得整合事件消息的功能(或处理步骤)是由浏览器事件处理器901来实现或执行的,但是该功能(或处理步骤)也可以由事件会话管理器903来实现或执行。
为了说明书的简洁起见,在此就不对各种可能的修改情形或是实施例的变体进行逐一说明了。
图10示出了根据本发明的另一个实施例、用于对客户端的Web页面事件消息进行捕获、分析并且进而实现Web应用整合的系统、以及事件分析和整合服务器2’的主要结构。
在该实施例中,使用了一个代理机制。因此,在这个实施例中,在客户端一侧上的处理与以上结合图1-9所描述的实施例稍有不同,但在事件分析和整合服务器一侧上的处理则基本上是相同的。
如图10所示的系统能够执行与以上结合图2-4所述的方法类似的处理过程,即能够实现用于对客户端的Web事件进行捕获和分析并且据此进行Web应用整合以触发相应的动作的方法。
如图10所示,在客户端1’与事件分析和整合服务器2’之间增加了一个Web代理(也可以称之为代理服务器)1000。
与先前的实施例中不同的是,由代理服务器1000而不是由客户端自身来捕获客户端的Web页面事件消息、并向事件分析和整合服务器2’提供由其生成的UI事件消息(或者合成的UI事件消息)。当然,在这种情况下,客户端1’的浏览器需要被预先配置为通过代理进行互联网访问。
这时,与先前的实施例类似地,代理服务器1000中也可以包括浏览器导航监控器、事件侦听寄存器、事件配置库、事件侦听器和Web信息收集器等,并且它们所实现的功能也与前一实施例中的对应装置的功能基本上相同。
但是,需要说明的是,在该实施例中,与先前的实施例中不同的是,代理服务器1000中包括的浏览器导航监控器、事件侦听寄存器、事件配置库、事件侦听器、Web信息收集器等并不是通过从事件分析和整合服务器2’下载脚本而生成的。当然,它们也可以用计算机软件、硬件、或者固件单独实现,或者也可以用计算机软硬件或者固件的任意组合形式来实现。在用计算机软件实现时,它们也不再像在上一实施例中那样只能用脚本语言实现,而是也可以采用其它的编程语言来实现。
除此之外,通过图9和图10的比较,可以看出,该实施例中的事件分析和整合服务器2’的结构与前一实施例中的事件分析和整合服务器2的结构基本上是相同的,不同之处仅在于,其中不包括图9中所示的框架/入口页面909和脚本库910。这是因为,在如图10所示的实施例中,客户端1’或者代理服务器1000不需要从事件分析和整合服务器中下载Web框架页面和脚本,因此事件分析和整合服务器2’不需要包括框架/入口页面909和脚本库910。
与先前的实施例相比,在这个实施例中,在对客户端的Web事件进行捕获和分析时,代理服务器只能在客户端提交了网页后才能获得客户端的Web页面事件消息,而在先前的实施例中,由于是在客户端本机上捕获Web页面事件消息的,因此可以实时地记录和捕获Web页面消息。此外,在该实施例中,也不需要UI事件,并且与先前的实施例相比,整个彻底地简化了客户端,每次提交操作都经过代理转发到“事件分析和整合服务器”。
正如上文中所描述的那样,与结合图1-9所描述的实施例类似地,可以对图10所示的实施例进行各种修改。而且除了上文中所描述的几种可能的修改方式之外,在本实施例中还有可能存在其它的修改方式。例如,虽然在上面的描述中将代理服务器1000与事件分析和整合服务器2’描述为两个分离的服务器,但是显然它们也可以由同一台服务器来实现。
在此,为了本说明书的简洁起见,在说明书中省略了对如图10所示的系统所实现和执行的方法的进一步描述,而且也没有给出该方法的流程图。但是,其处理流程图与图2-4所示的流程图是类似的。对于本领域技术人员来说,在阅读了以上对上述用于捕获和分析Web事件消息并进而进行Web应用整合的系统和方法的简单文字说明之后,不需要花费创造性的劳动就可以很容易地绘制出该方法的流程图。
虽然以上结合图1-10描述了本发明的一个方面的应用,即描述了本发明在Web应用整合处理方面的示例,但是这一方面的应用仅仅是示范性的,它并不意味着将本发明局限于这一应用领域。对本领域技术人员来说,根据上文中对本发明的描述可知,显然本发明也可以应用于其它的方面。例如,本发明也可以应用于在企业内部网络中对客户端的互联网访问行为进行监控。公司可以在互联网网站访问上设置监控公司员工行为的规则。每个违反该规则的员工行为都可以触发相应的事件来通知负责的管理员。当然,本发明也可以适用于在需要进行Web事件监控和事件模式分析的任何其他情况中使用。
此外,显然,根据本发明的上述方法的各个操作过程也可以以存储在各种机器可读的存储介质中的计算机可执行程序的方式实现。
而且,本发明的目的也可以通过下述方式实现:将存储有上述可执行程序代码的存储介质直接或者间接地提供给系统或设备,并且该系统或设备中的计算机或者中央处理单元(CPU)读出并执行上述程序代码。
此时,只要该系统或者设备具有执行程序的功能,则实施的方式不局限于程序,并且该程序也可以是任意的形式,例如,目标程序、解释器执行的程序或者提供给操作系统的脚本程序等
上述这些机器可读存储介质包括但不限于:各种存储器和存储单元,半导体设备,磁盘单元例如光、磁和磁光盘,以及其它适于存储信息的介质等。
另外,客户计算机通过连接到因特网上的相应网站,并且将依据本发明的计算机程序代码下载和安装到计算机中然后执行该程序,也可以实现本发明。
最后,还需要说明的是,在本文中,诸如左和右、第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上虽然结合附图详细描述了本发明的实施例,但是应当明白,上面所描述的实施方式只是用于说明本发明,而并不构成对本发明的限制。对于本领域的技术人员来说,可以对上述实施方式作出各种修改和变更而不背离本发明的实质和范围。因此,本发明的范围仅由所附权利要求及其等效含义来限定。
Claims (23)
1.一种用于对来自客户端的用户接口事件消息进行Web事件分析以生成Web应用事件消息的方法,包括以下步骤:
接收来自客户端的有用的用户接口事件消息;
将所接收的用户接口事件消息映射成整合事件消息;
确定所述接收的用户接口事件消息属于哪一个会话;
根据所述用户接口事件消息所属会话的不同,将生成的整合事件消息分发到不同的相应通道中;以及
根据整合事件消息之间的关联模式,在各个通道内生成Web应用事件消息。
2.根据权利要求1所述的方法,其特征在于:所述根据整合事件消息之间的关联模式在各个通道内生成Web应用事件消息的步骤,进一步包括步骤:
在各个通道内将得到的所述整合事件消息构成整合消息序列;
判断所述整合消息序列是否符合所述整合事件消息的关联模式;以及
在判定所述整合消息序列符合所述关联模式的情况下,根据所述关联模式,生成相应的Web应用事件消息。
3.根据权利要求2所述的方法,其特征在于:所述方法进一步包括步骤:
在超时或者不能成功地生成相应的Web应用事件消息的情况下,删除所述整合消息序列。
4.根据权利要求1至3中任何一项所述的方法,其特征在于:所述方法还包括步骤:
将生成的相应Web应用事件消息传送到相应的后端应用系统,以触发相应的动作。
5.根据权利要求1至3中任何一项所述的方法,其特征在于:
所述接收的用户接口事件消息是合成的用户接口事件消息,
其中所述将用户接口事件消息映射成整合事件消息的步骤进一步包括步骤:将合成的用户接口事件消息映射成整合事件消息,以及
其中用户接口事件消息和整合事件消息之间的映射关系、以及整合事件消息之间的关联模式都是预先设定的。
6.根据权利要求1至3中任何一项所述的方法,进一步包括,获得客户端的用户接口事件消息,其中,所述获得客户端的用户接口事件消息的步骤进一步包括如下步骤:
响应于客户端通过互联网对Web应用服务器的访问,识别客户端的有用的Web页面事件;
记录并监控客户端的有用Web页面事件中作为监控目标的Web页面事件,并从中检取和收集有用的信息;以及
捕获客户端的Web页面事件消息,并进行Web事件处理,以生成用户接口事件消息。
7.根据权利要求6所述的方法,其特征在于:所述捕获客户端的Web页面事件消息,并进行Web事件处理,以生成用户接口事件消息的步骤,进一步包括步骤:
根据Web页面事件消息与用户接口事件消息之间的、预先设定的映射关系,对客户端的Web页面事件消息进行映射,以生成用户接口事件消息。
8.根据权利要求6所述的方法,其特征在于:所述获得客户端的用户接口事件消息的步骤是通过从服务器下载脚本并在客户端上执行该脚本来实现的。
9.根据权利要求8所述的方法,其特征在于:
所述脚本为Java Script或者VB Script,以及
所述方法还包括步骤:
从服务器下载Web框架页面;
将来自所述Web应用服务器的原始网页与所述下载的Web框架页面进行组合,以得到组合的HTML框架页面;以及
在客户端上显示组合的HTML框架页面。
10.根据权利要求6所述的方法,其特征在于:所述获得客户端的用户接口事件消息的步骤是在代理服务器上执行的,并且客户端被设置为经由代理服务器进行互联网访问。
11.根据权利要求6所述的方法,其特征在于:
需要监控哪些客户端Web页面事件、以及要检取和收集哪些有用信息,都是预先设置的,并且有用信息包括会话ID,以及
所述获得用户接口事件消息的步骤还包括步骤:
判断是否需要对用户接口事件消息进行合成;以及
在判定需要进行合成时,对用户接口事件消息进行合成,以生成合成的用户接口事件消息。
12.一种用于对来自客户端的用户接口事件消息进行Web事件分析以生成Web应用事件消息的装置,包括:
事件储存库,用于存储用户接口事件消息和整合事件消息之间的映射关系;
浏览器事件处理器,用于接收来自客户端的有用的用户接口事件消息,根据所述事件储存库中存储的映射关系,将所接收的用户接口事件消息映射成整合事件消息,并且从用户接口事件消息中获得必要的有用信息;
事件会话管理器,用于根据由浏览器事件处理器所获得的有用信息,确定所接收的用户接口事件消息属于哪一个会话,并且根据所属会话的不同,将所述整合事件消息分发到不同的相应通道;
应用事件模式库,用于存储整合事件消息之间的关联模式;以及
一个或多个应用事件模式分析器,用于根据整合事件消息之间的关联模式,在各个通道内生成Web应用事件消息。
13.根据权利要求12所述的装置,其特征在于:
所述一个或多个应用事件模式分析器中的每一个都包括用于存储整合事件消息序列的存储器;以及
所述应用事件模式分析器还用于判断所述整合事件消息序列是否符合所述应用事件模式库中存储的整合事件消息关联模式,并且在判定所述整合事件消息序列符合所述关联模式的情况下,根据所述整合事件消息关联模式,生成相应的Web应用事件消息。
14.根据权利要求12或13所述的装置,其特征在于:所述装置还包括:
一个或多个应用事件发射器,用于将应用事件模式分析器所生成的相应Web应用事件消息传送到相应的后端应用中,以便触发相应的动作。
15.根据权利要求12或13所述的装置,其特征在于:
所述接收的用户接口事件消息是合成的用户接口事件消息,以及
其中用户接口事件消息和整合事件消息之间的映射关系、以及整合事件消息之间的关联模式是预先设定的,并分别存储在事件储存库和应用事件模式库中。
16.一种用于在计算机网络中对客户端的Web页面事件进行捕获和分析以生成Web应用事件消息的方法,包括:
用于在计算机网络中获得客户端的用户接口事件消息的步骤,以及,
如权利要求1至5中任何一项所述的、用于对来自客户端的用户接口事件消息进行Web事件分析以生成Web应用事件消息的方法中的步骤,
其中,所述用于在计算机网络中获得客户端的用户接口事件消息的步骤进一步包括:
响应于客户端通过互联网对Web应用服务器的访问,识别客户端的有用的Web页面事件;
记录并监控客户端的有用Web页面事件中作为监控目标的Web页面事件,并从中检取和收集有用的信息;以及
捕获客户端的Web页面事件消息,并进行Web事件处理,以生成用户接口事件消息。
17.一种用于在计算机网络中对客户端的Web页面事件进行捕获和分析以生成Web应用事件消息的系统,包括:
一个或多个客户端,可通过互联网访问Web应用服务器;
用于在计算机网络中捕获客户端的Web页面事件的装置,包括:
浏览器导航监控器,用于监控客户端用户要访问的目标Web页面是否属于要被监控的Web页面;
事件配置库,用于存储事件配置信息,该信息用于指示为捕获和监控客户端的Web页面事件需要记录和监控哪些信息;
事件侦听寄存器,用于存储需要记录和监控的Web页面事件及有用信息;
事件侦听器,用于捕获客户端的Web页面事件消息,并进行Web事件处理,以生成用户接口事件消息;以及
Web信息收集器,用于从所捕获的Web页面事件消息中检取和收集有用的信息,并将其提供给所述事件侦听器,
以及
事件分析和整合服务器,包括如权利要求12至15中任何一项所述的、用于对来自客户端的用户接口事件消息进行Web事件分析以生成Web应用事件消息的装置。
18.根据权利要求17所述的系统,其特征在于:所述用于捕获客户端的Web页面事件的装置被包含在客户端中。
19.根据权利要求18所述的系统,其特征在于:
所述系统还包括:
脚本库,用于存储可供客户端下载的、用于捕获客户端Web页面事件消息的脚本;
事件配置库,用于存储事件配置信息;以及
Web应用注册库,用于在其中登记要监控的Web页面,以及
所述客户端下载Web框架页面和脚本,在客户端的显示器上显示通过将原始的目标Web页面和所述Web框架页面进行组合而得到的组合的HTML框架页面,并且在所述客户端上执行所述下载的脚本。
20.根据权利要求19所述的系统,其特征在于:
所述脚本库、事件配置库和Web应用注册库被包括在所述事件分析和整合服务器或者被包括在一个单独的设备中。
21.根据权利要求17所述的系统,其特征在于:
所述用于捕获客户端的Web页面事件的装置被包含在代理服务器中,并且所述客户端被配置为经由代理服务器进行互联网访问,以及
所述系统还包括:
事件配置库,用于存储事件配置信息;以及
Web应用注册库,用于在其中登记要监控的Web页面。
22.根据权利要求21所述的系统,其特征在于:所述事件配置库和Web应用注册库被包括在所述事件分析和整合服务器中,或者被包括在一个单独的设备中。
23.根据权利要求21所述的系统,其特征在于:所述代理服务器和所述事件分析和整合服务器是同一服务器。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006101213053A CN101131747B (zh) | 2006-08-22 | 2006-08-22 | 捕获和/或分析客户端的Web页面事件的方法、装置及系统 |
US11/843,242 US8910187B2 (en) | 2006-08-22 | 2007-08-22 | Method and apparatus for non-intrusive web application integration to streamline enterprise business process |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006101213053A CN101131747B (zh) | 2006-08-22 | 2006-08-22 | 捕获和/或分析客户端的Web页面事件的方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101131747A CN101131747A (zh) | 2008-02-27 |
CN101131747B true CN101131747B (zh) | 2012-02-01 |
Family
ID=39129009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006101213053A Active CN101131747B (zh) | 2006-08-22 | 2006-08-22 | 捕获和/或分析客户端的Web页面事件的方法、装置及系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8910187B2 (zh) |
CN (1) | CN101131747B (zh) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100755468B1 (ko) * | 2007-05-29 | 2007-09-04 | (주)이즈포유 | 웹 페이지 구조 분석을 통한 웹 사이트의 정보 파악 방법 |
US9264483B2 (en) | 2007-07-18 | 2016-02-16 | Hammond Development International, Inc. | Method and system for enabling a communication device to remotely execute an application |
CN101296243B (zh) * | 2008-06-26 | 2013-02-20 | 阿里巴巴集团控股有限公司 | 一种服务集成平台系统及提供互联网服务的方法 |
CN101662493B (zh) * | 2008-08-25 | 2012-10-03 | 阿里巴巴集团控股有限公司 | 一种用户访问路径的数据采集方法、系统及服务器 |
CN101674327B (zh) * | 2009-09-29 | 2012-12-26 | 金蝶软件(中国)有限公司 | 异构系统消息集成方法、架构及系统 |
US8990427B2 (en) | 2010-04-13 | 2015-03-24 | Synactive, Inc. | Method and apparatus for accessing an enterprise resource planning system via a mobile device |
US8407321B2 (en) | 2010-04-21 | 2013-03-26 | Microsoft Corporation | Capturing web-based scenarios |
CN102271142B (zh) * | 2010-06-01 | 2015-01-28 | 中兴通讯股份有限公司 | 一种业务开发平台、系统及方法 |
CN102411573A (zh) * | 2010-09-20 | 2012-04-11 | 百度在线网络技术(北京)有限公司 | 一种基于网页中的网页访问者行为的信息获取方法和系统 |
US9547876B2 (en) | 2011-02-16 | 2017-01-17 | Lattice Engines, Inc. | Digital data processing systems and methods for searching and communicating via a social network |
US9886455B1 (en) | 2011-02-16 | 2018-02-06 | Lattice Engines, Inc. | Digital data processing systems and methods for searching across user accounts |
CA3060189C (en) * | 2011-05-12 | 2021-09-21 | Solink Corporation | Video analytics system |
CN102622664A (zh) * | 2012-01-06 | 2012-08-01 | 深圳市华伯通讯设备有限公司 | 一种事件的处理方法及系统 |
CN102594587B (zh) * | 2012-01-17 | 2014-08-20 | 京信通信系统(中国)有限公司 | 嵌入式web调测维护方法及调测维护系统 |
CN102609471B (zh) * | 2012-01-18 | 2013-09-04 | 康睿 | 一种用于精准分析互联网用户网络行为的方法和装置 |
US9069627B2 (en) | 2012-06-06 | 2015-06-30 | Synactive, Inc. | Method and apparatus for providing a dynamic execution environment in network communication between a client and a server |
US9300745B2 (en) * | 2012-07-27 | 2016-03-29 | Synactive, Inc. | Dynamic execution environment in network communications |
US9277255B1 (en) * | 2013-03-15 | 2016-03-01 | Google Inc. | Metering of internet protocol video streams |
CN103475744B (zh) * | 2013-09-30 | 2017-06-09 | 中国农业银行股份有限公司 | 一种基于Web应用的资源下载方法、装置和系统 |
CN104731687A (zh) * | 2013-12-24 | 2015-06-24 | 镇江金钛软件有限公司 | 一种电脑活动的实时监控方法 |
CN105025367A (zh) * | 2014-04-30 | 2015-11-04 | 中国科学院声学研究所 | 一种基于数字机顶盒的页面载入方法 |
US10635724B2 (en) * | 2015-01-30 | 2020-04-28 | International Business Machines Corporation | Analysis of data utilization |
US10810362B2 (en) * | 2015-07-17 | 2020-10-20 | Sap Se | Page-based incident correlation for network applications |
US20170251072A1 (en) * | 2015-10-22 | 2017-08-31 | Symantec Corporation | System and method for annotating client-server transactions |
CN105512858A (zh) * | 2015-12-01 | 2016-04-20 | 深圳还是威健康科技有限公司 | 一种事件处理方法及终端 |
US9569795B1 (en) * | 2016-02-25 | 2017-02-14 | Perfect Price, Inc. | Computer-implemented method of capturing transaction data associated with an online purchase |
US20180262404A1 (en) * | 2017-03-13 | 2018-09-13 | Microsoft Technology Licensing, Llc | Hypermedia-driven record and playback test framework |
CN107943997B (zh) * | 2017-12-05 | 2020-08-07 | 厦门市美亚柏科信息股份有限公司 | 一种基于谷歌浏览器的远程网站取证方法、终端设备及存储介质 |
CN109284458A (zh) * | 2018-09-28 | 2019-01-29 | 平安普惠企业管理有限公司 | 网页显示方法、装置、计算机设备及存储介质 |
CN110018867A (zh) * | 2018-11-12 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 用于页面交互的方法和装置 |
CN110609841B (zh) * | 2019-09-18 | 2020-09-15 | 镁佳(北京)科技有限公司 | 异步处理消息的方法、装置、可读介质及电子设备 |
CN111241432A (zh) * | 2020-01-08 | 2020-06-05 | 随锐科技集团股份有限公司 | 用户行为分析方法及装置、计算机可读存储介质 |
CN111782214B (zh) * | 2020-07-03 | 2024-04-23 | 携程商旅信息服务(上海)有限公司 | 客户端系统、运行方法、电子设备和存储介质 |
CN112910976A (zh) * | 2021-01-22 | 2021-06-04 | 朱模卿 | 基于浏览器技术的应用数据分析方法、系统和电子设备 |
US12260270B2 (en) * | 2023-06-01 | 2025-03-25 | Sap Se | Idempotent event handling |
CN117472683B (zh) * | 2023-10-24 | 2025-01-21 | 航天信息(广东)有限公司 | 一种页面操作的监控处理方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1519722A (zh) * | 2003-01-20 | 2004-08-11 | 鼎新电脑股份有限公司 | Java网页事件处理系统及其方法 |
EP1523165A2 (en) * | 2003-10-06 | 2005-04-13 | Microsoft Corporation | Internet-based event notification |
CN1650274A (zh) * | 2002-12-26 | 2005-08-03 | 富士通株式会社 | 操作管理方法和操作管理服务器 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6076108A (en) * | 1998-03-06 | 2000-06-13 | I2 Technologies, Inc. | System and method for maintaining a state for a user session using a web system having a global session server |
AU5789000A (en) * | 1999-07-07 | 2001-01-22 | Screamingmedia Inc. | User activity reporting browser |
US20020184363A1 (en) * | 2001-04-20 | 2002-12-05 | Steven Viavant | Techniques for server-controlled measurement of client-side performance |
US20030149799A1 (en) * | 2001-05-03 | 2003-08-07 | Scott Shattuck | System supporting unified event handling in ECMAScript |
US6944660B2 (en) * | 2001-05-04 | 2005-09-13 | Hewlett-Packard Development Company, L.P. | System and method for monitoring browser event activities |
US7831655B2 (en) * | 2001-10-18 | 2010-11-09 | Bea Systems, Inc. | System and method for implementing a service adapter |
US7085682B1 (en) * | 2002-09-18 | 2006-08-01 | Doubleclick Inc. | System and method for analyzing website activity |
US20040162741A1 (en) * | 2003-02-07 | 2004-08-19 | David Flaxer | Method and apparatus for product lifecycle management in a distributed environment enabled by dynamic business process composition and execution by rule inference |
US7788319B2 (en) * | 2003-05-16 | 2010-08-31 | Sap Ag | Business process management for a message-based exchange infrastructure |
US8307109B2 (en) * | 2003-08-27 | 2012-11-06 | International Business Machines Corporation | Methods and systems for real time integration services |
US7941543B2 (en) * | 2004-08-23 | 2011-05-10 | Neon Systems, Inc. | System and method for migrating applications from a legacy system |
US7752308B2 (en) * | 2007-10-30 | 2010-07-06 | Hutchinson Kevin P | System for measuring web traffic |
-
2006
- 2006-08-22 CN CN2006101213053A patent/CN101131747B/zh active Active
-
2007
- 2007-08-22 US US11/843,242 patent/US8910187B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1650274A (zh) * | 2002-12-26 | 2005-08-03 | 富士通株式会社 | 操作管理方法和操作管理服务器 |
CN1519722A (zh) * | 2003-01-20 | 2004-08-11 | 鼎新电脑股份有限公司 | Java网页事件处理系统及其方法 |
EP1523165A2 (en) * | 2003-10-06 | 2005-04-13 | Microsoft Corporation | Internet-based event notification |
Also Published As
Publication number | Publication date |
---|---|
US20080072239A1 (en) | 2008-03-20 |
US8910187B2 (en) | 2014-12-09 |
CN101131747A (zh) | 2008-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101131747B (zh) | 捕获和/或分析客户端的Web页面事件的方法、装置及系统 | |
USRE47896E1 (en) | System and method for tracking web interactions with real time analytics | |
US6775675B1 (en) | Methods for abstracting data from various data structures and managing the presentation of the data | |
US8417715B1 (en) | Platform independent plug-in methods and systems for data mining and analytics | |
US8301645B1 (en) | Aggregated web analytics request systems and methods | |
US20080092060A1 (en) | System and method for capturing website user feedback | |
US20130151570A1 (en) | Platform for data aggregation, communication, rule evaluation, and combinations thereof, using templated auto-generation | |
US20130055268A1 (en) | Automated web task procedures based on an analysis of actions in web browsing history logs | |
CN103631699A (zh) | 日志管理系统及日志监控、获取和查询方法 | |
WO2017124692A1 (zh) | 查找表单页面和目标页面转化关系的方法和装置 | |
WO2007005378A2 (en) | Business intelligence incorporated business process management system and method thereof | |
US20220114483A1 (en) | Unified machine learning feature data pipeline | |
US20140258373A1 (en) | Systems and Methods for Managing and Publishing Managed Content | |
US12117981B2 (en) | Automatic discovery of executed processes | |
US7886278B2 (en) | Object reference monitoring | |
Salem et al. | Active XML-based Web data integration | |
Bernaschina et al. | A big data analysis framework for model-based web user behavior analytics | |
US20220036477A1 (en) | System and method for determining revenue generated by any zone in a webpage | |
Yadav et al. | An efficient web mining algorithm for Web Log analysis: E-Web Miner | |
Nam et al. | Business-aware framework for supporting RFID-enabled applications in EPC Network | |
CN112083982B (zh) | 信息处理方法和装置 | |
CN101145936B (zh) | 一种在Web页面中添加标签的方法及其系统 | |
CN100437740C (zh) | 站点点击与网页上链接的关联 | |
US11593451B2 (en) | System and method for comparing zones for different versions of a website based on performance metrics | |
Mengistu | Distributed Microservice Tracing Systems: Open-source tracing implementation for distributed Microservices build in Spring framework |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |