KR20120129564A - Method, client device, chatting server and recording medium for providing client-based chatting service - Google Patents

Method, client device, chatting server and recording medium for providing client-based chatting service Download PDF

Info

Publication number
KR20120129564A
KR20120129564A KR1020110047903A KR20110047903A KR20120129564A KR 20120129564 A KR20120129564 A KR 20120129564A KR 1020110047903 A KR1020110047903 A KR 1020110047903A KR 20110047903 A KR20110047903 A KR 20110047903A KR 20120129564 A KR20120129564 A KR 20120129564A
Authority
KR
South Korea
Prior art keywords
message
chat
package data
client
client device
Prior art date
Application number
KR1020110047903A
Other languages
Korean (ko)
Other versions
KR101292002B1 (en
Inventor
김태우
Original Assignee
주식회사 네오위즈인터넷
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 네오위즈인터넷 filed Critical 주식회사 네오위즈인터넷
Priority to KR1020110047903A priority Critical patent/KR101292002B1/en
Priority to PCT/KR2012/003655 priority patent/WO2012161437A2/en
Publication of KR20120129564A publication Critical patent/KR20120129564A/en
Application granted granted Critical
Publication of KR101292002B1 publication Critical patent/KR101292002B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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]
    • 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/58Message adaptation for wireless communication

Abstract

PURPOSE: A client apparatus, chatting server, system, and recording medium are provided to promote user convenience by promoting chatting service quality according to a mobile environment. CONSTITUTION: A message reception unit(210) receives package data from a first client apparatus. The package data is created by packaging a message inputted from a message header and the first client apparatus. The message header includes transmitter information, a receiver list, and message type information. A message storage unit(220) stores the package data. A message transmission unit(230) transmits the stored package data to one or more second client apparatuses by referring to the receiver list. [Reference numerals] (100a) First client unit; (100b) Second client unit; (210) Message reception unit; (220) Message storage unit; (230) Message transmission unit

Description

클라이언트 기반의 채팅 서비스를 제공하는 방법, 클라이언트 장치, 채팅 서버, 시스템 및 기록매체{METHOD, CLIENT DEVICE, CHATTING SERVER AND RECORDING MEDIUM FOR PROVIDING CLIENT-BASED CHATTING SERVICE}How to provide client-based chat services, client devices, chat servers, systems and recording media {METHOD, CLIENT DEVICE, CHATTING SERVER AND RECORDING MEDIUM FOR PROVIDING CLIENT-BASED CHATTING SERVICE}

본 발명은 채팅 서비스 기술에 관한 것으로서, 특히, 모바일 환경에 적합한 채팅 서비스 기술에 관한 것이다. The present invention relates to chat service technology, and more particularly, to a chat service technology suitable for a mobile environment.

종래의 채팅 서비스에서는, 채팅 서버가 사용자 컴퓨터 접속 관리, 이용자 관리, 채팅방 관리, 메시지 관리, 각종 제어 기능 등과 같은 많은 기능들을 수행한다. 이러한 의미에서 종래의 채팅 서비스는 서버 기반의 채팅 서비스이다. In a conventional chat service, a chat server performs many functions such as user computer connection management, user management, chat room management, message management, various control functions, and the like. In this sense, the conventional chat service is a server-based chat service.

또한 종래의 채팅 서비스는 모바일 환경에서 비해 더 좋은 네트워크 상황에서 그리고 일반적인 웹 환경에서 이루어진다. In addition, the conventional chat service is performed in a better network situation and in a general web environment than in a mobile environment.

그리고, 종래의 서버 기반의 채팅 서비스에서는 복잡하고 많은 기능들이 사용자에게 제공되기 때문에, 서버가 많은 기능들을 수행해야 하는 것은 물론, 서버에 접속한 이용자의 컴퓨터에서도 그만큼 많은 기능들을 수행해야만 한다. In addition, since the server-based chat service is complex and many functions are provided to the user, the server has to perform many functions as well as the user's computer connected to the server.

따라서, 종래의 서버 기반의 채팅 서비스가 이루어지는 웹 환경 및 네트워크 환경에 비해 모든 면에서 상대적으로 열악한 모바일 환경에서, 종래의 채팅 서비스를 그대로 적용하게 되면, 채팅 서비스 품질과 사용자 편리성 등이 크게 저하되는 문제점이 있다. Therefore, in the mobile environment, which is relatively poor in all aspects compared to the web environment and the network environment where the server-based chat service is performed, if the conventional chat service is applied as it is, the chat service quality and user convenience are greatly degraded. There is a problem.

이러한 배경에서, 본 발명의 목적은, 모바일 환경에 적합한 클라이언트 기반의 채팅 서비스를 제공하는 데 있다. In this context, an object of the present invention is to provide a client-based chat service suitable for a mobile environment.

전술한 목적을 달성하기 위하여, 일 측면에서, 본 발명은, 제1클라이언트 장치에 대응되는 식별정보인 송신자 정보, 하나 이상의 제2클라이언트 장치에 각각 대응되는 식별정보를 포함하는 수신자 리스트 및 메시지 타입 정보를 포함하는 메시지 헤더와 상기 제1클라이언트 장치에서 입력된 메시지가 패키징된 패키지 데이터를 상기 제1클라이언트 장치로부터 수신하는 메시지 수신부; 상기 패키지 데이터를 저장하는 메시지 저장부; 및 상기 수신자 리스트를 참조하여 상기 저장된 패키지 데이터를 상기 하나 이상의 제2클라이언트 장치로 송신하는 메시지 송신부를 포함하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 채팅 서버를 제공한다. In order to achieve the above object, in one aspect, the present invention, the sender information that is identification information corresponding to the first client device, the recipient list and message type information including identification information respectively corresponding to one or more second client devices A message receiver configured to receive, from the first client device, a message header including a message and package data in which a message input from the first client device is packaged; A message storage unit for storing the package data; And a message transmitting unit which transmits the stored package data to the at least one second client device by referring to the recipient list.

다른 측면에서, 본 발명은, 채팅 서버가 클라이언트 기반의 채팅 서비스를 제공하는 방법에 있어서, 제1클라이언트 장치에 대응되는 식별정보인 송신자 정보, 하나 이상의 제2클라이언트 장치에 각각 대응되는 식별정보를 포함하는 수신자 리스트 및 메시지 타입 정보를 포함하는 메시지 헤더와 상기 제1클라이언트 장치에서 입력된 메시지가 패키징된 패키지 데이터를 상기 제1클라이언트 장치로부터 수신하는 단계; 상기 패키지 데이터를 저장하는 단계; 및 상기 수신자 리스트를 참조하여 상기 저장된 패키지 데이터를 상기 하나 이상의 클라이언트 장치로 송신하는 단계를 포함하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 방법을 제공한다. In another aspect, the present invention provides a client-based chat service in a chat server, comprising: sender information that is identification information corresponding to a first client device and identification information corresponding to one or more second client devices, respectively. Receiving, from the first client device, a message header including a recipient list and message type information, and package data in which a message input from the first client device is packaged; Storing the package data; And transmitting the stored package data to the one or more client devices with reference to the recipient list.

또 다른 측면에서, 본 발명은, 제1메시지가 입력되면, 제1송신자 정보, 제1수신자 리스트 및 제1메시지 타입 정보를 포함하는 제1메시지 헤더와 상기 입력된 제1메시지를 패키징하여 제1패키지 데이터를 생성하고, 상기 생성된 제1패키지 데이터를 채팅 서버로 송신하는 제1패키지 데이터 송신부; 제2송신자 정보, 제2수신자 리스트 및 제2메시지 타입 정보를 포함하는 제2메시지 헤더와 제2메시지가 패키징된 제2패키지 데이터를 상기 채팅 서버로부터 수신하는 제2패키지 데이터 수신부; 및 상기 입력된 제1 메시지 및 상기 제2메시지를 채팅 화면에 출력하는 채팅 화면 제어부를 포함하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치를 제공한다. According to another aspect of the present invention, when the first message is input, a first message header including the first sender information, the first receiver list, and the first message type information is packaged with the first message and the first message is packaged. A first package data transmitter for generating package data and transmitting the generated first package data to a chat server; A second package data receiver configured to receive from the chat server a second message header including a second sender information, a second receiver list, and a second message type information, and second package data in which a second message is packaged; And a chat screen controller configured to output the inputted first message and the second message to a chat screen.

또 다른 측면에서, 본 발명은, 클라이언트 장치가 클라이언트 기반의 채팅 서비스를 제공하는 방법에 있어서, 입력된 제1메시지를 채팅 화면에 출력하는 단계; 상기 제1메시지가 입력되면, 제1송신자 정보, 제1수신자 리스트 및 제1메시지 타입 정보를 포함하는 제1메시지 헤더와 상기 입력된 제1메시지를 패키징하여 제1패키지 데이터를 생성하는 단계; 상기 생성된 제1패키지 데이터를 채팅 서버로 송신하는 단계; 제2송신자 정보, 제2수신자 리스트 및 제2메시지 타입 정보를 포함하는 제2메시지 헤더와 제2메시지가 패키징된 제2패키지 데이터를 상기 채팅 서버로부터 수신하는 단계; 및 상기 제2메시지를 상기 채팅 화면에 출력하는 단계를 포함하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 방법을 제공한다. In another aspect, the present invention provides a method for providing a client-based chat service, the client device comprising the steps of: outputting the input first message to the chat screen; When the first message is input, packaging a first message header including first sender information, a first receiver list, and first message type information and the inputted first message to generate first package data; Transmitting the generated first package data to a chat server; Receiving, from the chat server, a second message header including a second sender information, a second receiver list, and a second message type information, and second package data in which a second message is packaged; And outputting the second message to the chat screen.

또 다른 측면에서, 본 발명은, 메시지가 입력되면 송신자 정보, 수신자 리스트 및 메시지 타입 정보를 포함하는 메시지 헤더와 상기 입력된 메시지를 패키징하여 패키지 데이터를 생성하여 송신하고, 상기 입력된 메시지를 채팅 화면에 출력하는 제1클라이언트; 상기 패키지 데이터를 수신하여 저장해두고, 상기 수신자 리스트를 참조하여 상기 패키지 데이터를 전달하는 채팅 서버; 및 상기 패키지 데이터를 전달받고, 상기 패키지 데이터에 패키징된 메시지를 채팅 화면에 출력하는 제2클라이언트를 포함하되, 상기 수신자 리스트는 상기 제2클라이언트에 대응되는 식별정보를 포함하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 시스템을 제공한다. In another aspect, the present invention, when the message is input, package the message header including the sender information, recipient list and message type information and the input message to generate and transmit the package data, and sends the input message to the chat screen A first client output to the; A chat server which receives and stores the package data and delivers the package data with reference to the recipient list; And a second client receiving the package data and outputting a message packaged in the package data to a chat screen, wherein the recipient list includes identification information corresponding to the second client. Provides a system for providing chat services.

또 다른 측면에서, 본 발명은, 클라이언트 기반의 채팅 서비스를 제공하는 방법을 실행시키기 위한 프로그램을 기록한 기록매체에 있어서, 입력된 제1메시지를 채팅 화면에 출력하는 기능과, 상기 제1메시지가 입력되면, 제1송신자 정보, 제1수신자 리스트 및 제1메시지 타입 정보를 포함하는 제1메시지 헤더와 상기 입력된 제1메시지를 패키징하여 제1패키지 데이터를 생성하는 기능과, 상기 생성된 제1패키지 데이터를 채팅 서버로 송신하는 기능과, 제2송신자 정보, 제2수신자 리스트 및 제2메시지 타입 정보를 포함하는 제2메시지 헤더와 제2메시지가 패키징된 제2패키지 데이터를 상기 채팅 서버로부터 수신하는 기능과, 상기 제2메시지를 상기 채팅 화면에 출력하는 기능을 구현하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다. In another aspect, the present invention, in the recording medium recording a program for executing a method for providing a client-based chat service, the function of outputting the input first message on the chat screen, the first message is input And a first message header including a first sender information, a first recipient list, and a first message type information and a package of the inputted first message to generate first package data, and the generated first package. Receiving from the chat server a function of transmitting data to the chat server, a second message header including a second sender information, a second recipient list, and a second message type information, and second package data packed with a second message; A computer-readable recording medium having recorded thereon a program implementing a function and a function of outputting the second message to the chat screen.

이상에서 설명한 바와 같이 본 발명에 의하면, 모바일 환경에 적합한 클라이언트 기반의 채팅 서비스를 제공하는 효과가 있다. As described above, according to the present invention, there is an effect of providing a client-based chat service suitable for a mobile environment.

도 1은 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 시스템을 개략적으로 나타낸 도면이다.
도 2는 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 채팅 서버에 대한 블록도이다.
도 3은 본 발명의 실시예에 따른 채팅 서버가 클라이언트 기반의 채팅 서비스를 제공하는 방법에 대한 흐름도이다.
도 4는 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치에 대한 블록도이다.
도 5는 본 발명의 실시예에 따른 클라이언트 장치가 클라이언트 기반의 채팅 서비스를 제공하는 방법에 대한 흐름도이다.
도 6은 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하기 위한 프로토콜에 따른 메시지 송신 절차 및 메시지 수신 절차를 나타낸 도면이다.
도 7은 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하기 위한 프로토콜에 따른 데이터 포맷을 나타낸 도면이다.
도 8은 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하기 위한 프로토콜에 따른 메시지 타입 정보를 예시적으로 정의한 도면이다.
도 9 내지 도 15는 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 예시적으로 설명하기 위한 도면이다.
1 is a diagram schematically illustrating a system for providing a client-based chat service according to an embodiment of the present invention.
2 is a block diagram of a chat server providing a client-based chat service according to an embodiment of the present invention.
3 is a flowchart illustrating a method in which a chat server provides a client-based chat service according to an exemplary embodiment of the present invention.
4 is a block diagram of a client device for providing a client-based chat service according to an embodiment of the present invention.
5 is a flowchart illustrating a method of providing a client-based chat service by a client device according to an exemplary embodiment of the present invention.
6 is a diagram illustrating a message transmission procedure and a message reception procedure according to a protocol for providing a client-based chat service according to an embodiment of the present invention.
7 is a diagram illustrating a data format according to a protocol for providing a client-based chat service according to an embodiment of the present invention.
8 is a diagram exemplarily defining message type information according to a protocol for providing a client-based chat service according to an embodiment of the present invention.
9 to 15 are diagrams for explaining a client-based chat service according to an embodiment of the present invention.

이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, some embodiments of the present invention will be described in detail with reference to exemplary drawings. In adding reference numerals to the components of each drawing, it should be noted that the same reference numerals are assigned to the same components as much as possible even though they are shown in different drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In addition, in describing the component of this invention, terms, such as 1st, 2nd, A, B, (a), (b), can be used. These terms are intended to distinguish the constituent elements from other constituent elements, and the terms do not limit the nature, order or order of the constituent elements. When a component is described as being "connected", "coupled", or "connected" to another component, the component may be directly connected to or connected to the other component, It should be understood that an element may be "connected," "coupled," or "connected."

