Nothing Special   »   [go: up one dir, main page]

KR100634209B1 - SPI-based presence server and control method thereof - Google Patents

SPI-based presence server and control method thereof Download PDF

Info

Publication number
KR100634209B1
KR100634209B1 KR1020040109044A KR20040109044A KR100634209B1 KR 100634209 B1 KR100634209 B1 KR 100634209B1 KR 1020040109044 A KR1020040109044 A KR 1020040109044A KR 20040109044 A KR20040109044 A KR 20040109044A KR 100634209 B1 KR100634209 B1 KR 100634209B1
Authority
KR
South Korea
Prior art keywords
user agent
database
presence user
information
subscription
Prior art date
Application number
KR1020040109044A
Other languages
Korean (ko)
Other versions
KR20060070339A (en
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 한국전자통신연구원
Priority to KR1020040109044A priority Critical patent/KR100634209B1/en
Publication of KR20060070339A publication Critical patent/KR20060070339A/en
Application granted granted Critical
Publication of KR100634209B1 publication Critical patent/KR100634209B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/54Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/28Timers or timing mechanisms used in protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Telephonic Communication Services (AREA)

Abstract

본 발명은 프리젠스 서버 및 그 제어 방법에 관한 발명이다. 특히, 안정적인 프리젠스 서비스를 제공할 수 있는 SIP 기반의 프리젠스 서버 및 그 제어 방법에 관한 발명이다. The present invention relates to a presence server and a control method thereof. In particular, the present invention relates to a SIP-based presence server capable of providing a stable presence service and a control method thereof.

상술한 목적을 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면은 상태 정보 및 가입 정보를 저장하는 데이터 베이스, 및 상태 정보 및 가입 정보를 상기 데이터 베이스에 저장, 갱신 독출 및 삭제하며 프리젠스 유저 에이전트 통신을 수행하는 프리젠스 서버 프로세서를 포함하는 프리젠스 서버를 제공한다.As a technical means for achieving the above object, a first aspect of the present invention provides a database for storing status information and subscription information, and storing, updating, reading, and deleting status information and subscription information in the database. A presence server including a presence server processor that performs agent communication is provided.

본 발명에 의한 SIP 기반의 프리젠스 서버 및 그 제어 방법은 트랜잭션 정보 및 가입 정보를 별도의 데이터베이스 서버에 저장 및 관리함으로써, 서버의 성능과 안정성을 향상시킬 수 있다는 효과가 있다. The SIP-based presence server and its control method according to the present invention have the effect of improving the performance and stability of the server by storing and managing transaction information and subscription information in a separate database server.

프리젠스 서버, presence server, event driven presence server, sipPresence server, event driven presence server, sip

Description

SIP 기반의 프리젠스 서버 및 그 제어 방법 {PRESENCE SERVER BASED ON SIP AND CONTROL METHOD FOR THE SAME}SPI-based presence server and its control method {PRESENCE SERVER BASED ON SIP AND CONTROL METHOD FOR THE SAME}

도 1은 본 발명의 실시예에 의한 프리젠스 서버의 구조를 간략히 도시한 도면이다. 1 is a diagram schematically illustrating a structure of a presence server according to an embodiment of the present invention.

도 2는 프리젠스 서버가 다운되거나 정전등으로 인해 재구동되었을 경우 이전의 상태를 복구하는 방법의 각 단계를 나타내는 도면이다. 2 is a diagram illustrating each step of a method of recovering a previous state when the presence server is down or restarted due to a power failure.

도 3은 사용자 정책 이벤트가 발생되고 사용자의 결정이 허락인 경우의 사용자 정책 이벤트의 발생과정 및 처리과정의 일례를 설명하기 위한 도면이다. 3 is a view for explaining an example of the generation and processing of the user policy event when the user policy event is generated and the decision of the user is allowed.

도 4는 사용자 정책 이벤트가 발생되고 사용자의 결정이 불허인 경우의 사용자 정책 이벤트의 발생과정 및 처리과정의 일례를 설명하기 위한 도면이다. FIG. 4 is a diagram for explaining an example of a process and a process of generating a user policy event when a user policy event is generated and a decision of a user is not allowed.

도 5는 네트워크 이벤트인 SIP 메시지가 수신된 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, 인가되지 않은 사용자로부터 가입요청인 "SUBSCRIBE" 메시지를 수신한 경우의 처리 절차를 나타내는 도면이다. FIG. 5 is a diagram illustrating an example of a procedure of receiving and processing an event when a SIP message, which is a network event, is received. FIG. 5 is a diagram illustrating a processing procedure when a "SUBSCRIBE" message, which is a subscription request, is received from an unauthorized user.

도 6은 네트워크 이벤트인 SIP 메시지가 수신된 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, 인가된 사용자로부터 가입요청인 "SUBSCRIBE" 메시지를 수신한 경우의 처리 절차를 나타내는 도면이다. FIG. 6 is a diagram illustrating an example of a procedure of receiving and processing an event when a SIP message, which is a network event, is received. FIG. 6 is a diagram illustrating a processing procedure when a "SUBSCRIBE" message, which is a subscription request, is received from an authorized user.

도 7은 네트워크 이벤트인 SIP 메시지가 수신된 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, 사용자 상태 정보를 전달하는 "PUBLISH"라는 메시지를 수신한 경우의 처리 절차를 나타내는 도면이다.FIG. 7 is a diagram illustrating an example of a procedure for receiving and processing an event when a SIP message, which is a network event, is received. FIG. 7 is a diagram illustrating a processing procedure when a message “PUBLISH” for transmitting user status information is received.

도 8은 네트워크 이벤트인 SIP 메시지가 수신된 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, "NOTIFY"가 성공적으로 전달 및 처리되었음을 의미하는 "200" 응답(Response)을 수신한 경우의 처리 절차를 나타내는 도면이다.FIG. 8 is a diagram illustrating an example of a procedure for receiving and processing an event when a SIP message, which is a network event, is received. In case of receiving a “200” response indicating that “NOTIFY” has been successfully delivered and processed. It is a figure which shows a processing procedure.

도 9는 네트워크 이벤트인 SIP 메시지가 수신된 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, "200" 응답(Response)이 아닌 경우의 처리 절차를 나타내는 도면이다. FIG. 9 is a diagram illustrating an example of a procedure of receiving and processing an event when a SIP message, which is a network event, is received. FIG.

도 10은 타임아웃 이벤트가 발생한 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, 상태정보가 유효시간이 경과하여 삭제된 경우의 처리 절차를 나타내는 도면이다. FIG. 10 is a diagram illustrating an example of a procedure for receiving and processing an event when a timeout event occurs. FIG.

도 11은 타임아웃 이벤트가 발생한 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, 가입 트랜잭션의 유효시간이 경과한 경우의 처리 절차를 나타내는 도면이다. FIG. 11 is a diagram illustrating an example of a procedure for receiving and processing an event when a timeout event occurs. FIG.

도 12는 타임아웃 이벤트가 발생한 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, 프리젠스 서버가 "NOTIFY"를 송신하였으나 프리젠스 유저 에이전트로부터 "200" 응답을 수신하지 못한 경우의 처리 절차를 나타내는 도면이다. 12 is a diagram illustrating an example of a procedure for receiving and processing an event when a timeout event occurs, and a processing procedure when the presence server transmits "NOTIFY" but does not receive a "200" response from the presence user agent. It is a figure which shows.

본 발명은 프리젠스 서버 및 그 제어 방법에 관한 발명이다. 특히, 안정적인 프리젠스 서비스를 제공할 수 있는 SIP 기반의 프리젠스 서버 및 그 제어 방법에 관한 발명이다. The present invention relates to a presence server and a control method thereof. In particular, the present invention relates to a SIP-based presence server capable of providing a stable presence service and a control method thereof.

SIP(Session Initiation Protocol)는 IETF(Internet Engineering Task Force)에서 정의한 프로토콜로써, 인터넷 전화 서비스 등을 제공하기 위해 통신하고자 하는 상대방을 찾아 사용자 간의 호 설정, 호 정보 수정, 호 해지 등의 기능을 제공하는 호 제어 프로토콜이다. SIP는 복잡도가 낮고 확장성이 높아 인터넷 전화 서비스 뿐만 아니라, 인스턴트 메시징 및 프리젠스(presence) 서비스, 컨퍼런스 서비스 등에 활용되고 있다. Session Initiation Protocol (SIP) is a protocol defined by the Internet Engineering Task Force (IETF), which provides functions such as call setup, call information modification, and call termination between users by finding a counterpart to communicate to provide Internet telephony services. Call control protocol. SIP's low complexity and scalability make it ideal for Internet telephony, instant messaging and presence services, and conference services.

프리젠스 서비스는 상태 정보를 수신하여 저장하고 있다가 가입자로 등록한 사용자로부터 요구시 해당 상태 정보를 전달하는 것이다. 여기서 상태 정보는 일례로 특정 사용자가 온라인 상태인지 오프라인 상태인지에 관한 정보, 상기 특정 사용자가 통신의 가능성(availability)이 있는지, 인스턴트 메시징, VoIP(Voice on IP), 이동 전화, 이메일, 게임 등을 이용하여 통신할 의지(willingness)가 있는지, 음성 메일 가능, 비디오 가능, 이동 가능 등의 통신 능력(capability)이 있는지에 대한 정보를 포함할 수 있다. 프리젠스 서버는 프리젠스 에이전트 서버(presence agent server, PAS)라고도 하며 사용자에게 프리젠스 서비스를 제공하는 서버이다. The presence service receives and stores state information and delivers the state information when requested by a user registered as a subscriber. The status information may include, for example, information about whether a specific user is online or offline, whether the specific user has a possibility of communication, instant messaging, voice on IP (VoIP), mobile phone, email, games, and the like. Information about whether there is a willingness to communicate with the user, and whether there is communication capability such as voice mail capability, video capability, and mobility. The presence server, also called a presence agent server (PAS), is a server that provides presence services to users.

종래의 프리젠스 서버는 일반적으로 상태 정보만을 데이터베이스에 유지하고, SIP 가입(subscription) 정보들은 프로세스 메모리 일례로 RAM(random access memory) 등의 휘발성 메모리내에 유지가 되며 프로세스의 해당 가입들이 모두 종료될때까지 프로세스내에서 관리가 된다. 그리나, 프리젠스 서버는 대량의 가입 정보들이 생성 및 소멸되는 경우가 많고, 이 경우에는 메모리 관리의 난해함과 동시에 사용자 수와 가입 수에 비례하여 성능이 저하된다는 문제점이 있다. 또한, 서버가 다운되거나 정전등으로 인해 재구동되었을 경우 모든 가입 정보가 사라지게 되어 기존에 연결되어 있던 모든 클라이언트들이 다시 가입을 맺어야 하는 등의 서비스상의 문제를 발생시킨다. 또한, 이 과정에서 일시에 모든 가입들이 재 가입을 요구할 경우 서버의 부하는 한계점을 넘어설 수 있다는 문제점 있다. 여기에서 가입은 상대의 상태정보를 얻기 위한 절차를 의미하며, 가입 정보들로는 SIP 메시지에 포함된 "From", "To", "Call-ID", "CSeq" 헤더의 정보들과 가입의 상태를 표현하는 "Subscription_state" 헤더의 값 등이 포함되며, SIP 메시지가 송수신 될 때마다 가입 정보들은 갱신된다.Conventional presence servers generally maintain only state information in a database, and SIP subscription information is maintained in volatile memory, such as random access memory (RAM), for example process memory, until all of the corresponding subscriptions in the process are terminated. It is managed within the process. However, the presence server often generates and destroys a large amount of subscription information. In this case, there is a problem in that memory management is difficult and performance decreases in proportion to the number of users and the number of subscriptions. In addition, when the server is down or restarted due to a power failure, all the subscription information disappears, which causes a problem in the service such as all the clients connected to the existing need to sign up again. In addition, in this process, if all the subscriptions require re-subscription at one time, the load of the server may exceed the limit. In this case, the subscription means a procedure for obtaining the partner's status information. The subscription information includes the information of "From", "To", "Call-ID", and "CSeq" headers included in the SIP message and the status of the subscription. The value of the "Subscription_state" header to be expressed is included, and subscription information is updated each time a SIP message is transmitted and received.

따라서, 본 발명은 상술한 문제점을 해결하기 위한 것으로, 본 발명의 목적 은 가입 정보를 별도의 데이터베이스 서버에 저장 및 관리함으로써, 서버의 성능과 안정성을 향상시킨 SIP 기반의 프리젠스 서버 및 그 제어 방법을 제공하는데 있다.
Accordingly, an object of the present invention is to solve the above-described problem, and an object of the present invention is to store and manage subscription information in a separate database server, thereby improving the performance and stability of a server based SIP server and its control method To provide.

상술한 목적을 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면은 상태 정보 및 가입 정보를 저장하는 데이터 베이스, 및 상태 정보 및 가입 정보를 상기 데이터 베이스에 저장, 갱신 독출 및 삭제하며 프리젠스 유저 에이전트 통신을 수행하는 프리젠스 서버 프로세서를 포함하는 프리젠스 서버를 제공한다.As a technical means for achieving the above object, a first aspect of the present invention provides a database for storing status information and subscription information, and storing, updating, reading, and deleting status information and subscription information in the database. A presence server including a presence server processor that performs agent communication is provided.

본 발명의 제 2 측면은 상태 정보 및 가입 정보를 저장하는 데이터 베이스를 포함하는 프리젠스 서버의 재가동 방법에 있어서, 상기 프리젠스 서버가 상기 데이터 베이스에 기록된 마지막 접근 시간과 현재 시간과의 차이를 계산하는 단계, 상기 데이터 베이스에 기록된 가입 정보의 유효 시간에서 상기 계산된 차이를 차감하여 유효한 프리젠스 유저 에이전트와 유효하지 않은 프리젠스 유저 에이전트를 구분하는 단계, 상기 프리젠스 서버는 상기 유효하지 않은 프리젠스 유저 에이전트에게는 종료되었음을 알리는 메시지를 송신하는 단계; 및 상기 데이터 베이스에서 상기 유효하지 않은 프리젠스 유저 에이전트의 가입 정보를 삭제하는 단계를 포함하는 프리젠스 서버의 재가동 방법을 제공한다. According to a second aspect of the present invention, there is provided a method of restarting a presence server including a database storing state information and subscription information, wherein the presence server is configured to determine a difference between a current time and a last access time recorded in the database. Calculating, distinguishing a valid presence user agent from an invalid presence user agent by subtracting the calculated difference from a valid time of subscription information recorded in the database, wherein the presence server is not valid Sending a message informing the presence user agent that it has been terminated; And deleting subscription information of the invalid presence user agent from the database.

본 발명의 제 3 측면은 상태 정보 및 가입 정보를 저장하는 데이터 베이스를 포함하는 프리젠스 서버의 제어 방법에 있어서, 상기 프리젠스 서버가 제 1 프리젠스 유저 에이전트의 제 2 프리젠스 유저 에이전트 상태를 알기 위한 가입 요청을 받는 단계, 상기 프리젠스 서버는 상기 제 2 프리젠스 유저 에이전트의 상기 제 1 프리젠스 유저 에이전트에 대한 인가여부를 확인하기 위하여 상기 데이터 베이스를 탐색하는 단계, 상기 데이터 베이스에 상기 제 2 프리젠스 유저 에이전트의 상기 제 1 프리젠스 유저 에이전트에 대한 인가여부에 관한 정보가 없는 경우 상기 프리젠스 서버는 상기 제 1 프리젠스 유저 에이전트에게 제 2 프리젠스 유저 에이전트의 상태 정보가 없음을 알리는 단계, 및 상기 프리젠스 서버는 상기 데이터 베이스에 상기 제 1 프리젠스 유저 에이전트의 상기 제 2 프리젠스 유저 에이전트에 대한 가입 정보를 저장하는 단계를 포함하는 프리젠스 서버 제어 방법을 제공한다. A third aspect of the present invention provides a method of controlling a presence server including a database storing state information and subscription information, wherein the presence server knows a state of a second presence user agent of a first presence user agent. Receiving a subscription request for requesting, the presence server searching the database to confirm whether the second presence user agent is authorized for the first presence user agent, and the second presence in the database. If there is no information on whether the presence user agent is authorized for the first presence user agent, the presence server notifying the first presence user agent that there is no status information of the second presence user agent; And the presence server stores the first presence in the database. The agents of that second presence provides a presence server control method comprising: storing subscription information of the user agent.

본 발명의 제 4 측면은 상태 정보 및 가입 정보를 저장하는 데이터 베이스를 포함하는 프리젠스 서버의 제어 방법에 있어서, 상기 프리젠스 서버가 제 2 프리젠스 유저 에이전트로부터 상태 정보를 전달받는 단계, 상기 프리젠스 서버가 전달받은 상태정보를 상기 데이터 베이스에 저장하는 단계, 상기 프리젠스 서버가 상기 데이터 베이스로부터 상기 제 2 프리젠스 유저 에이전트에 가입된 프리젠스 유전 에이전트로 제 1 프리젠스 유저 에이전트가 있음을 읽는 단계, 상기 프리젠스 서버가 상기 제 1 프리젠스 유저 에이전트에게 상기 제 2 프리젠스 유저 에이전트의 상태 정보를 전달하는 단계, 및 상기 프리젠스 서버가 상기 데이터 베이스에 저장된 상기 제 1 프리젠스 유저 에이전트의 상기 제 2 프리젠스 유저 에이전트에 대한 가입 정보를 갱신하는 단계를 포함하는 프리젠스 서버의 제어 방법을 제공한다. A fourth aspect of the present invention provides a method of controlling a presence server including a database for storing status information and subscription information, wherein the presence server receives status information from a second presence user agent. Storing, by the presence server, the received status information in the database, wherein the presence server reads from the database that there is a first presence user agent as a presence genetic agent subscribed to the second presence user agent. Step, the presence server delivering status information of the second presence user agent to the first presence user agent, and the presence server of the first presence user agent stored in the database. Updating the subscription information for the second presence user agent; A control method of a presence server including a system is provided.

본 발명의 제 5 측면은 상태 정보 및 가입 정보를 저장하는 데이터 베이스를 포함하는 프리젠스 서버의 제어 방법에 있어서, 상기 프리젠스 서버가 제 2 프리젠 스 유저 에이전트의 상태 정보의 유효시간이 경과되었음을 감지하는 단계, 상기 프리젠스 서버가 상기 데이터 베이스로부터 상기 제 2 프리젠스 유저 에이전트에 가입된 프리젠스 유저 에이전트로 제 1 프리젠스 유저 에이전트가 있음을 읽는 단계, 상기 프리젠스 서버가 상기 제 1 프리젠스 유저 에이전트에게 상기 제 2 프리젠스 유저 에이전트가 오프라인임을 알리는 단계, 상기 프리젠스 서버가 상기 데이터 베이스에 저장된 상기 제 1 프리젠스 유저 에이전트의 상기 제 2 프리젠스 유저 에이전트에 대한 가입 정보를 갱신하는 단계, 및 상기 프리젠스 서버가 상기 데이터 베이스에 저장된 상기 제 2 프리젠스 유저 에이전트의 상태 정보를 갱신하는 단계를 포함하는 프리젠스 서버의 제어 방법을 제공한다. A fifth aspect of the present invention provides a method of controlling a presence server including a database storing state information and subscription information, wherein the presence server detects that the valid time of the state information of the second presence user agent has elapsed. And the presence server reading from the database that there is a first presence user agent as a presence user agent subscribed to the second presence user agent, wherein the presence server is responsible for the first presence user. Notifying an agent that the second presence user agent is offline, updating, by the presence server, subscription information for the second presence user agent of the first presence user agent stored in the database; The presence server stored in the database A method of controlling a presence server comprising updating status information of a second presence user agent.

본 발명의 제 6 측면은 상태 정보 및 가입 정보를 저장하는 데이터 베이스를 포함하는 프리젠스 서버의 제어 방법에 있어서, 상기 프리젠스 서버가 가입 유효시간이 경과되었음을 감지하는 단계, 상기 프리젠스 서버가 상기 데이터 베이스로부터 가입 유효기간이 경과된 유저 에이전트가 제 1 프리젠스 유저 에이전트임을 읽는 단계, 상기 프리젠스 서버가 상기 제 1 프리젠스 유저 에이전트에게 가입이 종료되었음을 알리는 단계, 및 상기 프리젠스 서버가 상기 데이터 베이스에 저장된 제 1 프리젠스 유저 에이전트의 가입 정보를 삭제하는 단계를 포함하는 프리젠스 서버의 제어 방법을 제공한다. According to a sixth aspect of the present invention, there is provided a method of controlling a presence server including a database storing state information and subscription information, wherein the presence server detects that a subscription valid time has elapsed. Reading from the database that the user agent whose subscription expiration date has passed is a first presence user agent, wherein the presence server notifies the first presence user agent that the subscription has ended, and the presence server provides the data It provides a control method of the presence server comprising the step of deleting the subscription information of the first presence user agent stored in the base.

본 발명의 제 7 측면은 상태 정보 및 가입 정보를 저장하는 데이터 베이스를 포함하는 프리젠스 서버의 제어 방법에 있어서, 상기 프리젠스 서버가 제 1 프리젠스 유저 에이전트에게 메시지를 소정 횟수를 반복하여 전달하였음에도 불구하고 확 인 응답를 받지 못하는 단계, 및 상기 프리젠스 서버가 상기 데이터 베이스에서 상기 제 1 프리젠스 유저 에이전트의 가입 정보를 삭제하는 단계를 포함하는 프리젠스 서버의 제어 방법을 제공한다. According to a seventh aspect of the present invention, in a method of controlling a presence server including a database storing state information and subscription information, the presence server repeatedly delivers a message to the first presence user agent a predetermined number of times. Nevertheless, receiving a confirmation response, and the presence server provides a control method of the presence server comprising the step of deleting the subscription information of the first presence user agent in the database.

이하, 첨부한 도면들을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 그러나, 본 발명의 실시예들은 여러가지 형태로 변형될 수 있으며, 본 발명의 범위가 아래에서 상술하는 실시예들로 인하여 한정되는 식으로 해석되어 져서는 안된다. 본 발명의 실시예들은 당업계에서 평균적 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해 제공되는 것이다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, embodiments of the present invention may be modified in various forms, and the scope of the present invention should not be construed as being limited by the embodiments described below. Embodiments of the present invention are provided to more fully explain the present invention to those skilled in the art.

도 1은 본 발명의 실시예에 의한 프리젠스 서버의 구조를 간략히 도시한 도면이다. 1 is a diagram schematically illustrating a structure of a presence server according to an embodiment of the present invention.

도 1을 참조하면, 프리젠스 서버(100)는 프리젠스 서버 프로세서(110)와 데이터베이스(120)를 포함한다. 프리젠스 서버 프로세서(110)는 프리젠스 유저 에이전트(200)와 SIP 기반의 통신을 수행한다. 또한, 프리젠스 서버 프로세서(110)는 상태 정보 뿐만 아니라, 가입 정보를 데이터베이스(120)에 저장하고, 이벤트 발생에 따라 해당 정보를 읽어 사용한다. 데이터베이스(120)는 상태 정보 및 가입 정보를 저장하는 기능을 수행한다. Referring to FIG. 1, the presence server 100 includes a presence server processor 110 and a database 120. The presence server processor 110 performs SIP-based communication with the presence user agent 200. In addition, the presence server processor 110 stores not only status information, but also subscription information in the database 120, and reads and uses the corresponding information according to an event occurrence. The database 120 stores a state information and subscription information.

프리젠스 서버 프로세서(110)는 이벤트 메니저(130)와 이벤트 핸들러(140)를 포함한다. 이벤트 메니저(130)는 사용자 정책 이벤트 메니저(131), 네트워크 이벤 트 메니저(132), 타임아웃 이벤트 메니저(133)을 포함하고, 이벤트 핸들러(140)는 사용자 정책 이벤트 핸들러(141), 네트워크 이벤트 핸들러(142), 타임아웃 이벤트 핸들러(143)를 포함한다. 프리젠스 서버 프로세서(110)의 이러한 구성은 물리적인 구성일 수도 있으나, 논리적인 구성 즉 하나의 프로세서가 수행하는 여러가지 기능으로 나누어진 구성일 수도 있다.The presence server processor 110 includes an event manager 130 and an event handler 140. Event manager 130 includes a user policy event manager 131, a network event manager 132, a timeout event manager 133, and the event handler 140 includes a user policy event handler 141, a network event handler. 142, a timeout event handler 143. This configuration of the presence server processor 110 may be a physical configuration, or may be a logical configuration, that is, a configuration divided into various functions performed by one processor.

사용자 정책 이벤트 메니저(131)는 특정 사용자의 상태정보를 입수하기 위한 가입 요청에 대하여 상기 특정 사용자의 상태정보 전달을 허락 또는 불허의 결정을 하는 이벤트를 탐지하여 사용자 정책 이벤트 핸들러(141)에게 해당 이벤트의 발생을 알린다. 사용자 정책 이벤트 핸들러(141)는 사용자 정책 이벤트가 발생되었을 경우 사용자 결정이 허락인지 불허인지에 따라 그에 맞는 동작을 수행한다.The user policy event manager 131 detects an event for allowing or disallowing the delivery of the specific information of the specific user with respect to the subscription request for obtaining the specific information of the specific user, and sends the event to the user policy event handler 141. Inform the occurrence of. When the user policy event occurs, the user policy event handler 141 performs an operation according to whether the user decision is allowed or disallowed.

네트워크 이벤트 메니저(132)는 네트웍 상에서의 이벤트, 즉 SIP 메시지를 수신한 경우 발생되는 이벤트를 탐지하여 네트워크 이벤트 핸들러(142)에게 해당 이벤트의 발생을 알린다. 네트워크 이벤트 핸들러(142)는 네트워크 이벤트가 발생한 경우 SIP 메시지의 종류가 요구(Request)인지 응답(Response)인지를 판단하고, 그에 따른 처리를 수행한다.The network event manager 132 detects an event on the network, that is, an event generated when the SIP message is received, and notifies the network event handler 142 of the occurrence of the event. When a network event occurs, the network event handler 142 determines whether the type of the SIP message is a request or a response, and performs the processing accordingly.

타임아웃 이벤트 메니저(133)는 데이터 베이스(120)내의 사용자 상태정보, 가입 정보가 타임아웃되었을 경우의 이벤트를 탐지하여 타임아웃 이벤트 핸들러(143)에게 해당 이벤트의 발생을 알린다. 타임아웃 이벤트 핸들러(143)는 타임아웃 이벤트가 발생한 경우에 타임아웃 이벤트가 가입 유효시간이 경과한 경우, 사용자 정보의 유효시간이 경과한 경우, 및 메시지를 전송하고 난 후 그에 따른 응답을 일정 시간이내에 수신하지 못하는 경우 중 어느 경우인지를 판단하고, 그에 따른 처리를 수행한다.The timeout event manager 133 detects an event when the user status information and subscription information in the database 120 timed out and notifies the timeout event handler 143 of occurrence of the corresponding event. When the timeout event occurs, the timeout event handler 143 receives a timeout event when the subscription validity time elapses, when the validity time of the user information has elapsed, and when the message is transmitted, responds accordingly after a predetermined time. It determines whether any of the cases is not received within the time period, and performs the processing accordingly.

도 2는 프리젠스 서버가 다운되거나 정전등으로 인해 재구동되었을 경우 이전의 상태를 복구하는 방법의 각 단계를 나타내는 도면이다. 2 is a diagram illustrating each step of a method of recovering a previous state when the presence server is down or restarted due to a power failure.

도 2를 참조하면, 먼저 프리젠스 서버(Presence Server)는 데이터베이스(database)에 기록된 마지막 접근 시간을 알아내어 현재 시간과의 차이를 계산하고, 데이터베이스에 기록된 가입 정보의 유효시간에서 위에서 계산된 시간 차이를 차감하여 유효한 프리젠스 유저 에이전트와 유효하지 않은 프리젠스 유저 에이전트를 구분한다(S11). 유효하지 않은 프리젠스 유저 에이전트, 즉 가입 정보의 유효시간이 초과된 프리젠스 유저 에이전트가 있는 경우, 프리젠스 서버는 해당 프리젠스 유저 에이전트(PUA1)에 'NOTIFY' 메시지를 송신하여 종료되었음을 알린다(S12). 해당 프리젠스 유저 에이전트(PUA1)로부터 수신 확인 메시지를 받으면(S13), 프리젠스 서버는 데이터베이스에 기록된 가입 정보를 삭제하고, 유효한 프리젠스 유저 에이전트(PUA2)의 가입 정보는 그대로 유지한다(S14).Referring to FIG. 2, first, the presence server finds the last access time recorded in the database, calculates a difference from the current time, and calculates the difference from the effective time of the subscription information recorded in the database. By subtracting the time difference, a valid presence user agent and an invalid presence user agent are distinguished (S11). If there is an invalid presence user agent, that is, a presence user agent whose subscription information has expired, the presence server notifies the presence user agent PUA1 that it has finished by notifying that it has finished (S12). ). When receiving a receipt confirmation message from the presence user agent PUA1 (S13), the presence server deletes the subscription information recorded in the database, and maintains the subscription information of the valid presence user agent PUA2 (S14). .

