KR100397286B1 - real time chatting system between plural people through computers connected via network and method for the same, and storage medium storing program implementing the same method - Google Patents

real time chatting system between plural people through computers connected via network and method for the same, and storage medium storing program implementing the same method Download PDF

Info

Publication number
KR100397286B1
KR100397286B1 KR10-2000-0066846A KR20000066846A KR100397286B1 KR 100397286 B1 KR100397286 B1 KR 100397286B1 KR 20000066846 A KR20000066846 A KR 20000066846A KR 100397286 B1 KR100397286 B1 KR 100397286B1
Authority
KR
South Korea
Prior art keywords
chat
client
message
content
server
Prior art date
Application number
KR10-2000-0066846A
Other languages
Korean (ko)
Other versions
KR20020036597A (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 KR10-2000-0066846A priority Critical patent/KR100397286B1/en
Publication of KR20020036597A publication Critical patent/KR20020036597A/en
Application granted granted Critical
Publication of KR100397286B1 publication Critical patent/KR100397286B1/en

Links

Classifications

    • G06Q50/50
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Abstract

본 발명은 인터넷 상의 통신 시스템 및 그 방법에 관련되며, 특히 유·무선 인터넷을 통한 다자간 실시간 대화 통신 방식 즉 채팅 시스템에 관련된 것이다. 본 발명에 따른 채팅 시스템은 네트워크를 통해 다수의 클라이언트와 접속된 채팅 서버에서 구현되고, 상기 채팅 서버와 각각의 클라이언트가 최소한의 공통 프로토콜을 통해 상호 통신하며; 상기 채팅 시스템이 : 각각의 클라이언트로부터 전송된 메시지를 수신하는 수신 프로세스와; 상기 수신한 메시지를 포매팅하는 컨텐츠 생성 프로세스와; 상기 생성된 프로세스를 소정의 갱신주기마다 각각의 클라이언트로 송신하는 송신 프로세스; 를 포함하는 것을 특징으로 하며, 네트워크의 사정이나 서버, 클라이언트의 처리 부하에 따라 상기 갱신주기를 조절하고 클라이언트의 비정상적인 종료를 검출하여 처리하는 관리 프로세스를 더 포함할 수 있다.The present invention relates to a communication system on the Internet and a method thereof, and more particularly, to a multi-party real-time conversational communication method, i.e., a chat system, through a wired or wireless Internet. The chat system according to the present invention is implemented in a chat server connected to a plurality of clients via a network, wherein the chat server and each client communicate with each other via a minimum common protocol; The chat system includes: a receiving process for receiving a message sent from each client; A content generation process for formatting the received message; A transmission process for transmitting the generated process to each client every predetermined update period; The method may further include a management process that adjusts the update period according to the circumstances of the network, the processing load of the server, and the client, and detects and processes abnormal termination of the client.

Description

네트워크상에 접속된 컴퓨터를 통한 다자간 실시간 대화 시스템 및 그 방법과 그 방법이 구현된 프로그램이 저장된 컴퓨터로 읽을 수 있는 기록 매체{real time chatting system between plural people through computers connected via network and method for the same, and storage medium storing program implementing the same method}Real time chatting system between plural people through computers connected via network and method for the same, and storage medium storing program implementing the same method}

본 발명은 인터넷 상의 통신에 관련되며, 특히 유·무선 인터넷을 통한 다자간 실시간 대화 통신 방식에 관련된 것이다.The present invention relates to communication on the Internet, and more particularly, to a multi-party real-time conversational communication method through a wired or wireless Internet.

원격지에 위치한 사람끼리 네트워크를 통해 문자·음성·화상을 통해 대화하는 것을 다자간 실시간 메시징 또는 간단히 채팅이라고 부를 수 있으며, 채팅은 HAM 무전기에서 전화회의, 컴퓨터 문자 채팅, 그리고 화상 채팅으로 발전되고 있다.Conversation over text, voice, and video over remote networks can be referred to as multi-party real-time messaging or simply chat. Chat is evolving from HAM radios to conference calls, computer text chat, and video chat.

유선 인터넷에서 널리 사용되는 HTTP 프로토콜은 클라이언트가 서버에 간헐적으로 연결하여 필요한 정보를 받는 형식이다. 이 프로토콜은 나열된 정적인 정보를 접근하는데에는 적합하지만 채팅과 같이 계속적인 연결을 유지하면서 동적으로 대화하는 응용분야에는 적합하지 않다. 즉, 클라이언트의 연결상태라는 개념이 없기 때문에 일반적으로 채팅 서비스는 HTTP 프로토콜을 사용하지 않고 TCP/IP 처럼 보다 낮은 레벨의 통신 프로토콜을 사용하는 서버/클라이언트 애플리케이션을 작성하여 구현한다. 이와 같은 채팅 프로토콜에는 IRC와 같은 프로토콜이 있으며, 도1은 이와 같은 유선 인터넷에서 구현된 채팅 프로토콜의 정보흐름을 개략적으로 도시한다. 도시된 바와 같이 한 클라이언트에서 발생한 메시지를 서버가 수신하여다른 모든 클라이언트에게 전달하는 프로세스가 순차적으로 수행되어 다자간 대화가 가능해진다.The HTTP protocol, which is widely used in the wired Internet, is a form in which a client intermittently connects to a server and receives necessary information. This protocol is suitable for accessing the static information listed, but not for applications that talk dynamically, such as chat, while maintaining a constant connection. In other words, since there is no concept of client connection, the chat service is generally implemented by writing a server / client application that does not use the HTTP protocol but uses a lower level communication protocol such as TCP / IP. Such a chat protocol includes a protocol such as IRC, and FIG. 1 schematically illustrates an information flow of a chat protocol implemented in such a wired Internet. As shown in the figure, a process in which a server receives a message originating from one client and delivers it to all other clients is sequentially performed, thereby enabling multilateral conversation.

그러나 이와 같은 유선 인터넷에서 통용되는 프로토콜은 채팅 서버와 클라이언트간의 연결상태가 유지되는데 기초하고 있으므로 이와 같은 별도의 프로토콜의 제작이 어려운 분야에서 도입된 좀 더 상위 계층의 프로토콜인 HTTP 기반에서는 서비스될 수 없다. 또한 이와 같은 유선 채팅 시스템은 단말기가 같은 사용자 간에만 대화가 가능하다는 단점이 있다. 즉, TCP/IP 레벨의 특정한 프로토콜에 기반을 두고 있기 때문에 컴퓨터에서 동일한 채팅 클라이언트를 사용하는 사람들끼리만 대화를 나눌 수 있고, 예를 들어 유선 인터넷 사용자와 무선 인터넷 환경의 핸드폰 사용자는 상호간에 대화가 불가능하다.However, since the protocol used in the wired Internet is based on maintaining the connection between the chat server and the client, it cannot be serviced on the HTTP-based protocol, which is a higher layer protocol introduced in a field where it is difficult to produce such a separate protocol. . In addition, such a wired chat system has a disadvantage that the terminal can communicate only with the same user. That is, since it is based on a specific protocol at the TCP / IP level, only people using the same chat client on the computer can talk, for example, wired Internet users and mobile phone users in a wireless Internet environment cannot communicate with each other. Do.

무선 인터넷은 유선 인터넷과 같은 HTTP 통신 프로토콜을 이용하여 정보를 주고 받지만 정보의 내용과 표현에 있어서는 현재 매우 제한된 기능만이 지원되고 있다. 또 확장성이 제한되어 새로운 프로토콜을 이용하거나 새로운 클라이언트 애플리케이션을 실행시키는 것은 불가능하거나 적어도 매우 어려운 일이다. 그러므로 무선 인터넷과 같은 제한된 HTTP 프로토콜상에서도 최대한의 기능을 제공할 수 있는 새로운 다자간 실시간 대화통신 방식에 대한 필요성이 존재한다.The wireless Internet transmits and receives information using HTTP communication protocols such as wired Internet, but only very limited functions are currently supported in the content and expression of information. The limited scalability also makes it impossible or at least very difficult to use new protocols or run new client applications. Therefore, there is a need for a new multi-party real-time conversational communication method that can provide maximum functionality over a limited HTTP protocol such as wireless Internet.

