KR20050079882A - Sip presence based instant message and internet telephony service client system - Google Patents

Sip presence based instant message and internet telephony service client system Download PDF

Info

Publication number
KR20050079882A
KR20050079882A KR1020040043330A KR20040043330A KR20050079882A KR 20050079882 A KR20050079882 A KR 20050079882A KR 1020040043330 A KR1020040043330 A KR 1020040043330A KR 20040043330 A KR20040043330 A KR 20040043330A KR 20050079882 A KR20050079882 A KR 20050079882A
Authority
KR
South Korea
Prior art keywords
sip
message
module
user
client system
Prior art date
Application number
KR1020040043330A
Other languages
Korean (ko)
Other versions
KR100601051B1 (en
Inventor
허미영
현욱
박선옥
한재천
강신각
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Publication of KR20050079882A publication Critical patent/KR20050079882A/en
Application granted granted Critical
Publication of KR100601051B1 publication Critical patent/KR100601051B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/043Real-time or near real-time messaging, e.g. instant messaging [IM] using or handling presence information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]

Landscapes

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

Abstract

본 발명은 메신저와 같은 인스턴트 메시지(Instant Messaging) 또는 인터넷 전화 서비스를 SIP(Session Initiation Protocol)을 통하여 가능하게 하는 SIP 프리젠스 기반 인스턴트 메시지 및 인터넷 전화 서비스 클라이언트 시스템(이하 '클라이언트 시스템')에 관한 것이다. 본 명세서에서 개시하는 SIP 프리젠스 기반 인스턴트 메시지 및 인터넷 전화 서비스 클라이언트 시스템은 SIP User Agent로 기능하는 사용자 에이전트(UA) 확장 응용 모듈; 및 UA 확장 응용 모듈로부터의 API 호출에 적절한 SIP 메시지 스트림을 생성하여 다른 클라이언트 시스템으로 전송하고, 다른 시스템으로부터 수신된 SIP 메시지 스트림을 파싱(parsing)하여 수신된 SIP 메시지에 적절한 콜백(callback) 함수를 호출하여 UA 확장 응용 모듈에 통지하는 SIP 트랜잭션 모듈을 포함하여 본 발명의 목적 및 기술적 과제를 달성한다.The present invention relates to a SIP presence based instant messaging and Internet telephony service client system (hereinafter referred to as a 'client system') that enables instant messaging or Internet telephony services such as messengers via the Session Initiation Protocol (SIP). . The SIP presence based instant messaging and Internet telephony service client system disclosed herein includes a user agent (UA) extension application module functioning as a SIP user agent; And generating a SIP message stream suitable for API calls from the UA extension application module and transmitting it to another client system, parsing the SIP message stream received from the other system to provide an appropriate callback function for the received SIP message. Including the SIP transaction module to call and notify the UA extension application module to achieve the object and technical problem of the present invention.

Description

에스아이피 프리젠스 기반 인스턴트 메시지 및 인터넷 전화 서비스 클라이언트 시스템{SIP presence based instant message and internet telephony service client system}SIP presence based instant message and internet telephony service client system

본 발명은 메신저와 같은 인스턴트 메시지(Instant Messaging) 또는 인터넷 전화 서비스를 SIP(Session Initiation Protocol)을 통하여 가능하게 하는 SIP 프리젠스 기반 인스턴트 메시지 및 인터넷 전화 서비스 클라이언트 시스템(이하 ?클라이언트 시스템?)에 관한 것이다.The present invention relates to a SIP presence based instant messaging and Internet telephony service client system (hereinafter referred to as a client system) that enables instant messaging or Internet telephony services such as messengers via the Session Initiation Protocol (SIP). .

VoIP는 통합된 서비스와 구조를 제공한다는 기술적인 측면에서 기존 전화 서비스에 대한 강력한 라이벌로 대두되었다. SIP(Session Initiation Protocol)를 기반으로 한 VoIP 서비스로 사람들이 가장 먼저 관심을 가진 부분은 인터넷 전화 서비스였다. 대부분의 인터넷 전화 서비스나 서비스 관련 장비는 ITU-T에서 개발된 H.323 프로토콜을 이용하여 개발되었다.VoIP has emerged as a strong rival to traditional telephony services in the technical sense of providing integrated services and architecture. VoIP services based on the Session Initiation Protocol (SIP) were the first people interested in Internet telephony. Most Internet telephony services or service-related equipment were developed using the H.323 protocol developed by ITU-T.

한 편, SIP는 매우 간단한 텍스트 기반의 응용계층(application layer) 제어 프로토콜로서, IETF(Internet Engineering Task Force)의 SIP 작업그룹에서 RFC3261 표준으로 개발되었다. SIP는 하나 이상의 참가자들이 함께 세션을 만들고 수정하고 종료할 수 있게 하는 프로토콜이다. 세션(session)에는 인터넷을 이용한 회의, 전화, 면회, 이벤트 통지, 인스턴트 메시지 등이 포함된다. SIP는 하위에 있는 패킷 프로토콜(TCP, UDP 등)에 독립적(independent)이다.SIP, on the other hand, is a very simple text-based application layer control protocol developed by the Internet Engineering Task Force's SIP workgroup as part of the RFC3261 standard. SIP is a protocol that allows one or more participants to create, modify, and terminate a session together. Sessions include meetings over the Internet, telephone calls, meetings, event notifications, instant messages, and the like. SIP is independent of the underlying packet protocols (TCP, UDP, etc.).

SIP는 텍스트 기반의 HTTP의 출현 이후에 개발되었다. SIP는 클라이언트들이 호출을 시작하면 서버가 그 호출에 응답을 하는 client-server 구조에 그 기반을 두고 있다. SIP는 이러한 기존의 텍스트 기반 인터넷 표준들에 따르기 때문에 고장 수리와 네트워크의 디버깅 등 관리 측면에서 용이하다.SIP was developed after the advent of text-based HTTP. SIP is based on a client-server structure where clients initiate a call and the server responds to the call. SIP adheres to these existing text-based Internet standards, making it easy to manage, such as troubleshooting and debugging your network.

SIP의 또 다른 두드러진 특징은 사용자가 어디에 있든지 그 사용자를 위한 호 설정 요구를 전달해 줄 수 있도록 하는 사용자 이동성을 제공한다는 것이다. SIP에서는 SIP URI를 통해 각 사용자를 구분한다. 이는 e-mail 주소와 유사한 형태를 갖는다.(예, SIP:사용자명@도메인명)Another prominent feature of SIP is that it provides user mobility, allowing users to deliver call setup requests for them wherever they are. In SIP, each user is identified by a SIP URI. This is similar to an e-mail address (eg SIP: username @ domainname).

현재 IETF에서 표준으로 확정된 SIP를 이용하여 VoIP 서비스 창출을 요구하는 통신업체가 많아지고, 이에 따라 SIP 기반 VoIP 장비를 개발하거나 기존 H.323 기반 VoIP 장비에 듀얼 스택(dual stack)으로 SIP를 탑재하는 경우도 많이 있다.Many carriers require the creation of VoIP services using SIP, which is now standardized by the IETF. Accordingly, SIP-based VoIP equipment is developed or SIP is installed as a dual stack on existing H.323-based VoIP equipment. There are many cases.

SIP를 기반으로 한 VoIP 서비스는 기존 전화 서비스만을 대체하고자 하는 것을 목적으로 하지 않는다. SIP는 전화 서비스가 다른 멀티미디어 서비스와 통합된 형태의 융합 서비스를 제공시에, 그 인프라 구조를 제공하기 때문에 많은 관심을 받는다.SIP-based VoIP services are not intended to replace only existing telephony services. SIP has received a lot of attention because the telephony service provides its infrastructure when providing a converged service integrated with other multimedia services.

이에 부응하여 제안된 서비스가 인스턴트 메시징(instant messaging) 서비스 및 프리젠스 서비스(presence service)로서 그 대표적인 서비스가 메신저 서비스(messenger service)이다. 인스턴트 메시징 서비스 및 프리젠스 서비스는 사용자의 온라인과 오프라인 등의 단순한 프리젠스 서비스에서 시작하여 현재는 다양한 형태의 프리젠스 정보를 전달하는 서비스로 확장되고 있다.In response to this, the proposed service is an instant messaging service and a presence service, and a representative service thereof is a messenger service. Instant messaging services and presence services start with simple presence services such as online and offline services of users, and are now expanding to services that deliver various types of presence information.

그러나, 현재 개발 또는 운용되고 있는 대부분의 인스턴트 메시징 및 프리젠스 서비스(메신저 서비스)는 자체적으로 정의한 운용 메커니즘을 이용하기 때문에 다른 메신저 서비스와 상호 운용이 어렵거나, 상호 운용이 가능하더라도 최소한의 호환성을 제공하기 위해 사용자 층을 많이 확보하고 있는 메신저(대표적으로 MSN 메신저)와의 호환성만을 제공하고 있다.However, most instant messaging and presence services (messenger services) currently being developed or operated use self-defined operating mechanisms to provide minimal compatibility even if they are difficult or interoperable with other messenger services. To this end, it only provides compatibility with messengers (typically MSN Messenger), which have a large user base.

또한, 일부 메신저 서비스는 IETF(Internet Engineering Task Force)에서 정의한 SIP 프로토콜을 이용한 VoIP 서비스와 인스턴트 메시징 및 프리젠스 서비스를 결합된 컴포넌트를 개발하여 그 기능을 검증할 수 있도록 하는 경우도 있지만, 기본적인 기능만을 제공하고 있거나 사용자의 SIP URI(SIP Uniform Resource Identifier)별 인스턴스(instance)를 하나로 제한하는 등 그 구조를 단순화하여 처리하고 있어 메신저 서비스의 활용성(availability)을 떨어뜨리는 문제가 있다.In addition, some messenger services may develop a component that combines VoIP services using the SIP protocol defined by the Internet Engineering Task Force (IETF), and instant messaging and presence services to verify its functionality. There is a problem that the availability of the messenger service is degraded because the structure is simplified and processed, such as providing or limiting an instance of each SIP Uniform Resource Identifier (SIP URI) to one.

