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 PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 103
- 230000008569 process Effects 0.000 claims abstract description 78
- 238000012545 processing Methods 0.000 claims abstract description 32
- 230000005540 biological transmission Effects 0.000 claims abstract description 19
- 230000002159 abnormal effect Effects 0.000 claims abstract description 8
- 230000004044 response Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 abstract description 18
- 238000007726 management method Methods 0.000 description 15
- 238000010295 mobile communication Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/50—Business processes related to the communications industry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3055—Monitoring 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
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
본 발명은 인터넷 상의 통신에 관련되며, 특히 유·무선 인터넷을 통한 다자간 실시간 대화 통신 방식에 관련된 것이다.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)
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)
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)
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 |
-
2000
- 2000-11-10 KR KR10-2000-0066846A patent/KR100397286B1/en not_active IP Right Cessation
Patent Citations (6)
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 | |
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 | |
KR100865334B1 (en) | Method and system for session management wherein a client session identifier is used | |
KR20030067319A (en) | Realtime User State Information Management Method for using SMS in Instant Messaging System based on Wireless Internet | |
KR100673169B1 (en) | Mobile instant messaging service system and method thereof | |
CA2536727C (en) | Method and system for managing destination addresses | |
WO2008094639A1 (en) | Systems and methods for distributing messages to mobile devices | |
WO2006050751A1 (en) | Provision of a multimedia message | |
KR100381452B1 (en) | A chatting gateway system for compatibly linking both internet and wireless network | |
EP1806904A1 (en) | Method for managing electronic information, the related user terminal and the related information source | |
WO2006136652A1 (en) | Method, computer program and server system for communicating within a community |
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 |