도 1은 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 시스템을 개략적으로 나타낸 도면이다. 1 is a diagram schematically illustrating a system for providing a client-based chat service according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 시스템은, 채팅 서비스를 이용하는 사용자의 클라이언트 장치(100)와, 클라이언트 장치(100)에서 사용자에 의해 입력된 메시지를 클라이언트 장치(100) 간에 전달해주는 채팅 서버(110) 등을 포함한다. Referring to FIG. 1, a system for providing a client-based chat service according to an embodiment of the present invention includes a client device 100 of a user who uses a chat service and a message input by a user in the client device 100. Chat server 110 and the like delivered between the client device (100).

본 발명에서 개시하는 채팅 서비스는 웹 환경에 비해 개인 아이덴티티(Identity)가 상대적으로 명확한 모바일 환경에 더욱 적합한 "클라이언트 기반의 채팅 서비스(Client-based Chatting Service)"이다. The chat service disclosed in the present invention is a "client-based chatting service", which is more suitable for a mobile environment in which a personal identity is relatively clear as compared to a web environment.

여기서, "모바일 환경"이란, 통신사에 가입한 사용자가 이동 통신 서비스 또는 무선 통신 서비스 등을 이용하는 환경을 의미하는 것으로서, 이러한 모바일 환경에서는 전화번호, 전화번호와 대응되는 사용자 정보 등과 같이 변하지 않는 고유한 개인 아이덴티티(Identity)가 명확하다. Here, the term "mobile environment" refers to an environment in which a user subscribed to a telecommunication company uses a mobile communication service or a wireless communication service. The personal identity is clear.

종래의 채팅 서비스에서는, 채팅 서버가 사용자 컴퓨터 접속 관리, 이용자 관리, 채팅방 관리, 메시지 관리, 각종 제어 기능 등과 같은 많은 기능들을 수행한다. 이러한 의미에서 종래의 채팅 서비스는 서버 기반의 채팅 서비스이다. In a conventional chat service, a chat server performs many functions such as user computer connection management, user management, chat room management, message management, various control functions, and the like. In this sense, the conventional chat service is a server-based chat service.

또한 종래의 채팅 서비스는 모바일 환경에서 비해 더 좋은 네트워크 상황에서 이루어지고 일반적인 웹 환경에서 이루어진다. In addition, the conventional chat service is performed in a better network situation than in a mobile environment and in a general web environment.

그리고, 종래의 서버 기반의 채팅 서비스에서는 복잡하고 많은 기능들이 사용자에게 제공되기 때문에, 서버가 많은 기능들을 수행해야 하는 것은 물론, 서버에 접속한 이용자의 컴퓨터에서도 그만큼 많은 기능들을 수행해야만 한다. In addition, since the server-based chat service is complex and many functions are provided to the user, the server has to perform many functions as well as the user's computer connected to the server.

따라서, 종래의 서버 기반의 채팅 서비스가 이루어지는 웹 환경 및 네트워크 환경에 비해 모든 면에서 상대적으로 열악한 모바일 환경에서, 종래의 채팅 서비스를 그대로 적용하게 되면, 채팅 서비스 품질과 사용자 편리성 등이 크게 저하되는 문제점이 있다. Therefore, in the mobile environment, which is relatively poor in all aspects compared to the web environment and the network environment where the server-based chat service is performed, if the conventional chat service is applied as it is, the chat service quality and user convenience are greatly degraded. There is a problem.

따라서, 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스에서는, 전술한 모바일 환경에 적합하도록, 웹 환경에서 제공되던 무거운 채팅 서비스에서의 기능적 요소들을 심플하게 하고, 채팅 서버(110)는 심플화된 기능적 요소들 중에서 클라이언트 장치(100) 간의 메시지 전달 기능만을 수행하고, 클라이언트 장치(100)가 나머지 심플화된 기능적 요소들을 수행한다. 이에 대해서는, 도 2 내지 도 3를 참조하여 더욱 상세하게 설명한다. Accordingly, in the client-based chat service according to the embodiment of the present invention, the functional elements of the heavy chat service provided in the web environment are simplified to be suitable for the mobile environment described above, and the chat server 110 is simplified. Among the functional elements, only the message transfer function between the client devices 100 is performed, and the client device 100 performs the remaining simplified functional elements. This will be described in more detail with reference to FIGS. 2 to 3.

본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 시스템에 포함된 클라이언트 장치(100)와 채팅 서버(110)는 네트워크(120)를 통해 서로 연결되어 채팅 서비스를 제공하기 위하여 통신한다. The client device 100 and the chat server 110 included in the system for providing a client-based chat service according to an embodiment of the present invention communicate with each other through a network 120 to provide a chat service.

여기서, 네트워크(120)는 유무선 기반의 네트워크로서, 채팅 서버(110)가 연결되는 액세스 망과, 클라이언트 장치(100)가 연결되는 액세스 망(예: 이동통신망, 무선 랜(WiFi) 등)과, 이러한 액세스 망들을 연결해주는 여러 형태일 수 있는 코어 망(Core Network) 등을 포함할 수 있다.Here, the network 120 is a wired or wireless network, an access network to which the chat server 110 is connected, an access network to which the client device 100 is connected (eg, a mobile communication network, a wireless LAN (WiFi), etc.), It may include a core network (Core Network), etc., which may be in various forms connecting the access networks.

전술한 클라이언트 장치(100)는 스마트폰, 태블릿 PC, 이동통신 단말기 등일 수 있으며, 이외에도, 통신기능을 갖는 어떠한 휴대용 단말기일 수 있다. The client device 100 described above may be a smartphone, a tablet PC, a mobile communication terminal, or the like, and may be any portable terminal having a communication function.

또한 클라이언트 장치(100)는 애플리케이션 스토어 서버를 통해 설치된 애플리케이션을 실행시켜 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공한다. 즉, 애플리케이션 스토어 서버를 통해 클라이언트 장치(100)에 설치된 애플리케이션은, 클라이언트 장치(100)의 하드웨어 구성(예: 통신모듈, 메모리, 프로세서, 디스플레이 등)을 이용하여 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공한다. In addition, the client device 100 executes an application installed through an application store server to provide a client-based chat service according to an embodiment of the present invention. That is, an application installed in the client device 100 through the application store server may use a client base according to an embodiment of the present invention by using a hardware configuration (eg, a communication module, a memory, a processor, a display, etc.) of the client device 100. Chat service.

전술한 바와 같이, 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하기 위하여 채팅 서버(110)는, 클라이언트 장치(100) 간의 메시지 전달 기능을 수행하는데, 이러한 채팅 서버(110)에 대하여 도 2 내지 도 3을 참조하여 아래에서 더욱 상세하게 설명한다. As described above, in order to provide a client-based chat service according to an exemplary embodiment of the present invention, the chat server 110 performs a message transfer function between the client devices 100. It will be described in more detail below with reference to 2-3.

도 2는 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 채팅 서버(110)에 대한 블록도이다. 2 is a block diagram of a chat server 110 that provides a client-based chat service according to an embodiment of the present invention.

단, 아래에서는, 입력된 메시지를 다른 클라이언트 장치(100)로 전달하기 위하여 채팅 서버(110)로 메시지를 송신하는 클라이언트 장치(100)를 "제1클라이언트 장치(100a)"라고도 하고, 채팅 서버(100)에 저장된 메시지를 수신하는 클라이언트 장치(110)를 "제2클라이언트 장치(100b)"라고도 한다. 하나의 클라이언트 장치(100)는 메시지가 입력되어 채팅 서버(100)로 송신하는 때에는 제1클라이언트 장치(100a)로 작동하고 채팅 서버(100)로부터 메시지를 수신하는 때에는 제2클라이언트 장치(100b)로 작동한다. 즉, 제1클라이언트 장치(100a)와는 제2클라이언트 장치(100b)는 서로 다른 클라이언트 장치(100)일 수도 있고, 어떠한 한 시점에서의 역할을 구분하기 위하여 동일한 클라이언트 장치(100)를 다르게 나타낸 것일 수도 있다. However, hereinafter, the client device 100 that transmits the message to the chat server 110 in order to deliver the input message to the other client device 100 is also referred to as a "first client device 100a", the chat server ( The client device 110 that receives the message stored in 100 is also referred to as the "second client device 100b." One client device 100 operates as the first client device 100a when a message is input and transmitted to the chat server 100, and moves to the second client device 100b when receiving a message from the chat server 100. Works. That is, the first client device 100a and the second client device 100b may be different client devices 100, or differently represent the same client device 100 to distinguish roles at any one point in time. have.

도 2를 참조하면, 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 채팅 서버(110)는, 메시지 전달을 위해, 제1클라이언트 장치(100a)에서 입력된 메시지를 제1클라이언트 장치(100a)로부터 수신하는 메시지 수신부(210)와, 제1클라이언트 장치(100a)로부터 수신한 메시지를 저장하는 메시지 저장부(220)와, 저장된 메시지를 제2클라이언트 장치(100b)로 송신하는 메시지 송신부(230) 등을 포함한다. Referring to FIG. 2, the chat server 110 that provides a client-based chat service according to an embodiment of the present invention may transmit a message input from the first client device 100a to deliver a message. Message receiving unit 210 to receive from the 100a, the message storage unit 220 for storing the message received from the first client device (100a), and the message transmission unit for transmitting the stored message to the second client device (100b) ( 230) and the like.

본 발명에서는, 제1클라이언트 장치(100a)로부터 수신된 메시지(사용자에 의해 입력된 메시지)가 해당 제2클라이언트 장치(100b)로 정확히 전달되기 위해서, 사용자에 의해 입력된 메시지는 메시지 헤더가 붙어서 패키징 되어 패키지 데이터의 형태로 전달된다. 여기서, 메시지 헤더에는, 메시지를 보내는 송신자 정보, 메시지를 받는 수신자 정보를 포함하는 수신자 리스트, 메시지 타입 정보 등을 포함한다. In the present invention, in order for a message (a message input by a user) received from the first client device 100a to be correctly delivered to the corresponding second client device 100b, a message input by the user is packaged by attaching a message header. And delivered in the form of package data. Here, the message header includes sender information for sending a message, a recipient list including recipient information for receiving a message, message type information, and the like.

단, 아래에서는, 제1클라이언트 장치(100a)에서 채팅 서버(110)로 송신되는 패키지 데이터, 메시지 및 메시지 헤더를 "제1패키지 데이터", "제1메시지" 및 "제1메시지 헤더"라고도 한다. 채팅 서버(110)에서 제2클라이언트 장치(100b)로 송신되는 패키지 데이터, 메시지 및 메시지 헤더를 "제2패키지 데이터", "제2메시지" 및 "제2메시지 헤더"라고도 한다. However, below, package data, a message, and a message header transmitted from the first client device 100a to the chat server 110 are also referred to as "first package data", "first message", and "first message header". . Package data, messages, and message headers transmitted from the chat server 110 to the second client device 100b are also referred to as "second package data", "second message", and "second message header".

메시지 M이 클라이언트 장치 A에서 채팅 서버(110)를 통해 클라이언트 장치 B로 전달되는 경우, 채팅 서버(110)가 클라이언트 장치 A로부터 수신하는 메시지 M은 제1메시지이고, 채팅 서버(110)가 클라이언트 장치 B로 송신하는 메시지 M은 제2메시지이다. 또한, 클라이언트 장치 A가 채팅 서버(110)로 송신하는 메시지 M은 제1메시지이고, 클라이언트 장치 B가 채팅 서버(110)로부터 수신하는 메시지 M은 제2메시지이다. 즉, "제1메시지와 제2메시지"는 채팅 서버(110)가 수신하는 메시지와 송신하는 메시지를 구분하거나, 클라이언트 장치(100)가 송신하는 메시지와 수신하는 메시지를 구분하기 위하여 구분하여 사용한 것일 뿐, 실제로는 동일한 메시지일 수도 있다. When the message M is delivered from the client device A to the client device B through the chat server 110, the message M received by the chat server 110 from the client device A is the first message, and the chat server 110 is connected to the client device. Message M sent to B is the second message. In addition, the message M that the client device A sends to the chat server 110 is the first message, and the message M that the client device B receives from the chat server 110 is the second message. That is, the "first message and the second message" is used to distinguish between the message received by the chat server 110 and the message to be transmitted, or to distinguish between the message sent by the client device 100 and the received message. In fact, it may be the same message.

제1패키지 데이터가 제1클라이언트 장치(100a)에서 채팅 서버(110)를 통해 제2클라이언트 장치(100b)로 전달된다. The first package data is transmitted from the first client device 100a to the second client device 100b through the chat server 110.

메시지가 패키징 되어 전달되는 경우, 메시지 수신부(210)는, 제1클라이언트 장치(100a)에 대응되는 식별정보인 제1송신자 정보, 하나 이상의 제2클라이언트 장치(100b)에 각각 대응되는 식별정보를 포함하는 제1수신자 리스트 및 제1메시지 타입 정보를 포함하는 "제1메시지 헤더"와 제1클라이언트 장치(100a)에서 입력된 "제1메시지"가 패키징된 제1패키지 데이터를 제1클라이언트 장치(100a)로부터 수신한다. 메시지 저장부(220)는, 제1클라이언트 장치(100a)로부터 수신한 제1패키지 데이터를 메시지 저장 공간에 저장한다. 그리고, 메시지 송신부(230)는 제1패키지 데이터에서의 제1수신자 리스트를 참조하여 메시지 저장 공간에 저장된 제1패키지 데이터를 하나 이상의 제2클라이언트 장치(100b)로 송신한다. 여기서, 클라이언트 정치(100)에 대응되는 식별정보는, 일 예로, 전화번호, 전화번호와 대응될 수 있는 사용자 정보 등의 개인 고유의 정보일 수 있다. When the message is packaged and delivered, the message receiver 210 includes first sender information, which is identification information corresponding to the first client device 100a, and identification information corresponding to one or more second client devices 100b, respectively. The first client device 100a includes the first package data in which the "first message header" including the first recipient list and the first message type information and the "first message" input from the first client device 100a are packaged. From). The message storage unit 220 stores the first package data received from the first client device 100a in the message storage space. The message transmitter 230 transmits the first package data stored in the message storage space to the one or more second client devices 100b by referring to the first recipient list in the first package data. In this case, the identification information corresponding to the client policing 100 may be, for example, personally unique information such as a phone number and user information that may correspond to the phone number.

전술한 메시지 송신부(230)는 저장된 제1패키지 데이터를 풀(Pull) 방식 또는 푸시(Push) 방식으로 하나 이상의 제2클라이언트 장치(100b)로 송신할 수 있다. The above-described message transmitter 230 may transmit the stored first package data to one or more second client devices 100b in a pull method or a push method.