한편, 유·무선을 막론하고 현재의 채팅 시스템은 이용 용도가 대화라는 것에 한정이 되어 있으며 별다른 콘텐츠의 부가가 불가능하다. 따라서 기존의 무형식적 대화 이외에 채팅 시스템의 부가 가치를 높일 수 있는 콘텐츠가 삽입 가능한 확장된 개념의 채팅 시스템에 대한 필요성이 존재한다.On the other hand, the current chat system, whether wired or wireless, is limited to the use of the conversation, and it is impossible to add other contents. Therefore, there is a need for an extended concept chat system into which content can be added to enhance the added value of the chat system in addition to the conventional informal conversation.

본 발명은 이와 같은 필요성에 따라 창안된 것으로, 제한된 접속이 제공되는 프로토콜 하에서도 최대한의 기능을 제공할 수 있는 호환성이 우수한 다자간 실시간 대화통신 시스템 및 그 방법을 제공하는 것을 목적으로 한다.The present invention has been made in accordance with such a need, and an object of the present invention is to provide a highly compatible multi-party real-time chat communication system and method capable of providing maximum functionality even under a protocol in which limited access is provided.

나아가 본 발명은 새로운 콘텐츠의 삽입이 용이한 다자간 실시간 대화통신 시스템 및 그 방법을 제공하는 것을 목적으로 한다.Furthermore, an object of the present invention is to provide a multi-party real-time chat communication system and a method for easily inserting new content.

더 나아가 본 발명은 시스템 환경에 따라 적응적으로 최적의 서비스가 가능한 다자간 실시간 대화 통신 시스템 및 그 방법을 제공하는 것을 목적으로 한다.Furthermore, an object of the present invention is to provide a multi-party real-time chat communication system and a method capable of adaptively optimal service according to the system environment.

도1은 유선 인터넷에서 구현된 채팅 프로토콜의 정보흐름을 개략적으로 도시한다.Figure 1 schematically shows the information flow of the chat protocol implemented in the wired Internet.

도2는 본 발명에 따른 채팅 시스템의 전체적인 시스템 구성을 도시한다.2 shows the overall system configuration of the chat system according to the present invention.

도3a 본 발명의 일 실시예에 따른 클라이언트 프로세스의 처리 수순을 도시한 흐름도이다.3A is a flowchart illustrating a processing procedure of a client process according to an embodiment of the present invention.

도3b는 채팅 서버가 각각의 클라이언트로 컨텐츠를 주기적으로 푸쉬(push)하는 경우의 클라이언트 프로세스 처리 수순의 일 실시예이다.3B is an embodiment of a client process processing procedure when the chat server periodically pushes content to each client.

도4는 메시지 수신 프로세스의 일 실시예에 따른 처리 흐름도이다.4 is a processing flow diagram according to one embodiment of a message receiving process.

도5는 컨텐츠 생성 프로세스의 처리 수순의 일 실시예이다.5 is an embodiment of a processing procedure of a content generation process.

도6a, 6b는 채팅 컨텐츠 송신 프로세스의 처리 흐름의 일 실시예이다.6A and 6B illustrate one embodiment of a processing flow of a chat content transmission process.

도7은 시스템 관리 프로세스의 처리 흐름의 일 실시예이다.7 is one embodiment of a processing flow of a system management process.

도8은 사용자 관리 프로세스의 처리 흐름의 일실시예이다.8 is one embodiment of a processing flow of a user management process.

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

100 : 채팅 서버 210, 220, 230, 240 : 클라이언트100: chat server 210, 220, 230, 240: client

상기 목적을 달성하기 위한 본 발명의 일 양상에 따른 채팅 시스템은 : 네트워크를 통해 다수의 클라이언트와 접속된 채팅 서버에서 구현된 채팅 시스템에 있어서, 상기 채팅 서버와 각각의 클라이언트가 최소한의 공통 프로토콜을 통해 상호 통신하고; 상기 채팅 시스템이 : 각각의 클라이언트로부터 전송된 메시지를 수신하는 수신 프로세스와; 상기 수신한 메시지를 포매팅하는 컨텐츠 생성 프로세스와; 상기 생성된 프로세스를 소정의 갱신주기마다 각각의 클라이언트로 송신하는 송신 프로세스;를 포함하는 것을 특징으로 한다.A chat system according to an aspect of the present invention for achieving the above object is a chat system implemented in a chat server connected to a plurality of clients via a network, the chat server and each client through a minimum common protocol Communicating with each other; The chat system includes: a receiving process for receiving a message sent from each client; A content generation process for formatting the received message; And a transmission process for transmitting the generated process to each client at predetermined update periods.

즉, 본 발명은 단말기로 입력된 채팅 메시지는 그때 그때 서버로 전송될 수 있지만 서버는 이 수신한 메시지를 순서대로 저장하고 있다가 일정한 갱신주기마다 전체 단말기로 전송한다. 이 같은 본 발명의 특징적인 양상에 따라 서버와 각각의 단말기는 계속적인 연결상태를 유지하고 있을 필요가 없으며, 단지 서버는 로그 정보를 관리하여 대화방을 유지하기만 하면 된다.That is, according to the present invention, the chat message input to the terminal may be transmitted to the server at that time, but the server stores the received messages in order and transmits the received messages to all terminals at regular update periods. According to this aspect of the present invention, the server and each terminal do not need to maintain a continuous connection, but the server only needs to maintain log rooms by managing log information.

나아가 본 발명의 또다른 양상에 따르면, 상기 컨텐츠 생성 프로세스가 수신한 메시지를 클라이언트 종류별로 포매팅하는 것을 특징으로 한다. 본 발명의 이와 같은 유리한 양상에 따라 본 발명은 클라이언트의 하드웨어 혹은 시스템적인 특징에 따라 적합한 형태의 채팅 콘텐츠를 서비스 함으로써 상이한 시스템적인 특징을 가진 클라이언트, 예를 들면 유선 인터넷 상의 개인용 컴퓨터, 무선 인터넷 상의 휴대폰을 대상으로 채팅 서비스하는 것이 가능하다.Furthermore, according to another aspect of the present invention, the content generation process is characterized in that for formatting the message received by the client type. According to this advantageous aspect of the present invention, the present invention provides a client with different system features, for example, a personal computer on a wired Internet, a mobile phone on a wireless Internet, by serving a suitable type of chat content according to the hardware or system features of the client. It is possible to target a chat service.

나아가 본 발명의 또다른 양상에 따르면, 상기 채팅 시스템이 : 상기 각각의 프로세스 중의 하나 혹은 각각의 처리 시간과 상기 갱신 주기와의 비교에 기초하여 상기 갱신주기를 증감시키는 시스템 관리 프로세스;를 더 포함하는 것을 특징으로 한다. 본 발명의 이와 같은 유리한 양상에 따라 이용자수가 증가하여 서버의 처리 부하가 증가하여도 어느 정도의 범위 안에서는 이용자에게 양호한 서비스 품질을 유지할 수 있는 장점이 있다.Furthermore, according to another aspect of the present invention, the chat system further comprises: a system management process of increasing or decreasing the update period based on a comparison of one or each processing time of each process with the update period. It is characterized by. According to this advantageous aspect of the present invention, even if the number of users increases and the processing load of the server increases, there is an advantage of maintaining a good quality of service to the user within a certain range.

나아가 본 발명의 또다른 양상에 따르면, 상기 채팅 시스템이 : 클라이언트별 최종 접속 정보에 기초하여 클라이언트의 비정상 종료를 판정하여 종료처리하는 사용자 관리 프로세스; 를 더 포함하는 것을 특징으로 한다. 본 발명의 이와 같은 유리한 양상에 따라 무선 네트워크의 불시의 통화 두절 또는 밧데리의 방전 등으로 인해 이용자가 비정상적으로 접속을 종료한 경우 해당 이용자의 로그 정보를 자동적으로 삭제함으로써 효율적인 시스템 운영이 가능하고 다른 대화방 이용자들이 피해를 입는 것을 방지할 수 있다.Furthermore, according to another aspect of the present invention, the chat system comprises: a user management process for determining and terminating abnormal termination of the client based on the final connection information for each client; It characterized in that it further comprises. According to this advantageous aspect of the present invention, when a user abnormally terminates the connection due to an unexpected disconnection of a wireless network or a discharge of a battery, an efficient system operation is possible by automatically deleting log information of the corresponding user and other chat rooms. Users can be prevented from being harmed.