도 3은 사용자 정책 이벤트가 발생되고 사용자의 결정이 허락인 경우의 사용자 정책 이벤트의 발생과정 및 처리과정의 일례를 설명하기 위한 도면이다. 3 is a view for explaining an example of the generation and processing of the user policy event when the user policy event is generated and the decision of the user is allowed.

도 3을 참조하면, 먼저 제 1 프리젠스 유저 에이전트(PUA1)가 "SUBSCRIBE" 메시지를 전달하여 제 2 프리젠스 유저 에이전트(PUA2)의 상태 정보를 입수하기 위 한 가입을 요청한다(S21). 프리젠스 서버(Presence Server)는 제 2 프리젠스 유저 에이전트(PUA2)의 인가여부를 확인하기 위하여 내부 데이터베이스(database)를 탐색한다(S22). 데이터베이스에 제 2 프리젠스 유저 에이전트(PUA2)에 대한 인가 정책 정보가 없을 경우 제 1 프리젠스 유저 에이전트(PUA1)에게 인가 대기중이라는 "202(pending)" 응답을 전달한다(S23). 또한 프리젠스 서버는 제 1 프리젠스 유저 에이전트(PUA1)에게 "NOTIFY"를 전달하며 이때 제 2 프리젠스 유저 에이전트(PUA2)의 상태정보는 포함하고 있지 않는다(S24). 제 1 프리젠스 유저 에이전트(PUA1)는 "NOTIFY"에 대하여 수신 확인이라는 "200" 응답을 전달하여 해당 메시지를 잘 수신하였음을 알린다(S25). 프리젠스 서버는 데이터베이스에 가입에 관련된 정보를 저장한다(S26). 제 2 프리젠스 유저 에이전트(PUA2)로부터 제 1 프리젠스 유저 에이전트(PUA1)에 대한 인가를 허락하는 사용자 정책 이벤트가 발생할 경우(S27), 프리젠스 서버는 "NOTIFY"를 제 1 프리젠스 유저 에이전트(PUA1)에게 보낸다(S28). 이때 "NOTIFY"에는 제 2 프리젠스 유저 에이전트(PUA2)의 상태정보가 포함된다. 제 1 프리젠스 유저 에이전트(PUA1)가 수신확인이라는 "200" 응답을 보냄으로써 "NOTIFY"가 무사히 도착했음을 알린다(S29). "200" 응답을 받은 프리젠스 서버는 가입 정보를 데이터베이스에 갱신한다.Referring to FIG. 3, first, a first presence user agent PUA1 transmits a “SUBSCRIBE” message to request subscription to obtain status information of a second presence user agent PUA2 (S21). The presence server searches the internal database to confirm whether the second presence user agent PUA2 is authorized (S22). If there is no authorization policy information for the second presence user agent PUA2 in the database, a "202 (pending)" response indicating that authorization is pending is transmitted to the first presence user agent PUA1 (S23). In addition, the presence server transmits "NOTIFY" to the first presence user agent PUA1, and does not include the state information of the second presence user agent PUA2 (S24). The first presence user agent PUA1 transmits a "200" response of acknowledgment to "NOTIFY" to inform that it has received the message well (S25). The presence server stores information related to subscription in the database (S26). When a user policy event that allows authorization from the second presence user agent PUA2 to the first presence user agent PUA1 occurs (S27), the presence server sets "NOTIFY" to the first presence user agent ( PUA1) (S28). At this time, "NOTIFY" includes status information of the second presence user agent PUA2. The first presence user agent PUA1 sends a "200" response of acknowledgment to inform that "NOTIFY" has arrived safely (S29). The presence server receiving the response "200" updates the subscription information in the database.

도 4는 사용자 정책 이벤트가 발생되고 사용자의 결정이 불허인 경우의 사용자 정책 이벤트의 발생과정 및 처리과정의 일례를 설명하기 위한 도면이다. FIG. 4 is a diagram for explaining an example of a process and a process of generating a user policy event when a user policy event is generated and a decision of a user is not allowed.

도 4를 참조하면, 먼저 제 1 프리젠스 유저 에이전트(PUA1)가 "SUBSCRIBE"를 전달하여 제 2 프리젠스 유저 에이전트(PUA2)의 상태 정보를 입수하기 위한 가입을 요청한다(S31). 프리젠스 서버(Presence Server)는 해당 사용자의 인가여부를 확인하기 위하여 내부 데이터베이스(database)를 탐색한다(S32). 데이터베이스에 제 2 프리젠스 유저 에이전트(PUA2)에 대한 인가 정책 정보가 없을 경우 제 1 프리젠스 유저 에이전트(PUA1)에게 인가 대기중이라는 "202(pending)" 응답을 전달한다(S33). 또한 프리젠스 서버는 제 1 프리젠스 유저 에이전트(PUA1)에게 "NOTIFY"를 전달하며 이때 제 2 프리젠스 유저 에이전트(PUA2)의 상태정보는 포함하고 있지 않는다(S34). 제 1 프리젠스 유저 에이전트(PUA1)는 "NOTIFY"에 대하여 수신 확인이라는 "200" 응답을 전달하여 해당 메시지를 잘 수신하였음을 알린다(S35). 프리젠스 서버는 데이터베이스에 가입에 관련된 정보를 저장한다(S36). 제 2 프리젠스 유저 에이전트(PUA2)로부터 제 1 프리젠스 유저 에이전트(PUA1)에 대한 인가를 불허하는 사용자 정책 이벤트가 발생할 경우(S37), 프리젠스 서버는 가입(subscription)이 종료되었음을 알리는 "NOTIFY"를 제 1 프리젠스 서버(PUA1)에게 보낸다. 제 1 프리젠스 서버(PUA1)가 수신확인이라는 "200" 응답을 보냄으로써 "NOTIFY"가 무사히 도착했음을 알린다. "200" 응답을 받은 데이터베이스에 저장되어 있는 가입 정보를 삭제한다.Referring to FIG. 4, first, the first presence user agent PUA1 transmits “SUBSCRIBE” to request subscription to obtain status information of the second presence user agent PUA2 (S31). The presence server searches for an internal database in order to confirm whether the corresponding user is authorized (S32). If there is no authorization policy information for the second presence user agent PUA2 in the database, a "202 (pending)" response indicating that authorization is pending is transmitted to the first presence user agent PUA1 (S33). In addition, the presence server transmits "NOTIFY" to the first presence user agent PUA1, and does not include the state information of the second presence user agent PUA2 (S34). The first presence user agent PUA1 transmits a "200" response of acknowledgment to "NOTIFY" to inform that it has received the message well (S35). The presence server stores information related to subscription in the database (S36). When a user policy event disallowing authorization for the first presence user agent PUA1 from the second presence user agent PUA2 occurs (S37), the presence server notifies that the subscription has been terminated. Is sent to the first presence server PUA1. The first presence server PUA1 sends a "200" response of acknowledgment to inform that "NOTIFY" has arrived safely. Delete the subscription information stored in the database that received the response "200".