만약, 풀(Pull) 방식으로 송신하는 경우, 메시지 송신부(230)는 제2클라이언트 장치(100b)로부터 메시지 요청 데이터가 수신되면, 제2클라이언트 장치(100b)에 대응되는 식별정보가 저장된 제1패키지 데이터에서의 제1수신자 리스트에 포함되어 있는지를 확인하여, 포함되어 있는 것으로 확인되면, 제2클라이언트 장치(100b)로 저장된 제1패키지 데이터를 송신한다. 이 경우, 제2클라이언트 장치(100b)의 사용자의 입력에 따라 메시지 요청 데이터를 송신하거나, 제2클라이언트 장치(100b)에 설치된 애플리케이션이 실행되어 있다가 애플리케이션이 주기적 또는 이벤트 발생시 자동으로 메시지 요청 데이터를 채팅 서버(110)로 송신해야 한다. In case of transmitting in a pull mode, when the message request data is received from the second client device 100b, the message transmitter 230 stores the first package in which identification information corresponding to the second client device 100b is stored. It is checked whether it is included in the first recipient list in the data, and if it is found to be included, the first package data stored in the second client device 100b is transmitted. In this case, the message request data is transmitted according to a user's input of the second client device 100b, or an application installed in the second client device 100b is executed and the application automatically sends the message request data when a periodic or event occurs. Send to the chat server 110.

만약, 푸시(Push) 방식으로 송신하는 경우, 메시지 송신부(230)는 제1패키지 데이터가 저장되면 저장된 제1패키지 데이터에서의 제1수신자 리스트를 확인하여 이러한 확인을 통해 알게 된 해당 제2클라이언트 장치(100b)로 제1패키지 데이터를 송신할 수 있다. 이러한 경우, 제2클라이언트 장치(100b)는 제1패키지 데이터를 수신할 수 있는 상태로 되어 있거나, 제2클라이언트 장치(100b)에 설치된 애플리케이션이 실행되어 있기만 하면 된다. If the message is transmitted using the push method, the message transmitter 230 checks the first recipient list in the stored first package data when the first package data is stored, and finds the corresponding second client device through this confirmation. The first package data can be transmitted to 100b. In this case, the second client device 100b may be in a state capable of receiving the first package data, or may simply have an application installed in the second client device 100b running.

전술한 설명에 기초하여, 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 시스템을 다시 설명하면, 시스템은, 메시지가 입력되면 송신자 정보, 수신자 리스트 및 메시지 타입 정보를 포함하는 메시지 헤더와 입력된 메시지를 패키징하여 패키지 데이터를 생성하여 송신하고, 입력된 메시지를 채팅 화면에 출력하는 제1클라이언트 장치(100a)와, 패키지 데이터를 제1클라이언트 장치(100a)로부터 수신하여 저장해두고, 패키지 데이터에 패키징된 메시지 헤더에 포함된 수신자 리스트를 참조하여 패키지 데이터를 전달하는 채팅 서버(110)와, 패키지 데이터를 채팅 서버(110)로부터 전달받고, 전달받은 패키지 데이터에 패키징된 메시지를 채팅 화면에 출력하는 제2클라이언트 장치(100b)를 포함한다. Based on the foregoing description, again describing a system for providing a client-based chat service according to an embodiment of the present invention , the system includes a message header including sender information, a recipient list, and message type information when a message is input; Package the input message to generate and send package data, and receive and store the package data from the first client device 100a for outputting the input message to the chat screen, and the package data from the first client device 100a. The chat server 110 which delivers package data with reference to the recipient list included in the message header packaged in the package, receives the package data from the chat server 110, and outputs a message packaged in the received package data to the chat screen. It includes a second client device (100b).

패키지 데이터에 패키징된 메시지 헤더에 포함된 수신자 리스트는 제2클라이언트 장치(100b)에 대응되는 식별정보를 포함한다. The recipient list included in the message header packaged in the package data includes identification information corresponding to the second client device 100b.

제2클라이언트 장치(100b)는, 패키지 데이터에 패키징된 메시지 헤더에 포함된 송신자 정보와 수신자 리스트를 토대로 채팅 참여자 리스트를 파악하여 새로운 참여자를 추가하거나 기존 참여자를 삭제하는 등의 관리 기능을 수행할 수 있다. The second client device 100b may perform a management function such as adding a new participant or deleting an existing participant by grasping the chat participant list based on the sender information and the recipient list included in the message header packaged in the package data. have.

도 3은 본 발명의 실시예에 따른 채팅 서버(110)가 클라이언트 기반의 채팅 서비스를 제공하는 방법에 대한 흐름도이다. 3 is a flowchart illustrating a method in which the chat server 110 provides a client-based chat service according to an exemplary embodiment of the present invention.

도 3을 참조하면, 본 발명의 실시예에 따른 채팅 서버(110)가 클라이언트 기반의 채팅 서비스를 제공하는 방법은, 제1클라이언트 장치(100a)에 대응되는 식별정보인 제1송신자 정보, 하나 이상의 제2클라이언트 장치(100b)에 각각 대응되는 식별정보를 포함하는 제1수신자 리스트 및 제1메시지 타입 정보를 포함하는 제1메시지 헤더와 제1클라이언트 장치(100a)에서 입력된 제1메시지가 패키징된 제1패키지 데이터를 제1클라이언트 장치(100a)로부터 수신하는 단계(S300)와, 수신된 제1패키지 데이터를 저장하는 단계(S302)와, 저장된 제1패키지 데이터에서의 제1수신자 리스트를 참조하여 저장된 제1패키지 데이터를 하나 이상의 제2클라이언트 장치(100b)로 송신하는 단계(S304) 등을 포함한다. Referring to FIG. 3, the method for providing a client-based chat service by the chat server 110 according to an exemplary embodiment of the present invention may include first sender information, one or more identification information corresponding to the first client device 100a, and one or more chatters. The first message list including the first recipient list and the first message type information including identification information corresponding to the second client device 100b and the first message input from the first client device 100a are packaged. Receiving the first package data from the first client device 100a (S300), storing the received first package data (S302), and referring to the first recipient list in the stored first package data. And transmitting the stored first package data to the one or more second client devices 100b (S304).

이하에서는, 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치(100)에 대하여 도 4 및 도 5를 참조하여 더욱 상세하게 설명한다. Hereinafter, a client device 100 that provides a client-based chat service according to an embodiment of the present invention will be described in more detail with reference to FIGS. 4 and 5.

도 4는 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치(100)에 대한 블록도이다. 4 is a block diagram of a client device 100 that provides a client-based chat service according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치(100)는, 사용자에 의해 제1메시지가 입력되면, 제1송신자 정보, 제1수신자 리스트 및 제1메시지 타입 정보를 포함하는 제1메시지 헤더와 사용자에 의해 입력된 제1메시지를 패키징하여 제1패키지 데이터를 생성하고, 이렇게 생성된 제1패키지 데이터를 채팅 서버(110)로 송신하는 제1패키지 데이터 송신부(410)와, 제2송신자 정보, 제2수신자 리스트 및 제2메시지 타입 정보를 포함하는 제2메시지 헤더와 제2메시지가 패키징된 제2패키지 데이터를 채팅 서버(110)로부터 수신하는 제2패키지 데이터 수신부(420)와, 사용자에 의해 입력된 제1 메시지 및 제2패키지 데이터에 패키징된 제2메시지를 채팅 화면에 출력하는 채팅 화면 제어부(430) 등을 포함한다. Referring to FIG. 4, when a first message is input by a user, the client device 100 providing a client-based chat service according to an embodiment of the present invention may include first sender information, a first receiver list, and a first receiver. First package data for generating first package data by packaging a first message header including message type information and a first message input by a user, and transmitting the generated first package data to the chat server 110. A second message header including a transmitter 410, a second message header including a second sender information, a second receiver list, and a second message type information, and second package data in which the second message is packaged, from the chat server 110; The package data receiver 420 may include a chat screen controller 430 for outputting a first message input by a user and a second message packaged in the second package data to a chat screen.

제1패키지 데이터 송신부(410)에 의해 제1패키지 데이터를 송신하는 클라이언트 장치(100)는 제1클라이언트 장치(100a)로서 동작하고, 제2패키지 데이터 수신부(420)에 의해 제2패키지 데이터를 수신하는 클라이언트 장치(100)는 제2클라이언트 장치(100b)로서 동작한다. The client device 100 that transmits the first package data by the first package data transmitter 410 operates as the first client device 100a and receives the second package data by the second package data receiver 420. The client device 100 operates as the second client device 100b.

전술한 제1패키지 데이터 송신부(410)는, 제1메시지를 패키징하여 송신하기 위하여, 사용자 입력 또는 미리 관리되고 있던 채팅 참여자 리스트를 토대로 하나 이상의 다른 클라이언트 장치(클라이언트 장치(100)의 사용자가 채팅하고자 하는 사용자의 클라이언트 장치이거나 클라이언트 장치(100)의 사용자 채팅하고 있는 사용자의 클라이언트 장치임)에 각각 대응되는 식별정보를 포함하는 제1수신자 리스트를 설정할 수 있다. The first package data transmitter 410 described above is configured to chat with one or more other client devices (the user of the client device 100) based on a user input or a pre-managed chat participant list to package and transmit the first message. The first recipient list including identification information corresponding to the client device of the user or the client device of the user who is chatting with the user of the client device 100.

여기서, 사용자 입력에 따라 제1수신자 리스트를 설정하는 방식은 클라이언트 장치(100)의 사용자가 채팅하고자 하는 사용자를 초대할 때 제1수신자 리스트를 설정하는 방식일 수 있다. 또한, 미리 관리되고 있던 채팅 참여자 리스트를 토대로 제1수신자 리스트를 설정하는 방식은 이미 채팅이 이루어지고 있는 동안에 제1수신자 리스트를 설정하는 방식일 수 있다. Here, the method of setting the first recipient list according to the user input may be a method of setting the first recipient list when a user of the client device 100 invites a user to chat. In addition, the method of setting the first recipient list based on the previously managed chat participant list may be a method of setting the first recipient list while the chat is already being performed.

한편, 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치(100)는, 채팅하는 있는 모든 사용자(참여자)의 리스트를 관리하는 기능을 수행할 수 있다. 이를 위해, 도 4에 도시된 바와 같이, 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치(100)는, 하나 이상의 다른 클라이언트 장치와 클라이언트 장치(100)에 각각 대응되는 식별정보를 포함하는 채팅 참여자 리스트를 관리하는 채팅 참여자 리스트 관리부(440)를 더 포함할 수 있다. Meanwhile, the client device 100 that provides a client-based chat service according to an embodiment of the present invention may perform a function of managing a list of all users (participants) who are chatting. To this end, as shown in FIG. 4, the client device 100 that provides a client-based chat service according to an embodiment of the present invention may include identification information corresponding to one or more other client devices and the client device 100, respectively. The chat participant list manager 440 may further include a chat participant list manager.

전술한 채팅 참여자 리스트 관리부(440)는, 제2메시지 타입 정보가 "초대 메시지 타입 정보"인 제2패키지 데이터를 채팅 서버(110)로부터 수신한 이후에, 제2패키지 데이터에 패키징된 제2메시지 헤더에 포함된 제2수신자 리스트를 토대로 새로운 클라이언트 장치에 대응되는 식별정보를 기존에 관리되고 있던 채팅 참여자 리스트에 새로운 클라이언트 장치에 대응되는 식별정보를 추가할 수 있다. The chat participant list manager 440 described above, after receiving the second package data of which the second message type information is "invitation message type information" from the chat server 110, the second message packaged in the second package data. On the basis of the second receiver list included in the header, identification information corresponding to the new client device may be added to the chat participant list previously managed.