또 본 발명의 또다른 양상에 따라 상기 컨텐츠 생성 프로세스가: 상기 수신 프로세스의 수신 메시지와 서비스 제공자에 의해 제공되는 부가 서비스 컨텐츠를 합하여 컨텐츠를 생성하는 것을 특징으로 한다. 본 발명의 이와 같은 유리한 양상에 따라 서비스 제공자는 광고, 게임, 유머 등의 다양한 부가 컨텐츠를 채팅 컨텐츠와 함께 제공하는 것이 가능하다.According to another aspect of the present invention, the content generating process is characterized in that: generating the content by adding the received message of the receiving process and the additional service content provided by the service provider. According to this advantageous aspect of the present invention, the service provider may provide various additional contents such as advertisements, games, and humor along with the chat contents.

이하에서는 첨부된 도면을 참조하여 기술되는 바람직한 실시예를 통하여 본 발명을 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 기술하기로 한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily understand and reproduce.

도2는 본 발명에 따른 채팅 시스템의 전체적인 구성을 도시한다. 상세히 도시되지는 않았지만 이동 통신 단말기(220, 240)와 채팅 서버(100) 간에는 기지국, 이동교환국(MSC), 기지국 제어기(BSC) 및 WAP 게이트웨이 등이 포함될 수도 있으며, IETF 모바엘 IP 워킹 그룹에서 제안하여 추진 중인 모바일 IP 기반의 이동통신 네트워크 장비들을 경유할 수 있다.2 shows an overall configuration of a chat system according to the present invention. Although not shown in detail, a base station, a mobile switching center (MSC), a base station controller (BSC), and a WAP gateway may be included between the mobile communication terminals 220 and 240 and the chat server 100, and are proposed by the IETF Mobile IP Working Group. This can be achieved via mobile IP-based mobile communication network equipment.

도시된 바와 같이 본 발명은 유선 혹은 무선 네트워크를 통해 서비스 가능하며, 나아가 유선 혹은 무선 네트워크를 통해 동시에 서비스 가능하고, 최소한의 호환 가능한 프로토콜, 예를 들면 유선 인터넷의 HTTP와 무선 인터넷의 WAP 과 같은 프로토콜로 연결된 네트워크라면 어떠한 네트워크라도 가능하다. 따라서 본 명세서에서 "네트워크"라 함은 이와 같이 최소한의 호환 가능한 프로토콜로 연결될 수 있는 네트워크를 포괄하는 의미로 해석되어져야 한다. 즉, 상위 계층의 네트워크에서 정보 교환 가능한 망이라면 기반 프로토콜로 TCP/IP 뿐 만 아니라 많은 다른 패킷 통신망까지 적용가능하다. 본 발명의 양상에 따라 이동통신단말기의 사용자와개인용 컴퓨터의 사용자는 동일한 서버로 접속하여 함께 다자간 실시간 대화(이하 간단히 "채팅"이라고 한다)를 나누는 것이 가능하다. 따라서 본 발명에 따른 클라이언트는 이동 통신 단말기, 개인용 컴퓨터, PDA 등을 포괄하는 동일한 상위 계층의 프로토콜 상에서 데이터 교환 가능한 모든 단말기를 포괄하도록 해석되어진다.As shown, the present invention can be serviced through a wired or wireless network, and furthermore, can be simultaneously serviced through a wired or wireless network, and a minimum compatible protocol, for example, a protocol such as HTTP of a wired Internet and WAP of a wireless Internet. Any network can be used. Therefore, the term "network" in the present specification should be interpreted to encompass a network that can be connected with such a minimum compatible protocol. In other words, if the network can exchange information in the upper layer network, not only TCP / IP but also many other packet communication networks can be applied. According to an aspect of the present invention, a user of a mobile communication terminal and a user of a personal computer can connect to the same server and have a multi-party real-time conversation (hereinafter simply referred to as "chat") together. Therefore, the client according to the present invention is interpreted to encompass all terminals capable of exchanging data on the same upper layer protocols including mobile communication terminals, personal computers, PDAs, and the like.

본 발명의 특징적인 양상에 따라 본 발명에 따른 채팅 시스템은 다수개의 처리 모듈인 프로세스로 구현된다. 이들 프로세스는 채팅 서버(100)에서 실행되며, 각 클라이언트에서 발생하는 메시지를 수신하는 수신 프로세스와; 수신한 메시지를 포매팅하는 메시지 생성 프로세스와; 그리고 포매팅된 채팅 컨텐츠를 각각의 클라이언트로 송신하는 송신 프로세스;를 포함한다. 본 발명의 이와 같은 양상에 따라 채팅 서버(100)가 채팅 컨텐츠를 유지하고 송수신을 주도함에 따라 단말기마다 개별적 컨텐츠의 제공이 가능하며, 이에 따라 대화 내용외에 다른 부가가치를 가지는 컨텐츠, 예를 들면 광고나 별도의 서버에서 제공하는 적절한 유머 멘트 등이 제공될 수 있는 장점을 가진다. 즉, 채팅 서버(100)가 유지하는 메시지가 발생되었을때 곧바로 이 채팅 컨텐츠를 각 클라이언트로 송신하지 않고 채팅 서버(100)와 클라이언트(210, 220, 230, 240) 간의 주기적인 채팅 컨텐츠 송수신 프로세스가 실행될 때에야 비로소 전달된다. 본 발명의 이와 같은 양상에 따라 약간의 메시지 전달 지연 시간이 생기지만 사용자의 수에 비례하는 통신량이 발생하게 되므로 서버가 수용할 수 있는 사용자의 수를 계산하는 것이 용이하여 안정적인 서비스가 가능하다. 나아가 네트워크의 부하 역시 안정적이므로 단말기별 통신량에 따라 간섭이 발생하여 시스템 다운 등의 문제가 빈번한 이동통신 망에서는 매우 바람직한 양상이 된다. 더 나아가 이를 응용하면 사용자의 수가 많아지면 채팅 컨텐츠의 송수신 주기를 변경함으로써, 즉, 송수신 프로세스의 실행 주기를 변경함으로써 서비스 질과 시스템 비용간의 균형을 꾀할 수 있는 보다 유연한 서비스가 가능해진다.According to a characteristic aspect of the invention the chat system according to the invention is implemented in a process which is a plurality of processing modules. These processes are executed in the chat server 100, and receive processes for receiving messages generated by each client; A message generation process for formatting the received message; And a transmission process for transmitting the formatted chat content to each client. According to this aspect of the present invention, as the chat server 100 maintains the chat contents and leads the transmission and reception, it is possible to provide individual contents for each terminal. Accordingly, contents having other added values besides the contents of the conversation, for example, advertisements Appropriate humor provided by a separate server has the advantage that can be provided. That is, when the message maintained by the chat server 100 is generated, the chat content transmission and reception process between the chat server 100 and the clients 210, 220, 230, and 240 is not immediately transmitted to each client. It is only delivered when executed. According to this aspect of the present invention, a slight message delivery delay time is generated, but communication amount in proportion to the number of users is generated, so that it is easy to calculate the number of users that the server can accommodate, thereby enabling stable service. In addition, since the load of the network is also stable, interference occurs according to the amount of communication for each terminal, which is a very desirable aspect in a mobile communication network in which problems such as system down are frequent. Furthermore, if the number of users is increased, a more flexible service can be balanced between service quality and system cost by changing the transmission / reception cycle of the chat content, that is, the execution cycle of the transmission / reception process.