따라서, 본 발명은 상기와 같은 문제를 해결하기 위해 창안된 것으로 본 발명의 목적 및 이루고자 하는 기술적 과제는 인스턴트 메시징 및 프리젠스 서비스의 활용성을 향상시킬 수 있는 SIP 프리젠스 기반 인스턴트 메시지 및 인터넷 전화 서비스 클라이언트 시스템을 제공함에 있다.Accordingly, the present invention was made to solve the above problems, and the object and technical problem of the present invention is SIP presence-based instant messaging and Internet telephony services that can improve the utilization of instant messaging and presence services In providing a client system.

상기와 같은 목적 및 기술적 과제를 달성하기 위하여 본 명세서에서 개시하는 SIP 프리젠스 기반 인스턴트 메시지 및 인터넷 전화 서비스 클라이언트 시스템은 SIP User Agent로 기능하는 사용자 에이전트(UA) 확장 응용 모듈; 및 UA 확장 응용 모듈로부터의 API 호출에 적절한 SIP 메시지 스트림을 생성하여 다른 클라이언트 시스템으로 전송하고, 다른 시스템으로부터 수신된 SIP 메시지 스트림을 파싱(parsing)하여 수신된 SIP 메시지에 적절한 콜백(callback) 함수를 호출하여 UA 확장 응용 모듈에 통지하는 SIP 트랜잭션 모듈을 포함하여 본 발명의 목적 및 기술적 과제를 달성한다.In order to achieve the above object and technical problem, the SIP presence-based instant messaging and Internet telephony service client system disclosed herein includes a user agent (UA) extension application module functioning as a SIP user agent; And generating a SIP message stream suitable for API calls from the UA extension application module and transmitting it to another client system, parsing the SIP message stream received from the other system to provide an appropriate callback function for the received SIP message. Including the SIP transaction module to call and notify the UA extension application module to achieve the object and technical problem of the present invention.

우선 본 발명에 대한 이해의 편의를 도모하기 위해 그 동작 방식을 간략히 언급한다.First, the operation method is briefly referred to in order to facilitate the understanding of the present invention.

본 발명은 SIP 프리젠스를 기반으로 인스턴트 메시징 및 인터넷 전화 서비스가 행해지는 경우, 사용자 자신의 프리젠스 정보 관리(생성, 변경, 갱신, 종료) 기능과 프리젠스 정보를 알고 다른 사용자(이하, ‘버디’)에 대한 프리젠스 정보 관리(가입, 기간 변경, 가입 해제) 기능, 프리젠스 정보를 알려주고자 허용한 버디에게 프리젠스 정보 상태 변경에 따른 통지 관리 기능을 담당하는 SIP 프리젠스 기반 메시징 및 인터넷 전화 서비스 클라이언트 시스템 및 그를 위한 인터페이스에 대하여 제안한다.According to the present invention, when instant messaging and Internet telephony services are performed based on SIP presence, other users (hereinafter referred to as 'buddy') knowing their own presence information management (generation, change, update, and termination) functions and presence information. SIP presence-based messaging and Internet telephony in charge of presence information management (subscription, period change, unsubscription) function for '), and notification management function according to the change of the status of presence information to buddies who have allowed to inform the presence information. A service client system and an interface therefor are proposed.

본 발명에서 제안하는 SIP 프리젠스 기반 관련 처리는 SIP의 확장 메소드(method)인 PUBLISH, SUBSCRIBE, NOTIFY, MESSAGE 메소드를 활용하며, 각 메시지의 바디(body) 부분에 프리젠스 정보를 표현하기 위하여 XML(extensible Markup Language) 스키마(schema)로 PIDF(Presence Info Data Format) 포맷을 지원한다.The SIP presence-based related processing proposed in the present invention utilizes PUBLISH, SUBSCRIBE, NOTIFY, and MESSAGE methods, which are SIP extension methods, and uses XML () to express the presence information in the body part of each message. extensible Markup Language schema supports Presence Info Data Format (PDF) format.

또한, 대규모 사용자 층을 확보하고 있는 메신저와 상호 운용할 수 있도록 하기 위하여 XPIDF(eXtensible Presence Info Data Format) 포맷도 지원하며, 어떤 포맷을 사용할 것인지 사용자가 선택할 수 있도록 한다.It also supports the XPIDF (eXtensible Presence Info Data Format) format to enable interoperability with messengers that have a large user base and allows users to choose which format to use.

또한, SIP 프리젠스 기반 인스턴트 메시지나 인터넷 전화와 같은 VoIP 서비스가 행해질 시에 일반적으로 특정 서버(클라이언트 시스템간 통신 매개 서버)를 경유하여 클라이언트간(사용자간) 통신이 가능하거나(서버 경유 통신 모드), 특정 서버의 경유없이 IMPP 클라이언트간 서로간의 프리젠스 정보를 교환하고 직접적인 통신이 가능할 수도 있다(직접 통신 모드). 이를 지원하기 위하여 본 명세서에서 개시하는 SIP 프리젠스 기반 메시징 및 인터넷 전화 서비스 클라이언트 시스템은 두 가지 통신 모드를 모두 지원할 수 있도록 하고 어떤 방식을 사용할 것인지 사용자가 직접 선택할 수 있도록 한다.In addition, when VoIP services such as SIP presence-based instant messaging or Internet telephony are performed, communication between clients (user-to-user) is generally possible via a specific server (an inter-client communication medium server) or (via server communication mode). For example, IMPP clients may exchange presence information with each other without directly passing through a specific server and may directly communicate with each other (direct communication mode). In order to support this, the SIP presence-based messaging and Internet telephony service client system disclosed herein can support both communication modes and allow the user to directly select which method to use.

본 명세서에서 개시하는 SIP 프리젠스 기반 메시징 및 인터넷 전화 서비스 클라이언트 시스템은 기능별로 모듈화되어 설계되어 있으며 각 모듈간의 인터페이스는 세부 함수 또는 라이브러리 형태로 제공된다.The SIP presence-based messaging and Internet telephony service client system disclosed herein is designed to be modularized by function, and the interface between each module is provided in the form of a detailed function or a library.

한 편, 클라이언트 시스템내 최하위에는 SIP에서 정의하는 트랜잭션 계층(transaction layer)이 있는데. 이 계층 이하에서는 SIP 메시지에 대한 syntex check 및 parsing과 생성 기능, SIP User Agent가 수송 계층(transport layer)과 독립적인 형태로 동작할 수 있도록 해당 전송 위치 정보 관리, 트랜잭션에 대한 메시지 재전송, 타임아웃, 요청 메시지에 대한 응답 메시지 매칭 기능을 제공한다.At the bottom of the client system, on the other hand, there is a transaction layer defined by SIP. Below this layer, syntex check and parsing and creation functions for SIP messages, management of the corresponding transport location information, retransmission of messages for transactions, timeouts, and so on, can be used by the SIP User Agent to operate independently of the transport layer. It provides a response message matching function for the request message.

아울러, UA 확장 응용 모듈과 트랜잭션 계층과의 인터페이스로 트랜잭션 계층에서 제공하는 API(Application Program Interface)와 다른 클라이언트 시스템으로부터 수신된 SIP 메시지를 트랜잭션 사용자인 UA 확장 응용 모듈에 알리기 위한 콜백 함수(CallBack function)가 있다.In addition, as an interface between the UA extension application module and the transaction layer, an API (Application Program Interface) provided by the transaction layer and a callback function for informing SIP transaction received from another client system to the UA extension application module which is a transaction user. There is.

본 발명에서 제안하는 SIP 프리젠스 기반 메시징 및 인터넷 전화 서비스 클라이언트 시스템은 서버를 경유한 단말간의 통신이 가능하게 할 뿐만 아니라 단말과 단말과의 직접 통신을 가능하게 하는 융통성을 제공한다. 이는 환경설정을 통해서 지정이 가능하도록 되어 있다.The SIP presence-based messaging and Internet telephony service client system proposed by the present invention not only enables communication between terminals via a server, but also provides flexibility for enabling direct communication between terminals. This can be specified through configuration.

또한, 바디 포맷으로 XPIDF와 PIDF를 공통적으로 지원하며, 이를 환경설정을 통해 지정하게 할 수 있다. 지정된 포맷에 따라 바디 부분을 파싱(parsing)하고 생성하는 구조를 채택함으로써 현재 사용자 층을 많이 확보하고 있는 메신저와의 상호운용도 가능하게 하고, 표준이 지향하는 방향에 접목이 가능한 형태를 지원하도록 하고 있다. 따라서, 통신 모드와 바디 포맷을 통하여 특정 사용자의 프리젠스 정보를 확보한 이후에는 그 사용자의 프리젠스 정보내에 포함된 각 인스턴스와 각 인스턴스의 상태 정보, 그 인스턴스에 대한 정확한 위치 정보를 나타내는 접촉(contact) 정보를 기반으로 인스턴트 메시지나 인터넷 전화와 같은 다양한 VoIP 서비스를 접목시킬 수 있는 기본 자료로 활용된다.In addition, XPIDF and PIDF are commonly supported as a body format, which can be specified through configuration. By adopting a structure for parsing and generating body parts according to a specified format, it also enables interoperability with messengers that have a large user base, and supports forms that can be grafted in the direction of the standard. have. Therefore, after acquiring the presence information of a specific user through the communication mode and the body format, each instance included in the presence information of the user, the status information of each instance, and the exact location information of the instance may be contacted. Based on the information, it is used as a basic material for integrating various VoIP services such as instant messaging or Internet telephony.