다시 말해, 클라이언트 장치(100)의 사용자와 채팅하고 있는 다른 사용자가 누군가를 초대하기 위하여, 초대할 사용자의 클라이언트 장치에 대응되는 식별정보를 수신자 리스트(클라이언트 장치(100)의 입장에서는 제2수신자 리스트)에 포함시키고 메시지 타입 정보를 초대 메시지 타입 정보로 설정하여 패키지 데이터(클라이언트 장치(100)의 입장에서는 제2패키지 데이터)를 채팅 서버(110)를 통해 전달하면, 패키지 데이터를 수신하는 모든 클라이언트 장치는 기존에 관리하고 있던 참여자 리스트에는 포함되지 않은 "초대할 사용자의 클라이언트 장치에 대응되는 식별정보"를 추가하는 것이다. In other words, in order for another user who is chatting with the user of the client device 100 to invite someone, identification information corresponding to the client device of the user to be invited is displayed in the recipient list (the second receiver list from the perspective of the client device 100). ), The message type information is set as the invitation message type information, and the package data (second package data from the client device 100's point of view) is transmitted through the chat server 110, and all client devices that receive the package data are received. Adds "identification information corresponding to the client device of the user to be invited" which is not included in the existing participant list.

전술한 채팅 참여자 리스트 관리부(440)는, 제2메시지 타입 정보가 "나가기 메시지 타입 정보"인 제2패키지 데이터를 채팅 서버(110)로부터 수신한 이후에, 제2패키지 데이터에 패키징된 제2메시지 헤더에 포함된 제2송신자 정보인 특정 다른 클라이언트 장치에 대응되는 식별정보를 기존에 관리하고 있던 채팅 참여자 리스트에서 삭제할 수 있다. The chat participant list manager 440 described above, after receiving the second package data whose second message type information is "outgoing message type information" from the chat server 110, the second message packaged in the second package data. The identification information corresponding to the specific other client device, which is the second sender information included in the header, may be deleted from the chat participant list previously managed.

다시 말해, 클라이언트 장치(100)의 사용자와 채팅하고 있는 다른 사용자(채팅을 중지한 사용자)가 채팅을 그만 하기 위하여 나가기 버튼을 누르는 등을 조작한 경우에, 채팅을 중지한 사용자의 클라이언트 장치에서는, 송신자 정보(클라이언트 장치(100)의 입장에서는 제2송신자 정보)를 자신에 대응되는 식별정보로 설정하고 메시지 타입 정보(클라이언트 장치(100)의 입장에서는 제2메시지 타입 정보)를 나가기 메시지 타입 정보로 설정하여 패키지 데이터(클라이언트 장치(100)의 입장에서는 제2패키지 데이터)를 채팅 서버(110)로 송신하면, 이 패키지 데이터를 수신한 모든 클라이언트 장치는 채팅을 중지한 사용자의 클라이언트 장치에 대응되는 식별정보를 기존에 관리하고 있던 참여자 리스트에서 삭제한다. In other words, when another user (user who has stopped chatting) chatting with the user of the client device 100 has pressed the exit button or the like to stop chatting, in the client device of the user who has stopped chatting, Set the sender information (second sender information from the point of view of the client device 100) as identification information corresponding to the sender information and the message type information (second message type information from the point of view of the client device 100) as the exit message type information. When setting and sending the package data (second package data from the client device 100's point of view) to the chat server 110, all the client devices that have received the package data are identified corresponding to the client device of the user who has stopped chatting. Delete information from the participant list that was previously managed.

위에서 언급한 제1메시지 타입 정보 및 제2메시지 타입 정보는 초대 메시지 타입 정보, 일반 메시지 타입 정보 및 나가기 메시지 타입 정보 등 중 하나일 수 있다. The first message type information and the second message type information mentioned above may be one of invitation message type information, general message type information, and exit message type information.

전술한 제2패키지 데이터 수신부(420)는, 채팅 서버(110)로부터 제2패키지 데이터를 수신하기 위하여, 채팅 서버(110)의 메시지 저장 공간에 가져올 제2패키지 데이터가 있는지를 확인하기 위하여, 클라이언트 장치(100)에 대응되는 식별정보를 포함하는 메시지 요청 데이터를 채팅 서버(110)로 송신하여, 제2패키지 데이터를 수신할 수 있다. 이때 수신되는 제2패키지 데이터에서의 제2수신자 리스트에는 클라이언트 장치(100)에 대응되는 식별정보가 포함되어 있다. In order to receive the second package data from the chat server 110, the second package data receiving unit 420 described above may check whether there is a second package data to be brought into the message storage space of the chat server 110. The message request data including the identification information corresponding to the apparatus 100 may be transmitted to the chat server 110 to receive the second package data. In this case, the second receiver list in the received second package data includes identification information corresponding to the client device 100.

전술한 제2패키지 데이터 수신부(420)는, 메시지 요청 데이터를 채팅 서버(110)로 송신하지 않고, 대기 상태에서 메시지 요청 데이터를 수신할 수도 있다. The second package data receiver 420 described above may receive the message request data in a standby state without transmitting the message request data to the chat server 110.

본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스는, 1-1 채팅 서비스일 수도 있고 그룹 채팅 서비스일 수도 있다. 1-1 채팅 서비스 및 그룹 채팅 서비스는, 전달되는 패키지 데이터에 패키징된 메시지 헤더에 포함된 수신자 리스트에 클라이언트에 대응되는 식별정보가 한 개인 것과 복수인 것만 다를 뿐, 그 제공 방식과, 채팅 서버(110) 및 클라이언트 장치(100)의 동작은 동일하다. 다만, 그룹 채팅 서비스를 효율적으로 제공하기 위하여, 패키지 데이터에 패키징된 메시지 헤더에 채팅 그룹을 식별하기 위한 그룹 정보를 더 포함시킬 수 있다. 여기서, 채팅 그룹은 같이 채팅을 하고 있는 사용자(클라이언트 장치)의 그룹을 의미하고, 이러한 채팅 그룹 내에서만 메시지가 전달되기 때문에 채팅 그룹은 메시지 전달 범위에 있는 사용자(클라이언트 장치)의 그룹을 의미할 수도 있습니다. 이러한 채팅 그룹은 2명의 사용자 간 1-1 채팅에 대한 채팅 그룹일 수도 있고, 3명 이상의 사용자 간 그룹 채팅에 대한 채팅 그룹일 수도 있다. The client-based chat service according to an embodiment of the present invention may be a 1-1 chat service or a group chat service. The 1-1 chat service and the group chat service differ only in one or more identification information corresponding to the client from the recipient list included in the message header packaged in the package data to be delivered. The operation of 110 and the client device 100 is the same. However, in order to efficiently provide a group chat service, group information for identifying a chat group may be further included in a message header packaged in package data. Here, a chat group means a group of users (client devices) chatting together, and a chat group may mean a group of users (client devices) in the message delivery range because the message is delivered only within the chat group. There is. Such a chat group may be a chat group for 1-1 chat between two users, or may be a chat group for group chat between three or more users.

예를 들어, 그룹 정보가 메시지 헤더에 포함되어 있으면, 채팅 서버(110)가 메시지 저장 공간에 저장된 패키지 데이터 중 전달할 해당 패키지 데이터를 더욱 신속히 추출할 수 있다. 또한, 그룹 정보가 메시지 헤더에 포함되어 있으면, 클라이언트 장치(100)에서 여러 개의 채팅이 이루어지고 있는 동안, 클라이언트 장치(100)는 각 채팅 별로 해당 패키지 데이터를 더욱 편리하고 신속하게 관리할 수 있다. 이에 따라, 더욱 신속한 채팅 서비스를 사용자에게 제공할 수 있다. For example, if the group information is included in the message header, the chat server 110 may more quickly extract the corresponding package data to be delivered among the package data stored in the message storage space. In addition, if the group information is included in the message header, while several chats are being performed in the client device 100, the client device 100 can more conveniently and quickly manage the package data for each chat. Accordingly, a faster chat service can be provided to the user.

도 4에 도시된 본 발명의 실시예에 따른 클라이언트 장치(100)는, 애플리케이션 스토어 서버(Application Store Sever)를 통해 설치된 애플리케이션(채팅 클라이언트 프로그램)을 실행시켜 클라이언트 기반의 채팅 서비스를 제공하는 스마트폰, 태블릿 PC, 이동통신 단말기 등의 모바일 단말기일 수 있다. Client device 100 according to an embodiment of the present invention shown in Figure 4, a smartphone that provides a client-based chat service by running an application (chat client program) installed through an application store server (Application Store Sever), It may be a mobile terminal such as a tablet PC or a mobile communication terminal.

도 5는 본 발명의 실시예에 따른 클라이언트 장치(100)가 클라이언트 기반의 채팅 서비스를 제공하는 방법에 대한 흐름도이다. 5 is a flowchart illustrating a method in which the client device 100 provides a client-based chat service according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 실시예에 따른 클라이언트 장치(100)가 클라이언트 기반의 채팅 서비스를 제공하는 방법은, 사용자에 의해 입력된 제1메시지를 채팅 화면에 출력하는 단계(S300)와, 제1메시지가 입력되면, 제1송신자 정보, 제1수신자 리스트 및 제1메시지 타입 정보를 포함하는 제1메시지 헤더와 입력된 제1메시지를 패키징하여 제1패키지 데이터를 생성하는 단계(S302)와, 생성된 제1패키지 데이터를 채팅 서버(110)로 송신하는 단계(S304)와, 제2송신자 정보, 제2수신자 리스트 및 제2메시지 타입 정보를 포함하는 제2메시지 헤더와 제2메시지가 패키징된 제2패키지 데이터를 채팅 서버(110)로부터 수신하는 단계(S306)와, 제2메시지를 채팅 화면에 출력하는 단계(S308) 등을 포함한다. Referring to FIG. 5, the method for providing a client-based chat service by the client device 100 according to an exemplary embodiment of the present disclosure may include: outputting a first message input by a user to a chat screen (S300); When the first message is input, generating a first package data by packaging a first message header including the first sender information, the first receiver list, and the first message type information and the inputted first message (S302); In operation S304, the generated first package data is transmitted to the chat server 110, and a second message header and a second message including second sender information, second recipient list, and second message type information are packaged. Receiving the second package data from the chat server 110 (S306), and outputting the second message on the chat screen (S308) and the like.

전술한 절차는, 클라이언트 장치(100)가 메시지(제1메시지)를 먼저 송신한 이후 다른 클라이언트 장치에서 입력된 메시지(제2메시지)를 나중에 수신하는 경우를 가정한 일 예이다. The above procedure is an example in which the client device 100 first transmits a message (first message) and then receives a message (second message) input from another client device later.

제1패키지 데이터에 패키징된 제1메시지 헤더에 포함된 제1송신자 정보는 클라이언트 장치(100)에 대응되는 식별정보이고, 제1수신자 리스트는 하나 이상의 다른 클라이언트 장치에 각각 대응되는 식별정보를 포함한다. The first sender information included in the first message header packaged in the first package data is identification information corresponding to the client device 100, and the first receiver list includes identification information corresponding to one or more other client devices, respectively. .

제2패키지 데이터에 패키징된 제2메시지 헤더에 포함된 제2송신자 정보는 하나 이상의 다른 클라이언트 장치 중 특정 다른 클라이언트 장치에 대응되는 식별정보이며, 제2수신자 리스트는 클라이언트 장치(100)에 대응되는 식별정보 등을 포함할 수 있다. The second sender information included in the second message header packaged in the second package data is identification information corresponding to a specific other client device among one or more other client devices, and the second recipient list is identification corresponding to the client device 100. Information and the like.

전술한 S302 단계에서는, 제1메시지를 패키징하여 송신할 제1패키지 데이터를 생성할 때, 사용자 입력 또는 미리 관리되고 있던 채팅 참여자 리스트를 토대로 하나 이상의 다른 클라이언트 장치(클라이언트 장치(100)의 사용자가 채팅하고자 하는 사용자의 클라이언트 장치이거나 클라이언트 장치(100)의 사용자 채팅하고 있는 사용자의 클라이언트 장치임)에 각각 대응되는 식별정보를 포함하는 제1수신자 리스트를 설정할 수 있다. In the above-described step S302, when generating the first package data to be sent by packaging the first message, one or more other client devices (users of the client device 100) chat on the basis of a user input or a previously managed chat participant list. A first recipient list including identification information corresponding to a client device of a user or a client device of a user having a user chat of the client device 100.

여기서, 사용자 입력에 따라 제1수신자 리스트를 설정하는 방식은 클라이언트 장치(100)의 사용자가 채팅하고자 하는 사용자를 초대할 때 제1수신자 리스트를 설정하는 방식일 수 있다. 또한, 미리 관리되고 있던 채팅 참여자 리스트를 토대로 제1수신자 리스트를 설정하는 방식은 이미 채팅이 이루어지고 있는 동안에 제1수신자 리스트를 설정하는 방식일 수 있다. Here, the method of setting the first recipient list according to the user input may be a method of setting the first recipient list when a user of the client device 100 invites a user to chat. In addition, the method of setting the first recipient list based on the previously managed chat participant list may be a method of setting the first recipient list while the chat is already being performed.

전술한 S306 단계 이후, 즉, 제2패키지 데이터를 수신한 이후에, 수신한 제2패키지 데이터에 패키징된 제2메시지 헤더에 포함된 제2메시지 타입 정보가 "초대 메시지 타입 정보"인 경우, 수신한 제2패키지 데이터에 패키징된 제2메시지 헤더에 포함된 제2수신자 리스트를 토대로 제2패키지 데이터가 수신되기 이전에 관리되고 있던 채팅 참여자 리스트에 새로운 클라이언트 장치에 대응되는 식별정보를 추가할 수 있다. If the second message type information included in the second message header packaged in the received second package data after the above-described step S306, that is, after receiving the second package data, is received. Identification information corresponding to the new client device may be added to the chat participant list managed before the second package data is received based on the second recipient list included in the second message header packaged in the second package data. .

전술한 S306 단계 이후, 즉, 제2패키지 데이터를 수신한 이후에, 수신한 제2패키지 데이터에 패키징된 제2메시지 헤더에 포함된 제2메시지 타입 정보가 "나가기 메시지 타입 정보"인 경우, 수신한 제2패키지 데이터에 패키징된 제2메시지 헤더에 포함된 제2송신자 정보인 특정 다른 클라이언트 장치에 대응되는 식별정보를 제2패키지 데이터가 수신되기 이전에 관리되고 있던 채팅 참여자 리스트에서 삭제할 수 있다. If the second message type information included in the second message header packaged in the received second package data after the above-described step S306, that is, after receiving the second package data, is received, the message is received. The identification information corresponding to the specific other client device, which is the second sender information included in the second message header packaged in the second package data, may be deleted from the chat participant list managed before the second package data is received.

위에서 언급한 제1메시지 타입 정보 및 제2메시지 타입 정보 각각은, 초대 메시지 타입 정보, 일반 메시지 타입 정보 및 나가기 메시지 타입 정보 등 중 하나일 수 있다. Each of the first message type information and the second message type information mentioned above may be one of invitation message type information, general message type information, and exit message type information.

본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스는, 1-1 채팅 서비스일 수도 있고 그룹 채팅 서비스일 수도 있다. 1-1 채팅 서비스 및 그룹 채팅 서비스는, 전달되는 패키지 데이터에 패키징된 메시지 헤더에 포함된 수신자 리스트에 클라이언트에 대응되는 식별정보가 한 개인 것과 복수인 것만 다를 뿐, 그 제공 방식과, 채팅 서버(110) 및 클라이언트 장치(100)의 동작은 동일하다. 다만, 그룹 채팅 서비스를 효율적으로 제공하기 위하여, 전술한 302 단계에서 제1패키지 데이터를 생성할 때, 제1메시지 헤더에 그룹 정보를 더 포함시킬 수 있다. 제2메시지 헤더에도 그룹 정보가 더 포함될 수 있다. The client-based chat service according to an embodiment of the present invention may be a 1-1 chat service or a group chat service. The 1-1 chat service and the group chat service differ only in one or more identification information corresponding to the client from the recipient list included in the message header packaged in the package data to be delivered. The operation of 110 and the client device 100 is the same. However, in order to efficiently provide a group chat service, when generating the first package data in step 302, the group information may be further included in the first message header. Group information may be further included in the second message header.

예를 들어, 그룹 정보가 메시지 헤더에 포함되어 있으면, 채팅 서버(110)가 메시지 저장 공간에 저장된 패키지 데이터 중 전달할 해당 패키지 데이터를 더욱 신속히 추출할 수 있다. 또한, 그룹 정보가 메시지 헤더에 포함되어 있으면, 클라이언트 장치(100)에서 여러 개의 채팅이 이루어지고 있는 동안, 클라이언트 장치(100)는 각 채팅 별로 해당 패키지 데이터를 더욱 편리하고 신속하게 관리할 수 있다. 이에 따라, 더욱 신속한 채팅 서비스를 사용자에게 제공할 수 있다. For example, if the group information is included in the message header, the chat server 110 may more quickly extract the corresponding package data to be delivered among the package data stored in the message storage space. In addition, if the group information is included in the message header, while several chats are being performed in the client device 100, the client device 100 can more conveniently and quickly manage the package data for each chat. Accordingly, a faster chat service can be provided to the user.

전술한 S306 단계에서는, 채팅 서버(110)로부터 가져올 제2패키지 데이터가 있는지를 확인하기 위하여, 클라이언트 장치(100)에 대응되는 식별정보를 포함하는 메시지 요청 데이터를 채팅 서버(110)로 송신하여 제2패키지 데이터를 채팅 서버(110)로부터 수신할 수 있다. 이때, 제2패키지 데이터에서의 제2수신자 리스트에는 클라이언트 장치(100)에 대응되는 식별정보가 포함되어 있다. In step S306 described above, in order to check whether there is the second package data to be obtained from the chat server 110, the message request data including the identification information corresponding to the client device 100 is transmitted to the chat server 110. 2 package data may be received from the chat server (110). In this case, the second receiver list in the second package data includes identification information corresponding to the client device 100.

또한, 전술한 S306 단계에서는, 메시지 요청 데이터를 채팅 서버(110)로 송신하지 않고, 대기 상태에서 메시지 요청 데이터를 수신할 수도 있다. In addition, in step S306 described above, the message request data may be received in the standby state without transmitting the message request data to the chat server 110.

전술한 절차는, 클라이언트 장치(100)가 메시지(제1메시지)를 먼저 송신한 이후 다른 클라이언트 장치에서 입력된 메시지(제2메시지)를 나중에 수신하는 경우를 가정한 일 예일 뿐, 전술한 S300 단계 및 S302 단계는, S304 단계 및 S306 단계 이후에 실행될 수도 있다. The above-described procedure is merely an example in which the client device 100 first transmits a message (first message), and then receives a message (second message) input from another client device later, in step S300. And step S302 may be executed after steps S304 and S306.

전술한 클라이언트 장치(100)는, 애플리케이션 스토어 서버(Application Store Sever)를 통해 설치된 애플리케이션(채팅 클라이언트 프로그램)을 실행시켜 클라이언트 기반의 채팅 서비스를 제공하는 스마트폰, 태블릿 PC, 이동통신 단말기 등의 모바일 단말기일 수 있다. The client device 100 described above is a mobile terminal such as a smartphone, a tablet PC, a mobile communication terminal, etc., which provides a client-based chat service by executing an application (chat client program) installed through an application store server. Can be.

전술한 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 방법이 실행되는 물리적인 장치는 클라이언트 장치(100)이더라도 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 방법을 실행시키는 실질적인 주체는 애플리케이션 스토어 서버를 클라이언트 장치(100)에 설치된 애플리케이션, 즉, 채팅 프로그램일 수 있다. Even if the physical device on which the method for providing a client-based chat service according to the above-described embodiment of the present invention is executed is a client device 100, the method for providing a client-based chat service according to the embodiment of the present invention is executed. The actual subject may be an application installed in the client device 100, that is, a chat program.

이에 따라, 전술한 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 방법은 프로그램(즉, 애플리케이션)으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. Accordingly, the method for providing a client-based chat service according to the embodiment of the present invention described above may be implemented in a program (ie, an application) and recorded in a computer-readable recording medium.

본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 방법을 구현한 프로그램은, 입력된 제1메시지를 채팅 화면에 출력하는 기능과, 제1메시지가 입력되면, 제1송신자 정보, 제1수신자 리스트 및 제1메시지 타입 정보를 포함하는 제1메시지 헤더와 입력된 제1메시지를 패키징하여 제1패키지 데이터를 생성하는 기능과, 생성된 제1패키지 데이터를 채팅 서버(110)로 송신하는 기능과, 제2송신자 정보, 제2수신자 리스트 및 제2메시지 타입 정보를 포함하는 제2메시지 헤더와 제2메시지가 패키징된 제2패키지 데이터를 채팅 서버(110)로부터 수신하는 기능과, 제2메시지를 채팅 화면에 출력하는 기능 등을 실행한다. The program implementing the method for providing a client-based chat service according to an embodiment of the present invention includes a function of outputting an input first message on a chat screen, and, when a first message is input, first sender information and a first message. A function of packaging a first message header including a recipient list and first message type information and an inputted first message to generate first package data, and transmitting the generated first package data to the chat server 110. And a second message header including a second sender information, a second receiver list, and a second message type information, and a second package data in which the second message is packaged, from the chat server 110, and a second message. Execute a function such as output to the chat screen.

이러한 프로그램(애플리케이션)은 컴퓨터에 의해 읽힐 수 있는 기록매체에 기록되고 컴퓨터에 의해 실행됨으로써 전술한 기능들이 실행될 수 있다. Such a program (application) is recorded on a recording medium readable by a computer and executed by a computer so that the above functions can be executed.

이와 같이, 컴퓨터가 기록매체에 기록된 프로그램을 읽어 들여 프로그램으로 구현된 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 방법을 실행시키기 위하여, 전술한 프로그램은 컴퓨터의 프로세서(CPU)가 컴퓨터의 장치 인터페이스(Interface)를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. As described above, in order to execute a method of providing a client-based chat service according to an embodiment of the present invention in which a computer reads a program recorded on a recording medium and is implemented as a program, the above-described program may be executed by a processor (CPU) of the computer. Code may be coded in a computer language such as C, C ++, JAVA, or machine language that can be read through a computer device interface.

이러한 코드는 전술한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Function Code)를 포함할 수 있고, 전술한 기능들을 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수도 있다. The code may include a function code related to a function or the like that defines the functions described above and may include an execution procedure related control code necessary for the processor of the computer to execute the functions described above according to a predetermined procedure.

또한, 이러한 코드는 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 방법을 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조 되어야 하는지에 대한 메모리 참조 관련 코드를 더 포함할 수 있다. In addition, such code must be referenced from any location (address address) of the computer's internal or external memory for additional information or media necessary for the processor of the computer to execute the method of providing a client-based chat service according to an embodiment of the present invention. Memory reference related code may be further included.

또한, 컴퓨터의 프로세서가 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 방법을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 채팅 서버 등과 통신이 필요한 경우, 코드는 컴퓨터의 프로세서가 컴퓨터의 통신 모듈을 이용하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 채팅 서버 등과 어떻게 통신해야만 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수도 있다. In addition, when the processor of the computer needs to communicate with any other computer or chat server in the remote to execute the method of providing a client-based chat service according to an embodiment of the present invention, the code is The communication module of the computer may further include communication-related code on how to communicate with any other computer or chat server in a remote, and what information or media should be transmitted and received during communication.

그리고, 본 발명을 구현하기 위한 기능적인(Functional) 프로그램과 이와 관련된 코드 및 코드 세그먼트 등은, 기록매체를 읽어서 프로그램을 실행시키는 컴퓨터의 시스템 환경 등을 고려하여, 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론되거나 변경될 수도 있다.The functional program for implementing the present invention and the related code and code segment may be implemented by programmers of the technical field of the present invention in consideration of the system environment of the computer that reads the recording medium and executes the program, Or may be easily modified or modified by the user.

이상에서 전술한 바와 같은 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는, 일 예로, ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 미디어 저장장치 등이 있다. Examples of recording media that can be read by a computer recording a program as described above include, for example, a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical media storage device, and the like.

또한 전술한 바와 같은 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는 네트워크로 커넥션된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 이 경우, 다수의 분산된 컴퓨터 중 어느 하나 이상의 컴퓨터는 상기에 제시된 기능들 중 일부를 실행하고, 그 결과를 다른 분산된 컴퓨터들 중 하나 이상에 그 실행 결과를 전송할 수 있으며, 그 결과를 전송받은 컴퓨터 역시 상기에 제시된 기능들 중 일부를 실행하여, 그 결과를 역시 다른 분산된 컴퓨터들에 제공할 수 있다. Also, the computer-readable recording medium on which the above-described program is recorded may be distributed to a computer system connected via a network so that computer-readable codes can be stored and executed in a distributed manner. In this case, one or more of the plurality of distributed computers may execute some of the functions presented above and send the results of the execution to one or more of the other distributed computers, The computer may also perform some of the functions described above and provide the results to other distributed computers as well.

특히, 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 컴퓨터로 읽을 수 있는 기록매체는 애플리케이션 스토어 채팅 서버에 포함된 저장매체(예: 하드디스크 등) 또는 애플리케이션 스토어 채팅 서버 그 자체일 수도 있다. In particular, a computer-readable recording medium recording an application, which is a program for executing a method of providing a client-based chat service according to an embodiment of the present invention, may be a storage medium (eg, a hard disk, etc.) included in an application store chat server. ) Or the application store chat server itself.

본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터는, 일반적인 데스크 탑이나 노트북 등의 일반 PC 뿐만 아니라, 스마트폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기를 포함할 수 있는 클라이언트 장치(100)일 수 있으며, 이뿐만 아니라, 컴퓨팅(Comuputing) 가능한 모든 기기로 해석되어야 할 것이다. A computer capable of reading a recording medium recording an application which is a program for executing a method of providing a client-based chat service according to an embodiment of the present invention is not only a general PC such as a general desktop or a laptop, but also a smartphone and a tablet. The client device 100 may include a mobile terminal such as a personal computer (PDA), a personal digital assistant (PDA), and a mobile communication terminal. In addition, the present invention should be interpreted as any device capable of computing.

본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터가 스마트폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기를 포함하는 클라이언트 장치(100)인 경우, 애플리케이션은 애플리케이션 스토어 서버에서 일반 PC로 다운로드 되어 동기화프로그램을 통해 클라이언트 장치(100)에 설치될 수 있다. A computer capable of reading a recording medium recording an application which is a program for executing a method of providing a client-based chat service according to an embodiment of the present invention may be a smartphone, a tablet PC, a personal digital assistant (PDA), a mobile communication terminal, or the like. In the case of the client device 100 including the mobile terminal, the application may be downloaded from the application store server to a general PC and installed on the client device 100 through a synchronization program.

이하에서는, 이상에서 전술한 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 예시적으로 설명한다. Hereinafter, a client-based chat service according to an embodiment of the present invention described above will be described as an example.

단, 이하에서는, 클라이언트 장치(100)에 설치된 애플리케이션(채팅 프로그램)이 전술한 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 실행시키는 것으로 설명한다. 그리고, 아래에서는, 설명의 편의상, 클라이언트 장치(100)에 설치된 애플리케이션(채팅 프로그램)을 "클라이언트(C)"라고 명명한다. However, hereinafter, it will be described that an application (chat program) installed in the client device 100 executes the client-based chat service according to the above-described embodiment of the present invention. In the following description, an application (chat program) installed in the client device 100 is referred to as "client C" for convenience of explanation.

본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스는 본 발명에서 정하는 프로토콜에 의해 구현될 수 있다. 이러한 프로토콜에는 데이터 전달 방식(메시지 전달 방식), 데이터 포맷 등에 대한 규칙이 정의된다. 채팅 서비스의 예를 설명하기에 앞서, 전술한 프로토콜을 도 6 내지 도 8을 참조하여 먼저 설명한다. Client-based chat service according to an embodiment of the present invention can be implemented by the protocol specified in the present invention. These protocols define rules for data delivery methods (message delivery methods), data formats, and the like. Before explaining an example of the chat service, the above-described protocol will be described first with reference to FIGS. 6 to 8.

도 6은 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하기 위한 프로토콜에 따른 메시지 송신 절차 및 메시지 수신 절차를 나타낸 도면이다. 6 is a diagram illustrating a message transmission procedure and a message reception procedure according to a protocol for providing a client-based chat service according to an embodiment of the present invention.

본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하기 위한 프로토콜은 데이터 전달 방식에 대한 규칙을 정의하는데, 데이터 전달 방식에 대한 규칙은, 클라이언트(C)가 채팅 서버(S)로 메시지를 송신하는 메시지 송신 절차에 대한 규칙과, 클라이언트(C)가 채팅 서버(S)로부터 메시지를 수신하는 메시지 수신 절차에 대한 규칙으로 나눌 수 있다. 이러한 메시지 송신 절차와 메시지 수신 절차는 요청(Request)-응답(Response) 방식으로 이루어질 수 있다. The protocol for providing a client-based chat service according to an embodiment of the present invention defines a rule for a data delivery method, wherein the rule for the data delivery method is that the client C sends a message to the chat server S. The rule for the message transmission procedure can be divided into a rule for the message reception procedure that the client (C) receives a message from the chat server (S). Such a message transmission procedure and a message reception procedure may be performed in a request-response manner.

메시지 송신 절차를 나타낸 도 6의 (a)를 참조하면, 클라이언트(C)는 사용자에 의해 메시지가 입력되면 입력된 메시지를 메시지 헤더와 함께 패키징하여 패키지 데이터를 생성하고, 이렇게 생성된 패키지 데이터를 메시지 전달 요청 데이터(REQUEST)로서 채팅 서버(S)로 송신한다(S11). 채팅 서버(S)는 클라이언트(C)로부터 메시지가 패키징된 패키지 데이터를 수신하면 메시지 저장 공간에 저장하고(S12), 메시지 전달 응답 데이터를 해당 클라이언트(C)로 송신한다(S13).Referring to FIG. 6 (a) illustrating a message transmission procedure, when a message is input by a user, the client C packages the input message with a message header to generate package data, and then generates the package data. The data is transmitted to the chat server S as delivery request data REQUEST (S11). When the chat server S receives the package data in which the message is packaged from the client C, the chat server S stores the message data in the message storage space (S12), and transmits the message delivery response data to the corresponding client C (S13).

메시지 수신 절차를 나타낸 도 6의 (b)를 참조하면, 전술한 메시지 송신 절차에 따라, 채팅 서버(S)가 메시지 저장 공간에 패키지 데이터를 저장해놓은 상태에서, 클라이언트(C)가 자신이 가져올 패키지 데이터(메시지)가 있는지를 물어보고 요청하기 위하여 클라이언트(C)에 대응되는 식별정보인 수신자 정보를 포함하는 메시지 요청 데이터를 채팅 서버(S)로 송신한다(S21). 채팅 서버(S)는 메시지 요청 데이터를 수신하여 메시지 요청 데이터에 포함된 수신자 정보를 확인하여 확인된 수신지 정보가 수신자 리스트에 포함되어 있는 패키지 데이터가 메시지 저장 공간에 저장되어 있는지를 확인하여, 확인된 패키지 데이터를 메시지 저장 공간에서 추출하여(S22), 추출된 패키지 데이터를 메시지 응답 데이터로서 클라이언트(C)로 송신한다(S23). Referring to (b) of FIG. 6, which shows a message receiving procedure, according to the above-described message transmission procedure, the client C receives a package to which the client C retrieves while the chat server S stores the package data in the message storage space. In order to request and request whether there is data (message), message request data including receiver information, which is identification information corresponding to the client C, is transmitted to the chat server S (S21). The chat server (S) receives the message request data and checks the receiver information included in the message request data to check whether the package data including the confirmed destination information in the recipient list is stored in the message storage space. The extracted package data is extracted from the message storage space (S22), and the extracted package data is transmitted to the client C as message response data (S23).

도 7은 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하기 위한 프로토콜에 따른 데이터 포맷의 규칙을 설명하기 위한 도면이다. FIG. 7 illustrates a rule of a data format according to a protocol for providing a client-based chat service according to an exemplary embodiment of the present invention.

도 7의 (a)을 참조하면, 클라이언트(C)가 채팅 서버(S)로 송신하는 메시지 전달 요청 데이터로서의 패키지 데이터는, 송신자 정보, 수신자 리스트, 메시지 타입 정보 등을 포함하는 메시지 헤더와, 사용자에 의해 실제로 입력된 메시지를 포함한다. 메시지 헤더에는 그룹 정보가 선택적으로 포함될 수 있다. Referring to FIG. 7A, package data as message delivery request data transmitted from the client C to the chat server S includes a message header including sender information, a recipient list, message type information, and the like. Contains the message actually entered by The message header may optionally include group information.

도 7의 (b)를 참조하면, 클라이언트(C)가 메시지 전달 요청 데이터에 대하여 채팅 서버(S)로부터 수신하는 메시지 전달 응답 데이터는, 메시지 전달 요청 데이터 수신 처리 결과에 대한 결과 코드 및 결과 정보 등을 포함할 수 있다. Referring to FIG. 7B, the message delivery response data that the client C receives from the chat server S with respect to the message delivery request data includes a result code, result information, etc. for the message delivery request data reception processing result. It may include.

도 7의 (c)를 참조하면, 클라이언트(C)가 채팅 서버(S)로 송신하는 메시지 요청 데이터는, 클라이언트(C)에 대응되는 식별정보로서의 수신자 정보 등을 포함한다. Referring to FIG. 7C, the message request data transmitted from the client C to the chat server S includes recipient information as identification information corresponding to the client C, and the like.

도 7의 (d)를 참조하면, 클라이언트(C)가 메시지 요청 데이터에 대하여 채팅 서버(S)로부터 수신하는 메시지 응답 데이터는, 채팅 서버(S)가 메시지 전달 요청 데이터로서의 패키지 데이터를 수신하여 어떠한 가공 처리 없이 저장해둔 것으로서, 메시지 전달 요청 데이터로서의 패키지 데이터와 동일한 데이터 포맷을 갖는다. Referring to FIG. 7D, the message response data that the client C receives from the chat server S with respect to the message request data is received by the chat server S by receiving package data as the message delivery request data. It is stored without processing, and has the same data format as package data as message transfer request data.

도 8은 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하기 위한 프로토콜에 따른 메시지 타입 정보를 예시적으로 정의한 도면이다. 8 is a diagram exemplarily defining message type information according to a protocol for providing a client-based chat service according to an embodiment of the present invention.

도 8을 참조하면, 메시지 헤더에 포함되는 메시지 타입 정보는, 메시지의 타입을 정의한 정보로서, 초대 메시지 타입 정보(M01), 실제로 채팅하는 내용에 관련된 일반 메시지 타입 정보(M02), 나가기 메시지 타입 정보(M03) 등을 포함할 수 있다. 이외에도, 초대 수락, 초대 거절 등 채팅에 필요한 각종 기능에 대한 메시지 타입 정보가 추가로 더 정의될 수도 있다. Referring to FIG. 8, the message type information included in the message header is information defining the type of the message. The message type information includes invitation message type information M01, general message type information M02 related to the actual chatting content, and exit message type information. (M03) and the like. In addition, message type information about various functions required for chatting, such as accepting an invitation or rejecting an invitation, may be further defined.

이하에서는, 전술한 프로토콜을 이용하여 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 예를 도 9 내지 도 15를 참조하여 설명한다. Hereinafter, an example of providing a client-based chat service according to an embodiment of the present invention using the aforementioned protocol will be described with reference to FIGS. 9 to 15.

도 9는 클라이언트 기반의 채팅 서비스를 이루어지는 환경을 나타낸 도면이다. 이하에서는, 도 9에 도시된 바와 같이, 클라이언트 장치(100)로서 스마트폰을 소유한 3명의 사용자(사용자 1, 사용자 2, 사용자 3)가 채팅하는 상황을 가정한다. 그리고, 사용자 1은 최초로 채팅을 하고자 하는 사용자이다. 9 is a diagram illustrating an environment for implementing a client-based chat service. Hereinafter, as illustrated in FIG. 9, it is assumed that three users (user 1, user 2, and user 3) who own a smartphone as the client device 100 chat. And user 1 is a user who wants to chat for the first time.

도 9에 도시된 바와 같이, 3대의 스마트폰은 와이파이(WiFi) 망, 이동통신망, 인터넷 망 등의 네트워크(120)를 통해 채팅 서버(S)와 연결되어 통신할 수 있다. As illustrated in FIG. 9, three smartphones may communicate with the chat server S through a network 120 such as a Wi-Fi network, a mobile communication network, or an Internet network.

도 9에 도시된 바와 같이, 3명의 사용자가 각각 소유한 스마트폰에는 본 발명의 실시예에 따른 클라이언트 기반의 채팅 서비스를 제공하는 방법을 실행시킬 수 있는 애플리케이션(프로그램)이 설치되어 있다. 그리고, 3대의 스마트폰에 각각 설치된 애플리케이션은 채팅 서버(S)와 연동하는 클라이언트로서 C1, C2, C3이라고도 한다. As shown in FIG. 9, each smartphone owned by three users is provided with an application (program) capable of executing a method of providing a client-based chat service according to an embodiment of the present invention. In addition, the applications installed in each of the three smartphones are also referred to as C1, C2, and C3 as a client interworking with the chat server (S).

도 9를 참조하면, 사용자 1이 채팅 서비스를 이용하기 위해 해당 애플리케이션을 실행시키면, 애플리케이션(C1)은 도 9에 도시된 바와 같이 채팅 화면을 디스플레이한다. 그리고, 사용자 2 및 사용자 3의 스마트폰에는 설치된 해당 애플리케이션이 백그라운드에서 실행되고 있을 수도 있다. Referring to FIG. 9, when user 1 executes the application to use the chat service, the application C1 displays a chat screen as shown in FIG. 9. In addition, corresponding applications installed in the smart phones of the user 2 and the user 3 may be running in the background.

그리고, 애플리케이션(C1)은 사용자 초대 UI(User Interface)를 제공하는데, 사용자 1이 사용자 2 및 사용자 3과 채팅하기 위하여 상대방 찾기 버튼을 누르면 스마트폰에 저장된 연락처로부터 사용자 2 및 사용자 3의 전화번호(클라이언트 장치에 대응되는 식별정보의 일 예임)를 불러올 수 있으며, 이후 초대 버튼을 누르면 사용자 2 및 사용자 3을 초대할 수 있다. In addition, the application C1 provides a user invitation UI (User Interface). When the user 1 presses the find partner button to chat with the user 2 and the user 3, the phone numbers of the user 2 and the user 3 from the contacts stored in the smart phone ( It is an example of the identification information corresponding to the client device), and then press the invite button can invite the user 2 and the user 3.

이러한 채팅 상대방 초대 절차를 도 10 및 도 11을 참조하여 설명한다. 단, 이하 도면에서 데이터 필드 내에 기재된 U1, U2, U3는 사용자 1의 스마트폰(클라이언트 장치), 사용자 2의 스마트폰(클라이언트 장치), 사용자 3의 스마트폰(클라이언트 장치)에 각각 대응되는 식별정보이며, 이는 전화번호일 수도 있고, 전화번호에 대응되는 사용자 정보(예: ID, 별명 등) 등일 수도 있다. This chat counterpart invitation procedure will be described with reference to FIGS. 10 and 11. However, in the following drawings, U1, U2, and U3 described in the data field correspond to identification information corresponding to the user's smartphone (client device), the user's smartphone 2 (client device), and the user 3's smartphone (client device), respectively. This may be a phone number or user information (eg, ID, nickname, etc.) corresponding to the phone number.

전술한 바에 따라 사용자가 초대할 사용자를 설정하고 초대 버튼을 누르면, C1은 초대 기능을 수행한다. 이러한 초대 기능은 프로토콜에서 정의된 메시지 송신 절차(도 10)와 메시지 수신 절차(도 11)에 따라 실행된다. As described above, when the user sets a user to invite and presses the invite button, C1 performs an invitation function. This invitation function is executed according to the message transmission procedure (FIG. 10) and the message reception procedure (FIG. 11) defined in the protocol.

도 10을 참조하면, C1은 U2 및 U3를 포함하는 수신자 리스트를 설정하고, U1을 송신자 정보로서 설정하며, 그룹 정보를 GO1로 설정하고, 메시지 타입 정보를 M01(초대 메시지 타입 정보)로 설정하고, 이렇게 설정된 송신자 정보, 수신자 리스트, 그룹 정보, 메시지 타입 정보를 포함하는 메시지 헤더와, "초대합니다" 등의 기본 내용이나 사용자에 의해 입력된 내용의 메시지(M)를 패키징하여 패키지 데이터(1000)를 생성하고, 생성된 패키지 데이터(1000)를 메시지 전달 요청 데이터로서 채팅 서버(S)로 송신한다. Referring to FIG. 10, C1 sets a recipient list including U2 and U3, sets U1 as sender information, sets group information to GO1, sets message type information to M01 (invitation message type information), and Package data 1000 by packaging a message header including the sender information, the recipient list, the group information, and the message type information, and a message M of basic contents such as "invite" or input by the user. Generate and transmit the generated package data 1000 to the chat server S as message delivery request data.

도 10을 참조하면, 채팅 서버(S)는 C1으로부터 수신한 메시지 전달 요청 데이터로서의 패키지 데이터(1000)를 메시지 저장 공간에 저장한다. 이후, 채팅 서버(S)는 결과 코드(Result Code, RC)와 결과 정보(Result Information, RI)를 포함하는 메시지 전달 응답 데이터(1010)를 C1으로 송신한다. Referring to FIG. 10, the chat server S stores package data 1000 as message delivery request data received from C1 in a message storage space. Thereafter, the chat server S transmits message delivery response data 1010 including a result code (RC) and result information (RI) to C1.

전술한 바에 따라, 채팅 서버(S)의 메시지 저장 공간에 메시지 전달 요청 데이터인 패키지 데이터(1000)가 저장된 이후, 메시지 전달 요청 데이터인 패키지 데이터(1000)에서의 수신자 리스트에 설정된 U2 및 U3 각각에 대응되는 C2 및 C3가 메시지 전달 요청 데이터인 패키지 데이터(1000)를 수신하는 메시지 수신 절차는 도 11을 참조하여 설명한다. As described above, after the package data 1000, which is the message delivery request data, is stored in the message storage space of the chat server S, each of U2 and U3 set in the recipient list in the package data 1000, which is the message delivery request data, is stored. A message receiving procedure for receiving the package data 1000 corresponding to C2 and C3 as message delivery request data will be described with reference to FIG. 11.

도 11을 참조하면, C2는 C2에 대응되는 식별정보인 U2를 수신자 정보로 설정하고 이러한 수신자 정보를 포함하는 메시지 요청 데이터(1110)를 채팅 서버(S)로 송신한다. 이에 따라, 채팅 서버(S)는 메시지 저장 공간에 저장된 패키지 데이터(1000)에 패키징된 메시지 헤더에 포함된 수신자 리스트에 메시지 요청 데이터(1110)에 포함된 수신자 정보인 U2가 포함되어 있는지를 확인하여, 포함되어 있다면, 메시지 저장 공간에 저장된 패키지 데이터(1000)를 메시지 응답 데이터로서 C2로 송신한다. 이러한 방식에 따라 C2는 채팅 서버(S)에 저장된 패키지 데이터(1000)를 메시지 응답 데이터로서 수신할 수 있다. Referring to FIG. 11, C2 sets U2, which is identification information corresponding to C2, as receiver information and transmits message request data 1110 including such receiver information to the chat server S. FIG. Accordingly, the chat server S checks whether the receiver list included in the message header packaged in the package data 1000 stored in the message storage space includes U2, which is receiver information included in the message request data 1110, If included, the package data 1000 stored in the message storage space is transmitted to the C2 as the message response data. In this manner, C2 may receive the package data 1000 stored in the chat server S as message response data.

이와 동일한 방식으로, C3도 C3에 대응되는 식별정보인 U3을 수신자 정보로 설정하고 이러한 수신자 정보를 포함하는 메시지 요청 데이터(1120)를 채팅 서버(S)로 송신하여 채팅 서버(S)에 저장된 패키지 데이터(1000)를 메시지 응답 데이터로서 수신할 수 있다. In the same manner, C3 sets U3, which is identification information corresponding to C3, as recipient information, and transmits the message request data 1120 including the recipient information to the chat server S to store the message stored in the chat server S. Data 1000 may be received as message response data.

도 11의 절차에 따라 패키지 데이터(1000)를 수신한 C2 및 C3는, 패키지 데이터(1000)에 패키징된 메시지의 내용(초대 내용)을 팝업 형태나 채팅 화면을 띄어서 표시하고, 사용자는 이러한 초대 사실을 확인할 수 있다. 이때, C2 및 C3는 초대 승낙 또는 초대 거절을 위한 사용자 인터페이스를 제공할 수도 있다. After receiving the package data 1000 according to the procedure of FIG. 11, C2 and C3 display the contents (invitation contents) of the message packaged in the package data 1000 by displaying a popup form or a chat screen, and the user displays the invitation fact. can confirm. In this case, C2 and C3 may provide a user interface for invitation acceptance or invitation rejection.

이러한 절차에 따라, 사용자 1, 사용자 2 및 사용자 3은 채팅할 수 있는 상태가 된다. 이후, 실제로 채팅이 진행되면서, 실질적인 채팅 내용의 메시지(일반 메시지 타입의 메시지)가 C1, C2 및 C3 간에 전달되는 기능에 대하여 도 12 및 도 13을 참조하여 설명한다. 이러한 메시지 전달 기능도 프로토콜에서 정의된 메시지 송신 절차(도 12)와 메시지 수신 절차(도 13)에 따라 실행된다. According to this procedure, User 1, User 2 and User 3 are in a chatable state. Subsequently, as the actual chat proceeds, a function of the actual chat contents message (message of general message type) is transferred between C1, C2, and C3 will be described with reference to FIGS. 12 and 13. This message delivery function is also executed according to the message transmission procedure (FIG. 12) and the message reception procedure (FIG. 13) defined in the protocol.

도 12를 참조하면, 사용자 1, 사용자 2 및 사용자 3이 채팅을 하던 중, 사용자 2가 메시지(일반 메시지)를 입력하면, C2는 송신자 정보를 U2로 설정하고 U1 및U3를 포함하는 수신자 리스트를 설정하며 그룹 정보를 G01로 설정하고 메시지 타입 정보를 MO2(일반 메시지 타입 정보)로 설정하여 메시지 헤더를 만들어 입력된 메시지와 패키징하여 패키징 데이터(1200)를 생성한다. Referring to FIG. 12, when User 1, User 2, and User 3 are chatting, and User 2 inputs a message (general message), C2 sets the sender information to U2 and sets a recipient list including U1 and U3. In addition, the group information is set to G01 and the message type information is set to MO2 (general message type information) to create a message header and package the input message to generate the packaging data 1200.

도 12를 참조하면, 이후, C2는 생성된 패키징 데이터(1200)를 메시지 전달 요청 데이터로서 채팅 서버(S)로 송신한다. 이에 따라, 채팅 서버(S)는 패키징 데이터(1200)를 메시지 저장 공간에 저장하고, 결과 코드(RC) 및 결과 정보(RI)를 포함하는 메시지 전달 응답 데이터(1210)를 C2로 송신한다. Referring to FIG. 12, C2 then transmits the generated packaging data 1200 to the chat server S as message delivery request data. Accordingly, the chat server S stores the packaging data 1200 in the message storage space, and transmits the message delivery response data 1210 including the result code RC and the result information RI to C2.

도 13을 참조하면, 패키지 데이터(1200)가 채팅 서버(S)의 메시지 저장 공간에 저장된 상태에서, 채팅 참여자 중에서 패키지 데이터(1200)를 생성한 클라이언트인 C2이외의 다른 클라이언트인 C1 및 C3는 자신이 가져올 패키지 데이터가 있는지를 확인하여 가져오기 위하여 메시지 요청 데이터(1310, 1320)를 채팅 서버(S)로 송신한다. Referring to FIG. 13, while the package data 1200 is stored in the message storage space of the chat server S, the clients C1 and C3 other than the client C2 who generated the package data 1200 among the chat participants are themselves. Message request data 1310 and 1320 are sent to the chat server S to check if there is package data to import and to import it.

이때, C1은 C1에 대응되는 식별정보인 U1이 수신자 정보로 설정된 메시지 요청 데이터(1310)를 채팅 서버(S)로 송신하고, C3는 C3에 대응되는 식별정보인 U3이 수신자 정보로 설정된 메시지 요청 데이터(1320)를 채팅 서버(S)로 송신한다. At this time, C1 transmits the message request data 1310 in which U1, which is identification information corresponding to C1, is set to the receiver information, to the chat server S, and C3 is a message request, in which U3, which is identification information corresponding to C3, is set to the receiver information. The data 1320 is transmitted to the chat server S. FIG.

채팅 서버(S)는 C1으로부터 수신한 메시지 요청 데이터(1310)에 포함된 수신자 정보를 U1으로 확인하여 U1이 수신자 리스트에 포함된 패키지 데이터(1200)를 추출하여 C1으로 송신한다. The chat server S checks the receiver information included in the message request data 1310 received from C1 as U1, extracts the package data 1200 included in the recipient list from U1, and transmits it to C1.

또한, 채팅 서버(S)는 C3으로부터 수신한 메시지 요청 데이터(1320)에 포함된 수신자 정보를 U3으로 확인하여 U3이 수신자 리스트에 포함된 패키지 데이터(1200)를 추출하여 C3으로 송신한다. In addition, the chat server S confirms the receiver information included in the message request data 1320 received from the C3 as U3, and extracts the package data 1200 included in the recipient list from the U3 and transmits it to the C3.

C1 및 C3는 수신한 패키지 데이터(1200)에 패키징된 메시지 헤더에 포함된 메시지 타입 정보가 일반 메시지 타입 정보(M02)인 것을 확인하고, 패키지 데이터(1200)에 패키징된 메시지를 채팅 화면에 출력한다. C1 and C3 confirm that the message type information included in the message header packaged in the received package data 1200 is general message type information M02, and output a message packaged in the package data 1200 to the chat screen. .

이와 같이, 메시지 전송 절차 및 메시지 수신 절차를 통해 C1, C2, C3 간에 메시지가 전달됨으로써 채팅이 이루어질 수 있으며, 채팅이 이루어지고 있는 동안, 참여자 중에 어느 사용자가 채팅을 중단할 수도 있다. In this manner, a message may be transmitted by transmitting a message between C1, C2, and C3 through a message transmission procedure and a message reception procedure. During the chat, any user of the participant may stop the chat.

이러한 나가기 기능을 제공하기 위하여, 애플리케이션은 나가기 기능을 제공하기 위한 나가기 버튼 등과 같은 사용자 인터페이스를 제공할 수 있다. 이하, 도 14 및 도 15를 참조하여 나가기 기능과 관련된 메시지 전달 절차(메시지 전송 및 메시지 수신 절차)에 대하여 설명한다. In order to provide such an exit function, the application may provide a user interface such as an exit button for providing an exit function. Hereinafter, a message delivery procedure (message transmission and message reception procedure) related to the exit function will be described with reference to FIGS. 14 and 15.

도 14를 참조하면, 사용자 3이 채팅을 그만 하고자 나가기 버튼을 눌러서 채팅을 중단하게 되면, C3은 송신자 정보를 U3으로 설정하고 수신자 리스트에 U1, U2를 포함시켜 설정하며, 메시지 타입 정보를 나가기 메시지 타입 정보인 M03으로 설정하여 메시지 헤더를 구성하고, 구성된 메시지 헤더와 "사용자 3은 채팅방에서 나갑니다" 등의 내용을 갖는 메시지를 패키징하여 패키징 데이터(1400)를 생성한다. Referring to FIG. 14, when user 3 stops chatting by pressing the exit button to stop chatting, C3 sets the sender information to U3 and includes U1 and U2 in the recipient list, and exits the message type information. The message header is configured by setting M03, which is the type information, and the packaging data 1400 is generated by packaging a message having the configured message header and the contents such as "User 3 leaves the chat room."

이후, C3는 생성된 패키징 데이터(1400)를 메시지 전달 요청 데이터로서 채팅 서버(S)로 송신한다. 이에 따라, 채팅 서버(S)는 메시지 저장 공간에 패키지 데이터(1400)를 저장해둔다. Thereafter, C3 transmits the generated packaging data 1400 to the chat server S as message delivery request data. Accordingly, the chat server S stores the package data 1400 in the message storage space.

도 15를 참조하면, 패키지 데이터(1400)가 채팅 서버(S)의 메시지 저장 공간에 저장된 상태에서, 채팅 참여자 중에서 패키지 데이터(1400)를 생성한 클라이언트인 C3이외의 다른 클라이언트인 C1 및 C2는 자신이 가져올 패키지 데이터가 있는지를 확인하여 가져오기 위하여 메시지 요청 데이터(1510, 1520)를 채팅 서버(S)로 송신한다. Referring to FIG. 15, while the package data 1400 is stored in the message storage space of the chat server S, the clients C1 and C2 other than C3, which is the client who generated the package data 1400 among the chat participants, are themselves. Message request data 1510 and 1520 are sent to the chat server S to check if there is package data to import and to import it.

이때, C1은 C1에 대응되는 식별정보인 U1이 수신자 정보로 설정된 메시지 요청 데이터(1510)를 채팅 서버(S)로 송신하고, C2는 C2에 대응되는 식별정보인 U2이 수신자 정보로 설정된 메시지 요청 데이터(1520)를 채팅 서버(S)로 송신한다. At this time, C1 transmits the message request data 1510 in which U1, which is identification information corresponding to C1, is set to the receiver information, to the chat server S, and C2 is a message request, in which U2, which is identification information corresponding to C2, is set to the receiver information. The data 1520 is transmitted to the chat server (S).

채팅 서버(S)는 C1으로부터 수신한 메시지 요청 데이터(1510)에 포함된 수신자 정보를 U1으로 확인하여 U1이 수신자 리스트에 포함된 패키지 데이터(1400)를 추출하여 C1으로 송신한다. The chat server S checks the receiver information included in the message request data 1510 received from C1 as U1, extracts the package data 1400 included in the receiver list, and transmits the package data 1400 to C1.

또한, 채팅 서버(S)는 C2로부터 수신한 메시지 요청 데이터(1520)에 포함된 수신자 정보를 U2로 확인하여 U2가 수신자 리스트에 포함된 패키지 데이터(1400)를 추출하여 C2로 송신한다. In addition, the chat server S confirms the receiver information included in the message request data 1520 received from the C2 as U2, extracts the package data 1400 included in the recipient list, and transmits the package data 1400 to the C2.

C1 및 C2는 수신한 패키지 데이터(1400)에 패키징된 메시지 헤더에 포함된 메시지 타입 정보가 나가기 메시지 타입 정보(M03)인 것을 확인하고, 패키지 데이터(1400)에 패키징된 메시지를 채팅 화면에 출력한다. 이에 따라, 사용자 1 및 사용자 2는 사용자 3이 채팅방을 나간 것을 확인할 수 있다.C1 and C2 confirm that the message type information included in the message header packaged in the received package data 1400 is the exit message type information M03, and output the message packaged in the package data 1400 to the chat screen. . Accordingly, the user 1 and the user 2 can confirm that the user 3 has left the chat room.

사용자 3이 나가기 전에는 3명의 사용자가 그룹 채팅을 하였고, 사용자 3이 나가고 난 이후에는 2명의 사용자가 1-1 채팅을 할 수 있다. 그룹 채팅일 때와 1-1 채팅일 때의 클라이언트(C)와 채팅 서버(S)가 수행해야 하는 동작에는 전혀 차이가 없다. 1-1 채팅에서는 그룹 정보가 미설정되고 수신자 리스트에 하나의 식별정보만이 설정된다는 점만 다를 뿐이다. Before User 3 left, three users had a group chat, and after User 3 left, two users could have a 1-1 chat. There is no difference in the actions that the client C and the chat server S should perform during group chat and 1-1 chat. The only difference is that in 1-1 chat, group information is not set and only one identification information is set in the recipient list.

이상에서 설명한 바와 같이 본 발명에 의하면, 모바일 환경에 적합한 클라이언트 기반의 채팅 서비스를 제공할 수 있다. As described above, according to the present invention, a client-based chat service suitable for a mobile environment can be provided.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 등이 포함될 수 있다.While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. In other words, within the scope of the present invention, all of the components may be selectively operated in combination with one or more. In addition, although all of the components may be implemented as one independent hardware, some or all of the components may be selectively combined to perform a part or all of the functions in one or a plurality of hardware. As shown in FIG. Codes and code segments constituting the computer program may be easily inferred by those skilled in the art. Such a computer program may be stored in a computer readable storage medium and read and executed by a computer, thereby implementing embodiments of the present invention. As a storage medium of the computer program, a magnetic recording medium, an optical recording medium, or the like can be included.

또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.It is also to be understood that the terms such as " comprises, "" comprising," or "having ", as used herein, mean that a component can be implanted unless specifically stated to the contrary. But should be construed as including other elements. All terms, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined. Commonly used terms, such as predefined terms, should be interpreted to be consistent with the contextual meanings of the related art, and are not to be construed as ideal or overly formal, unless expressly defined to the contrary.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of the present invention.

Claims (22)