다음으로, 본 발명에 따른 채팅 시스템의 클라이언트에서 실행되는 클라이언 프로세스에 대해 상세히 설명한다. 클라이언트 프로세스는 이동통신 단말기 또는 개인용 컴퓨터에서 실행되는 프로세스로, 최신의 컨텐츠를 서버로부터 수신하여 사용자에게 보여주는 기능과 사용자로부터 메시지를 입력받아 서버로 송신하는 역할을 한다. 이와 같은 기능은 예를 들어 클라이언트가 HTTP 프로토콜 기반이라면 브라우저에 의해 실행될 수 있다. 이와 같은 브라우저에는 개인용 컴퓨터의 (주)마이크로소프트의 익스플로러나 이동통신단말기의 윈도우즈 ME(mobile explorer) 등이 있다. 메시지 수신은 클라이언트가 소정 주기마다 요청하거나 또는 서버에서 소정 주기마다 푸쉬하는 두 가지 방법이 가능하다.Next, the client process executed in the client of the chat system according to the present invention will be described in detail. The client process is a process executed in a mobile communication terminal or a personal computer. The client process receives the latest contents from the server and shows them to the user, and receives a message from the user and transmits the message to the server. Such a function can be executed by a browser, for example if the client is based on the HTTP protocol. Such browsers include Microsoft's Internet Explorer for personal computers, and Windows ME (mobile explorer) for mobile communication terminals. Receiving a message can be done in two ways: the client requests every predetermined period or the server pushes every predetermined period.

도3a는 본 발명의 일 실시예에 따른 클라이언트 프로세스의 처리 수순을 도시한 흐름도이다. 이 프로세스는 시간적으로 반복 실행된다. 먼저 소정 주기의 경과를 카운트하는 시간 카운터를 초기화한다. 카운터는 하드웨어 또는 소프트웨어로 구현될 수도 있으며, 일정한 갱신주기를 카운터하여 갱신주기의 종료를 알리는 타이머 이벤트를 발생시킨다. 사용자로부터 메시지 입력을 체크하여(단계 s311), 메시지가 입력되면, 이를 입력받아(단계 s314) 송신한다(단계 s315). 메시지 입력의 종료는 예를 들면 개인용 컴퓨터 키보드의 엔터키나 이동통신 단말기의 확인키등에 의해 종료로 인식된다. 다수의 클라이언트로부터 송신된 메시지는 시간적인 순서에 따라 채팅 서버(100)에 의해 관리되어야 하기 때문에 메시지가 발생하는 즉시 이루어진다. 한번의 메시지 송신 후에는 추가적인 메시지 송신을 한번의 채팅 컨텐츠 수신(단계 s317)이 이루어진 후에야 가능하도록 함으로써 메시시 송신에 따른 전체적인 네트워크 부하나 채팅 서버(100)의 처리 용량의 제어가 좀 더 적절히 이루어지도록 할 수 있다. 그러나 이와 같은 양상은 필수적인 것은 아니며, 단말기에 입력된 메시지 송신은 서버로부터의 채팅 컨텐츠 수신과 관계없이 그때그때 반복해서 가능하도록 할 수도 있다. 소정 시간이 경과하도록 메시지 입력이 없으면(단계 s313) 채팅 서버로 채팅 메시지를 요청하여 새로운 메시지를 수신받아(s317) 이를 표시한다(s318).3A is a flowchart illustrating a processing procedure of a client process according to an embodiment of the present invention. This process is repeated in time. First, a time counter for counting the elapse of a predetermined period is initialized. The counter may be implemented in hardware or software, and generates a timer event indicating the end of the update cycle by counting a certain update cycle. A message input is checked from the user (step s311), when a message is input, it is received (step s314) and transmitted (step s315). The end of the message input is recognized as an end by, for example, the enter key of the personal computer keyboard or the confirmation key of the mobile communication terminal. Messages sent from multiple clients must be managed by chat server 100 in chronological order as soon as they occur. After one message is transmitted, additional message transmission is possible only after one chat content is received (step s317), so that the overall network load or processing capacity of the chat server 100 according to the message transmission can be more appropriately controlled. can do. However, this aspect is not essential, and the message transmission input to the terminal may be repeated at that time irrespective of receiving the chat content from the server. If there is no message input for a predetermined time to elapse (step s313), a chat message is requested to the chat server to receive a new message (s317), and this is displayed (s318).

그리고 채팅 메시지를 입력하여(s314) 채팅 서버로 송신하고 난 후(s315) 또는 부가 메뉴를 선택하여(s312) 해당 메뉴의 처리(s316)가 끝난 후에는 바로 채팅 메시지를 요청하여 수신한 메시지, 즉, 자신이 송신한 메시지를 표시한다. 이 경우 메시지 입력이 없는 경우에는 주기적으로 채팅 메시지를 수신하지만 자신이 메시지를 입력한 경우에는 곧바로 자신의 메시지를 채팅 메시지로 수신하여 표시한다.After inputting the chat message (s314) and sending it to the chat server (s315) or by selecting the additional menu (s312), after the processing of the menu (s316) is finished, the message received by requesting the chat message, that is, , To display messages sent by you. In this case, if there is no message input, a chat message is periodically received, but if the user inputs a message, the message is immediately received and displayed as a chat message.

그러나 본 발명은 이와 같은 실시예로 한정되지 않으며, 예를 들어 입력한 메시지는 클라이언트 자체에서 에코되어 표시되고 그때그때 서버로 전송되나 채팅 메시지의 수신은 자신이 입력한 메시지 송신에 관계없이 주기적으로 일정하게 이루어지게 할 수도 있다. 나아가 메시지 송신 자체를 일정한 주기로 제한할 수도 있다. 이와 같은 사항은 네트워크 부하 및 채팅 서버의 처리부하와 서비스 품질 사이에서 적절히 선택하여 구현할 수 있다.However, the present invention is not limited to such an embodiment. For example, the input message is echoed and displayed on the client itself, and then transmitted to the server. However, the reception of the chat message is periodically performed regardless of the transmission of the input message. It can be done. Furthermore, the message transmission itself may be limited at regular intervals. This can be implemented by choosing between network load, processing load of chat server and quality of service.

부가적으로 클라이언트 처리 프로세스중의 적절한 시간에 부가 기능의 지원을 위한 기능이 추가될 수 있다. 이와 같은 기능은 특정한 키의 선택에 의해 가능하며, 이와 같은 특정 키가 입력되어 부가 메뉴가 선택되면(s312) 그를 위한 처리 모듈이 실행된다(s316). 이와 같은 부가 기능에는 예를 들면 대화방 밖에 있는 특정한 회원을 초대한다든지 또는 대화방 퇴실, 귓속말 입력 등의 기능이 될 수 있다.In addition, a function may be added for supporting the additional function at an appropriate time during the client processing process. Such a function is possible by selecting a specific key, and when such a specific key is input and an additional menu is selected (s312), a processing module therefor is executed (s316). Such additional functions may be, for example, inviting a specific member outside the chat room, leaving the chat room, or whispering.

도3b는 채팅 서버가 각각의 클라이언트로 컨텐츠를 주기적으로 푸쉬(push)하는 경우의 처리 수순의 일 실시예이다. 이 경우에는 메시지의 입력을 확인하여(s321) 메시지를 입력받아(s322) 송신하거나(s323), 또는 메시지 입력이나 메뉴 선택이 없는 경우에는 새로운 컨텐츠의 도착을 기다려(s326) 이를 표시한다. 즉, 이 경우에는 서버가 하드웨어 또는 소프트웨어적인 타이머 이벤트(timer event)를 기다려 새로운 컨텐츠를 주기적으로 푸쉬하므로 클라이언트 모듈은 단순히 메시지 송신 또는 새로운 컨텐츠의 수신만을 반복하면 된다.3B is an embodiment of a processing procedure in the case where the chat server periodically pushes content to each client. In this case, the input of the message is confirmed (s321) and the message is received (s322) and transmitted (s323), or when there is no message input or menu selection, the display waits for the arrival of new content (s326). That is, in this case, since the server waits for a hardware or software timer event and periodically pushes new content, the client module only needs to repeat message transmission or reception of new content.

본 발명의 또다른 양상에 따라 상기 부가메뉴의 일 예로 소위 "귓속말"이라고 불리는 기능이 구현될 수 있다. 이 같은 기능은 클라이언트 별로 식별자를 할당하거나 또는 IP 등을 기반으로 클라이언트를 식별하여, 채팅 중 메시지 전송 상대방을 지정하고 메시지 내용을 입력하여 이를 채팅서버(100)로 전송하면, 채팅 서버(100)는 본 발명의 바람직한 양상에 따라 각각의 클라이언트와 일대일로 개별적인 통신을 하는 것이 가능하므로, 지정된 클라이언트로 이 메시지를 송신하는 것이 가능하다.According to another aspect of the present invention, a function called "whisper" may be implemented as an example of the additional menu. This function assigns an identifier for each client or identifies a client based on an IP, etc., designates a message transmission counterpart during chat, inputs the message content, and transmits the message to the chat server 100. According to a preferred aspect of the present invention, it is possible to perform one-to-one individual communication with each client, so that it is possible to send this message to a designated client.

본 발명에서 각각의 클라이언트 혹은 채팅 서버에 의한 새로운 채팅 컨텐츠의 요구 시간인 갱신주기는 모두 채팅 서버(100)에 의해 정해지며, 클라이언트의 통신 환경과 처리 성능, 평균 메시지 입력 시간, 서비스 이용자수 및 서비스 정책 등에 따라 동적으로 결정되는데 이용자가 불편함을 느끼지 않는 시간은 대략 5초에서 10초 이내이다.In the present invention, the update period, which is a request time of new chat content by each client or chat server, is determined by the chat server 100, and the communication environment, processing performance, average message input time, number of service users, and service of the client are determined. Dynamically determined according to the policy, the user does not feel uncomfortable time is within about 5 seconds to 10 seconds.

이하에서는 본 발명에 따른 채팅 시스템의 채팅 서버(100)에서 실행되는 서버 프로세스에 대해 상세히 기술하기로 한다. 서버에는 클라이언트로부터 메시지를 수신하는 수신 프로세스와; 수신한 메시지로 채팅 컨텐츠를 생성하는 컨텐츠 생성 프로세스와; 생성된 채팅 컨텐츠를 클라이언트로 송신하는 송신 프로세스; 및 사용자의 접속 정보를 갱신하며, 단말기와 서비스의 상태에 따라 클라이언트의 채팅 컨텐츠 갱신 주기를 결정하는 관리 프로세스들이 수행된다. 이렇게 채팅에 관련된 서버 프로세스들을 분리하고 독립적으로 수행함으로써 두 개 이상의 프로세서를 사용하는 SMP(symmetric multi-processor) 구조의 서버에서 채팅 시스템의 성능을 한층 더 높일 수 있다.Hereinafter, the server process executed in the chat server 100 of the chat system according to the present invention will be described in detail. The server includes a receiving process for receiving a message from a client; A content generation process of generating chat content with the received message; A sending process of sending the generated chat content to the client; And management processes for updating the user's connection information and for determining a chat content update cycle of the client according to the state of the terminal and the service. By separating and independently executing the server processes related to chat, the performance of the chat system can be further improved in a server having a symmetric multi-processor (SMP) structure using two or more processors.

도4는 메시지 수신 프로세스의 일 실시예에 따른 처리 흐름도이다. 도시된 바와 같이 수신 프로세스는 대화방 단위로 처리되며, 대화방이 신설되면 새로운 프로세스가 생성되어 실행이 시작된다. 대화방 소속의 클라이언트로부터의 새 메시지 이벤트가 발생하면(s411) 이를 수신하여(s413), 공유 메모리에 저장한다(s414).채팅 사용자간의 대화 내용이 저장되는 공유 메모리는 일정한 크기를 갖는 FIFO(first in first out) 큐(que)이다. 따라서 수신 프로세스는 대화방 소속의 클라이언트 컴퓨터들이 보내는 메시지를 수신하여 FIFO 형태의 공유 메모리에 저장하는 일을 반복하며, 새로운 메시지는 FIFO의 최상위 주소를 가리키는 포인터에 의해 가리켜진다.4 is a processing flow diagram according to one embodiment of a message receiving process. As shown in the drawing, the receiving process is processed in chat room units, and when a chat room is newly established, a new process is created and execution starts. When a new message event from a client belonging to the chat room occurs (s411), it is received (s413) and stored in the shared memory (s414). The shared memory where conversation contents between chat users are stored is FIFO (first in) having a certain size. first out) que. Thus, the receiving process repeats receiving messages from client computers in the chat room and storing them in shared memory in the form of FIFOs. The new message is pointed to by the pointer to the top address of the FIFO.

도5는 컨텐츠 생성 프로세스의 처리 수순의 일 실시예이다. 이 프로세스는 공유 메모리에 저장된 사용자 간의 대화 내용과 서비스 제공자가 원하는 컨텐츠를 합하여 단말기 특성에 맞는 채팅 컨텐츠를 생성한다. 서비스 제공자가 원하는 컨텐츠는 텍스트 또는 이미지의 형태이며 광고, 문자 방송, 유머, 게임 등이 될 수 있다. 광고, 유머 컨텐츠는 소정의 주기마다 대화 내용 사이에 데이터베이스에 저장된 컨텐츠를 삽입한다. 문자 방송은 지정 시각(예를 들어 방송 시각) 또는 특별한 경우에는 요청 시각(예를 들어 속보, 급보의 경우)에 대화 내용 사이에 수신된 문자방송 컨텐츠를 삽입한다. 게임 진행의 경우에는 게임의 종류에 따라 사용자의 응답 여부와 응답 내용을 분석하여 진행 멘트를 대화 내용 사이에 삽입한다. 이와 같은 컨텐츠들은 대화방의 사용 용도를 확장시키고 보다 부가가치가 높은 서비스를 제공하는 수단이 된다. 서비스 제공자는 이러한 부가 서비스에 대해 사용자별로 회원 가입등을 거쳐 회원 정보를 저장하고 각각의 클라이언트를 식별하여 신청된 부가 서비스를 구별하여 제공할 수 있다. 이때 채팅 컨텐츠 생성 프로세스는 회원 데이터베이스를 액세스하여 각각의 클라이언트별로 맞춤식으로 채팅 컨텐츠를 생성한다.5 is an embodiment of a processing procedure of a content generation process. This process combines the contents of the conversation between the users stored in the shared memory and the contents desired by the service provider to generate chat contents that match the characteristics of the terminal. The content desired by the service provider may be in the form of text or an image, and may be advertising, text broadcasting, humor, games, or the like. Advertisement and humorous content inserts content stored in a database between conversation contents every predetermined period. The text broadcast inserts the received text broadcast content between conversation contents at a designated time (e.g., broadcast time) or in a special case, at a request time (e.g., for breaking news or breaking news). In the case of game progress, the progression is inserted between dialogue contents by analyzing the user's response and the response contents according to the type of game. Such content is a means to expand the use of chat rooms and to provide more value-added services. The service provider may store member information for each additional user through membership registration for each user, identify each client, and provide the additional service requested. At this time, the chat content generation process accesses the member database to generate chat content customized for each client.

대화 내용과 부가 컨텐츠로부터 생성된 채팅 컨텐츠는 사용자의 단말기 별로 알맞은 형태의 컨텐츠로 포매팅되어 생성된다. 또한 무선 단말기내에서도 여러가지 상이한 프로토콜에서 존재하는 상이한 브라우저에 따라 각 브라우저에 맞는 컨텐츠가 포매팅되어 생성된다.The chat content generated from the conversation content and the additional content is generated by formatting the content into a form suitable for each user's terminal. In addition, content suitable for each browser is generated according to different browsers existing in various different protocols in the wireless terminal.

구체적으로 컨텐츠 생성 프로세스는 소정 주기마다 채팅 콘텐츠를 생성하는 것이 바람직하므로 하드웨어 또는 소프트웨어적으로 주기적으로 발생하는 타이머 이벤트를 기다린다. 타이머 이벤트가 발생하면 수신 프로세스와 같이 액세스 가능한 공유 메모리의 최상위 또는 적절한 분량을 읽어 들인다. 또 부가 컨텐츠 별로 삽입 시점인지 여부를 판단한다. 이 판단은 타이머 이벤트에 대한 판단일 수도 있고 문자 방송의 경우에는 특별한 요청 신호의 존재 여부, 또 게임 같은 콘텐츠이 경우에는 특별한 조건의 만족 여부에 의존할 수 있다. 부가 컨텐츠가 삽입되는 경우에는 이를 합하여 포매팅함에 의해 채팅 컨텐츠를 생성한다. 전술한 바와 같이 채팅 컨텐츠는 클라이언트의 종류 및 표준, 프로토콜 등에 따라 적절하게 포매팅될 수 있다.Specifically, the content generation process waits for a timer event that occurs periodically in hardware or software because it is preferable to generate chat content every predetermined period. When a timer event occurs, it reads the top or appropriate amount of shared memory accessible, such as the receiving process. In addition, it is determined whether or not the insertion time is for each additional content. This determination may be a determination on a timer event, and in the case of text broadcasting, may depend on the presence of a special request signal, and in the case of content such as a game, whether a special condition is satisfied. When additional content is inserted, the content is added together to generate chat content. As described above, the chat content may be appropriately formatted according to the type, standard, protocol, etc. of the client.

따라서 요약하면, 본 발명에 따른 채팅 컨텐츠는 서비스 가입 내역에 따라 사용자별로 상이할 수 있으며, 나아가 클라이언트 단말기가 지원하는 프로토콜에 따라 상이하다.Therefore, in summary, the chat content according to the present invention may be different for each user according to the service subscription history, and further, depending on the protocol supported by the client terminal.

도6a 및 도6b는 채팅 컨텐츠 송신 프로세스의 처리 흐름의 일 실시예이다. 이 프로세스는 채팅 클라이언트에서 컨텐츠를 요청받거나 서버에서 컨텐츠를 푸쉬할 때 클라이언트 환경에 맞게 준비된 채팅 컨텐츠를 주기적으로 클라이언트로 송신하는 일을 한다. 도6a에서는 클라이언트의 주기적인 요청에 따라 채팅 서버에 컨텐츠 요청 이벤트가 발생하면 각각의 클라이언트에 대해 단말기 종류에 맞게 컨텐츠를 송신한다. 여기서는 예시적으로 유선 무선 클라이언트만을 구별하였으나 무선 단말기 내에서도 클라이언트와의 통신 프로토콜이나 클라이언트 단말기 종류에 따라 따로 생성된 다양한 채팅 콘텐츠들이 선택적으로 지원될 수 있다. 도6b는 서버가 생성된 채팅 컨텐츠를 주기적으로 클라이언트로 푸쉬하는 경우의 일 예이다. 타이머 이벤트를 기다려 각각의 클라이언트별로 적절한 채팅 컨텐츠를 송신한다.6A and 6B illustrate one embodiment of a processing flow of a chat content transmission process. This process periodically sends the chat content to the client, which is prepared for the client environment, when the content is requested from the chat client or pushed from the server. In FIG. 6A, when a content request event occurs in the chat server according to a client's periodic request, the client transmits content to each client according to the terminal type. Here, only the wired wireless client is distinguished by way of example, but various chat contents generated separately according to the communication protocol or the type of the client terminal with the client may be selectively supported in the wireless terminal. 6B is an example of a case in which the server periodically pushes the generated chat content to the client. Wait for the timer event and send the appropriate chat content for each client.

본 발명에 따른 관리 프로세스는 사용자 관리 프로세스와 시스템 관리 프로세스가 있다.The management process according to the present invention includes a user management process and a system management process.

시스템 관리 프로세스는 서버와 네트워크의 성능 및 사용자 수에 따라 채팅 컨텐츠 갱신 주기를 변경한다. 갱신 주기는 단말기 종류별로 다른 값을 설정할 수 있으며, 시스템의 성능에 비해 사용자의 수가 많아서 컨텐츠 생성 처리 시간이나 컨텐츠 송수신 처리 시간이 채팅 컨텐츠 갱신 주기보다 커질 경우 사용자를 제한하거나 갱신 주기를 크게 하여 시스템의 안정성을 보장한다. 채팅 시스템의 컨텐츠 생성 총 처리 시간이 tp, 컨텐츠 수신 프로세스 총 처리 시간이 tr, 컨텐츠 송신 프로세스 총 처리 시간이 ts, 컨텐츠 갱신 주기가 t1 이고 사용자가 많아질 경우 단말기 갱신 주기가 T 이상으로는 늘리지 않고 사용자를 더 받아들이지 않도록 하는 시스템 관리 프로세스의 처리 수순의 일 에가 도7에 도시된다. 관리 프로세스는 적절한 주기마다 tp, tr, ts 를 산출한다. 컨텐츠 생성 프로세스와 컨텐츠 송신또는 수신 프로세스는 각각 병렬적으로(또는 별개의 프로세스 개념으로) 실행되므로 각각의 한주기 처리 시간(processing time)을 계산하여 이 처리 시간 중의 하나가 갱신 주기(t1)보다 커지면 갱신 주기가 상한선(T)을 넘지 않는 범위에서는 갱신 주기를 소정치(Δt)만큼 계속 증가시킨다. 상한선을 넘는 경우에는 만원 처리를 하게 된다. 만원 처리는 신규로 서비스 이용을 차단하는 방법이 대표적이다. 상한선을 둔 이유는 채팅 컨텐츠 갱신 주기가 지나치게 길어지면 서비스 이용자가 너무 지루하여 서비스 품질에 대한 불만이 고조되기 때문이다.The system management process changes the chat content update cycle according to the server and network performance and the number of users. The update cycle can be set differently according to the type of terminal.If the content generation processing time or content transmission / reception processing time is longer than the chat content update cycle because the number of users is large compared to the performance of the system, the user is restricted or the update cycle is increased. To ensure stability. If the total content creation time of the chat system is tp, the total content processing time of the content reception process is tr, the total content processing time of the content sending process is ts, and the content update cycle is t1 and the number of users increases, the terminal update cycle does not increase beyond T. One of the processing procedures of the system management process for not accepting the user further is shown in FIG. The management process calculates tp, tr, and ts at appropriate intervals. Since the content creation process and the content sending or receiving process are executed in parallel (or in separate process concepts), each one-cycle processing time is calculated so that one of these processing times is greater than the update period t1. As long as the update period does not exceed the upper limit T, the update period is continuously increased by a predetermined value [Delta] t. If it exceeds the upper limit, it will be processed. In the case of 10,000 won treatment, a new method of blocking service use is typical. The reason for the upper limit is that if the chat content update cycle is too long, service users become too bored and the dissatisfaction with service quality is heightened.

도8은 본 발명에 따른 사용자 관리 프로세스의 일실시예를 도시한다. 이동통신사의 서버 중 일부는 사용자 접속정보인 세션 정보를 제공하는 것도 있지만 그렇지 않은 서버도 있다. 따라서 본 발명에 따른 채팅 서버는 컨텐츠 요청 정보나 메시지를 수신할 때마다 로그 파일에 최종 접속 정보를 갱신한다. 사용자 관리 프로세스는 이 최종 접속 정보를 이용하여 통신 두절, 통화 중단, 밧데리 방전 등의 원인으로 클라이언트 중 하나 혹은 몇 개의 서비스 사용이 비정상적으로 종료된 경우 시스템에서 접속정보를 제거하는 기능을 수행하며, 주기적으로 타이머 이벤트에 의해 시작된다. 이와 같은 사용자 관리 프로세스는 비정상적인 종료가 빈번한 이동통신망의 경우 통상 1분 내지 5분의 간격으로 실행되는 것이 바람직하며 채팅 컨텐츠의 생성/송신 주기에 비하여 길다. 비정상 종료의 판정 기준은 최종 접속 사간과 사용한 페이지의 종류이다. 무선 단말기는 프레임을 지원하지 않고 메시지 입력에 긴 시간이 요구되므로 마지막 사용한 페이지의 종류에 따라 비정상 종료 판정 시간을 다르게 계산한다. 예를 들어 부가 메뉴 중 귓속말과 같이 비교적 장시간의 입력 시간이 필요한 페이지가 최종 접속 페이지라면 이를 위한 비정상 종료 판정 시간은 상대적으로 길게 잡힌다. 사용자 페이지의 종류가 p1, p2의 두 가지이고 각각의 비정상 종료 판정 시간을 t1, t2라 하며, 최종 접속 시간이 t0 현재 시간이 t 일 때 사용자 관리 프로세스의 일예가 도8에 도시된다. 전술한 주기의 타이머 이벤트가 발생하면(s810), 사용자 최종 접속 정보를 로그파일로부터 읽고(s820), 최종 접속 페이지에 따라(s830, s840) 최종 접속 후의 경과시간(t-t0)이 각각의 페이지 종류에 따라 설정된 기준 판정 시간(t1, t2) 보다 크다면(s831,s841) 비정상 종료로 처리하고(s832, s842) 해당 사용자를 대화방에서 퇴장한 것으로 처리한다. 이와 같은 처리를 모든 클라이언트 혹은 모든 사용자에 대해 반복함으로써(s850) 하나의 타이머 이벤트에 대한 처리가 종료한다(s860).Figure 8 illustrates one embodiment of a user management process in accordance with the present invention. Some of the carrier's servers provide session information, which is user access information, while others do not. Accordingly, the chat server according to the present invention updates the final access information in the log file every time the content request information or message is received. The user management process uses this final access information to remove the access information from the system when one or several services of the client are abnormally terminated due to communication loss, call interruption, battery discharge, etc. Is started by a timer event. Such a user management process is preferably executed at intervals of 1 to 5 minutes in the case of a mobile communication network which is frequently abnormally terminated, and is longer than the generation / transmission cycle of chat contents. Criteria for abnormal termination are the last connection time and the type of page used. Since the wireless terminal does not support frames and requires a long time to input a message, the abnormal termination determination time is calculated differently according to the type of the last used page. For example, if a page requiring a relatively long input time such as a whisper among the additional menus is a final access page, the abnormal end determination time for this is relatively long. An example of a user management process is shown in FIG. 8 when two kinds of user pages are p1 and p2, and each abnormal termination determination time is t1 and t2, and the final access time is t0 when the current time is t. When the timer event of the aforementioned period occurs (s810), the user last access information is read from the log file (s820), and according to the last access page (s830, s840), the elapsed time (t-t0) after the last access is each page. If it is greater than the reference determination time (t1, t2) set according to the type (s831, s841), it is treated as abnormal termination (s832, s842), and the user is treated as leaving the chat room. By repeating such processing for all clients or all users (s850), the processing for one timer event is terminated (s860).

이상에서 상세히 기술한 바와 같이 본 발명은 채팅 클라이언트와 채팅 서버의 개별적이고 일대일 방식의 접속 프로토콜에 따라 소정 주기에 따른 채팅 메시지의 갱신이 이루어짐에 따라 부가 서비스의 삽입이 용이하고 불안정한 통신망에서 최적의 품질로 채팅 서비스를 제공할 수 있는 매우 유용하고 우수한 채팅 시스템을 제공한다.As described in detail above, the present invention provides an optimal quality in an unstable communication network where insertion of additional services is easy and easy as an update of a chat message is performed according to a predetermined cycle according to a separate and one-to-one connection protocol of a chat client and a chat server. It provides a very useful and excellent chat system that can provide a chat service.

본 발명은 첨부된 도면을 참조하여 바람직한 실시예를 중심으로 기술되었지만 당업자라면 이러한 기재로부터 본 발명의 범주를 벗어남이 없이 많은 다양한 자명한 변형이 가능하다는 것은 명백하다. 따라서 본 발명의 범주는 이러한 많은 변형예들을 포함하도록 기술된 특허청구범위에 의해서 해석되어져야 한다.While the present invention has been described with reference to the accompanying drawings, it will be apparent to those skilled in the art that many various obvious modifications are possible without departing from the scope of the invention from this description. Therefore, the scope of the invention should be construed by the claims described to include many such variations.

Claims (13)

네트워크를 통해 다수의 클라이언트와 접속된 채팅 서버에서 구현된 채팅 시스템에 있어서, 상기 채팅 서버와 각각의 클라이언트가 최소한의 공통 프로토콜을 통해 상호 통신하고; 상기 채팅 시스템이 :A chat system implemented in a chat server connected to a plurality of clients via a network, the chat system comprising: the chat server and each client communicating with each other via a minimum common protocol; The chat system has: 각각의 클라이언트로부터 전송된 메시지를 수신하는 수신 프로세스와;A receiving process for receiving a message sent from each client; 상기 수신한 메시지를 포매팅하는 컨텐츠 생성 프로세스와;A content generation process for formatting the received message; 상기 생성된 프로세스를 소정의 갱신주기마다 각각의 클라이언트로 송신하는 송신 프로세스;A transmission process for transmitting the generated process to each client every predetermined update period; 를 포함하는 것을 특징으로 하는 컴퓨터상에서 구현된 채팅 시스템.Chat system implemented on a computer comprising a. 청구항 1에 따른 채팅 시스템에 있어서 :In the chat system according to claim 1: 상기 컨텐츠 생성 프로세스가 수신한 메시지를 클라이언트 종류별로 포매팅하는 것을 특징으로 하는 컴퓨터상에서 구현된 채팅 시스템.And a message received by the content generation process for each type of client. 청구항 1에 따른 채팅 시스템에 있어서, 상기 채팅 시스템이 :The chat system according to claim 1, wherein the chat system is: 상기 각각의 프로세스 중의 하나 혹은 각각의 처리 시간과 상기 갱신 주기와의 비교에 기초하여 상기 갱신주기를 증감시키는 시스템 관리 프로세스;A system management process of incrementing or decrementing the update period based on a comparison of one or each processing time of the respective processes with the update period; 를 더 포함하는 것을 특징으로 하는 컴퓨터 상에서 구현된 채팅 시스템.The chat system implemented on a computer, further comprising. 청구항 1에 따른 채팅 시스템에 있어서, 상기 채팅 시스템이 :The chat system according to claim 1, wherein the chat system is: 클라이언트별 최종 접속 정보에 기초하여 클라이언트의 비정상 종료를 판정하여 종료처리하는 사용자 관리 프로세스;A user management process of determining and terminating abnormal termination of the client based on the final connection information for each client; 를 더 포함하는 것을 특징으로 하는 컴퓨터 상에서 구현된 채팅 시스템.The chat system implemented on a computer, further comprising. 청구항 1, 2, 3, 4 중의 어느 한 항에 따른 채팅 시스템에 있어서 :In a chat system according to any one of claims 1, 2, 3, 4: 상기 컨텐츠 생성 프로세스가: 상기 수신 프로세스의 수신 메시지와 서비스 제공자에 의해 제공되는 부가 서비스 컨텐츠를 합하여 컨텐츠를 생성하는 것을 특징으로 하는 컴퓨터상에서 구현된 채팅 시스템.And wherein the content generation process: generates content by adding the received message of the receiving process and the additional service content provided by the service provider. 청구항 1, 2, 3, 4 중의 어느 한 항에 따른 채팅 시스템에 있어서 :In a chat system according to any one of claims 1, 2, 3, 4: 상기 송신 프로세스가 :The sending process is: 소정 갱신 주기마다의 각각의 클라이언트의 컨텐츠 요청신호에 응답하여 컨텐츠를 송신하는 것을 특징으로 하는 컴퓨터상에서 구현된 채팅 시스템.And the content is transmitted in response to a content request signal of each client at every predetermined update period. 청구항 1, 2, 3, 4 중의 어느 한 항에 따른 채팅 시스템에 있어서 :In a chat system according to any one of claims 1, 2, 3, 4: 상기 송신 프로세스가 :The sending process is: 소정 갱신 주기마다 각각의 클라이언트로 컨텐츠를 푸쉬(push)하여 송신하는 것을 특징으로 하는 컴퓨터상에서 구현된 채팅 시스템.A chat system implemented on a computer, characterized in that the content is pushed and transmitted to each client every predetermined update period. 청구항 8(은)는 설정등록료 납부시 포기되었습니다.Claim 8 has been abandoned upon payment of a registration fee. 청구항 1, 2, 3, 4 중의 어느 한 항에 따른 채팅 시스템에 있어서 :In a chat system according to any one of claims 1, 2, 3, 4: 상기 수신 프로세스가 각각의 클라이언트로부터 수신한 메시지를 선입선출 공유 메모리에 순차적으로 저장하고;The receiving process sequentially stores messages received from each client in a first-in, first-out shared memory; 상기 컨텐츠 생성 프로세스가 상기 선입선출 공유 메모리로부터 메시지를 독출하여 이를 클라이언트 종류별로 포매팅하여 채팅 컨텐츠를 생성하는 것을 특징으로 하는 컴퓨터상에서 구현된 채팅 시스템.And the content generation process reads a message from the first-in, first-out shared memory and formats it for each client type to generate chat content. 청구항 9(은)는 설정등록료 납부시 포기되었습니다.Claim 9 was abandoned upon payment of a set-up fee. 청구항 2에 따른 채팅 시스템에 있어서 :In the chat system according to claim 2: 상기 부가 서비스 컨텐츠가 클라이언트별로 상이하게 삽입가능하도록 회원 데이터베이스에 등록된 부가 서비스 등록 정보를 참조하여 삽입되는 것을 특징으로 하는 컴퓨터상에서 구현된 채팅 시스템.And the supplementary service content is inserted with reference to the supplementary service registration information registered in the member database so that the supplementary service content can be inserted for each client differently. 청구항 10(은)는 설정등록료 납부시 포기되었습니다.Claim 10 was abandoned upon payment of a set-up fee. 네트워크를 통해 채팅 서버로 연결된 클라이언트에서 실행 가능한 채팅 지원 방법에 있어서 :In the chat support method that can be executed in the client connected to the chat server through the network: a) 메시지 입력을 체크하여 메시지가 있으면 이를 입력받아 입력이 종료되면 이를 송신하는 단계와;a) checking message input and receiving a message if there is a message and transmitting it when the input is completed; b) 부가 메뉴 선택을 체크하여 선택되면 부가 메뉴 모듈을 실행하는 단계와;b) checking a submenu selection and if selected, executing the submenu module; c) 갱신 주기마다 채팅 서버로부터 채팅 메시지를 수신하여 수신한 새로운 채팅 메시지를 표시하는 단계;c) receiving a chat message from the chat server at every update period and displaying a new chat message received; 를 포함하는 것을 특징으로 하는 클라이언트 컴퓨터에서 실행 가능한 채팅 지원 방법.Chat support method executable in the client computer comprising a. 청구항 11(은)는 설정등록료 납부시 포기되었습니다.Claim 11 was abandoned upon payment of a set-up fee. 청구항 10에 있어서; 상기 단계 c)가The method of claim 10; Step c) 갱신 주기의 도래를 판단하여 채팅 서버로 새로운 채팅 메시지를 요청하여 수신한 새로운 채팅 메시지를 표시하는 단계; 인 것을 특징으로 하는 클라이언트 컴퓨터에서 실행 가능한 채팅 지원 방법.Determining the arrival of the update cycle and requesting a new chat message from the chat server to display the received new chat message; Chat support method executable on the client computer, characterized in that. 청구항 12(은)는 설정등록료 납부시 포기되었습니다.Claim 12 was abandoned upon payment of a set-up fee. 청구항 10에 있어서; 상기 단계 c)가The method of claim 10; Step c) 채팅 서버로부터 갱신 주기마다 푸쉬되는 새로운 채팅 메시지를 수신하여 표시하는 단계; 인 것을 특징으로 하는 클라이언트 컴퓨터에서 실행 가능한 채팅 지원 방법.Receiving and displaying a new chat message pushed at every update period from the chat server; Chat support method executable on the client computer, characterized in that. 청구항 13(은)는 설정등록료 납부시 포기되었습니다.Claim 13 was abandoned upon payment of a set-up fee. 청구항 10, 11 또는 12 중의 어느 한 항에 따른 채팅 지원 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 저장 매체.A computer-readable storage medium having recorded thereon a program for realizing a chat supporting method according to any one of claims 10, 11 or 12.
KR10-2000-0066846A 2000-11-10 2000-11-10 real time chatting system between plural people through computers connected via network and method for the same, and storage medium storing program implementing the same method KR100397286B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2000-0066846A KR100397286B1 (en) 2000-11-10 2000-11-10 real time chatting system between plural people through computers connected via network and method for the same, and storage medium storing program implementing the same method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2000-0066846A KR100397286B1 (en) 2000-11-10 2000-11-10 real time chatting system between plural people through computers connected via network and method for the same, and storage medium storing program implementing the same method