이하, 본 발명의 구성 및 작용을 본 발명의 실시예에 근거, 첨부 도면을 참조하여 상세히 설명하되 도면의 구성요소들에 참조번호를 부여함에 있어서 동일 구성요소에 대해서는 비록 다른 도면상에 있더라도 동일 참조번호를 부여하였으며 당해 도면에 대한 설명시 필요한 경우 다른 도면의 구성요소를 인용할 수 있음을 미리 밝혀둔다.Hereinafter, the configuration and operation of the present invention will be described in detail with reference to the accompanying drawings, but the same reference numerals refer to the same elements, even if on the other drawings in the same reference numerals to the components of the drawings. Numbers have been given and it is noted that in the description of the drawings, components of other drawings may be cited if necessary.

도 1은 본 발명이 개시하는 클라이언트 시스템의 구성도이다.1 is a configuration diagram of a client system disclosed by the present invention.

도 1을 참조하면 클라이언트 시스템은 크게 두 모듈로 나뉘는데, 사용자 에이전트 확장 응용 모듈(10, 이하 ‘UA 확장 응용 모듈‘)과 SIP 트랜잭션 모듈(11)을 포함한다. UA 확장 응용 모듈(10)은 SIP User Agent로써 기능하며 사용자 정보 등록 서비스 모듈(101), 프리젠스 서비스 모듈(102), 인스턴트 메시지 서비스 모듈(103), 인터넷 전화 서비스 모듈(104)을 구비한다.Referring to FIG. 1, a client system is largely divided into two modules, and includes a user agent extension application module 10 (hereinafter, UA extension application module) and a SIP transaction module 11. The UA extension application module 10 functions as a SIP user agent and includes a user information registration service module 101, a presence service module 102, an instant message service module 103, and an internet telephony service module 104.

SIP 트랜잭션 모듈(11)은 UA 확장 응용 모듈(10)의 API 호출에 따른 내부 동작을 하고 상기 API에 적절한 SIP 메시지 스트림을 생성하여 다른 클라이언트 시스템으로 전송하며, 다른 시스템으로부터 수신된 SIP 메시지 스트림에 대하여 파싱하여 SIP 메시지에 적절한 콜백 함수(Callback function)를 호출하여 UA 확장 응용 모듈(10)에게 알리는 일을 담당한다. UA 확장 응용 모듈(10)은 SIP 트랜잭션 모듈(11)에서 제공되는 API와 트랜잭션 계층에서 전송된 콜백 함수를 이용하여 적절한 서비스를 제공할 수 있게 한다.The SIP transaction module 11 performs an internal operation according to the API call of the UA extension application module 10, generates an appropriate SIP message stream for the API, and transmits it to another client system, and receives a SIP message stream received from another system. It is responsible for parsing and informing the UA extension application module 10 by calling an appropriate callback function in the SIP message. The UA extension application module 10 may provide an appropriate service by using the API provided by the SIP transaction module 11 and the callback function transmitted in the transaction layer.

SIP 트랜잭션 모듈(11)의 내부 동작은 SIP 메시지에 대한 syntax check 및 파싱(parsing)과 생성(generation) 기능, SIP 단말이 수송 계층(transport layer)에 독립적인 형태로 동작할 수 있도록 해당 전송 위치 정보 관리, 트랜잭션에 대한 메시지 재전송, 타임아웃, 요청 메시지에 대한 응답 메시지 매칭 기능을 포함한다. 즉, SIP 표준에서 정의하는 트랜잭션 계층의 역할을 담당한다.The internal operation of the SIP transaction module 11 includes syntax check, parsing and generation functions for SIP messages, and corresponding transmission location information so that the SIP terminal can operate in a form independent of a transport layer. Includes management, message retransmission for transactions, timeouts, and response message matching for request messages. In other words, it plays the role of transaction layer defined in SIP standard.

표 1은 클라이언트 시스템이 구동시 사용자가 설정할 수 있는 환경 설정 정보를 제시한 도표이다.Table 1 is a table showing the configuration information that the user can set when the client system is running.

분류Classification 가능한 정보Possible information 추가사항More details 사용자 정보 등록User Information Registration 등록 사용자를 구분하기 위한 식별자로 SIP URI와 자신의 현재 위치 정보로 IP 주소, 포트, 수송 프로토콜 명시Identifier to distinguish registered users, specifying IP address, port, and transport protocol as SIP URI and current location information 사용자 등록 정보의 관리서버(Registrar)가 따로 있는 경우, 레지스트라 서버의 IP 주소, 포트, 수송 프로토콜을 명시한다.If there is a separate Registrar for user registration information, specify the IP address, port, and transport protocol of the Registrar Server. 통신모드 설정Communication mode setting [직접 통신 모드, 서버 경유 통신 모드]중에서 선택Select from [Direct Communication Mode, Server Communication Mode] 서버 경유 통신 모드를 선택한 경우 서버의 IP 주소와 포트를 지정할 수 있다.If you select the server-through-communication mode, you can specify the server's IP address and port. 프리젠스 바디 포맷 설정Presence body format settings [PIDF, XPIDF]중에서 선택Select from [PIDF, XPIDF] 프리젠스 정보를 생성하거나 수신하여 파싱시 반영한다.Generate or receive presence information and reflect it when parsing.

표 1을 참조하면, 본 명세서에서 개시하는 클라이언트 시스템은 사용자 정보 등록 기능, 통신모드 설정 기능과 프리젠스 바디 포맷 설정 기능을 제공한다. 사용자 정보 등록 기능은 본 클라이언트 시스템을 이용하는 사용자의 SIP URI와 현재 위치 정보의 등록 및 사용자 등록 정보를 관리하는 서버가 있다면 이에 대한 정보의 설정 등이 가능하다.Referring to Table 1, the client system disclosed herein provides a user information registration function, a communication mode setting function, and a presence body format setting function. The user information registration function may register the SIP URI and the current location information of the user who uses the client system, and if there is a server that manages the user registration information, setting the information thereof may be performed.

통신모드 설정 기능은 단말과 단말과의 직접 통신이 가능한 직접 통신 모드와 중계 서버를 경유하여 단말간의 통신이 가능한 서버 경유 통신 모드의 설정이 가능하다. 프리젠스 바디 포맷은 XPIDF와 PIDF중에서 사용자가 선택이 가능하도록 되어 있다. 통신모드의 설정과 프리젠스 바디 포맷의 설정은 향후 자신의 프리젠스 정보를 등록하는 과정과 프리젠스와 관련된 정보의 송수신시에 활용된다.The communication mode setting function may be set in a direct communication mode that enables direct communication between a terminal and a terminal and a communication mode via a server that enables communication between terminals via a relay server. The presence body format is user selectable between XPIDF and PIDF. The setting of the communication mode and the setting of the presence body format are used in the process of registering their own presence information and transmitting and receiving information related to the presence in the future.

도 2는 도 1에 제시된 UA 확장 응용 모듈의 상세 구성도이다.FIG. 2 is a detailed configuration diagram of the UA extension application module shown in FIG. 1.

사용자 정보 등록 서비스 모듈(101)은 본 클라이언트 시스템이 구동시 가장 처음 수행되는 모듈로, 본 클라이언트 시스템을 이용하는 사용자가 SIP URI와 현재 자신의 위치 정보인 IP 주소, 포트, 수송 프로토콜 등 환경 설정 정보에 지정된 값을 바탕으로 사용자 정보를 등록하는 일을 담당한다. 사용자 정보 등록 서비스 모듈(101)은 SIP 트랜잭션 모듈의 API를 호출하여 REGISTER 메시지를 생성하여 SIP URI별 현재 위치 정보들을 관리하는 레지스트라(Registrar)서버(20)에 전달하도록 한다.The user information registration service module 101 is the first module to be executed when the client system is driven. The user information registration service module 101 is configured to provide information on the configuration information such as the SIP URI and the current IP address, port, transport protocol, etc. of the user using the client system. Responsible for registering user information based on the specified value. The user information registration service module 101 calls the API of the SIP transaction module to generate a REGISTER message and delivers it to the registrar server 20 that manages current location information for each SIP URI.

프리젠스 서비스 모듈(102)은 EPA(Event Publication Agent) 모듈(1021), PUA(Presence User Agent) 모듈(1022), ESC(Event State Compositor) 모듈(1023), PA(Presence Agent) 모듈(1024)로 구성된다.The presence service module 102 includes an Event Publication Agent (EPA) module 1021, a Presence User Agent (PUA) module 1022, an Event State Compositor (ESC) module 1023, and a Presence Agent (PA) module 1024. It consists of.

특히, 프리젠스 서비스 기능과 관련된 EPA 모듈(1021), PUA 모듈(1022), ESC 모듈(1023), PA 모듈(1024)은 표 1에 제시된 통신모드와 프리젠스 바디 포맷 등 사용자가 환경 설정시에 설정한 정보에 근거하여 세부 처리 기능이 영향을 받게 된다.In particular, the EPA module 1021, the PUA module 1022, the ESC module 1023, and the PA module 1024 related to the presence service function may be used when the user sets the environment such as the communication mode and the presence body format shown in Table 1. Based on the information set, the detailed processing function is affected.

EPA 모듈(1011)은 사용자 자신의 프리젠스 정보를 생성, 변경, 기간 갱신, 삭제하는 기능을 담당하는데, 이를 위해 PUBLISH 메시지를 생성하여 자신의 프리젠스 정보를 관리하는 ESC 모듈(1023)에 전송한다. 이 때, 도 2에 제시된 통신모드가 직접 통신 모드로 설정되어 있느냐 서버 경유 통신 모드로 설정되어 있느냐에 따라 PUBLISH 메시지를 클라이언트 시스템 내부에 구비된 ESC 모듈(1023)로 전송할 것인지, SIP 트랜잭션 모듈의 API를 호출하여 서버(40)에 있는 ESC 모듈(1013)로 전송할 것인지를 결정하게 된다.The EPA module 1011 is responsible for generating, changing, updating, and deleting the user's own presence information. To this end, the EPA module 1011 generates a PUBLISH message and transmits the presence information to the ESC module 1023 managing the presence information. . At this time, depending on whether the communication mode shown in FIG. 2 is set to the direct communication mode or the communication mode via the server, whether to transmit a PUBLISH message to the ESC module 1023 provided in the client system, or the API of the SIP transaction module. Call to determine whether to send to the ESC module 1013 in the server (40).

EPA 모듈(1021)은 서버 경유 통신 모드의 경우(ESC 모듈이 클라이언트 시스템 외부에 있는 경우(도 4 및 도 5에 제시되어 있다)), IP 주소와 포트로 PUBLISH 메시지를 텍스트 스트림 형태로 인코딩하여 전송하도록, SIP 트랜잭션 모듈의 API를 호출한다. 직접 통신 모드의 경우, ESC 모듈(1023)이 동일한 클라이언트 시스템에 존재하는 경우로 내부적으로 정의된 SIP 메시지의 구조체에 PUBLISH 메시지의 의미 정보를 담아 ESC 모듈(1023)에 전달한다.The EPA module 1021, when in server-to-server communication mode (when the ESC module is outside the client system (shown in Figures 4 and 5)), encodes and sends a PUBLISH message in the form of a text stream to the IP address and port. Call the API of the SIP transaction module. In the case of the direct communication mode, the ESC module 1023 exists in the same client system, and the semantic information of the PUBLISH message is delivered to the ESC module 1023 in a structure of an internally defined SIP message.

ESC 모듈(1023)은 통신망을 통해서(직접 통신 모드) 또는 동일한 클라이언트 시스템내 EPA 모듈로부터(서버 경유 통신 모드) 수신된 PUBLISH 메시지가 자신이 관리하는 도메인내의 것이라면 해당 SIP URI에 대한 프리젠스 정보를 저장하는 일을 담당한다. 이 때, 통신망을 통해 전달된 PUBLISH 메시지는 스트림 형태로 SIP 트랜잭션 모듈로 전달된 것을 파싱하여 ESC 모듈에게 내부 구조체로 담아 전달한다.The ESC module 1023 stores the presence information for the corresponding SIP URI if the PUBLISH message received via the communication network (direct communication mode) or from the EPA module in the same client system (via the server communication mode) is in a domain managed by the ESC module 1023. In charge of doing. At this time, the PUBLISH message transmitted through the communication network is parsed to be delivered to the SIP transaction module in the form of a stream and delivered to the ESC module as an internal structure.

PUA 모듈(1022)은 현재 클라이언트 시스템에 등록된 사용자가 특정 사용자의 프리젠스 정보를 알고자 가입 요청(이를 버디로 등록한다고 한다), 기간 갱신, 삭제하기 위한 SUBSCRIBE 메시지를 생성하여 특정 사용자의 클라이언트 시스템 또는 해당 사용자의 프리젠스 정보를 관리하는 클라이언트 시스템의 PA 모듈에 전송하며, 버디로 가입이 된 이후 버디의 프리젠스 정보를 담고 있는 NOTIFY 메시지를 다른 클라이언트 시스템의 PA 모듈로부터 수신하여 이를 사용자에게 제시한다.The PUA module 1022 generates a SUBSCRIBE message for a user who is currently registered with a client system to register a subscription request (called a buddy), renew a period, and delete a user's presence information. Alternatively, the user's presence information is transmitted to the PA module of the client system that manages the user's presence information. After joining as a buddy, the NOTIFY message containing the presence information of the buddy is received from the PA module of another client system and presented to the user. .

PA 모듈(1024)은 클라이언트 시스템에 등록된 사용자에 대한 버디 가입 요청에 관련된 SUBSCRIBE 메시지를(다른 클라이언트 시스템의 PUA 모듈로부터) 수신하여 가입 요구를 전송한 사용자를 버디로 허용할 것인지를 판단하고, 버디로 허용한 경우, 해당 사용자에 대한 프리젠스 정보가 변경된 경우에 버디로 가입한 사용자에게 변경된 프리젠스 정보를 주기적으로 통지하기 위한 NOTIFY 메시지를 생성하여 다른 클라이언트 시스템의 PUA 모듈로 전송한다.The PA module 1024 receives a SUBSCRIBE message (from the PUA module of another client system) related to a buddy subscription request for a user registered on the client system to determine whether to allow the user who sent the subscription request as a buddy, If allowed, if a presence information of the corresponding user is changed, a NOTIFY message for periodically notifying the changed presence information to a user who is subscribed as a buddy is generated and transmitted to the PUA module of another client system.

인스턴트 메시지 서비스 모듈(102)은 인스턴트 메시지의 교환을 위한 MESSAGE 메시지를 생성하여 목적지 클라이언트 시스템에게 SIP 트랜잭션 모듈의 API를 호출하여 전송하는 기능 및 다른 클라이언트 시스템으로부터 수신된 MESSAGE 메시지 스트림을 SIP 트랜잭션 모듈에서 파싱하여 내부 구조체로 담아 콜백함수를 통해 전달하면 이를 처리하는 기능을 담당한다. 이 때, 성공률이 높은 서비스를 위해 MESSAGE 메시지는 해당 인스턴스에 대하여 확보된 프리젠스 정보 중 상태정보가 온라인이면서 사용자 현재 위치에 대한 접촉 (Contact) 정보가 있는 경우 그 접촉 정보를 목적지로 전송하도록 한다.The instant message service module 102 generates a MESSAGE message for exchanging instant messages, calls and transmits the API of the SIP transaction module to the destination client system, and parses the MESSAGE message stream received from another client system in the SIP transaction module. If you put it as an internal structure and pass it through the callback function, it handles the function. At this time, for a service having a high success rate, the MESSAGE message transmits the contact information to the destination when the presence information of the presence information acquired for the instance is online and there is contact information on the current location of the user.

인터넷 전화 서비스 모듈(103)은 RFC3261 User Agent(RFC3261 UA) 모듈로, INVITE, ACK, CANCEL, BYE 등의 메시지를 다른 클라이언트 시스템의 인터넷 전화 서비스 모듈로/로부터 송신/수신하여 해당 서비스를 제공한다. 이 때도 인스턴트 메시지 서비스와 마찬가지로 성공률이 높은 서비스를 위해 미리 획득한 프리젠스 정보 중 상태정보가 온라인인 경우와 사용자 현재위치에 대한 접촉 정보가 있는 경우 그 접촉 정보를 목적지로 메시지를 전송하도록 한다.The Internet telephony service module 103 is an RFC3261 User Agent (RFC3261 UA) module. The Internet telephony service module 103 transmits / receives messages such as INVITE, ACK, CANCEL, and BYE to / from the Internet telephony service module of another client system to provide a corresponding service. In this case, like the instant messaging service, if the presence information is online and the contact information on the current location of the user is obtained, the message is transmitted to the destination.

도 3은 클라이언트 시스템이 서버를 경유하지 않고 다른 클라이언트 시스템과 직접 통신하는 경우 즉, 표 1에 제시된 통신 모드가 직접 통신 모드일 경우에 UA 확장 응용 모듈(10)의 각 기능 모듈별의 SIP 메시지의 송수신 관계를 제시한 도면이며, 도 4는 클라이언트 시스템이 서버를 경유하여 다른 클라이언트 시스템과 통신하는 경우 즉, 표 1에 제시된 통신 모드가 간접 통신 모드일 경우에 UA 확장 응용 모듈(10)의 각 기능 모듈별의 SIP 메시지의 송수신 관계를 제시한 도면이다.FIG. 3 shows the SIP message for each functional module of the UA extension application module 10 when the client system communicates directly with another client system without passing through the server, that is, when the communication mode shown in Table 1 is the direct communication mode. 4 is a diagram illustrating a transmission / reception relationship, and FIG. 4 shows each function of the UA extension application module 10 when the client system communicates with another client system via a server, that is, when the communication mode shown in Table 1 is an indirect communication mode. A diagram showing a transmission / reception relationship of SIP messages for each module.

도 3과 도 4를 참조하면, 서버 경유 통신 모드일 경우에는 UA 확장 응용 모듈(10)에 ESC 모듈과 PA 모듈이 제외되어 있으며, 클라이언트 시스템간 통신을 매개하는 서버(40)에 이들 모듈이 내장되어 있음을 알 수 있다. 도 3과 같이 직접 통신 모드일 경우에는 클라이언트 시스템간에 SUBSCRIBE, NOTIFY 메시지의 직접 교환을 통해 상대방의 프리젠스 상태 정보와 현재 위치에 대한 접촉(contact) 정보 획득이 이루어지게 되며, 도 4와 같이 서버 경유 통신 모드일 경우에는 프리젠스 서버(40)를 통한 SUBSCRIBE, NOTIFY 메시지의 교환을 통해 클라이언트 시스템간 상대방의 프리젠스 상태 정보와 현재 위치에 대한 접촉 정보 획득이 이루어지게 된다.3 and 4, in the communication mode via the server, the ESC module and the PA module are excluded from the UA extension application module 10, and these modules are embedded in the server 40 that mediates communication between client systems. It can be seen that. In the direct communication mode as shown in FIG. 3, the presence status information and the contact information of the current location of the other party are acquired by directly exchanging SUBSCRIBE and NOTIFY messages between client systems. In the communication mode, the presence status information and the contact information of the current location of the counterpart are acquired between the client systems through the exchange of SUBSCRIBE and NOTIFY messages through the presence server 40.

도 5는 클라이언트 시스템이 서버를 경유하지 않고 클라이언트 시스템간 직접 통신하는 경우에 대한 세부 기능 모듈별 SIP 메시지의 송수신 관계(실선으로 표시)와 서버를 경유하여 클라이언트 시스템간 통신하는 경우에 대한 세부 기능 모듈별 SIP 메시지의 송수신 관계(점선으로 표시)를 함께 기술하고 있다. 즉, 도 3과 도 4에 제시된 메시지 송수신 관계가 융합되어 제시되어 있다.5 is a detailed functional module for a case where a client system directly communicates between client systems without passing through a server, and a transmission / reception relationship (shown in solid line) of SIP messages for each functional module and a communication between client systems via a server. It describes the transmission / reception relationship (marked with a dotted line) of each SIP message. That is, the message transmission / reception relations shown in FIGS. 3 and 4 are fused and presented.

표 2는 클라이언트 시스템에서 관리하는 프리젠스 관련 정보를 나타낸 것이다.Table 2 shows the presence related information managed by the client system.

분류Classification 각 필드의 의미Meaning of each field SIP URISIP URI 사용자를 유일하게 구분하는 정보Information that uniquely identifies a user 사용자 인스턴스 식별자 (InstanceID)User instance identifier (InstanceID) 동일한 사용자의 SIP URI에 복수의 인스턴스가 존재할 수 있으므로 이를 구분하기 위한 정보Information to distinguish between multiple instances of the same user's SIP URI 프리젠스 상태 정보Presence status information 사용자의 인스턴스에 대한 상태 정보로, 온라인 (등록되어 있어 통신이 가능한 상태)과 오프라인 (등록이 되어 있지 않아 통신이 불가능한 상태)이 기본적으로 가능하며, 바쁨(등록되어 있으나 다른 일로 바빠 통신이 불가능한 상태), 부재(등록되어 있으나 다른 일로 자리를 비워 통신이 불가능한 상태) 등 확장이 가능하다.Status information about the user's instance: online (registered and available for communication) and offline (unregistered, not available), and busy (registered but busy for other reasons). ), Members (registered, but unable to communicate due to empty work) can be expanded. 접촉(Contact) 정보Contact Information 사용자 인스턴스에 대한 현재의 위치 정보로, 프리젠스 정보가 확보되었을 때 인스턴트 메시지나 인터넷 전화 등의 추가 확장 서비스에서 관련 메시지 전송의 목적지로 활용할 수 있는 정보이다.The current location information of the user instance can be used as a destination for the transmission of related messages in an additional extension service such as an instant message or an internet phone when the presence information is obtained. 사용자 인스턴스별 프리젠스 정보 관리 식별자Presence information management identifier by user instance 사용자 인스턴스별 프리젠스 상태 정보 변경시에 사용하는 정보로, 버전관리를 위하여 PA로부터 할당받아 해당 사용자 인스턴스의 프리젠스 정보에 대한 등록, 변경 요구, 기간 변경, 상태 변경 등에 사용한다.This information is used to change the presence status information for each user instance. It is allocated from the PA for version management and used for registration, change request, period change, and state change for the presence information of the corresponding user instance.

표 2에 제시된 바와 같이, 프리젠스 관련 정보는 각 사용자를 유일하게 구분할 수 있는 SIP URI, 각 사용자의 인스턴스를 구분하기 위한 사용자 인스턴스 식별자, 각 사용자의 인스턴스에 대한 프리젠스 상태 정보, 각 사용자의 인스턴스에 대한 현재 위치를 나타내 향후 접촉을 유도하는 Contact 정보, 사용자 인스턴스별 프리젠스 정보 관리 식별자 등으로 구성된다.As shown in Table 2, the presence related information includes a SIP URI that can uniquely distinguish each user, a user instance identifier to distinguish each user's instance, presence status information for each user's instance, and an instance of each user. It is composed of contact information indicating the current location for and inducing future contact, presence information management identifier for each user instance, and the like.

클라이언트 시스템에서 관리되는 프리젠스 관련 정보는 송수신되는 메소드 사이에 다음과 같은 기준으로 사용된다. SUBSCRIBE 메시지와 NOTIFY 메시지는 사용자의 SIP URI를 주 목적지로 하는 가입 기능과 통지 기능을 하며, 바디로 전달되는 정보는 해당 프리젠터티 SIP URI내 모든 인스턴스에 대한 정보를 담고 있다.Presence related information managed in the client system is used as the following criteria between the methods to be transmitted and received. The SUBSCRIBE and NOTIFY messages serve as a subscription and notification function for the user's SIP URI as the main destination, and the information delivered to the body contains information about all instances in the presentity SIP URI.

PUBLISH 메시지는 사용자 SIP URI와 사용자 인스턴스 식별자에 대한 프리젠스 정보 등록 기능으로, 바디로 전달되는 정보는 해당 사용자 SIP URI내 특정 인스턴스에 대한 정보를 담고 있다.The PUBLISH message is a function for registering presence information on a user SIP URI and a user instance identifier. Information transmitted to a body includes information on a specific instance in a corresponding user SIP URI.

도 6a 내지 도 6d는 EPA 모듈(1021), PUA 모듈(1022), ESC 모듈(1023), PA 모듈(1024)의 세부 함수 처리 절차를 제시한 도면이다.6A to 6D illustrate detailed function processing procedures of the EPA module 1021, the PUA module 1022, the ESC module 1023, and the PA module 1024.

크게 4가지 계층으로 구분할 수 있으며, 응용의 GUI 부분에서는 사용자와의 인터페이스를 위한 기능을 담당하고, 응용의 Upper Layer에서는 GUI나 통신 모듈을 통해 전달되는 임시 구조체내 정보와 클라이언트 시스템에서 저장하고 관리하는 내부 구조체 사이에 정보를 전달하는 역할을 한다. 응용의 Lower Layer에서는 클라이언트 시스템에서 저장하고 있는 내부 구조체 정보와 도 1의 SIP 트랜잭션 계층에서 인터페이스로 사용하는 SIP 메시지를 수용할 수 있는 구조체 사이에 정보를 전달하는 역할을 한다. 맨 하단의 SIP 트랜잭션에서는 SIP 트랜잭션에서 제공하는 API로 TR로 시작하는 함수가 있고, SIP 트랜잭션에서 호출하는 UA 확장 응용의 콜백 함수로 APP로 시작하는 함수가 있다.It can be divided into four layers, and the GUI part of the application is responsible for interfacing with the user, and the upper layer of the application stores and manages the information in temporary structures that are delivered through the GUI or communication modules and the client system. It is responsible for passing information between internal structures. The lower layer of the application is responsible for transferring information between the internal structure information stored in the client system and the structure that can accommodate SIP messages used as interfaces in the SIP transaction layer of FIG. At the bottom of the SIP transaction, there are APIs provided by the SIP transaction, which start with TR, and there are functions that start with APP as the callback function of the UA extension application called by the SIP transaction.

도 6a의 EPA 모듈에서는 사용자 자신의 프리젠스 상태 정보 생성, 변경, 기간 갱신, 삭제시 수행되며, GUI_UpdatePresenceInfo()은 사용자에게 변화된 상태를 제공하며, EPA_UpdatePresenceInfo()은 표3a의 PresenceInfo에 자신의 SIP URI를 할당하여 프리젠스 상태에 대한 가장 최근 정보를 저장하여 유지하고, EPA_SendPublish()은 PresenceInfo로부터 사용자 자신의 프리젠스 정보를 관리하는 ESC 모듈에 전송하기 위한 PUBLISH 메시지를 위해 필요한 정보를 할당하고, TR_SendRequest()은 PUBLISH Request SIP 메시지를 지정된 목적지에 전달한다. In the EPA module of FIG. 6A, the user's presence state information is generated, changed, updated, and deleted. GUI_UpdatePresenceInfo () provides a changed state to the user, and EPA_UpdatePresenceInfo () provides his SIP URI in PresenceInfo of Table 3a. To store and maintain the most recent information about the presence status, EPA_SendPublish () allocates the necessary information for the PUBLISH message for transmission from PresenceInfo to the ESC module managing the user's own presence information, and TR_SendRequest ( ) Forwards the PUBLISH Request SIP message to the specified destination.

사용자 자신의 프리젠스 정보를 관리하는 ESC 모듈로부터 전송된 PUBLISH SIP 메시지에 대한 응답 (수용, 거절, 에러 등)이 오면 SIP 트랜잭션 모듈에서 처음 수신하며 APP_ReceiveResponse()을 통해 응용에 전달된다. PUBLISH 메시지에 대한 응답은 EPA_RecvResponse()을 통해 처리되며, EPA_UpdatePresenceInfo()을 통해 PresenceInfo에 프리젠스 상태 변경 요구에 대한 가장 최근 정보를 저장하여 유지하고, GUI_UpdatePresenceInfo()을 통해 사용자에게 변경된 가장 최근의 상태를 제공한다.When a response (acceptance, rejection, error, etc.) to a PUBLISH SIP message sent from an ESC module managing user's presence information comes, it is first received by the SIP transaction module and transmitted to the application through APP_ReceiveResponse (). Responses to PUBLISH messages are handled through EPA_RecvResponse (), which stores the most recent information about the presence state change request in PresenceInfo through EPA_UpdatePresenceInfo () and keeps the most recent state changed to the user through GUI_UpdatePresenceInfo (). to provide.

도 6b의 ESC 모듈에서는 ESC 모듈로부터 전송된 PUBLISH SIP 메시지가 오면 SIP 트랜잭션 모듈에서 처음 수신하며 APP_ReceiveRequest()을 통해 응용에 전달된다. PUBLISH 메시지는 ESC_RecvPublish()을 통해 처리되며, 수신된 PUBLISH 메시지가 자신이 관리하는 도메인내의 것이라면, 표3d의 AuthenticateInfo 등을 적용하여 인증된 사용자이면 ESC_UpdatePresenceInfo()을 통해 PresenceInfo에 프리젠스 상태 변경 요구에 대한 가장 최근 정보를 저장하여 유지하고, GUI_UpdatePresenceInfo()을 통해 관리자에게 변경된 가장 최근의 상태를 제공한다. 또한, ESC_SendResponse()를 통해 PUBLISH SIP 메시지에 대한 응답 (수용, 거절, 에러 등)을 전송하고, TR_SendResponse()을 통해 EPA에 응답을 전달한다.In the ESC module of FIG. 6B, when a PUBLISH SIP message transmitted from the ESC module is received, the SIP transaction module first receives it and is delivered to the application through APP_ReceiveRequest (). The PUBLISH message is processed through ESC_RecvPublish (). If the received PUBLISH message is from a domain managed by the user, if the user is authenticated by applying AuthenticateInfo, etc. of Table 3d, the EBS_UpdatePresenceInfo () is used for the presence status change request. Save and maintain the most recent information, and provide the administrator with the most recent changed status through GUI_UpdatePresenceInfo (). In addition, a response (acceptance, rejection, error, etc.) to the PUBLISH SIP message is transmitted through ESC_SendResponse (), and a response is transmitted to the EPA through TR_SendResponse ().

도 6c의 PUA 모듈에서는 특정 사용자의 프리젠스 정보를 알고자 가입 요청, 가입 기간 갱신, 삭제하기 위하여 수행되며, GUI_UpdateSubscribeInfo()은 사용자에게 변화된 상태를 제공하며, PUA_UpdatePresenceInfo()은 표3a의 PresenceInfo에 자신의 SIP URI와 SubscriberInfo에 가입하고자 하는 상대방의 SIP URI를 할당하여 가입 요구에 대한 가장 최근 정보를 저장하여 유지하고, PUA_SendSubscribe()은 PresenceInfo의 SubscriberInfo로부터 가입하고자 하는 상대방의 PA 모듈에 전송하기 위한 SUBSCRIBE 메시지를 위해 필요한 정보를 할당하고, TR_SendRequest()은 SUBSCRIBE SIP 메시지를 지정된 목적지에 전달한다. In the PUA module of FIG. 6C, a request is made to subscribe to a specific user's presence information, and a subscription period is updated and deleted. GUI_UpdateSubscribeInfo () provides a changed state to a user, and PUA_UpdatePresenceInfo () is assigned to PresenceInfo of Table 3a. SUBSCRIBE message for allocating the SIP URI of the other party to subscribe to the SIP URI and SubscriberInfo to store and maintain the most recent information about the subscription request, and PUA_SendSubscribe () transmits to the other party's PA module from the SubscriberInfo of PresenceInfo. TR_SendRequest () sends the SUBSCRIBE SIP message to the designated destination.

가입하고자 하는 상대방의 PA 모듈로부터 전송된 SUBSCRIBE SIP 메시지에 대한 응답 (수용, 거절, 에러 등)이 오면 SIP 트랜잭션 모듈에서 처음 수신하며 APP_ReceiveResponse()을 통해 응용에 전달된다. SUBSCRIBE 메시지에 대한 응답은 PUA_RecvResponse()을 통해 처리되며, PUA_UpdatePresenceInfo()을 통해 PresenceInfo의 SUBSCRIBERInfo에 가입 상태에 대한 가장 최근 정보를 저장하여 유지한다. 상대방으로부터 버디로 가입이 된후 버디의 프리젠스 정보를 담고 있는 NOTIFY 메시지를 수신하면, SIP 트랜잭션 모듈에서 처음 수신하며 APP_ReceiveResponse()을 통해 응용에 전달된다.When a response (acceptance, rejection, error, etc.) to a SUBSCRIBE SIP message sent from a PA module of a partner to join comes, it is first received by the SIP transaction module and transmitted to the application through APP_ReceiveResponse (). The response to the SUBSCRIBE message is processed through PUA_RecvResponse (), and the most recent information on the subscription status is stored in SUBSCRIBERInfo of PresenceInfo through PUA_UpdatePresenceInfo (). If you receive a NOTIFY message containing the presence information of the buddy after joining the buddy from the other party, it is first received by the SIP transaction module and transmitted to the application through APP_ReceiveResponse ().

NOTIFY 메시지는 PUA_RecvNotify()을 통해 처리되며, PUA_UpdatePresenceInfo()을 통해 PresenceInfo의 PresenceInstanceInfo 목록에 상대방의 가장 최근 프리젠스 상태 정보를 저장하여 유지하고, GUI_UpdatePresenceInfo()을 통해 사용자에게 변경된 가장 최근의 상태를 제공한다. 또한, 수신된 NOTIFY 메시지를 잘 받았다는 응답 메시지를 PUA_SendResponse()과 TR_SendResponse()을 통해 상대방 PA 모듈에게 전달한다.The NOTIFY message is processed through PUA_RecvNotify (), saves and maintains the opponent's most recent presence status information in PresenceInstanceInfo list of PresenceInfo through PUA_UpdatePresenceInfo (), and provides the user with the most recent changed status through GUI_UpdatePresenceInfo (). . In addition, a response message indicating that the received NOTIFY message is well received is transmitted to the other PA module through PUA_SendResponse () and TR_SendResponse ().

도 6d의 PA 모듈에서는 버디 가입 요청에 관련된 SUBSCRIBE 메시지를 다른 클라이언트 시스템의 PUA 모듈로부터 수신시 SIP 트랜잭션 모듈에서 처음 수신하며 APP_ReceiveRequest()을 통해 응용에 전달된다. In the PA module of FIG. 6D, when receiving a SUBSCRIBE message related to a buddy subscription request from the PUA module of another client system, the SIP transaction module first receives the SUBSCRIBE message and is delivered to the application through APP_ReceiveRequest ().

SUBSCRIBE 메시지는 PA_RecvSubscribe()을 통해 처리되며, 수신된 Subscribe 메시지가 자신이 관리하는 도메인내의 것이라면, 표3e의 AcceptanceInfo 등을 적용하여 허용된 사용자이면 PA_UpdateSubscribeInfo()을 통해 PresenceInfo의 SubscriberInfo에 가입 요구에 대한 가장 최근 정보를 저장하여 유지하고, GUI_UpdateSubscribeInfo()을 통해 관리자에게 변경된 가장 최근의 상태를 제공한다. 또한, PA_SendResponse()를 통해 SUBSCRIBE SIP 메시지에 대한 응답 (수용, 거절, 에러 등)을 전송하고, TR_SendResponse()을 통해 PUA에 응답을 전달한다. SUBSCRIBE message is processed through PA_RecvSubscribe (). If the received Subscribe message is from the domain that is managed by him, if the user is allowed by applying AcceptanceInfo of Table 3e, etc., it is impersonated to subscribe to SubscriberInfo of PresenceInfo through PA_UpdateSubscribeInfo (). It stores and keeps the latest information and provides the administrator with the most recent changed status through GUI_UpdateSubscribeInfo (). In addition, a response (acceptance, rejection, error, etc.) to the SUBSCRIBE SIP message is transmitted through PA_SendResponse (), and a response is transmitted to the PUA through TR_SendResponse ().

버디로의 가입을 허용한 경우, 자신의 프리젠스 정보를 담고 있는 NOTIFY 메시지를 PUA_SendResponse()과 TR_SendResponse()을 통해 가입한 PUA 모듈에게 전달하고, SIP 트랜잭션 모듈에서 NOTIFY 메시지에 대한 응답을 수신하며 APP_ReceiveResponse()을 통해 응용에 전달된다. 응답 메시지는 전송된 NOTIFY 메시지가 PA_RecvResponse()을 통해 잘 처리되었음을 인지하는 역할을 한다.If you allow subscription to buddy, forward NOTIFY message containing your presence information to PUA module subscribed through PUA_SendResponse () and TR_SendResponse (), receive response to NOTIFY message from SIP transaction module, and APP_ReceiveResponse () Is passed to the application. The response message recognizes that the sent NOTIFY message was well processed through PA_RecvResponse ().

표 3a 내지 표 3e는 응용의 Upper Layer와 Lower Layer에서 주로 사용하는 클라이언트 시스템에서 저장하고 관리하는 정보들이다. 제공되는 서비스로 나의 상 태(프리젠스 정보) 관련 등록과 변경 및 삭제 기능, 버디 관련 추가 및 삭제 기능, 상대방의 버디 요청에 대한 허용 및 금지 기능, 메시지 송신 및 수신 기능 등이 모두 아래 내부 구조체를 통해 이루어진다. Tables 3a to 3e are information stored and managed by the client system mainly used in the upper and lower layers of the application. The services provided include registration, change and deletion of my status (presence information), addition and deletion of buddy-related functions, permission and prohibition of buddy requests from other parties, and the function of sending and receiving messages. Is done through.

크게 PresenceInfo 구조체를 리스트 형태로 유지하며, Presenceinfo내에서는 각 인스턴스에 대한 정보인 PresenceTupleInfo 구조체가 리스트로, 가입자 정보가 SubscribeInfo 구조체의 리스트 형태로 존재한다. 또한, 가입자를 인증하기 위한 AuthenticateInfo와 가입에 대한 허용여부를 위한 AcceptanceInfo를 유지하고 있다.PresenceInfo structure is largely maintained in list form. In Presenceinfo, PresenceTupleInfo structure, which is information about each instance, is in a list, and subscriber information is in list form of SubscribeInfo structure. In addition, it maintains AuthenticateInfo for authenticating subscriber and AcceptanceInfo for granting subscription.

PresenceInfoPresenceInfo 분류Classification 각 필드의 의미Meaning of each field SIP URISIP URI 사용자를 유일하게 구분하는 정보Information that uniquely identifies a user PresenceInstanceInfo 의 리스트List of PresenceInstanceInfo 동일한 사용자의 SIP URI에 복수의 인스턴스가 존재할 수 있으므로, 사용자의 각 인스턴스별 프리젠스 정보 구조체를 리스트 형태로 제공한다.Since multiple instances may exist in a SIP URI of the same user, a presence information structure for each instance of the user is provided in a list form. SubscriberInfo 의 리스트List of SubscriberInfo 지정된 사용자에 대한 프리젠스 정보를 요청한 가입자가 복수로 존재할 수 있으므로, 사용자에 대한 가입자 정보 구조체를 리스트 형태로 제공한다.Since there may be a plurality of subscribers who have requested the presence information for the designated user, the subscriber information structure for the user is provided in the form of a list. 가입 만기 정보Subscription expiration information 지정된 사용자에 대한 프리젠스 정보를 요청한 가입 기간에 대한 정보로, 기본적으로 1시간으로 지정하고 계속 원하는 경우 1시간이 만기되기 전에 주기적으로 재 가입 요청을 하는데 활용된다.Information on the subscription period for which the presence information for the designated user is requested. It is basically designated as 1 hour, and it is used to request for re-registration periodically before the expiration of 1 hour if desired. 사용자 인스턴스별 프리젠스 정보 관리 식별자Presence information management identifier by user instance 사용자 인스턴스별 프리젠스 상태 정보 변경시에 사용하는 정보로, 버전관리를 위하여 PA로부터 할당받아 해당 사용자 인스턴스의 프리젠스 정보에 대한 등록, 변경 요구, 기간 변경, 상태 변경 등에 사용한다.This information is used to change the presence status information for each user instance. It is allocated from the PA for version management and used for registration, change request, period change, and state change for the presence information of the corresponding user instance.

PresenceInstanceInfoPresenceInstanceInfo 분류Classification 각 필드의 의미Meaning of each field 사용자 인스턴스 식별자User instance identifier 동일한 사용자의 SIP URI에 복수의 인스턴스가 존재할 수 있으므로 이를 구분하기 위한 정보Information to distinguish between multiple instances of the same user's SIP URI 프리젠스 상태 정보Presence status information 사용자의 인스턴스에 대한 상태 정보로, 온라인 (등록되어 있어 통신이 가능한 상태)과 오프라인 (등록이 되어 있지 않아 통신이 불가능한 상태)이 기본적으로 가능하며, 바쁨 (등록되어 있으나 다른일로 바빠 통신이 불가능한 상태), 부재 (등록되어 있으나 다른 일로 자리를 비워 통신이 불가능한 상태) 등 확장이 가능하다.Status information about the user's instance: online (registered and available for communication) and offline (unregistered, not available), and basically busy (registered but busy for other reasons). ), Members (registered but not available for communication due to other work) can be expanded. Contact 정보Contact Information 사용자 인스턴스에 대한 현재의 위치 정보로, 프리젠스 정보가 확보되었을 때 인스턴트 메시지나 인터넷 전화 등의 추가 확장 서비스에서 관련 메시지 전송의 목적지로 활용할 수 있는 정보이다.The current location information of the user instance can be used as a destination for the transmission of related messages in an additional extension service such as an instant message or an internet phone when the presence information is obtained.

SubscriberInfoSubscriberInfo 분류Classification 각 필드의 의미Meaning of each field SIP URISIP URI 프리젠스 정보를 통보 받고자 하는 가입자를 유일하게 구분하는 정보Information that uniquely identifies subscribers to be notified of presence information 가입 상태 정보Subscription Status Information 프리젠스 정보를 통보 받고자 하는 가입자의 가입 상태Subscription status of subscribers to be notified of presence information 가입 만기 정보Subscription expiration information 프리젠스 정보를 통보 받고자 하는 가입자의 가입이 허용된 경우 가입이 유효한 기간Period of validity of subscription, if subscriber is allowed to receive presence information 통보 이벤트 단위 PackageNotification Event Unit Package 사용자별 프리젠스 정보를 통보받고자 하는 경우를 식별하며, 이외 그룹을 대상으로 프리젠스 정보를 통보받고자 하는 경우 등의 확장이 가능하다.It is possible to identify the case where the user wants to be notified of the presence information, and to expand the case where the presence information is notified to other groups. 가입이 허용된 두 사용자간 인스턴스 관련 다이얼로그 정보Instance related dialog information between two users allowed to join 가입과 통지에 대하여 두 사용자간 인스턴스를 통한 SIP에서 정의하는 다이얼로그 유지정보Dialog maintenance defined by SIP through two user instances for subscription and notification

AuthenticateInfoAuthenticateInfo 분류Classification 각 필드의 의미Meaning of each field SIP URISIP URI 인증과 관련된 사용자를 구분하는 정보Information that identifies the user involved in authentication RealmRealm 인증하고자 하는 HTTP Digest 방식의 Realm 정보Realm information of HTTP Digest method to authenticate DomainDomain 인증하고자 하는 HTTP Digest 방식의 Domain 정보HTTP Digest domain information to authenticate User IDUser ID 인증받고자 하는 사용자 IDUser ID to be authenticated PasswordPassword 인증받고자 하는 사용자 ID에 따른 패스워드Password according to user ID to be authenticated

AcceptanceInfoAcceptanceInfo 분류Classification 각 필드의 의미Meaning of each field SIP URISIP URI 프리젠스 정보를 통보받고자 가입 요청한 가입자를 구분하는 정보Information identifying the subscriber who requested to be notified of the presence information Allowed ListAllowed List 가입 요청에 대하여 허용하는 가입자 목록List of Subscribers Allowed to Join Blocked ListBlocked List 가입 요청에 대하여 허용하지 않는 가입자 목록List of subscribers not allowed to join

이제까지 본 발명에 대하여 그 바람직한 실시예를 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far I looked at the center of the preferred embodiment for the present invention. Those skilled in the art will appreciate that the present invention can be implemented in a modified form without departing from the essential features of the present invention. Therefore, the disclosed embodiments should be considered in descriptive sense only and not for purposes of limitation. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.

본 발명에 의하면 사용자 자신에 대한 프리젠스 정보의 관리 기능과 다른 사용자의 프리젠스 정보에 대한 가입과 통지를 제공하는 패키지 기능을 SIP User Agent의 기능을 확장하여 제공하고, 확보된 다른 사용자의 프리젠스 정보 (상태정보가 온라인이고 그 인스턴스에 대한 접촉 정보가 있는 경우)를 활용하여 인스턴트 메시지 및 인터넷 전화와 같은 VoIP 서비스를 제공 시 더 성공률이 높은 서비스를 제공한다. 특히, 무선망과 같이 자원이 제한되어 있는 경우에는 자원의 낭비를 줄이는 효과도 제공한다.According to the present invention, a function of managing the presence information for the user himself and a package function for providing the subscription and notification of the presence information of other users by extending the function of the SIP user agent and providing the presence of other users Information (when the status information is online and there is contact information for the instance) is used to provide a more successful service when providing VoIP services such as instant messaging and Internet telephony. In particular, when resources are limited, such as a wireless network, it also provides an effect of reducing waste of resources.

또한, 본 발명에서 제안하는 SIP 프리젠스 기반 인스턴트 메시지 및 VoIP 서비스 클라이언트 시스템의 세부구조는 기능별로 모듈화되어 설계되어 있으며 각 단계의 인터페이스는 세부 함수 또는 라이브러리 형태로 단계별 절차를 제공하고 도1에 도시된 바와 같이 SIP 트랜잭션 계층 위의 기능을 분리한 인터페이스를 제공함으로써 사용자가 수송 프로토콜이나 SIP 메시지의 파싱 및 생성에 독립적으로 응용에 집중할 수 있는 구조를 갖고 있다.In addition, the detailed structure of the SIP presence-based instant messaging and VoIP service client system proposed in the present invention is designed to be modularized by function, and the interface of each step provides a step-by-step procedure in the form of a detailed function or a library and is shown in FIG. As such, by providing a separate interface on the SIP transaction layer, the user can concentrate on the application independently of the transport protocol or the parsing and generation of SIP messages.

도 1은 본 명세서에서 개시하는 시스템의 구성도이다.1 is a configuration diagram of a system disclosed in the present specification.

도 2는 도 1에 제시된 UA 확장 응용 모듈의 상세 구성도이다.FIG. 2 is a detailed configuration diagram of the UA extension application module shown in FIG. 1.

도 3은 통신 모드가 직접 통신 모드일 경우에 UA 확장 응용 모듈의 각 기능 모듈별의 SIP 메시지의 송수신 관계를 제시한 도면이다.3 is a diagram illustrating a transmission / reception relationship of SIP messages for respective functional modules of the UA extension application module when the communication mode is a direct communication mode.

도 4는 통신 모드가 서버 경유 통신 모드일 경우에 UA 확장 응용 모듈의 각 기능 모듈별의 SIP 메시지의 송수신 관계를 제시한 도면이다.4 is a diagram illustrating a transmission / reception relationship of SIP messages for respective functional modules of the UA extension application module when the communication mode is a communication mode via a server.

도 5는 도 3 및 도 4에 제시된 두 통신모드가 융합된 경우에, UA 확장 응용 모듈의 각 기능 모듈별의 SIP 메시지의 송수신 관계를 제시한 도면이다.5 is a diagram illustrating a transmission / reception relationship of SIP messages for respective functional modules of the UA extension application module when two communication modes shown in FIGS. 3 and 4 are converged.

도 6a 내지 도 6d는 EPA 모듈, ESC 모듈, PUA 모듈, PA 모듈의 세부 함수 처리 절차를 제시한 도면이다.6A to 6D illustrate detailed function processing procedures of an EPA module, an ESC module, a PUA module, and a PA module.

Claims (7)

SIP User Agent로 기능하는 사용자 에이전트(UA) 확장 응용 모듈; 및A user agent (UA) extension application module functioning as a SIP user agent; And 상기 UA 확장 응용 모듈로부터의 API 호출에 적절한 SIP 메시지 스트림을 생성하여 다른 클라이언트 시스템으로 전송하고, 상기 다른 시스템으로부터 수신된 SIP 메시지 스트림을 파싱(parsing)하여 상기 수신 SIP 메시지에 적절한 콜백(callback) 함수를 호출하여 상기 UA 확장 응용 모듈에 통지하는 SIP 트랜잭션 모듈을 포함함을 특징으로 하는 SIP 프리젠스 기반 인스턴트 메시지 및 인터넷 전화 서비스 클라이언트 시스템.Generate and send a SIP message stream suitable for API calls from the UA extension application module to another client system, and parse the SIP message stream received from the other system to provide a suitable callback function for the received SIP message. SIP presence module for instant messaging and Internet telephony service, characterized in that it comprises a SIP transaction module to call to notify the UA extension application module. 제 1 항에 있어서, 상기 확장 응용 모듈은The method of claim 1, wherein the extension application module 사용자 정보 등록 서비스 모듈;A user information registration service module; 프리젠스 서비스 모듈;Presence service module; 인스턴트 메시지의 교환을 위한 MESSAGE 메시지를 생성하여 전송하거나, 다른 클라이언트 시스템으로부터 상기 MESSAGE 메시지를 수신하여 처리하는 인스턴트 메시지 서비스 모듈; 및An instant message service module for generating and transmitting a MESSAGE message for exchanging an instant message, or receiving and processing the MESSAGE message from another client system; And 인터넷 전화 서비스 모듈을 포함함을 특징으로 하는 SIP 프리젠스 기반 메시지 및 인터넷 전화 서비스 클라이언트 시스템.SIP presence based messaging and Internet telephony service client system comprising an internet telephony service module. 제 3 항에 있어서, 상기 프리젠스 서비스 모듈은The method of claim 3, wherein the presence service module PUBLISH 메시지를 발생시켜 사용자 자신의 프리젠스 관련 정보를 생성, 변경, 기간 갱신, 삭제하는 EPA 모듈;An EPA module that generates a PUBLISH message to generate, change, renew, and delete the user's own presence related information; 상기 PUBLISH 메시지를 수신하여 상기 PUBLISH 메시지가 사용자 자신이 관리하는 도메인내의 것이면 해당 SIP URI에 대한 프리젠스 정보를 저장하는 ESC 모듈;An ESC module that receives the PUBLISH message and stores presence information for a corresponding SIP URI if the PUBLISH message is in a domain managed by the user; 특정 사용자의 프리젠스 정보를 알고자 버디로 가입 요청, 기간 갱신, 삭제하기 위한 SUBSCRIBE 메시지를 생성하고, 상기 버디로 가입이 된 이후 상기 버디의 프리젠스 정보를 담고 있는 NOTIFY 메시지를 다른 클라이언트 시스템으로부터 수신하여 사용자에게 제시하는 PUA 모듈; 및Create a SUBSCRIBE message to request, renew or delete a subscription request to a buddy to know the presence information of a specific user, and receive a NOTIFY message containing the presence information of the buddy from another client system after joining the buddy. PUA module to present to the user; And 자신이 관리하는 사용자에 대한 버디 가입 요청에 관련된 상기 SUBSCRIBE 메시지를 상기 다른 클라이언트 시스템의 PUA 모듈로부터 수신하여 버디로의 가입 허용 여부를 판단하고, 해당 사용자에 대한 프리젠스 정보가 변경된 경우에 상기 버디로 가입한 사용자에게 변경된 프리젠스 정보를 통지하기 위한 NOTIFY 메시지를 생성하는 PA 모듈을 포함함을 특징으로 하는 SIP 프리젠스 기반 메시지 및 인터넷 전화 서비스 클라이언트 시스템.Receiving the SUBSCRIBE message related to the buddy subscription request for the user managed by the user from the PUA module of the other client system to determine whether to allow the subscription to the buddy, and if the presence information for the user is changed to the buddy SIP presence based message and Internet telephony service client system comprising a PA module for generating a NOTIFY message for notifying the subscribed user of the changed presence information. 제 2 항에 있어서, 상기 클라이언트 시스템과 다른 클라이언트 시스템간의 통신은3. The method of claim 2, wherein the communication between the client system and another client system is 상기 PUBLISH 메시지, SUBSCRIBE 메시지, NOTIFY 메시지를 상기 두 시스템간에 직접적으로 교환하여 이루어지거나, 상기 메시지들을 클라이언트 시스템간 통신 매개 서버를 통해 간접적으로 교환하여 이루어짐을 특징으로 하는 SIP 프리젠스 기반 메시지 및 인터넷 전화 서비스 클라이언트 시스템.SIP presence based message and Internet telephone service, wherein the PUBLISH message, the SUBSCRIBE message, and the NOTIFY message are exchanged directly between the two systems, or the messages are indirectly exchanged through a communication medium server between client systems. Client system. 제 4 항에 있어서, 상기 두 시스템간의 통신 방식은The method of claim 4, wherein the communication system between the two systems is 상기 메시지의 직접 교환 방식을 사용할 것인지 간접 교환 방식을 사용할 것인지 사용자가 선택하여 결정됨을 특징으로 하는 SIP 프리젠스 기반 메시지 및 인터넷 전화 서비스 클라이언트 시스템.SIP presence based message and Internet telephony service client system characterized in that it is determined by the user selected whether to use the direct exchange method or the indirect exchange method of the message. 제 3 항에 있어서, 상기 프리젠스 관련 정보의 처리를 위한 프리젠스 바디 포맷으로 PIDF와 XPIDF을 지원하여 다양한 메신저 서비스와 상호 운용이 가능하게 함을 특징으로 하는 SIP 프리젠스 기반 메시지 및 인터넷 전화 서비스 클라이언트 시스템.The SIP presence-based message and Internet telephony client according to claim 3, wherein the presence body format for processing the presence-related information supports PIDF and XPIDF to enable interoperation with various messenger services. system. 제 6 항에 있어서, 상기 프리젠스 바디 포맷은 사용자가 직접 선택하여 결정됨을 특징으로 하는 SIP 프리젠스 기반 메시지 및 인터넷 전화 서비스 클라이언트 시스템.7. The SIP presence based message and Internet telephony client system of claim 6, wherein the presence body format is determined by the user.
KR1020040043330A 2004-02-07 2004-06-12 SIP presence based instant message and internet telephony service client system KR100601051B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020040008181 2004-02-07
KR20040008181 2004-02-07

Publications (2)

Publication Number Publication Date
KR20050079882A true KR20050079882A (en) 2005-08-11
KR100601051B1 KR100601051B1 (en) 2006-07-19

Family

ID=37266719

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040043330A KR100601051B1 (en) 2004-02-07 2004-06-12 SIP presence based instant message and internet telephony service client system

Country Status (1)

Country Link
KR (1) KR100601051B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100666951B1 (en) * 2005-02-24 2007-01-10 삼성전자주식회사 Method and communication system for providing interface information between network elements
WO2008005188A2 (en) * 2006-06-22 2008-01-10 Hostway Corporation Message control system in a shared hosting environment
WO2008036510A1 (en) * 2006-09-22 2008-03-27 Microsoft Corporation Integrating data with conversations
KR20230170302A (en) 2022-06-10 2023-12-19 김민관 Military Personnel Direct Shopping App

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100666951B1 (en) * 2005-02-24 2007-01-10 삼성전자주식회사 Method and communication system for providing interface information between network elements
WO2008005188A2 (en) * 2006-06-22 2008-01-10 Hostway Corporation Message control system in a shared hosting environment
WO2008005188A3 (en) * 2006-06-22 2008-03-06 Hostway Corp Message control system in a shared hosting environment
WO2008036510A1 (en) * 2006-09-22 2008-03-27 Microsoft Corporation Integrating data with conversations
US8576851B2 (en) 2006-09-22 2013-11-05 Microsoft Corporation Integrating data with conversations
KR101437189B1 (en) * 2006-09-22 2014-09-03 마이크로소프트 코포레이션 Integrating data with conversations
KR20230170302A (en) 2022-06-10 2023-12-19 김민관 Military Personnel Direct Shopping App

Also Published As

Publication number Publication date
KR100601051B1 (en) 2006-07-19

Similar Documents

Publication Publication Date Title
JP4391423B2 (en) Control and manage sessions between end points
US7526563B2 (en) Interworking gateway and method
JP4391424B2 (en) Apparatus and method for controlling and managing individually oriented sessions in a communication system
JP4215645B2 (en) Service access and conference system and method in communication network
KR100666951B1 (en) Method and communication system for providing interface information between network elements
US20080270553A1 (en) Method and System for Instant Notification of Communication Block Information
US20050021616A1 (en) Method for managing sessions between network parties, methods, network element and terminal for managing calls
US20060004924A1 (en) Method and system providing support for location and service category service discovery in a SIP environment using a SIP event package, forking and AOR registration
JP2006512855A (en) Method for joining end points to a group and determining common communication performance for the joined end points
US20080114835A1 (en) Method and system for using chat room in instant message system by instant message user not belonging to the instant message system
JP2012256330A (en) Method and system for managing message threads in converged ip messaging service
CA2680313C (en) Methods and systems for aggregating presence information to provide a simplified unified presence
CN101385314A (en) Representing network availability status information in presence information
EP2342883A1 (en) File transfer in conference services
WO2003034672A1 (en) A messaging system
KR20100061254A (en) Method for providing the communication history
US9444777B2 (en) Method and processing system for routing a message request
TW200845649A (en) System and method for establishing conference events
KR101264805B1 (en) Method and System for providing presence service
US8315247B2 (en) System and method for providing registration-coupled subscriptions in a session initiation protocol (SIP) environment
US20090106437A1 (en) Method and device for handling different addressing schemes in session initiation protocol communication
EP2116036B1 (en) Identifying participants in a conference
KR100601051B1 (en) SIP presence based instant message and internet telephony service client system
KR101455196B1 (en) System and method for presence service interconnect service in ims
EP2445262A1 (en) System and method for routing instant messages

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120629

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130624

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee