KR100906176B1 - 모바일 허브 및 모바일 허브에서의 이벤트 관리 방법 - Google Patents

모바일 허브 및 모바일 허브에서의 이벤트 관리 방법 Download PDF

Info

Publication number
KR100906176B1
KR100906176B1 KR1020067010110A KR20067010110A KR100906176B1 KR 100906176 B1 KR100906176 B1 KR 100906176B1 KR 1020067010110 A KR1020067010110 A KR 1020067010110A KR 20067010110 A KR20067010110 A KR 20067010110A KR 100906176 B1 KR100906176 B1 KR 100906176B1
Authority
KR
South Korea
Prior art keywords
event
mobile hub
buffer
events
entities
Prior art date
Application number
KR1020067010110A
Other languages
English (en)
Other versions
KR20060135637A (ko
Inventor
덕 휴즈만
마이클 이 니드
조나단 티 와딜로브
Original Assignee
인터내셔널 비지네스 머신즈 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20060135637A publication Critical patent/KR20060135637A/ko
Application granted granted Critical
Publication of KR100906176B1 publication Critical patent/KR100906176B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/14Backbone network devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/63ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for local operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • H04W28/14Flow control between communication endpoints using intermediate storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

이벤트를 저장하는 원형 버퍼(11)와; 상기 버퍼(11)에 저장되는 이벤트의 저장 기간을 감시하는 타이머와; 관련된 상기 타이머의 만료 시간이 초과된 경우, 상기 버퍼(11)로부터 이벤트를 폐기하도록 구성되는 이벤트 매니저(12)를 포함하는 모바일 허브(1)가 개시되어 있다. 이벤트가 버퍼(11)를 차단할 수 없기 때문에 매우 작은 소형 스케일의 버퍼(11)라도 모바일 허브(1)에 이용할 수 있게 된다.

Description

모바일 허브 및 모바일 허브에서의 이벤트 관리 방법{MOBILE HUB AND MANAGING EVENTS IN A MOBILE HUB}
본 발명은 모바일 허브 및 모바일 허브에서 이벤트를 관리하는 방법에 관한 것이다.
퍼스널 모바일 게이트웨이 또는 퍼스널 모바일 허브의 개념은 통상 중앙 처리 장치(CPU), 랜덤 액세스 메모리(RAM), 비휘발성 NV 저장 장치, 근거리 무선 네트워크 기술에 대한 인터페이스(예를 들어, 블루투스) 및/또는 광역 무선 네트워크 기술(예를 들어, GSM/GPRS)에 대한 인터페이스를 갖고 있는 모바일 디바이스의 개념을 중심으로 개발되어 왔다.
모바일 허브의 가장 주목받는 적용 영역은 센서나 액츄에이터 디바이스가 예를 들어, 블루투스를 통하여 모바일 허브에 접속되어 있는 보건/의료/제약 적용 분야이다. 각각의 센서는 센서값을 모바일 허브에 주기적으로 송신하거나, 모바일 허브 상에서 실행하는 어댑터에 의해 폴링(송신 작용)된다. 이와 유사하게, 액츄에이터 디바이스는 모바일 허브를 폴링하거나 모바일 허브 상에서 실행하는 어댑터에 의해 접속되어 때때로 모바일 허브 디바이스로부터의 명령을 수신한다. 모바일 허브 상에서는, 센서 데이터가 분석될 필요가 있고, 경우에 따라 그 외의 센서 디바이스의 데이터에 상관되며 또한 네트워크 기반 서비스로 중계되어질 수도 있다. 통상적으로, 데이터는 개개의 특성을 갖고 있고 각각의 센서값은 이벤트로서 처리될 수 있다. 따라서, 각각의 센서는 무선 통신 링크를 통하여 모바일 허브로 이벤트의 시퀀스를 전달한다. 이와 마찬가지로, 모바일 허브 내부 처리들에 의해 이벤트를 발생시킬 수 있다. 물론, 이렇게 내부적으로 생성된 이벤트들 또는 외부 디바이스로부터 수신되는 이벤트들을 모바일 허브 및/또는 모바일 허브 외부 서비스의 소비자가 이용가능하도록 만들어야 하는 것이 필요하다. 따라서, 이벤트들을 처리하고 이들을 정확한 경로로 분배하기 위해서는, 모바일 허브는 이벤트 매니저라 하는 이벤트 엔진을 필요로 한다.
현재 몇몇 알려진 이벤트 시스템으로는, 동기식 이벤트 시스템과 비동기식 이벤트 시스템이 있다.
동기식 이벤트 시스템에서는, 이벤트들이 루트까지 도달하는 계층적 경로를 따라 전파된다. 각각의 엔티티는 차례대로 수신한 이벤트를 동작시킨다.
비동기식 이벤트 시스템의 가장 잘 알려진 예로는, Linda Tuplespace 시스템 또는 IBM의 T-Spaces가 있다. 여기서, 이벤트가 중앙 "블랙보드"로 전달되는데, 이 블랙보드는 이벤트 소스에 의한 데이터베이스로서 구현된다. 이후, 각각의 소비자들은 소비자들이 관심을 갖는 투플(tuple)에 대한 검색 표현이나 패턴을 만족하는 블랙보드를 통하여 검사한다.
동기식 이벤트 시스템의 주요 이점은 각각의 등록된 엔티티(엔티티들은 등록되어야 함)가 일단 호출될 것이 보장된다는 점이다. 호출 체인의 마지막에서는, 어 떤 이벤트가 처리되었는지를 확실히 알게 된다. 또한, 동기식 이벤트 시스템은 정의에 의해, 등록된 이벤트들을 호출하는데 어떤 순위를 부여받는다. 적절한 리턴값을 이용하여 처리 체인에서의 이후의 엔티티들에 대한 이벤트의 전달에 영향을 줄 수 있다. 동기식 모델의 이점은 동시에 가장 큰 단점을 갖는데, 이 단점은 예를들어, 입출력(I/O) 동작이 완료되는데 장시간이 소요된다는 점이다. 이벤트 처리기가 호출되어 이벤트 처리기의 일부로서 I/O 동작을 개시하는 엔티티를 결과적으로 차단할 수 있고, 그에 의해 전체 동기식 이벤트 시스템을 차단할 수도 있다. 또한, 이벤트 처리 엔티티를 호출전 차단할 수도 있어, 그에 의해 이벤트 시스템을 차단할 수도 있다.
비동기식 이벤트 시스템은 이러한 특정 문제를 겪지 않는데, 여기서, 모든 이벤트 청취자(listener)가 신규 이벤트를 동시에 통지받거나 대상이 되는 엔티티들이 신규로 도달한 이벤트에 대한 이벤트 시스템을 규칙적으로 자체 폴링시킨다. 한편, 비동기식 이벤트 시스템에서는, 이벤트 종결(closure)을 표명하는 것이 어려운데, 즉, 모든 엔티티들이 이벤트를 경험하기 때문에, 순위를 부여하는 것이 거의 불가능하다. 또한, 투플/블랙보드 기반 시스템에서는, 전달된 이벤트에 대한 가비지 수집을 해야 하거나 데이터 베이스를 지원해야 한다는 문제가 있다.
http://www.prismtechnologies.com/English/Products/CORBA/Integration/whitepaperUms/jms/jms_BR_12_OO.pdf(2003년 8월 18일)인 인터넷에 접속되어 검색되는 "Java Message Service-A White Paper(2000년 12월)"에는 데이터 베이스의 이용에 기초한 비동기식 이벤트 시스템이 개시되어 있다.
여기서, 비동기식 이벤트 시스템은 "수프 모델(soup)" 또는 폰드 모델(pond model)로서 특성화될 수 있으며, 여기서, 이벤트들은 글로벌 수프나 폰드로 덤프(dump)된다. 그 후, 이벤트 가입자들이 수프/폰드를 검색한다. 이와 유사하게, 동기식 이벤트 시스템은 플래시 모델(flash model)로서 특성화될 수 있으며, 여기서, 이벤트들은 모든 가입된 엔티티들에 플래시된다.
예를 들어, 무선 광역 네트워크 구성요소(WWAN, 예를 들어, GPRS), 무선 근거리 네트워크 구성요소(WLAN, 예를 들어, 블루투스) 및 국부적 휘발성 및 비휘발성 저장 장치를 가진 CPU를 포함하는 모바일 폰 플랫폼일 수 있는 모바일 허브와 같은 모바일 디바이스는 자신의 허브 특성에 의해 특성화된다. 센서, 디바이스, 또는 애플리언스와 같은 외부 엔티티는 WLAN을 통하여 모바일 허브에 접속되어, 그 허브 상에 실행하는 소프트웨어 구성요소에 데이터를 제공한다. 이들 소프트웨어 구성요소 또는 그외 소프트웨어 구성요소가 몇몇 방식으로 수신 데이터를 처리하여, 그 데이터를 WWAN을 통해 인터넷에서 어디에서나 실행되는 서비스로 제공한다.
이러한 모바일 허브는 http://www.ixi.com/PDF/IXI_Brochure.pdf(2003년 8월 18일) 인터넷에 접속되어 검색되는 브로셔(brochure) "1XI-Connect with style"로 주소지정되어 있다.
동기식 이벤트 시스템은 고유의 I/O 동작을 수행해야 하기 때문에 모바일 허브에 대해 필요한 처리를 수행하는 것이 적합하지 못하다. 한편, 비동기식 이벤트 시스템은 모바일 디바이스 자체에 유지되는 데이터베이스 시스템을 필요로 하기 때문에 특히 유용하지 못하다. 이 데이터베이스는 통상 휴대가능하다는 특성에 의해 충분하지 못한 자원을 제공하는 모바일 디바이스에 대해 많은 자원을 요구한다.
따라서, 모바일 디바이스에 적합하며, 동시에 I/O 동작을 차단하여 도입되는 복잡성을 처리할 수 있는 이벤트 관리 시스템이 요구된다.
본 발명의 일 태양에 따르면, 모바일 허브가 제공되며, 이 모바일 허브는 이벤트를 저장하는 원형 버퍼와, 이 버퍼에 저장되는 이벤트의 저장 기간을 감시하는 타이머와, 관련된 타이머의 만료 시간(time-out)이 초과한 경우 버퍼로부터 이벤트를 폐기하도록 구성된 이벤트 매니저를 포함한다.
본 발명의 또 다른 태양에 따르면, 모바일 허브에서 이벤트를 관리하는 대응 방법이 제공되며, 이 방법은 원형 버퍼에서 이벤트를 저장하는 단계와, 저장되는 이벤트의 저장 기간을 감시하는 단계와, 저장 기간이 만료 시간을 초과하는 경우 버퍼로부터 이벤트를 폐기하는 단계를 포함한다.
모바일 허브는 무선 방식으로 모바일 허브에 접속되어 있는 엔티티들을 상호접속하는 중앙 디바이스로서 이용되는 모바일 디바이스를 의미한다. 따라서, 모바일 허브는 모바일 네트워크 노드의 기능을 허용한다. 모바일 허브의 기능은 예를 들어, 단독형 디바이스로 구현될 수도 있고 모바일 디바이스 내에 통합될 수도 있다.
외부 엔티티들은 모바일 허브에 접속되거나 접속하여 데이터를 송신 또는 수신할 수 있다. 이러한 엔티티의 예들은 센서 또는 액츄에이터가 있다. 본 발명의 문맥에서는, 모바일 허브에 의해 수신되는 메시지를 "이벤트"라 한다.
모바일 허브의 코어는 이벤트 엔진 또는 이벤트 매니저라 한다. 이벤트 매니저는 하드웨어에서 또는 소프트웨어로 구현될 수 있고 하드웨어와 소프트웨어의 조합으로 구현될 수도 있다. 이러한 이벤트 매니저는 모바일 허브에서 이벤트를 처리하며 특히, 도달하는 이벤트에 대응하거나 허브의 외부 영역으로 이벤트를 전달하도록 구성되어 있다. 통상적으로, 이벤트는 보다 자세히 후술될 어댑터에 의해 이벤트 엔진으로 전달된다. 이벤트 매니저는 소형이고 한정적이며 임시적인 버퍼에 이벤트를 저장하고 그 이벤트에 대한 타이머를 설정한다. 타이머의 개시점은 이벤트가 버퍼에 저장되는 시점인 것이 바람직하지만, 반드시 이러할 필요는 없다. 타이머는 하드웨어와 소프트웨어 또는 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 이벤트 매니저는 타이머가 만료 시간을 초과할 경우 늦어도 버퍼로부터 이벤트를 폐기한다. 본 발명의 일부 바람직한 실시형태로 설명될 바와 같이, 타이머의 만료 시간에 도달하기 전에 이벤트가 이미 폐기된 경우에는, 통상적으로, 타이머가 재설정되고 어떤 경우에도 만료 시간에 도달하지 않게 된다.
이러한 형태의 이벤트 처리에 의해, 이벤트 매니저가 처리해야 할 어떤 이벤트들에 대한 한정된 버퍼 셀을 또 다른 이벤트가 차단하는 것을 확실히 방지한다. 그 결과, 이벤트는 타이머의 만료 시간에 의해 결정되는 최대 시간/저장 기간 동안에 버퍼에 존재하거나 저장될 수만 있다.
이벤트는 모바일 허브에 도달한 후 즉시 버퍼에 저장될 수 있다. 다른 방법으로, 이벤트는 먼저 임시 저장 장치 또는 캐시에 임시로 저장된 다음, 추후 원형 버퍼로 전달될 수도 있다. 원형 버퍼는 이벤트를 저장하기 위한 한정된 공간을 제공한다. 바람직한 일 실시형태에서는, 200개 미만의 이벤트가 원형 버퍼에 저장될 수 있으며, 다른 바람직한 실시형태에서는, 100개 미만의 이벤트가 원형 버퍼에 저장될 수 있으며, 또 다른 바람직한 실시형태에서는, 원형 버퍼의 크기가 애플리케이션에 따라 변경되도록 구성될 수도 있다.
상술한 바와 같이, 타이머의 만료 시간은 버퍼로부터 저장되는 이벤트를 폐기하는데 적절한 최종 시점인 것이 바람직하다. 바람직한 실시형태에 따르면, 버퍼에 이벤트를 저장하여 대응하는 타이머를 개시시키는 시간에, 또는 그 개시 바로 전 또는 개시 바로 후에, 이벤트 엔진이 모든 엔티티들 또는 선택된 엔티티들에게 이벤트의 도달을 통지한다. 그러나, 엔티티의 통지는 반드시 버퍼에서의 이벤트의 도달과 함께 진행할 필요가 있는 것은 아니며 모바일 허브에서의 이벤트의 도달과 함께 진행할 수도 있으며, 이벤트와 관련된 그 외 다른 액션과 함께 진행할 수도 있다. 이러한 통지는 이벤트를 바람직하게 포함한다. 엔티티들이 선택적으로 통지되어야만 하는 경우에는, 이벤트 매니저는 등록 리스트에 따라서 모든 엔티티에 통지한다. 엔티티들은 등록 리스트에 등록하여, 모든 이벤트에 대하여 또는 선택된 이벤트만에 대하여 통지받을 수 있다. 예를 들어, 센서(B)로부터의 측정값이 센서(A)에서의 측정을 트리거링해야 할 때, 외부 엔티티 센서(A)는 센서(B)로부터 모바일 허브에 도달하는 어떤 이벤트에 대하여 통지받도록 등록한다. 통상적으로, 엔티티들은 외부 엔티티들 및/또는 모바일 허브 내부 엔티티들일 수 있다. 엔티티의 형태와 무관하게, 이러한 통지를 경험하는 엔티티들은 확인 응답 메시지(ACK)를 가지고 비동기식으로 응답한다. 통지받았던 모든 엔티티들(그 결과, 통지되기 위해 등록 리스트에 이미 등록됨)이 ACK 메시지를 송신하거나 이벤트에 대한 타이머가 만료한 경우, 이벤트 매니저는 간단히 그 이벤트를 폐기한다.
이러한 메카니즘에 의하여, 이벤트 엔진이 그 이벤트가 이미 대상이 되는 모든 엔티티들에 참여했는지의 여부를 확신할 수 없는 경우, 모바일 허브가 그 저장된 이벤트에 의해 차단되는 것이 방지된다. 한편, 복잡한 액세스를 포함하는 데이터 베이스가 필요없다. 그 대신에, 이벤트 매니저는 상술한 바와 같은 고정된 룰에 따라서 버퍼에서의 이벤트 순환을 관리하며, 이에 따라, 버퍼가 차단되는 것을 방지한다. 따라서, 이벤트 처리 솔루션이 효율적으로 이루어지고, 높은 적응성을 가지며, 높은 확장성을 갖게 된다. 이벤트가 버퍼를 더이상 차단할 수 없기 때문에, 소형의 버퍼를 모바일 허브 용으로 이용할 수 있어, 모바일 허브를 핸드형으로 휴대할 수 있게 한다.
모든 저장된 이벤트가 관련 이벤트의 저장 기간을 감시하는 대응 타이머를 포함하고 있을 경우, 모바일 허브가 보다 이벤트 차단에 대하여 내성을 갖게 된다. 따라서, 모든 이벤트는 폐기되기 전에 관련된 타이머의 만료 시간에 대응하는 버퍼의 제한된 최대 시간에만 존재하게 된다.
타이머의 만료 시간은 이벤트 도달 레이트에 의존하는 가변 만료 시간인 것이 바람직할 수 있다. 타임 유닛에서 모바일 허브에 도달하는 이벤트가 많을 수록, 만료 시간은 보다 짧아진다. 모바일 허브에 도달하는 이벤트가 적을 수록, 모바일 허브의 성능을 저하시키지 않고도 만료 시간이 보다 길어질 수 있다.
또한, 만료 시간은 모바일 허브에서 실행하는 개개의 애플리케이션마다 다를 수 있다. 따라서, 예를 들어, 이벤트가 거의 도달하지 않음으로 인해 보다 긴 만료 시간을 부여할 수 있는 특정 애플리케이션에 버퍼의 한정된 부분을 할당할 수 있는 한편, 이벤트가 너무 빈번하게 도달함으로 인해 만료 시간이 짧아진 또 다른 애플리케이션에 속하는 이벤트에 대해 버퍼의 나머지 부분을 예약할 수 있다. 엔진 매니저는 이벤트를 애플리케이션에 대해 분류시켜 그에 따라 개개의 버퍼 부분을 채울 수 있다.
모바일 허브는 종래 기술부에서 설명된 모바일 허브에 따른 하드웨어 엘리먼트를 바람직하게 포함한다. 보다 자세하게는, 모바일 허브는 외부 엔티티들로/로부터 이벤트를 송수신하는 무선 근거리 네트워크에 대한 인터페이스를 바람직하게 포함한다. 이러한 WLAN에 대한 액세스는 예를 들어 802.11 사양에 따른 WLAN에 대한 액세스를 포함하며 및/또는 블루투스에 대한 액세스를 포함한다. 이에 추가로, 또는 이와 다른 방식으로, 모바일 플랫폼은 GSM, GRPS, 또는 UMTS 네트워크와 같은 무선 광역 네트워크(WWAN)에 대한 인터페이스를 바람직하게 포함한다. 센서, 디바이스, 또는 애플리언스와 같은 외부 엔티티들은 WLAN 및/또는 WWAN을 통하여 모바일 허브에 접속하여 허브 상에서 실행하는 소프트웨어 구성요소들에 데이터를 제공할 수 있다. 또한, 외부 디바이스는 WLAN 및/또는 WWAN을 통하여 송신되는 데이터의 수신지일 수도 있다. 따라서, 외부 디바이스는 이벤트 소스 또는 이벤트 소비자일 수도 있고 동시에 이벤트 소스와 이벤트 소비자 모두일 수 있다.
모바일 허브 내부 엔티티들은 예를 들어, 상술한 소프트웨어 구성요소일 수 있다. 이러한 내부 엔티티들은 이벤트에 대응하여 여러 기능을 제공할 수 있는데, 내부 엔티티는 라우터의 기능을 포함할 수도 있고 또 다른 내부 엔티티는 서버 등 여타 다른 기능을 포함할 수 있다.
내부 엔티티는 몇몇 방식으로 수신된 이벤트들을 처리한다. 예를 들어, 처리된 데이터를 WWAN을 통하여 인터넷의 어떤 곳에서나 실행되는 서비스들에 제공할 수 있다.
모바일 허브 내부 이벤트 표현은 외부 엔티티가 처리할 수 있는 이벤트 표현과 다를 수 있으며, 모바일 허브는 내부 이벤트 표현을 외부 엔티티에 대하여 이해가능한 이벤트 표현으로 변환(이와 반대로 외부 이벤트 표현을 내부 엔티티에 대하여 이해가능한 이벤트 표현으로 변환)하는 어댑터를 바람직하게 포함한다. 개개의 다른 외부 엔티티는 모바일 허브 내에서 개개의 다른 어댑터를 필요로 할 수 있다.
또 다른 바람직한 실시형태는 시스템에서 이벤트에 주석을 첨부하는 확률도 포함한다. 통상 고정된 표기 방식을 따르는 이벤트들은 시스템의 엔티티에 의해 바람직하게 주석이 첨부될 수 있다. 이것은 바람직하게 추가의 액션을 개시하기 위하여 외부 엔티티 뿐만 아니라 내부 엔티티도 수신한 이벤트에 주석을 첨부할 수 있음을 의미한다. 통상적으로, 이러한 이벤트는 주석 첨부와 함께 모바일 허브의 이벤트 매니저에 반송되고, 이에 따라 처리된다. 이벤트 매니저는 등록된 엔티티에 주석을 바람직하게 분배한다. 이벤트에 주석을 첨부하는 것은 전체 시스템의 통신 성능을 강화시키는 용이하고도 유연성있는 방식이다.
이러한 주석은 적절한 처리를 위하여 이벤트 매니저에 송신되는 어떤 이벤트에도 바람직하게 첨부될 수 있다. 그러나, 특히 확인 응답 메시지가 엔티티에 의해 부가되는 주석의 캐리어일 수 있다.
그러나, 주석 자체만이 분배되는 것은 아니다. 다른 바람직한 실시형태에 따르면, 주석을 포함한 전체 이벤트가 이벤트 매니저에 의해 분배된다.
본 발명의 또 다른 실시형태에 따르면, 이벤트 모델이 제공되는데, 여기서 이벤트의 출현은 표기가 이벤트마다 상이한 필드를 포함하는 이벤트 표기를 따르게 되며, 각각의 필드는 정보의 어떤 카테고리를 특정한다. 바람직하게는, 필드의 적어도 일부분이 계층 구성을 따를 수 있다. 이러한 이벤트 모델은 특히 이벤트에 대한 필터들을 용이하게 구현시킬 수 있기 때문에 모바일 허브 내부에서의 이벤트 처리를 용이하게 한다.
본 발명의 또 다른 태양에 따르면, 컴퓨터 프로그램 엘리먼트가 제공되는데,컴퓨터 프로그램 엘리먼트는 모바일 허브의 처리 유닛에 로딩되는 경우 방법 청구항들 중 어느 한 항에 따른 방법을 각각 수행하는 코드 수단들을 포함한다.
이하, 장치의 일반적인 실시형태와 그 이점들, 방법의 실시형태와 그 이점들을 각각 설명한다.
본 발명과 그 실시형태는 본 발명에 따른 예시적인 실시형태와 무관하지만 첨부한 도면과 결합하여 설명된 바람직한 상세한 설명부를 통하여 보다 더 잘 이해될 수 있다.
도 1은 본 발명에 따른 모바일 허브를 포함하는 시스템을 나타내는 도면이다.
도 2는 본 발명의 일 실시형태에 따른 모바일 허브의 개략도를 나타낸다.
도 3은 본 발명의 일 실시형태에 따른 모바일 허브의 개략도를 나타낸다.
도 4는 본 발명의 일 실시형태에 따른 이벤트 플로우의 예시도를 나타낸다.
도 5는 본 발명의 일 실시형태에 따른 이벤트 구조를 나타낸다.
도면들 중, 동일한 구성요소는 동일한 도면부호를 이용하여 표기한다.
도 1은 본 발명에 따른 모바일 허브를 포함하는 시스템을 나타낸 도면이다.
통상적인 모바일 허브는 Symbian OS, 또는 Linux와 같은 또는 PersonalJavaTM 또는 MIDPJavaTM 런타임 환경과 같은 런타임 시스템 및 적합한 WLAN 및/또는 WWAN 구성요소(Java, 및/또는 PesonalJava/MIDP Java는 Sun Corporation의 상표이다)를 포함할 수 있다.
도 1에 따른 모바일 허브(1)는 2개의 외부 엔티티(2) 및 외부 엔티티(3)와 실제로 통신하고 있다. 외부 엔티티(2)는 복약 순응도(medication compliance)를 감시하기 위한 센서(이 디바이스는 블리스터 팩(투명 포장)을 감시한다)이며 무선 근거리 네트워크 블루투스를 통하여 모바일 허브(1)에 접속되어 있다. 외부 엔티티(3)는 원거리에 있는 환자를 감시하는 애플리케이션을 실행시키는 서버이며 무선 광역 네트워크 GPRS를 통하여 모바일 허브에 접속되어 있다. 의료 관리자(예를 들어, 의사, 간호사, 등)는 환자를 감시하는 애플리케이션을 가지고 약물 투약 처방(즉, 얼마나 많은 약을 언제 복용하는지)을 설정할 수 있다. 환자를 감시하는 애플 리케이션(3)은 약물 투약 처방전(예를 들어, ICAL 또는 VCAL 예정 사양)을 GPRS을 통하여, 모바일 허브(1) 상에서 실행하는 네트워크 어댑터로 송신한다. 네트워크 어댑터가 그 약물 투약 처방전을 이벤트 엔진에 주입하면, 이벤트 엔진이 그 약물 투약 처방전을 모든 등록된 어댑터로 다시 재분배하는데, 이들 중 한 어댑터는 (사유 포맷으로 가능한 변환되거나 또는 있는 그대로의) 정보를 블루투스 링크를 통하여 복약 순응도 모니터로 전달하는 복약 순응도 모니터 어댑터이다. 복약 순응도 모니터(2)는 약물이 투입되어야 하는 시간이 도달하면 환자에게 알람으로 알린다. 환자가 복약 순응도 모니터(2)에 포함된 블리스터 팩으로부터 약물을 투입받으면, 복약 순응도 모니터(2)는 블루투스를 통하여 모바일 허브(2)에 접속한 다음 (블리스터가 개방되었던 시간과 가능하다면 다른 정보도 포함되어 있는) "블리스터 개방" 이벤트를 모바일 허브(2)의 복약 순응도 모니터에 전송한다. 복약 순응도 어댑터는 센서 정보를 표준화된 이벤트 포맷으로 변환한 다음 그 변환된 정보를 이벤트 엔진에 주입시키며 그 후, 이벤트 엔진은 다른 모든 등록된 어댑터에 이벤트를 전달한다. GPRS 네트워크 어댑터는 복용 이벤트를 GPRS를 통하여 원거리에 있는 환자를 감시하는 애플리케이션(3)으로 제출한다.
도 1에 참조하여 도시한 바와 같이, 센서와 액츄에이터 디바이스(이를 총체적으로 외부 엔티티라 한다)가 예를 들어, 블루투스를 통하여 모바일 허브에 접속되어 있는 보건/의료/제약 적용 분야는 모바일 허브의 적용 분야 중 주목을 받고 있는 분야이다. 각각의 센서는 모바일 허브에 센서값을 주기적으로 송신한다. 모바일 허브에서는, 센서 데이터가 분석될 필요가 있고, 필요에 따라 그 외 센서 디바 이스의 데이터에 상관되며, 또한 네트워크 기반 서비스로 중계될 수 있다. 통상적으로, 이 데이터는 별개의 특성을 갖고 있으며, 각각의 센서값은 이벤트로서 처리될 수 있다. 따라서, 각각의 센서가 무선 통신 링크를 통하여 모바일 허브에 이벤트의 시퀀스를 제출한다. 이와 유사하게, 모바일 허브 내부 처리부/엔티티들이 이벤트를 생성한다. 물론, 이들 내부적으로 생성된 이벤트들 또는 외부 엔티티로부터 수신되는 이벤트들은 모바일 허브에 대한 및/또는 모바일 허브의 외부 서비스에 대한 소비자들에게 이용가능하도록 만들어지는 것이 필요할 수 있다. 따라서, 이벤트를 효율적으로 처리하고 이들을 적절하게 분배하기 위하여 모바일 허브는 이벤트 엔진을 필요로 하는데, 이 이벤트 엔진을 이벤트 매니저라 한다.
도 2는 이벤트 엔진/이벤트 매니저가 모바일 허브에서 통합되어 있는 방법을 개략적으로 도시한 도면이다. 도 2에 따른 모바일 허브(1)는 원형 버퍼(11), 이벤트 엔진(12), 타이머 유닛(13), 캐시(14), 어댑터(15 및 16) 및 내부 엔티티(17)를 포함한다.
도 2에 따른 모바일 허브가 이벤트 처리 시스템으로서 간주될 수 있기 때문에, 이벤트(이 시스템에서의 대응을 트리거링하는 기본적인 메시지들임)는 기본 정보/데이터 베어링 캐리어들이 된다. 이벤트는 도 2에 따른 엔티티(2 또는 3)과 같은 외부 엔티티에 의해 생성될 수 있다. 모바일 허브(1)는 외부 이벤트 표현을 모바일 허브 내부에서 이해될 수 있는 표현으로 변환시킬 필요가 있다. 이와 마찬가지로, 모바일 허브(1)에서의 외부 엔티티 교환 이벤트는 이벤트의 모바일 허브 내부 표현을 외부 엔티티에 대하여 이해가능한 표현으로 변환시킬 필요가 있다. 이러 한 변환이 어댑터의 주요 역할이 된다. 도 2로부터 도출할 수 있는 바와 같이, 어댑터(15 및 16)는 모바일 허브(1)의 내부 이벤트 처리 시스템과 외부 디바이스(2 및 3) 사이의 중간에 위치되어 있다. 통상적으로 어댑터는 외부 엔티티 및 모바일 허브 애플리언스와 상호작용한다.
그러나, 또한, 이벤트는 도 2에 따른 내부 엔티티(17)와 같은 모바일 허브 내부 엔티티들에 의해 생성되고, 변형되고, 분석되거나 조정될 수 있다.
이벤트가 외부 엔티티로부터 전달되거나 내부 엔티티에 의해 생성되어 모바일 허브에 도달하는 경우, 그 이벤트는 캐시(14)에 저장된다. 이후, 이벤트 매니저(12)는 이벤트마다 원형 버퍼(11)로 송신된다. 원형 버퍼(11)의 메모리 셀이 신규 이벤트를 수신할 준비가 되어 있으면, 이벤트는 원형 버퍼로 전달만 된다. 이러한 이벤트 처리는 버퍼가 한정된 크기로 인해 이벤트의 한정된 개수를 수용할 수 없을 경우, 이러한 이벤트 처리는 원형 버퍼에서의 비차단 이벤트 처리를 승인하는 메카니즘을 필요로 한다.
비차단 특성을 갖고 버퍼(11)를 구현하는 메카니즘은 타이머를 이용하는 것이다. 도 2에서, 타이머 유닛(2)은 버퍼(11)에 실제로 저장되는 이벤트 마다 타이머를 제공한다. 각각의 타이머마다, 만료 시간이 정의되어 있다. 만료 시간은 여러 다른 방식으로 정의될 수 있다. 만료 시간은 타이머 유닛에 도달할 것으로 예상되는 이벤트 또는 처리되어야 할 이벤트의 예상에 기초하여 정의될 수 있다. 또한, 만료 시간은 처리될 이벤트의 도달 레이트에 기본적으로 의존하는 가변 만료 시간 값으로서 구현될 수도 있다. 가장 최근의 구현예에 따르면, 도달 레이트에 대한 측 정값을 모바일 허브에 도입시킬 수 있다.
기본적으로, 만료 시간은 이벤트가 버퍼(11)의 메모리 셀을 점유할 수 있는 최대 기간으로서 정의할 수 있다. 최근까지는, 특정 이벤트에 대한 만료 시간이 초과하는 경우, 메모리 셀이 처리될 또 다른 이벤트를 배포받기 위하여 그러한 특정 이벤트를 버퍼로부터 폐기한다.
바람직하게는, 첫번째 실시형태에서는, 타이머는 이벤트가 버퍼(11)에 저장되는 때를 설정한다. 두번째 실시형태에서, 타이머는 이벤트가 모바일 허브에 도달하는 때를 설정한다. 첫번째 실시형태에서는, 이벤트가 만료 시간 동안인 고정된 시간 동안에 버퍼를 점유할 수 있는 반면, 두번째 실시형태에서의 만료 시간은 모바일 허브에서의 이벤트의 최대 지속 시간으로 정의하는데, 여기서, 버퍼에서의 유효 시간은 버퍼 외부 보다는 모바일 허브에서 이벤트를 처리하는데 필요한 시간으로 인한 만료 시간보다 약간 작게 정의될 수 있다.
기본적으로, 만료 시간부(13)는 버퍼에 저장되는 이벤트 마다 타이머를 제공한다. 이벤트 매니저(12)는 버퍼(11)에서의 이벤트를 저장하고 타이머 유닛(13)에서 타이머를 설정하며, 개개의 타이머의 만료 시간이 초과될 경우에 버퍼(11)로부터 이벤트를 폐기하는 역할을 수행한다.
그러나, 버퍼에서 이벤트에 의해 소비되는 시간 동안에, 이러한 이벤트가 처리되어야 한다. 이벤트에 대해서는, 이벤트는 내부 엔티티에 의해 처리되어야 하거나 외부 엔티티에 의해 처리되어야 하거나 또는 내부 및 외부 엔티티 모두에 의해 처리되어야 한다. 이벤트를 처리하기 전에는, 이벤트는 처리 엔티티로 전달되어야 한다. 따라서, 등록 리스트(19)가 모바일 허브(1)에 설정되어 있다. 등록 리스트(19)는 어떤 종류의 이벤트를 어디로 전달해야 하는지의 정보를 제공한다. 예를 들어, 등록 리스트(19)의 입력은 "외부 센서로부터 발생되는 모든 이벤트들이 추가 처리를 위하여 내부 에이전트(17)로 송신될 필요가 있거나" 또는 "내부 에이전트로부터 발생되는 모든 이벤트들이 GPRS를 통하여 외부 엔티티로 전달되기 위하여 모바일 허브의 SMS 어댑터(16)로 송신될 필요가 있는 것"으로 보여질 수 있다. 엔티티들은 등록 리스트에 등록 또는 가입할 수 있고 엔티티가 어떤 종의 이벤트에 관심이 있는지를 나타낼 수 있다.
바람직하게는, 일단 이벤트가 버퍼(11)에 저장되면, 이벤트 매니저(12)가 등록 리스트(19)에 액세스하여 이벤트들을 처리한다. 따라서, 버퍼(11)에 이벤트를 저장하는 것과 함께, 대응 타이머가 설정되고 이벤트가 등록 리스트(19)에 따라서 모든 관심의 대상인 엔티티들로 송신된다. 그러나, 이벤트 자체가 반드시 이러한 등록된 엔티티들로 송신될 필요가 있는 것은 아니다. 보다 일반적으로 설명하면, 등록된 엔티티들이 이벤트에 대하여 통지를 받는다. 이러한 통지는 통지를 트리거링하였던 이벤트와 동일하지 않은 메시지 일 수도 있거나 또는 트리거링하였던 이벤트와 동일한 메시지일 수도 있다.
통지는 신규 이벤트의 도달시 트리거링된다. 이 문맥에서, 도달이라는 것은 원형 버퍼(11)에의 도달로 해석될 수도 있고 또는 모바일 허브에의 도달로서 해석될 수도 있으며, 또는 이들 사이의 어떠한 시간에서의 도달로서 해석될 수도 있다. 통상적으로, 도 2에 도시한 바와 같이, 이벤트들은, 후속하여 그 이벤트에 대한 통 지의 수신을 결정하기 위하여 등록 리스트(19)를 조사하는 이벤트 매니저(12)의 주목을 먼저 받아야 하기 때문에, 이벤트가 저장되는 경우 또는 그 이전 또는 그 이후 즉시 통지를 트리거링한다.
모바일 허브(1)의 구현은 통지의 수신시 캐시(14)를 통하거나 또는 직접적으로 이벤트 매니저(12)로 확인 응답 메시지를 다시 반송하는 방법을 실시한다. 따라서, 이벤트 매니저(12)는 어떤 엔티티들(내부 엔티티 또는 외부 엔티티)이 통지의 수신을 확인 응답했었는지에 대하여 감시할 수 있다. 모든 수신지들이 통지의 수신을 확인 응답했을 경우, 통지를 트리거링하였던 이벤트들은 이벤트를 처리하는 관점에서 더 이상 필요없게 된다. 내부 또는 외부 엔티티들은 통지에 응답하여 추가 처러 단계를 수행할 수 있다. 그러나, 이벤트 기반 시스템에서는, 필요에 따라, 엔티티들이 상호접속된 모바일 시스템의 어떤 엔티티에 추가 정보를 통신해야 할 필요가 있다면, 이들 엔티티는 이벤트 매니저(12)에 의한 추가 처리를 위하여 신규 이벤트를 모바일 허브(1)로 간단히 전송한다. 그 후, 이러한 이벤트는 상술한 방식과 동일한 방식으로 처리되어진다.
그러나, 이벤트 엔진(12)이 대응 타이머의 만료 시간 이전에 최종 ACK를 수신한 경우에는, 모든 통지받은 엔티티들로부터의 확인 응답 메시지(ACK)의 수신시, 이벤트는 간단히 버퍼로부터 폐기된다. 대응하는 타이머의 만료 시간이 초과되기 전에 예상되는 확인 응답(이 확인 응답은 통지받은 엔티티로부터 예상되는 것임)을 전부 수신하는 것이 아닌 한, 타이머가 만료 시간을 초과할 때 버퍼로부터 이벤트를 폐기한다. 이에 의해, 이벤트 관련 통지의 수신지가 브레이크다운, 접속해제 모 드 등과 같은 어떤 이유로 통지를 확인 응답할 수 없는 이벤트에 의해 버퍼가 차단되는 것을 방지한다.
도 2의 모바일 허브는 또 다른 특성을 제공하는데, 그 특성이란, 엔티티들이 ACK 대신에 이벤트 주석이 첨부된, 즉, 주석이 첨부된 ACK로 응답하여, 저장되는 이벤트를 증가시킬 수 있다는 것이다. 이 경우, 이벤트 매니저(12)는 주석 첨부로 버퍼(11)에 저장되는 이벤트를 업데이트하고 그 이벤트에 대한 타이머를 재설정한 다음, 이벤트에 주석을 첨부시킨 엔티티를 제외한 모든 가입된 엔티티에 그 이벤트를 통지한다.
일반적으로, 주석을 첨부한 이벤트는 어떤 엔티티/가입자가 추가 데이터를 기존 이벤트에 제공할 수 있는지, 그에 따라, 그 이벤트에 주석을 첨부할 수 있는지의 확률을 제공한다. 이러한 주석 첨부 메카니즘에 대한 배경 원리는 모든 주석 첨부가 모든 다른 관심의 대상인 엔티티에 대하여 이용가능하게 이루어질 수 있다는 점에 있다. 이러한 메카니즘은 이벤트 매니저에 의해 이벤트를 처리하는 속도의 향상에 기여한다. 그러나, 주석을 첨부하는 권리는 이미 통지받은 엔티티에 대해서는 승인될 수 없다. 또한, 어댑터는 필요에 따라, 통과시킨 이벤트를 코멘트할 수 있다.
도 2에 따르면, 버퍼(11)에는 실제로 "그린 이벤트(green event)"와 "레드 이벤트(red event)"인 2 개의 이벤트가 있다. (17과 12 사이에 점선으로 표기된) 레드 이벤트는 어댑터(17)에 의해 이벤트 엔진(12)으로 전달된다. 이벤트 엔진(12)은 어댑터(14)의 레지스트리를 적극 수용한다. 이벤트 엔진(12)은 레드 이벤트를 그 외 가입된 어댑터(15 및 16)에 통지한다. 어댑터(16)는 레드 이벤트의 수신을 간단히 확인 응답하고 어댑터(15)는 레드 이벤트에 주석을 첨부한 다음, 그 주석이 첨부된 레드 이벤트를 확인 응 응답과 함께 이벤트 엔진(12)으로 반송한다. 이벤트 엔진(12)은 레드 이벤트와 주석을 그 외의 어댑터에 재분배하며, 이 경우에는, 어댑터(16)에 재분배하였다. 어댑터(16)는 주석이 첨부된 이벤트의 수신을 다시 확인 응답한다. 모든 어댑터가 모든 이벤트(및 그 이벤트에 주석이 첨부된 버전)의 수신을 확인 응답하면, 이벤트 엔진(12)은 원형 버퍼로부터 레드 이벤트를 제거할 수 있다.
그린 이벤트의 경우에는, 이벤트 만료 시간이 경과하면, 그후, 이벤트 엔진이 마찬가지로 원형 버퍼에서 그린 이벤트를 제거한다.
어댑터 및 내부 엔티티는 이벤트 필터(예를 들어, 필터 패턴)를 제공하여 어떤 특정 종류의 이벤트에 관심이 있음을 나타낼 수 있다. 이벤트 엔진은 이들 이벤트를 필터 패턴과 정합되는 특정 어댑터로 전달만 한다. 또한, 이벤트 엔진은 이벤트와 매칭하지 않는 필터 패턴을 가진 어떠한 어댑터도, 그 특정 이벤트에 대하여 통지받은 파티들의 세트에 추가시키지 않는다. 만료 시간 파라미터를 조정하여 이벤트 엔진에 의해 어댑터로 송신되는 통지에 현재값을 포함시킴으로써, 시스템은 개개의 사용 시나리오에 적용될 수 있고 또한 변경 정보(change)를 통지하여 어댑터로 하여금 그에 대응하도록 한다.
도 3은 또 다른 모바일 허브(1)를 개략적으로 도시한 것이다. 다시, 이벤트 매니저(12)가 원형 버퍼(11)를 이용하여 이벤트를 처리하여 임시로 이벤트를 저장 한다. 타이머 유닛(13)은 모든 저장된 이벤트에 대해 타이머를 제공하며, 등록 리스트는 원형 버퍼(11)에 저장되는 이벤트 중 어느 이벤트가 엔티티에게 관심의 대상으로 되어 송신되어야 하는 것인지의 정보를 이벤트 매니저(12)에 제공한다.
2개의 내부 엔티티 또는 에이전트가 도면 번호 17 및 18로 표기되어 제공된다. 외부 엔티티들과 이벤트 매니저(12) 간의 통신을 지원하기 위하여 3개의 어댑터(15, 151, 16)가 제공된다. 2개의 외부 엔티티(2 및 3)가 시각적으로 표시되어 있으며 모바일 허브(1)에 접속되어 있는데, 센서를 포함하는 외부 엔티티(2)는 블루투스를 통하여 모바일 허브(1)에 접속되어 있으며, "서비스"라 하는 외부 엔티티(3)은 GRPS를 통한 네트 접속을 통하여 모바일 허브(1)에 접속되어 있다. 블록(10)은 허브의 오퍼레이팅 시스템을 나타낸다. 도면 부호(101 - 104)는 보다 많은 하드웨어 관점에서 본 엘리먼트를 나타내는데, 블록(101)은 GRPS 인터페이스를 나타내며, 블록(102)은 블루투스 인터페이스를 나타내며, 블록(103)은 모바일 허브의 저장 수단을 나타낸다. 블록(104)은 모바일 허브의 SIM(SIM = 가입자 아이덴티티 모듈)을 나타낸다. 도 3으로부터 유도될 수 있는 바와 같이, 외부 엔티티(2)와 같은 외부 디바이스는 블루투스 인터페이스(102)를 통하여 모바일 허브에 접속되어 있다. 그러면, 어댑터가 이벤트 표기를 변환하기 위한 외부 디바이스에 할당되는데, 이 외부 디바이스는 도 3의 실시형태에 따른 어댑터(15)이다. 일반적으로, 어댑터는 전체 인터페이스에 할당될 수 있으며, 다른 방법으로는 특정 엔티티에 할당될 수도 있다.
모바일 허브를 액세스하는데 필요한 최소의 API 세트는 엔티티를 등록하기 위한 명령 "register ()", 엔티티를 등록 해제하기 위한 명령 "deregister ()" 및 이벤트를 전달하기 위한 명령 "post ()" 등을 포함할 수 있다.
예를 들어, 예시적인 어댑터는 구성 및 허브의 필요성에 종속되어 모바일 허브에서 구현될 수 있는 하나 이상의 어댑터로서,
● 하나 이상의 센서에 상호 접속하는 센서 어댑터,
● 예를 들어 백업 용의 저장 장치에 모바일 허브를 상호 접속시키는 영구 저장 어댑터,
● 인터넷 프로토콜 기반 서비스에 접속하는 HTTP 어댑터,
● 진단 툴에 상호 접속하는 디버그 어댑터,
● WLAN 어댑터, SMS 어댑터와 같은 통신 어댑터 등이 있다.
인터넷 엔티티들은, 예를 들어,
● 카렌더 엔티티,
● 알람 엔티티,
● 디바이스 디스커버리 엔티티,
● 디바이스 감시 엔티티,
● 데이터 감시 엔티티,
● 구성 엔티티로 구현될 수 있다.
도 4는 주석이 첨부된 이벤트의 특성에 구체적으로 초점을 맞춘 본 발명의 일 실시형태에 따른 예시적인 이벤트 플로우를 나타낸다.
예를 들어, 도 2 또는 도 3의 도면에 따른 외부 엔티티(2)일 수 있는 센서는 신규값 val i를 픽업한 다음 블루투스를 통하여 모바일 허브에 송신한다. 이 메시지가 이벤트이다. 도 2의 어댑터(15)일 수 있는 대응하는 센서 어댑터가 그 신규값 val i을 포함하는 이벤트의 외부 표현을 그 표현이 예를 들어 이벤트 0. l. x. y. z로 되는 이벤트의 내부 표현으로 변환한다. 이러한 표기는 도 5를 참조하면 보다 전반적으로 이해될 수 있다. 이러한 변환 이후에, 신규 표기의 이벤트가 센서 어댑터에 의해 모바일 허브의 이벤트 처리 시스템에 주입된다.
예를 들어 도 2의 등록 리스트(19)인 등록 리스트에 따르면, 이벤트 매니저는 가입된 엔티티들, 즉, 에이전트와 어댑터들에 통지한다. 이러한 통지시, 도 2의 모바일 허브의 에이전트(17)는 이벤트를 주석과 함께 이벤트 매니저에 반송한다(여기서의 이 통지는 이벤트에 일치함). 이벤트가 네트워크에 대한 관심의 대상이 되는 것으로 에이전트가 표현하는 바와 같이, "이벤트가 네트워크에 대하여 반복되어야 한다"는 것으로 주석이 표현될 수 있다. 주석이 명시적으로 수신인을 표시하기 때문에, 등록 리스트는 적절한 통지를 가능하게 하기 위하여 "이벤트 또는 주석이 명시적으로 수신인을 제공하고 이 수신인만이 관심의 대상으로 되는 엔티티이다"와 같은 엔트리를 제공할 수 있다. 따라서, 이벤트 엔진은 이 경우 단독으로 GSM/GPRS 어댑터인 가입된 엔티티들에 통지한다. 따라서, 이벤트 엔진은 도 2의 어댑터(16)일 수 있는 대응하는 네트 어댑터에 이벤트를 송신하다. 그 후, 네트 어댑터(16)는 그 이벤트를 SMS (단문 메시지 서비스)로 변환하고 그 SMS를 송출시킨다.
도 5는 대응하는 이벤트 표기에 반영되는 이벤트 구조를 나타낸다. 따라서, 이벤트를 카테고리화하는 분류 방식이 도입된다. 이 방식에 따르면, 제 1 레벨에서 는, 이벤트가 센서 이벤트와 엑츄에이터 이벤트로 구별된다. 센서 이벤트는 시스템에 데이터를 보고한다. 예를 들어, 온도 센서는 온도 측정값을 전달하고 GSM 센서는 입력되는 전화 호출 및 호출자 ID를 보고하며, 심박수 센서는 심박수를 보고하는 것 등이 있다. 액츄에이터 이벤트는 차례대로 액션이 발생할 것을 요청한다. 액츄에이터 이벤트는 코맨드를 나타낸다. 예를 들어, 저장 이벤트는 첨부한 데이터 엘리먼트가 어느 곳에 저장되어야 하는지를 나타내는 신호이고 GSM 전화 호출 이벤트는 GSM 전화 호출이 시작되어야 하는지를 나타내는 신호이다. 도 5에 따르면, 이벤트 표기의 첫번째 자리는 그 이벤트가 센서 이벤트인지 액츄에이터 이벤트인지를 나타내는 자리이며, 여기서, 상술한 이벤트의 센서 이벤트 클래스는 첫번째 자리에 (0) 으로 표시되며 액츄에이터 이벤트 클래스는 첫번째 자리에 (1)로 표시된다.
센서 이벤트와 액츄에이터 이벤트 간의 상위 레벨 구별과는 별도로, 두번째 레벨 이벤트 카테고리는 이벤트 소스를 제공하며, 세번째 레벨 이벤트 카테고리는 도메인을 제공하며 네번째 레벨 이벤트 카테고리는 센서/액츄에이터를 제공한다. 이벤트 소스는 외부 또는 내부 소스일 수 있으며, 항상 모바일 허브와 관련되어 있다. 도메인은 어떤 이벤트가 일반적으로, 전화 서브 시스템, 메디컬 도메인, 오토모티브 도메인 등과 같은 시스템에 관련되어 있는지를 나타낼 수 있다. 센서/액츄에이터 분류는 가능한 가장 넓은 의미로 용어, 센서 및 액츄에이터를 이용하는데, 센서는 단일 비트의 정보 뿐만 아니라 어떤 매우 복잡한 정보를 제공하는 디바이스일 수 있으며, 이와 유사하게, 액츄에이터는 단일 비트의 정보를 획득하거나 또는 복잡한 세트의 명령을 획득하여 그 정보에 대응하여 동작할 수 있다.
각각의 레벨은 열거된 항목을 잘 규정하는 목록을 제공한다. 이벤트를 "주소지정"하기 위해서는, 투플 방식을 이용하는 것이 바람직한데, 예를 들어, "as. exin.dom.dev"는 이벤트가 표기되어 하는 순서를 제공하는 것으로서, 투플의 첫번째 필드는 액츄에이터/센서 이벤트의 값을 나타내며, 두번째 필드는 이벤트가 내부 디바이스에서 발생하는지 외부 디바이스에서 발생하는지를 나타내며, 세번째 필드는 콘텐츠 도메인을 나타내며, 네번째 필드는 디바이스의 종류에 대하여 나타낸다.
이러한 이벤트 표기와 함께, 외부의 메디칼 심박수 센서 이벤트는 예를 들어, 투플 0.1.10.1로 주소 지정될 수 있는데, 여기서, 첫번째 0은 이 이벤트가 센서에 의해 발생되는 것임을 나타내고 그 다음인 1은 외부 디바이스로부터 발생되는 것임을 나타내며, 그 다음인 10은 메디컬 도메인을 나타내며, 마지막인 1은 심박수 센서를 특성화한다. 도 5에 따르면, 다음의 레벨은 심박동 센서가 제공 중에 있는 데이터가 심박동 데이터임을 나타낸다. 그 다음의 레벨에서는, 네번째 레벨에 있는 데이터의 종류가 특정되어 있다. 따라서, 하위 레벨 엔트리들은 상위 레벨 엔트리에 의존할 수 있다. 최하위 레벨의 엔트리는 시간 기준으로 제공된다.
도 5에 도시되어 있는 그 외의 이벤트 투플은 스캐너인 내부 통신 엔티티로부터의 센서 데이터를 전달하는 이벤트를 제공한다. 스캐너 데이터는 신규 디바이스가 자신의 MAC 어드레스로 디스커버되었음을 나타낸다.
이러한 필드 중 몇몇 또는 모두는 필드의 계층적 시스템에 종속될 수 있다. 필드의 도입에 의해 이벤트를 용이하게 필터링할 수 있고 모르는 이벤트는 스킵할 수 있다.
또한, 또 다른 2개의 투플이 "어드레스" 부분을 항상 추적하는 바람직한 실시형태로서 도입되는데, 첫번째 투플은 잘 규정된 데이터 서브필드(예를 들어, 메디컬에서의 혈압 커프 센서의 경우, 최소 혈압, 최대 혈압, 심박수)를 나타내며, 두번째 투플은 데이터 종류(정수, 불린(boolean), 시간, 날짜, 스트링, 바이너리)를 나타낸다. 또한, 각각의 이벤트는 그 이벤트를 이벤트 시스템에 주입시킨 어댑터의 유니버설 ID에 더하여 그 주입 시간을 표기하는 타임스탬프와 함께 전달할 수 있다. 이벤트는 적어도 이벤트 헤더(UID, 이벤트 타임스탬프 및 이벤트 어드레스를 포함함)로 바람직하게 구성된다. 옵션으로, 이벤트는 추가 데이터를 포함하는 서브 필드를 포함한다. 어댑터/에이전트는 이벤트의 수신시, 수신된 이벤트에 주석을 첨부할 수 있다. 이벤트에 주석이 첨부되는 경우, 이벤트 엔진은 그 이벤트를 모든 가입된 에이전트/어댑터들에 재분배한다. 옵션으로, 대역폭이 유지되는 경우, 최초 소스와 주석이 첨부된 소스를 필터링시킬 수도 있다.
상술한 이벤트 표기는 허브 내부 표기를 나타낸다. 따라서, 어댑터들이 외부 이벤트 표기를 내부 이벤트 표기로 변환하거나 내부 이벤트 표기를 외부 이벤트 표기로 변환하는 역할을 하기 때문에, 어댑터는 이용된 표기를 인식해야 한다. 물론, 에이전트의 형태에서는, 에이전트가 이벤트를 처리하기 때문에, 에이전트 형태에서의 내부 엔티티도 또한 이용된 이벤트 표기를 인식하고 있다. 위에서 도입된 이벤트 표기와 결합하여, 예를 들면, 첫번째 3개의 필드에서 "0.1.10...."로 시작하는 수신 이벤트만을 평가하는 것과 같은 필터링에 의해 이벤트를 처리하여 예를 들어 메디컬 센서로부터의 센서 데이터만을 처리하는 것이 용이하게 된다. 에이전트는 이러한 점으로 특성화될 수 있고 메디컬 센서로부터의 센서 데이터를 처리하는데 이용가능한 대응하는 처리 절차들을 갖고 있다.
예를 들어, 사람의 심박동을 픽업하고 각각의 심박동 마다 블루투스 신호를 생성하는 가슴 스트랩을 고려하여 본다. 모바일 허브 상의 어댑터가 각각의 심박동을 타임스탬프하고, 대응하는 이벤트가 0.1.10.1.1.5으로 라벨링되면,
● 첫번째 자릿수 0은 센서 이벤트(액츄에이터 코맨드가 아님)임을 나타내며,
● 그 다음 자릿수 1은 센서 이벤트가 외부 센서에 의해 제공되는 것임을 나타내며,
● 그 다음 자릿수 10은 센서가 메디컬 센서임을 나타내며,
● 그 다음 자릿수 1은 센서가 심박수 센서임을 나타내며,
● 그 다음 자릿수 1은 심박수 센서가 심박동을 감지하는 것임을 나타내며,
● 그 다음 자릿수 5는 정보가 심박동의 타임스탬프임을 나타낸다.
이러한 표기를 이용한 이점으로는, 이러한 표기는 어댑터가 관심이 없는 이벤트를 매우 쉽게 필터링시킬 수 있다는 것이며, 예를 들어, 외부 메디컬 센서 이벤트에만 관심이 있는 어댑터는 0.1.10인 프리픽스를 갖지 않는 모든 이벤트를 폐기할 수 있거나 또는 이해하지 못하는 정보를 폐기할 수 있으며, 예를 들어, 신규 센서가 심박동의 타임스탬프 뿐만 아니라 현재의 평균처리된 심박수를 제공하는 경우, 현재의 평균 심박수 데이터를 무시하고 타임스탬프된 심박동 데이터만을 획득할 수 있다.
마지막으로, 모바일 허브의 이벤트 처리 시스템의 바람직한 구현예는 다음과 같이 도입할 수 있다. 본 발명에 따른 이벤트 처리 시스템은 리눅스 플랫폼 상에서 바람직하게 구현될 수 있으며, 이벤트는 공유된 메모리 영역에 저장될 수 있다. 이벤트 통지는 유닉스 시스템 V 메시징에 의해 구현될 수 있다. 다른 방법으로, 이벤트 처리 시스템은 Symbian의 이동 전화 오퍼레이팅 시스템 상에서 구현될 수 있다. 여기서, 이벤트는 객체 호출을 통하여 분배될 수 있다.

Claims (26)

  1. 이벤트들을 저장하는 원형 버퍼(11);
    상기 버퍼(11)에 저장되는 이벤트들의 저장 기간을 감시하는 타이머들로서, 상기 버퍼(11)에 저장된 모든 이벤트들은 각각 관련된 타이머를 가지고 있는 것인, 상기 타이머들; 및
    상기 관련된 타이머의 만료 시간이 초과될 때, 상기 버퍼(11)로부터 이벤트를 폐기하도록 구성되는 이벤트 매니저(12)
    를 포함하는 모바일 허브.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 제1항에 있어서, 이벤트의 내부 표현(internal representation)을 외부 엔티티(2, 3)가 이해가능한 이벤트의 표현으로 변환하거나 이벤트의 외부 표현을 내부 엔티티가 이해가능한 이벤트의 표현으로 변환하는 어댑터(15, 16)를 포함하는 모바일 허브.
  10. 제1항에 있어서, 이벤트들을 처리하는 내부 엔티티(17,18)를 포함하는 모바일 허브.
  11. 삭제
  12. 제1항에 있어서, 이벤트의 출현을 통지받아야 하는 엔티티들을 식별하는 등록 리스트(19)를 포함하는 모바일 허브.
  13. 삭제
  14. 삭제
  15. 모바일 허브에서 이벤트들을 관리하는 방법으로서,
    원형 버퍼(11)에 이벤트를 저장하는 단계;
    상기 저장되는 이벤트의 저장 기간을 감시하는 단계로서, 상기 버퍼(11)에 저장된 모든 이벤트들은 각각 관련된 타이머를 가지고 있는 것인, 상기 감시 단계; 및
    상기 저장 기간이 상기 관련된 타이머의 만료 시간을 초과할 때, 상기 버퍼(11)로부터 상기 이벤트를 폐기하는 단계
    를 포함하는 모바일 허브에서의 이벤트 관리 방법.
  16. 제15항에 있어서, 이벤트의 도달시 등록된 엔티티들에게 통지하는 단계를 포함하는 모바일 허브에서의 이벤트 관리 방법.
  17. 삭제
  18. 삭제
  19. 제15항에 있어서,
    엔티티들로 전송된 통지에 응답하여 상기 엔티티들로부터 수신된 확인 응답 메시지들을 감시하는 단계;
    특정 이벤트와 관련하여 통지된 엔티티들 각각으로부터 상기 타이머의 만료 시간 전에 확인 응답 메시지가 수신되었을 때, 상기 버퍼(11)로부터 상기 특정 이벤트를 폐기하는 단계; 및
    상기 관련된 타이머의 만료 시간이 초과되고, 특정 이벤트와 관련하여 통지된 모든 엔티티들로부터 상기 타이머의 만료 시간 전에 확인 응답 메시지가 수신되지 않았을 때, 상기 버퍼(11)로부터 상기 특정 이벤트를 폐기하는 단계
    를 포함하는 모바일 허브에서의 이벤트 관리 방법.
  20. 제15항에 있어서, 등록된 엔티티들에게 주석(annotation)을 분배하는 단계를 포함하며, 상기 주석은 확인 응답 메시지와 결합하여 수신되는 것인 모바일 허브에서의 이벤트 관리 방법.
  21. 삭제
  22. 삭제
  23. 삭제
  24. 제15항에 있어서, 이벤트의 출현은 이벤트 표기(notation)에 따르며, 상기 표기는 이벤트 마다 상이한 필드들을 포함하고, 각각의 필드는 정보의 특정 카테고리를 특정하는 것인 모바일 허브에서의 이벤트 관리 방법.
  25. 삭제
  26. 모바일 허브의 처리 유닛에 로딩되는 경우, 제15항, 제16항, 제19항, 제20항, 또는 제24항 중 어느 한 항에 따른 방법을 수행하는 컴퓨터 프로그램 코드 수단을 포함하는 컴퓨터 판독가능 기록 매체.
KR1020067010110A 2003-11-25 2004-11-12 모바일 허브 및 모바일 허브에서의 이벤트 관리 방법 KR100906176B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03405843.8 2003-11-25
EP03405843 2003-11-25

Publications (2)

Publication Number Publication Date
KR20060135637A KR20060135637A (ko) 2006-12-29
KR100906176B1 true KR100906176B1 (ko) 2009-07-03

Family

ID=34626448

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067010110A KR100906176B1 (ko) 2003-11-25 2004-11-12 모바일 허브 및 모바일 허브에서의 이벤트 관리 방법

Country Status (6)

Country Link
US (1) US7757019B2 (ko)
EP (1) EP1687947B1 (ko)
JP (1) JP4912152B2 (ko)
KR (1) KR100906176B1 (ko)
CN (1) CN1886944A (ko)
WO (1) WO2005053222A2 (ko)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070136490A1 (en) * 2005-12-14 2007-06-14 Oracle International Corporation Wireless hub and data store
US8131566B2 (en) 2006-10-24 2012-03-06 Medapps, Inc. System for facility management of medical data and patient interface
US8126733B2 (en) * 2006-10-24 2012-02-28 Medapps, Inc. Systems and methods for medical data interchange using mobile computing devices
US8126731B2 (en) * 2006-10-24 2012-02-28 Medapps, Inc. Systems and methods for medical data interchange activation
US20080097912A1 (en) * 2006-10-24 2008-04-24 Kent Dicks Systems and methods for wireless processing and transmittal of medical data through an intermediary device
US8126730B2 (en) * 2006-10-24 2012-02-28 Medapps, Inc. Systems and methods for storage and forwarding of medical data
US20080097914A1 (en) * 2006-10-24 2008-04-24 Kent Dicks Systems and methods for wireless processing and transmittal of medical data through multiple interfaces
US20080097550A1 (en) * 2006-10-24 2008-04-24 Kent Dicks Systems and methods for remote patient monitoring and command execution
US20080097917A1 (en) * 2006-10-24 2008-04-24 Kent Dicks Systems and methods for wireless processing and medical device monitoring via remote command execution
US8126734B2 (en) * 2006-10-24 2012-02-28 Medapps, Inc. Systems and methods for adapter-based communication with a medical device
US8126732B2 (en) 2006-10-24 2012-02-28 Medapps, Inc. Systems and methods for processing and transmittal of medical data through multiple interfaces
US8966235B2 (en) * 2006-10-24 2015-02-24 Kent E. Dicks System for remote provisioning of electronic devices by overlaying an initial image with an updated image
US8126735B2 (en) * 2006-10-24 2012-02-28 Medapps, Inc. Systems and methods for remote patient monitoring and user interface
US8126729B2 (en) * 2006-10-24 2012-02-28 Medapps, Inc. Systems and methods for processing and transmittal of data from a plurality of medical devices
US8126728B2 (en) 2006-10-24 2012-02-28 Medapps, Inc. Systems and methods for processing and transmittal of medical data through an intermediary device
US9543920B2 (en) * 2006-10-24 2017-01-10 Kent E. Dicks Methods for voice communication through personal emergency response system
US8954719B2 (en) * 2006-10-24 2015-02-10 Kent E. Dicks Method for remote provisioning of electronic devices by overlaying an initial image with an updated image
US9349114B2 (en) * 2006-10-31 2016-05-24 Hewlett Packard Enterprise Development Lp Systems and methods for managing event messages
US20090215490A1 (en) * 2008-02-27 2009-08-27 Mediatek Inc. Methods for handling proactive commands for one or more subscriber identity cards and systems utilizing the same
JP5610773B2 (ja) * 2010-01-06 2014-10-22 キヤノン株式会社 メッセージ処理装置およびメッセージ処理方法
US20120182939A1 (en) * 2011-01-14 2012-07-19 Qualcomm Incorporated Telehealth wireless communication hub and service platform system
CN102982063A (zh) * 2012-09-18 2013-03-20 华东师范大学 一种基于关系关键词扩展的元组精化的控制方法
US9066212B2 (en) 2012-10-30 2015-06-23 Qualcomm Incorporated Offloading call processing and call hosting for a small group call to a client device
US9643770B2 (en) 2012-12-03 2017-05-09 Mylan Inc. System and method for medicament storage, dispensing, and administration
US9179260B2 (en) 2012-12-03 2015-11-03 Mylan Inc. Medicament information system and method
US20140155827A1 (en) 2012-12-03 2014-06-05 Mylan, Inc. Medicament information system and method
US9692829B2 (en) 2012-12-03 2017-06-27 Mylan Inc. Medication delivery system and method
US9584379B2 (en) * 2013-06-20 2017-02-28 Microsoft Technology Licensing, Llc Sorted event monitoring by context partition
US9369373B2 (en) 2014-08-25 2016-06-14 Seed Labs Sp. Z O.O. Peer-to-peer building automation system without knowledge being required of network topology
JP6766034B2 (ja) * 2014-09-11 2020-10-07 マイラン インコーポレイテッド 薬剤送達システム及び方法
US10560135B1 (en) 2015-06-05 2020-02-11 Life365, Inc. Health, wellness and activity monitor
US9974492B1 (en) 2015-06-05 2018-05-22 Life365, Inc. Health monitoring and communications device
US10185513B1 (en) 2015-06-05 2019-01-22 Life365, Inc. Device configured for dynamic software change
US11329683B1 (en) 2015-06-05 2022-05-10 Life365, Inc. Device configured for functional diagnosis and updates
US9832082B2 (en) * 2015-06-30 2017-11-28 Mist Systems, Inc. Monitoring wireless access point events
US10388411B1 (en) 2015-09-02 2019-08-20 Life365, Inc. Device configured for functional diagnosis and updates
US9942696B2 (en) * 2015-09-14 2018-04-10 Telefonaktiebolaget Lm Ericsson (Publ) Communicating event data from an event device to an action device
US10516651B2 (en) * 2015-12-22 2019-12-24 Intel IP Corporation Securely routing sensor data from sensors to a trusted execution environment (TEE)
ES2942668T3 (es) * 2017-03-23 2023-06-05 Bayer Ag Apoyo para los pacientes con la ingesta repetida de medicamentos
US10528131B2 (en) * 2018-05-16 2020-01-07 Tobii Ab Method to reliably detect correlations between gaze and stimuli
US11490458B2 (en) * 2020-08-04 2022-11-01 Abl Ip Holding Llc Wireless hub emulator
US11716639B2 (en) 2021-08-10 2023-08-01 Abl Ip Holding Llc Self-healing of repeater formation in a network

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1326388A2 (en) * 2002-01-05 2003-07-09 Lg Electronics Inc. System and method for avoiding stall using timer for high-speed downlink packet access system

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2260835A (en) * 1991-10-24 1993-04-28 Ibm Data processing system
AU706160B2 (en) * 1994-06-08 1999-06-10 Hughes Electronics Corporation Apparatus and method for hybrid network access
KR0169248B1 (ko) * 1996-07-24 1999-02-01 양승택 패킷 상호 연결망에서의 메시지 송신 장치 및 메시지 송신 제어방법
US6689091B2 (en) * 1996-08-02 2004-02-10 Tuan Bui Medical apparatus with remote control
US5850388A (en) * 1996-08-02 1998-12-15 Wandel & Goltermann Technologies, Inc. Protocol analyzer for monitoring digital transmission networks
JPH1063547A (ja) * 1996-08-19 1998-03-06 Nec Eng Ltd アラーム報知システム
US6640246B1 (en) * 1999-09-17 2003-10-28 Ge Medical Systems Global Technology Company, Llc Integrated computerized materials management system
JP2002014940A (ja) * 2000-06-28 2002-01-18 Mitsubishi Electric Corp プロセス通信装置
US6665385B2 (en) * 2001-04-23 2003-12-16 Cardionet, Inc. Medical monitoring system having multipath communications capability
US7154903B2 (en) * 2001-10-19 2006-12-26 Telefonaktiebolaget Lm Ericsson (Publ) System and method for management of data associated with a dormant mobile terminal
JP2003197881A (ja) 2001-12-27 2003-07-11 Seiko Epson Corp 半導体集積回路、半導体集積回路の製造方法、半導体素子部材、電気光学装置、電子機器
US6886141B1 (en) * 2002-10-07 2005-04-26 Qlogic Corporation Method and system for reducing congestion in computer networks
JP3741371B2 (ja) * 2002-11-22 2006-02-01 株式会社日立製作所 イベント制御装置およびイベント制御方法
JP3958714B2 (ja) * 2003-06-16 2007-08-15 ソフトバンクモバイル株式会社 携帯通信機器

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1326388A2 (en) * 2002-01-05 2003-07-09 Lg Electronics Inc. System and method for avoiding stall using timer for high-speed downlink packet access system

Also Published As

Publication number Publication date
EP1687947B1 (en) 2012-10-03
EP1687947A2 (en) 2006-08-09
WO2005053222A2 (en) 2005-06-09
JP2007514996A (ja) 2007-06-07
US20060242295A1 (en) 2006-10-26
KR20060135637A (ko) 2006-12-29
CN1886944A (zh) 2006-12-27
JP4912152B2 (ja) 2012-04-11
US7757019B2 (en) 2010-07-13
WO2005053222A3 (en) 2005-07-14

Similar Documents

Publication Publication Date Title
KR100906176B1 (ko) 모바일 허브 및 모바일 허브에서의 이벤트 관리 방법
EP3824383B1 (en) Systems and methods for facilitating clinical messaging in a network environment
US11373753B2 (en) Converting pump messages in new pump protocol to standardized dataset messages
RU2004127857A (ru) Метапространство: промежуточное коммуникационное программное обеспечение для частично соединенных одноранговых сетей мобильной связи с произвольной структурой
US20070088572A1 (en) System and method for alert escalation processing in healthcare information systems
WO2008089249A1 (en) Facilitation of electronic prescription requests
Strowes et al. An event service supporting autonomic management of ubiquitous systems for e-health
Barnes et al. Performance analysis of client/server versus agent based communication in wireless sensor networks for health applications
KR20210131641A (ko) Icn 기반의 의료 정보 통신 시스템 및 방법
KR20010063245A (ko) 교환기 이벤트 전달 방법

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
LAPS Lapse due to unpaid annual fee