제1클라이언트 장치에 대응되는 식별정보인 송신자 정보, 하나 이상의 제2클라이언트 장치에 각각 대응되는 식별정보를 포함하는 수신자 리스트 및 메시지 타입 정보를 포함하는 메시지 헤더와 상기 제1클라이언트 장치에서 입력된 메시지가 패키징된 패키지 데이터를 상기 제1클라이언트 장치로부터 수신하는 메시지 수신부;
상기 패키지 데이터를 저장하는 메시지 저장부; 및
상기 수신자 리스트를 참조하여 상기 저장된 패키지 데이터를 상기 하나 이상의 제2클라이언트 장치로 송신하는 메시지 송신부를 포함하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 채팅 서버.
A message header including sender information, identification information corresponding to the first client device, a recipient list including identification information corresponding to one or more second client devices, and message type information, and a message input from the first client device A message receiver configured to receive packaged package data from the first client device;
A message storage unit for storing the package data; And
And a message transmitter for transmitting the stored package data to the one or more second client devices by referring to the recipient list.
제1항에 있어서,
상기 메시지 송신부는,
상기 제2클라이언트 장치로부터 메시지 요청 데이터가 수신되면, 상기 제2클라이언트 장치에 대응되는 식별정보가 상기 수신자 리스트에 포함되어 있는지를 확인하여, 포함되어 있는 것으로 확인되면, 상기 제2클라이언트 장치로 상기 저장된 패키지 데이터를 송신하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 채팅 서버.
The method of claim 1,
The message transmitter,
When the message request data is received from the second client device, it is checked whether identification information corresponding to the second client device is included in the recipient list, and if it is confirmed that the message is included, the stored information is stored in the second client device. Chat server providing a client-based chat service, characterized in that for transmitting the package data.
제1항에 있어서,
상기 메시지 송신부는,
상기 패키지 데이터가 저장되면 상기 수신자 리스트를 확인하여, 해당 제2클라이언트 장치로 상기 저장된 패키지 데이터를 송신하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 채팅 서버.
The method of claim 1,
The message transmitter,
And if the package data is stored, confirming the recipient list, and transmitting the stored package data to the corresponding second client device.
채팅 서버가 클라이언트 기반의 채팅 서비스를 제공하는 방법에 있어서,
제1클라이언트 장치에 대응되는 식별정보인 송신자 정보, 하나 이상의 제2클라이언트 장치에 각각 대응되는 식별정보를 포함하는 수신자 리스트 및 메시지 타입 정보를 포함하는 메시지 헤더와 상기 제1클라이언트 장치에서 입력된 메시지가 패키징된 패키지 데이터를 상기 제1클라이언트 장치로부터 수신하는 단계;
상기 패키지 데이터를 저장하는 단계; 및
상기 수신자 리스트를 참조하여 상기 저장된 패키지 데이터를 상기 하나 이상의 클라이언트 장치로 송신하는 단계를 포함하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 방법.
In the chat server provides a client-based chat service,
A message header including sender information, identification information corresponding to the first client device, a recipient list including identification information corresponding to one or more second client devices, and message type information, and a message input from the first client device Receiving packaged package data from the first client device;
Storing the package data; And
And transmitting the stored package data to the one or more client devices with reference to the recipient list.
제1메시지가 입력되면, 제1송신자 정보, 제1수신자 리스트 및 제1메시지 타입 정보를 포함하는 제1메시지 헤더와 상기 입력된 제1메시지를 패키징하여 제1패키지 데이터를 생성하고, 상기 생성된 제1패키지 데이터를 채팅 서버로 송신하는 제1패키지 데이터 송신부;
제2송신자 정보, 제2수신자 리스트 및 제2메시지 타입 정보를 포함하는 제2메시지 헤더와 제2메시지가 패키징된 제2패키지 데이터를 상기 채팅 서버로부터 수신하는 제2패키지 데이터 수신부; 및
상기 입력된 제1 메시지 및 상기 제2메시지를 채팅 화면에 출력하는 채팅 화면 제어부를 포함하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치.
When the first message is input, the first message header including the first sender information, the first receiver list, and the first message type information and the inputted first message are packaged to generate first package data. A first package data transmitter for transmitting the first package data to the chat server;
A second package data receiver configured to receive from the chat server a second message header including a second sender information, a second receiver list, and a second message type information, and second package data in which a second message is packaged; And
And a chat screen controller configured to output the input first message and the second message to a chat screen.
제5항에 있어서,
상기 제1패키지 데이터 송신부는,
사용자 입력 또는 채팅 참여자 리스트를 토대로 하나 이상의 다른 클라이언트 장치에 각각 대응되는 식별정보를 포함하는 상기 제1수신자 리스트를 설정하고,
상기 하나 이상의 다른 클라이언트 장치와 상기 클라이언트 장치에 각각 대응되는 식별정보를 포함하는 상기 채팅 참여자 리스트를 관리하는 채팅 참여자 리스트 관리부를 더 포함하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치.
The method of claim 5,
The first package data transmission unit,
Setting the first recipient list including identification information corresponding to one or more other client devices based on a user input or a chat participant list,
And a chat participant list manager configured to manage the chat participant list including identification information corresponding to the one or more other client devices and the client device, respectively.
제6항에 있어서,
상기 채팅 참여자 리스트 관리부는,
상기 제2메시지 타입 정보가 초대 메시지 타입 정보인 상기 제2패키지 데이터를 수신한 이후에, 상기 제2수신자 리스트를 토대로 새로운 클라이언트 장치에 대응되는 식별정보를 상기 채팅 참여자 리스트에 새로운 클라이언트 장치에 대응되는 식별정보를 추가하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치.
The method according to claim 6,
The chat participant list management unit,
After receiving the second package data in which the second message type information is invitation message type information, identification information corresponding to a new client device based on the second recipient list corresponds to a new client device in the chat participant list. Client device for providing a client-based chat service, characterized in that for adding identification information.
제6항에 있어서,
상기 채팅 참여자 리스트 관리부는,
상기 제2메시지 타입 정보가 나가기 메시지 타입 정보인 상기 제2패키지 데이터를 수신한 이후에, 상기 제2송신자 정보인 특정 다른 클라이언트 장치에 대응되는 식별정보를 상기 채팅 참여자 리스트에서 삭제하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치.
The method according to claim 6,
The chat participant list management unit,
After receiving the second package data in which the second message type information is the exit message type information, the identification information corresponding to a specific other client device as the second sender information is deleted from the chat participant list. Client devices that provide client-based chat services.
제5항에 있어서,
상기 제2패키지 데이터 수신부는,
상기 채팅 서버의 메시지 저장 공간에 가져올 상기 제2패키지 데이터가 있는지를 확인하기 위하여, 상기 클라이언트 장치에 대응되는 식별정보를 포함하는 메시지 요청 데이터를 상기 채팅 서버로 송신하여, 상기 제2패키지 데이터를 수신하되, 상기 제2패키지 데이터에서의 상기 제2수신자 리스트에는 상기 클라이언트 장치에 대응되는 식별정보가 포함된 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치.
The method of claim 5,
The second package data receiver,
In order to confirm whether there is the second package data to be brought into the message storage space of the chat server, message request data including identification information corresponding to the client device is transmitted to the chat server to receive the second package data. Wherein, the second receiver list in the second package data client device for providing a client-based chat service, characterized in that the identification information corresponding to the client device.
제5항에 있어서,
상기 클라이언트 장치는,
애플리케이션 스토어 서버를 통해 설치된 애플리케이션을 실행시켜 클라이언트 기반의 채팅 서비스를 제공하는 모바일 단말기인 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 클라이언트 장치.
The method of claim 5,
The client device,
Client device for providing a client-based chat service, characterized in that the mobile terminal for providing a client-based chat service by running the application installed through the application store server.
클라이언트 장치가 클라이언트 기반의 채팅 서비스를 제공하는 방법에 있어서,
입력된 제1메시지를 채팅 화면에 출력하는 단계;
상기 제1메시지가 입력되면, 제1송신자 정보, 제1수신자 리스트 및 제1메시지 타입 정보를 포함하는 제1메시지 헤더와 상기 입력된 제1메시지를 패키징하여 제1패키지 데이터를 생성하는 단계;
상기 생성된 제1패키지 데이터를 채팅 서버로 송신하는 단계;
제2송신자 정보, 제2수신자 리스트 및 제2메시지 타입 정보를 포함하는 제2메시지 헤더와 제2메시지가 패키징된 제2패키지 데이터를 상기 채팅 서버로부터 수신하는 단계; 및
상기 제2메시지를 상기 채팅 화면에 출력하는 단계를 포함하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 방법.
In the method that the client device provides a client-based chat service,
Outputting an input first message to a chat screen;
When the first message is input, packaging a first message header including first sender information, a first receiver list, and first message type information and the inputted first message to generate first package data;
Transmitting the generated first package data to a chat server;
Receiving, from the chat server, a second message header including a second sender information, a second receiver list, and a second message type information, and second package data in which a second message is packaged; And
And outputting the second message to the chat screen.
제11항에 있어서,
상기 제1송신자 정보는 상기 클라이언트 장치에 대응되는 식별정보이고, 상기 제1수신자 리스트는 하나 이상의 다른 클라이언트 장치에 각각 대응되는 식별정보를 포함하며,
상기 제2송신자 정보는 상기 하나 이상의 다른 클라이언트 장치 중 특정 다른 클라이언트 장치에 대응되는 식별정보이고, 상기 제2수신자 리스트는 상기 클라이언트 장치에 대응되는 식별정보를 포함하되,
상기 식별정보는 전화번호 또는 상기 전화번호와 대응되는 사용자 정보인 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 방법.
The method of claim 11,
The first sender information is identification information corresponding to the client device, and the first receiver list includes identification information corresponding to one or more other client devices, respectively.
The second sender information is identification information corresponding to a specific other client device among the one or more other client devices, and the second receiver list includes identification information corresponding to the client device.
And the identification information is a telephone number or user information corresponding to the telephone number.
제11항에 있어서,
상기 생성하는 단계에서,
사용자 입력 또는 채팅 참여자 리스트를 토대로 하나 이상의 다른 클라이언트 장치에 각각 대응되는 식별정보를 포함하는 상기 제1수신자 리스트를 설정하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 방법.
The method of claim 11,
In the generating step,
And setting the first recipient list including identification information corresponding to one or more other client devices based on a user input or a chat participant list.
제13항에 있어서,
상기 제2패키지 데이터를 수신한 이후에, 상기 제2메시지 타입 정보가 초대 메시지 타입 정보인 경우, 상기 제2수신자 리스트를 토대로 상기 제2패키지 데이터가 수신되기 이전에 관리되고 있던 채팅 참여자 리스트에 새로운 클라이언트 장치에 대응되는 식별정보를 추가하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 방법.
The method of claim 13,
After receiving the second package data, if the second message type information is invitation message type information, a new message is added to the chat participant list that was managed before the second package data was received based on the second recipient list. Method for providing a client-based chat service, characterized in that for adding the identification information corresponding to the client device.
제13항에 있어서,
상기 제2패키지 데이터를 수신한 이후에, 상기 제2메시지 타입 정보가 나가기 메시지 타입 정보인 경우, 상기 제2송신자 정보인 특정 다른 클라이언트 장치에 대응되는 식별정보를 상기 제2패키지 데이터가 수신되기 이전에 관리되고 있던 채팅 참여자 리스트에서 삭제하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 방법.
The method of claim 13,
After receiving the second package data, if the second message type information is the exit message type information, before the second package data is received, identification information corresponding to a specific other client device that is the second sender information is received. A method for providing a client-based chat service, the method comprising: deleting from a chat participant list managed at.
제11항에 있어서,
상기 제1메시지 타입 정보 및 상기 제2메시지 타입 정보 각각은,
초대 메시지 타입 정보, 일반 메시지 타입 정보 및 나가기 메시지 타입 정보 중 하나인 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 방법.
The method of claim 11,
Each of the first message type information and the second message type information,
Method of providing a client-based chat service, characterized in that one of the invitation message type information, general message type information and the exit message type information.
제11항에 있어서,
상기 수신하는 단계는,
상기 채팅 서버로부터 가져올 상기 제2패키지 데이터가 있는지를 확인하기 위하여, 상기 클라이언트 장치에 대응되는 식별정보를 포함하는 메시지 요청 데이터를 상기 채팅 서버로 송신하여 상기 제2패키지 데이터를 상기 채팅 서버로부터 수신하고, 상기 제2패키지 데이터에서의 상기 제2수신자 리스트에는 상기 클라이언트 장치에 대응되는 식별정보가 포함된 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 방법.
The method of claim 11,
Wherein the receiving comprises:
In order to confirm whether there is the second package data to be fetched from the chat server, message request data including identification information corresponding to the client device is transmitted to the chat server to receive the second package data from the chat server. And the identification information corresponding to the client device is included in the second recipient list in the second package data.
제11항에 있어서,
상기 클라이언트 장치는,
애플리케이션 스토어 서버를 통해 설치된 애플리케이션을 실행시켜 클라이언트 기반의 채팅 서비스를 제공하는 모바일 단말기인 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 방법.
The method of claim 11,
The client device,
A method of providing a client-based chat service, comprising: a mobile terminal for executing a client-based chat service by executing an application installed through an application store server.
제11항에 있어서,
상기 제1메시지 헤더 및 상기 제2메시지 헤더 각각은,
같이 채팅을 하고 있는 사용자의 그룹 또는 메시지 전달 범위에 있는 사용자의 그룹을 의미하는 채팅 그룹을 식별하기 위한 그룹 정보를 더 포함하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 방법.
The method of claim 11,
Each of the first message header and the second message header,
A method for providing a client-based chat service, characterized by further comprising group information for identifying a chat group, which means a group of users who are chatting with each other or a group of users within a message delivery range.
메시지가 입력되면 송신자 정보, 수신자 리스트 및 메시지 타입 정보를 포함하는 메시지 헤더와 상기 입력된 메시지를 패키징하여 패키지 데이터를 생성하여 송신하고, 상기 입력된 메시지를 채팅 화면에 출력하는 제1클라이언트 장치;
상기 패키지 데이터를 수신하여 저장해두고, 상기 수신자 리스트를 참조하여 상기 패키지 데이터를 전달하는 채팅 서버; 및
상기 패키지 데이터를 전달받고, 상기 패키지 데이터에 패키징된 메시지를 채팅 화면에 출력하는 제2클라이언트 장치
를 포함하되, 상기 수신자 리스트는 상기 제2클라이언트 장치에 대응되는 식별정보를 포함하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 시스템.
A first client device configured to package a message header including sender information, a recipient list, and message type information and package the input message to generate and transmit package data, and to output the input message to a chat screen;
A chat server which receives and stores the package data and delivers the package data with reference to the recipient list; And
A second client device receiving the package data and outputting a message packaged in the package data to a chat screen;
Including, Wherein the recipient list System for providing a client-based chat service comprising the identification information corresponding to the second client device.
제20항에 있어서,
상기 제2클라이언트 장치는,
상기 패키지 데이터에 패키징된 메시지 헤더에 포함된 상기 송신자 정보와 상기 수신자 리스트를 토대로 채팅 참여자 리스트를 파악하여 새로운 참여자를 추가하거나 기존 참여자를 삭제하는 것을 특징으로 하는 클라이언트 기반의 채팅 서비스를 제공하는 시스템.
21. The method of claim 20,
The second client device,
System for providing a client-based chat service, characterized in that to identify a chat participant list based on the sender information and the recipient list included in the message header packaged in the package data to add a new participant or delete an existing participant.
클라이언트 기반의 채팅 서비스를 제공하는 방법을 실행시키기 위한 프로그램을 기록한 기록매체에 있어서,
입력된 제1메시지를 채팅 화면에 출력하는 기능과,
상기 제1메시지가 입력되면, 제1송신자 정보, 제1수신자 리스트 및 제1메시지 타입 정보를 포함하는 제1메시지 헤더와 상기 입력된 제1메시지를 패키징하여 제1패키지 데이터를 생성하는 기능과,
상기 생성된 제1패키지 데이터를 채팅 서버로 송신하는 기능과,
제2송신자 정보, 제2수신자 리스트 및 제2메시지 타입 정보를 포함하는 제2메시지 헤더와 제2메시지가 패키징된 제2패키지 데이터를 상기 채팅 서버로부터 수신하는 기능과,
상기 제2메시지를 상기 채팅 화면에 출력하는 기능을 구현하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
A recording medium having recorded thereon a program for executing a method of providing a client-based chat service,
A function of outputting the inputted first message on the chat screen;
When the first message is input, a first message header including first sender information, a first receiver list, and first message type information and a package of the inputted first message to generate first package data;
Transmitting the generated first package data to a chat server;
Receiving from the chat server a second message header including a second sender information, a second recipient list, and a second message type information, and second package data in which the second message is packaged;
And a computer-readable recording medium having recorded thereon a program implementing the function of outputting the second message to the chat screen.
KR1020110047903A 2011-05-20 2011-05-20 Method, client device, chatting server and recording medium for providing client-based chatting service KR101292002B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110047903A KR101292002B1 (en) 2011-05-20 2011-05-20 Method, client device, chatting server and recording medium for providing client-based chatting service
PCT/KR2012/003655 WO2012161437A2 (en) 2011-05-20 2012-05-10 Method for providing a client-based chatting service, client device, chatting server, system, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110047903A KR101292002B1 (en) 2011-05-20 2011-05-20 Method, client device, chatting server and recording medium for providing client-based chatting service

Publications (2)

Publication Number Publication Date
KR20120129564A true KR20120129564A (en) 2012-11-28
KR101292002B1 KR101292002B1 (en) 2013-08-01

Family

ID=47217844

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110047903A KR101292002B1 (en) 2011-05-20 2011-05-20 Method, client device, chatting server and recording medium for providing client-based chatting service

Country Status (2)

Country Link
KR (1) KR101292002B1 (en)
WO (1) WO2012161437A2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7650380B2 (en) 2004-02-12 2010-01-19 International Business Machines Corporation System and method for messaging and collaborating in an intranet environment
FI20050092A0 (en) * 2004-09-08 2005-01-28 Nokia Corp Group details for group services
US20090063638A1 (en) * 2007-08-29 2009-03-05 Lei Guo Method and Apparatus for Processing Messages in Messaging System
KR101397633B1 (en) * 2007-12-05 2014-05-22 주식회사 케이티 System and method for providing instatnt message service in ims

Also Published As

Publication number Publication date
WO2012161437A3 (en) 2013-01-17
WO2012161437A2 (en) 2012-11-29
KR101292002B1 (en) 2013-08-01

Similar Documents

Publication Publication Date Title
US11381415B2 (en) Method and apparatus for providing remote user interface services
CN107018147B (en) Internet of things communication method and system and gateway module
KR101077739B1 (en) User initiated invite for automatic conference participation by invitee
US20110307565A1 (en) Group messaging integration system, method and apparatus
CN109729005A (en) Message treatment method, device, computer equipment and storage medium
JP7430821B2 (en) Information interaction methods, devices, servers, systems and storage media
US10999332B2 (en) User-centric connections to a location comprising digital collaboration tools
CN109728996B (en) Communication information display method, user equipment, storage medium and device
CN105704001A (en) WeChat server message distribution method and WeChat server message distribution system
US11489883B2 (en) User-centric connections to a location comprising digital collaboration tools
WO2014187397A1 (en) Multimedia message publishing method and device
EP2707995B1 (en) Method and system for managing voice mails in a universal plug and play network environment
KR101196657B1 (en) Messaging Systems Having Function of Compatible and Parameters between the Social-Network Service
KR101292002B1 (en) Method, client device, chatting server and recording medium for providing client-based chatting service
KR102527601B1 (en) Method for chatting messages by topic based on subscription channel reference in server and user device
US11159476B1 (en) Methods and apparatuses for managing data integration between an external email resource and a group-based communication system
KR101804054B1 (en) Message Server Managing Message And Method of Thereof
KR100784225B1 (en) Method for providing service based on phone book address in presence system and the system thereof
US11916977B2 (en) User-centric connections to a location comprising digital collaboration tools
KR101325233B1 (en) Communication system and method by using integration communication program
KR20190136499A (en) Apparatus and method for messaging service
CN103119892B (en) The system and method for meeting message transmission is carried out between telephone device and the wide area networking devices that universal plug and play enables
US20220353217A1 (en) Online meeting phone and chat connectivity
CN108173910B (en) Method and system for managing application
Pendov Universal Interpersonal Communication Application Prototyping

Legal Events

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

Payment date: 20160713

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170612

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee