HK1209931B - Method of processing requests for digital services - Google Patents
Method of processing requests for digital services Download PDFInfo
- Publication number
- HK1209931B HK1209931B HK15110534.5A HK15110534A HK1209931B HK 1209931 B HK1209931 B HK 1209931B HK 15110534 A HK15110534 A HK 15110534A HK 1209931 B HK1209931 B HK 1209931B
- Authority
- HK
- Hong Kong
- Prior art keywords
- request
- communication device
- access
- request packet
- packet
- Prior art date
Links
Description
技术领域Technical Field
本发明涉及一种请求数字服务的处理方法和相关的中间件系统。The present invention relates to a method for processing digital service requests and a related middleware system.
背景技术Background Art
由于移动设备102的增多,已经通过服务机构(或者提供商)引入更多相关的数字服务,来利用增长的可用的商业机会。图1中描写了示例方案,其中移动设备102访问由服务机构的后端服务器104所提供的数字服务。然而,由于每天都引入爆发性范围的数字服务,所以对于移动设备102的用户来说,掌握可用的数字服务变得越来越困难,并且鉴于以上的发展,对于服务机构定时提供用户需要的正确类别的数字服务也同样具有挑战性。Due to the proliferation of mobile devices 102, more relevant digital services have been introduced by service organizations (or providers) to capitalize on the growing available business opportunities. FIG1 depicts an example scenario in which a mobile device 102 accesses digital services provided by a service organization's backend server 104. However, with the explosive range of digital services being introduced daily, it is becoming increasingly difficult for users of mobile devices 102 to stay informed of the available digital services. In light of these developments, it is also challenging for service organizations to provide the correct types of digital services that users desire on a timely basis.
因此,本发明的一个目的是解决现有技术中的至少一个问题和/或提供一种本领域中有用的选择。It is therefore an object of the present invention to address at least one of the problems of the prior art and/or to provide a useful choice in the art.
发明内容Summary of the Invention
根据本发明的第一方面,提供了一种处理对于各自的服务机构所托管(hosted)的不同数字服务的请求的方法。所述方法包括:从通信设备接收请求包,所述请求包包括源标识符和目的地标识符;基于目的地标识符确定通信设备正请求的服务是所述不同数字服务中的哪一个;基于源标识符认证请求包,以确定通信设备对于访问所确定的数字服务的访问许可;并且如果授予了访问许可,则修改请求包,并且基于目的地标识符将所修改的请求包转发到所确定的数字服务以用于处理。According to a first aspect of the present invention, there is provided a method for processing requests for different digital services hosted by respective service organizations. The method comprises: receiving a request packet from a communication device, the request packet comprising a source identifier and a destination identifier; determining which of the different digital services the communication device is requesting based on the destination identifier; authenticating the request packet based on the source identifier to determine access permissions granted to the communication device for accessing the determined digital service; and, if access permissions are granted, modifying the request packet and forwarding the modified request packet to the determined digital service for processing based on the destination identifier.
使用所提供的方法有利于能够消除复杂的、冗长的并且昂贵的点对点(point-to-point)实现。另外,本方法允许实现多种移动应用可用来与多种范围的服务器系统进行通信的公共接口。因此,为了消费者的使用利益,可以更快地将新的移动性应用服务推动给消费者。换句话说,本方法允许实现统一的网关系统,该系统将简化并且促进将移动性应用服务介绍给消费者。The provided method advantageously eliminates complex, lengthy, and expensive point-to-point implementations. Furthermore, the method allows for a common interface that multiple mobile applications can use to communicate with a wide range of server systems. Consequently, new mobility application services can be brought to consumers more quickly for their benefit. In other words, the method allows for a unified gateway system that simplifies and facilitates the introduction of mobility application services to consumers.
优选地,通信设备可以是移动通信设备或者有线通信设备。此外,本方法可以还包括:如果不授予访问许可,则生成错误代码,并且将包括该错误代码的错误包转发到通信设备。更优选地,本方法可以还包括从通信设备检索设备配置文件信息。Preferably, the communication device may be a mobile communication device or a wired communication device. Furthermore, the method may further include: if access permission is not granted, generating an error code, and forwarding an error packet including the error code to the communication device. More preferably, the method may further include retrieving device profile information from the communication device.
另外,该方法可以优选地还包括从通信设备检索与通信设备的位置相对应的信息。此外,该方法还可以还包括记录与处理请求包相关的信息。更优选地,该方法可以还包括:响应于所转发的请求包,从与目的地标识符相关的系统接收响应包,处理响应包以提取相关的数据信息,并且将提取的数据信息转发到通信设备。处理响应包可以包括执行用于分析所提取的数据信息的对应步骤。优选地,所述对应步骤可以选自以下步骤所组成的组:如果所提取的数据信息包括错误消息,则记录错误消息并且发送相关的错误包,以及如果所提取的数据信息包括成功消息,则记录成功消息并且发送相关的成功包。更进一步,服务机构可以提供从包括金融、物流、零售、传媒、保健、资讯娱乐、安全、教育以及游览的组中选择的不同数字服务。In addition, the method may preferably further include retrieving information corresponding to the location of the communication device from the communication device. In addition, the method may further include recording information related to processing the request packet. More preferably, the method may further include: in response to the forwarded request packet, receiving a response packet from a system associated with the destination identifier, processing the response packet to extract relevant data information, and forwarding the extracted data information to the communication device. Processing the response packet may include performing corresponding steps for analyzing the extracted data information. Preferably, the corresponding steps may be selected from the group consisting of the following steps: if the extracted data information includes an error message, recording the error message and sending a related error packet, and if the extracted data information includes a success message, recording the success message and sending a related success packet. Furthermore, the service agency may provide different digital services selected from the group including finance, logistics, retail, media, healthcare, infotainment, security, education and tourism.
根据本发明的第二方面,提供了一种用于处理对于各自的服务机构所托管的不同数字服务的请求的处理器。所述处理器包括:聚合器模块,用于从通信设备接收请求包,所述请求包包括源标识符和目的地标识符,并且用于基于目的地标识符确定通信设备正请求的服务是所述不同数字服务中的哪一个,以及认证模块,用于基于源标识符认证请求包,以确定通信设备对于访问所确定的数字服务的访问许可。如果授予了访问许可,则所述聚合器模块修改请求包,并且基于目的地标识符将所修改的请求包转发到所确定的数字服务以用于处理。According to a second aspect of the present invention, a processor for processing requests for different digital services hosted by respective service organizations is provided. The processor includes an aggregator module configured to receive a request packet from a communication device, the request packet including a source identifier and a destination identifier, and to determine, based on the destination identifier, which of the different digital services the communication device is requesting; and an authentication module configured to authenticate the request packet based on the source identifier to determine access permission granted to the communication device for accessing the determined digital service. If access permission is granted, the aggregator module modifies the request packet and, based on the destination identifier, forwards the modified request packet to the determined digital service for processing.
优选地,所述聚合模块可以包括配置子模块,所述配置子模块被配置为应用访问映射规则以确定通信设备的访问许可。又另外,聚合器模块还可以包括身份和访问子模块,所述身份和访问子模块被配置为执行通信设备的身份管理,其中身份管理包括提供认证、授权和账户管理。此外,聚合器模块可以优选地包括交易记录子模块,所述交易记录子模块被配置为记录关于由聚合器模块所接收到的请求包的信息。Preferably, the aggregation module may include a configuration submodule configured to apply access mapping rules to determine access permissions for communication devices. Furthermore, the aggregator module may also include an identity and access submodule configured to perform identity management for communication devices, wherein identity management includes providing authentication, authorization, and account management. Furthermore, the aggregator module may preferably include a transaction logging submodule configured to log information about request packets received by the aggregator module.
根据本发明第三方面,提供了一种用于使通信设备和服务器系统之间能够进行数字交易的中间件系统,所述中间件系统包括本发明第二方面的处理器。According to a third aspect of the present invention, there is provided a middleware system for enabling digital transactions between a communication device and a server system, the middleware system comprising the processor of the second aspect of the present invention.
应该显而易见的是,关于本发明一个方面的特征也可以适用于本发明的其他方面。It should be apparent that features described in relation to one aspect of the invention may also be applicable to other aspects of the invention.
参考以下描述的具体实施例,将阐明本发明的这些及其他方面,并且他们将是显而易见的。These and other aspects of the invention will be apparent from and elucidated with reference to the embodiments described hereinafter.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
以下参考附图公开本发明的具体实施例,其中:The following discloses specific embodiments of the present invention with reference to the accompanying drawings, in which:
图1显示了根据现有技术的点对点解决方案的实现;FIG1 shows an implementation of a point-to-point solution according to the prior art;
图2显示了根据本发明实施例的中间件系统;FIG2 shows a middleware system according to an embodiment of the present invention;
图3示出图2的系统的服务框架;FIG3 shows the service framework of the system of FIG2 ;
图4a描述图2的系统的集体智能框架;FIG4 a depicts the collective intelligence framework of the system of FIG2 ;
图4b描述了图2的集体智能框架的替选表示;FIG4 b depicts an alternative representation of the collective intelligence framework of FIG2 ;
图4c描述作为关于虚拟-真实的超级购物中心服务的示例的用在图2的集体智能框架中的各个组件;FIG4 c depicts various components used in the collective intelligence framework of FIG2 as an example of a virtual-real super mall service;
图4d描述作为关于智能移动银行服务的示例,用在图2的集体智能框架中的各个组件;FIG4 d depicts various components used in the collective intelligence framework of FIG2 as an example of an intelligent mobile banking service;
图5是图4a的系统中描述的核心引擎组件的原理图;FIG5 is a schematic diagram of the core engine components described in the system of FIG4a;
图6是关于图5的核心引擎组件接收到原始请求的用户情况示意图;FIG6 is a schematic diagram of a user situation in which the core engine component of FIG5 receives an original request;
图7是关于图5的核心引擎组件接收到随后请求的用户情况示意图;并且FIG7 is a schematic diagram of a user scenario in which the core engine component of FIG5 receives a subsequent request; and
图8显示在移动互联网服务价值链中的图2的系统的应用。FIG8 shows the application of the system of FIG2 in the mobile Internet service value chain.
具体实施方式DETAILED DESCRIPTION
图2显示了根据本发明的实施例的中间件系统200(以下称为系统),并且图3示出该系统200的对应的服务框架300。系统200也被称为集成移动主干(MLEB)。特别地,系统200是基于互联网的集成移动命令及控制平台,其被用作中间网关,用于将安装在移动设备102上的移动应用互连并且桥接至通过那些移动应用提供移动网页和本地应用服务的对应的后端应用服务器204,其中所述移动设备102包括基于IP(例如智能手机、膝上型电脑、平板等等)和非基于IP设备(例如2G电话等等)。可以理解的是,移动网页和本地应用服务还包括可以不必使用网页才能完成想要的交易的数字服务。移动网页和本地应用服务还进一步包括提供相关的基于网页的内容的服务。可以理解的是,移动网页和本地应用服务使得交易能够被执行并且使得能够在移动设备102和后端应用服务器204之间共享信息/数据。后端应用服务器204包括企业后端系统,诸如由金融机构(例如银行或者证券交易所)、商业企业、政府机构、互联网提供商等等管理的系统。FIG2 illustrates a middleware system 200 (hereinafter referred to as the system) according to an embodiment of the present invention, and FIG3 illustrates a corresponding service framework 300 of the system 200. The system 200 is also referred to as a mobile integrated backbone (MLEB). Specifically, the system 200 is an internet-based integrated mobile command and control platform that serves as an intermediary gateway, interconnecting mobile applications installed on mobile devices 102 and bridging them to corresponding backend application servers 204 that provide mobile web and native application services through those mobile applications. The mobile devices 102 include both IP-based devices (e.g., smartphones, laptops, tablets, etc.) and non-IP-based devices (e.g., 2G phones, etc.). It will be appreciated that mobile web and native application services also include digital services that eliminate the need for a web page to complete a desired transaction. Mobile web and native application services further include services that provide related web-based content. It will be appreciated that mobile web and native application services enable transactions to be executed and information/data to be shared between the mobile devices 102 and the backend application servers 204. Backend application servers 204 include enterprise backend systems, such as systems managed by financial institutions (eg, banks or stock exchanges), commercial enterprises, government agencies, Internet providers, and the like.
系统200被概念化为图3所示的服务框架300,其包括三个层级,层级具有作为底部层级的移动网络302,本系统200被构造为中间层级,并且企业304形成顶端层级。移动网络302提供必要的通信无线连接/基础结构,以使得移动设备102能够经由系统200连接到企业304。The system 200 is conceptualized as a service framework 300 shown in FIG3 , which includes three tiers, with the mobile network 302 as the bottom tier, the system 200 being constructed as the middle tier, and the enterprise 304 forming the top tier. The mobile network 302 provides the necessary communication wireless connection/infrastructure to enable the mobile device 102 to connect to the enterprise 304 via the system 200.
将会理解的是,企业304是负责管理图2中描述的各自后端应用服务器204的机构。企业304因此是由移动设备102的用户可访问的本地应用服务和移动网页的提供商;换句话说,将显而易见的是,企业304(与后端应用服务器204一起)也被称为服务机构。如上述,企业304包括诸如金融(例如提供支付、清算、银行服务等等的银行)、物流、零售、传媒、保健、资讯娱乐和安全的商业区中的机构。企业304还进一步包括提供诸如教育、游览等等服务的政府机构。It will be understood that enterprise 304 is the organization responsible for managing the respective backend application servers 204 depicted in FIG2 . Enterprise 304 is therefore the provider of local application services and mobile web pages accessible by users of mobile devices 102; in other words, it will be apparent that enterprise 304 (along with backend application servers 204) is also referred to as a service organization. As mentioned above, enterprise 304 includes organizations in business sectors such as finance (e.g., banks providing payment, clearing, and banking services), logistics, retail, media, healthcare, infotainment, and security. Enterprise 304 further includes government agencies providing services such as education, tourism, and the like.
如图3所示,系统200充当移动网络302中的移动设备102到企业304的后端应用服务器204之间的桥梁,用来使交易能够被执行,并且使信息/数据能够在移动设备102的用户和企业304之间共享。系统200被构造为不同的组件,参考图4a中所示的系统200的集体智能框架400将进一步描述每个组件。集体智能框架400的替选表示如图4b所示。具体来说,集体智能框架400包括系统200正常起作用所必需的软件组件。特别地,系统200的组件分别是通信信道(CC)组件2002、核心引擎(CE)组件2004、解决方案域(SD)组件2006(其也被称为商业领域组件)、安全接口组件2008、支持系统组件20010和服务接口组件20012。为了扼要,在随后的说明书中将省略为各个组件使用的术语“组件”。系统200的集体智能框架400还进一步包括企业304的传输信道402和后端应用服务器204。As shown in Figure 3, system 200 acts as a bridge between mobile devices 102 in a mobile network 302 and backend application servers 204 of an enterprise 304, enabling transactions to be executed and information/data to be shared between the user of mobile device 102 and enterprise 304. System 200 is structured into various components, each of which will be further described with reference to the collective intelligence framework 400 of system 200 shown in Figure 4a. An alternative representation of collective intelligence framework 400 is shown in Figure 4b. Specifically, collective intelligence framework 400 includes the software components necessary for system 200 to function properly. Specifically, the components of system 200 are a communication channel (CC) component 2002, a core engine (CE) component 2004, a solution domain (SD) component 2006 (also referred to as a business domain component), a security interface component 2008, a support system component 20010, and a service interface component 20012. For the sake of brevity, the term "component" used to refer to each component will be omitted in the subsequent description. The collective intelligence framework 400 of the system 200 further includes a transmission channel 402 of the enterprise 304 and a backend application server 204 .
传输信道402是移动网页和本地应用服务被递送给移动设备102的用户所使用的装置,并且具体来说,该装置是安装在移动设备102中的移动(或者本地)应用。在移动设备102上安装的操作系统可以包括Apple iOSTM、Google AndroidTM、BlackBerry OSTM、WindowsMobileTM、Symbian OSTM等等。因此,显而易见的是移动设备102上的移动(或者本地)应用被配置为可在移动设备102的各个安装的操作系统上执行。如在前描述的,后端应用服务器204将移动网页和本地应用服务提供给移动设备102的用户。相应地,系统200被配置为聚集那些服务,并且随后经由传输信道402将聚集的服务提供给移动设备102的用户。The delivery channel 402 is the means by which mobile web pages and native application services are delivered to the user of the mobile device 102, and more specifically, the means is the mobile (or native) application installed on the mobile device 102. The operating systems installed on the mobile device 102 may include Apple iOS ™ , Google Android ™ , BlackBerry OS ™ , Windows Mobile ™ , Symbian OS ™ , and the like. Therefore, it is apparent that the mobile (or native) applications on the mobile device 102 are configured to be executable on the respective operating systems installed on the mobile device 102. As previously described, the backend application server 204 provides mobile web pages and native application services to the user of the mobile device 102. Accordingly, the system 200 is configured to aggregate those services and then provide the aggregated services to the user of the mobile device 102 via the delivery channel 402.
通信信道2002使得系统200能够与移动网络302通信,以将移动网页和本地应用服务递送移动设备102的用户。具体来说,如对技术人员来说显而易见的,通信信道2002包括接口(实现为软件子模块),以使得系统200能够经由各种通信信道/协议栈/网络元件(诸如SMPP、STK、USSD、RTSP、XHTML、WSDL等等)与移动网络302进行交互。此外,通信信道2002被配置有子层,系统200能够通过该子层与后端应用服务器204通信。该子层包括诸如TCP、SOAP、XMPP、SMTP/S等等的接口。将会理解的是,通信信道2002中的接口可以根据需要进行更新(例如当现有的协议被刷新为更新的版本,或者由于相关移动和互联网技术的新发展,新的协议变得可用时)。The communication channel 2002 enables the system 200 to communicate with the mobile network 302 to deliver mobile web pages and local application services to users of the mobile device 102. Specifically, as will be apparent to those skilled in the art, the communication channel 2002 includes interfaces (implemented as software submodules) that enable the system 200 to interact with the mobile network 302 via various communication channels/protocol stacks/network elements (such as SMPP, STK, USSD, RTSP, XHTML, WSDL, etc.). In addition, the communication channel 2002 is configured with a sublayer through which the system 200 can communicate with the backend application server 204. This sublayer includes interfaces such as TCP, SOAP, XMPP, SMTP/S, etc. It will be understood that the interfaces in the communication channel 2002 can be updated as needed (e.g., when existing protocols are updated to newer versions or new protocols become available due to new developments in related mobile and Internet technologies).
核心引擎2004被配置为提供由系统200所提供的主要功能/服务。在这方面中,核心引擎2004为系统200的所有其他组件2002、2006、2008、20010、20012处理用户和会话管理。具体来说,由核心引擎2004提供的功能/服务包括但是不限于身份及访问管理(IAM)、交易、聚合器、设备管理、SMS服务、位置、数据市场、流(streaming)、生物测量认证(biometricauthentication)(例如使用虹膜或者指纹)、声音识别、规则/BPM配置(BPM provision)、安全支付(例如握手)等等。还将会理解的是,可以基于具体的要求,根据需要随时将新的功能/服务增强到核心引擎2004。每个功能/服务都是通过安装在核心引擎2004内的软件子模块提供的。The core engine 2004 is configured to provide the primary functionality/services provided by the system 200. In this regard, the core engine 2004 handles user and session management for all other components 2002, 2006, 2008, 20010, and 20012 of the system 200. Specifically, the functionality/services provided by the core engine 2004 include, but are not limited to, identity and access management (IAM), transactions, aggregators, device management, SMS services, location, data marketplaces, streaming, biometric authentication (e.g., using iris or fingerprint), voice recognition, rules/BPM provisioning, secure payments (e.g., handshake), and the like. It will also be understood that new functionality/services can be enhanced to the core engine 2004 over time as needed based on specific requirements. Each functionality/service is provided by a software submodule installed within the core engine 2004.
以下给出提供的服务的简要描述。使用集中(centralised)IAM框架处理由系统200收到的所有进来的请求,所述集中IAM框架被设计用于处理认证、授权和账户管理的目的,而关于交易记录,记录所有通过系统200进行的交易以允许必要时容易地检索和合并对应的信息;也就是,程序被设计为生成记录/报告,该记录/报告被标记有时间戳以符合不-否认标准。对于设备管理,系统200通过多个移动设备102各自的身份来识别他们,这主要涉及匹配进来的请求的ID字段和系统200的设备配置文件数据库。设备管理还包括确定和管理设备位置,其中系统200获得发起请求的移动设备102的位置数据。位置数据包括GPS数据(即经度、纬度和高度)、蜂窝ID、IP地理位置等等。尤其是,对于基于IP的移动设备102,位置数据包括GPS数据,而对于非基于IP的移动设备102,位置数据仅仅包括蜂窝ID,因为GPS数据不易获得。A brief description of the services provided is provided below. All incoming requests received by system 200 are processed using a centralized IAM framework designed to handle authentication, authorization, and account management purposes. Regarding transaction logging, all transactions conducted through system 200 are recorded to allow for easy retrieval and consolidation of corresponding information when necessary; that is, the program is designed to generate records/reports that are timestamped to meet non-repudiation standards. For device management, system 200 identifies multiple mobile devices 102 by their respective identities. This primarily involves matching the ID field of incoming requests with system 200's device profile database. Device management also includes determining and managing device location, where system 200 obtains location data for the mobile device 102 initiating the request. Location data includes GPS data (i.e., longitude, latitude, and altitude), cellular ID, IP geolocation, and so on. Specifically, for IP-based mobile devices 102, the location data includes GPS data, while for non-IP-based mobile devices 102, the location data only includes the cellular ID, as GPS data is not readily available.
聚合器随后把企业304提供的移动网页和本地应用服务合并,用于将他们提供给移动设备102,并且处理系统200的监视和控制。至于安全支付,系统200允许使用在这方面任何适当的支付协议,诸如马来西亚的Sdn.Bhd的Silverlake Mobility Eco系统设计的“握手(Shake)”协议,其基于预先安装在移动设备102和后端应用服务器204上的对应的配对算法,使得能够安全支付,并且在移动设备102之间能够交换数据/信息/文档。关于生物测量认证,系统200执行指纹识别和虹膜认证方法,来唯一地确定移动设备204的用户身份,以便相应地拒绝没有被授予访问由服务机构所提供的特定服务的许可的用户进行访问。最后,数据市场被用于存储所有接收到的原始数据,诸如位置数据、来源国、性别信息等等。接收到的原始数据随后被用于数据和信息分析目的。The aggregator then consolidates the mobile web and native application services provided by the enterprise 304, providing them to the mobile device 102, and handles the monitoring and control of the system 200. With regard to secure payments, the system 200 allows for the use of any appropriate payment protocol in this regard, such as the "Shake" protocol designed by Silverlake Mobility Eco Systems of Sdn. Bhd. of Malaysia, which is based on corresponding pairing algorithms pre-installed on the mobile device 102 and the backend application server 204, enabling secure payments and the exchange of data/information/documents between the mobile devices 102. With regard to biometric authentication, the system 200 performs fingerprint recognition and iris authentication methods to uniquely determine the identity of the user of the mobile device 204, thereby denying access to users who are not authorized to access the specific services provided by the service provider. Finally, the data market is used to store all received raw data, such as location data, country of origin, gender information, etc. The received raw data is then used for data and information analysis purposes.
解决方案域(或者另外被称为商业域)2006被配置为包括商业逻辑和处理,其提供用户想要的类型的企业304所提供的移动网页/数字和本地应用服务。更具体地说,解决方案域2006包括多个软件子模块,每个子模块被配置为处理对应的商业逻辑和处理。此外,每个子模块在传输信道402的层级还具有同等的前端移动应用,其被配置为从后端应用服务器204检索将要呈现给用户的相关的产品/服务信息。将理解的是可以根据需要向解决方案域2006增加新的子模块,以包括新商业逻辑和处理;换句话说,根据需要发展解决方案域2006的配置。Solution domain (or otherwise referred to as business domain) 2006 is configured to include the business logic and processing that provides the types of mobile web/digital and native application services offered by enterprise 304 that users desire. More specifically, solution domain 2006 includes multiple software sub-modules, each of which is configured to handle corresponding business logic and processing. In addition, each sub-module also has an equivalent front-end mobile application at the level of transmission channel 402, which is configured to retrieve relevant product/service information from back-end application server 204 to be presented to the user. It will be understood that new sub-modules can be added to solution domain 2006 as needed to include new business logic and processing; in other words, the configuration of solution domain 2006 can be evolved as needed.
另外,解决方案域2006包括(通过各自的子模块提供)以下服务:虚拟-真实的超级购物中心、智能移动银行、移动广告、移动钱夹、移动优惠和兑换、移动航班和旅馆预订、内容管理及其他。特别地,通过解决方案域2006提供的这些服务是用户想要的服务。虚拟-真实的超级购物中心服务向移动设备102的用户(即购物者)提供广泛的产品和服务,而智能移动域知识提供关于金融(例如移动银行)和非金融行业(例如保险提供、电影预订等等)的服务。为了说明的目的,图4c和图4d分别描述了在系统200的集体智能框架400中使用的与虚拟-真实的超级购物中心服务相关的被强调的组件,以及智能移动银行服务。因此可以理解的是,其他服务将相应地在集体智能框架400中使用不同的组件。Additionally, solution domain 2006 includes (provided through respective submodules) the following services: virtual-real supermall, smart mobile banking, mobile advertising, mobile wallet, mobile offers and redemptions, mobile flight and hotel reservations, content management, and others. In particular, the services provided by solution domain 2006 are services that users desire. The virtual-real supermall service offers a wide range of products and services to mobile device 102 users (i.e., shoppers), while the smart mobile domain provides services related to finance (e.g., mobile banking) and non-financial sectors (e.g., insurance offerings, movie reservations, etc.). For illustrative purposes, Figures 4c and 4d depict the highlighted components used in the collective intelligence framework 400 of system 200, respectively, related to the virtual-real supermall service and the smart mobile banking service. It will be appreciated that other services will utilize different components within the collective intelligence framework 400 accordingly.
移动广告和报警服务提供允许企业304订阅移动广告的移动频道,并且系统200被配置为为了诸如欺诈报告或者促销活动的目的而发送SMS警报/通知。移动钱夹服务随后提供利用诸如NFC或者上述“握手”协议的不使用现金、无卡和非接触传输机制的安全支付服务。移动钱夹被配置为预付存储值或者在线后付。另一方面,该移动提供和优惠服务使得移动设备102的用户能够访问电子赠券用于货币提供/折扣,并且兑换商家点数用来购物。旅行和游览服务允许希望旅行的移动设备102的用户预订航班/膳宿,同时内容管理服务使得移动设备102的用户公开、编辑并且修改内容(例如目录信息、产品信息、促销以及等价物)。The mobile advertising and alerting service provides a mobile channel that allows businesses 304 to subscribe to mobile advertising, and the system 200 is configured to send SMS alerts/notifications for purposes such as fraud reporting or promotional activities. The mobile wallet service then provides a secure payment service that utilizes a cashless, cardless and contactless transmission mechanism such as NFC or the above-mentioned "handshake" protocol. The mobile wallet is configured to be prepaid stored value or online postpaid. On the other hand, the mobile offers and discounts service enables users of the mobile device 102 to access electronic coupons for monetary offers/discounts and redeem merchant points for purchases. The travel and sightseeing service allows users of the mobile device 102 who wish to travel to book flights/accommodation, while the content management service enables users of the mobile device 102 to publish, edit and modify content (such as catalog information, product information, promotions and the like).
关于服务接口20012,它包括第三方接口(例如SDE.OS和SDE.OS支付服务)。特别地,服务接口20012与后端应用服务器204接口以提供服务,诸如用于移动银行的核心银行、用于商家点数兑换的优惠方案、用于欺诈报告的欺诈检测、用于提供产品和服务的零售等。另一方面,服务接口20012还与相关的后端应用服务器204接口以提供核心银行和卡支付服务。因此,通过服务接口20012(其起到将数据转换为适于不同后端应用服务器204使用的格式的作用),那些例如物流、航空、旅行、游览、传媒、安全等等的企业能将他们的服务提供给移动设备102的用户。Regarding the service interface 20012, it includes third-party interfaces (such as SDE.OS and SDE.OS payment services). In particular, the service interface 20012 interfaces with the back-end application server 204 to provide services such as core banking for mobile banking, preferential schemes for merchant point redemption, fraud detection for fraud reporting, retail for providing products and services, etc. On the other hand, the service interface 20012 also interfaces with the relevant back-end application server 204 to provide core banking and card payment services. Therefore, through the service interface 20012 (which serves to convert data into a format suitable for use by different back-end application servers 204), companies such as logistics, aviation, travel, tourism, media, security, etc. can provide their services to users of mobile devices 102.
支持系统20010包括必要的配置(provisioning)/管理/运行支持商业系统或者后台,用于监视和报告的目的。Support Systems 20010 include the necessary provisioning/management/operation support business systems or back office for monitoring and reporting purposes.
另外,系统200还为移动设备102直到后端应用服务器204提供安全接口2008(例如加密和安全强化),以便明确发出请求访问的移动设备102的必要的访问权。具体来说,安全接口2008被配置为处理关于诸如注入式攻击、跨站脚本(XSS)、失效认证、会话管理等的安全机制的移动互联网安全方面。此外,安全接口2008还在传输信道402的层级上为移动设备102执行移动安全的其他方面,诸如从不保存敏感物、随机PIN数字、越狱检测等等。In addition, the system 200 provides a security interface 2008 (e.g., encryption and security hardening) for the mobile device 102 to the backend application server 204, so as to clearly determine the necessary access rights of the mobile device 102 requesting access. Specifically, the security interface 2008 is configured to handle aspects of mobile Internet security related to security mechanisms such as injection attacks, cross-site scripting (XSS), broken authentication, session management, etc. In addition, the security interface 2008 also implements other aspects of mobile security for the mobile device 102 at the level of the transmission channel 402, such as never saving sensitive items, random PIN numbers, jailbreak detection, etc.
图5相应地显示了系统200的核心引擎2004的原理图500。核心引擎2004主要包括聚合器502,其中其他模块包括可通信地耦接的配置管理器504、身份和访问管理器506、交易日志管理器508、追踪帮助器510、配置帮助器512、设备配置文件管理器514和位置管理器516。将理解的是,配置管理器504、身份和访问管理器506、交易日志管理器508、设备配置文件管理器514和设备位置管理器516还被统称为管理器模块。5 accordingly shows a schematic diagram 500 of the core engine 2004 of the system 200. The core engine 2004 primarily includes an aggregator 502, with other modules including a configuration manager 504, an identity and access manager 506, a transaction log manager 508, a tracking helper 510, a configuration helper 512, a device profile manager 514, and a location manager 516 being communicatively coupled thereto. It will be understood that the configuration manager 504, the identity and access manager 506, the transaction log manager 508, the device profile manager 514, and the device location manager 516 are also collectively referred to as manager modules.
聚合器502用作集中交互中心,用于在系统200的通信信道2002和解决方案域2006之间协调/引导进来的请求和出去的响应。重要的是,聚合器502通过要求所有请求/响应接受相同的一组处理校验来确保操作的控制和一致,所述处理校验通过管理器模块504、506、508、510、512、514、516提供。进一步地,在管理器模块504、506、508、510、512、514、516之间通信的任何系统请求还通过聚合器502被路由。The aggregator 502 serves as a centralized interaction hub for coordinating/directing incoming requests and outgoing responses between the communication channels 2002 and the solution domains 2006 of the system 200. Importantly, the aggregator 502 ensures control and consistency of operations by requiring all requests/responses to undergo the same set of processing checks, which are provided by the manager modules 504, 506, 508, 510, 512, 514, 516. Furthermore, any system requests communicated between the manager modules 504, 506, 508, 510, 512, 514, 516 are also routed through the aggregator 502.
聚合器502还提供在处理用户管理方面的专用功能,用于以下活动类型:(i)为匿名用户开始会话,(ii)为注册的用户登录,(iii)注册新用户,(iv)更新用户的细节,以及(v)检索用户的记录。Aggregator 502 also provides specialized functionality in handling user management for the following activity types: (i) starting a session for an anonymous user, (ii) logging in for a registered user, (iii) registering a new user, (iv) updating a user's details, and (v) retrieving a user's record.
根据配置,聚合器502被布置为主动收听背景用于接收从解决方案域2006或者通信信道2002发送的请求。需要强调的是,来自解决方案域2006或者通信信道2002的请求被聚合器502给予同样的对待;换句话说,基于接收到的命令处理请求,而没有优先对待。还将显而易见的是,在移动设备102的用户发起请求用于执行交易时,生成(经由通信信道2002接收到的)对后端应用服务器204的请求。将理解的是,交易包括仅仅单个请求或者多个连续的请求。由聚合器502收到的请求此后被相应地转发给通信信道2002或者解决方案域2006的适当的软件子模块以进行处理。另外,通过聚合器502根据对应的请求中包括的客户密码来唯一识别请求。Depending on the configuration, the aggregator 502 is arranged to actively listen in the background for receiving requests sent from the solution domain 2006 or the communication channel 2002. It should be emphasized that requests from the solution domain 2006 or the communication channel 2002 are treated the same by the aggregator 502; in other words, the requests are processed based on the received command without priority treatment. It will also be apparent that when a user of the mobile device 102 initiates a request to perform a transaction, a request to the backend application server 204 (received via the communication channel 2002) is generated. It will be understood that a transaction may include only a single request or multiple consecutive requests. The requests received by the aggregator 502 are then forwarded to the appropriate software submodule of the communication channel 2002 or the solution domain 2006 for processing. In addition, the request is uniquely identified by the aggregator 502 based on the client password included in the corresponding request.
请求被区分为两种类型:(i)原始请求,以及(ii)后续请求。将显而易见的是,请求被格式化为用于传送的数字化包的形式。原始请求是开始想要的交易的请求,并且包括以下对象域:交易头、请求头以及本体部。交易头包括有关交易、客户编码以及会话ID的信息。客户编码与会话ID相关,所述会话ID在预先确定的时间(例如二十秒)之后到期。请求头包括有关请求的信息,其包含请求源(即用户操作的移动设备102)和请求目的地,同时本体部包括将要转发给请求目的地用于进一步处理的请求数据。Requests are distinguished into two types: (i) original requests, and (ii) subsequent requests. As will be apparent, requests are formatted in the form of digital packets for transmission. An original request is a request to initiate a desired transaction and includes the following object fields: a transaction header, a request header, and a body. The transaction header includes information about the transaction, a customer code, and a session ID. The customer code is associated with a session ID, which expires after a predetermined time (e.g., twenty seconds). The request header includes information about the request, including the source of the request (i.e., the mobile device 102 operated by the user) and the destination of the request, while the body includes the request data to be forwarded to the destination of the request for further processing.
后续请求是跟随较早的原始请求的随后的请求,并且包括以下对象域:聚合器头、请求头和本体部。具体来说,聚合器头包括有关基于对原始请求的处理而从聚合器502接收到的较早的交易的信息。包括有关请求的信息的请求头包括请求源和请求目的地,而本体部包括将要转发给请求目的地用于进一步处理的请求数据。A subsequent request is a subsequent request that follows an earlier original request and includes the following object fields: an aggregator header, a request header, and a body. Specifically, the aggregator header includes information about the earlier transaction received from aggregator 502 based on the processing of the original request. The request header, which includes information about the request, includes the request source and the request destination, while the body includes the request data to be forwarded to the request destination for further processing.
由聚合器502接收到的任何请求首先被转发给各自的管理器模块,其被布置在核心引擎2004内用于核对确定和将要执行的其他相关处理。一旦完成了这些,请求被聚合器502修改并且因此被转换为新的包(即改变原始请求包的特定域的值),并且被转发给请求目的地。尤其是,新的包包括两个对象域:聚合器头和本体部。聚合器头提供有关聚合器502处理特定交易之后的信息,并且包括交易、客户编码、会话、用户、设备和位置信息。本体部包括将要转发给请求目的地用于进一步处理的请求数据。Any request received by the aggregator 502 is first forwarded to the respective manager module, which is arranged within the core engine 2004 for verification and other related processing to be performed. Once this is completed, the request is modified by the aggregator 502 and is thus converted into a new packet (i.e., the values of specific fields of the original request packet are changed), and forwarded to the request destination. In particular, the new packet includes two object fields: an aggregator header and a body. The aggregator header provides information about the aggregator 502 after processing a particular transaction, and includes transaction, customer code, session, user, device and location information. The body includes the request data to be forwarded to the request destination for further processing.
处理请求随后被聚合器502转发给请求目的地(即,相关的后端应用服务器204)用于进一步相关的处理。转发的请求因此被请求目的地处理成功或者处理不成功。关于成功处理,通过请求目的地返回的结果随后被转发给请求源作为响应对象,其包含返回的结果的数据。另一方面,关于不成功的处理,从请求目的地接收到错误响应(其包括错误异常码)并且聚合器502此后将错误响应转发给请求源。The processing request is then forwarded by the aggregator 502 to the request destination (i.e., the relevant backend application server 204) for further relevant processing. The forwarded request is thus processed successfully or unsuccessfully by the request destination. In the case of successful processing, the result returned by the request destination is then forwarded to the request source as a response object, which contains the data of the returned result. On the other hand, in the case of unsuccessful processing, an error response (which includes an error exception code) is received from the request destination and the aggregator 502 thereafter forwards the error response to the request source.
配置管理器504被布置为应用访问映射规则,其确定请求源是否如同请求中所指定的那样,被授权与请求目的(即,后端应用服务器204)地进行通信。这是通过将请求源和相关的请求目的地相对于存储在配置管理器504(的数据库)中的访问映射规则进行比较而确定的。访问映射规则具有限定的两个层级的粒度(即,基于目的地组件和相关功能),并且基于要求配置所有规则。于是,因此系统200可以在运行期间授予或者撤回动态配置的访问权(即许可)。Configuration manager 504 is arranged to apply access mapping rules that determine whether the request source is authorized to communicate with the request destination (i.e., backend application server 204) as specified in the request. This is determined by comparing the request source and the associated request destination against the access mapping rules stored in (a database of) configuration manager 504. Access mapping rules have a defined two-level granularity (i.e., based on the destination component and the associated functionality), and all rules are configured based on requirements. Thus, system 200 can grant or revoke dynamically configured access rights (i.e., permissions) during runtime.
至于身份和访问管理器506,它被配置为经由中央框架控制身份管理(即认证、授权和账户管理),以辅助用户通过移动设备102访问系统200。特别地,为了使得系统200能够认证、授权和账户管理的目的,确定进来的请求的身份。认证使得能够确定请求是否是从注册的实体(即用户/设备)或者匿名的实体发起的,以便授予/拒绝访问。因此,如果请求的确是来自于已经向系统200注册的实体,那么将请求映射到对应的用户和新生成的会话ID。基于身份凭证,授权使得能够确定是否准许注册的实体与请求中指定的请求目的地(即后端应用服务器204)通信。相似地,基于身份凭证,账户管理允许识别和提取请求的头部中包含的信息,其被用于交易帐目管理的目的。As for the identity and access manager 506, it is configured to control identity management (i.e., authentication, authorization, and account management) via a central framework to assist users accessing the system 200 via mobile devices 102. In particular, the identity of incoming requests is determined to enable the system 200 to authenticate, authorize, and manage accounts for the purposes of authentication, authorization, and account management. Authentication enables a determination to be made as to whether the request is initiated from a registered entity (i.e., user/device) or an anonymous entity in order to grant/deny access. Thus, if the request is indeed from an entity that has registered with the system 200, the request is mapped to the corresponding user and a newly generated session ID. Authorization, based on the identity credentials, enables a determination as to whether the registered entity is permitted to communicate with the request destination specified in the request (i.e., backend application server 204). Similarly, account management, based on the identity credentials, allows identification and extraction of information contained in the request header, which is used for transaction account management purposes.
进一步地,身份和访问管理器506还支持使用多个身份储存库,在使用主人身份储存库时,能够控制单个签约用户访问多个应用,而使用独立的身份储存库时,相反的,允许控制用户访问需要对各自的用户群保持控制的单个应用。身份储存库是外部资料库或者被配置在系统200内的资料库,这取决于应用的要求。另外,所有身份信息(包括用户ID、口令、个人资料等等)可以被配置为允许动态的制定用户访问配置,如同将对技术人员显而易见的,可以在运行期间授予或者撤回用户访问权。Furthermore, the identity and access manager 506 supports the use of multiple identity repositories. Using a master identity repository allows for controlling access to multiple applications for a single subscriber, while using independent identity repositories, on the other hand, allows for controlling user access to individual applications that require control over their respective user groups. The identity repository can be an external repository or a repository configured within the system 200, depending on the application requirements. Furthermore, all identity information (including user IDs, passwords, profile information, etc.) can be configured to allow for dynamic customization of user access configurations, allowing for the granting or revocation of user access rights at runtime, as will be apparent to those skilled in the art.
交易记录管理器508被配置为记录所有由聚合器502收到的进来的请求的信息,并且交易处理的数据被记录到中央数据库储存库,其被最佳地协调为所需的速度和性能。进一步地,将与每个请求相关的所有附加信息(例如身份和设备配置文件)与任何相关的交易数据一起进行记录。为了请求接收和响应提交而执行记录,以便说明请求的发起人和交易的结果。将理解的是,为了审计的目的,将交易限定为在系统200内被独立跟踪的最小单元的工作。另外,所有记录的交易被记录时间戳,以符合不否认标准,并且允许容易的检索和合并任何已记录的细节。任何交易都被描述为两个记录,其中第一个记录(即“请求记录”)被用来记录接收到的请求,同时,同时第二个记录(即“响应记录”)被用来记录根据对应的请求而提交的响应。The transaction record manager 508 is configured to record information about all incoming requests received by the aggregator 502, and transaction processing data is recorded in a central database repository that is optimally coordinated for the required speed and performance. Further, all additional information associated with each request (such as identity and device profiles) is recorded along with any relevant transaction data. Recording is performed for both request receipt and response submission to illustrate the initiator of the request and the outcome of the transaction. It will be understood that for audit purposes, a transaction is defined as the smallest unit of work that is independently tracked within the system 200. In addition, all recorded transactions are time-stamped to comply with non-repudiation standards and allow easy retrieval and merging of any recorded details. Any transaction is described as two records, where the first record (i.e., the "request record") is used to record the request received, while the second record (i.e., the "response record") is used to record the response submitted in accordance with the corresponding request.
具体来说,请求记录存储以下信息域:“请求时间戳”、“请求源”、“请求目的地”、“服务器ID”(其识别后端应用服务器204)、“线程ID”(其识别处理系统线程)、“客户ID”、“交易ID”(其将服务相同交易的多个请求组成组)、“会话ID”(如果可用)、“用户ID”(如果可用)、“设备配置文件信息”(如果可用)以及“设备位置信息”(如果可用)。Specifically, the request record stores the following information fields: "Request timestamp", "Request source", "Request destination", "Server ID" (which identifies the backend application server 204), "Thread ID" (which identifies the processing system thread), "Customer ID", "Transaction ID" (which groups multiple requests serving the same transaction), "Session ID" (if available), "User ID" (if available), "Device profile information" (if available), and "Device location information" (if available).
另一方面,响应记录存储以下信息域:“响应时间戳”、“服务器ID”(其识别拖管(hosting)应用服务器)、“线程ID”(其识别处理线程)、“结果编码”(指示成功编码或者错误代码)以及“结果消息”(作为成功消息或者错误消息)。将理解的是,将预先加载结果密码的列表,并且相对于全面的消息映射表参考该结果密码列表,所述消息映射表格被存储在核心引擎2004可访问的系统数据库(未显示)上。进一步,用“{0}”的格式参数化结果消息,其中,系统200随后用适当的字符串值替代格式“{0}”中的“0”。为了说明的目的,以“{0}”的格式编码的结果消息的示例是“{SYS 100}”,其中参考消息映射表格,“SYS 100”指代“无效用户登录”。On the other hand, the response record stores the following fields of information: "Response Timestamp," "Server ID" (which identifies the hosting application server), "Thread ID" (which identifies the processing thread), "Result Code" (indicating a success code or an error code), and "Result Message" (as a success message or an error message). It will be understood that a list of result codes will be pre-loaded and referenced against a comprehensive message mapping table stored in a system database (not shown) accessible to the core engine 2004. Further, the result message is parameterized using the format of "{0}," where the system 200 then replaces the "0" in the format "{0}" with an appropriate string value. For purposes of illustration, an example of a result message encoded in the format of "{0}" is "{SYS 100}," where, with reference to the message mapping table, "SYS 100" refers to "Invalid User Login."
追踪帮助器510被布置为在追踪记录中记录系统跟踪/消息,所述追踪记录被用来辅助调程序(debugging)、性能最佳化、译码运行时间未知例外以及任何其他非操作相关的记录。追踪记录包括以下信息:“追踪时间戳”、“服务器ID”(其识别后端应用服务器204)、“线程ID”(其识别处理系统线程)以及“追踪消息”。用“{0}”的格式来参数化消息,其中系统随后用适当的字符串值替换格式“{0}”中的“0”。参考前面段落中相似地在前描述,同样可以理解这一点。The trace helper 510 is arranged to record system traces/messages in a trace log, which is used to assist in debugging, performance optimization, decoding runtime unknown exceptions, and any other non-operational related logging. The trace log includes the following information: "trace timestamp", "server ID" (which identifies the backend application server 204), "thread ID" (which identifies the processing system thread), and "trace message". The message is parameterized using the format of "{0}", where the system then replaces the "0" in the format "{0}" with an appropriate string value. This can also be understood with reference to the similar previous description in the previous paragraph.
配置帮助器512随后被配置为控制对由核心引擎2004使用的全局配置参数的访问。将理解的是,预先加载全局配置参数并且相对于消息映射表格参考该全局配置参数。The configuration helper 512 is then configured to control access to the global configuration parameters used by the core engine 2004. It will be appreciated that the global configuration parameters are pre-loaded and referenced with respect to the message mapping table.
设备配置文件管理器514被配置为存储包含有关已经请求了服务的移动设备102的配置文件信息的数据库,并且因此允许以授予相关访问权的形式管理那些移动设备102。另一方面,设备位置管理器516随后被配置为确定发送出请求的特定移动设备102是否位于提供请求的服务的商家的附近地区内,并且如果是,相应地使用信息来更好的辅助对操作移动设备102的用户准备服务。也就是,设备位置管理器516能经由位置数据定位特定移动设备102,如同在前描述的。The device profile manager 514 is configured to store a database containing profile information about mobile devices 102 that have requested services, and thus allows management of those mobile devices 102 in the form of granting relevant access rights. On the other hand, the device location manager 516 is then configured to determine whether the specific mobile device 102 that sent the request is located in the vicinity of a merchant providing the requested service, and if so, use the information accordingly to better assist in preparing the service for the user operating the mobile device 102. That is, the device location manager 516 can locate the specific mobile device 102 via the location data, as previously described.
图6描述了关于通过核心引擎2004(经由聚合器502)接收原始请求的用户情况示意图600。聚合器502最初接收通过请求源602(经由通信信道2002或者解决方案域2006)发送给请求目的地604的对于交易的请求。该请求包括交易信息(即客户编码、交易以及会话)、请求头(即有关请求源602以及请求目的地604的信息),以及本体部,如同在前描述的。随后通过各自的管理器模块按以下顺序有秩序地处理请求:(1).触发身份以及管理器506,以基于会话标识符(如果可用)来确定请求的用户身份。如果确定该用户身份是有效的,随后将相关用户的身份信息附加到请求头,(2).随后激活设备配置文件管理器514,以确定发起请求的移动设备102的设备配置文件(如果这种设备配置文件信息可用的话)。将检索到的配置文件信息写入原始请求头中(即修改请求头),(3).接下来激活设备位置管理器516,以确定移动设备102的出现位置(如果这种位置信息可用)。随后将检索到的位置信息写入请求头,(4).激活交易记录管理器508,以记录用于处理与交易相对应的请求的相关记录,以及(5).最后采用配置管理器504来确定请求源602与请求目的地604进行通信的访问权。如果存在有效的访问权,准许进行该请求。然而,如果访问权是无效的,则因此抛出(throw)异常。交易记录管理器508随后记录由于确定了无效存取权而生成的(包括与抛出的异常对应的错误代码的)错误消息。随后,聚合器502将抛出的异常作为错误包转发回请求源602。Figure 6 depicts a user scenario diagram 600 regarding the receipt of an original request by the core engine 2004 (via the aggregator 502). The aggregator 502 initially receives a request for a transaction sent by a request source 602 (via the communication channel 2002 or the solution domain 2006) to a request destination 604. The request includes transaction information (i.e., customer code, transaction, and session), a request header (i.e., information about the request source 602 and the request destination 604), and a body, as previously described. The request is then processed in an orderly manner by the respective manager modules in the following order: (1) The identity and manager 506 is triggered to determine the identity of the requesting user based on the session identifier (if available). If the user identity is determined to be valid, the identity information of the relevant user is then appended to the request header, (2) The device profile manager 514 is then activated to determine the device profile of the mobile device 102 that initiated the request (if such device profile information is available). The retrieved profile information is written to the original request header (i.e., the request header is modified), (3) The device location manager 516 is then activated to determine the location of the mobile device 102 (if such location information is available). The retrieved location information is then written to the request header, (4) the transaction log manager 508 is activated to record relevant records for processing the request corresponding to the transaction, and (5) the configuration manager 504 is finally used to determine the access rights of the request source 602 to communicate with the request destination 604. If valid access rights exist, the request is allowed. However, if the access rights are invalid, an exception is thrown accordingly. The transaction log manager 508 then records the error message generated due to the determination of invalid access rights (including the error code corresponding to the thrown exception). The aggregator 502 then forwards the thrown exception back to the request source 602 as an error packet.
假定存在有效的访问权,原始的但是具有修改过的头部的请求被转发给请求目的地604并且聚合器502因此等待将通过请求目的地604返回的响应。如果请求目的地604不存在、不可用或者在预先确定的期满时间内没有接收到响应,则聚合器502抛出异常。此后,交易记录管理器508被激活以记录错误消息,其包括对应于抛出的异常的错误代码,并且聚合器502还将抛出的异常作为错误包转发回给请求源602。另一方面,如果请求目的地604用异常做出反应,则聚合器502捕捉(catch)该异常。相似地,通过交易记录管理器508记录关于生成的异常的错误消息,并且聚合器502将抛出的异常作为错误包转发回请求源602。如果请求目的地604用成功消息做出反应,则成功消息(作为成功包)被转发给请求源602,并且交易记录管理器508相应地记录与接收到的成功消息的接收相对应的信息。Assuming valid access rights exist, the original request, but with the modified header, is forwarded to request destination 604, and aggregator 502 awaits a response, which will be returned via request destination 604. If request destination 604 does not exist, is unavailable, or no response is received within a predetermined expiration time, aggregator 502 throws an exception. Transaction log manager 508 is then activated to log an error message, including an error code corresponding to the thrown exception, and aggregator 502 also forwards the thrown exception back to request source 602 as an error packet. On the other hand, if request destination 604 responds with an exception, aggregator 502 catches the exception. Similarly, an error message regarding the generated exception is logged by transaction log manager 508, and aggregator 502 forwards the thrown exception back to request source 602 as an error packet. If request destination 604 responds with a success message, the success message (as a success packet) is forwarded to request source 602, and transaction log manager 508 accordingly logs information corresponding to receipt of the success message.
图7描述了关于通过核心引擎层2004(经由聚合器502)接收到后续请求的用户情况示意图700。聚合器502最初接收通过请求源702(经由通信信道2002或者解决方案域2006)发送给请求目的地704的对于交易的请求。将理解的是,这个后续请求的请求目的地704和请求源702的值对应于图6的原始请求的请求目的地604和请求源602的各自的值。该请求包括聚合器头(即交易、客户、会话、用户、设备以及位置)、请求头(即有关请求源702以及请求目的地704的信息),以及本体部,如同在前描述的。在这个实例中,通过一些管理器模块按以下顺序处理请求:(i)激活交易记录管理器508以记录对应于处理请求的相关记录,以及(ii)配置管理器504被触发以确定请求源702与请求目的地704进行通信的访问权。如果存在有效的访问权,准许进行该请求。然而,如果被查实是无效的访问权,则聚合器502因此抛出异常。随后通过交易记录管理器508记录对应于抛出的异常的错误代码的错误消息。随后,聚合器502将抛出的异常作为错误包转发回请求源702。FIG7 depicts a user scenario diagram 700 regarding a subsequent request received by the core engine layer 2004 (via the aggregator 502). The aggregator 502 initially receives a request for a transaction sent by a request source 702 (via the communication channel 2002 or the solution domain 2006) to a request destination 704. It will be understood that the values of the request destination 704 and the request source 702 of this subsequent request correspond to the respective values of the request destination 604 and the request source 602 of the original request of FIG6 . The request includes an aggregator header (i.e., transaction, customer, session, user, device, and location), a request header (i.e., information about the request source 702 and the request destination 704), and a body, as previously described. In this example, the request is processed by several manager modules in the following order: (i) the transaction record manager 508 is activated to record the relevant records corresponding to the processed request, and (ii) the configuration manager 504 is triggered to determine the access rights of the request source 702 to communicate with the request destination 704. If valid access rights exist, the request is granted. However, if the access right is verified to be invalid, the aggregator 502 throws an exception. An error message corresponding to the error code of the thrown exception is then recorded by the transaction record manager 508. Subsequently, the aggregator 502 forwards the thrown exception back to the request source 702 as an error packet.
假定存在有效的访问权,具有修改的头部的请求被转发给请求目的地704并且聚合器502等待来自请求目的地704的响应。如果请求目的地不可用、不存在或者在预先确定的期满时间内没有接收到响应,则聚合器502抛出异常。此后,交易记录管理器508被激活以记录错误消息,其包括对应于抛出的异常的错误代码,并且聚合器502此后将抛出的异常作为错误包转发回给请求源702。相似地,如果请求目的地704用异常做出反应,通过聚合器502捕捉该异常。随后通过交易记录管理器508记录错误消息,并且聚合器502将该抛出的异常作为错误包转发回请求源702。另一方面,如果请求目的地704用成功消息做出反应,则成功消息(作为成功包)被转发给请求源702,并且交易记录管理器508相应地记录与接收到的成功消息的接收相对应的信息。Assuming valid access rights exist, the request with the modified header is forwarded to the request destination 704, and the aggregator 502 awaits a response from the request destination 704. If the request destination is unavailable, does not exist, or no response is received within a predetermined expiration time, the aggregator 502 throws an exception. The transaction log manager 508 is then activated to log an error message including an error code corresponding to the thrown exception, and the aggregator 502 then forwards the thrown exception back to the request source 702 as an error packet. Similarly, if the request destination 704 responds with an exception, the exception is captured by the aggregator 502. An error message is then logged by the transaction log manager 508, and the aggregator 502 forwards the thrown exception back to the request source 702 as an error packet. On the other hand, if the request destination 704 responds with a success message, the success message (as a success packet) is forwarded to the request source 702, and the transaction log manager 508 accordingly logs information corresponding to the receipt of the success message.
在使用系统200的过程中,可以淘汰典型地用来开发传统的中间件系统的复杂的、冗长的并且昂贵的点对点实现。进一步地,关于移动互联网服务价值链条,系统200作为可以被与各种各样的的后端应用服务器204进行通信的、相似地各种各样的移动应用利用的公共平台而起作用。结果是,引入新的移动网页和本地应用服务的步调可以有利的被加快,并且因此允许更集中而不是针对地开发商家(即服务实体)想要的商业域。系统200在图8中描述的移动互联网服务价值链条(其中价值链条主要包括四个关键人物)中的特定角色是移动设备用户(他消费移动网页和本地应用服务)、移动网络操作者(他递送移动通信服务)、企业(其提供移动网页和本地应用服务)和系统200(其通过集成和聚集移动通信服务和应用服务来连接移动设备用户与企业)。换句话说,系统200是统一的网关和服务使能器,其将有利的简化并且促进将集成的移动网页和本地应用服务引进给移动消费者。By using system 200, the complex, lengthy, and expensive point-to-point implementation typically used to develop traditional middleware systems can be eliminated. Furthermore, with respect to the mobile internet service value chain, system 200 functions as a common platform that can be utilized by a variety of mobile applications, communicating with a variety of backend application servers 204. As a result, the pace of introduction of new mobile web and native application services can be advantageously accelerated, thereby allowing for a more focused, rather than targeted, development of business domains desired by merchants (i.e., service entities). The specific roles of system 200 in the mobile internet service value chain depicted in FIG8 (wherein the value chain primarily includes four key players) are mobile device users (who consume mobile web and native application services), mobile network operators (who deliver mobile communication services), enterprises (who provide mobile web and native application services), and system 200 (which connects mobile device users and enterprises by integrating and aggregating mobile communication services and application services). In other words, system 200 is a unified gateway and service enabler that will advantageously simplify and facilitate the introduction of integrated mobile web and native application services to mobile consumers.
然而所描述的实施例将不会被解释为限定。例如,将理解的是,系统200还可以被用于有线通信系统(例如基于台式的个人电脑),而不是仅仅限于移动设备102与后端应用服务器204进行通信。However, the described embodiments should not be construed as limiting. For example, it will be understood that the system 200 can also be used in a wired communication system (eg, a desktop-based personal computer), rather than being limited to only the mobile device 102 communicating with the backend application server 204.
在附图和在前说明书中已经详细地阐明和描述该发明的同时,这种阐明和说明书将被认为是说明性的或者示例性,而不是限制性的;本发明不局限于公开的具体实施例。本领域技术人员在实践权利要求所限定的发明的过程中,将可以理解和完成对公开的具体实施例的其他变化。While the invention has been illustrated and described in detail in the drawings and foregoing description, such illustration and description are to be considered illustrative or exemplary rather than restrictive; the invention is not limited to the specific embodiments disclosed. Other variations to the specific embodiments disclosed will be apparent to and accomplished by those skilled in the art in practicing the invention as defined by the claims.
Claims (14)
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/MY2012/000268 WO2014069978A1 (en) | 2012-11-02 | 2012-11-02 | Method of processing requests for digital services |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| HK1209931A1 HK1209931A1 (en) | 2016-04-08 |
| HK1209931B true HK1209931B (en) | 2020-07-03 |
Family
ID=
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN104769914B (en) | How to handle requests for digital services | |
| US11838757B2 (en) | Identity authentication | |
| US12051075B2 (en) | Systems and methods for providing notifications to devices | |
| KR102624700B1 (en) | Biometric identification and verification between IoT devices and applications | |
| US11138300B2 (en) | Multi-factor profile and security fingerprint analysis | |
| US9130926B2 (en) | Authorization messaging with integral delegation data | |
| WO2014130141A1 (en) | Methods and apparatus for selecting an authentication mode at time of issuance of an access token | |
| US11936639B2 (en) | Using client certificates to communicate trusted information | |
| US11196738B2 (en) | Identification and authentication of a user using identity-linked device information for facilitation of near-field events | |
| HK1209931B (en) | Method of processing requests for digital services | |
| US20150186883A1 (en) | Electronic Account Data Transfer Method And Related Device And System | |
| US12452247B1 (en) | Access management for applications using attribute based access control |