KR101523997B1 - A Method and Appartus for providing a presence service - Google Patents

A Method and Appartus for providing a presence service Download PDF

Info

Publication number
KR101523997B1
KR101523997B1 KR1020140035862A KR20140035862A KR101523997B1 KR 101523997 B1 KR101523997 B1 KR 101523997B1 KR 1020140035862 A KR1020140035862 A KR 1020140035862A KR 20140035862 A KR20140035862 A KR 20140035862A KR 101523997 B1 KR101523997 B1 KR 101523997B1
Authority
KR
South Korea
Prior art keywords
information
terminal
user
server
service
Prior art date
Application number
KR1020140035862A
Other languages
Korean (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 주식회사 엘지유플러스
Priority to KR1020140035862A priority Critical patent/KR101523997B1/en
Application granted granted Critical
Publication of KR101523997B1 publication Critical patent/KR101523997B1/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Telephonic Communication Services (AREA)

Abstract

A terminal and a method for providing a presence service for a user according to an embodiment of the present invention comprise: a step for collecting first presence information of the user containing a list of presence services the user of the terminal is using based on applications installed on the terminal; a step for registering the collected first presence information of the user and an address book of the user on a presence server; and a step for acquiring second presence information about buddies included in the address book of the user from the presence server. The second presence information about the buddies is a concatenation of presence fragments for each of the presence services enumerated in the first presence information.

Description

프레즌스 서비스를 제공하는 방법 및 장치{A Method and Appartus for providing a presence service}TECHNICAL FIELD [0001] The present invention relates to a method and apparatus for providing a presence service,

본 발명은 사용자들의 프레즌스(presence) 정보에 기초하여 프레즌스 서비스를 제공하는 방법과 그 방법을 실행시키기 위한 단말 및 프레즌스 서버에 관한 발명이다.The present invention relates to a method of providing a presence service based on presence information of users and a terminal and a presence server for executing the method.

IMS(IP multimedia subsystem) 망은 all IP 기반으로 멀티미디어 서비스를 제공하기 위하여 유선 및 무선 네트워크를 IP 기반으로 구축하고, 플랫폼에 독립적으로 각종 통신 서비스를 제공할 수 있는 환경이다. IMS 망은 IP 프로토콜을 사용하여 음성, 비디오, 오디오 및 데이터 등의 복합 멀티미디어 서비스를 제공하고 있으며, 프레즌스 서비스(presence service)는 IMS 망을 통해 제공되는 복합 멀티미디어 서비스에 포함되어 있다.The IP multimedia subsystem (IMS) network is an environment in which a wired and wireless network is constructed based on IP to provide multimedia services based on all IP, and various communication services can be provided independently of the platform. The IMS network provides multimedia multimedia services such as voice, video, audio and data using the IP protocol. Presence services are included in the multimedia service provided through the IMS network.

프레즌스 서비스는, 사용자의 사용여부 및 사용자의 개인 정보등을 나타내는 프레즌스 정보를 수신하여, IMS 망 내부의 프레즌스 서버에 등록한다. 프레즌스 서버에 등록된 사용자가 요청하면, 프레즌스 서버는 사용자가 요청한 버디(buddy)의 프레즌스 정보를 전달한다. 프레즌스 서비스에는 예컨대, 인스턴트 메세징, VoIP(Voice over IP), 이메일, 음성 또는 비디오 능력, 사용자의 이동성 등에 따른 서비스들이 포함된다. 프레즌스 서버는 사용자의 프레즌스 정보를 관리하는데, 사용자는 프레즌스 서버를 통해 자신의 프레즌스 정보의 등록/수정하고, 버디의 프레즌스 정보를 획득할 수 있다.The presence service receives the presence information indicating whether the user is using and the user's personal information, and registers the presence information in the presence server in the IMS network. When a user registered in the presence server requests it, the presence server delivers the presence information of the buddy requested by the user. Presence services include services based on, for example, instant messaging, Voice over IP (VoIP), email, voice or video capabilities, user mobility, and the like. The presence server manages the presence information of the user, and the user can register / modify his / her presence information through the presence server and obtain the presence information of the buddy.

본 발명이 이루고자하는 기술적 과제는, 프레즌스 서버를 IMS 망과 분리하고, 프레즌스 서버와 IMS 망 간의 연결을 위한 프레즌스 게이트웨이를 이용함으로써, IMS 망 및 non-IMS 망 기반의 프레즌스 서비스들의 확장과 결합을 용이하게 하고, 다중 프레즌스 서비스들에 대한 프레즌스 정보를 단일화 함으로써 프레즌스 서버와 단말간의 트랜젝션의 오버헤드를 감소시킬 수 있는 방법 및 장치를 제공하는 데 있다.Disclosure of Invention Technical Problem [8] The present invention has been made in view of the above problems, and it is an object of the present invention to facilitate expansion and integration of presence services based on an IMS network and a non-IMS network by separating a presence server from an IMS network and using a presence gateway for connection between an presence server and an IMS network And to reduce the overhead of transactions between the presence server and the terminals by unifying the presence information for the multiple presence services.

본 발명이 이루고자 하는 기술적 과제는 상술된 기술적 과제에 한정되지 않으며, 본 발명의 실시예들로부터 다른 기술적 과제들이 유추될 수 있다.The technical problem to be solved by the present invention is not limited to the technical problems described above, and other technical problems can be deduced from the embodiments of the present invention.

본 발명의 일 실시예에 따른 단말이 사용자에게 프레즌스(presence) 서비스를 제공하는 방법은, 상기 단말에 설치된 어플리케이션들에 기초하여, 상기 단말의 사용자가 이용 중인 프레즌스 서비스들의 리스트를 포함하는 상기 사용자의 제1 프레즌스 정보를 수집하는 단계; 상기 수집된 사용자의 제1 프레즌스 정보 및 상기 사용자의 주소록을 프레즌스 서버에 등록하는 단계; 및 상기 프레즌스 서버로부터 상기 사용자의 주소록에 포함된 버디(buddy)들에 대한 제2 프레즌스 정보를 획득하는 단계를 포함하고, 상기 버디들에 대한 제2 프레즌스 정보는, 상기 제1 프레즌스 정보에 열거된 상기 프레즌스 서비스들 각각에 대한 프레즌스 프래그먼트(fragment)들이 결합된 것이다.A method of providing a presence service to a user according to an exemplary embodiment of the present invention includes providing a presence service to a user including a list of presence services being used by a user of the terminal, Collecting first presence information; Registering the first presence information of the collected user and the address book of the user on the presence server; And obtaining second presence information for buddies included in the address book of the user from the presence server, wherein the second presence information for the buddies includes information about the buddies that are listed in the first presence information Presence fragments for each of the presence services are combined.

본 발명의 다른 일 실시예에 따른 프레즌스(presence) 서버가 단말에 프레즌스 서비스를 제공하는 방법은, 상기 단말의 사용자가 이용 중인 프레즌스 서비스들의 리스트를 포함하는 상기 사용자의 제1 프레즌스 정보 및 상기 사용자의 주소록을 포함하는 등록 요청 메세지를 상기 단말로부터 수신하는 단계; 상기 사용자의 주소록에 포함된 버디(buddy)들에 대하여, 상기 제1 프레즌스 정보에 열거된 상기 프레즌스 서비스들 각각의 프레즌스 프래그먼트(fragment)들을 수집하는 단계; 상기 수집된 프레즌스 프래그먼트(fragment)들을 결합하여 상기 버디들에 대한 제2 프레즌스 정보를 생성하는 단계; 및 상기 제2 프레즌스 정보를 포함하는 프레즌스 응답 메세지를 상기 단말에 전송하는 단계를 포함한다.A method of providing a presence service to a terminal according to another embodiment of the present invention includes receiving a first presence information of the user including a list of presence services used by a user of the terminal, Receiving a registration request message including an address book from the terminal; Collecting presence fragments of each of the presence services enumerated in the first presence information for buddies included in the address book of the user; Combining the collected presence fragments to generate second presence information for the buddies; And a presence response message including the second presence information to the terminal.

본 발명의 또 다른 일 실시예에 따라서 상술된 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체가 제공된다.There is provided a computer-readable recording medium having recorded thereon a program for executing the above-described method according to another embodiment of the present invention.

본 발명의 또 다른 일 실시예에 따라 사용자에게 프레즌스(presence) 서비스를 제공하는 단말은, 무선 신호를 송수신하는 RF 모듈; 상기 단말에 설치된 어플리케이션들, 상기 사용자의 주소록 및 프레즌스 에이전트(agent)를 저장하는 저장부; 및 상기 저장부에 저장된 프레즌스 에이전트를 실행하여 상기 RF 모듈 및 상기 저장부를 제어하는 프로세서를 포함하고, 상기 프로세서는, 상기 저장부에 저장된 어플리케이션들에 기초하여 상기 단말의 사용자가 이용 중인 프레즌스 서비스들의 리스트를 포함하는 상기 사용자의 제1 프레즌스 정보를 수집하고, 상기 RF 모듈을 통해 상기 수집된 사용자의 제1 프레즌스 정보 및 상기 사용자의 주소록을 프레즌스 서버에 등록하고, 상기 프레즌스 서버로부터 상기 사용자의 주소록에 포함된 버디(buddy)들에 대한 제2 프레즌스 정보를 획득하고, 상기 버디들에 대한 제2 프레즌스 정보는, 상기 제1 프레즌스 정보에 열거된 상기 프레즌스 서비스들 각각에 대한 프레즌스 프래그먼트(fragment)들이 결합된 것이다.According to another embodiment of the present invention, a terminal for providing a presence service to a user includes: an RF module for transmitting and receiving a radio signal; A storage unit for storing applications installed in the terminal, an address book of the user, and a presence agent; And a processor for executing the presence agent stored in the storage unit and controlling the RF module and the storage unit, wherein the processor is configured to execute the presence agent stored in the storage unit in the list of presence services The first presence information of the user and the address book of the user are registered in the presence server through the RF module and are included in the address book of the user from the presence server, Wherein the second presence information for the buddies is obtained by combining presence fragments for each of the presence services listed in the first presence information, will be.

본 발명의 또 다른 일 실시예에 따라 단말에 프레즌스(presence) 서비스를 제공하는 프레즌스 서버는, 상기 단말의 사용자가 이용 중인 프레즌스 서비스들의 리스트를 포함하는 상기 사용자의 제1 프레즌스 정보 및 상기 사용자의 주소록을 포함하는 등록 요청 메세지를 상기 단말로부터 수신하는 수신부; 상기 사용자의 주소록에 포함된 버디(buddy)들에 대하여, 상기 제1 프레즌스 정보에 열거된 상기 프레즌스 서비스들 각각의 프레즌스 프래그먼트(fragment)들을 수집하고, 상기 수집된 프레즌스 프래그먼트들을 결합하여 상기 버디들에 대한 제2 프레즌스 정보를 생성하는 프로세서; 및 상기 제2 프레즌스 정보를 포함하는 프레즌스 응답 메세지를 상기 단말에 전송하는 송신부를 포함한다.According to another embodiment of the present invention, a presence server that provides a presence service to a terminal includes a first presence information of the user including a list of presence services used by a user of the terminal, A receiving unit for receiving a registration request message from the terminal; Collecting presence fragments of each of the presence services listed in the first presence information with respect to buddies included in the address book of the user and combining the collected presence fragments with the buddies A processor for generating second presence information for the first presence information; And a transmitter for transmitting a presence response message including the second presence information to the terminal.

본 발명의 일 실시예에 따르면, IMS 망과 분리된 프레즌스 서버 및 프레즌스 게이트웨이를 통해 IMS 망 기반의 프레즌스 서비스들 뿐 아니라 non-IMS 망 기반의 프레즌스 서비스들의 확장 및 결합이 서버의 증설없이 수행될 수 있으며, 다중의 프레즌스 서비스들에 대한 프레즌스 정보를 단일화하고, 단말 측에서 단일화된 프레즌스 정보를 로컬 데이터베이스에 저장함으로써 프레즌스 서버와 단말간의 트랜젝션의 오버헤드를 감소시킬 수 있다.According to an embodiment of the present invention, expansion and combination of presence services based on non-IMS network as well as presence services based on IMS network can be performed through the presence server and presence gateway separated from the IMS network without additional server And it is possible to reduce the overhead of transactions between the presence server and the terminal by unifying the presence information of the multiple presence services and storing the unified presence information in the local terminal in the local database.

본 발명의 효과는 상술된 효과에 한정되지 않으며, 본 발명의 실시예들로부터 다른 효과들이 유추될 수 있다.The effects of the present invention are not limited to the effects described above, and other effects can be deduced from the embodiments of the present invention.

도 1은 non-IMS 망 기반의 프레즌스 서비스 및 IMS 망 기반의 프레즌스 서비스의 환경을 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 프레즌스 서비스의 환경을 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 단말의 프레즌스 정보 등록 방법의 흐름을 도시한 도면이다.
도 4는 본 발명의 다른 일 실시예에 따른 단말의 프레즌스 정보 등록 방법의 흐름을 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 단말의 프레즌스 정보 요청 방법의 흐름을 도시한 도면이다.
도 6은 본 발명의 다른 일 실시예에 따른 단말의 프레즌스 정보 요청 방법의 흐름을 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 프레즌스 서버의 프레즌스 정보 등록 방법의 흐름을 도시한 도면이다.
도 8은 본 발명의 일 실시예에 따른 프레즌스 서버의 프레즌스 정보 제공 방법의 흐름을 도시한 도면이다.
도 9는 본 발명의 일 실시예에 따른 프레즌스 서비스 제공 방법의 흐름을 도시한 도면이다.
도 10은 본 발명의 일 실시예에 따른 프레즌스 정보를 설명하는 도면이다.
도 11 내지 도 15는 본 발명의 실시예들에 따른 프레즌스 서비스 제공 방법에서의 메세지를 예시한 도면이다.
도 16은 본 발명의 일 실시예에 따른 단말을 도시한 도면이다.
도 17은 본 발명의 일 실시예에 따른 프레즌스 서버를 도시한 도면이다.
1 is a diagram illustrating an environment of a presence service based on a non-IMS network and an presence service based on an IMS network.
2 is a diagram illustrating an environment of a presence service according to an embodiment of the present invention.
3 is a flowchart illustrating a method of registering presence information of a terminal according to an embodiment of the present invention.
4 is a flowchart illustrating a method of registering presence information of a terminal according to another embodiment of the present invention.
5 is a flowchart illustrating a method of requesting presence information of a terminal according to an embodiment of the present invention.
6 is a flowchart illustrating a method of requesting presence information of a terminal according to another embodiment of the present invention.
7 is a flowchart illustrating a method of registering presence information in a presence server according to an embodiment of the present invention.
8 is a flowchart illustrating a method of providing presence information of a presence server according to an embodiment of the present invention.
9 is a flowchart illustrating a method of providing a presence service according to an embodiment of the present invention.
10 is a view for explaining presence information according to an embodiment of the present invention.
11 to 15 are views illustrating messages in a presence service providing method according to embodiments of the present invention.
16 is a diagram illustrating a terminal according to an embodiment of the present invention.
17 is a diagram illustrating a presence server according to an embodiment of the present invention.

이하, 본 발명에 따른 바람직한 실시 형태를 첨부된 도면을 참조하여 상세하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다. 이하의 상세한 설명은 본 발명의 완전한 이해를 제공하기 위해서 구체적 세부사항을 포함한다. 그러나, 당업자는 본 발명이 이러한 구체적 세부사항 없이도 실시될 수 있음을 안다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The following detailed description, together with the accompanying drawings, is intended to illustrate exemplary embodiments of the invention and is not intended to represent the only embodiments in which the invention may be practiced. The following detailed description includes specific details in order to provide a thorough understanding of the present invention. However, those skilled in the art will appreciate that the present invention may be practiced without these specific details.

몇몇 경우, 본 발명의 개념이 모호해지는 것을 피하기 위하여 공지의 구조 및 장치는 생략되거나, 각 구조 및 장치의 핵심기능을 중심으로 한 블록도 형식으로 도시될 수 있다. 또한, 본 명세서 전체에서 동일한 구성요소에 대해서는 동일한 도면 부호를 사용하여 설명한다. 또한, 이하의 설명에서 사용되는 특정(特定) 용어들은 본 발명의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 본 발명의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.In some instances, well-known structures and devices may be omitted or may be shown in block diagram form, centering on the core functionality of each structure and device, to avoid obscuring the concepts of the present invention. In the following description, the same components are denoted by the same reference numerals throughout the specification. In addition, the specific terms used in the following description are provided to aid understanding of the present invention, and the use of such specific terms may be changed into other forms without departing from the technical idea of the present invention.

이하의 설명에서 프레즌스(PS:presence) 정보란, 프레즌스 서비스의 사용자의 상태 및 서비스 사용 가능성(e.g, 로그인 상태, 자리비움, 오프라인, 다른 용무, 식사중, 회의중, 통화 가능, 통화 중, 서비스 접근 권한, 서비스 타입, 서비스 버전), 프레즌스 서비스 사용자가 입력한 개인 정보(e.g, 프로필 정보, 기분 상태, 이미지, 동영상, 일정), 프레즌스 서비스의 사용자 단말의 하드웨어 상태(e.g, 오디오/비디오 capability, UUID, 이동성 지원 여부, 전원 on/off), 소프트웨어 상태(e.g, 서비스 어플리케이션 버전, 서비스 어플리케이션 설치 여부, 지원 언어) 등의 정보를 포함할 수 있으며, 제공되는 프레즌스 서비스의 종류에 따라서 프레즌스 정보는 다양하게 변경될 수 있다. 프레즌스 프래그먼트(fragment)란 프레즌스 정보를 구성하는 데이터들의 서브셋으로서, 필요한 프레즌스 프래그먼트는 프레즌스 서비스에 따라서 달라질 수 있다. 단, 프레즌스 프래그먼트란 임의의 기능적 또는 논리적으로 유의미한 데이터 필드를 말하고, 랜덤하게 추출된 데이터는 프레즌스 프래그먼트에서 제외된다. 버디(buddy)란, 사용자 단말의 주소록에 포함된 다른 사용자를 지칭한다. 제1 프레즌스 정보는 단말 사용자의 프레즌스 정보, 제2 프레즌스 정보는 버디의 프레즌스 정보를 지칭한다. 단말은 user equipment(UE), mobile station(MS), PMP, PDA, 네비게이션, 랩탑, 데스크탑 등의 유선 또는 무선 통신 기능을 갖는 디바이스를 포괄한다.In the following description, presence information refers to presence and service availability of a presence service (eg, login status, away, offline, other service, during meal, during a conference, (Eg, accessibility, service type, service version), presence information (eg, profile information, mood state, image, video, schedule) UUID, mobility support, power on / off), software status (eg, service application version, service application installation, supported language), and depending on the type of presence service provided, . The presence fragment is a subset of the data that constitutes the presence information, and the presence fragment required may vary depending on the presence service. However, the presence fragment refers to any functionally or logically meaningful data field, and the randomly extracted data is excluded from the presence fragment. The buddy refers to another user included in the address book of the user terminal. The first presence information refers to the presence information of the terminal user, and the second presence information refers to the presence information of the buddy. A terminal includes a device having a wired or wireless communication function such as a user equipment (UE), a mobile station (MS), a PMP, a PDA, a navigation system, a laptop, and a desktop.

도 1은 non-IMS 망 기반의 프레즌스 서비스 및 IMS 망 기반의 프레즌스 서비스의 환경을 도시한 도면이다.1 is a diagram illustrating an environment of a presence service based on a non-IMS network and an presence service based on an IMS network.

도 1을 참조하면 프레즌스 서비스 환경은, 제1 프레즌스 서버(140), 제2 프레즌스 서버(150) 및 단말들(110,130,150)을 포함한다. 제1 프레즌스 서버(140)는 IMS 망(120)과 별도로 도시되었으나, 제1 프레즌스 서버(140)는 IMS 망(120) 내의 개체일 수 있다. 제2 프레즌스 서버(140)는 non-IMS 망(130)의 개체일 수 있다.Referring to FIG. 1, the presence service environment includes a first presence server 140, a second presence server 150, and terminals 110, 130, and 150. Although the first presence server 140 is shown separately from the IMS network 120, the first presence server 140 may be an entity within the IMS network 120. The second presence server 140 may be an entity of the non-IMS network 130.

IMS 망(120)은 자사(home) IMS 망과 타사 IMS 망이 포함된다. Non-IMS 망(130)은 IMS 망을 제외한 GSM, UMTS, E-UTRA 등의 코어 네트워크 또는 WLAN, 인터넷 망을 포함할 수 있다. Non-IMS 망(130)과 IMS 망(120)간에는 백홀 인터페이스(미도시)가 존재할 수 있다.The IMS network 120 includes a home IMS network and a third-party IMS network. The non-IMS network 130 may include a core network such as GSM, UMTS, and E-UTRA other than the IMS network, or a WLAN and an Internet network. A backhaul interface (not shown) may exist between the non-IMS network 130 and the IMS network 120.

이하의 설명에서 프레즌스 서비스는, IMS 망 기반의 프레즌스 서비스와 non-IMS 망 기반의 프레즌스 서비스를 포함할 수 있다. IMS 망 기반의 프레즌스 서비스는, 타사 IMS 망과의 연동을 위하여 IMS 망에 따른 서비스의 표준 규격을 따른다. 예컨대, 상용화된 'Join' 모바일 메신저 서비스는 IMS 망 기반의 프레즌스 서비스이다. non-IMS 망 기반의 프레즌스 서비스는, 3rd party 어플리케이션들에 의한 인스턴트 메시징 서비스, 이동통신 사업자 망 내에서만 동작하는 멀티미디어 제공 서비스, 인터넷 기반의 SNS 서비스 등을 예시할 수 있으며, 이에 한정되지 않는다.In the following description, the presence service may include an IMS network-based presence service and a non-IMS network-based presence service. The presence service based on the IMS network conforms to the standard of the service according to the IMS network for interworking with the other IMS network. For example, the commercially available 'Join' mobile messenger service is an IMS network-based presence service. The presence service based on the non-IMS network may be exemplified by an instant messaging service by third party applications, a multimedia providing service that operates only within a mobile communication provider network, and an Internet based SNS service.

제1 프레즌스 서버(140)는 IMS 망 기반의 프레즌스 서비스를 제공하고, 제2 프레즌스 서버(150)는 non-IMS 망 기반의 프레즌스 서비스를 제공한다. 제1 프레즌스 서버(140)와 제1 단말(110)은 SIP(session initiation protocol)/XCAP(XML Configuration Access Protocol)에 기초하여 데이터를 송수신한다.The first presence server 140 provides the presence service based on the IMS network, and the second presence server 150 provides the presence service based on the non-IMS network. The first presence server 140 and the first terminal 110 transmit and receive data based on SIP (session initiation protocol) / XCAP (XML Configuration Access Protocol).

SIP 단말들이 상호 식별하여 그 위치를 찾고, 세션을 개시하거나 변경하기 위한 절차를 명시한 프로토콜로서, 전화, 음성 메일, 인스턴트 메시징을 위한 프레즌스 서비스 세션의 생성, 수정, 종료를 제어하는 request/response 구조를 정의한다. SIP 은 TCP(Transmission Control Protocol)와 UDP(User Datagram Protocol)를 통해 전송될 수 있으며, SIP URL을 통해 사용자를 식별하기 때문에 IP 주소와 독립적으로 사용자를 구별할 수 있다. XCAP은 프레즌스 정보를 조회, 등록 또는 수정하는 기능을 지원하는 프로토콜로서, XML 기반의 프레즌스 정보의 문서를 관리하기 위하여 HTTP(Hypertext Transfer Protocol)가 사용된다. 프레즌스 정보의 등록에 HTTP PUT 명령, 프레즌스 정보의 조회에는 HTTP GET 명령, 프레즌스 정보의 삭제에는 HTTP DELETE 명령이 사용된다.A protocol that specifies the procedures for SIP terminals to identify each other, find its location, and initiate or change sessions. The protocol includes a request / response structure that controls creation, modification, and termination of presence service sessions for telephone calls, voicemail, and instant messaging. define. SIP can be transmitted through Transmission Control Protocol (TCP) and User Datagram Protocol (UDP), and identifies the user through the SIP URL, so that the user can be distinguished from the IP address independently. XCAP is a protocol that supports the function to inquire, register or modify presence information. Hypertext transfer protocol (HTTP) is used to manage documents of presence information based on XML. The HTTP PUT command is used to register presence information, the HTTP GET command is used to inquire presence information, and the HTTP DELETE command is used to delete presence information.

제1 프레즌스 서버(140)는 주소록 서버(141), 주소록 DB(143), PS 서버(142) 및 PS DB(144)를 포함한다. 주소록 서버(141) 및 주소록 DB(143)는 사용자의 주소록을 등록 및 관리하고, PS 서버(142) 및 PS DB(144)는 등록된 주소록의 버디들에 대한 제2 프레즌스 정보 및 사용자에 대한 제1 프레즌스 정보를 조회, 등록 및 관리한다. 표준에 따르면 주소록 서버(141)과 PS 서버(142)가 서로 다른 네트워크 주소를 갖는 개체로 분리된다.The first presence server 140 includes an address book server 141, an address book DB 143, a PS server 142, and a PS DB 144. The address book server 141 and the address book DB 143 register and manage the address book of the user and the PS server 142 and the PS DB 144 register the second presence information about the registered address book buddies and the user information 1 Presence information is viewed, registered and managed. According to the standard, the address book server 141 and the PS server 142 are separated into entities having different network addresses.

제2 프레즌스 서버(150)는 주소록 서버(151), 주소록 DB(153), PS 서버(152) 및 PS DB(154)를 포함한다. 제2 프레즌스 서버(150)의 각 구성은 제1 프레즌스 서버(140)에 관한 설명으로부터 이해될 수 있다. 제2 프레즌스 서버(150)와 제1 단말(110)간의 정보 교환은 SIP/XCAP 기반으로 수행될 수 있지만, 이에 한정되는 것은 아니다. 제2 프레즌스 서버(150)는 IMS 망에서 요구하는 표준 규격을 따르지 않기 때문에, 프레즌스 서버의 운용자의 선택에 따라서 임의의 프로토콜이 사용될 수 있다.The second presence server 150 includes an address book server 151, an address book DB 153, a PS server 152, and a PS DB 154. Each configuration of the second presence server 150 can be understood from the description of the first presence server 140. [ The exchange of information between the second presence server 150 and the first terminal 110 may be performed based on SIP / XCAP, but is not limited thereto. Since the second presence server 150 does not conform to the standard standard required in the IMS network, an arbitrary protocol can be used according to the selection of the presence server operator.

제1 프레즌스 서버(140)에서 제공되는 프레즌스 서비스와 제2 프레즌스 서버(150)에서 제공되는 프레즌스 서비스는 서로 주소록 및 프레즌스 정보를 공유하고 있지 않으며, 제1 단말(110)과 정의한 데이터 교환 인터페이스도 서로 상이하기 때문에, 프레즌스 서비스 별로 프레즌스 서버가 설치된다. 다시 말해서, 새로운 타입의 프레즌스 서비스를 제공하기 위해서는, 새로운 프레즌스 서버의 증설이 필요하다는 문제점이 있다.The presence service provided by the first presence server 140 and the presence service provided by the second presence server 150 do not share address book and presence information with each other and the data exchange interfaces defined with the first terminal 110 are also mutually The presence server is installed for each presence service. In other words, in order to provide a new type of presence service, there is a problem that a new presence server needs to be added.

제1 단말(110)에는 non-IMS 망 기반의 프레즌스 서비스를 제공하는 PS 어플리케이션 #0와 IMS 망 기반의 프레즌스 서비스를 제공하는 PS 어플리케이션 #1~N이 설치되어 있다. 이 때, N+1개의 PS 어플리케이션들은 서로 독립적으로 동작하므로, 어플리케션들마다 개별적으로 제1 또는 제2 프레즌스 서버에서 제1 프레즌스 정보 및 주소록을 등록하고, 제2 프레즌스 정보를 획득한다. PS 어플리케이션 #1~N이 모두 공통적인 주소록과 제 1 및 제2 프레즌스 정보를 필요로하는 경우에도, PS 어플리케이션 #1~N들 간에 서로 주소록과 제1 및 제2 프레즌스 정보를 공유할 수 있는 인터페이스는 정의되어 있지 않다. 결국, PS 어플리케이션 #1~N이 각각 제1 프레즌스 서버(140)와 데이터를 교환하고, 그에 따라서 높은 트랜젝션 오버헤드가 발생된다.The first terminal 110 is provided with a PS application # 0 for providing a presence service based on a non-IMS network and PS applications # 1 to N for providing an IMS network-based presence service. At this time, since the (N + 1) PS applications operate independently of each other, the first and second presence servers individually register the first presence information and the address book for each of the applications, and acquire the second presence information. Even if the PS applications # 1 to #N all need the common address book and the first and second presence information, the PS applications # 1 to #n can share the address book and the first and second presence information with each other Is not defined. As a result, each of the PS applications # 1 to N exchanges data with the first presence server 140, thereby causing a high transaction overhead.

도 2는 본 발명의 일 실시예에 따른 프레즌스 서비스의 환경을 도시한 도면이다. 전술한 설명과 중복되는 내용은 그 설명을 생략한다.2 is a diagram illustrating an environment of a presence service according to an embodiment of the present invention. The description overlapping with the above description is omitted.

도 2를 참조하면, 프레즌스 서비스 환경은 프레즌스 게이트웨이(240, GW: Gateway), 프레즌스 서버(250), 프레즌스 DB(253) 및 단말(210)을 포함한다.2, the presence service environment includes a presence gateway 240, a presence server 250, a presence DB 253, and a terminal 210.

프레즌스 GW(240) 및 프레즌스 서버(250)는 모두 IMS 망(220) 외부에 위치한다. 프레즌스 GW(240)는 IMS 망(220)에 연결되어 있으며, 프레즌스 서버(250)는 프레즌스 GW(240)를 통해 IMS 망(220)에 액세스한다.Both the presence GW 240 and the presence server 250 are located outside the IMS network 220. The presence GW 240 is connected to the IMS network 220 and the presence server 250 accesses the IMS network 220 via the presence GW 240.

프레즌스 서버(250)는 IMS 망(220)과 직접적으로 데이터를 교환하지 않으므로, 프레즌스 서버(250)는 IMS 망이 요구하는 표준 규격과 다르게 구성될 수 있다. 프레즌스 서버(250)에 분리된 주소록 서버와 PS 서버를 설치하는 대신에, 소프트웨어를 통해서 주소록 기능 모듈(251)과 프레즌스 기능 모듈(252)이 구현된다. 프레즌스 서버(250)는 IMS 망 기반의 프레즌스 서비스와 non-IMS 망 기반의 프레즌스 서비스를 모두 제공한다. 또한, 프레즌스 DB(253)를 통해서, 다중의 프레즌스 서비스들에 대한 주소록과 프레즌스 정보를 통합하여 관리하고 있다. 따라서, non-IMS 망 기반의 프레즌스 서비스인지 IMS 망기반의 프레즌스 서비스인지 여부에 관계없이, 새로운 프레즌스 서비스의 추가가 프레즌스 서버의 증설 없이, 기 존재하는 프레즌스 서버(250)을 통해서 용이하게 구현될 수 있다.Since the presence server 250 does not directly exchange data with the IMS network 220, the presence server 250 may be configured differently from the standard specification required by the IMS network. Instead of installing the separate address book server and the PS server in the presence server 250, the address book function module 251 and the presence function module 252 are implemented through software. Presence server 250 provides both an IMS network-based presence service and a non-IMS network-based presence service. Also, through the presence DB 253, address book and presence information for multiple presence services are integrated and managed. Therefore, regardless of whether it is a presence service based on a non-IMS network or an presence service based on an IMS network, addition of a new presence service can be easily implemented through an existing presence server 250 have.

한편, 도 2에서는 설명의 편의를 위하여 프레즌스 서버(250)가 단일의 개체로 도시되었지만, 로드 밸런싱과 네트워크 처리를 분산하기 위하여, 다중의 하드웨어 개체들을 하나의 논리적 프레즌스 서버(250)로 구성할 수도 있다. 또한, 프레즌스 DB(253) 또는 프레즌스 GW(240)은 프레즌스 서버(250)와 논리적 또는 물리적으로 하나의 개체로 구현될 수도 있다.Although the presence server 250 is shown as a single entity in FIG. 2 for convenience of description, multiple hardware entities may be configured as a single logical presence server 250 in order to balance load balancing and network processing. have. In addition, the presence DB 253 or the presence GW 240 may be implemented as a single entity logically or physically with the presence server 250.

프레즌스 서버(250)와 단말(210)간의 데이터 교환은 프레즌스 서버(250)의 운용자의 결정에 따라서 선택된 프로토콜이 사용될 수 있다. 예컨대, SIP/XCAP에 비하여 트랜젝션을 감소시킬 수 있는 HTTP rest 프로토콜이 사용될 수 있다. IMS 망에서 지원하는 SIP/XCAP 프로토콜 대신 HTTP rest 프로토콜이 사용되는 경우, IMS 망 기반의 프레즌스 서비스의 제공에 문제가 발생될 수 있다. 즉, IMS 망으로 HTTP rest 기반의 메세지를 전송한다면, IMS 망(220)에서는 프레즌스 서버(250)의 운용자가 자체적으로 정의한 메세지의 의미를 알 수 없다. 따라서, IMS 망으로 전송되는 메세지는 도 1과 같이 반드시 SIP/XCAP 프로토콜 기반으로 작성되어야 한다.The exchange of data between the presence server 250 and the terminal 210 may be performed in accordance with the determination of the operator of the presence server 250. For example, an HTTP rest protocol that can reduce transactions compared to SIP / XCAP can be used. When the HTTP rest protocol is used instead of the SIP / XCAP protocol supported in the IMS network, a problem may arise in the provision of the presence service based on the IMS network. That is, if the HTTP rest based message is transmitted to the IMS network, the meaning of the message defined by the operator of the presence server 250 in the IMS network 220 is unknown. Therefore, the message transmitted to the IMS network must be created based on the SIP / XCAP protocol as shown in FIG.

본 발명의 일 실시예에 따르면, IMS 망(220) 액세스 이전의 세션들, '프레즌스 GW(240)-프레즌스 서버(250)-단말(210)'에서는 트랜젝션을 감소시킬 수 있는 HTTP rest 프로토콜을 사용하되, IMS 망(220)과 프레즌스 GW(240)간에는 SIP/XCAP 프로토콜을 사용한다. 이를 위하여, 프레즌스 GW(240)는 HTTP rest 프로토콜 기반의 메세지와 SIP/XCAP 프로토콜 기반의 메세지간의 포맷 변환 및 역변환을 수행한다.According to an embodiment of the present invention, the sessions before the access to the IMS network 220, the presence GW 240, the presence server 250, and the terminal 210 use an HTTP rest protocol capable of reducing transactions The SIP / XCAP protocol is used between the IMS network 220 and the presence GW 240. For this purpose, the presence GW 240 performs format conversion and inverse conversion between the HTTP rest protocol based message and the SIP / XCAP protocol based message.

단말(210)은 PS 에이전트(211)을 포함한다. PS 에이전트(211)는 프레즌스 서버(250)와 PS 어플리케이션들 #0~#N 간의 주소록 등록, 사용자의 제1 프레즌스 정보 또는 버디들의 제 2 프레즌스 정보의 조회, 변경, 등록 등의 절차를 매개한다. PS 에이전트(211)는 프레즌스 서버(250)로부터 다중의 프레즌스 서비스들에 대하여 통합된 제2 프레즌스 정보를 획득한다. PS 에이전트(211)는 획득한 제2 프레즌스 정보를 단말(210) 내부의 로컬 DB(미도시)에 저장한다. 각 PS 어플리케이션들 #0~#N 은 네트워크를 통해서 프레즌스 서버(250)에 액세스하는 대신, 로컬 DB에서 필요한 프레즌스 프래그먼트를 획득한다. 이 때, PS 에이전트(211)는 PS 어플리케이션들 #0~#N에 프레즌스 프래그먼트를 제공하기 위한 API(Appliccation Program Interface)를 포함한다. PS 에이전트(211)는 로컬 DB에 저장된 제2 프레즌스 정보 중 필요한 프레즌스 프래그먼트만을 추출하여 각 PS 어플리케이션들 #0~#N에 제공한다. 이하 도 2의 환경에서, 프레즌스 서버(250), 단말(210) 및 프레즌스 GW(240)의 동작에 대한 보다 상세한 실시예들을 살펴본다.The terminal 210 includes a PS agent 211. The PS agent 211 mediates the procedure of registering the address book between the presence server 250 and the PS applications # 0 to #N, the first presence information of the user or the second presence information of the buddies. The PS agent 211 obtains the integrated second presence information for the multiple presence services from the presence server 250. The PS agent 211 stores the acquired second presence information in a local DB (not shown) in the terminal 210. Each of the PS applications # 0 to #N obtains the presence fragment required in the local DB instead of accessing the presence server 250 through the network. At this time, the PS agent 211 includes an application program interface (API) for providing presence fragments to the PS applications # 0 to #N. The PS agent 211 extracts only the presence fragments among the second presence information stored in the local DB and provides the extracted presence fragments to the PS applications # 0 to #N. Hereinafter, more detailed embodiments of the operation of the presence server 250, the terminal 210, and the presence GW 240 will be described in the context of FIG.

도 3은 본 발명의 일 실시예에 따른 단말의 프레즌스 정보 등록 방법의 흐름을 도시한 도면이다.3 is a flowchart illustrating a method of registering presence information of a terminal according to an embodiment of the present invention.

도 3을 참조하면, 먼저 단말은 단말에 설치된 다수의 어플리케이션들 중 프레즌스 서비스들을 제공하는 PS 어플리케이션들을 검출한다(305). 단말이 PS 어플리케리션인지 여부를 판단하기 위하여 PS 어플리케이션 내에 프레즌스 서비스 제공을 나타내는 지시자가 포함될 수 있다. 이와 달리, 단말은 사전에 입력된 정보, 예컨대 어플리케이션 식별자, 명칭 등을 통해서, PS 어플리케이션인지 여부를 판단할 수도 있다.Referring to FIG. 3, the terminal detects PS applications that provide presence services among a plurality of applications installed in the terminal (step 305). An indicator indicating presence service provision may be included in the PS application to determine whether the terminal is a PS application. Alternatively, the terminal may determine whether it is a PS application through previously input information, for example, an application identifier, a name, and the like.

단말은 검출된 각 PS 어플리케이션들로부터 사용자의 프레즌스 프래그먼트를 독출한다(310). 단말이 독출하는 프레즌스 프래그먼트는 PS 어플리케이션마다 달라질 수 있다.예컨대, 도 10에 도시된 Fragment 1 내지 6이 제1 프레즌스 정보를 구성한다고 가정할 때, PS 어플리케이션 #1로부터는 Fragment 1 내지 5를 추출하고, PS 어플리케이션 #4로부터는 Fragment 6을 추출할 수 있다. 예컨대, PS 어플리케이션이 인스턴트 메신저인 경우 프레즌스 프래그먼트로서 사용자의 프로필, 대화명, 아이디, 서비스 로그인 상태 및 서비스 버전에 관한 정보, 사용자의 사진, 사용자의 기분 상태 중 적어도 하나를 독출할 수 있다. 열거된 정보들 이외에도, 단말은 PS 어플리케이션으로부터 사용자의 프레즌스 프래그먼트를 독출할 수 있다. 단말은 PS 어플리케이션으로부터 독출한 사용자의 프레즌스 프래그먼트를 로컬 DB에 저장할 수 있다.The terminal reads the presence fragment of the user from each of the detected PS applications (310). For example, assuming that Fragments 1 to 6 shown in FIG. 10 constitute first presence information, Fragments 1 to 5 are extracted from the PS application # 1, and the presence fragments read out by the UE may be different for each PS application. , And Fragment 6 can be extracted from the PS application # 4. For example, if the PS application is an instant messenger, at least one of the user's profile, screen name, ID, information about the service login status and service version, the user's picture, and the user's mood state can be read as presence fragments. In addition to the listed information, the terminal can read the user's presence fragments from the PS application. The terminal can store the presence fragment of the user read from the PS application in the local DB.

단말은 각 PS 어플리케이션들로부터 독출된 정보를 사용자의 프레즌스 프래그먼트를 결합하여, 제1 프레즌스 정보로 통합할 수 있다. 본 실시예의 설명을 위해, 도 10의 Fragment 1 내지 6은 사용자의 제1 프레즌스 정보를 구성한다고 가정한다. 단말은 PS 어플리케이션 #1으로부터 Fragment 1 내지 5를 독출하고, PS 어플리케이션 #4로부터 Fragment 5를 독출한다. 단말은, PS 어플리케이션 #1과 #4로부터 독출된 Fragment 1 내지 6을 하나의 제1 프레즌스 정보로 통합한다. 한편, Fragment 1,3,4는 PS 어플리케이션 #2를 통해서도 독출될 수 있다. 본 발명의 일 실시예에 따르면, 단말은 PS 어플리케이션 #2와 #1의 Fragment들이 중복되는 경우, PS 어플리케이션 #2 로부터 프레즌스 프래그먼트를 독출하는 것을 생략할 수 있다.The terminal may combine the information read from each PS application with the presence fragments of the user and combine them into the first presence information. For the purpose of explanation of this embodiment, it is assumed that Fragment 1 to 6 of FIG. 10 constitute the first presence information of the user. The terminal reads fragments 1 to 5 from PS application # 1 and reads fragments 5 from PS application # 4. The terminal merges the fragments 1 to 6 read from the PS applications # 1 and # 4 into one first presence information. Fragments 1, 3, and 4 can also be read through the PS application # 2. According to an embodiment of the present invention, when the fragments of PS application # 2 and # 1 overlap, the terminal may omit reading presence fragment from PS application # 2.

제1 프레즌스 정보에는 단말의 사용자가 이용중인 프레즌스 서비스들의 리스트가 포함될 수 있다. 예를 들어, PS 어플리케이션 #1이 제1 서비스, PS 어플리케이션 #2이 제2 서비스, PS 어플리케이션 #3이 제3 서비스, PS 어플리케이션 #4가 제4 서비스라면, 제1 프레즌스 정보에는, 제1 내지 제4 서비스의 리스트가 포함될 수 있다. 이와 같이 생성된 제1 프레즌스 정보는 단말에 포함된 로컬 데이터 베이스에 저장될 수 있다.The first presence information may include a list of presence services that the user of the terminal is using. For example, if the PS application # 1 is the first service, the PS application # 2 is the second service, the PS application # 3 is the third service, and the PS application # 4 is the fourth service, A list of fourth services may be included. The first presence information thus generated may be stored in a local database included in the terminal.

단말은 로컬 데이터 베이스에 저장된 제1 프레즌스 정보를 프레즌스 서버에 등록하기 위하여 등록 요청 메세지를 전송한다(315). 본 발명의 일 실시예에 따를 때, 제1 프레즌스 정보의 등록은 단말에 설치된 프레즌스 에이전트의 네트워크 동기화 타이머에 따라서 주기적으로 수행될 수 있다. 예컨대, 네트워크 동기화 타이머가 만료되면, 단말은 제1 프레즌스 정보를 프레즌스 서버에 등록하기 위하여 등록 요청 메시지를 프레즌스 서버에 전송할 수 있다. 다른 실시예에 따라서 단말의 프레즌스 에이전트는, 로컬 데이터베이스에 저장된 제1 프레즌스 정보가 변경됨에 등록 요청 메시지의 전송을 이벤트 트리거할 수 있다. 또 다른 실시예에 따르면 특정 PS 어플리케이션의 요청에 따라서 등록 요청 메시지의 전송이 트리거될 수도 있다.The terminal transmits a registration request message to register the first presence information stored in the local database with the presence server (315). According to an embodiment of the present invention, the registration of the first presence information can be periodically performed according to the network synchronization timer of the presence agent installed in the terminal. For example, if the network synchronization timer expires, the terminal may send a registration request message to the presence server to register the first presence information with the presence server. According to another embodiment, the presence agent of the terminal may trigger an event of transmission of the registration request message because the first presence information stored in the local database is changed. According to another embodiment, the transmission of the registration request message may be triggered according to the request of the specific PS application.

등록 요청 메세지에는, 제1 프레즌스 정보, 단말 사용자의 주소록 및 인증 정보가 포함될 수 있다. 단말 사용자의 주소록은, 단말 자체의 주소록이거나 또는 PS 어플리케이션들로부터 독출된 주소록일 수 있다. 사용자 인증 정보는, 프레즌스 서비스들의 식별자, 각 프레즌스 서비스들 내에서 사용자의 식별자 및 프레즌스 서버로부터 할당된 액세스 키 중 적어도 하나를 포함할 수 있다.The registration request message may include the first presence information, the address book of the terminal user, and the authentication information. The address book of the terminal user may be the address book of the terminal itself or the address book read from the PS applications. The user authentication information may include at least one of an identifier of the presence services, an identifier of the user within each presence service, and an access key assigned from the presence server.

프레즌스 서비스들의 식별자는 해당 등록 요청 메세지가 어느 프레즌스 서비스에 대한 것인지를 식별하기 위한 정보를 의미한다. 프레즌스 서비스 내에서 사용자의 식별자는, 프레즌스 서비스를 사용하는 타 사용자들과 해당 단말의 사용자를 구별하기 위한 정보를 의미한다. 프레즌스 서버로 부터 할당된 액세스 키는 프레즌스 서버에 접속할 권한이 있는 사용자 인지를 판단하기 위한 정보이다.The identifier of the presence services means information for identifying which presence service the corresponding registration request message is for. The identifier of the user in the presence service means information for distinguishing the users of the terminal from other users using the presence service. The access key allocated from the presence server is information for determining whether or not the user is authorized to access the presence server.

본 발명의 일 실시예에 따르면, 단말이 프레즌스 서버로 전송하는 등록 요청 메세지는 HTTP rest 에 기반하는 메세지일 수 있다. 도 11(b)는 본 발명의 일 실시예에 따른 단말의 등록 요청 메세지를 예시한다. 도 11(b)는 HTTP rest 프로토콜에 기초하여 생성된 것으로서, 단말의 주소록을 프레즌스 서버에 등록할 것을 요청하는 메세지이다. "PUT /1.0/AIA/{CTN}/Presence/Buddy_Lists HTTP/1.1"는 등록을 요청하는 명령어이고, Buddy_Lists HTTP는 메세지의 페이로드가 주소록임을 나타낸다. SERVICE_ID": "TEST_ROA_SERVICE_ID" 는 등록 요청메세지가 프레즌스 서비스 TEST_ROA_SERVICE_ID에 관한 것임을 나타내고, "CP_ID": "TEST_ROA_CP_ID"는 해당 서비스 내에서 사용자의 ID를 나타낸다. "ACCESS_KEY":"TEST_ROA_ACCESS_KEY"는 단말이 프레즌스 서버로부터 할당받은 액세스키를 나타낸다. data 는 주소록에 포함된 버디들의 이름과 전화번호를 포함한다. 도 11(b)는 설명을 위하여 주소록의 등록을 예시한 것이며, 본 발명의 권리범위는 이에 한정되지 않는다.According to an embodiment of the present invention, the registration request message transmitted from the terminal to the presence server may be a message based on the HTTP rest. 11 (b) illustrates a registration request message of a terminal according to an embodiment of the present invention. 11 (b) is a message generated based on the HTTP rest protocol, and is a message requesting registration of the address book of the terminal to the presence server. "PUT /1.0/AIA/{CTN}/Presence/Buddy_Lists HTTP / 1.1" is a command requesting registration, and Buddy_Lists HTTP indicates that the payload of the message is an address book. &Quot; SERVICE_ID ": "TEST_ROA_SERVICE_ID" indicates that the registration request message is related to the presence service TEST_ROA_SERVICE_ID, and "CP_ID ":" TEST_ROA_CP_ID " Data includes the names and phone numbers of the buddies included in the address book. FIG. 11 (b) illustrates the registration of the address book for the purpose of explanation, and the scope of rights of the present invention is not limited thereto .

도 3으로 돌아가서, 프레즌스 서버는 등록 요청 메세지에 포함된 인증 정보를 통해서 사용자를 인증한다(320). 인증에 성공하면, 프레즌스 서버는 제1 프레즌스 정보 및 사용자의 주소록을 프레즌스 서버에 등록하고, 단말은 프레즌스 서버로부터 등록 응답 메세지를 수신한다(325). 등록 응답 메세지는, 등록된 제1 프레즌스 정보 및 사용자의 주소록에 기초하여 생성된 제1 해쉬(hash) 값을 포함하고 있다. 도 12(b)는 본 발명의 일 실시예에 따른 HTTP rest 프로토콜 기반의 등록 응답 메세지를 예시한다. HTTP/1.1 200 OK는 등록이 성공하였음을 나타내고, etag는 등록된 제1 프레즌스 정보 및 사용자의 주소록에 기초하여 생성된 제1 해쉬(hash) 값을 의미한다.Returning to FIG. 3, the presence server authenticates the user through the authentication information included in the registration request message (320). If the authentication is successful, the presence server registers the first presence information and the address book of the user in the presence server, and the terminal receives the registration response message from the presence server (325). The registration response message includes a first hash value generated based on the registered first presence information and the address book of the user. 12 (b) illustrates a registration response message based on the HTTP rest protocol according to an embodiment of the present invention. HTTP / 1.1 200 OK indicates that the registration is successful, and etag means a first hash value generated based on the registered first presence information and the address book of the user.

도 4는 본 발명의 다른 일 실시예에 따른 단말의 프레즌스 정보 등록 방법의 흐름을 도시한 도면이다. 전술한 설명과 중복되는 내용은 설명을 생략한다. 본 실시예를 위하여 도 10의 Fragment 3은 사용자의 프레즌스 프래그먼트라고 가정한다.4 is a flowchart illustrating a method of registering presence information of a terminal according to another embodiment of the present invention. The description overlapping with the above description is omitted. For the present embodiment, it is assumed that Fragment 3 in FIG. 10 is a presence fragment of the user.

도 4를 참조하면, 단말은 PS 어플리케이션 #1을 통해서 단말 내부의 로컬 DB의 사용자의 특정 프레즌스 프래그먼트를 변경한다(405). 예컨대, PS 어플리케이션 #1은 사용자의 특정 프레즌스 프래그먼트로서 도 10의 Fragment 3을 변경한다.Referring to FIG. 4, the terminal changes the specific presence fragment of the user of the local DB in the terminal through the PS application # 1 (405). For example, PS Application # 1 changes Fragment 3 of FIG. 10 as the user's specific presence fragment.

단말은 PS 어플리케이션 #2가 사용자의 특정 프레즌스 프래그먼트를 사용하는지 여부를 판단한다(410). 예컨대, PS 어플리케이션 #2가 Fragment 3를 사용하는지 여부를 판단한다.The terminal determines whether the PS application # 2 uses the user's specific presence fragment (410). For example, it is determined whether the PS application # 2 uses Fragment 3 or not.

만약, PS 어플리케이션 #2 가 Fragment 3를 사용하는 경우, 단말은 로컬 DB에서 변경된 Fragment 3로 PS 어플리케이션 #2의 단말 사용자의 정보를 변경한다.If PS Application # 2 uses Fragment 3, the terminal changes the information of the terminal user of PS Application # 2 to Fragment 3 changed in the local DB.

단말은 로컬 DB에서 변경된 사용자의 특정 프레즌스 프래그먼트를 프레즌스 서버와 동기화 하기 위하여, 등록 요청 메세지를 프레즌스 서버에 전송한다(420). 등록 요청 메세지는 로컬 DB에 저장된 사용자의 제1 프레즌스 정보 전체를 포함할 수 있으나, 변경된 사용자의 특정 프레즌스 프래그먼트만을 포함할 수도 있다. 또한, 단말은 등록 요청 메세지를 전송하면서 어느 프레즌스 서비스에 관한 것인지를 특정하기 위하여, 프레즌스 서비스 식별자를 등록 요청 메세지에 포함시킬 수 있다. 예컨대, 단말은 사용자의 특정 프레즌스 프래그먼트가 PS 어플리케이션 #1에서만 사용되는 경우 서비스 1의 식별자를, PS 어플리케이션 #1 및 2에서 사용되는 경우 서비스 1과 2의 식별자를 등록 요청 메세지에 포함시킬 수 있다. 본 발명의 다른 실시예에 따르면, 서비스를 특정하지 않고, 등록 요청 메세지를 전송할 수도 있다.The terminal sends 420 a registration request message to the presence server in order to synchronize the specific presence fragment of the changed user in the local DB with the presence server. The registration request message may include the entire first presence information of the user stored in the local DB, but may include only the specific presence fragments of the changed user. In addition, the terminal may include the presence service identifier in the registration request message in order to specify which presence service is concerned while transmitting the registration request message. For example, the terminal may include the identifier of service 1 if the user's specific presence fragment is used only in PS application # 1, and the identifier of services 1 and 2, if used in PS applications # 1 and 2, in the registration request message. According to another embodiment of the present invention, a registration request message may be transmitted without specifying a service.

단말은 프레즌스 서버로부터 등록 응답 메세지를 수신한다(425). 등록 응답 메세지에는 등록된 사용자의 제1 프레즌스 정보에 대한 제1 해쉬값이 포함된다.The terminal receives the registration response message from the presence server (425). The registration response message includes a first hash value for the first presence information of the registered user.

이후, 단말은 프레즌스 서버에 등록된 사용자의 제1 프레즌스 정보와의 로컬 DB에 저장된 사용자의 제1 프레즌스 정보간의 일치여부를 확인하기 위하여, 등록 응답 메세지의 제1 해쉬값을 프레즌스 서버에 전송할 수 있다(430). 제1 해쉬값의 전송은 주기적으로 수행되거나 또는 임의의 PS 어플리케이션의 실행에 따라서 수행될 수 있다.The terminal may then transmit the first hash value of the registration response message to the presence server to confirm whether the first presence information of the user registered in the presence server matches the first presence information of the user stored in the local DB (430). The transmission of the first hash value may be performed periodically or in accordance with the execution of any PS application.

프레즌스 서버는, 현재 프레즌스 DB에 보관된 제1 프레즌스 정보의 제1 해쉬값과 단말로부터 수신한 제1 해쉬값이 일치하는지 여부를 판단한다(435). 프레즌스 서버는 제1 해쉬값들의 일치여부를 단말에 통지한다.The presence server determines whether the first hash value of the first presence information stored in the current presence DB matches the first hash value received from the terminal (435). The presence server notifies the terminal whether the first hash values match.

만약, 제1 해쉬값들이 서로 불일치하는 경우, 단말은 로컬 DB에 저장된 제1 프레즌스 정보와 프레즌스 서버에 등록된 제1 프레즌스 정보와 동기화를 위하여, 로컬 DB에 저장된 제1 프레즌스 정보가 포함된 등록 요청 메세지를 프레즌스 서버에 전송한다(440). 이상의 실시예에서는 제1 프레즌스 정보를 변경하는 경우를 예시하였으나, 단말의 주소록 변경도 유사하게 수행될 수 있음을 당업자라면 이해할 수 있다.If the first hash values are inconsistent with each other, the UE transmits a registration request including the first presence information stored in the local DB to the first presence information stored in the local DB and the first presence information registered in the presence server, The message is transmitted to the presence server (440). Although the first embodiment has been described as an example of changing the first presence information, those skilled in the art can understand that the change of the address book of the terminal can be similarly performed.

도 5는 본 발명의 일 실시예에 따른 단말의 프레즌스 정보 요청 방법의 흐름을 도시한 도면이다. 전술한 설명과 중복되는 내용은 설명을 생략한다.5 is a flowchart illustrating a method of requesting presence information of a terminal according to an embodiment of the present invention. The description overlapping with the above description is omitted.

먼저 단말은 인증 정보를 포함하는 PS 요청 메세지를 프레즌스 서버에 전송한다(505). PS 요청 메세지는 프레즌스 서버에 제2 프레즌스 정보를 요청하는 메세지이다. 인증 정보는, 제2 프레즌스 정보가 필요한 프레즌스 서비스들의 식별자, 상기 프레즌스 서비스들 내에서 사용자의 식별자 및 프레즌스 서버로부터 할당된 액세스 키 중 적어도 하나를 포함할 수 있다. 도 13(b)는, HTTP rest 프로토콜에 기초한 PS 요청 메세지를 예시한다.First, the terminal transmits a PS request message including authentication information to the presence server (505). The PS request message is a message requesting the presence server for the second presence information. The authentication information may include at least one of an identifier of presence services requiring the second presence information, an identifier of the user in the presence services, and an access key assigned from the presence server. 13 (b) illustrates a PS request message based on the HTTP rest protocol.

프레즌스 서버는 사용자 인증을 수행한다(510).The presence server performs user authentication (510).

인증에 성공하면, 단말은 프레즌스 서버로부터 PS 응답 메세지를 수신한다(515). PS 응답 메세지는 프레즌스 서버에 등록된 사용자의 프레즌스 서비스들에 관한 것으로서, 프레즌스 서버에 등록된 주소록에 포함된 버디(buddy)들의 프레즌스 정보가 포함된다. 예를 들어, 사용자 A는 자신이 사용중인 프레즌스 서비스 1,2,3와 주소록을 프레즌스 서버에 등록하였고, 사용자 A의 주소록에는 버디 B,C,D가 저장되어 있다고 가정한다. 또한, 버디 B,C,D 가 서비스 1,2,3 을 모두 사용하는 것을 가정한다. 사용자 A의 단말이 프레즌스 서버에 PS 요청 메세지를 전송하면, 프레즌스 서버는 제2 프레즌스 정보 = {프래그먼트(서비스 1, 버디 B),프래그먼트(서비스 1, 버디 C),프래그먼트(서비스 1, 버디 D),프래그먼트(서비스 2, 버디 B),프래그먼트(서비스 2, 버디 C),프래그먼트(서비스 2, 버디 D),프래그먼트(서비스 3, 버디 B),프래그먼트(서비스 3, 버디 C),프래그먼트(서비스 3, 버디 D)}를 제공한다. 즉 제2 프레즌스 정보는, 제1 프레즌스 정보에 열거된 프레즌스 서비스들 각각에 대한 프레즌스 프래그먼트(fragment)들이 결합된 것이다.If the authentication is successful, the terminal receives a PS response message from the presence server (515). The PS response message relates to presence services of users registered in the presence server, and includes presence information of buddies included in the address book registered in the presence server. For example, assume that user A has registered the presence services 1, 2, 3 and the address book that it is using with the presence server, and the buddy B, C, D is stored in the address book of user A. It is also assumed that buddies B, C, and D use services 1, 2, and 3. When the terminal of the user A transmits a PS request message to the presence server, the presence server transmits the second presence information = {Fragment (Service 1, Buddy B), Fragment (Service 1, Buddy C), Fragments (Service 1, Buddy D) (Service 2, buddy C), fragment (service 2, buddy D), fragment (service 3, buddy B), fragment (service 3, buddy C), fragment , Buddy D)}. That is, the second presence information is a combination of presence fragments for each of the presence services enumerated in the first presence information.

한편, 프레즌스 요청 메세지에 프레즌스 서비스들의 식별자가 특정되는 경우, 프레즌스 서버는 해당 프레즌스 서비스에 대한 프레즌스 프래그먼트만을 단말에 제공할 수도 있다. PS 응답 메세지에는 제2 프레즌스 정보에 기초하여 생성된 제2 해쉬값이 포함될 수 있다.On the other hand, if an identifier of the presence services is specified in the presence request message, the presence server may provide only the presence fragment for the presence service to the terminal. The PS response message may include a second hash value generated based on the second presence information.

도 15는 본 발명의 일 실시예에 따른 PS 응답 메세지를 예시한다. 도 15에는 설명의 편의를 위하여, 하나의 프레즌스 서비스 및 버디 1명에 관한 정보를 수신하고 있는 것을 가정하나, 다수의 버디들 및 다수의 프레즌스 서비스들에 관한 정보가 수신될 수 있음을 당업자라면 이해할 수 있다. 도 15를 참조하면, "etag":“114daa2f646e000000000000c628565f”는 제2 해쉬값을 나타낸다. “tuple"은 프레즌스 프래그먼트로서 서비스 또는 버디별로 구별될 수 있으며, 본 실시예에서 “tuple"은 1개이다. “id”:“aia-t0”는 tuple의 식별자이고, “service-id”:“all-ip-agent:voice”는 버디가 all-IP 기반의 음성 서비스 사용자라는 것을 나타내고, version은 서비스 버전 정보를, deviceID는 버디 단말의 고유 식별자를 나타내고, contact는 버디의 SIP 식별자를 나태난다. tuple 이하에 device는 단말에 관한 정보, person은 가입자의 이름 및 정보, ims-ip는 IMS 망에서의 IP 주소, internet-ip는 Internet 망에서의 IP 주소, activities는 on/off 라인 상태, timestamp는 정보의 업데이트 시각을 각각 나타낸다.15 illustrates a PS response message in accordance with an embodiment of the present invention. Although it is assumed in FIG. 15 that information about one presence service and one buddy is received for convenience of explanation, it is understood by those skilled in the art that information on a plurality of buddies and a plurality of presence services can be received . Referring to Fig. 15, "etag ": " 114daa2f646e000000000000c628565f " represents a second hash value. The " tuple "is a presence fragment, and can be distinguished by service or buddy. In this embodiment, " tuple" "Id:" "aia-t0" is the identifier of the tuple, "service-id": "all-ip-agent: voice" indicates that the buddy is an all- , DeviceID indicates the unique identifier of the buddy terminal, and contact indicates the buddy's SIP identifier. tuple Here, device is the information about the terminal, person is the name and information of the subscriber, ims-ip is the IP address in the IMS network, internet-ip is the IP address in the Internet network, activities are on / off line status, And the update time of the information, respectively.

단말은 수신한 제2 프레즌스 정보를 로컬 DB에 저장하고(520), 로컬 DB에저장된 제2 프레즌스 정보와 PS 어플리케이션들을 동기화한다(525). 로컬 DB에 저장된 제2 프레즌스 정보와 PS 어플리케리션들의 동기화는 프레즌스 서버에 대한 액세스 없이 수행될 수 있다. 예컨대, 단말은 로컬 DB에 저장된 제2 프레즌스 정보로부터 특정 프레즌스 어플리케이션에 대응되는 적어도 하나의 프레즌스 프래그먼트를 추출한다. 도 10을 참조하여 특정 프레즌스 어플리케이션이 프레즌스 어플리케이션 #3이라고 가정한다. 이 때, 단말은 로컬 DB에 저장된 제2 프레즌스 정보로부터 Fragment 1,2,4,5를 추출한다. 단말은 추출된 Fragment 1,2,4,5를 프레즌스 어플리케이션 #3에 제공한다.The terminal stores the received second presence information in the local DB (520), and synchronizes the second presence information and the PS applications stored in the local DB (525). Synchronization of the second presence information and PS applications stored in the local DB may be performed without access to the presence server. For example, the terminal extracts at least one presence fragment corresponding to a specific presence application from second presence information stored in the local DB. 10, it is assumed that the specific presence application is presence application # 3. At this time, the terminal extracts Fragment 1, 2, 4, 5 from the second presence information stored in the local DB. The terminal provides the extracted Fragment 1,2,4,5 to the presence application # 3.

본 발명의 일 실시예에 따를 때, 프레즌스 어플리케이션들과의 동기화는 단말에 설치된 프레즌스 에이전트의 로컬 동기화 타이머에 따라서 주기적으로 트리거될 수 있다. 예를 들어, 단말은 로컬 동기화 타이머가 만료되면, 프레즌스 어플레케이션들과 일괄적으로 동기화를 수행할 수 있다. 다른 실시예에 따르면, 동기화는 프레즌스 에이전트의 명령에 따라서 이벤트 트리거될 수 있다. 또 다른 실시예에 따르면, 동기화는 프레즌스 어플리케이션의 개별적인 동기화 요청에 의해서 트리거 될 수도 있다.도 6은 본 발명의 다른 일 실시예에 따른 단말의 프레즌스 정보 요청 방법의 흐름을 도시한 도면이다. 전술한 설명과 중복되는 내용은 설명을 생략한다.According to one embodiment of the present invention, synchronization with presence applications can be triggered periodically according to the presence synchronization agent's local synchronization timer installed in the terminal. For example, the terminal may perform synchronization in batch with presence applications when the local synchronization timer expires. According to another embodiment, the synchronization may be event triggered according to a command of the presence agent. According to another embodiment, the synchronization may be triggered by a separate synchronization request of the presence application. FIG. 6 is a flowchart illustrating a method of requesting presence information of a terminal according to another embodiment of the present invention. The description overlapping with the above description is omitted.

단말은 프레즌스 어플리케이션 #1으로부터 제2 프레즌스 정보에 포함된 프레즌스 프래그먼트의 조회를 요청받는다(605). 예컨대, 사용자 조작 또는 프레즌스 어플리케이션 #1의 주기적인 동기화 스케줄에 따라서 단말은 제2 프레즌스 정보에 포함된 프레즌스 프래그먼트의 조회를 요청받는다. 프레즌스 프래그먼트의 조회 요청은 버디 1명에 관한 것일 수도 있으나, 다수의 버디들에 관한 것일 수도 있다.The terminal receives a request for the presence fragment included in the second presence information from the presence application # 1 (605). For example, according to the user operation or the periodic synchronization schedule of the presence application # 1, the terminal is requested to inquire the presence fragment included in the second presence information. The lookup request for a presence fragment may be for one buddy, but it may be for many buddies.

단말은 이전에 PS 응답 메세지를 통해 수신된 제2 해쉬값을 프레즌스 서버에 전송한다(610). 예컨대, 도 15의 "etag":“114daa2f646e000000000000c628565f" 프레즌스 서버에 전송한다.The terminal transmits a second hash value received via the PS response message to the presence server (610). For example, "etag ": " 114daa2f646e000000000000c628565f"

프레즌스 서버는 자신이 갖는 제2 해쉬값과 단말로부터 수신된 제2 해쉬값이 일치하는지 여부를 판단한다(615). 프레즌스 서버는 제2 해쉬값들이 서로 일치하는지 여부를 단말에 통지한다. 만약, 제2 해쉬값들이 서로 일치하는 경우, 단말은 로컬 DB에 저장된 제2 프레즌스 정보로부터 프레즌스 프래그먼트를 PS 어플리케이션 #1에 제공한다.The presence server determines whether the second hash value of the presence server matches the second hash value received from the terminal (615). The presence server notifies the terminal whether the second hash values match each other. If the second hash values match each other, the terminal provides the presence fragment from the second presence information stored in the local DB to the PS application # 1.

만약, 해쉬값이 서로 일치하지 않는 경우, 단말은 프레즌스 서버로부터 업데이트된 제2 프레즌스 정보를 포함하는 PS 응답 메세지를 수신한다(620).If the hash values do not match, the terminal receives a PS response message containing the updated second presence information from the presence server (620).

단말은 PS 어플리케이션 #1과 PS 어플리케이션 #2가 사용하는 제2 프레즌스 정보의 프레즌스 프래그먼트가 동일한지 여부에 따라서 PS 어플리케이션 #2와 동기화할지 여부를 판단한다(625). 예컨대, 도 10과 같이 PS 어플리케이션 #1이 Fragment 1 내지 5를 사용하고, Fragment 1 내지 5만 변경된 경우라면, PS 어플리케이션 #2와의 동기화가 필요하다. 또한, Fragment 6의 변경이 없다면, PS 어플리케이션 #4와의 동기화는 필요하지 않다.The terminal determines whether to synchronize with the PS application # 2 according to whether the presence fragments of the second presence information used by the PS application # 1 and the PS application # 2 are the same (625). For example, if PS Application # 1 uses Fragment 1 through 5 and Fragment 1 through Fragment 5 change as shown in FIG. 10, synchronization with PS Application # 2 is required. Also, if there is no change in Fragment 6, synchronization with PS application # 4 is not required.

만약, PS 어플리케이션 #1과 PS 어플리케이션 #2가 사용하는 제2 프레즌스 정보의 프레즌스 프래그먼트가 동일하지 않은 경우, 단말은 프레즌스 서버로부터 수신된 제2 프레즌스 정보를 로컬 DB에 저장하고, PS 어플리케이션 #1과 동기화를 수행한다(630).If the presence fragments of the second presence information used by the PS application # 1 and the PS application # 2 are not the same, the terminal stores the second presence information received from the presence server in the local DB, Synchronization is performed (630).

이와 달리, PS 어플리케이션 #1과 PS 어플리케이션 #2가 사용하는 제2 프레즌스 정보가 동일한 경우, 단말은 프레즌스 서버로부터 수신된 제2 프레즌스 정보를 로컬 DB에 저장하고, PS 어플리케이션 #1 및 #2와 동기화를 수행한다(635). 한편, 단말은 PS 어플리케이션 #2와의 동기화를 위하여, 제2 프레즌스 정보에서 Fragment 1,3,4를 추출한다. 단말은 추출된 Fragment 1,3,4를 PS 어플리케이션 #2에 제공한다. 이와 같이 PS 어플리케이션들은 단말의 로컬 데이터베이스로부터 개별적으로 프레즌스 프래그먼트들을 획득할 수 있다.Alternatively, if the second presence information used by the PS application # 1 and the PS application # 2 are the same, the terminal stores the second presence information received from the presence server in the local DB and synchronizes with the PS applications # 1 and # 2 (635). On the other hand, in order to synchronize with the PS application # 2, the terminal extracts Fragment 1, 3, 4 from the second presence information. The terminal provides the extracted Fragment 1, 3, 4 to the PS application # 2. As such, PS applications can acquire presence fragments separately from the local database of the terminal.

도 7은 본 발명의 일 실시예에 따른 프레즌스 서버의 프레즌스 정보 등록 방법의 흐름을 도시한 도면이다. 전술한 설명과 중복되는 내용은 설명을 생략한다.7 is a flowchart illustrating a method of registering presence information in a presence server according to an embodiment of the present invention. The description overlapping with the above description is omitted.

도 7을 참조하면, 프레즌스 서버는 단말로부터 등록 요청 메세지를 수신한다(705). 단말은 등록 요청 메세지에 포함된 인증 정보를 이용하여 사용자를 인증한다(710).Referring to FIG. 7, the presence server receives a registration request message from the terminal (705). The terminal authenticates the user using the authentication information included in the registration request message (710).

만약, 사용자 인증에 성공하면, 프레즌스 서버는 등록 요청 메세지에 포함된 제1 프레즌스 정보 및 주소록을 프레즌스 DB 에 저장한다(715).If the user authentication is successful, the presence server stores the first presence information and the address book included in the registration request message in the presence database (715).

프레즌스 서버는 프레즌스 DB에 저장된 제1 프레즌스 정보 및 주소록을 이용하여 제1 해쉬값을 생성하고, 제1 해쉬값을 포함하는 등록 응답 메세지를 전송한다(720).The presence server generates a first hash value using the first presence information and the address book stored in the presence DB, and transmits a registration response message including the first hash value (720).

도 8은 본 발명의 일 실시예에 따른 프레즌스 서버의 프레즌스 정보 제공 방법의 흐름을 도시한 도면이다. 전술한 설명과 중복되는 내용은 설명을 생략한다.8 is a flowchart illustrating a method of providing presence information of a presence server according to an embodiment of the present invention. The description overlapping with the above description is omitted.

도 8을 참조하면, 프레즌스 서버는 단말로부터 PS 요청 메세지를 수신한다(805). 프레즌스 서버는 PS 요청 메세지에 포함된 인증 정보를 이용하여 사용자 인증을 수행한다(810).Referring to FIG. 8, the presence server receives a PS request message from the terminal (805). The presence server performs user authentication using the authentication information included in the PS request message (810).

사용자 인증에 성공하면, 프레즌스 서버는 프레즌스 DB에 저장된 사용자의 제1 프레즌스 정보 및 주소록을 독출한다(815). 프레즌스 서버는 제1 프레즌스 정보를 통해서, 단말의 사용자가 사용중인 프레즌스 서비스들의 리스트를 파악할 수 있다. 또한, 주소록을 통해서 제2 프레즌스 정보와 관련된 버디들을 결정할 수 있다.If the user authentication is successful, the presence server reads the first presence information and the address book of the user stored in the presence DB (815). The presence server can grasp the list of presence services being used by the user of the terminal through the first presence information. In addition, the buddies associated with the second presence information can be determined through the address book.

프레즌스 서버는 제1 프레즌스 정보에 열거된 프레즌스 서비스들 중에서 제1 서비스가 IMS 망 기반의 서비스 인지 여부를 판단한다(820). 프레즌스 서버에는 어떠한 프레즌스 서비스가 IMS 망 기반의 서비스이고, 어떠한 프레즌스 서비스가 non-IMS 망 기반의 서비인지에 관한 사전 정보가 입력되어 있을 수 있다.The presence server determines whether the first service among the presence services listed in the first presence information is an IMS network-based service (820). Presence server may be provided with pre-information about which Presence Service is an IMS network-based service and which Presence Service is a non-IMS network-based service.

만약, 제1 서비스가 IMS 망 기반의 서비스라고 판단되면, 주소록에 포함된 버디들 중 제1 버디가 타사 IMS 망의 가입자인지 여부를 판단한다(825). 자사 IMS 망의 가입자라면, 제1 버디의 프레즌스 프래그먼트는 프레즌스 DB에 저장되어 있기 때문에, 프레즌스 DB로부터 제1 버디의 프레즌스 프래그먼트를 독출할 수 있다(840).If it is determined that the first service is a service based on the IMS network, it is determined 825 whether the first buddy among the buddies included in the address book is a subscriber of the third-party IMS network. If the subscriber is a subscriber of the IMS network, the presence fragment of the first buddy is stored in the presence DB, so that the presence fragment of the first buddy can be read from the presence DB (840).

이와 달리, 타사 IMS 망의 가입자라면, 제1 버디의 프레즌스 프래그먼트는 타사 IMS 망으로부터 획득하여야 하기 때문에, 프레즌스 서버는 프레즌스 GW에 제1 서비스 및 제1 버디를 특정하여, 프레즌스 프래그먼트를 요청하여 이를 수신한다(830). 본 실시예에서는 설명의 편의를 위하여, 제1 버디 1명을 예시하였으나, 주소록에 저장된 다수의 버디들에 대하여 820 내지 830이 동시에 수행될 수 있음을 당업자라면 이해할 수 있다.On the other hand, if the subscriber is a subscriber of a third-party IMS network, since the presence fragment of the first buddy should be obtained from the third-party IMS network, the presence server specifies the first service and the first buddy to the presence GW and requests presence fragments (830). In the present embodiment, one first buddy is illustrated for convenience of description, but it is understood by those skilled in the art that a plurality of buddies stored in the address book can be simultaneously performed.

820에서 제1 서비스가 non-IMS 망 기반의 서비스라고 판단되면, 프레즌스 서버는 제1 서비스가 자사 제공 non-IMS 망 기반의 서비스인지 여부를 판단한다(835). 만약, 제1 서비스가 타사 제공 non-IMS 망 기반의 서비스인 경우, 프레즌스 서버는 프레즌스 게이트웨이에 제1 서비스 및 제1 버디를 특정하여 프레즌스 정보를 요청 및 수신한다(830). 타사 제공 non-IMS 망 기반의 서비스는, 예컨대, 3rd party 어플리케이션에 의한 인스턴트 메시징 서비스나, 인터넷 망 기반의 SNS 를 예시할 수 있다.If it is determined in step 820 that the first service is a non-IMS network-based service, the presence server determines whether the first service is a service based on the non-IMS network provided by the presence server (835). If the first service is a service based on a non-IMS network provided by a third party, the presence server requests and receives the presence information by specifying the first service and the first buddy to the presence gateway (830). The non-IMS network-based service provided by the third party can illustrate, for example, an instant messaging service by a third party application or an SNS based on the Internet network.

835에서 제1 서비스가 자사 제공 non-IMS 망 기반의 서비스라고 판단되면, 프레즌스 서버는 프레즌스 DB로부터 제1 서비스의 제1 버디의 프레즌스 프래그먼트를 독출한다(840).If it is determined in step 835 that the first service is a non-IMS network-based service provided by the service provider, the presence server reads out the presence fragment of the first buddy of the first service from the presence database (840).

프레즌스 서버는, 830 및 840을 통해서 수집된 프레즌스 프래그먼트들을 결합하여, 제2 프레즌스 정보를 생성한다(845). 생성된 제2 프레즌스 정보는 프레즌스 DB에 저장된다. 프레즌스 서버는 제2 프레즌스 정보를 이용하여 제2 해쉬값을 생성한다.The presence server combines the presence fragments collected through 830 and 840 to generate 845 the second presence information. The generated second presence information is stored in the presence DB. The presence server generates the second hash value using the second presence information.

프레즌스 서버는 해쉬값 및 제2 프레즌스 정보를 포함하는 PS 응답 메세지를 단말에 전송한다(850).The presence server transmits a PS response message including the hash value and the second presence information to the terminal (850).

도 9는 본 발명의 일 실시예에 따른 프레즌스 서비스 제공 방법의 흐름을 도시한 도면이다. 전술한 설명과 중복되는 내용은 설명을 생략한다.9 is a flowchart illustrating a method of providing a presence service according to an embodiment of the present invention. The description overlapping with the above description is omitted.

먼저, 단말은 프레즌스 서버에 제1 타입의 등록 요청 메세지를 전송한다(905). 예컨대, 단말은 도 11(b)의 메세지를 전송하여 제1 프레즌스 정보 및 주소록을 등록한다.First, the terminal transmits a first type registration request message to the presence server (905). For example, the terminal transmits the message of FIG. 11 (b) to register the first presence information and the address book.

프레즌스 서버는 제1 타입의 등록 응답 메세지를 단말에 전송한다(910). 예컨대, 프레즌스 서버는 도 12(b)의 메세지를 통해, 제2 프레즌스 정보를 단말에 제공한다.The presence server sends a registration response message of the first type to the terminal (910). For example, the presence server provides the second presence information to the terminal through the message of Fig. 12 (b).

단말은 제1 타입의 PS 요청 메세지를 프레즌스 서버에 전송한다(915). 예컨대, 단말은 도 13(b)의 메세지를 통해, 제2 프레즌스 정보를 요청한다.The terminal transmits a first type PS request message to the presence server (915). For example, the terminal requests the second presence information through the message of Fig. 13 (b).

프레즌스 서버는 제2 프레즌스 정보를 구성하는 프레즌스 프래그먼트를 위하여 프레즌스 GW에 제1 타입의 PS 요청 메세지를 전송한다(920). 920의 PS 요청 메세지는 915의 PS 요청 메세지의 서브 셋일 수 있다. 즉, 프레즌스 서버는 프레즌스 DB로부터 독출 가능한 프레즌스 프래그먼트를 제외한 나머지 프레즌스 프래그먼트를 프레즌스 GW에 요청한다.The presence server transmits a first type PS request message to the presence GW for presence fragments constituting the second presence information (920). The PS request message of 920 may be a subset of the 915 PS request message. That is, the presence server requests the presence GW for the remaining fragments excluding the presence fragments readable from the presence DB.

프레즌스 GW는 프레즌스 서버로부터 수신한 제1 타입의 PS 요청 메세지에 포함된 데이터를, 타사 IMS 망 기반의 프레즌스 서비스에 관한 제1 요청 데이터 및 타사 제공 non-IMS 망 기반의 프레즌스 서비스에 관한 제2 요청 데이로 구분한다. 예컨대, 제2 요청 데이터는 인터넷 망 기반으로 제공되는 SNS 서비스에 대한 프레즌스 프래그먼트를 요청하는 데이터 일 수 있다.The presence GW stores data included in the PS request message of the first type received from the presence server into the first request data related to the presence service based on the third party IMS network and the second request with respect to the presence service based on the third party provided non- Divided into days. For example, the second request data may be data requesting a presence fragment for an SNS service provided on the Internet network.

프레즌스 GW는 프레즌스 서버로부터 수신한 제1 타입의 PS 요청 메세지에 포함된 제1 요청 데이터를 제2 타입의 PS 요청 메세지로 변환한다. 예컨대, 프레즌스 GW는 도 13(b)의 HTTP rest 프로토콜 기반의 PS 요청 메세지에 포함된 제1 요청 데이터를, 도 13(a)의 SIP/XCAP 프로토콜 기반의 PS 요청 메세지로 변환한다. 한편, 도 13(a)는 SIP/XCAP 프로토콜 기반의 PS 요청 메세지로서, sip:010xxxx@lte-lguplus.co.kr는 단말의 사용자를 IMS 망에서 식별하기 위한 정보이다.The presence GW converts the first request data included in the first type PS request message received from the presence server into the second type PS request message. For example, the presence GW converts the first request data included in the PS request message based on the HTTP rest protocol shown in FIG. 13 (b) into the PS request message based on the SIP / XCAP protocol shown in FIG. 13 (a). 13 (a) is a PS request message based on the SIP / XCAP protocol, and sip: 010xxxx@lte-lguplus.co.kr is information for identifying a user of the terminal in the IMS network.

또한, 프레즌스 GW는 프레즌스 서버로부터 수신한 제1 타입의 PS 요청 메세지에 포함된 제2 요청 데이터를 제3 타입의 PS 요청 메세지로 변환한다. 제3 타입은 SNS 서비스 제공자가 공개한 open API에 따른 프로토콜일 수 있다.Also, the presence GW converts the second request data included in the first type PS request message received from the presence server into the third type PS request message. The third type may be a protocol according to the open API disclosed by the SNS service provider.

프레즌스 GW는 제2 타입의 PS 요청 메세지를 IMS 망으로 전송하고(925), IMS 망으로부터 제2 타입의 PS 응답 메세지를 수신한다(935). 예컨대, 프레즌스 GW는 도 13(a)의 메세지를 IMS 망으로 전송하고, IMS 망으로부터 도 14의 메세지를 IMS 망으로부터 수신한다. 도 14는 SIP/XCAP 프로토콜 기반의 PS 응답 메세지로서, <presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:c="urn:ietf:params:xml:ns:pidf:cipid" xmlns:pdm="urn:ietf:params:xml:ns:pidf:data-model" xmlns:rpid="urn:ietf:params:xml:ns:pidf:rpid" xmlns:op="urn:oma:xml:prs:pidf:oma-pres" xmlns:opd="urn:oma:xml:pde:pidf:ext" entity="sip:user1@lte-lguplus.co.kr"> 는 XML 문서의 포맷을 정의한다.The presence GW transmits 925 a second type PS request message to the IMS network and receives 935 a second type PS response message from the IMS network. For example, the presence GW transmits the message of Fig. 13 (a) to the IMS network and receives the message of Fig. 14 from the IMS network from the IMS network. Fig. 14 shows a PS / PS response message based on the SIP / XCAP protocol. The message < presence xmlns = "urn: ietf: params: xml: ns: pidf" xmlns: c = "urn: ietf: params: xml: ns: pidf: xmlns: op = "urn: oma: xml: ns: pidf: rpid" xmlns: pdm = "urn: ietf: params: xml: ns: : xmlns: opd = "urn: oma: xml: pde: pidf: ext" entity = "sip: user1@lte-lguplus.co.kr"> defines the format of the XML document .

프레즌스 GW는 제3 타입의 PS 요청 메세지를 인터넷 망으로 전송하고(930), 인터넷 망으로부터 제3 타입의 PS 응답 메세지를 수신한다(940).The presence GW transmits a third type of PS request message to the Internet network (930) and receives a third type of PS response message from the Internet network (940).

프레즌스 GW는 제2 타입의 PS 응답 메세지 및 제3 타입의 PS 응답 메세지를 각각 제1 타입의 PS 응답 메세지로 변환하여 프레즌스 서버에 전송한다(945). 예컨대, 프레즌스 GW는 도 14의 SIP/XCAP 프로토콜 기반의 PS 응답 메세지를 도 15의 HTTP rest 프로토콜 기반의 PS 응답 메세지로 변환하여, 프레즌스 서버에 전송한다.The presence GW converts the second type PS response message and the third type PS response message into a first type PS response message, respectively, and transmits the message to the presence server (945). For example, the presence GW converts the SIP response message based on the SIP / XCAP protocol shown in Fig. 14 into a PS response message based on the HTTP rest protocol shown in Fig. 15 and transmits the message to the presence server.

프레즌스 서버는 프레즌스 서버로부터 수신한 제1 타입의 PS 응답 메세지를 단말에 전송한다(950).The presence server transmits a first type of PS response message received from the presence server to the terminal (950).

한편, 타사 IMS 망의 가입자(버디)는 단말의 사용자에 대한 제1 프레즌스 정보를 요청할 수 있다. 이 경우 프레즌스 GW는 IMS 망으로부터 제2 타입의 PS 요청 메세지를 수신한다(955). 프레즌스 GW는 제2 타입의 PS 요청 메세지를 제1 타입의 PS 요청 메세지로 변환하고, 프레즌스 서버에 전송한다(960). 프레즌스 서버는 제1 프레즌스 정보를 포함하는 제1 타입의 PS 응답 메세지를 프레즌스 GW에 전송한다(965). 프레즌스 GW는 제1 프레즌스 정보를 포함하는 제1 타입의 PS 응답 메세지를 제2 타입의 PS 응답 메세지로 변환하여, IMS 망으로 전송한다(970).Meanwhile, the subscriber (buddy) of the third-party IMS network can request the first presence information for the user of the terminal. In this case, the presence GW receives a second type PS request message from the IMS network (955). The presence GW converts the second type PS request message to a first type PS request message and transmits it to the presence server (960). The presence server sends 965 a first type of PS response message containing the first presence information to the presence GW. The presence GW converts the first type of PS response message including the first presence information into a second type of PS response message and transmits it to the IMS network (970).

이하, 도 16 내지 도 17을 통해 단말, 프레즌스 서버 및 프레즌스 게이트웨이의 구조를 설명한다. 전술한 설명과 중복되는 설명은 생략되며 당업자라면 전술한 설명으로부터 단말, 프레즌스 서버 및 프레즌스 게이트웨이의 구성을 이해할 수 있다.Hereinafter, the structure of the terminal, the presence server, and the presence gateway will be described with reference to FIGS. The description overlapping with the above description is omitted, and a person skilled in the art can understand the configuration of the terminal, the presence server and the presence gateway from the above description.

도 16은 본 발명의 일 실시예에 따른 단말을 도시한 도면이다.16 is a diagram illustrating a terminal according to an embodiment of the present invention.

도 16을 참조하면 단말(210)는 송신부(212), 수신부(213), 저장부(214) 및 프로세서(215)를 포함한다. 송신부(212)는 RF(radio frequency) 신호를 송신하고, 수신부(213)는 RF(radio frequency) 신호를 수신한다. 송신부(212) 및 수신부(213)은 하나의 RF 모듈(216)로 구현될 수 있다. 저장부(214)에는 PS 어플리케이션들, 프레즌스 에이전트, 주소록 및 로컬 DB가 저장된다. 프로세서(215)는 프레즌스 에이전트를 실행하여 RF 모듈 및 저장부를 제어한다. 아울러 전술한 실시예들 및 후술하는 설명에서 단말의 동작은 소프트웨어 관점에서는 프레즌스 에이전트의 동작으로 이해될 수 있으며, 하드웨어 관점에서는 프레즌스 에이전트의 실행에 의한 프로세서(215)의 제어에 따른 것으로 이해될 수 있다.16, the terminal 210 includes a transmitter 212, a receiver 213, a storage 214, and a processor 215. The transmitting unit 212 transmits a radio frequency (RF) signal, and the receiving unit 213 receives a radio frequency (RF) signal. The transmitting unit 212 and the receiving unit 213 may be implemented as one RF module 216. The storage unit 214 stores PS applications, a presence agent, an address book, and a local DB. The processor 215 executes the presence agent to control the RF module and the storage unit. In addition, in the above-described embodiments and the following description, the operation of the terminal can be understood as a behavior of the presence agent from a software point of view, and from a hardware point of view it can be understood that it is controlled by the processor 215 by execution of a presence agent .

프로세서(215)는, 저장부(214)에 저장된 어플리케이션들에 기초하여 단말의 사용자가 이용 중인 프레즌스 서비스들의 리스트를 포함하는 사용자의 제1 프레즌스 정보를 수집한다. 프로세서(215)는, RF 모듈(216)을 통해 사용자의 제1 프레즌스 정보 및 사용자의 주소록을 프레즌스 서버에 등록한다. 프로세서(215)는, 프레즌스 서버로부터 사용자의 주소록에 포함된 버디(buddy)들에 대한 제2 프레즌스 정보를 획득한다. 여기서, 버디들에 대한 제2 프레즌스 정보는, 제1 프레즌스 정보에 열거된 프레즌스 서비스들 각각에 대한 프레즌스 프래그먼트(fragment)들이 결합된 것일 수 있다.The processor 215 collects the first presence information of the user including the list of presence services used by the user of the terminal based on the applications stored in the storage 214. [ The processor 215 registers the first presence information of the user and the address book of the user on the presence server through the RF module 216. [ The processor 215 obtains second presence information for buddies contained in the user's address book from the presence server. Here, the second presence information for the buddies may be a combination of presence fragments for each of the presence services enumerated in the first presence information.

프로세서(215)는, 저장부(214)에 저장된 상기 어플리케이션들 중 프레즌스 서비스들을 제공하는 프레즌스 어플리케이션들을 검출한다. 프로세서(215)는, 검출된 프레즌스 어플리케이션들로부터 사용자의 프로필, 대화명, 아이디, 서비스 로그인 상태 및 서비스 버전에 관한 정보 중 적어도 하나를 독출한다. 한편, 프레즌스 서비스들은 IMS(IP Multimedia subsystem) 망 기반의 서비스 및 non-IMS 망 기반의 서비스를 포함한다. 프로세서(215)는, 프레즌스 서버와 HTTP rest 프로토콜 기반으로 데이터를 송수신하도록 RF 모듈(216)을 제어한다.The processor 215 detects presence applications that provide presence services among the applications stored in the storage unit 214. [ The processor 215 reads from the detected presence applications at least one of information about the user's profile, screen name, ID, service login status, and service version. Presence services include IMS (IP Multimedia subsystem) network based services and non-IMS network based services. The processor 215 controls the RF module 216 to transmit and receive data based on the HTTP rest protocol with the presence server.

프로세서(215)는, RF 모듈(216)을 통해, 프레즌스 서버와의 인증을 위한 인증 정보, 제1 프레즌스 정보 및 주소록을 포함하는 등록 요청 메세지를 프레즌스 서버에 전송한다. 프로세서(215)는, RF 모듈(216)을 통해, 프레즌스 서버와의 인증이 성공하면 제1 프레즌스 정보 및 주소록에 기초하여 생성된 제1 해쉬(hash) 값을 포함하는 등록 응답 메세지를 수신한다.The processor 215 transmits to the presence server, via the RF module 216, a registration request message including authentication information for authentication with the presence server, first presence information, and an address book. The processor 215 receives via the RF module 216 a registration response message including a first hash value generated based on the first presence information and the address book when authentication with the presence server is successful.

프로세서(215)는, RF 모듈(216)을 통해, 프레즌스 서버와의 인증을 위한 인증 정보를 포함하는 프레즌스 요청 메세지를 프레즌스 서버에 전송한다. 프레즌스 서버와의 인증이 성공하면 프로세서(215)는, RF 모듈(216)을 통해, 제2 프레즌스 정보 및 제2 프레즌스 정보에 기초하여 생성된 제2 해쉬(hash) 값을 포함하는 프레즌스 응답 메세지를 수신한다. 여기서, 인증 정보는, 프레즌스 서비스들의 식별자, 프레즌스 서비스들 내에서 사용자의 식별자 및 프레즌스 서버로부터 할당된 액세스 키 중 적어도 하나를 포함할 수 있다.The processor 215 transmits, through the RF module 216, a presence request message containing authentication information for authentication with the presence server to the presence server. If authentication with the presence server is successful, the processor 215, via the RF module 216, sends a presence response message containing a second hash value generated based on the second presence information and the second presence information . Here, the authentication information may include at least one of an identifier of the presence services, an identifier of the user in the presence services, and an access key assigned from the presence server.

프로세서(215)는, 제2 프레즌스 정보로부터 프레즌스 서비스들 각각에 대한 프레즌스 프래그먼트들을 추출한다. 프로세서(215)는, 추출된 프레즌스 프래그먼트들을 프레즌스 어플리케이션들에 선택적으로 제공한다. 프로세서(215)는, 제2 프레즌스 정보를 저장부(214)에 포함된 로컬 데이터베이스에 저장한다. 프레즌스 어플리케이션들은 로컬 데이터베이스로부터 프레즌스 프래그먼트(fragment)들을 선택적으로 획득한다.Processor 215 extracts presence fragments for each of the presence services from the second presence information. The processor 215 selectively provides the presence applications with the extracted presence fragments. The processor 215 stores the second presence information in the local database included in the storage unit 214. [ The presence applications selectively obtain the presence fragments from the local database.

한편, 프레즌스 에이전트는, 프레즌스 어플리케이션들이 로컬 데이터베이스에 액세스하기 위한 API(Application Program Interface)를 프레즌스 어플리케이션들에 제공할 수 있다.On the other hand, the presence agent can provide the presence application with an application program interface (API) for accessing the local database.

도 17은 본 발명의 일 실시예에 따른 프레즌스 서버를 도시한 도면이다.17 is a diagram illustrating a presence server according to an embodiment of the present invention.

도 17을 참조하면 프레즌스 서버(250)는 송신부(254), 수신부(255), 저장부(256) 및 프로세서(257)를 포함한다.17, the presence server 250 includes a transmission unit 254, a reception unit 255, a storage unit 256, and a processor 257.

수신부(255)는 단말의 사용자가 이용 중인 프레즌스 서비스들의 리스트를 포함하는 사용자의 제1 프레즌스 정보 및 사용자의 주소록을 포함하는 등록 요청 메세지를 단말로부터 수신한다.The receiver 255 receives from the terminal a registration request message including the first presence information of the user including the list of presence services being used by the user of the terminal and the address book of the user.

프로세서(257)는, 사용자의 주소록에 포함된 버디(buddy)들에 대하여, 제1 프레즌스 정보에 열거된 프레즌스 서비스들 각각의 프레즌스 프래그먼트(fragment)들을 수집한다. 프로세서(257)는, 수집된 프레즌스 프래그먼트들을 결합하여 버디들에 대한 제2 프레즌스 정보를 생성한다.Processor 257 collects the presence fragments of each of the presence services enumerated in the first presence information for the buddies contained in the user's address book. The processor 257 combines the collected presence fragments to generate second presence information for the buddies.

송신부(256)는 제2 프레즌스 정보를 포함하는 프레즌스 응답 메세지를 단말에 전송한다.The transmitter 256 transmits a presence response message including the second presence information to the terminal.

프로세서(257)는, 등록 요청 메세지에 포함된 인증 정보에 기초하여 사용자를 인증한다. 프로세서(257)는, 사용자 인증이 성공하면 제1 프레즌스 정보 및 주소록을 프레즌스 데이터베이스에 저장한다. 프로세서(257)는, 제1 프레즌스 정보 및 주소록에 기초하여 생성된 제1 해쉬(hash) 값을 포함하는 등록 응답 메세지를 단말에 전송하도록 송신부(255)를 제어한다.The processor 257 authenticates the user based on the authentication information included in the registration request message. The processor 257 stores the first presence information and the address book in the presence database when the user authentication is successful. The processor 257 controls the transmitting unit 255 to transmit the registration response message including the first hash value and the first hash value generated based on the address book to the terminal.

한편, 수신부(255)는 단말로부터 인증 정보를 포함하는 프레즌스 요청 메세지를 수신한다. 프로세서(257)는, 인증 정보에 기초하여 사용자를 인증하고, 프레즌스 응답 메세지는 제2 프레즌스 정보에 기초하여 생성된 제2 해쉬(hash) 값을 포함한다. 여기서, 인증 정보는, 프레즌스 서비스들의 식별자, 프레즌스 서비스들 내에서 사용자의 식별자 및 단말의 액세스 키 중 적어도 하나를 포함할 수 있다.Meanwhile, the receiving unit 255 receives a presence request message including authentication information from the terminal. The processor 257 authenticates the user based on the authentication information, and the presence response message includes a second hash value generated based on the second presence information. Here, the authentication information may include at least one of an identifier of the presence services, an identifier of the user in the presence services, and an access key of the terminal.

프로세서(257)는, 제1 프레즌스 정보에 열거된 프레즌스 서비스들 중 제1 프레즌스 서비스가 IMS(IP Multimedia subsystem)망 기반의 서비스인지 여부를 판단한다. 프로세서(257)는, 제1 프레즌스 서비스가 IMS 망 기반의 서비스로 판단되면 버디들이 타사 망의 가입자들인 여부를 판단한다. 프로세서(257)는, 버디들이 타사 망의 가입자들인 경우, IMS 망과 연결된 프레즌스 게이트웨이에 제1 프레즌스 서비스의 버디들에 대한 프레즌스 프래그먼트를 요청한다. 프로세서(257)는, 버디들이 자사 망의 가입자들로 판단되면, IMS 망 외부에 위치하는 프레즌스 데이터베이스로부터 제1 프레즌스 서비스의 버디들에 대한 프레즌스 프래그먼트를 독출한다.The processor 257 determines whether the first presence service among the presence services enumerated in the first presence information is an IMS (IP Multimedia subsystem) network-based service. The processor 257 determines whether the buddies are subscribers of the third party network if the first presence service is determined to be an IMS network-based service. The processor 257 requests the presence node for the buddies of the first presence service to the presence gateway connected to the IMS network if the buddies are subscribers of the third party network. The processor 257 reads the presence fragments for buddies of the first presence service from the presence database located outside the IMS network, if the buddies are judged to be subscribers of the first network.

프로세서(257)는, 수신부(255) 또는 송신부(254)를 통해, 단말 및 프레즌스 게이트웨이와 HTTP rest 프로토콜 기반으로 데이터를 송수신한다.The processor 257 transmits and receives data based on the HTTP rest protocol with the terminal and the presence gateway through the receiving unit 255 or the transmitting unit 254. [

한편, 프레즌스 게이트웨이는 IMS 망과 SIP(Session Initiation Protocol)/XCAP(XML Configuration Access Protocol) 프로토콜 기반으로 데이터를 송수신한다. 프레즌스 게이트웨이는, 송신부(255)로부터 HTTP rest 프로토콜 기반으로 수신된 제1 프레즌스 서비스의 상기 버디들에 대한 프레즌스 프래그먼트 요청을 SIP/XCAP 프로토콜 기반의 메세지로 변환한다. 프레즌스 게이트웨이는, SIP/XCAP 프로토콜 기반의 메세지를 IMS 망으로 전송한다. 프레즌스 게이트웨이는, SIP/XAP 프로토콜 기반으로 IMS 망으로부터 수신된 제1 프레즌스 서비스의 버디들에 대한 프레즌스 프래그먼트를 HTTP rest 프로토콜 기반의 메세지로 변환하여 수신부(255)로 전송한다.Meanwhile, the presence gateway transmits and receives data based on the IMS network and the SIP (Session Initiation Protocol) / XCAP (XML Configuration Access Protocol) protocol. The presence gateway converts the presence fragment request for the buddies of the first presence service received on the basis of the HTTP rest protocol from the transmission unit 255 into a SIP / XCAP protocol based message. The presence gateway transmits a SIP / XCAP protocol-based message to the IMS network. The presence gateway converts the presence fragment of the buddies of the first presence service received from the IMS network based on the SIP / XAP protocol into a message based on the HTTP rest protocol and transmits the message to the reception unit 255.

상술한 본 발명의 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다.The above-described embodiments of the present invention can be implemented by various means. For example, embodiments of the present invention may be implemented by hardware, firmware, software, or a combination thereof.

하드웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Fragment Programmable Gate Arrays), 프로세서, 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.In the case of hardware implementation, the method according to embodiments of the present invention may be implemented in one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs) , Fragment Programmable Gate Arrays (FPGAs), a processor, a controller, a microcontroller, a microprocessor, or the like.

펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 상기 메모리 유닛은 상기 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 상기 프로세서와 데이터를 주고 받을 수 있다.In the case of an implementation by firmware or software, the method according to embodiments of the present invention may be implemented in the form of a module, a procedure or a function for performing the functions or operations described above. The software code can be stored in a memory unit and driven by the processor. The memory unit may be located inside or outside the processor, and may exchange data with the processor by various well-known means.

상술한 바와 같이 개시된 본 발명의 바람직한 실시예들에 대한 상세한 설명은 당업자가 본 발명을 구현하고 실시할 수 있도록 제공되었다. 상기에서는 본 발명의 바람직한 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 본 발명의 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 예를 들어, 당업자는 상술한 실시예들에 기재된 각 구성을 서로 조합하는 방식으로 이용할 수 있다. 따라서, 본 발명은 여기에 나타난 실시형태들에 제한되려는 것이 아니라, 여기서 개시된 원리들 및 신규한 특징들과 일치하는 최광의 범위를 부여하려는 것이다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The foregoing description of the preferred embodiments of the invention disclosed herein has been presented to enable any person skilled in the art to make and use the present invention. While the present invention has been particularly shown and described with reference to preferred embodiments thereof, it will be understood by those skilled in the art that various changes and modifications may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. For example, those skilled in the art can utilize each of the configurations described in the above-described embodiments in a manner of mutually combining them. Accordingly, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다. 또한, 특허청구범위에서 명시적인 인용 관계가 있지 않은 청구항들을 결합하여 실시예를 구성하거나 출원 후의 보정에 의해 새로운 청구항으로 포함할 수 있다.The present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. Accordingly, the above description should not be construed in a limiting sense in all respects and should be considered illustrative. The scope of the present invention should be determined by rational interpretation of the appended claims, and all changes within the scope of equivalents of the present invention are included in the scope of the present invention. In addition, claims that do not have an explicit citation in the claims can be combined to form an embodiment or included as a new claim by amendment after the application.

Claims (39)

단말이 사용자에게 프레즌스(presence) 서비스를 제공하는 방법에 있어서,
상기 단말에 설치된 어플리케이션들에 기초하여, 상기 단말의 사용자가 이용 중인 프레즌스 서비스들의 리스트를 포함하는 상기 사용자의 제1 프레즌스 정보를 수집하는 단계;
상기 수집된 사용자의 제1 프레즌스 정보 및 상기 사용자의 주소록을 프레즌스 서버에 등록하는 단계;
상기 프레즌스 서버로부터 상기 사용자의 주소록에 포함된 버디(buddy)들에 대한 제2 프레즌스 정보를 획득하는 단계;
상기 획득된 제2 프레즌스 정보를 상기 단말 내부에 포함된 로컬 데이터베이스에 저장하는 단계; 및
상기 로컬 데이터베이스에 저장된 상기 제2 프레즌스 정보를 이용하여, 상기 프레즌스 서비스들을 제공하는 프레즌스 어플리케이션들과 동기화하는 단계를 포함하고,
상기 버디들에 대한 제2 프레즌스 정보는, 상기 제1 프레즌스 정보에 열거된 상기 프레즌스 서비스들 각각에 대한 프레즌스 프래그먼트(fragment)들이 결합된 것인, 방법.
A method for providing a presence service to a user of a terminal,
Collecting first presence information of the user including a list of presence services used by a user of the terminal based on applications installed in the terminal;
Registering the first presence information of the collected user and the address book of the user on the presence server;
Obtaining second presence information on buddies included in the address book of the user from the presence server;
Storing the obtained second presence information in a local database included in the terminal; And
And synchronizing with the presence applications providing the presence services using the second presence information stored in the local database,
Wherein the second presence information for the buddies is a combination of presence fragments for each of the presence services listed in the first presence information.
제 1 항에 있어서, 상기 사용자의 제1 프레즌스 정보를 수집하는 단계는,
상기 프레즌스 서비스들을 제공하는 프레즌스 어플리케이션들로부터 각각에 대응되는 적어도 하나의 프레즌스 프래그먼트를 독출하는 단계;
상기 각각의 프레즌스 어플리케이션들로부터 독출된 상기 프레즌스 프래그먼트를 결합하여 상기 제1 프레즌스 정보를 생성하는 단계; 및
상기 제1 프레즌스 정보를 상기 로컬 데이터베이스에 저장하는 단계를 포함하는, 방법.
The method of claim 1, wherein collecting the first presence information of the user comprises:
Reading at least one presence fragment corresponding to each of the presence applications providing the presence services;
Combining the presence fragments read from the respective presence applications to generate the first presence information; And
And storing the first presence information in the local database.
제 2 항에 있어서,
상기 제1 프레즌스 정보를 상기 프레즌스 서버에 등록하는 단계는, 상기 로컬 데이터베이스에 저장된 상기 제1 프레즌스 정보를 상기 프레즌스 서버에 등록하고,
상기 제1 프레즌스 정보의 등록은 상기 단말에 설치된 프레즌스 에이전트의 네트워크 동기화 타이머에 따라서 주기적으로 수행되거나, 상기 제1 프레즌스 정보가 변경됨에 따라서 상기 프레즌스 에이전트가 이벤트 트리거하거나, 또는 상기 프레즌스 어플리케이션들의 요청에 따라서 트리거되는, 방법.
3. The method of claim 2,
Wherein the registering of the first presence information with the presence server comprises registering the first presence information stored in the local database with the presence server,
Wherein the registration of the first presence information is periodically performed according to a network synchronization timer of a presence agent installed in the terminal, or the presence agent triggers the event according to the change of the first presence information, Lt; / RTI &gt;
제 1 항에 있어서,
상기 프레즌스 서비스들은 IMS(IP Multimedia subsystem) 망 기반의 서비스 및 non-IMS 망 기반의 서비스를 포함하고, 상기 단말과 상기 프레즌스 서버간에는 HTTP(hypertext transfer protocol) rest 프로토콜 기반으로 데이터를 송수신하는, 방법.
The method according to claim 1,
Wherein the presence services include a service based on an IMS (IP Multimedia subsystem) network and a service based on a non-IMS network, and transmitting and receiving data based on a hypertext transfer protocol (HTTP) rest protocol between the terminal and the presence server.
제 1 항에 있어서, 상기 사용자의 제1 프레즌스 정보 및 상기 주소록을 등록하는 단계는,
상기 프레즌스 서버와의 인증을 위한 인증 정보, 상기 제1 프레즌스 정보 및 상기 주소록을 포함하는 등록 요청 메세지를 상기 프레즌스 서버에 전송하는 단계; 및
상기 프레즌스 서버와의 인증이 성공하면, 상기 등록된 제1 프레즌스 정보 및 상기 주소록에 기초하여 생성된 제1 해쉬(hash) 값을 포함하는 등록 응답 메세지를 수신하는 단계를 포함하는, 방법.
The method of claim 1, wherein registering the first presence information and the address book of the user comprises:
Transmitting a registration request message including authentication information for authentication with the presence server, the first presence information, and the address book to the presence server; And
And if the authentication with the presence server is successful, receiving a registration response message including the registered first presence information and a first hash value generated based on the address book.
제 1 항에 있어서, 상기 제2 프레즌스 정보를 획득하는 단계는,
상기 프레즌스 서버와의 인증을 위한 인증 정보를 포함하는 프레즌스 요청 메세지를 상기 프레즌스 서버에 전송하는 단계; 및
상기 프레즌스 서버와의 인증이 성공하면, 상기 제2 프레즌스 정보 및 상기 제2 프레즌스 정보에 기초하여 생성된 제2 해쉬(hash) 값을 포함하는 프레즌스 응답 메세지를 수신하는 단계를 포함하는, 방법.
The method of claim 1, wherein the obtaining of the second presence information comprises:
Transmitting a presence request message including authentication information for authentication with the presence server to the presence server; And
And if the authentication with the presence server is successful, receiving a presence response message comprising a second hash value generated based on the second presence information and the second presence information.
제 5 항 또는 제 6항에 있어서, 상기 인증 정보는,
상기 프레즌스 서비스들의 식별자, 상기 프레즌스 서비스들 내에서 상기 사용자의 식별자 및 상기 프레즌스 서버로부터 할당된 액세스 키 중 적어도 하나를 포함하는, 방법.
The information processing apparatus according to claim 5 or 6,
The identifier of the presence services, the identifier of the user in the presence services, and the access key assigned from the presence server.
삭제delete 제 1 항에 있어서, 상기 프레즌스 어플리케리션들과 동기화하는 단계는,
상기 로컬 데이터베이스에 저장된 제2 프레즌스 정보로부터, 상기 프레즌스 어플리케이션들 중 제1 프레즌스 어플리케이션에 대응하는 적어도 하나의 프레즌스 프래그먼트를 추출하는 단계; 및
상기 추출된 적어도 하나의 프레즌스 프래그먼트를 상기 제1 프레즌스 어플리케이션에 제공하는 단계를 포함하는, 방법.
2. The method of claim 1, wherein synchronizing with the presence applications comprises:
Extracting at least one presence fragment corresponding to a first presence application of the presence applications from second presence information stored in the local database; And
And providing the extracted at least one presence fragment to the first presence application.
제 1 항에 있어서,
상기 프레즌스 어플리케이션들과의 동기화는 상기 프레즌스 서버에 대한 액세스 없이 상기 로컬 데이터베이스 기반으로 수행되고,
상기 프레즌스 어플리케이션들과의 동기화는 상기 단말에 설치된 프레즌스 에이전트의 로컬 동기화 타이머에 따라서 주기적으로 트리거되거나, 상기 프레즌스 에이전트의 명령에 따라서 이벤트 트리거되거나, 또는 상기 프레즌스 어플리케이션들의 개별적인 동기화 요청에 의해서 트리거되는, 방법.
The method according to claim 1,
Synchronization with the presence applications is performed on the local database without access to the presence server,
Wherein synchronization with the presence applications is triggered periodically according to a local synchronization timer of a presence agent installed in the terminal or is triggered according to an instruction of the presence agent or triggered by a separate synchronization request of the presence applications .
제 1 항에 있어서, 상기 단말이 상기 사용자에게 상기 프레즌스 서비스를 제공하는 방법은, 상기 단말에 설치된 프레즌스 에이전트를 통해 수행되는, 방법.The method of claim 1, wherein the method for providing the presence service to the user by the terminal is performed through a presence agent installed in the terminal. 프레즌스(presence) 서버가 단말에 프레즌스 서비스를 제공하는 방법에 있어서,
상기 단말의 사용자가 이용 중인 프레즌스 서비스들의 리스트를 포함하는 상기 사용자의 제1 프레즌스 정보 및 상기 사용자의 주소록을 포함하는 등록 요청 메세지를 상기 단말로부터 수신하는 단계;
상기 사용자의 주소록에 포함된 버디(buddy)들에 대하여, 상기 제1 프레즌스 정보에 열거된 상기 프레즌스 서비스들 각각의 프레즌스 프래그먼트(fragment)들을 수집하는 단계;
상기 수집된 프레즌스 프래그먼트(fragment)들을 결합하여 상기 버디들에 대한 제2 프레즌스 정보를 생성하는 단계; 및
상기 제2 프레즌스 정보를 포함하는 프레즌스 응답 메세지를 상기 단말에 전송하는 단계를 포함하고,
상기 제2 프레즌스 정보는, 상기 단말 내부에 포함된 로컬 데이터베이스에 저장되고, 상기 프레즌스 서비스들을 제공하는 프레즌스 어플리케이션들과 동기화하는데 이용되는, 방법.
A method for providing a presence service to a terminal by a presence server,
Receiving a registration request message including a first presence information of the user including a list of presence services being used by a user of the terminal and an address book of the user from the terminal;
Collecting presence fragments of each of the presence services enumerated in the first presence information for buddies included in the address book of the user;
Combining the collected presence fragments to generate second presence information for the buddies; And
And transmitting a presence response message including the second presence information to the terminal,
Wherein the second presence information is stored in a local database contained within the terminal and used to synchronize with presence applications providing the presence services.
제 12 항에 있어서,
상기 등록 요청 메세지에 포함된 인증 정보에 기초하여 상기 사용자를 인증하는 단계;
상기 사용자 인증이 성공하면, 상기 제1 프레즌스 정보 및 상기 주소록을 저장하는 단계; 및
상기 제1 프레즌스 정보 및 상기 주소록에 기초하여 생성된 제1 해쉬(hash) 값을 포함하는 등록 응답 메세지를 상기 단말에 전송하는 단계를 더 포함하는, 방법.
13. The method of claim 12,
Authenticating the user based on the authentication information included in the registration request message;
Storing the first presence information and the address book when the user authentication is successful; And
Further comprising transmitting to the terminal a registration response message including a first hash value generated based on the first presence information and the address book.
제 12 항에 있어서,
상기 단말로부터 인증 정보를 포함하는 프레즌스 요청 메세지를 수신하는 단계; 및
상기 인증 정보에 기초하여 상기 사용자를 인증하는 단계를 더 포함하고,
상기 프레즌스 응답 메세지는, 상기 제2 프레즌스 정보에 기초하여 생성된 제2 해쉬(hash) 값을 포함하는, 방법.
13. The method of claim 12,
Receiving a presence request message including authentication information from the terminal; And
Further comprising authenticating the user based on the authentication information,
Wherein the presence response message comprises a second hash value generated based on the second presence information.
제 13 항 또는 제 14 항에 있어서, 상기 인증 정보는,
상기 프레즌스 서비스들의 식별자, 상기 프레즌스 서비스들 내에서 상기 사용자의 식별자 및 상기 단말의 액세스 키 중 적어도 하나를 포함하는, 방법.
15. The method according to claim 13 or 14,
An identifier of the presence services, an identifier of the user in the presence services, and an access key of the terminal.
제 12 항에 있어서, 상기 프레즌스 서비스들에 대한 프레즌스 프래그먼트(fragment)들을 수집하는 단계는,
상기 제1 프레즌스 정보에 열거된 프레즌스 서비스들 중 제1 프레즌스 서비스가 IMS(IP Multimedia subsystem)망 기반의 서비스인지 여부를 판단하는 단계;
상기 제1 프레즌스 서비스가 IMS 망 기반의 서비스로 판단되면, 상기 버디들이 타사 망의 가입자들인 여부를 판단하는 단계; 및
상기 버디들이 상기 타사 망의 가입자들인 경우, 상기 IMS 망과 연결된 프레즌스 게이트웨이에 상기 제1 프레즌스 서비스의 상기 버디들에 대한 프레즌스 프래그먼트를 요청하는 단계를 포함하는, 방법.
13. The method of claim 12, wherein collecting presence fragments for the presence services comprises:
Determining whether the first presence service among the presence services enumerated in the first presence information is an IMS (IP Multimedia Subsystem) network based service;
Determining whether the buddies are subscribers of a third party network if the first presence service is determined to be an IMS network based service; And
Requesting a presence fragment for the buddies of the first presence service to a presence gateway connected to the IMS network if the buddies are subscribers of the third party network.
제 16 항에 있어서, 상기 프레즌스 서비스들에 대한 프레즌스 프래그먼트들을 수집하는 단계는,
상기 버디들이 자사 망의 가입자들로 판단되면, 상기 IMS 망 외부에 위치하는 프레즌스 데이터베이스로부터 상기 제1 프레즌스 서비스의 상기 버디들에 대한 프레즌스 프래그먼트를 독출하는 단계를 더 포함하는, 방법.
17. The method of claim 16, wherein collecting presence fragments for the presence services comprises:
Further comprising reading a presence fragment for the buddies of the first presence service from a presence database located outside the IMS network if the buddies are determined to be subscribers of the first network.
제 16 항에 있어서,
상기 프레즌스 서버는 상기 단말 및 상기 프레즌스 게이트웨이와 HTTP rest 프로토콜 기반으로 데이터를 송수신하고, 상기 프레즌스 게이트웨이는 상기 IMS 망과 SIP(Session Initiation Protocol)/XCAP(XML Configuration Access Protocol) 프로토콜 기반으로 데이터를 송수신하는, 방법.
17. The method of claim 16,
The presence server transmits and receives data based on the HTTP rest protocol with the terminal and the presence gateway, and the presence gateway transmits and receives data based on an SIP (Session Initiation Protocol) / XCAP (XML Configuration Access Protocol) protocol with the IMS network , Way.
제 18 항에 있어서, 상기 프레즌스 게이트웨이는,
상기 프레즌스 서버로부터 상기 HTTP rest 프로토콜 기반으로 수신된 상기 제1 프레즌스 서비스의 상기 버디들에 대한 프레즌스 프래그먼트 요청을 상기 SIP/XCAP 프로토콜 기반의 메세지로 변환하는 단계;
상기 변환된 SIP/XCAP 프로토콜 기반의 메세지를 상기 IMS 망으로 전송하는 단계; 및
상기 SIP/XCAP 프로토콜 기반으로 상기 IMS 망으로부터 수신된 상기 제1 프레즌스 서비스의 상기 버디들에 대한 프레즌스 프래그먼트를 상기 HTTP rest 프로토콜 기반의 메세지로 변환하여 상기 프레즌스 서버로 전송하는 단계를 더 포함하는, 방법.
19. The apparatus of claim 18, wherein the presence gateway comprises:
Converting a presence fragment request for the buddies of the first presence service received based on the HTTP rest protocol from the presence server to the SIP / XCAP protocol based message;
Transmitting the converted SIP / XCAP protocol based message to the IMS network; And
Further comprising converting a presence fragment for the buddies of the first presence service received from the IMS network based on the SIP / XCAP protocol into a message based on the HTTP rest protocol and transmitting the message to the presence server .
제 1 항 또는 제 12 항에 기재된 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium storing a program for executing the method according to any one of claims 1 to 12. 사용자에게 프레즌스(presence) 서비스를 제공하는 단말에 있어서,
무선 신호를 송수신하는 RF 모듈;
상기 단말에 설치된 어플리케이션들, 상기 사용자의 주소록 및 프레즌스 에이전트(agent)를 저장하는 저장부; 및
상기 저장부에 저장된 프레즌스 에이전트를 실행하여 상기 RF 모듈 및 상기 저장부를 제어하는 프로세서를 포함하고,
상기 프로세서는, 상기 저장부에 저장된 어플리케이션들에 기초하여 상기 단말의 사용자가 이용 중인 프레즌스 서비스들의 리스트를 포함하는 상기 사용자의 제1 프레즌스 정보를 수집하고, 상기 RF 모듈을 통해 상기 수집된 사용자의 제1 프레즌스 정보 및 상기 사용자의 주소록을 프레즌스 서버에 등록하고, 상기 프레즌스 서버로부터 상기 사용자의 주소록에 포함된 버디(buddy)들에 대한 제2 프레즌스 정보를 획득하고, 상기 획득된 제2 프레즌스 정보를 상기 저장부에 포함된 로컬 데이터베이스에 저장하고, 상기 로컬 데이터베이스에 저장된 상기 제2 프레즌스 정보를 이용하여 상기 프레즌스 서비스들을 제공하는 프레즌스 어플리케이션들과 동기화하고,
상기 버디들에 대한 제2 프레즌스 정보는, 상기 제1 프레즌스 정보에 열거된 상기 프레즌스 서비스들 각각에 대한 프레즌스 프래그먼트(fragment)들이 결합된 것인, 단말.
A terminal for providing a presence service to a user,
An RF module for transmitting and receiving a radio signal;
A storage unit for storing applications installed in the terminal, an address book of the user, and a presence agent; And
And a processor for executing the presence agent stored in the storage unit to control the RF module and the storage unit,
The processor collects the first presence information of the user including a list of presence services that the user of the terminal uses based on the applications stored in the storage unit, 1 presence information and the address book of the user to a presence server, acquires second presence information on buddies included in the address book of the user from the presence server, and transmits the obtained second presence information to the presence server Storing the received presence information in a local database included in the storage unit, synchronizing with presence applications providing the presence services using the second presence information stored in the local database,
Wherein the second presence information for the buddies is a combination of presence fragments for each of the presence services listed in the first presence information.
제 21 항에 있어서, 상기 사용자의 제1 프레즌스 정보를 수집하는 상기 프로세서는, 상기 프레즌스 에이전트를 실행하여,
상기 저장부에 저장된 상기 어플리케이션들 중 상기 프레즌스 어플리케이션들을 검출하고, 상기 검출된 적어도 하나의 프레즌스 어플리케이션들로부터 각각에 대응되는 적어도 하나의 프레즌스 프래그먼트를 독출하고, 상기 각각의 프레즌스 어플리케이션들로부터 독출된 상기 프레즌스 프래그먼트를 결합하여 상기 제1 프레즌스 정보를 생성하고, 상기 생성된 제1 프레즌스 정보를 상기 로컬 데이터베이스에 저장하는, 단말.
22. The computer-readable medium of claim 21, wherein the processor for collecting the first presence information of the user further comprises:
Detecting the presence applications among the applications stored in the storage unit, reading at least one presence fragment corresponding to each of the detected presence applications from the detected presence applications, Combine fragments to generate the first presence information, and store the generated first presence information in the local database.
제 22 항에 있어서, 상기 제1 프레즌스 정보를 상기 프레즌스 서버에 등록하는 상기 프로세서는, 상기 프레즌스 에이전트를 실행하여, 상기 로컬 데이터베이스에 저장된 상기 제1 프레즌스 정보를 상기 프레즌스 서버에 등록하고,
상기 제1 프레즌스 정보의 등록은 상기 프레즌스 에이전트의 네트워크 동기화 타이머에 따라서 주기적으로 수행되거나, 상기 제1 프레즌스 정보가 변경됨에 따라서 상기 프레즌스 에이전트가 이벤트 트리거하거나, 또는 상기 프레즌스 어플리케이션들의 요청에 따라서 트리거되는, 단말.
The method of claim 22, wherein the processor for registering the first presence information in the presence server registers the first presence information stored in the local database in the presence server by executing the presence agent,
Wherein the registration of the first presence information is performed periodically according to a network synchronization timer of the presence agent, or the presence agent triggers the event according to the change of the first presence information, or is triggered according to a request of the presence applications, Terminal.
제 21 항에 있어서,
상기 프레즌스 서비스들은 IMS(IP Multimedia subsystem) 망 기반의 서비스 및 non-IMS 망 기반의 서비스를 포함하고, 상기 프로세서는 상기 프레즌스 서버와 HTTP rest 프로토콜 기반으로 데이터를 송수신하도록 상기 RF 모듈을 제어하는, 단말.
22. The method of claim 21,
Wherein the presence services include a service based on an IMS (IP Multimedia subsystem) network and a service based on a non-IMS network, and the processor controls the RF module to transmit / receive data based on an HTTP rest protocol with the presence server .
제 21 항에 있어서, 상기 사용자의 제1 프레즌스 정보 및 상기 주소록을 등록하는 프로세서는, 상기 RF 모듈을 통해,
상기 프레즌스 서버와의 인증을 위한 인증 정보, 상기 제1 프레즌스 정보 및 상기 주소록을 포함하는 등록 요청 메세지를 상기 프레즌스 서버에 전송하고, 상기 프레즌스 서버와의 인증이 성공하면 상기 등록된 제1 프레즌스 정보 및 상기 주소록에 기초하여 생성된 제1 해쉬(hash) 값을 포함하는 등록 응답 메세지를 수신하는, 단말.
The apparatus of claim 21, wherein the processor for registering the first presence information and the address book of the user further comprises:
The first presence information, the first presence information, and the address book to the presence server, and when authentication with the presence server is successful, the first presence information and the second presence information are transmitted to the presence server, And receiving a registration response message including a first hash value generated based on the address book.
제 21 항에 있어서, 상기 제2 프레즌스 정보를 획득하는 프로세서는, 상기 RF 모듈을 통해,
상기 프레즌스 서버와의 인증을 위한 인증 정보를 포함하는 프레즌스 요청 메세지를 상기 프레즌스 서버에 전송하고, 상기 프레즌스 서버와의 인증이 성공하면 상기 제2 프레즌스 정보 및 상기 제2 프레즌스 정보에 기초하여 생성된 제2 해쉬(hash) 값을 포함하는 프레즌스 응답 메세지를 수신하는, 단말.
23. The apparatus of claim 21, wherein the processor for obtaining the second presence information further comprises:
And a presence server for transmitting a presence request message including authentication information for authentication with the presence server to the presence server, and when the authentication with the presence server is successful, the authentication server transmits the presence information generated based on the second presence information and the second presence information And a presence response message containing a 2 hash value.
제 25 항 또는 제 26 항에 있어서, 상기 인증 정보는,
상기 프레즌스 서비스들의 식별자, 상기 프레즌스 서비스들 내에서 상기 사용자의 식별자 및 상기 프레즌스 서버로부터 할당된 액세스 키 중 적어도 하나를 포함하는, 단말.
27. The method according to claim 25 or 26,
An identifier of the presence services, an identifier of the user in the presence services, and an access key assigned from the presence server.
삭제delete 제 21 항에 있어서, 상기 프레즌스 어플리케리션들과 동기화하는 상기 프로세서는, 상기 프레즌스 에이전트를 실행하여,
상기 로컬 데이터베이스에 저장된 제2 프레즌스 정보로부터, 상기 프레즌스 어플리케이션들 중 제1 프레즌스 어플리케이션에 대응하는 적어도 하나의 프레즌스 프래그먼트를 추출하고, 상기 추출된 적어도 하나의 프레즌스 프래그먼트를 상기 제1 프레즌스 어플리케이션에 제공하는, 단말.
22. The method of claim 21, wherein the processor in synchronization with the presence applications executes the presence agent,
Extracting at least one presence fragment corresponding to a first one of the presence applications from second presence information stored in the local database and providing the extracted at least one presence fragment to the first presence application, Terminal.
제 21 항에 있어서,
상기 프레즌스 어플리케이션들과의 동기화는 상기 프레즌스 서버에 대한 액세스 없이 상기 로컬 데이터베이스 기반으로 수행되고,
상기 프레즌스 어플리케이션들과의 동기화는 상기 프레즌스 에이전트의 로컬 동기화 타이머에 따라서 주기적으로 트리거되거나, 상기 프레즌스 에이전트의 명령에 따라서 이벤트 트리거되거나, 또는 상기 프레즌스 어플리케이션들의 개별적인 동기화 요청에 의해서 트리거되는, 단말.
22. The method of claim 21,
Synchronization with the presence applications is performed on the local database without access to the presence server,
Wherein synchronization with the presence applications is triggered periodically according to a local synchronization timer of the presence agent or is triggered according to an instruction of the presence agent or is triggered by a separate synchronization request of the presence applications.
제 21 항에 있어서, 상기 프레즌스 에이전트는,
상기 프레즌스 어플리케이션들이 상기 로컬 데이터베이스에 액세스하기 위한 API(Application Program Interface)를 상기 프레즌스 어플리케이션들에 제공하는, 단말.
22. The method of claim 21, wherein the presence agent comprises:
Wherein the presence applications provide an application program interface (API) for accessing the local database to the presence applications.
단말에 프레즌스(presence) 서비스를 제공하는 프레즌스 서버에 있어서,
상기 단말의 사용자가 이용 중인 프레즌스 서비스들의 리스트를 포함하는 상기 사용자의 제1 프레즌스 정보 및 상기 사용자의 주소록을 포함하는 등록 요청 메세지를 상기 단말로부터 수신하는 수신부;
상기 사용자의 주소록에 포함된 버디(buddy)들에 대하여, 상기 제1 프레즌스 정보에 열거된 상기 프레즌스 서비스들 각각의 프레즌스 프래그먼트(fragment)들을 수집하고, 상기 수집된 프레즌스 프래그먼트들을 결합하여 상기 버디들에 대한 제2 프레즌스 정보를 생성하는 프로세서; 및
상기 제2 프레즌스 정보를 포함하는 프레즌스 응답 메세지를 상기 단말에 전송하는 송신부를 포함하고
상기 제2 프레즌스 정보는, 상기 단말 내부에 포함된 로컬 데이터베이스에 저장되고, 상기 프레즌스 서비스들을 제공하는 프레즌스 어플리케이션들과 동기화하는데 이용되는, 프레즌스 서버.
1. A presence server for providing a presence service to a terminal,
A receiving unit for receiving, from the terminal, a registration request message including the first presence information of the user and the address book of the user including a list of presence services being used by the user of the terminal;
Collecting presence fragments of each of the presence services listed in the first presence information with respect to buddies included in the address book of the user and combining the collected presence fragments with the buddies A processor for generating second presence information for the first presence information; And
And a transmitter for transmitting a presence response message including the second presence information to the terminal
Wherein the second presence information is stored in a local database contained within the terminal and used to synchronize with presence applications providing the presence services.
제 32 항에 있어서, 상기 프로세서는,
상기 등록 요청 메세지에 포함된 인증 정보에 기초하여 상기 사용자를 인증하고, 상기 사용자 인증이 성공하면 상기 제1 프레즌스 정보 및 상기 주소록을 프레즌스 데이터베이스에 저장하고, 상기 제1 프레즌스 정보 및 상기 주소록에 기초하여 생성된 제1 해쉬(hash) 값을 포함하는 등록 응답 메세지를 상기 단말에 전송하도록 상기 송신부를 제어하는, 프레즌스 서버.
33. The apparatus of claim 32,
Authenticating the user based on the authentication information included in the registration request message, storing the first presence information and the address book in the presence database if the user authentication is successful, and based on the first presence information and the address book, And controls the transmitting unit to transmit a registration response message including the generated first hash value to the terminal.
제 32 항에 있어서,
상기 수신부는 상기 단말로부터 인증 정보를 포함하는 프레즌스 요청 메세지를 수신하고, 상기 프로세서는 상기 인증 정보에 기초하여 상기 사용자를 인증하고, 상기 프레즌스 응답 메세지는 상기 제2 프레즌스 정보에 기초하여 생성된 제2 해쉬(hash) 값을 포함하는, 프레즌스 서버.
33. The method of claim 32,
Wherein the receiver receives a presence request message including authentication information from the terminal, the processor authenticates the user based on the authentication information, and the presence response message includes a second presence information generated based on the second presence information, A presence server that contains a hash value.
제 33 항 또는 제 34 항에 있어서, 상기 인증 정보는,
상기 프레즌스 서비스들의 식별자, 상기 프레즌스 서비스들 내에서 상기 사용자의 식별자 및 상기 단말의 액세스 키 중 적어도 하나를 포함하는, 프레즌스 서버.
35. The method as claimed in claim 33 or 34,
An identifier of the presence services, an identifier of the user within the presence services, and an access key of the terminal.
제 32 항에 있어서, 상기 프레즌스 서비스들에 대한 프레즌스 프래그먼트들을 수집하는 프로세서는,
상기 제1 프레즌스 정보에 열거된 프레즌스 서비스들 중 제1 프레즌스 서비스가 IMS(IP Multimedia subsystem)망 기반의 서비스인지 여부를 판단하고, 상기 제1 프레즌스 서비스가 IMS 망 기반의 서비스로 판단되면 상기 버디들이 타사 망의 가입자들인 여부를 판단하고, 상기 버디들이 상기 타사 망의 가입자들인 경우, 상기 IMS 망과 연결된 프레즌스 게이트웨이에 상기 제1 프레즌스 서비스의 상기 버디들에 대한 프레즌스 프래그먼트를 요청하는, 프레즌스 서버.
33. The apparatus of claim 32, wherein the processor for collecting presence fragments for the presence services comprises:
Wherein the presence server determines whether the first presence service among the presence services listed in the first presence information is a service based on an IMS (IP Multimedia Subsystem) network, and if the first presence service is determined to be an IMS network based service, And if the buddies are subscribers of the third party network, request a presence fragment of the buddies of the first presence service to a presence gateway connected to the IMS network.
제 36 항에 있어서, 상기 프레즌스 서비스들에 대한 프레즌스 프래그먼트들을 수집하는 프로세서는,
상기 버디들이 자사 망의 가입자들로 판단되면, 상기 IMS 망 외부에 위치하는 프레즌스 데이터베이스로부터 상기 제1 프레즌스 서비스의 상기 버디들에 대한 프레즌스 프래그먼트를 독출하는, 프레즌스 서버.
37. The processor of claim 36, wherein the processor for collecting presence fragments for the presence services comprises:
And if the buddies are determined to be subscribers of the first network, read presence fragments of the buddies of the first presence service from a presence database located outside the IMS network.
제 36 항에 있어서, 상기 프로세서는 상기 수신부 또는 상기 송신부를 통해,
상기 단말 및 상기 프레즌스 게이트웨이와 HTTP rest 프로토콜 기반으로 데이터를 송수신하고, 상기 프레즌스 게이트웨이는 상기 IMS 망과 SIP(Session Initiation Protocol)/XCAP(XML Configuration Access Protocol) 프로토콜 기반으로 데이터를 송수신하는, 프레즌스 서버.
37. The apparatus of claim 36, wherein the processor, via the receiver or the transmitter,
Wherein the presence gateway transmits and receives data based on the HTTP rest protocol with the terminal and the presence gateway, and the presence gateway transmits and receives data with the IMS network based on SIP (Session Initiation Protocol) / XCAP (XML Configuration Access Protocol) protocol.
제 38 항에 있어서, 상기 프레즌스 게이트웨이는,
상기 송신부로부터 상기 HTTP rest 프로토콜 기반으로 수신된 상기 제1 프레즌스 서비스의 상기 버디들에 대한 프레즌스 프래그먼트 요청을 상기 SIP/XCAP 프로토콜 기반의 메세지로 변환하고, 상기 SIP/XCAP 프로토콜 기반의 메세지를 상기 IMS 망으로 전송하고, 상기 SIP/XCAP 프로토콜 기반으로 상기 IMS 망으로부터 수신된 상기 제1 프레즌스 서비스의 상기 버디들에 대한 프레즌스 프래그먼트를 상기 HTTP rest 프로토콜 기반의 메세지로 변환하여 상기 수신부로 전송하는, 프레즌스 서버.
39. The method of claim 38, wherein the presence gateway comprises:
XCAP protocol based message received from the sender based on the HTTP rest protocol to the SIP / XCAP protocol based message, and transmits the SIP / XCAP protocol based message to the IMS network And transmits a presence fragment for the buddies of the first presence service received from the IMS network based on the SIP / XCAP protocol to a message based on the HTTP rest protocol and transmits the message to the receiver.
KR1020140035862A 2014-03-27 2014-03-27 A Method and Appartus for providing a presence service KR101523997B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140035862A KR101523997B1 (en) 2014-03-27 2014-03-27 A Method and Appartus for providing a presence service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140035862A KR101523997B1 (en) 2014-03-27 2014-03-27 A Method and Appartus for providing a presence service

Publications (1)

Publication Number Publication Date
KR101523997B1 true KR101523997B1 (en) 2015-05-29

Family

ID=53395761

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140035862A KR101523997B1 (en) 2014-03-27 2014-03-27 A Method and Appartus for providing a presence service

Country Status (1)

Country Link
KR (1) KR101523997B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101039555B1 (en) * 2010-03-30 2011-06-09 주식회사 엘지유플러스 Presence service providing terminal, presence service providing system including the same and providing method thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101039555B1 (en) * 2010-03-30 2011-06-09 주식회사 엘지유플러스 Presence service providing terminal, presence service providing system including the same and providing method thereof

Similar Documents

Publication Publication Date Title
US8380858B2 (en) System and method for telecommunication with a web-based network, such as a social network
EP2847960B1 (en) Method, device, and system for connecting to a communication device
US8635300B2 (en) Remote access to a customer home network
KR100834629B1 (en) System and method of providing based service on internet protocol classified in a communication system
KR20100053688A (en) Centralized call log for synchronized call protocol information
US9210574B2 (en) Method and apparatus for verifying the authenticity of mobile device information
US10701112B2 (en) IP-based USSD communications
JP5180048B2 (en) Service providing system, service providing method, and service providing program
KR20110013516A (en) Method for delivering device and server capabilities
US10924530B2 (en) Inter-provider file transfer system and method
US10225738B2 (en) Remote operation system, relay apparatus, mobile communication apparatus, in-terminal server control method, and relay processing method
US11889028B2 (en) System and method for one-touch split-mode conference access
US9900353B2 (en) Method and apparatus for enabling communications between users
JP4642652B2 (en) Radio control terminal, radio communication system, and radio communication method
US20240048440A1 (en) Device Management System For Upgrading Telephony Device Firmware
US20160119468A1 (en) Method and system for rapid internet protocol (ip) communication session setup using interactive push notifications
WO2015198287A1 (en) Method and system for synchronizing text messages
KR101523997B1 (en) A Method and Appartus for providing a presence service
JP5367477B2 (en) Service providing system and service providing method
JP2008028498A (en) Content reproducing apparatus and content providing apparatus
US20150050914A1 (en) Method and apparatus for verifying a device during provisioning through caller id
US11777797B2 (en) Method and apparatus for device management
US20230034386A1 (en) Shared Device Voicemail Access Bypassing User-Specific Security Credential
JP2011228910A (en) Service providing device, service providing method and service providing program
JP2012079154A (en) Content providing method, content acquiring method, content providing system and terminal device

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180411

Year of fee payment: 6