도 5는 네트워크 이벤트인 SIP 메시지가 수신된 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, 인가되지 않은 사용자로부터 가입요청인 "SUBSCRIBE" 메시지를 수신한 경우의 처리 절차를 나타내는 도면이다. FIG. 5 is a diagram illustrating an example of a procedure of receiving and processing an event when a SIP message, which is a network event, is received. FIG. 5 is a diagram illustrating a processing procedure when a "SUBSCRIBE" message, which is a subscription request, is received from an unauthorized user.

도 5를 참조하면, 먼저 제 1 프리젠스 유저 에이전트(PUA1)가 "SUBSCRIBE"를 전달하여 제 2 프리젠스 유저 에이전트(PUA2)의 상태 정보를 입수하기 위한 가입을 요청하는 네트워크 이벤트가 발생하면(S41), 프리젠스 서버(Presence Server)는 제 2 프리젠스 유저 에이전트(PUA2)의 인가여부를 확인하기 위하여 내부 데이터베이스(database)를 탐색한다(S42). 데이터베이스에 제 2 프리젠스 유저 에이전트(PUA2)에 대한 인가 정책 정보가 없을 경우 제 1 프리젠스 유저 에이전트(PUA1)에게 인가 대기중이라는 "202(pending)" 응답을 전달한다(S43). 또한 프리젠스 서버는 제 1 프리젠스 유저 에이전트(PUA1)에게 "NOTIFY"를 전달하며 이때 제 2 프리젠스 유저 에이전트(PUA2)의 상태정보는 포함하고 있지 않는다(S44). 제 1 프리젠스 유저 에이전트(PUA1)는 "NOTIFY"에 대하여 수신 확인이라는 "200" 응답을 전달하여 해당 메시지를 잘 수신하였음을 알린다(S45). 프리젠스 서버는 데이터베이스에 가입에 관련된 정보를 저장한다(S46). Referring to FIG. 5, when a first event user agent PUA1 delivers "SUBSCRIBE" to request a subscription to obtain status information of the second presence user agent PUA2 (S41). In step S42, the presence server searches an internal database to confirm whether the second presence user agent PUA2 is authorized. If there is no authorization policy information for the second presence user agent PUA2 in the database, a "202 (pending)" response waiting for authorization is transmitted to the first presence user agent PUA1 (S43). In addition, the presence server transmits "NOTIFY" to the first presence user agent PUA1, and does not include the state information of the second presence user agent PUA2 (S44). The first presence user agent PUA1 transmits a "200" response of acknowledgment to "NOTIFY" to inform that it has received the message well (S45). The presence server stores information related to subscription in the database (S46).

도 6은 네트워크 이벤트인 SIP 메시지가 수신된 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, 인가된 사용자로부터 가입요청인 "SUBSCRIBE" 메시지를 수신한 경우의 처리 절차를 나타내는 도면이다. FIG. 6 is a diagram illustrating an example of a procedure of receiving and processing an event when a SIP message, which is a network event, is received. FIG. 6 is a diagram illustrating a processing procedure when a "SUBSCRIBE" message, which is a subscription request, is received from an authorized user.

도 6을 참조하면, 먼저 제 2 프리젠스 유저 에이전트(PUA2)가 "SUBSCRIBE"를 전달하여 제 2 프리젠스 유저 에이전트(PUA2)의 상태 정보를 입수하기 위한 가입을 요청하는 네트워크 이벤트가 발생하면(S51). 프리젠스 서버(Presence Server)는 제 2 프리젠스 유저 에이전트(PUA2)의 인가여부를 확인하기 위하여 내부 데이터베이스 (database)를 탐색한다(S52). 데이터베이스에 제 2 프리젠스 유저 에이전트(PUA2)의 제 1 프리젠스 유저 에이전트(PUA1)에 대한 인가가 이미 이루어져 있는 경우, 프리젠스 서버는 제 1 프리젠스 유저 에이전트(PAU1)에게 인가 확인이라는 "200" 응답을 전달한다(S53). 프리젠스 서버는 "NOTIFY"라는 메시지에 제 2 프리젠스 유저 에이전트(PUA2)의 상태정보를 포함하여 제 1 프리젠스 유저 에이전트(PUA1)에게 전달한다(S54). 제 1 프리젠스 유저 에이전트(PUA1)는 "NOTIFY"에 대한 수신 확인이라는 "200" 응답을 전달하여 해당 메시지를 잘 수신하였음을 알린다(S55). 프리젠스 서버는 데이터베이스에 가입에 관련된 정보를 저장한다(S56).Referring to FIG. 6, first, when a second event user agent PUA2 delivers "SUBSCRIBE" and requests a subscription to obtain status information of the second presence user agent PUA2 (S51). ). The presence server searches the internal database to confirm whether the second presence user agent PUA2 is authorized (S52). If the database has already been authorized for the first presence user agent PUA1 of the second presence user agent PUA2, the presence server has given the first presence user agent PAU1 a "200". Pass the response (S53). The presence server transfers the state information of the second presence user agent PUA2 to the first presence user agent PUA1 in the message "NOTIFY" (S54). The first presence user agent PUA1 transmits a "200" response of acknowledgment of "NOTIFY" to inform that it has received the message well (S55). The presence server stores information related to subscription in the database (S56).

도 7은 네트워크 이벤트인 SIP 메시지가 수신된 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, 사용자 상태 정보를 전달하는 "PUBLISH"라는 메시지를 수신한 경우의 처리 절차를 나타내는 도면이다.FIG. 7 is a diagram illustrating an example of a procedure for receiving and processing an event when a SIP message, which is a network event, is received. FIG. 7 is a diagram illustrating a processing procedure when a message “PUBLISH” for transmitting user status information is received.

도 7을 참조하면, 먼저 제 2 프리젠스 유저 에이전트(PUA2)가 프리젠스 서버(Presence Server)에 "PUBLISH" 메시지를 통해 상태 정보를 전달하는 이벤트가 발생하면(S61), 프리젠스 서버는 전달받은 상태 정보를 데이터베이스(database)에 기록한다(S62). 프리젠스 서버는 제 2 프리젠스 유저 에이전트(PAU2)에 수신 확인이라는 "200" 응답을 보내 "PUBLISH"에 대한 처리가 끝났음을 알린다(S63). 제 2 프리젠스 유저 에이전트(PUA2)에 관련된 가입(Subscription) 정보들을 모두 가져온다(S64). 이 실시예에서는 2개가 존재한다. 각 가입에 대하여 변경된 사용자 상태정보가 포함된 "NOTIFY" 메시지를 전달한다. 즉, 제 3 프리젠스 유저 에이전트(PUA3) 에게 "NOTIFY" 메시지를 보내고(S65), 수신확인이라는 "200" 응답을 받는다(S66). 갱신된 가입 정보를 데이터베이스에 저장한다(S67). 제 1 프리젠스 유저 에이전트(PUA1)에게 "NOTIFY" 메시지를 보내고(S68), 수신확인이라는 "200" 응답을 받는다(S69). 갱신된 가입 정보를 데이터베이스에 저장한다(S70).Referring to FIG. 7, first, when an event for delivering status information to a presence server through a "PUBLISH" message occurs at the second presence user agent PUA2 (S61), the presence server receives the received message. The state information is recorded in the database (S62). The presence server sends a "200" response of acknowledgment to the second presence user agent PAU2 to inform that the processing for "PUBLISH" is completed (S63). All subscription information related to the second presence user agent PUA2 is retrieved (S64). There are two in this embodiment. For each subscription, it sends a "NOTIFY" message that contains the changed user status information. That is, it sends a "NOTIFY" message to the third presence user agent PUA3 (S65), and receives a "200" response of acknowledgment (S66). The updated subscription information is stored in the database (S67). A message “NOTIFY” is sent to the first presence user agent PUA1 (S68), and a “200” response of acknowledgment is received (S69). The updated subscription information is stored in the database (S70).

도 8은 네트워크 이벤트인 SIP 메시지가 수신된 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, "NOTIFY"가 성공적으로 전달 및 처리되었음을 의미하는 "200" 응답(Response)을 수신한 경우의 처리 절차를 나타내는 도면이다.FIG. 8 is a diagram illustrating an example of a procedure for receiving and processing an event when a SIP message, which is a network event, is received. In case of receiving a “200” response indicating that “NOTIFY” has been successfully delivered and processed. It is a figure which shows a processing procedure.

도 8을 참조하면, 프리젠스 서버(Presence Server)는 제 1 프리젠스 유저 에이전트(PUA1)에 "NOTIFY"를 송신한다(S71). 프리젠스 서버가 제 1 프리젠스 유저 에이전트(PUA1)로부터 수신 확인이라는 "200" 응답을 받는 이벤트가 발생하면(S72), 프리젠스 서버는 관련된 가입 정보를 데이터베이스(database)에서 가져온다(S73). 프리젠스 서버는 업데이트된 가입 정보를 데이터베이스에 갱신한다(S74).Referring to FIG. 8, the presence server transmits "NOTIFY" to the first presence user agent PUA1 (S71). When the presence server receives an "200" response of acknowledgment from the first presence user agent PUA1 (S72), the presence server obtains related subscription information from the database (S73). The presence server updates the updated subscription information in the database (S74).

도 9는 네트워크 이벤트인 SIP 메시지가 수신된 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, "200" 응답(Response)이 아닌 경우의 처리 절차를 나타내는 도면이다. FIG. 9 is a diagram illustrating an example of a procedure of receiving and processing an event when a SIP message, which is a network event, is received. FIG.

도 9를 참조하면, 프리젠스 서버(Presence Server)는 제 1 프리젠스 유저 에이전트(PUA1)에 "NOTIFY"를 송신한다(S81). 프리젠스 서버가 제 1 프리젠스 유저 에이전트(PUA1)로부터 "200" 이외의 응답을 받는 이벤트가 발생하면(S82), 관련된 가입 정보를 데이터베이스(database)에서 가져온다(S83). 관련된 가입 정보를 데이터베이스에서 삭제한다(S84).Referring to FIG. 9, the presence server transmits "NOTIFY" to the first presence user agent PUA1 (S81). When the presence server receives an event other than "200" from the first presence user agent PUA1 (S82), related subscription information is retrieved from the database (S83). The associated subscription information is deleted from the database (S84).

도 10은 타임아웃 이벤트가 발생한 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, 상태정보가 유효시간이 경과하여 삭제된 경우의 처리 절차를 나타내는 도면이다. FIG. 10 is a diagram illustrating an example of a procedure for receiving and processing an event when a timeout event occurs. FIG. 10 is a diagram illustrating a procedure when a state information is deleted after an effective time elapses.

도 10을 참조하면, 제 2 프리젠스 유저 에이전트(PUA2)의 상태정보가 유효시간이 경과하였다는 타임아웃 이벤트가 발생하면 이를 감지한다(S91). 프리젠스 서버(Presence Server)는 관련된 가입 정보를 데이터베이스(database)에서 가져온다. 각 프리젠스 서버(Presence Server)는 각 가입된 프리젠스 유저 에이전트들(PUA1, PUA3)에게 "NOTIFY" 메시지를 보내 타임아웃된 사용자의 정보가 더 이상 유효하지 않거나, 오프라인(offline)이 되었음을 알린다(S93, S96). 각 가입된 프리젠스 유저 에이전트들(PUA1, PUA3)로부터 수신확인이라는 "200" 응답을 수신한다(S94, S97). "200" 응답을 받으면 데이터베이스에 기록된 가입 정보를 업데이트한다(S95, S98). 데이터베이스에 기록된 상태 정보도 업데이트한다(S99).Referring to FIG. 10, if a timeout event that the validity time of the state information of the second presence user agent PUA2 has elapsed is detected, it is detected (S91). The presence server pulls related subscription information from a database. Each presence server sends a " NOTIFY " message to each subscribed presence user agents PUA1 and PUA3 to indicate that the information of the timed out user is no longer valid or offline. S93, S96). Receive a "200" response of acknowledgment from each subscribed presence user agents PUA1 and PUA3 (S94 and S97). When receiving a "200" response, the subscription information recorded in the database is updated (S95 and S98). The state information recorded in the database is also updated (S99).

도 11은 타임아웃 이벤트가 발생한 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, 가입 트랜잭션의 유효시간이 경과한 경우의 처리 절차를 나타내는 도면이다. FIG. 11 is a diagram illustrating an example of a procedure for receiving and processing an event when a timeout event occurs. FIG.

도 11을 참조하면, 가입 트랜잭션의 타임아웃 이벤트가 발생하며, 이를 감지한다(S101). 프리젠스 서버(Presence Server)는 관련된 가입 정보를 데이터베이스(database)에서 가져온다(S102). 해당 프리젠스 유저 에이전트(PUA1)에게 가입이 종료되었음을 알리는 "NOTIFY" 메시지를 전송한다(S103). 해당 프리젠스 유저 에이전트로부터 "200" 응답을 수신한다(S104). "200" 응답을 받으면 데이터베이스에 기록된 가입 정보를 삭제한다(S105).Referring to FIG. 11, a timeout event of a subscription transaction occurs and is detected (S101). The presence server obtains related subscription information from a database (S102). In operation S103, the presence user agent PUA1 transmits a "NOTIFY" message indicating that the subscription is terminated. In step S104, a response “200” is received from the presence user agent. When receiving the "200" response, the subscription information recorded in the database is deleted (S105).

도 12는 타임아웃 이벤트가 발생한 경우 이벤트를 전달받아 처리하는 절차의 일례를 나타내는 도면으로써, 프리젠스 서버가 "NOTIFY"를 송신하였으나 프리젠스 유저 에이전트로부터 "200" 응답을 수신하지 못한 경우의 처리 절차를 나타내는 도면이다. 12 is a diagram illustrating an example of a procedure for receiving and processing an event when a timeout event occurs, and a processing procedure when the presence server transmits "NOTIFY" but does not receive a "200" response from the presence user agent. It is a figure which shows.

도 12를 참조하면, 프리젠스 서버(Presence Server)의 재전송 횟수가 소정 횟수를 넘어갈때까지 200응답을 받지 못하게 되면(S111) 해당 프리젠스 유저 에이전트(PUA1)에 대한 타임아웃 이벤트(TimeoutEvent)가 발생을 하게 되며, 서버는 그 가입 정보를 삭제한다(S112).Referring to FIG. 12, when a 200 response is not received until the number of retransmissions of the presence server exceeds a predetermined number (S111), a timeout event for the corresponding presence user agent PUA1 occurs. The server deletes the subscription information (S112).

본 발명의 기술 사상은 상기 바람직한 실시예에 따라 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야한다. 또한, 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술 사상의 범위 내에서 다양한 변형예가 가능함을 이해할 수 있을 것이다.Although the technical spirit of the present invention has been described in detail according to the above preferred embodiment, it should be noted that the above-described embodiment is for the purpose of description and not of limitation. In addition, it will be understood by those skilled in the art that various modifications are possible within the scope of the technical idea of the present invention.

본 발명에 의한 SIP 기반의 프리젠스 서버 및 그 제어 방법은 트랜잭션 정보 및 가입 정보를 별도의 데이터베이스 서버에 저장 및 관리함으로써, 서버의 성능과 안정성을 향상시킬 수 있다는 효과가 있다. The SIP-based presence server and its control method according to the present invention have the effect of improving the performance and stability of the server by storing and managing transaction information and subscription information in a separate database server.

Claims (14)

상태 정보 및 가입 정보를 저장하는 데이터 베이스; 및A database for storing status information and subscription information; And 상기 상태 정보 및 상기 가입 정보를 상기 데이터 베이스에 저장, 갱신, 독출 및 삭제하며 프리젠스 유저 에이전트 통신을 수행하는 프리젠스 서버 프로세서를 포함하되,A presence server processor for storing, updating, reading, and deleting the status information and the subscription information in the database, and performing presence user agent communication; 상기 프리젠스 서버 프로세서는,The presence server processor, 특정 사용자의 상태정보를 입수하기 위한 가입 요청에 대하여 상기 특정 사용자의 상태 정보 전달을 허락 또는 불허의 결정을 하는 이벤트를 감지하고 알리는 사용자 정책 이벤트 메니저;A user policy event manager configured to detect and notify an event for allowing or disallowing the delivery of the status information of the specific user in response to a subscription request for obtaining the status information of the specific user; 네트워크 상에서 SIP 메시지를 수신한 경우에 발생하는 이벤트를 감지하고 알리는 네트워크 이벤트 메니저;A network event manager configured to detect and notify an event occurring when a SIP message is received on a network; 상기 데이터베이스 내의 상기 상태 정보 및 상기 가입 정보 중 적어도 하나가 타임아웃되었을 경우의 이벤트를 감지하고 알리는 타임아웃 이벤트 메니저;A timeout event manager configured to detect and notify an event when at least one of the status information and the subscription information in the database has timed out; 상기 사용자 정책 이벤트 메니저에 의해 통지된 이벤트를 판단하고 처리를 수행하는 사용자 정책 이벤트 핸들러;A user policy event handler that determines an event notified by the user policy event manager and performs processing; 상기 네트워크 이벤트 메니저에 의해 통지된 이벤트를 판단하고 처리를 수행하는 네트워크 이벤트 핸들러; 및A network event handler that determines an event notified by the network event manager and performs processing; And 상기 타임아웃 이벤트 메니저에 의해 통지된 이벤트를 판단하고 처리를 수행하는 타임아웃 이벤트 핸들러를 구비하는 것을 특징으로 하는 프리젠스 서버.And a timeout event handler configured to determine and perform an event notified by the timeout event manager. 제 1 항에 있어서, The method of claim 1, 상기 프리젠스 서버 프로세서는 상기 프리젠스 유저 에이전트와 SIP 통신을 수행하는 프리젠스 서버.The presence server processor performs SIP communication with the presence user agent. 제 1 항에 있어서, The method of claim 1, 상기 프리젠스 서버 프로세서는 상기 프리젠스 유저 에이전트로부터 상태 정보를 전달받는 프리젠스 서버.The presence server processor receives the status information from the presence user agent. 제 1 항에 있어서, The method of claim 1, 상기 프리젠스 서버 프로세서는 상기 프리젠스 유저 에이전트로부터 가입 요청 메시지를 전달받는 프리젠스 서버.The presence server processor receives the subscription request message from the presence user agent. 제 1 항에 있어서, The method of claim 1, 상기 프리젠스 서버 프로세서는 상기 프리젠스 유저 에이전트에게 타 프리젠스 유저 에이전트의 상태 정보를 전달하는 프리젠스 서버.The presence server processor transfers the status information of another presence user agent to the presence user agent. 상태 정보 및 가입 정보를 저장하는 데이터 베이스, 및 상기 상태 정보 및 상기 가입 정보를 상기 데이터 베이스에 저장, 갱신, 독출 및 삭제하며 프리젠스 유저 에이전트 통신을 수행하는 프리젠스 서버 프로세서를 포함하는 프리젠스 서버의 제어 방법에 있어서,A presence server comprising a database for storing status information and subscription information, and a presence server processor for storing, updating, reading, and deleting the status information and subscription information in the database and performing presence user agent communication. In the control method of, 상기 프리젠스 서버 프로세서가 상기 데이터 베이스에 기록된 마지막 접근 시간과 현재 시간과의 차이를 계산하는 단계;Calculating, by the presence server processor, a difference between a last access time recorded in the database and a current time; 상기 데이터 베이스에 기록된 가입 정보의 유효 시간에서 상기 계산된 차이를 차감하여 유효한 프리젠스 유저 에이전트와 유효하지 않은 프리젠스 유저 에이전트를 구분하는 단계;Distinguishing a valid presence user agent from an invalid presence user agent by subtracting the calculated difference from a valid time of subscription information recorded in the database; 상기 유효하지 않은 프리젠스 유저 에이전트에게 가입이 종료되었음을 알리는 메시지를 송신하는 단계; 및Sending a message informing the invalid presence user agent that subscription has ended; And 상기 데이터 베이스에서 상기 유효하지 않은 프리젠스 유저 에이전트의 가입 정보를 삭제하는 단계를 포함하는 프리젠스 서버 제어 방법.Deleting subscription information of the invalid presence user agent from the database. 상태 정보 및 가입 정보를 저장하는 데이터 베이스, 및 상기 상태 정보 및 상기 가입 정보를 상기 데이터 베이스에 저장, 갱신, 독출 및 삭제하며 프리젠스 유저 에이전트 통신을 수행하는 프리젠스 서버 프로세서를 포함하는 프리젠스 서버의 제어 방법에 있어서,A presence server comprising a database for storing status information and subscription information, and a presence server processor for storing, updating, reading, and deleting the status information and subscription information in the database and performing presence user agent communication. In the control method of, 상기 프리젠스 서버 프로세서가 제 1 프리젠스 유저 에이전트로부터 제 2 프리젠스 유저 에이전트 상태를 알기 위한 가입 요청을 받는 단계;Receiving, by the presence server processor, a subscription request from a first presence user agent to know a second presence user agent status; 상기 제 2 프리젠스 유저 에이전트의 상기 제 1 프리젠스 유저 에이전트에 대한 인가여부를 확인하기 위하여 상기 데이터 베이스를 탐색하는 단계;Searching the database to confirm whether the second presence user agent is authorized for the first presence user agent; 상기 데이터 베이스에 상기 제 2 프리젠스 유저 에이전트에 대한 인가여부에 관한 정보가 없는 경우 상기 제 1 프리젠스 유저 에이전트에게 상기 제 2 프리젠스 유저 에이전트의 상태 정보가 없음을 알리는 단계; 및Notifying the first presence user agent that there is no status information of the second presence user agent when there is no information on whether the second presence user agent is authorized in the database; And 상기 데이터 베이스에 상기 제 1 프리젠스 유저 에이전트의 상기 제 2 프리젠스 유저 에이전트에 대한 가입 정보를 저장하는 단계를 포함하는 프리젠스 서버 제어 방법.Storing subscription information for the second presence user agent of the first presence user agent in the database. 제 7 항에 있어서, The method of claim 7, wherein 상기 제 2 프리젠스 유저 에이전트로부터 상기 제 1 프리젠스 유저 에이전트에 대한 인가를 허락하는 메시지를 받는 경우, 상기 제 2 프리젠스 유저 에이전트의 상태 정보를 포함하는 메시지를 상기 제 1 프리젠스 유저 에이전트로 전달하는 단계; 및Upon receiving a message allowing authorization for the first presence user agent from the second presence user agent, forwarding a message including status information of the second presence user agent to the first presence user agent. Doing; And 상기 데이터 베이스에 저장된 상기 제 1 프리젠스 유저 에이전트의 상기 제 2 프리젠스 유저 에이전트에 대한 가입 정보를 갱신하는 단계를 추가적으로 포함하는 프리젠스 서버 제어 방법. And updating the subscription information for the second presence user agent of the first presence user agent stored in the database. 제 7 항에 있어서, The method of claim 7, wherein 상기 제 2 프리젠스 유저 에이전트로부터 상기 제 1 프리젠스 유저 에이전트에 대한 인가를 허락하지 아니하는 메시지를 받는 경우, 상기 제 1 프리젠스 유저 에이전트에 가입이 종료되었음을 알리는 메시지를 전달하는 단계; 및When the second presence user agent receives a message disallowing authorization for the first presence user agent, transmitting a message indicating that the subscription to the first presence user agent has ended; And 상기 데이터 베이스에 저장된 상기 제 1 프리젠스 유저 에이전트의 상기 제 2 프리젠스 유저 에이전트에 대한 가입 정보를 삭제하는 단계를 추가적으로 포함하는 프리젠스 서버 제어 방법. And deleting the subscription information for the second presence user agent of the first presence user agent stored in the database. 제 7 항에 있어서, The method of claim 7, wherein 상기 데이터 베이스에 상기 제 2 프리젠스 유저 에이전트의 상기 제 1 프리젠스 유저 에이전트에 대한 인가 정보가 있는 경우 상기 제 1 프리젠스 유저 에이전트에게 상기 제 2 프리젠스 유저 에이전트의 상태 정보를 전달하는 단계를 추가적으로 포함하는 프리젠스 서버 제어 방법.Delivering status information of the second presence user agent to the first presence user agent when the database has authorization information for the first presence user agent of the second presence user agent. Presence server control method comprising. 상태 정보 및 가입 정보를 저장하는 데이터 베이스, 및 상기 상태 정보 및 상기 가입 정보를 상기 데이터 베이스에 저장, 갱신, 독출 및 삭제하며 프리젠스 유저 에이전트 통신을 수행하는 프리젠스 서버 프로세서를 포함하는 프리젠스 서버의 제어 방법에 있어서,A presence server comprising a database for storing status information and subscription information, and a presence server processor for storing, updating, reading, and deleting the status information and subscription information in the database and performing presence user agent communication. In the control method of, 상기 프리젠스 서버 프로세서가 제 2 프리젠스 유저 에이전트로부터 사용자 상태 정보를 전달받는 단계;Receiving, by the presence server processor, user status information from a second presence user agent; 상기 전달받은 사용자 상태정보를 상기 데이터 베이스에 저장하는 단계;Storing the received user state information in the database; 상기 데이터 베이스로부터 상기 제 2 프리젠스 유저 에이전트에 가입된 프리젠스 유저 에이전트로 제 1 프리젠스 유저 에이전트가 있음을 읽는 단계;Reading from the database that there is a first presence user agent as a presence user agent subscribed to the second presence user agent; 상기 제 1 프리젠스 유저 에이전트에게 상기 제 2 프리젠스 유저 에이전트의 상태 정보를 전달하는 단계; 및Communicating status information of the second presence user agent to the first presence user agent; And 상기 데이터 베이스에 저장된 상기 제 1 프리젠스 유저 에이전트의 상기 제 2 프리젠스 유저 에이전트에 대한 가입 정보를 갱신하는 단계를 포함하는 프리젠스 서버 제어 방법.Updating subscription information for the second presence user agent of the first presence user agent stored in the database. 상태 정보 및 가입 정보를 저장하는 데이터 베이스, 및 상기 상태 정보 및 상기 가입 정보를 상기 데이터 베이스에 저장, 갱신, 독출 및 삭제하며 프리젠스 유저 에이전트 통신을 수행하는 프리젠스 서버 프로세서를 포함하는 프리젠스 서버의 제어 방법에 있어서,A presence server comprising a database for storing status information and subscription information, and a presence server processor for storing, updating, reading, and deleting the status information and subscription information in the database and performing presence user agent communication. In the control method of, 상기 프리젠스 서버 프로세서가 제 2 프리젠스 유저 에이전트의 상태 정보의 유효시간이 경과되었음을 감지하는 단계;Detecting, by the presence server processor, that an effective time of state information of a second presence user agent has elapsed; 상기 데이터 베이스로부터 상기 제 2 프리젠스 유저 에이전트에 가입된 프리젠스 유저 에이전트로 제 1 프리젠스 유저 에이전트가 있음을 읽는 단계;Reading from the database that there is a first presence user agent as a presence user agent subscribed to the second presence user agent; 상기 제 1 프리젠스 유저 에이전트에게 상기 제 2 프리젠스 유저 에이전트가 오프라인임을 알리는 단계;Notifying the first presence user agent that the second presence user agent is offline; 상기 데이터 베이스에 저장된 상기 제 1 프리젠스 유저 에이전트의 상기 제 2 프리젠스 유저 에이전트에 대한 가입 정보를 갱신하는 단계; 및Updating subscription information for the second presence user agent of the first presence user agent stored in the database; And 상기 데이터 베이스에 저장된 상기 제 2 프리젠스 유저 에이전트의 상태 정보를 갱신하는 단계를 포함하는 프리젠스 서버 제어 방법.Updating status information of the second presence user agent stored in the database. 상태 정보 및 가입 정보를 저장하는 데이터 베이스, 및 상기 상태 정보 및 상기 가입 정보를 상기 데이터 베이스에 저장, 갱신, 독출 및 삭제하며 프리젠스 유저 에이전트 통신을 수행하는 프리젠스 서버 프로세서를 포함하는 프리젠스 서버의 제어 방법에 있어서,A presence server comprising a database for storing status information and subscription information, and a presence server processor for storing, updating, reading, and deleting the status information and subscription information in the database and performing presence user agent communication. In the control method of, 상기 프리젠스 서버 프로세서가 가입 유효시간이 경과되었음을 감지하는 단계;Detecting, by the presence server processor, that a subscription validity time has elapsed; 상기 데이터 베이스로부터 가입 유효기간이 경과된 유저 에이전트가 제 1 프리젠스 유저 에이전트임을 읽는 단계;Reading from the database that the user agent whose subscription expiration date has passed is a first presence user agent; 상기 제 1 프리젠스 유저 에이전트에게 가입이 종료되었음을 알리는 단계; 및Notifying the first presence user agent that the subscription has ended; And 상기 데이터 베이스에 저장된 제 1 프리젠스 유저 에이전트의 가입 정보를 삭제하는 단계를 포함하는 프리젠스 서버 제어 방법.Deleting the subscription information of the first presence user agent stored in the database. 상태 정보 및 가입 정보를 저장하는 데이터 베이스, 및 상기 상태 정보 및 상기 가입 정보를 상기 데이터 베이스에 저장, 갱신, 독출 및 삭제하며 프리젠스 유저 에이전트 통신을 수행하는 프리젠스 서버 프로세서를 포함하는 프리젠스 서버의 제어 방법에 있어서,A presence server comprising a database for storing status information and subscription information, and a presence server processor for storing, updating, reading, and deleting the status information and subscription information in the database and performing presence user agent communication. In the control method of, 상기 프리젠스 서버 프로세서가 제 1 프리젠스 유저 에이전트에게 메시지를 소정 횟수 반복하여 전달하였음에도 불구하고 확인 응답를 받지 못하는 단계; 및Not receiving an acknowledgment even if the presence server processor repeatedly delivers a message to a first presence user agent a predetermined number of times; And 상기 데이터 베이스에서 상기 제 1 프리젠스 유저 에이전트의 가입 정보를 삭제하는 단계를 포함하는 프리젠스 서버 제어 방법.Deleting the subscription information of the first presence user agent from the database.
KR1020040109044A 2004-12-20 2004-12-20 SPI-based presence server and control method thereof KR100634209B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040109044A KR100634209B1 (en) 2004-12-20 2004-12-20 SPI-based presence server and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040109044A KR100634209B1 (en) 2004-12-20 2004-12-20 SPI-based presence server and control method thereof

Publications (2)

Publication Number Publication Date
KR20060070339A KR20060070339A (en) 2006-06-23
KR100634209B1 true KR100634209B1 (en) 2006-10-16

Family

ID=37164098

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040109044A KR100634209B1 (en) 2004-12-20 2004-12-20 SPI-based presence server and control method thereof

Country Status (1)

Country Link
KR (1) KR100634209B1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080108048A (en) * 2007-06-08 2008-12-11 삼성전자주식회사 Method and system for content level reactive authorization
KR101492627B1 (en) * 2008-01-28 2015-02-16 삼성전자주식회사 System and method for presence subscirption delegation
KR101065538B1 (en) * 2009-09-09 2011-09-19 주식회사 엘지유플러스 Instant message service providing system and control method thereof, mobile communication terminal for instant message communication through instant message service providing system and control method thereof
CN110198351A (en) * 2019-05-29 2019-09-03 深圳前海微众银行股份有限公司 Storage method, device, server-side and the readable storage medium storing program for executing of offline message

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040128391A1 (en) 2002-12-31 2004-07-01 Robert Patzer Method and system for managing a validity period in association with a presence attribute

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040128391A1 (en) 2002-12-31 2004-07-01 Robert Patzer Method and system for managing a validity period in association with a presence attribute

Also Published As

Publication number Publication date
KR20060070339A (en) 2006-06-23

Similar Documents

Publication Publication Date Title
US8060622B2 (en) System and method for session reestablishment between client terminal and server
US7552204B2 (en) Method and system for supporting the communication of presence information among computing devices of a network
US8396972B2 (en) Session control apparatus, software applied to session control apparatus, communication control method, and network system
EP1882348B1 (en) System and method for providing interactive communications
US7650384B2 (en) Maintaining real-time conversations over unreliable connections
WO2004059946A1 (en) Transmission of application information and commands using presence technology
US8315247B2 (en) System and method for providing registration-coupled subscriptions in a session initiation protocol (SIP) environment
KR101075855B1 (en) Pulling information from information souces via refer requests
JP4939450B2 (en) COMMUNICATION SYSTEM, AUTHENTICATION METHOD, AND WEB SERVICE PROVIDING METHOD
EP2178247B1 (en) Sharing status information across a pluarlity of communication networks
US7536481B2 (en) Method and system for re-synchronizing end points when an intermediary detects that the end points may be unsynchronized
KR100634209B1 (en) SPI-based presence server and control method thereof
US20040203432A1 (en) Communication system
US7606904B2 (en) Sending inter-server notifications using an out-of-band communications protocol
EP2218243B1 (en) A method of reducing size of presence messages
EP2064864B1 (en) Remote monitoring of phone calls
KR101455196B1 (en) IMS-based presence service interworking system and method
CN100586110C (en) Method, system and network device for routing a message to a temporarily unavailable network user

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20041220

PA0201 Request for examination
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20060426

Patent event code: PE09021S01D

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20060928

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20061009

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20061010

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20091001

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20101001

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20110929

Start annual number: 6

End annual number: 6

FPAY Annual fee payment

Payment date: 20120928

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 20120928

Start annual number: 7

End annual number: 7

FPAY Annual fee payment

Payment date: 20130923

Year of fee payment: 8

PR1001 Payment of annual fee

Payment date: 20130923

Start annual number: 8

End annual number: 8

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20150909