KR20070061067A - Method and system for handling the network events in application server using open api based web services - Google Patents
Method and system for handling the network events in application server using open api based web services Download PDFInfo
- Publication number
- KR20070061067A KR20070061067A KR1020060041493A KR20060041493A KR20070061067A KR 20070061067 A KR20070061067 A KR 20070061067A KR 1020060041493 A KR1020060041493 A KR 1020060041493A KR 20060041493 A KR20060041493 A KR 20060041493A KR 20070061067 A KR20070061067 A KR 20070061067A
- Authority
- KR
- South Korea
- Prior art keywords
- event
- service
- value
- notification
- record
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 230000003068 static effect Effects 0.000 claims description 45
- 239000000284 extract Substances 0.000 claims description 10
- 230000003247 decreasing effect Effects 0.000 claims description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 67
- 238000010586 diagram Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 1
- 238000004540 process dynamic Methods 0.000 description 1
Images
Classifications
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/34—Signalling channels for network management communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/543—Local
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Primary Health Care (AREA)
- Marketing (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
도 1은 본 발명에 따른 웹 서비스 기반 개방형 API를 지원하는 애플리케이션 서버에서 통신망 이벤트 통보 장치 및 애플리케이션 서버의 네트워크 연결 구성을 나타낸 블럭도이다.1 is a block diagram illustrating a network connection configuration of a communication network event notification device and an application server in an application server supporting a web service based open API according to the present invention.
도 2는 본 발명에 따른 도 1에 도시된 이벤트 테이블의 구조도이다.2 is a structural diagram of an event table shown in FIG. 1 according to the present invention.
도 3은 본 발명에 따른 이벤트 통보 장치에서 서비스 프로비즈닝 관리자가 제공하는 서비스 프로비즈닝 방법을 나타낸 동작 플로우챠트이다.3 is an operation flowchart illustrating a service provisioning method provided by a service provisioning manager in an event notification device according to the present invention.
도 4는 본 발명에 따른 이벤트 통보 장치에서 서비스 애플리케이션의 동적 이벤트 통보 요청 방법을 나타낸 동작 플로우챠트이다.4 is an operation flowchart illustrating a dynamic event notification request method of a service application in the event notification device according to the present invention.
도 5는 본 발명에 따른 이벤트 통보 장치의 이벤트 통보용 API 처리기에서의 이벤트 통보 방법을 나타낸 동작 플로우챠트이다.5 is an operation flowchart illustrating an event notification method in an event notification API processor of the event notification device according to the present invention.
도 6은 본 발명에 따른 이벤트 통보 장치에서 서비스 애플리케이션의 동적 이벤트 통보 종료 요청 방법을 나타낸 동작 플로우챠트이다.6 is an operation flowchart illustrating a method for requesting termination of dynamic event notification of a service application in the event notification device according to the present invention.
*도면의 주요 부분에 대한 부호의 설명** Description of the symbols for the main parts of the drawings *
100 : 애플리케이션 서버 110 : 서비스 애플리케이션100: application server 110: service application
120 : 이벤트 통보용 API 처리기 130 : 서비스 프로비즈닝 관리자120: API handler for event notification 130: Service Provisioning Manager
140 : 이벤트 테이블 200 : 게이트웨이 140: event table 200: gateway
300 : 통신망 400 : 사용자 단말300: communication network 400: user terminal
본 발명은 웹 서비스 기반 개방형 API를 지원하는 애플리케이션 서버에서의 통신망 이벤트 통보 장치 및 그 방법에 관한 것이다.The present invention relates to a network event notification device and method in an application server supporting a web service based open API.
일반적으로, 개방형 API를 지원하는 시스템에서의 일반적이고 간단한 이벤트 통보 방법은 선행 특허(한국공개특허공보 제2003-0079544호)에 기술되어 있으며, 개방형 시스템과는 상관없는 시스템에서의 일반적인 이벤트 통보 방법에 대한 선행 특허(한국공개특허공보제 2004-0004362호)가 있다. In general, a general and simple event notification method in a system supporting an open API is described in the prior patent (Korean Patent Laid-Open Publication No. 2003-0079544), and a general event notification method in a system that is not related to an open system. Korean Patent Publication No. 2004-0004362.
전자의 선행특허(한국공개특허공보 제2003-0079544호)는 Parlay라는 개방형 API를 처리하는 애플리케이션 서버에 서비스를 설치한 후 이벤트를 등록하고 이벤트를 통보까지의 일련의 과정을 제공하기 위한 방법에 관한 특허이다. 그러나 이러한 기술은 트리거 이벤트와 같이 서비스 수행 전에 미리 등록되어야 하는 정적 이벤트만 처리할 수 있으며, 서비스 애플리케이션이 런 타임 시에 관심있는 이벤트 통보를 요청하는 동적 이벤트는 처리할 수 없다는 문제점이 있으며, 더불어 상기 제안된 기술은 웹 서비스 기반 개방형 API를 지원하는 애플리케이션 서버에는 적용될 수 없다는 단점이 있다.The former patent (Korean Patent Laid-Open Publication No. 2003-0079544) relates to a method for providing a series of processes to register an event and notify an event after installing a service in an application server processing an open API called Parlay. Patent. However, such a technique can handle only static events that must be registered in advance before performing a service, such as a trigger event, and can not process dynamic events that request service notification of interest at runtime. The proposed technique has a disadvantage that it cannot be applied to an application server supporting an open API based on web services.
한편, 후자의 선행 특허 (한국특허공개공보 제2004-0004362호)는 일반적인 시스템에서 수행되는 너무나 일반적이고 기본적인 이벤트 통보 메커니즘에 관한 것으로, 이벤트 요청자, 통보자, 통보 파라미터에 대한 상관 관계를 나타내는 맵(Map)과 파라미터 사전을 미리 등록한 후, 이벤트 관리자가 이벤트 통보자로부터 이벤트를 통보받으면 상기 등록된 맵과 통보 파라미터 사전을 참조하여 적절한 이벤트 요청자를 검출한 후, 검출된 이벤트 요청자에게 이벤트를 통보하는 것이다. 이는 맵과 파라미터 사전을 이용하기 때문에 다양한 이벤트가 추가되더라도 맵과 파리미터 사전만 수정하면 이벤트 통보방법을 변경할 필요없이 적용가능한 것이다. On the other hand, the latter prior patent (Korean Patent Laid-Open Publication No. 2004-0004362) relates to a very general and basic event notification mechanism that is performed in a general system, and maps indicating correlations between event requesters, notifiers, and notification parameters ( If the event manager is notified of the event from the event notifier after registering the map and the parameter dictionary in advance, the appropriate event requester is detected by referring to the registered map and the notification parameter dictionary, and then the detected event requester is notified of the event. . Because it uses a map and parameter dictionary, even if various events are added, it is possible to modify the map and parameter dictionary without changing the event notification method.
그러나, 이는 웹 서비스 기반 개방형 API를 지원하는 시스템에서는 적용될 수 없는 것으로서, 상기 선행 특허가 제공하는 이벤트 맵이나 파라미터 사전으로는 웹 서비스 기반 개방형 API를 지원하는 시스템에서 이벤트 통보가 불가능하다.However, this is not applicable to a system supporting a web service based open API, and event notification or a parameter dictionary provided by the above patent is not possible in a system supporting a web service based open API.
따라서, 본 발명은 상기한 종래 기술에 따른 문제점을 해결하기 위한 것으로, 본 발명의 목적은, 웹 서비스 기반 개방형 API를 지원하는 애플리케이션 서버에 있어서 정적 이벤트와 동적 이벤트에 대한 통보를 모두 지원하도록 하는 웹 서비스 기반 개방형 API를 지원하는 애플리케이션 서버에서 통신망 이벤트 통보 장치 및 그 방법을 제공함에 있다. Accordingly, the present invention is to solve the above problems according to the prior art, an object of the present invention, in the application server supporting a web service-based open API to support both the notification of static events and dynamic events Web The present invention provides a network event notification device and a method in an application server supporting a service-based open API.
또한, 본 발명의 다른 목적은, 이벤트를 통보하기 위하여 필요한 루틴들을 서비스 애플리케이션 내에 하드 코딩할 필요없이 이벤트 테이블을 이용함으로써, 서비스 애플리케이션의 확장성을 향상시킬 수 있도록 한 웹 서비스 기반 개방형 API를 지원하는 애플리케이션 서버에서 통신망 이벤트 통보 장치 및 그 방법을 제공함에 있다. In addition, another object of the present invention is to support a web service-based open API that can improve the scalability of a service application by using an event table without having to hard-code routines necessary to notify an event in the service application. An application server provides a network event notification device and a method thereof.
상기한 목적을 달성하기 위한 본 발명에 따른 웹 서비스 기반 개방형 API를 지원하는 애플리케이션 서버에서의 통신망 이벤트 통보 장치는, 다수의 이벤트 관련 상세 정보를 저장하는 이벤트 테이블; 이벤트를 통보하기 위해 상기 이벤트 테이블에 이벤트 관련 상세 정보를 저장하는 서비스 프로비즈닝 관리자; 특정 이벤트에 대한 통보를 시작할 것을 요청하거나, 이벤트 통보를 종료할 것을 요청하는 서비스 애플리케이션; 상기 서비스 애플리케이션의 요청에 의하여 상기 게이트웨이로부터 통보받은 이벤트에 대하여 상기 이벤트 테이블에 저장된 이벤트 관련 상세 정보를 이용하여 서비스 애플리케이션으로 이벤트 통보를 처리하는 이벤트 통보용 API 처리기를 포함할 수 있다.In order to achieve the above object, a communication network event notification apparatus in an application server supporting a web service-based open API according to the present invention includes: an event table for storing a plurality of event related details; A service provisioning manager for storing event related detailed information in the event table to notify an event; A service application requesting to start notification of a specific event or requesting to end an event notification; It may include an event notification API processor for processing the event notification to the service application using the event-related detailed information stored in the event table for the event received from the gateway by the request of the service application.
상기 이벤트 테이블은 서비스 ID, 서비스의 이벤트 수신용 IP 주소, 서비스의 이벤트 수신용 통신 포트 번호, 활성화된 이벤트 개수, 각 이벤트에 대한 정보 필드를 포함한다.The event table includes a service ID, an IP address for event reception of a service, a communication port number for event reception of a service, the number of activated events, and an information field for each event.
상기 이벤트에 대한 정보 필드에 저장되는 이벤트 정보는, 이벤트 타입, 서비스가 요청한 이벤트와 나중에 게이트웨이에서 통보한 이벤트가 동일한 것인 가를 연계하기 위한 정보인 상관 값(correlator), 이벤트 통보용 API 처리기에 대한 레퍼런스 정보를 포함한다.The event information stored in the information field for the event includes a correlator, which is information for associating an event type, an event requested by a service, and an event notified by a gateway later, and an API handler for event notification. Contains reference information.
상기 서비스 프로비즈닝 관리자는, 프로비즈닝 절차를 수행하기 위해 상기 이벤트 테이블에 새로운 레코드를 생성한 후 서비스 ID를 할당하고, 상기 생성된 레코드에 할당한 서비스 ID, 서비스의 수신용 IP 주소와 통신 포트 번호, 정적 이벤트 개수만큼의 정적 이벤트에 대한 정보, 정적 이벤트에 대한 개수에 대한 활성화된 이벤트 개수 필드의 값, 등록한 모든 정적 이벤트에 대하여 정적 이벤트 타입과 해당 이벤트에 대한 이벤트 통보용 API 처리기에 대한 레퍼런스, 동적 이벤트 개수만큼 동적 이벤트에 대한 정보를 각각 해당 필드에 저장한다.The service provisioning manager creates a new record in the event table and then assigns a service ID to perform the provisioning procedure, and communicates with the service ID assigned to the generated record and the IP address for receiving the service. Port number, information about static events as many as static events, the value of active event count field for counts for static events, static event type for all registered static events and API handler for event notification for that event. As much as the number of references and dynamic events, information about dynamic events is stored in the corresponding fields.
상기 서비스 프로비즈닝 관리자에서, 정적 이벤트에 대한 정보는, 입력받은 이벤트에 대응하는 이벤트 타입[i] 필드의 값을 참(TRUE)으로 기록하고, 입력받은 이벤트에 대응하는 correlator[i] 필드의 값을 디폴트값 0으로 기록하며, 입력받은 이벤트에 대응하는 통보용 API 처리기의 레퍼런스 값을 입력받아, 대응하는 이벤트 통보용 API 처리기 레퍼런스[i] 필드의 값을 입력받은 값으로 기록한다.In the service provisioning manager, the information about the static event records the value of the event type [i] field corresponding to the received event as TRUE, and the correlator [i] field corresponding to the received event. The value is recorded as a default value of 0, and the reference value of the notification API processor corresponding to the received event is input, and the value of the corresponding event notification API processor reference [i] field is recorded as the input value.
상기 서비스 프로비즈닝 관리자에서, 동적 이벤트에 대한 정보는, 입력받은 이벤트에 대응하는 통보용 API 처리기의 레퍼런스 값을 입력받아, 대응하는 이벤트 통보용 API 처리기 레퍼런스[i] 필드의 값을 입력받은 값으로 기록한다.In the service provisioning manager, a value for receiving a value of a corresponding event notification API processor reference [i] field by receiving a reference value of a notification API processor corresponding to the received event. Record as.
상기 서비스 애플리케이션은, a) 상기 이벤트 테이블에서 자신의 서비스 ID 에 대응하는 레코드를 찾아, 원하는 이벤트에 대응하는 이벤트 타입[i] 필드의 값을 참(TRUE)으로 기록한 후, 상관 값을 생성하고, 레코드에서 원하는 이벤트에 대응하는 correlator[i] 필드의 값을 상기 생성한 상관 값으로 기록하며, b) 레코드에서 원하는 이벤트에 대응하는 이벤트 통보용 API 처리기에 대한 레퍼런스[i] 필드의 값을 추출하고, 레코드에서 활성화된 이벤트 개수 필드의 값을 1 증가시킨 후, 추출한 이벤트 통보용 API 처리기에 대한 레퍼런스와 생성한 상관 값을 입력 파라미터로 게이트웨이를 호출하여 이벤트 통보의 시작을 요청한다.The service application, a) finds a record corresponding to its service ID in the event table, records the value of the event type [i] field corresponding to a desired event as TRUE, and generates a correlation value, Record the value of the correlator [i] field corresponding to the desired event in the record as the generated correlation value; b) extract the value of the reference [i] field to the event notification API handler corresponding to the desired event from the record; After increasing the value of the activated event count field in the record by 1, the gateway is called with the reference to the extracted event notification API processor and the generated correlation value as an input parameter to request the start of event notification.
상기 서비스 애플리케이션은, a) 상기 이벤트 테이블에서 자신의 서비스 ID에 대응하는 레코드를 찾아, 레코드에서 원하는 이벤트에 대응하는 이벤트 타입[i] 필드의 값을 거짓(false)으로 수정하고, 레코드에서 원하는 이벤트에 대응하는 correlator[i] 필드의 값을 추출한 후, correlator[i] 필드의 값을 디폴트값 0으로 수정하며, b) 레코드에서 활성화된 이벤트 개수 필드의 값을 1 감소시킨 후, 상기 추출한 상관 값을 입력 파라미터로 게이트웨이를 호출하여 이벤트 통보를 종료할 것을 요청한다.The service application, a) finds the record corresponding to its service ID in the event table, modifies the value of the event type [i] field corresponding to the desired event in the record to false, and the desired event in the record. After extracting the value of the correlator [i] field corresponding to, modify the value of the correlator [i] field to a default value of 0, b) decrease the value of the activated event count field by 1, and then extract the correlation value. Calls the gateway with an input parameter to terminate the event notification.
상기 이벤트 통보용 API 처리기는 상기 게이트웨이로부터 호출이 있는 경우, 상기 이벤트 테이블에서 자신의 서비스 ID에 대응하는 레코드를 찾아, 상기 게이트웨이로부터 통보받은 이벤트에 대응하는 이벤트 타입[i] 필드의 값을 추출하고, 추출한 값이 참(true)인 경우, 상기 게이트웨이로부터 통보받은 이벤트에 대응하는 corrlelator[i] 필드의 값을 추출하며, 추출한 값이 0이면, 레코드에서 서비스의 이벤트 수신용 IP 주소와 통신 포트를 추출한 후 추출한 값으로 이용하여 서비스 애플리케이션에게 이벤트를 통보한다.When there is a call from the gateway, the event notification API processor finds a record corresponding to its service ID in the event table, extracts a value of an event type [i] field corresponding to an event notified from the gateway. If the extracted value is true, the value of the corrlelator [i] field corresponding to the event notified from the gateway is extracted. If the extracted value is 0, the IP address and communication port for event reception of the service are recorded in the record. After the extraction, the extracted value is used to notify the service application of the event.
상기 이벤트 통보용 API 처리기는, 상기 추출한 값이 0이 아닌 경우, 추출한 상관 값과 상기 게이트웨이로부터 파라미터로 넘어온 상관 값을 비교하고, 비교결과 두 값이 서로 일치하면, 레코드에서 서비스의 이벤트 수신용 ip 주소와 통신 포트를 추출한 후 추출한 값으로 이용하여 서비스 애플리케이션에게 이벤트를 통보한다.When the extracted value is not 0, the event notification API processor compares the extracted correlation value with a correlation value passed from the gateway to a parameter. After extracting the address and communication port, the extracted value is used to notify the service application of the event.
상기 서비스 애플리케이션, 이벤트 통보용 API 처리기, 서비스 프로비즈닝 관리자는 Parlay/OSA 그룹에서 표준화한 Parlay X API를 지원하는 웹 서비스 기반 개방형 API를 지원한다.The service application, event notification API handler, and service provisioning manager support a web service-based open API that supports the Parlay X API standardized by the Parlay / OSA group.
한편, 본 발명에 따른 웹 서비스 기반 개방형 API를 지원하는 애플리케이션 서버에서 서비스 애플리케이션에게 이벤트를 통보하는 방법의 일 측면에 따르면, 상기 서비스 애플리케이션으로 이벤트를 통보하기 위해 이벤트 테이블에 이벤트 관련 상세 정보를 저장하는 단계; 상기 서비스 애플리케이션으로 이벤트를 통보하기 위해 상기 게이트웨이에게 특정 이벤트에 대한 통보를 시작할 것을 요청하고, 상기 게이트웨이로부터 통보받은 이벤트에 대응하는 이벤트를 상기 이벤트 테이블에 저장된 이벤트 관련 상세 정보를 이용하여 이벤트 통보를 처리한 후, 상기 게이트웨이로 이벤트 통보를 종료할 것을 요청하는 단계를 포함할 수 있다. Meanwhile, according to an aspect of a method for notifying an event to a service application in an application server supporting a web service based open API according to the present invention, storing event related detailed information in an event table to notify an event to the service application. step; In order to notify the service application of the event, request the gateway to start notification of a specific event, and process the event notification using the event related details stored in the event table for the event corresponding to the event received from the gateway. Thereafter, the method may include requesting the gateway to terminate the event notification.
상기 이벤트 관련 상세 정보를 저장하는 단계는, 상기 이벤트 테이블에 새로운 레코드를 생성한 후 초기화하는 단계; 서비스 ID를 할당하고, 상기 생성된 레코 드에 상기 할당된 서비스 ID를 기록하는 단계; 서비스의 수신용 IP 주소와 통신 포트 번호를 입력받아 레코드에 기록하는 단계; 정적 이벤트 개수만큼 정적 이벤트에 대한 정보를 입력받아 레코드에 기록하는 단계; 정적 이벤트에 대한 개수를 활성화된 이벤트 개수 필드의 값으로 기록하는 단계; 상기 등록한 모든 정적 이벤트에 대하여 정적 이벤트 타입과 해당 이벤트에 대한 이벤트 통보 레퍼런스를 게이트웨이에게 등록하는 단계; 서비스 애플리케이션이 관심있어 하는 동적 이벤트 개수만큼 동적 이벤트에 대한 정보를 입력받아 레코드에 기록하는 단계를 포함한다.The storing of the event related detailed information may include: initializing a new record in the event table; Assigning a service ID and recording the assigned service ID in the generated record; Receiving an IP address and a communication port number of a service and recording the same in a record; Receiving information on a static event as many as the number of static events and recording the information in a record; Recording the count for the static event as the value of the activated event count field; Registering a static event type and an event notification reference for the corresponding event with the gateway for all the registered static events; And receiving information about the dynamic event as many as the number of dynamic events that the service application is interested in and recording the information in the record.
상기 정적 이벤트에 대한 정보를 입력받아 레코드에 기록하는 단계는, 입력받은 이벤트에 대응하는 이벤트 타입[i] 필드의 값을 참(true)으로 기록하는 단계; 입력받은 이벤트에 대응하는 correlator[i] 필드의 값을 디폴트값 0으로 기록하는 단계; 입력받은 이벤트에 대응하는 통보용 API 처리기의 레퍼런스 값을 입력받아, 대응하는 이벤트 통보용 레퍼런스[i] 필드의 값을 입력받은 값으로 기록하는 단계를 포함한다.Receiving the information about the static event and recording in the record, recording the value of the event type [i] field corresponding to the received event as true (true); Recording a value of a correlator [i] field corresponding to the received event as a default value of 0; And receiving a reference value of the notification API processor corresponding to the received event and recording the value of the corresponding event notification reference [i] field as an input value.
상기 동적 이벤트에 대한 정보를 입력받아 레코드에 기록하는 단계는, 입력받은 이벤트에 대응하는 통보용 API 처리기의 레퍼런스 값을 입력받아, 대응하는 이벤트 통보용 API 처리기 레퍼런스[i] 필드의 값을 입력받은 값으로 기록하는 단계를 포함한다.In the receiving of the information about the dynamic event and recording the record, the reference value of the notification API processor corresponding to the received event is input, and the value of the corresponding event notification API processor reference [i] field is received. Recording to a value.
상기 게이트웨이에게 특정 이벤트에 대한 통보 시작 요청은, 상기 이벤트 테이블에서 자신의 서비스 ID에 대응하는 레코드를 찾는 단계; 레코드에서 원하는 이벤트에 대응하는 이벤트 타입[i] 필드의 값을 참(true)으로 기록하는 단계; 서비스 가 요청한 이벤트와 나중에 게이트웨이에서 통보한 이벤트가 동일한 것인 가를 연계하기 위한 정보인 상관 값을 생성하는 단계; 레코드에서 원하는 이벤트에 대응하는 correlator[i] 필드의 값을 생성한 상관 값으로 기록하는 단계; 레코드에서 원하는 이벤트에 대응하는 이벤트 통보용 API 처리기에 대한 레퍼런스[i] 필드의 값을 추출하는 단계; 레코드에서 활성화된 이벤트 개수 필드의 값을 1 증가시키는 단계; 추출한 이벤트 통보용 API 처리기에 대한 레퍼런스와 생성한 상관 값을 입력 파라미터로 게이트웨이를 호출하는 단계를 포함한다.The request for starting notification of a specific event to the gateway may include: finding a record corresponding to a service ID of the gateway in the event table; Recording the value of the event type [i] field corresponding to the desired event in the record as true; Generating a correlation value which is information for associating whether an event requested by the service and an event notified later by the gateway are the same; Recording a value of a correlator [i] field corresponding to a desired event in the record as a generated correlation value; Extracting a value of a reference [i] field of the event notification API processor corresponding to the desired event from the record; Increasing the value of the activated event count field in the record by one; Calling the gateway with an input parameter of the extracted event notification API handler and the generated correlation value.
상기 게이트웨이에게 특정 이벤트에 대한 통보 종료 요청은, 이벤트 테이블에서 자신의 서비스 ID에 대응하는 레코드를 찾는 단계; 레코드에서 원하는 이벤트에 대응하는 이벤트 타입[i] 필드의 값을 거짓(false)으로 수정하는 단계; 레코드에서 원하는 이벤트에 대응하는 correlator[i] 필드의 값을 추출한 후, correlator[i] 필드의 값을 디폴트값 0으로 수정하는 단계; 레코드에서 활성화된 이벤트 개수 필드의 값을 1 감소시키는 단계; 추출한 상관 값을 입력 파라미터로 게이트웨이를 호출하는 단계를 포함한다. The request for terminating the notification of the specific event to the gateway may include: finding a record corresponding to the service ID of the gateway in the event table; Modifying the value of the event type [i] field corresponding to the desired event in the record to false; Extracting the value of the correlator [i] field corresponding to the desired event from the record, and then modifying the value of the correlator [i] field to a default value of 0; Decreasing the value of the activated event count field in the record by one; Calling the gateway with the extracted correlation value as an input parameter.
상기 게이트웨이로부터 통보받은 이벤트에 대응하는 이벤트를 상기 이벤트 테이블에 저장된 이벤트 관련 상세 정보를 이용한 이벤트 통보의 처리는, 상기 게이트웨이로부터 호출이 있는 경우, 상기 이벤트 테이블에서 자신의 서비스 ID에 대응하는 레코드를 찾는 단계; 레코드에서 게이트웨이로부터 통보받은 이벤트에 대응하는 이벤트 타입[i] 필드의 값을 추출하는 단계; 상기 추출한 값이 참(true)이면, 게이트웨이로부터 통보받은 이벤트에 대응하는 corrlelator[i] 필드의 값을 추출하 는 단계; 상기 추출한 이벤트 타입[i]필드의 값이 디폴트값 0인 경우, 상기 레코드에서 서비스의 이벤트 수신용 IP 주소와 통신 포트를 추출한 후 상기 추출한 이벤트 수신용 IP 주소와 통신 포트를 이용하여 서비스 애플리케이션에게 이벤트를 전달하는 단계를 포함한다.The event notification processing using the event related detailed information stored in the event table as an event corresponding to the event notified by the gateway, when there is a call from the gateway, finds a record corresponding to its service ID in the event table. step; Extracting a value of an event type [i] field corresponding to an event notified from the gateway in a record; If the extracted value is true, extracting a value of a corrlelator [i] field corresponding to an event notified by a gateway; If the value of the extracted event type [i] field is 0, the event event IP address and communication port of the service are extracted from the record and the event is transmitted to the service application using the extracted event reception IP address and communication port. It includes the step of delivering.
상기 추출한 이벤트 타입[i] 필드의 값이 디폴트값 0이 아닌 경우, 추출한 상관 값과 상기 게이트웨이로부터 파라미터로 넘어온 상관 값을 비교하는 단계; 상기 비교결과 두 상관 값이 서로 일치하면, 레코드에서 서비스의 이벤트 수신용 IP 주소와 통신 포트를 추출한 후 상기 추출한 이벤트 수신용 IP 주소와 통신 포트를 이용하여 서비스 애플리케이션에게 이벤트를 통보한다.Comparing the extracted correlation value with a correlation value passed from the gateway to a parameter when the value of the extracted event type [i] field is not the default value 0; As a result of the comparison, if the two correlation values coincide with each other, the event reception IP address and communication port of the service are extracted from the record and the event is notified to the service application using the extracted event reception IP address and communication port.
상기 애플리케이션 서버에는 Parlay/OSA 그룹에서 표준화한 Parlay X API를 지원하는 웹 서비스 기반 개방형 API를 지원한다.The application server supports a web service based open API supporting Parlay X API standardized by Parlay / OSA group.
본 발명에 따른 웹 서비스 기반 개방형 API를 지원하는 애플리케이션 서버에서 통신망 이벤트 통보 장치 및 그 방법에 대한 설명에 앞서, 본 발명의 적용 분야에 대하여 간단하게 설명하기로 하자.Prior to the description of an apparatus and method for notifying a network event in an application server supporting a web service based open API according to the present invention, the application field of the present invention will be briefly described.
본 발명에 적용되는 웹 서비스 기반 개방형 API는 OSA/Parlay라는 표준화 그룹에서 표준화를 하고 있는 Parlay X API이다. The open web API based on the present invention is a Parlay X API standardized by a standardization group called OSA / Parlay.
Parlay X API를 지원하는 데 필요한 시스템은 크게 애플리케이션 서버(AS, Application Server), 게이트웨이, 통신망, 단말이 있다. 상기 애플리케이션 서버는 서비스 애플리케이션을 수행하기 위한 제반 환경을 제공한다. 서비스 프로그래 머가 작성한 서비스 애플리케이션은 애플리케이션 서버에 탑재되어 수행된다. 게이트웨이는 애플리케이션 서버와 통신망 사이에 미들웨어 역할을 수행한다. 통신망과 단말은 기존의 유선 또는 무선 통신망과 통신 단말을 나타낸다. The systems required to support the Parlay X API are largely an application server (AS), a gateway, a communication network, and a terminal. The application server provides an overall environment for executing a service application. The service application written by the service programmer is mounted on the application server and executed. The gateway acts as a middleware between the application server and the communication network. The communication network and the terminal represent a conventional wired or wireless communication network and the communication terminal.
Parlay X API에는 서비스 애플리케이션이 게이트웨이에게 통신망 액세스를 요청하는 데 필요한 API, 서비스 애플리케이션이 게이트웨이에게 이벤트 통보를 시작할 것을 요청하거나 이벤트 통보를 종료할 것을 요청하는 API, 게이트웨이가 통신망 이벤트를 통보하는 데 필요한 통보용 API가 있다. 이들 API 중 첫 번째와 두 번째는 모두 게이트웨이에 구현되고, 세 번째 API는 서비스 애플리케이션 측에 구현된다.The Parlay X API includes the APIs that the service application needs to request gateway access to the network, the APIs that the service application requests to start event notification from the gateway, or end the event notification, and the notifications that the gateway needs to notify network events. There is an API for it. The first and second of these APIs are both implemented at the gateway, and the third is implemented at the service application side.
웹 서비스 기반 개방형 API를 이용하는 서비스 애플리케이션은 두 가지 종류의 이벤트 통보를 필요로 한다. 하나는 서비스 애플리케이션이 수행되기 전에 미리 등록되어야 하는 정적 이벤트에 대한 통보와 서비스 애플리케이션이 런 타임 시에 필요에 따라 이벤트 통보를 해 줄 것을 요청한 후 해당 이벤트 통보를 받은 후 해당 이벤트 통보를 종료해 줄 것을 요청하는 동적 이벤트에 대한 통보가 있다.Service applications that use the Web services-based open API require two kinds of event notifications. One is to notify the static event that should be registered in advance before the service application is executed, and request that the service application notify the event as needed at runtime, then terminate the event notification after receiving the event notification. There is a notification of the requesting dynamic event.
웹 서비스 기반 개방형 API를 이용하는 서비스 애플리케이션은 다음과 같은 세 가지 요소들로 구성된다. 첫째, 서비스의 메인 로직 부분으로 서비스가 궁극적으로 수행하고자 하는 주요 로직을 포함하고 있다. 둘째, 게이트웨이의 개방형 API를 요청하기 위한 웹 서비스 클라이언트 코드가 필요하다. 셋째, 게이트웨이로부터 통신망 이벤트를 통보받기 위한 API를 구현한 웹 서비스 서버가 필요하다. 이들 중 첫 번째와 두 번째 부분은 하나의 프로그램으로 보통 구현되고 세 번째 부분은 독 립적인 프로그램인 웹 서비스 서버로 구현된다. 그러나 논리적으로는 세 가지 요소가 모두 하나의 서비스 애플리케이션을 구성한다. A service application that uses a web service-based open API consists of three elements: First, it is the main logic part of the service, which contains the main logic that the service ultimately wants to perform. Second, we need web service client code to request the open API of the gateway. Third, a web service server that implements an API for receiving communication network events from a gateway is required. The first and second of these are usually implemented as one program, and the third is implemented as a web service server, which is an independent program. Logically, however, all three elements make up a service application.
서비스 애플리케이션이 애플리케이션 서버에서 수행되기 위해서는 서비스에 대한 프로비즈닝 절차를 반드시 거쳐야 한다. 프로비즈닝 단계에서 이벤트 처리와 관련하여 애플리케이션 서버에 제공되어야 하는 정보에는 다음과 같은 정보를 포함한다.In order for a service application to run on an application server, the service must be provisioned. The information that should be provided to the application server regarding event processing in the provisioning phase includes the following information.
먼저, 서비스 ID, 서비스가 관심있어 하는 정적 이벤트에 대한 종류, 이벤트 수신을 위한 서비스의 IP 주소와 통신 포트 번호, 정적 이벤트 각각에 대하여 이벤트 통보용 개방형 API를 구현한 웹 서비스 서버의 레퍼런스(예: URL)가 제공되어야 한다. 애플리케이션 서버는 이들 데이터 중 정적 이벤트에 대한 종류와 통보용 개방형 API를 구현한 웹 서비스 서버의 레퍼런스를 게이트웨이에 알려주어 서비스에 대한 정적 이벤트를 등록한다.First, a reference of a web service server that implements an open API for event notification for each service ID, the type of static event that the service is interested in, the IP address and communication port number of the service for receiving the event, and the static event. URL) must be provided. The application server registers static events for the service by informing the gateway of the type of static events and the reference of the web service server that implements the open API for notification.
이벤트를 서비스에 최종적으로 전달하기 위하여 이용자에게 계정, 계정 접근 권한, 계정 관련 권한, 계정 관리에 필요한 제반 자원을 제공하는 서비스의 프로비즈닝(provisining) 단계를 통하여 정적 이벤트가 애플리케이션 서버와 게이트웨이에 등록된 후, 실제 통신망에서 해당 이벤트가 발생하면 게이트웨이는 통보 API를 구현한 웹 서비스 서버의 레퍼런스를 추출하여 해당 레퍼런스의 웹 서비스 서버의 이벤트 통보용 오퍼레이션을 호출한다. Static events are registered with application servers and gateways through the provisioning phase of services that provide users with accounts, account access rights, account-related rights, and the necessary resources for account management to deliver events to services. Then, when the corresponding event occurs in the actual communication network, the gateway extracts the reference of the web service server implementing the notification API and calls the event notification operation of the web service server of the reference.
상기 호출된 웹 서비스 서버는 프로비즈닝 단계에서 등록한 서비스의 이벤트 수신용 IP 주소와 통신 포트 번호를 추출한 후 이를 이용하여 이벤트를 전달한다. The called web service server extracts the event receiving IP address and communication port number of the service registered in the provisioning step and delivers the event using the extracted IP address.
서비스 애플리케이션은 런 타임 시에 필요에 따라 동적 이벤트에 대한 통보를 시작할 것을 요청하거나 종료할 수도 있다. 서비스 애플리케이션이 게이트웨이에게 특정이벤트에 대한 통보를 시작할 것을 요청할 때, 이벤트 통보용 개방형 API를 구현한 웹 서비스 서버의 레퍼런스와 새로 생성한 상관 값을 넘겨주어야 한다. The service application may request or terminate the start of notification of dynamic events as needed at run time. When the service application asks the gateway to start notifying a particular event, it must pass a reference to the web service server that implements the open API for event notification and the newly created correlation value.
상기 상관 값은 서비스가 요청한 이벤트와 나중에 게이트웨이에서 통보한 이벤트가 동일한 것인 가를 연계하기 위한 정보이다. 해당 이벤트가 발생하면 게이트웨이는 서비스로부터 넘겨받은 이벤트 통보용 개방형 API를 구현한 웹 서비스 서버의 레퍼런스를 추출하여 해당 레퍼런스의 웹 서비스 서버의 이벤트 통보용 오퍼레이션을 호출하면서 상관 값을 파라미터로 넘겨준다. The correlation value is information for associating whether an event requested by the service and an event notified later by the gateway are the same. When the event occurs, the gateway extracts the reference of the web service server implementing the open API for event notification received from the service and calls the event notification operation of the web service server of the reference and passes the correlation value as a parameter.
상기 호출된 웹 서비스는 이벤트를 서비스에 최종적으로 전달하기 위하여 프로비즈닝 단계에서 등록한 서비스의 이벤트 수신용 IP 주소와 통신 포트 번호를 추출한 후 이를 이용하여 이벤트를 전달한다. In order to finally deliver the event to the service, the called web service extracts the event receiving IP address and communication port number of the service registered in the provisioning step and delivers the event using the extracted web address.
이하, 본 발명에 따른 웹 서비스 기반 개방형 API를 지원하는 애플리케이션 서버에서 통신망 이벤트 통보 장치 및 그 방법에 대한 바람직한 실시 예에 대하여 첨부한 도면을 참조하여 상세하게 설명해 보기로 한다. Hereinafter, a preferred embodiment of a network event notification device and a method thereof in an application server supporting a web service based open API according to the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명에 따른 웹 서비스 기반 개방형 API를 지원하는 애플리케이션 서버에서 통신망 이벤트 통보 장치 및 그 네트워크 연결 구성을 나타낸 도면이다. 1 is a diagram illustrating a network event notification device and a network connection configuration in an application server supporting an open API based on a web service according to the present invention.
도 1에 도시된 바와 같이, 본 발명에 따른 이벤트 처리 시스템의 네트워크 구성은, 애플리케이션 서버(Application Server)(100), 게이트웨이(200), 통신 망(300) 및 사용자 단말들(400)을 포함할 수 있다. As shown in FIG. 1, the network configuration of the event processing system according to the present invention may include an
애플리케이션 서버(100)는, 서비스 애플리케이션(110), 이벤트 통보용 API 처리기(120), 서비스 프로비즈닝 관리자(130) 및 이벤트 테이블(140)을 포함할 수 있다. The
서비스 프로그래머에 의해 만들어진 서비스 애플리케이션(110)은 애플리케이션 서버(100)에 탑재(Deployment)되어 수행된다. The
이벤트 통보용 API 처리기(120)는 웹 서비스 기반 개방형 API 중 게이트웨이(200)로부터 통신망 이벤트를 통보받기 위하여 서비스 애플리케이션(110) 측에 구현되어야 하는 API에 대한 처리 기능을 제공하며, 웹 서비스의 서버 형태로 구현된다. The event
서비스 프로비즈닝 관리자(130)는 서비스 프로비즈닝 절차를 제공한 후 얻어진 데이터를 이벤트 테이블(140)에 저장 관리하는 기능을 제공한다. The
이벤트 테이블(140)은 애플리케이션 서버(100) 내에 탑재된 모든 서비스에게 통신망 이벤트를 통보하는 데 필요한 정보들을 저장한다. 여기서, 도 1에 도시된 이벤트 테이블(140)의 구조에 대하여 도 2를 참조하여 살펴보자.The event table 140 stores information necessary for notifying a network event to all services mounted in the
도 2는 도 1에 도시된 이벤트 테이블의 구조를 나타낸 도면이다. FIG. 2 is a diagram illustrating the structure of an event table shown in FIG. 1.
도 2에 도시된 바와 같이, 이벤트 테이블(140)은 서비스 ID 필드(141), 서비스의 이벤트 수신용 IP 주소 필드(142), 서비스의 이벤트 수신용 통신포트 번호 필드(143), 활성화된 이벤트 개수 필드(144), 이벤트 타입 필드(145), Correlator 필드(146), 이벤트 통보용 AIP 처리기 레퍼런스 필드(147)를 포함하고, 상기 이벤트 타입 필드(145), Correlator 필드(146), 이벤트 통보용 AIP 처리기 레퍼런스 필드(147)는 다수개로 이루어질 수 있다.As shown in FIG. 2, the event table 140 includes a
서비스 ID 필드(141)내의 서비스 ID 정보는 서비스 식별자를 나타내며 이벤트 테이블(140)에서 기본 키(Primary Key)로 이용된다. The service ID information in the
서비스의 이벤트 수신용 IP 주소 필드(142)와 통신 포트 번호 필드(143)는 이벤트 통보용 API 처리기(120)가 서비스에게 이벤트를 통보하기 위한 통신 수단으로 필요한 IP 주소와 통신 포트 번호를 나타낸다.The event receiving
활성화된 이벤트 개수 필드(144)는 해당 서비스가 현재 통보받고자 하는 이벤트의 총 개수를 나타내며 정적 이벤트와 동적 이벤트 개수의 합으로 표시된다. The activated
이벤트 타입[i](145)는 i 번째 이벤트가 현재 서비스에 의해 활성화되었는지를 참(true) 혹은 거짓(false) 값으로 나타낸다. 여기서, 각각의 이벤트는 [1..n]까지의 범위 내의 이벤트 타입[i]에 대응된다. i 번째 이벤트가 임의의 정적 이벤트로 대응되고, 프로비즈닝 절차에 의해 정적 이벤트로 등록된 서비스이면 이벤트 타입[i]는 참(true) 값을 가지고 그렇지 않은 경우 거짓(false) 값을 갖는다. Event type [i] 145 indicates whether the i th event is activated by the current service as a true or false value. Here, each event corresponds to an event type [i] in the range up to [1..n]. If the i th event corresponds to any static event and is a service registered as a static event by the provisioning procedure, the event type [i] has a true value, otherwise it has a false value.
그리고, i 번째 이벤트가 임의의 동적 이벤트에 대응되고, 서비스 애플리케이션이 런 타임 시에 게이트웨이(200)에게 해당 이벤트를 통보해 줄 것을 요청하였다면 이벤트 타입[i]는 참(true) 값을 갖고 그렇지 않은 경우 거짓(false) 값을 갖는다. 또는 서비스 애플리케이션(110)이 런 타임 시에 해당 이벤트 통보를 종료할 것을 요청하였다면 이벤트 타입[i]의 값은 거짓(false) 값을 갖는다. If the i th event corresponds to an arbitrary dynamic event, and the service application requests the
Correlator[i] 필드(146)는 i 번째 이벤트를 게이트웨이(200)로부터 통보 받 았을 때 서비스에서 요청한 이벤트인가를 연관짓기 위한 상관 값을 기록하기 위한 것이다. 상기 Correlator[i]필드에 기록되는 상관 값은 정적 이벤트에 대해서는 할당하지 않고 동적 이벤트에 대해서만 서비스 애플리케이션(110)이 게이트웨이(200)에게 이벤트 통보를 요청할 때 상관 값을 생성하여 파라미터로 넘겨준다. 이때, 게이트웨이(200)에게 파라미터값을 넘겨주기 전에 서비스 애플리케이션(110)은 생성한 상관 값을 대응하는 correlator[i] 필드에 기록한다. 서비스 애플리케이션(110)이 동적 이벤트 통보를 종료할 것을 게이트웨이(200)에게 요청하면 correlator[i] 값은 디폴트값 0으로 초기화된다. The Correlator [i]
한편, 이벤트 통보용 API 처리기 레퍼런스[i] 필드(147)는 웹 서비스 기반 개방형 API 중 게이트웨이(200)로 부터 i 번째 이벤트에 대하여 통보받기 위한 API를 구현한 웹 서비스 서버에 대한 레퍼런스(예: URL)를 나타낸다.Meanwhile, the event handler API handler reference [i]
다음으로, 도 1에 도시된 서비스 프로비즈닝 관리자(130)가 제공하는 서비스 프로비즈닝 절차에 대하여 단계적으로 설명한다.Next, the service provisioning procedure provided by the
도 3은 서비스 프로비즈닝 관리자(130)가 제공하는 서비스 프로비즈닝 절차에 대한 동작 플로우챠트이다. 3 is an operational flowchart of a service provisioning procedure provided by the
먼저, 서비스 프로비즈닝 관리자(130)는 이벤트 테이블(140)에 추가할 새로운 레코드를 생성하여 초기화(이벤트 타입[i] 필드의 값을 모두 거짓(false)으로 함)한다(1300). First, the
초기화 후, 서비스 프로비즈닝 관리자(130)는 서비스 ID를 할당하고 할당된 값을 레코드의 서비스 ID 필드의 값으로 기록한다(1310).After initialization, the
그리고, 서비스의 이벤트 수신용 IP 주소와 포트 번호를 입력받아 레코드의 해당 필드에 기록한다(1320).In
그리고, 정적 이벤트에 대한 종류를 입력 받아 해당 이벤트에 대응하는 이벤트 타입[i] 필드의 값을 참(true)로 설정하고 correlator[i] 필드의 값은 디폴트값 0으로 한다(1330). Then, the type of the static event is received and the value of the event type [i] field corresponding to the corresponding event is set to true and the value of the correlator [i] field is set to a default value of 0 (1330).
정적 이벤트에 대한 이벤트 통보용 API 처리기에 대한 레퍼런스를 입력 받아 레퍼런스[i] 필드에 기록한다(1340). A reference to an event handler for event notification for a static event is input and recorded in the reference [i] field (1340).
이어, 모든 정적 이벤트에 대하여 정보가 수집되었는지를 판단하고(1350), 판단결과, 모든 정적 이벤트에 대하여 정보가 수집되었을 경우, 정적 이벤트의 개수를 활성화된 이벤트 개수 필드의 값으로 레코드에 기록한다(1360).Subsequently, it is determined whether information is collected for all static events (1350). If the information is collected for all static events as a result of the determination, the number of static events is recorded in the record as a value of the activated event count field ( 1360).
이어, 서비스 프로비즈닝 관리자(130)는 정적 이벤트 타입과 대응되는 이벤트 통보용 API 처리기에 대한 레퍼런스를 게이트웨이(200)에게 등록한다(1370).Subsequently, the
정적 이벤트에 대한 등록이 완료되면, 동적 이벤트에 대한 정보를 수집한다. 사용자가 관심있어 하는 모든 동적 이벤트에 대하여 해당 이벤트 통보용 API 처리기의 레퍼런스를 입력받아 대응하는 레퍼런스[i]에 기록한다(1380).Once registration for the static event is complete, gather information about the dynamic event. For all dynamic events of interest to the user, a reference of the event notification API handler is input and recorded in the corresponding reference [i] (1380).
상기와 같이 서비스 프로비즈닝 관리자(130)에 의해 서비스 프로비즈닝 절차가 완료되면, 서비스 애플리케이션(110)에서 제공하는 동적 이벤트에 대한 통보 시작을 게이트웨이(200)에게 요청하는 방법에 대하여 살펴보자.As described above, when the service provisioning procedure is completed by the
도 4는 서비스 애플리케이션(110)이 제공하는 동적 이벤트에 대한 통보를 시 작할 것을 게이트웨이에게 요청하는 절차를 니티낸 동작 플로우챠트이다.4 is an operational flowchart illustrating a procedure for requesting a gateway to initiate notification of a dynamic event provided by the
먼저, 서비스 애플리케이션(110)는 이벤트 테이블(140)에서 자신의 서비스 ID에 대응하는 레코드를 서비스 ID 필드(141)로부터 찾는다(1400).First, the
레코드에서 관심있는 이벤트에 대응하는 이벤트 타입[i] 필드(145)의 이벤트 타입값을 참(true)으로 수정한다(1410).The event type value of the event type [i]
그리고, 서비스 애플리케이션(110)은 상관 값을 생성한 후(1420), 대응하는 correlator[i] 필드의 값을 생성한 상관 값으로 이벤트 테이블(140)의 해당 필드 즉, Correlator 필드(146)에 기록한다(1430).After the
이어, 서비스 애플리케이션(110)은 대응하는 이벤트 통보용 API 처리기의 레퍼런스[i] 필드(147)로부터 이벤트 통보용 API 처리기의 레퍼런스값을 추출한다(1440). Next, the
이어, 서비스 애플리케이션(110)은 활성화된 이벤트 개수 필드(144)의 값을 1 증가 시킨다(1450). In operation 1450, the
그리고, 상기 추출한 이벤트 통보용 API 처리기의 레퍼런스 값과 생성한 상관 값을 입력 파라미터로 게이트웨이(200)를 호출하게 되는 것이다(1460).In
상기와 같이 서비스 애플리케이션(110)이 제공하는 동적 이벤트에 대한 통보의 시작을 게이트웨이(200)에 요청한 후 게이트웨이(200)로부터 호출이 있는 경우 이벤트 통보용 API 처리기(120)에서 서비스 애플리케이션(110)으로 해당 이벤트를 통보하게 되는 것이다. As described above, when the
이하, 본 발명에 따른 이벤트 통보 방법에 대하여 구체적이면서 단계적으로 설명해 보기로 하자. Hereinafter, the event notification method according to the present invention will be described in detail and step by step.
도 5는 본 발명에 따른 이벤트 처리 시스템의 이벤트 통보용 API 처리기에서의 이벤트 통보 방법에 대한 동작 플로우챠트를 나타낸 도면이다. 5 is a flowchart illustrating an operation of an event notification method in the event notification API processor of the event processing system according to the present invention.
도 5에 도시된 바와 같이, 먼저 애플리케이션 서버(100)의 정적 이벤트 또는 동적 이벤트에 대한 이벤트 통보용 API 처리기(120)는 게이트웨이(200)로부터 이벤트 통보를 위한 호출을 대기하고 있다가(1500), 게이트웨이(200)로부터 호출이 있는지를 판단하게 된다(1510).As shown in FIG. 5, first, an event handler for event notification for a static event or a dynamic event of the
판단결과, 게이트웨이(200)로부터 호출된 경우 이벤트 통보용 API 처리기(120)는 이벤트 테이블(140)의 서비스 ID 필드(141)로부터 자신과 연관있는 서비스 ID 에 대응하는 레코드를 찾는다(1520). As a result of the determination, when called from the
레코드로부터 게이트웨이(200)로부터 전달된 이벤트에 대응하는 이벤트 타입[i]의 값을 이벤트 타입 필드(145)로부터 추출한다(1530).The value of the event type [i] corresponding to the event transmitted from the
이어, 상기 추출한 이벤트 타입값이 참(True)인지를 판단하고(1540), 판단 결과, 상기 추출된 이벤트 타입값이 참(True)이 아닌 경우, 해당 이벤트를 버리고 게이트웨이(200)로부터의 호출 대기 상태로 돌아간다(1550). Subsequently, it is determined whether the extracted event type value is true (1540). If the extracted event type value is not true, the corresponding event is discarded and the call is waited for from the
그러나, 상기 1540 단계에서 이벤트 테이블(140)의 이벤트 타입 필드(145)에 저장된 이벤트 타입값이 참(True)인 경우, 이벤트 테이블(140)의 correlator(i)값이 디폴트값 "0"인지를 판단한다(1560).However, when the event type value stored in the
판단 결과, 이벤트 테이블(140)의 correlator[i]의 값이 0이면, 정적 이벤트이기 때문에 이벤트 테이블(140)로부터 서비스의 수신용 IP 주소와 통신 포트 번호 를 추출하여(1590) 추출한 IP 주소와 포트 번호를 이용하여 이벤트를 통보하게 되는 것이다(1600).As a result of determination, if the value of correlator [i] of the event table 140 is 0, it is a static event, and thus, the IP address and port extracted from the event table 140 (1590) are extracted from the event table 140 for receiving a service. The event will be notified using the number (1600).
그러나, 상기 1560단계에서 이벤트 테이블(140)의 correlator[i]의 값이 0이 아닌 경우에는 이벤트 테이블(140)에 기록된 correlator[i]의 값이 게이트웨이(200)가 파라미터로 넘겨준 상관 값과 서로 일치하는지를 판단하게 된다(1570). However, if the value of correlator [i] of the event table 140 is not 0 in
판단 결과, 이벤트 테이블(140)에 기록된 correlator[i]의 값이 게이트웨이(200)가 파라미터로 넘겨준 상관 값과 서로 일치하는 경우에는 이벤트 테이블로부터 수신용 IP 주소와 통신 포트 번호를 추출하여(1590) 이벤트를 서비스에 전달한다(1600). As a result of determination, when the values of correlator [i] recorded in the event table 140 coincide with the correlation values passed by the
한편, 1570 단계에서 이벤트 테이블(140)에 기록된 correlator[i]의 값이 게이트웨이(200)가 파라미터로 넘겨준 상관 값과 서로 일치하지 않은 경우에는 해당 이벤트를 버리고 대기 상태로 돌아간다(1580).Meanwhile, if the correlator [i] values recorded in the event table 140 in
이와 같이 서비스 애플리케이션(110)은 동적 이벤트에 대한 통보의 종료를 게이트웨이(200)에 요청하게 되는데, 이 동작에 대하여 첨부한 도 6을 참조하여 단계적으로 살펴보자.As such, the
도 6은 본 발명에 따른 이벤트 처리 시스템에서 서비스 애플리케이션의 동적 이벤트 통보 종료 요청 방법에 대한 동작 플로우챠트를 나타낸 도면이다. 6 is a flowchart illustrating an operation of a method for requesting termination of dynamic event notification of a service application in an event processing system according to the present invention.
도 6에 도시된 바와 같이, 먼저 서비스 애플리케이션(110)은 이벤트 테이블(140)에서 자신의 서비스 ID필드(141)로부터 자신에 대응하는 서비스 ID에 대한 레코드를 찾는다(1610).As shown in FIG. 6, the
그리고, 서비스 애플리케이션(110)은 상기 서치한 서비스 ID에 대한 레코드로부터 관심있는 이벤트에 대응하는 이벤트 타입[i] 필드(145)의 값을 거짓(false)로 수정한다(1620).The
이어, 서비스 애플리케이션(110)은 대응하는 correlator[i] 필드(146)의 값을 추출한 후 correlator[i]의 값을 디폴트값 0으로 초기화한다(1630). The
그리고, 서비스 애플리케이션(110)은 활성화된 이벤트 개수 필드(144)의 값을 1 감소시킨다(1640). The
상기에서 추출한 상관 값을 입력 파라미터로 게이트웨이(200)를 호출함으로써, 이벤트 통보의 종료를 수행하게 되는 것이다(1650).The event notification is terminated by calling the
상기한 바와 같은 본 발명에 따른 웹 서비스 기반 개방형 API를 지원하는 애플리케이션 서버에서의 이벤트 통보 장치 및 그 방법은 정적 이벤트와 동적 이벤트에 대한 통보를 모두 지원하며, 이벤트 테이블을 이용하기 때문에 이벤트를 통보하기 위하여 필요한 루틴들을 서비스 애플리케이션 내에 하드 코딩할 필요없이 테이블을 참조하도록 하여 서비스 애플리케이션의 확장성을 좋게 할 수 있으며 유지 보수가 용이하다는 장점을 가지고 있는 것이다. Apparatus and method for event notification in an application server supporting a web service-based open API according to the present invention as described above supports notification of both static and dynamic events, and notifies the event because it uses an event table. In order to improve the service application's scalability and maintain the service by having to refer to the table without the need to hard-code routines in the service application.
Claims (21)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/634,613 US20070165615A1 (en) | 2005-12-08 | 2006-12-06 | Apparatus and method for notifying communication network event in application server capable of supporting open API based on Web services |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050119144 | 2005-12-08 | ||
KR20050119144 | 2005-12-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070061067A true KR20070061067A (en) | 2007-06-13 |
KR100798916B1 KR100798916B1 (en) | 2008-01-29 |
Family
ID=38357001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060041493A KR100798916B1 (en) | 2005-12-08 | 2006-05-09 | Method and system for handling the network events in application server using open API based web services |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100798916B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100889732B1 (en) * | 2006-12-01 | 2009-03-24 | 한국전자통신연구원 | Method of receiving notification of the application server which is using the open service gateway |
KR101275293B1 (en) * | 2009-10-26 | 2013-06-14 | 한국전자통신연구원 | Network apparatus and Method for supporting network virtualization |
KR101348927B1 (en) * | 2012-10-16 | 2014-01-09 | 충남대학교산학협력단 | Openapi adaptor for wsun |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05298052A (en) * | 1992-04-21 | 1993-11-12 | Fujitsu Ltd | Window system and event processing method |
KR100503735B1 (en) * | 2002-04-04 | 2005-07-26 | (주)헤리트 | Network system and method of operating the same network system |
US7644367B2 (en) * | 2003-05-16 | 2010-01-05 | Microsoft Corporation | User interface automation framework classes and interfaces |
KR100561683B1 (en) * | 2003-10-10 | 2006-03-15 | 에스케이 텔레콤주식회사 | Mobile Communication Terminal with Mobile Platform Supporting Object Oriented Application Framework |
-
2006
- 2006-05-09 KR KR1020060041493A patent/KR100798916B1/en active IP Right Grant
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100889732B1 (en) * | 2006-12-01 | 2009-03-24 | 한국전자통신연구원 | Method of receiving notification of the application server which is using the open service gateway |
KR101275293B1 (en) * | 2009-10-26 | 2013-06-14 | 한국전자통신연구원 | Network apparatus and Method for supporting network virtualization |
KR101348927B1 (en) * | 2012-10-16 | 2014-01-09 | 충남대학교산학협력단 | Openapi adaptor for wsun |
Also Published As
Publication number | Publication date |
---|---|
KR100798916B1 (en) | 2008-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109618005B (en) | Method for calling server and proxy server | |
CN110636115B (en) | Cross-cloud service calling processing method, gateway server and requester server | |
US20070165615A1 (en) | Apparatus and method for notifying communication network event in application server capable of supporting open API based on Web services | |
US7475406B2 (en) | Event notification structure for dynamically aggregated logical components | |
CN111414208B (en) | Application program starting method, device and equipment | |
CN108958949B (en) | Calling method and system of application program | |
JP2006109478A (en) | Method and apparatus for providing distributed slf routing function in internet multimedia sub-system (ims) network | |
US20240235929A9 (en) | Method for instantiating edge application server and apparatus | |
CN104811817B (en) | The method and device of video is played using videoconference client software | |
CN114172966A (en) | Service calling method and device and service processing method and device under unitized architecture | |
CN111858083A (en) | Remote service calling method and device, electronic equipment and storage medium | |
CN112311786A (en) | Service request processing method and device, storage medium and computing equipment | |
CN110677475A (en) | Micro-service processing method, device, equipment and storage medium | |
JP2014123363A (en) | Service and management layer for various data connection | |
CN111984849A (en) | Information query method, device, equipment and medium | |
US7289989B2 (en) | Pattern based web services | |
KR100798916B1 (en) | Method and system for handling the network events in application server using open API based web services | |
US20120158564A1 (en) | System and method for account management based on open application programming interface using restful web services | |
CN111294288A (en) | Traffic identification method and device, application program interface gateway and storage medium | |
US11425208B2 (en) | Message delivery based on subsets of network identities | |
CN113923008A (en) | Malicious website interception method, device, equipment and storage medium | |
CN113645259B (en) | Micro-service elastic expansion method, system and related equipment | |
US9600802B2 (en) | Method and apparatus for intelligence-oriented service using context information estimation in mobile terminal | |
CN111988398A (en) | Data acquisition method, API gateway and medium | |
US20160316348A1 (en) | Dynamically updating policy controls for mobile devices and applications via policy notifications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20110104 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20111208 Year of fee payment: 20 |