Publications (2)

Publication Number Publication Date
KR20020036597A KR20020036597A (en) 2002-05-16
KR100397286B1 true KR100397286B1 (en) 2003-09-06

Family

ID=19698404

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-0066846A KR100397286B1 (en) 2000-11-10 2000-11-10 real time chatting system between plural people through computers connected via network and method for the same, and storage medium storing program implementing the same method

Country Status (1)

Country Link
KR (1) KR100397286B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100744667B1 (en) * 2003-12-01 2007-08-02 (주)휴리브 multilateral voice call system and control method thereof
KR100751413B1 (en) * 2006-01-05 2007-08-23 엘지전자 주식회사 Method for communicating of group using mobile terminal

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999003034A1 (en) * 1997-07-06 1999-01-21 Vocaltec Communications Ltd. System and method for generating a chat room over a computer network
WO1999009708A2 (en) * 1997-08-14 1999-02-25 Nokia Networks Oy Centralized management of communication devices
KR19990071723A (en) * 1995-11-28 1999-09-27 에르링 블롬메, 크라스 노린 Cellular telephone network with only message service conversations with other networks
KR20000024282A (en) * 2000-02-02 2000-05-06 우종현 System and method for providing a chatting service with time-variant information
KR20000072770A (en) * 2000-09-26 2000-12-05 이상교 Voice chatting system among PCs and mobile phones through wire or wireless network
KR20010045016A (en) * 1999-11-02 2001-06-05 조정남 Method for providing customized service by using integrated wire and wireless multimedia through private communication server

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990071723A (en) * 1995-11-28 1999-09-27 에르링 블롬메, 크라스 노린 Cellular telephone network with only message service conversations with other networks
WO1999003034A1 (en) * 1997-07-06 1999-01-21 Vocaltec Communications Ltd. System and method for generating a chat room over a computer network
WO1999009708A2 (en) * 1997-08-14 1999-02-25 Nokia Networks Oy Centralized management of communication devices
KR20010045016A (en) * 1999-11-02 2001-06-05 조정남 Method for providing customized service by using integrated wire and wireless multimedia through private communication server
KR20000024282A (en) * 2000-02-02 2000-05-06 우종현 System and method for providing a chatting service with time-variant information
KR20000072770A (en) * 2000-09-26 2000-12-05 이상교 Voice chatting system among PCs and mobile phones through wire or wireless network

Also Published As

Publication number Publication date
KR20020036597A (en) 2002-05-16

Similar Documents

Publication Publication Date Title
US7283805B2 (en) Methods and systems for providing application level presence information in wireless communication
JP4555537B2 (en) Chat message communication apparatus and method
CA2429146C (en) Presence and session handling information
EP1397923B1 (en) Mobile instant messaging and presence service
US9559867B2 (en) Contact group dynamics in networked communication devices
US20030041101A1 (en) Presence watcher proxy
KR101298956B1 (en) A method and apparatus for providing enhanced features to multicast content services and multiplayer gaming services
US20090221307A1 (en) Group communications
EP1820316B1 (en) Methods, systems, and computer program products for updating availability information in voice-call applications
US20100029312A1 (en) Mobile originated internet relay chat
EP1571791B1 (en) Mobile communication system and method for providing a real time messenger service among mobile communication terminals
US20060064307A1 (en) Method and system for session management wherein a client session identifier is used
KR20060045585A (en) Method of and apparatus for server-side management of buddy lists in presence based services provided by a communication system
US20090006528A1 (en) Availability determination of a party to receive a call prior to call setup
CN105376136B (en) Instant communication method, server and system
JP2003281069A (en) Community generation system
KR100397286B1 (en) real time chatting system between plural people through computers connected via network and method for the same, and storage medium storing program implementing the same method
KR20030047068A (en) Business method and system for providing short massage service by dynamic virtual phone number and computer readable medium having stored thereon computer executable instruction for performing the method
KR100673169B1 (en) Mobile instant messaging service system and method thereof
EP1806904A1 (en) Method for managing electronic information, the related user terminal and the related information source
KR20030067319A (en) Realtime User State Information Management Method for using SMS in Instant Messaging System based on Wireless Internet
WO2008094639A1 (en) Systems and methods for distributing messages to mobile devices
CA2536727C (en) Method and system for managing destination addresses
WO2006050751A1 (en) Provision of a multimedia message
KR20060112916A (en) Method and system for providing messesing service

Legal Events

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

Payment date: 20060821

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee