KR20220137408A - 서버 및 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법 - Google Patents

서버 및 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법 Download PDF

Info

Publication number
KR20220137408A
KR20220137408A KR1020210043461A KR20210043461A KR20220137408A KR 20220137408 A KR20220137408 A KR 20220137408A KR 1020210043461 A KR1020210043461 A KR 1020210043461A KR 20210043461 A KR20210043461 A KR 20210043461A KR 20220137408 A KR20220137408 A KR 20220137408A
Authority
KR
South Korea
Prior art keywords
message
subscription channel
user
subscription
user terminal
Prior art date
Application number
KR1020210043461A
Other languages
English (en)
Other versions
KR102527601B1 (ko
Inventor
이상규
Original Assignee
이상규
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이상규 filed Critical 이상규
Priority to KR1020210043461A priority Critical patent/KR102527601B1/ko
Priority to US17/711,584 priority patent/US11870746B2/en
Publication of KR20220137408A publication Critical patent/KR20220137408A/ko
Application granted granted Critical
Publication of KR102527601B1 publication Critical patent/KR102527601B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1822Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • G06Q50/30
    • 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/50Business processes related to the communications industry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/212Monitoring or handling of messages using filtering or selective blocking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/216Handling conversation history, e.g. grouping of messages in sessions or threads

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Operations Research (AREA)

Abstract

서버에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법이 제공된다. 상기 방법은 제1 사용자에 상응하는 제1 사용자 단말로부터 제2 사용자에 상응하는 제2 사용자 단말로의 메시지 전송 요청을 수신하는 단계; 상기 수신한 메시지를 파싱하여 참조할 구독 채널을 추출하는 단계; 구독 채널 저장소에 저장된 구독 채널을 참조하여 상응하는 클라이언트 핸들러를 독출하는 단계; 및 상기 독출한 클라이언트 핸들러를 통해 상응하는 제1 및 제2 사용자 단말로 메시지를 전송하는 단계를 포함한다.

Description

서버 및 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법{METHOD FOR CHATTING MESSAGES BY TOPIC BASED ON SUBSCRIPTION CHANNEL REFERENCE IN SERVER AND USER DEVICE}
본 발명은 서버 및 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법에 관한 것이다.
최근 초고속 무선 네트워크 기술 및 다양한 종류의 스마트 단말이 보급됨에 따라, 이를 이용한 채팅 서비스의 활용이 증가하고 있다. 채팅 서비스는 인터넷과 같은 네트워크에 기초하여 두 명 이상의 사용자가 채팅방을 개설하고, 개설된 채팅방 내에서 실시간 인스턴트 메시지 교환을 수행하는 서비스이다.
한편, 메신저는 구조상 메시지 단절이라는 치명적인 약점이 있다. 여기에서 메시지 단절이라 함은 타임라인 상에서 대화가 진행되는 중 다른 주제로 대화 내용이 전환되어, 이전 대화 주제가 단절되는 것을 말한다.
이러한 메시지 단절 현상은 하나의 채팅방 내에서 다양한 주제의 메시지가 혼재되어 발생하는 구조적인 문제로, 타임라인 상에 메시지가 뒤죽박죽 섞이게 되어 이슈 관리를 어렵게 한다. 즉, 채팅방에서 하나의 이슈를 타임라인 상에서 파악하기 위해서는 누더기가 된 메시지를 일일이 검색해야만 하는 문제가 있다.
공개특허공보 제10-2016-0075457호(2016.06.29)
주제를 기반으로 메시지를 생성하면 채팅방 내 여러 주제가 뒤섞이는 문제를 해소할 수 있다. 하지만, 채팅 시스템의 구조상 이슈만큼 채팅방을 계속 만들 수는 없다. 왜냐하면, 구독 정보는 서버 메모리에 Static하게 계속 상주하므로, 구독 정보를 계속 생성하게 되면 리소스 부족으로 서버는 다운될 것이기 때문이다.
이러한 문제를 해소하기 위하여, 본 발명은 기 생성된 구독 채널을 참조하는 방식으로 시스템의 구조적인 문제를 해결하여, 주제를 기반으로 '스레드'를 생성하여 채팅방 내 여러 주제가 혼재하는 메시지 단절 문제를 해소할 수 있는 서버 및 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법을 제공하는 것을 목적으로 한다.
다만, 본 발명이 해결하고자 하는 과제는 상기된 바와 같은 과제로 한정되지 않으며, 또다른 과제들이 존재할 수 있다.
상술한 과제를 해결하기 위한 본 발명의 제1 측면에 따른 서버에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법은 제1 사용자에 상응하는 제1 사용자 단말로부터 제2 사용자에 상응하는 제2 사용자 단말로의 메시지 전송 요청을 수신하는 단계; 상기 수신한 메시지를 파싱하여 참조할 구독 채널을 추출하는 단계; 구독 채널 저장소에 저장된 구독 채널을 참조하여 상응하는 클라이언트 핸들러를 독출하는 단계; 및 상기 독출한 클라이언트 핸들러를 통해 상응하는 제1 및 제2 사용자 단말로 메시지를 전송하는 단계를 포함한다.
본 발명의 일부 실시예에서, 상기 메시지는 주제와 구독 채널로 구성된 메시지 헤더 영역과, 상기 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성될 수 있다.
본 발명의 일부 실시예에서, 상기 제1 사용자에 상응하는 제1 사용자 단말로부터 제2 사용자에 상응하는 제2 사용자 단말로의 메시지 전송 요청을 수신하는 단계는, 상기 제1 사용자 단말이 전송하고자 하는 메시지의 주제와, 상기 제2 사용자 단말에 상응하는 구독 채널을 포함하는 메시지 헤더 영역과, 상기 메시지 헤더 영역에 종속되는 적어도 하나의 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지 전송 요청을 수신할 수 있다.
본 발명의 일부 실시예에서, 상기 수신한 메시지를 파싱하여 구독 채널을 추출하는 단계는, 상기 제1 사용자에 상응하는 구독 채널을 추출하는 단계; 및 상기 제2 사용자에 상응하는 구독 채널을 추출하는 단계를 포함할 수 있다.
본 발명의 일부 실시예에서, 상기 제2 사용자는 복수의 사용자, 복수의 그룹 또는 적어도 하나의 사용자 및 그룹에 해당하고, 상기 제1 사용자에 상응하는 제1 사용자 단말로부터 제2 사용자에 상응하는 제2 사용자 단말로의 메시지 전송 요청을 수신하는 단계는, 상기 제1 사용자 단말이 전송하고자 하는 메시지의 주제와, 상기 제2 사용자인 복수의 사용자에 상응하는 구독 채널, 상기 복수의 그룹에 상응하는 구독 채널 및 상기 사용자 및 그룹에 각각 상응하는 구독 채널 중 적어도 하나를 포함하는 메시지 헤더 영역과, 상기 메시지 헤더 영역에 종속되는 적어도 하나의 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지 전송 요청을 수신할 수 있다.
본 발명의 일부 실시예에서, 상기 수신한 메시지를 파싱하여 구독 채널을 추출하는 단계는, 상기 제1 사용자에 상응하는 구독 채널을 추출하는 단계; 및 상기 제2 사용자인 복수의 사용자에 상응하는 구독 채널, 상기 복수의 그룹에 상응하는 구독 채널 및 상기 사용자 및 그룹에 각각 상응하는 구독 채널 중 해당되는 적어도 하나의 구독 채널을 추출하는 단계를 포함할 수 있다.
본 발명의 일부 실시예에서, 상기 독출한 클라이언트 핸들러를 통해 제1 및 제2 사용자 단말로 메시지를 전송하는 단계는, 상기 복수의 사용자에 상응하는 각각의 구독 채널로 전송하거나, 상기 복수의 그룹에 상응하는 각각의 구독 채널로 전송하거나, 상기 적어도 하나의 사용자 및 그룹에 상응하는 각각의 구독 채널에 상응하는 클라이언트 핸들러를 통해 상기 메시지를 전송할 수 있다.
또한, 본 발명의 제2 측면에 따른 구독 채널 참조 기반의 주제별 메시지 채팅 제공이 가능한 서버는 통신모듈, 메모리 및 상기 메모리에 저장된 프로그램을 실행시키는 프로세서를 포함하고, 상기 프로세서는 상기 프로그램을 실행시킴에 따라, 상기 통신모듈이 제1 사용자에 상응하는 제1 사용자 단말로부터 제2 사용자에 상응하는 제2 사용자 단말로의 메시지 전송 요청을 수신하면, 상기 수신한 메시지를 파싱하여 참조할 구독 채널을 추출하고, 구독 채널 저장소에 저장된 구독 채널을 참조하여 상응하는 클라이언트 핸들러를 독출한 후, 상기 통신모듈을 통해 상기 독출한 클라이언트 핸들러를 통해 상응하는 제1 및 제2 사용자 단말로 메시지를 전송한다.
또한, 본 발명의 제3 측면에 따른 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법은 메시지의 주제와 구독 채널로 구성된 메시지 헤더 영역과, 상기 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지를 생성하는 단계; 적어도 하나의 타 사용자 및 그룹에 상응하는 타 사용자 단말로의 상기 메시지 전송을 서버로 요청하는 단계; 및 상기 메시지가 타 사용자 단말에 상응하는 구독 채널을 통해 전송됨에 따라, 상기 사용자 단말에 상응하는 구독 채널을 통해 상기 메시지가 제공되는 단계를 포함하고, 상기 메시지는 서버에 의해 파싱되어 구독 채널 저장소를 통해 참조할 사용자 단말 및 타 사용자 단말에 상응하는 클라이언트 핸들러가 독출되고, 상기 독출된 클라이언트 핸들러를 통해 상응하는 사용자 단말 및 타 사용자 단말로 상기 메시지가 전송된다.
본 발명의 일부 실시예에서, 상기 메시지의 주제와 구독 채널로 구성된 메시지 헤더 영역과, 상기 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지를 생성하는 단계는, 상기 타 사용자 단말로 전송하고자 하는 메시지의 주제와, 상기 타 사용자 단말에 상응하는 구독 채널을 포함하는 메시지 헤더 영역과, 상기 메시지의 헤더 영역에 종속되는 적어도 하나의 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지를 생성할 수 있다.
본 발명의 일부 실시예에서, 상기 타 사용자는 복수의 사용자, 복수의 그룹 또는 적어도 하나의 사용자 및 그룹에 해당하고, 상기 메시지의 주제와 구독 채널로 구성된 메시지 헤더 영역과, 상기 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지를 생성하는 단계는, 상기 타 사용자 단말로 전송하고자 하는 메시지의 주제와, 상기 복수의 타 사용자에 상응하는 구독 채널, 상기 복수의 그룹에 상응하는 구독 채널 및 상기 타 사용자 및 그룹에 각각 상응하는 구독 채널 중 적어도 하나를 포함하는 메시지 헤더 영역과, 상기 메시지 헤더 영역에 종속되는 적어도 하나의 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지를 생성할 수 있다.
본 발명의 일부 실시예에서, 상기 메시지는 서버에 의해 파싱됨에 따라, 구독 채널 저장소를 통해 참조할 사용자 단말에 상응하는 구독 채널이 추출되며, 상기 복수의 타 사용자에 상응하는 구독 채널, 상기 복수의 그룹에 상응하는 구독 채널 및 상기 타 사용자 및 그룹에 각각 상응하는 구독 채널 중 해당되는 적어도 하나의 구독 채널이 추출될 수 있다.
본 발명의 일부 실시예에서, 상기 메시지는 상기 복수의 타 사용자에 상응하는 각각의 구독 채널로 전송되거나, 상기 복수의 그룹에 상응하는 각각의 구독 채널로 전송되거나, 상기 적어도 하나의 타 사용자 및 그룹에 상응하는 각각의 구독 채널에 상응하는 클라이언트 핸들러를 통해 전송될 수 있다.
상술한 과제를 해결하기 위한 본 발명의 다른 면에 따른 컴퓨터 프로그램은, 하드웨어인 컴퓨터와 결합되어 상기 주제별 메시지 채팅 방법을 위한 프로그램을 실행하며, 컴퓨터 판독가능 기록매체에 저장된다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
상술한 본 발명에 의하면, 기 생성된 구독 채널의 재사용을 통해 시스템의 부하를 줄이고 효율성을 높일 수 있다. 또한, 데이터가 주제 및 구독 채널 그룹 기반으로 생성되므로, 정확히 주제에 상응하는 메시지가 유통되어 데이터 히스토리 및 메시지의 내용을 용이하게 파악할 수 있다.
또한, 구독 채널을 새롭게 생성하지 않고, 구독 채널 재사용을 통해, 모든 경우의 수만큼 무한한 조합으로 새로운 구독 그룹을 만들 수 있어, 전송 대상 메시지에 대한 다양한 수신자 그룹을 생성할 수 있다. 즉, 구독 채널의 개수가 N개이면 N의 N승(
Figure pat00001
만큼 조합을 생성할 수 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 서버에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법의 순서도이다.
도 2는 구독 채널 저장소를 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에서의 메시지의 구조를 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법의 순서도이다.
도 5는 본 발명의 일 실시예에 따른 구독 채널 참조 기반의 주제별 메시지 채팅 제공 시스템을 설명하기 위한 도면이다.
도 6은 사용자 간의 1:1 채팅 상황의 결과를 도시한 도면이다.
도 7은 그룹 사용자 간의 채팅 상황의 결과를 도시한 도면이다.
도 8은 그룹 및 개인 사용자를 모두 포함하여 메시지를 전송한 결과를 도시한 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
본 발명은 서버(100) 및 사용자 단말(200, 300)에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법에 관한 것이다.
채팅 서비스는 구독을 통하여 사람들 간의 묶음 단위를 만들고 이 묶음 단위는 하나의 구독 채널이 된다. 이러한 구독(Subscribe) 개념은 컴퓨팅에서는 공지된 개념이다. 일반적으로 채팅 서비스에서는 채팅방과 구독을 연계한다. 예를 들어, 1대1 채팅방일 경우에는 상대방과 내가 각각 구독을 한 경우가 된다.
즉, 구독이란 개념은 채팅 데이터를 전송하는데 있어 데이터의 최종 목적지로서 중요한 기술적 개념이다.
채팅 서비스에서 채팅방은 정적인 구성요소이다. 일 예로, 1대1 채팅방의 경우, 시간이 지날수록 데이터가 계속하여 쌓이게 된다. 또한, 1대다 채팅방의 경우, 채팅방에 참여한 사용자의 수가 많으면 많을수록 각 멤버들을 모두 기억하기는 쉽지 않다.
이 경우, 만약 기 구성된 채팅방 내 멤버를 대상으로 하는 1대다 채팅이 발생하는 경우, 기 구성된 채팅방을 기억하기 쉽지 않아 다시 멤버를 초대하여 새로운 채팅방을 만들게 된다. 또한, 채팅방의 이름을 통해 채팅방의 목적을 인지하여 채팅방 내 멤버를 모두 기억하고 있다 하더라도, 새로운 목적의 대화 필요성이 발생하게 되면 채팅방을 지속적으로 만들게 된다.
또한, 하나의 채팅방 내에서도 다양한 주제의 대화를 주고받게 되는데, 일상적인 대화의 경우에는 크게 문제가 되지 않을 수도 있으나, 업무용 메신저 내 채팅방의 경우에는 하나의 채팅방 내에서 다양한 주제의 메시지가 오고 갈 경우 메시지 단절 문제가 발생하게 되고, 단절된 메시지를 검색하는데 추가적인 시간을 소요해야만 하는바, 이는 결국 업무의 비효율성이 높아지게 되는 원인으로 작용하게 된다.
이러한 문제를 해소하기 위해 새로운 채팅방을 주제별로 계속하여 새롭게 생성하는 것을 고려할 수 있으며, 주제별로 채팅방을 생성하게 되면 주제별로 메시지 '스레드'가 생성되어 메시지 단절로 인한 메시지 파편화를 방지할 수 있으며, 타임라인에 따라 이슈의 효율적인 관리가 가능하게 된다.
하지만, 채팅방을 생성하게 되면 구성원 간의 구독이 발생하고, 구독의 결과로 구독 채널이 생성되는데, 구독 채널 정보는 서버의 메모리 상에 상주하기 때문에, 결국 구독이 과다하게 발생하게 되면 서버 상의 구독 채널이 늘어나게 되고, 늘어난 구독 채널만큼 시스템에는 과부하가 발생하게 된다.
즉, 새로운 채팅방이 계속 생성되어 구독 채널이 계속 생성된다는 것은 서버 시스템에서 과다한 데이터 점유가 발생하여 메모리 및 성능에 나쁜 영향이 발생하게 된다.
즉, 본 발명의 일 실시예는 기 생성된 구독 채널을 참조하는 방식을 통해, 구독 채널이 계속하여 생성되는 기존의 시스템적인 문제를 해소함과 동시에, 제목(주제)을 기반으로 생성된 수신자(또는 수신 그룹) 하에 메시지를 생성하여, 단일 제목을 가진 메시지 공간을 별도로 생성되도록 하여, 여러 주제가 뒤섞이는 문제를 해소할 수 있다.
이하에서는 도 1 내지 도 4를 참조하여 본 발명의 일 실시예에 따른 구독 채널 참조 기반의 주제별 메시지 채팅 방법에 대해 설명하도록 한다.
도 1은 본 발명의 일 실시예에 따른 서버(100)에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법의 순서도이다.
먼저, 서버(100)는 제1 사용자에 상응하는 제1 사용자 단말(200)로부터 제2 사용자에 상응하는 제2 사용자 단말(300)로의 메시지 전송 요청을 수신한다(S110).
여기에서, 사용자 단말(200, 300)은 서버(100)에 의해 제공되는 채팅 서비스를 통해 구독 채널이 생성되어 채팅 서비스를 제공받는 단말이다. 예를 들어, 채팅 서비스는 인스턴트 메시지 서비스일 수 있다. 인스턴트 메시지 서비스는 네트워크를 통한 데이터 통신을 이용하여 실시간으로 인스턴트 메시지를 중계하는 서비스이다.
한편, 본 발명에서 제1 사용자는 메시지를 전송하고자 하는 사용자를 의미하고, 제1 사용자에 상응하는 사용자 단말은 제1 사용자 단말(200)이라 지칭하도록 한다. 또한, 제2 사용자는 메시지를 수신하고자 하는 사용자를 의미하고, 제2 사용자에 상응하는 사용자 단말은 제2 사용자 단말(300)이라 지칭하도록 한다. 이때, 제2 사용자는 1명의 사용자일 수도 있고, 복수의 사용자일 수도 있고, 복수의 사용자들의 그룹일 수도 있다. 제1 사용자와 제2 사용자는 각각 특정인으로 한정되는 개념이 아니며, 메시지의 송수신 상황에 따라 제1 사용자는 제2 사용자가 될 수도 있고, 그 반대가 될 수도 있음은 물론이다.
다음으로, 서버(100)는 수신한 메시지를 파싱하여 참조할 구독 채널을 추출하고(S120), 구독 채널 저장소에 저장된 구독 채널을 참조하여 상응하는 클라이언트 핸들러를 독출한다(S130).
도 2는 구독 채널 저장소를 설명하기 위한 도면이다.
일 실시예로, 서버(100)는 각각의 사용자가 채팅 서비스 가입시 각 사용자를 구독 처리한다. 각 사용자는 다양한 사용자 단말(예를 들어, 모바일, 데스크탑, 웹 기반 단말 등)을 소유하는데, 서버(100)는 이러한 다양한 사용자 단말의 묶음에 대하여 사용자별 구독 채널을 생성한다.
또한, 서버(100)는 각각의 사용자들의 묶음인 그룹을 대상으로 하여 구독 채널을 생성한다. 여기에서 그룹별 구독 채널은 사용자들의 요청에 따라 기 생성된 채팅방을 의미한다. 그룹은 조직 단위일 수도 있고, 프로젝트와 같은 비 조직기반의 사용자 그룹을 의미한다.
구독 채널 저장소는 사용자별 구독 채널과 그룹별 구독 채널을 저장하고 있으며, 사용자별 구독 채널과 이에 상응하는 클라이언트 핸들러를 키-값(Key-Value) 형식으로 저장한다. 클라이언트 핸들러는 외부의 디바이스와 인터페이스를 담당하는데, 접근하는 사용자 단말당 각각의 핸들러가 존재한다.
일 예로, 1번 사용자의 구독 채널(User/1)을 키로 저장하고, 이에 상응하는 클라이언트 핸들러 'Android', 'iPhone', 'Windows'를 값으로 저장한다. 여기에서 서버(100)는, 사용자의 클라이언트 핸들러가 신규 사용될 때마다 값으로 저장할 수 있다. 즉, 1번 사용자가 최초 'Android'로 서비스 가입 및 접속시 1번 사용자의 구독 채널(User/1)과 'Android'를 키-값으로 저장하고, 이후 1번 사용자가 'iPhone'으로 재접속시 클라이언트 핸들러에 'iPhone'을 추가한다.
만약, 2번 사용자가 1번 사용자에게 메시지를 전달하는 경우, 메시지는 1번 사용자의 클라이언트 핸들러를 통하여 각각의 'Android', 'iPhone', 'Windows' 기반의 사용자 단말로 전달된다.
또한, 구독 채널 저장소는 그룹별 구독 채널과 그룹 내 포함된 사용자들에 상응하는 클라이언트 핸들러를 키-값의 형식으로 저장한다.
일 예로, 제1 그룹은 1번 사용자와 4번 사용자가 참여하고 있는 채팅방이고, 제2 그룹은 2번 사용자와 3번 사용자가 참여하고 있는 채팅방이며, 이에 상응하는 구독채널(Group/1, Group/2)이 구독 채널 저장소에 키로 저장된다. 또한, 서버(100)는 1번 사용자가 이용한 클라이언트 핸들러와 4번 사용자가 이용한 클라이언트 핸들러를 제1 그룹의 구독 채널(Group/1)에 상응하는 값으로 저장하여 관리한다.
도 3은 본 발명의 일 실시예에서의 메시지의 구조를 설명하기 위한 도면이다.
일 실시예로, 본 발명에서의 메시지는 헤더 영역(Header)과 쓰레드 영역(Thread)으로 구성되어 생성된다. 헤더 영역에는 메시지의 제목인 주제와, 구독 채널로 구성된다. 그리고 쓰레드 영역에는 메시지의 내용이 포함된다.
이러한 메시지의 구조에 따라, 제1 사용자는 메시지의 주제와 제2 사용자(개별 사용자 또는 그룹)의 아이디를 추가하고, 해당 메시지의 내용을 작성하면, 제1 사용자 단말(200)은 서버(100)로 해당 메시지를 제2 사용자 단말(300)로 전송해달라는 요청을 전송한다.
이에 따라 서버(100)는, 제1 사용자 단말(200)이 전송하고자 하는 메시지의 주제와, 제2 사용자 단말(200)에 상응하는 구독 채널을 포함하는 메시지 헤더 영역, 그리고 메시지의 헤더 영역에 종속되는 적어도 하나의 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지의 전송 요청을 수신하게 된다.
여기에서, 본 발명은 메시지 쓰레드 영역은 메시지 헤더 영역에 종속되는 것을 특징으로 하며, 이는 메시지의 헤더를 기반으로 메시지가 생성되면, 헤더에 종속되는 메시지가 계속 생성되는 것을 의미한다. 즉, 메시지 헤더 영역에는 메시지의 주제가 포함되어 있으므로, 메시지의 내용은 주제와 매칭되어 전송 및 관리된다.
서버(100)는 이와 같은 메시지 전송 요청을 수신함에 따라, 수신한 메시지를 파싱하여, 제1 사용자에 상응하는 구독 채널을 추출하고, 제2 사용자에 상응하는 구독 채널을 추출한다.
그리고 구독 채널 저장소에 저장된 구독 채널을 참조하여 제1 및 제2 사용자 단말(200, 300)에 상응하는 클라이언트 핸들러를 독출한 후, 독출한 클라이언트 핸들러를 통해 상응하는 제1 및 제2 사용자 단말(200, 300)로 메시지를 전송한다(S140).
한편, 전술한 바와 같이 일반적인 채팅 서비스는 하나의 채팅방 내에서 다양한 주제가 혼재됨에 따라 메시지 단절이 발생하는 문제가 있었으며, 메시지 단절을 해소하기 위해 주제별로 새로운 채팅방을 개설할 경우, 이는 새로운 구독 채널이 생성되는 것이므로 시스템 상의 과부하로 이어지는 문제가 있었다.
반면, 본 발명의 일 실시예는 기 생성된 구독 채널을 이용하므로 전술한 문제를 해소할 수 있다는 장점이 있다.
구체적으로, 제2 사용자는 복수의 사용자이거나, 복수의 그룹이거나 또는 적어도 하나의 사용자 및 그룹인 경우, 제1 사용자는 메시지의 주제와 제2 사용자로 복수의 사용자의 아이디를 추가하거나, 복수의 그룹에 해당하는 아이디를 추가하거나, 사용자 및 그룹의 아이디를 함께 추가하고, 해당 메시지의 내용을 작성하면, 제1 사용자 단말(200)은 서버(100)로 해당 메시지를 제2 사용자 단말(300)로 전송해달라는 요청을 전송한다.
이에 따라, 서버(100)는 제1 사용자 단말(200)이 전송하고자 하는 메시지의 주제와, 복수의 제2 사용자 단말(300)에 상응하는 구독 채널, 즉 복수의 사용자에 상응하는 구독 채널, 복수의 그룹에 상응하는 구독 채널, 및 사용자 및 그룹에 각각 상응하는 구독 채널 중 적어도 하나를 포함하는 메시지 헤더 영역과, 메시지 헤더 영역에 종속되는 적어도 하나의 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지 전송 요청을 수신하게 된다.
이후, 서버(100)는 메시지 전송 요청을 수신함에 따라, 수신한 메시지를 파싱하여, 제1 사용자에 상응하는 구독 채널을 추출하고, 제2 사용자인 복수의 사용자에 상응하는 구독 채널, 복수의 그룹에 상응하는 구독 채널 및 사용자 및 그룹에 각각 상응하는 구독 채널 중 해당되는 적어도 하나의 구독 채널을 추출한다.
그리고 구독 채널 저장소에 저장된 구독 채널을 참조하여 제1 및 제2 사용자 단말(200, 300)에 상응하는 클라이언트 핸들러를 독출한 후, 독출한 클라이언트 핸들러를 통해 상응하는 제1 및 제2 사용자 단말(200, 300)로 메시지를 전송한다(S140).
이와 같이, 본 발명의 일 실시예는 기존의 구독 채널을 이용하여 메시지 주제를 생성하기 때문에, 새로운 조합으로 다시 구독 채널을 만들지 않아도 되며, 이는 결국 새로운 구독 채널이 과도하게 만들어지는 것을 방지할 수 있어 시스템의 부하를 줄일 수 있다. 또한, 주제를 기반으로 메시지를 생성하므로 주제와 관계없는 메시지가 채팅방 내 적재되는 것을 방지할 수 있다는 장점이 있다.
도 4는 본 발명의 일 실시예에 따른 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법의 순서도이다. 한편, 도 4에서는 도 1 내지 도 3에서 설명한 내용과 중복되는 내용은 생략하도록 하며, 다만 전술한 기술적 특징은 그대로 포함된다.
먼저, 사용자 단말(200)은 메시지의 주제와 구독 채널로 구성된 메시지 헤더 영역과, 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지를 생성한다(S210).
다음으로, 적어도 하나의 타 사용자 및 그룹에 상응하는 타 사용자 단말(300)로의 메시지 전송을 서버(100)로 요청하고(S220), 메시지가 타 사용자 단말(300)로 전송됨에 따라, 사용자 단말(200) 및 타 사용자 단말(300)에 각각 상응하는 구독 채널을 통해 메시지가 제공된다(S230).
여기에서 메시지는 서버(100)에 의해 파싱되어 구독 채널 저장소를 통해 참조할 사용자 단말(200) 및 타 사용자 단말(300)에 상응하는 클라이언트 핸들러가 독출되고, 독출된 클라이언트 핸들러를 통해 상응하는 사용자 단말(200) 및 타 사용자 단말(300)로 전송된다.
한편, 상술한 설명에서, 단계 S110 내지 S230은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
도 5는 본 발명의 일 실시예에 따른 구독 채널 참조 기반의 주제별 메시지 채팅 제공 시스템을 설명하기 위한 도면이다.
본 발명의 일 실시예에 따른 주제별 메시지 채팅 제공 시스템(1)은 서버(100)와 사용자 단말(200, 300)로 구성된다.
서버(100)는 통신모듈(110), 메모리(120) 및 프로세서(130)를 포함하여 구성된다.
통신모듈(110)은 제1 사용자 단말(200) 및 제2 사용자 단말(300)의 메시지를 전달 및 제공하며, 그밖에 필요한 데이터를 송수신한다.
메모리(120)에는 구독 채널 저장소 및 구독 채널 참조 기반의 주제별 메시지 채팅 제공을 위한 프로그램이 저장되며, 프로세서(130)는 메모리(120)에 저장된 프로그램을 실행시킨다.
프로세서(130)는 메모리(120)에 저장된 프로그램을 실행시킴에 따라, 통신모듈(110)을 통해 제1 사용자에 상응하는 제1 사용자 단말(200)로부터 제2 사용자에 상응하는 제2 사용자 단말(300)로의 메시지 전송 요청을 수신하면, 수신한 메시지를 파싱하여 참조할 구독 채널을 추출한다.
그리고 프로세서(130)는 구독 채널 저장소에 저장된 구독 채널을 참조하여 상응하는 클라이언트 핸들러를 독출한 후, 통신모듈(110)을 통해 독출한 클라이언트 핸들러를 통해 상응하는 제1 및 제2 사용자 단말(200, 300)로 메시지를 전송한다.
한편, 기타 생략된 내용이라 하더라도 도 1 내지 도 4의 내용은 도 5의 주제별 메시지 채팅 제공 시스템(1)에도 적용된다.
이하에서는 도 6 내지 도 8을 참조하여 본 발명의 일 실시예가 구현된 일 예를 설명하도록 한다.
도 6은 사용자 간의 1:1 채팅 상황의 결과를 도시한 도면으로, 발신자인 제1 사용자 “Daniel”이 수신자인 제2 사용자 “mjma”에게 메시지를 발송한 결과를 나타낸 것이다. 제1 사용자는 주제를 “특허진행을 위한 어플리케이션 공유합니다”라 기재하고, 수신 대상을 개인인 “mjma”를 지정하여 메시지를 발송하면, 서버(100)는 메시지를 파싱하여 참조할 구독 채널을 추출한 후, 구독 채널 저장소에 저장된 구독 채널을 참조하여 상응하는 클라이언트 핸들러를 추출하여, 제1 및 제2 사용자 단말(200, 300)로 메시지를 전송하게 된다.
그 결과 제1 사용자 단말(200)과 제2 사용자 단말(300)의 소정의 화면 상에는 송신 메시지의 제목이 상단에 표출되며, 내용이 메시지 제목의 하단에 표출된다. 하단 영역에는 제1 및 제2 사용자가 메시지를 입력할 수 있는 별도의 영역이 생성되며, 해당 영역을 통해 메시지를 각각 입력할 수 있다.
도 7은 그룹 사용자 간의 채팅 상황의 결과를 도시한 도면으로, 제1 사용자인 “Daniel”이 제목으로 “특허진행(지명)”을 기재한 후, 그룹에 참여할 각 사용자로 “mjma”를 지정한 후, 메시지의 내용을 입력한 것이다. 이때, 그룹에는 복수의 사용자들을 수신자로 더 지정할 수 있으며, 도 7에는 편의상 2명이 그룹으로 지정된 상황을 나타낸 것이다.
서버(100)는 제목과 그룹 수신자들이 포함된 메시지를 제1 사용자로부터 수신하게 되면, 메시지를 파싱하여 참조할 구독 채널을 추출하고, 구독 채널 저장소로부터 구독 채널에 상응하는 클라이언트 핸들러를 추출하여, 그룹 내 사용자 단말로 메시지를 전송하게 된다.
그 결과 제1 및 제2 사용자 단말(200, 300)의 소정의 화면 상에는 송신 메시지의 제목이 상단에 표출되며, 내용은 그 하단에 표출된다. 이에 따라, 그룹에 포함된 각 사용자들은 해당 제목과 관련한 메시지를 주고 받을 수 있다.
도 8은 그룹 및 개인 사용자를 모두 포함하여 메시지를 전송한 결과를 도시한 도면으로, 제1 사용자인 “Daniel”은 제목으로 “특허 기초 문서를 공유합니다”를 기재하고, 수신자로 그룹인 “특허진행(지명)”과 개인 사용자인 “mjma”를 지정하여 메시지를 전송한 결과를 나타낸 것이다.
서버(100)는 해당 메시지 전송 요청을 수신함에 따라, 메시지를 파싱하여 참조할 구독 채널을 추출하게 되며, 가입시 생성된 개별 사용자인 “mjma”와 “Daniel”의 구독 채널을 각각 추출하고, 또한 도 7의 과정에서 생성된 그룹 “특허진행(지명)”에 상응하는 구독 채널을 추출하게 된다.
이후, 서버(100)는 추출한 구독 채널에 상응하는 클라이언트 핸들러를 구독 채널 저장소로부터 추출한 후, 각 메시지를 그룹 및 개별 사용자의 클라이언트 핸들러로 전송하게 된다.
이에 따라, 개별 사용자 및 그룹에 포함된 사용자들은 해당 제목 및 내용이 포함된 메시지를 수신하게 되며, 그룹 및 개별 사용자들은 자신의 단말을 통해 해당 제목에 상응하는 메시지를 주고 받을 수 있게 된다.
만약, 제1 그룹(특허진행(지명))과 제2 그룹(특허진행(기업))이 기 생성되어 있는 경우, 개별 사용자가 제1 및 제2 그룹, 그리고 가입된 사용자 10명을 모두 포함시켜 새로운 제목으로 메시지를 발송하게 될 경우, 종래 기술의 경우 새로운 채팅방이 생성되는 것이므로 새로운 구독 채널을 생성해야만 하며, 채팅방이 신설되는 수가 증가하면 할수록 서버에는 과부하가 발생되게 된다.
반면, 본 발명의 일 실시예에 따르면, 새로운 구독 채널을 생성할 필요 없이, 기존에 생성된 2개의 그룹 구독 채널과 가입된 10명의 구독 채널을 참조하기만 하면 되므로, 새로운 채팅방이 생성된다 하더라도 새롭게 구독 채널을 생성할 필요가 없어, 리소스의 부하를 최소화시킬 수 있는 장점이 있다.
이상에서 전술한 본 발명의 일 실시예는, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.
상기 전술한 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, Ruby, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
1: 주제별 메시지 채팅 제공 시스템
100: 서버
110: 통신모듈
120: 메모리
130: 프로세서
200: 제1 사용자 단말
300: 제2 사용자 단말

Claims (13)

  1. 서버에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법에 있어서,
    제1 사용자에 상응하는 제1 사용자 단말로부터 제2 사용자에 상응하는 제2 사용자 단말로의 메시지 전송 요청을 수신하는 단계;
    상기 수신한 메시지를 파싱하여 참조할 구독 채널을 추출하는 단계;
    구독 채널 저장소에 저장된 구독 채널을 참조하여 상응하는 클라이언트 핸들러를 독출하는 단계; 및
    상기 독출한 클라이언트 핸들러를 통해 상응하는 제1 및 제2 사용자 단말로 메시지를 전송하는 단계를 포함하는,
    구독 채널 참조 기반의 주제별 메시지 채팅 방법.
  2. 제1항에 있어서,
    상기 메시지는 주제와 구독 채널로 구성된 메시지 헤더 영역과, 상기 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성되는 것인,
    구독 채널 참조 기반의 주제별 메시지 채팅 방법.
  3. 제2항에 있어서,
    상기 제1 사용자에 상응하는 제1 사용자 단말로부터 제2 사용자에 상응하는 제2 사용자 단말로의 메시지 전송 요청을 수신하는 단계는,
    상기 제1 사용자 단말이 전송하고자 하는 메시지의 주제와, 상기 제2 사용자 단말에 상응하는 구독 채널을 포함하는 메시지 헤더 영역과, 상기 메시지 헤더 영역에 종속되는 적어도 하나의 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지 전송 요청을 수신하는 것인,
    구독 채널 참조 기반의 주제별 메시지 채팅 방법.
  4. 제3항에 있어서,
    상기 수신한 메시지를 파싱하여 구독 채널을 추출하는 단계는,
    상기 제1 사용자에 상응하는 구독 채널을 추출하는 단계; 및
    상기 제2 사용자에 상응하는 구독 채널을 추출하는 단계를 포함하는,
    구독 채널 참조 기반의 주제별 메시지 채팅 방법.
  5. 제2항에 있어서,
    상기 제2 사용자는 복수의 사용자, 복수의 그룹 또는 적어도 하나의 사용자 및 그룹에 해당하고,
    상기 제1 사용자에 상응하는 제1 사용자 단말로부터 제2 사용자에 상응하는 제2 사용자 단말로의 메시지 전송 요청을 수신하는 단계는,
    상기 제1 사용자 단말이 전송하고자 하는 메시지의 주제와, 상기 제2 사용자인 복수의 사용자에 상응하는 구독 채널, 상기 복수의 그룹에 상응하는 구독 채널 및 상기 사용자 및 그룹에 각각 상응하는 구독 채널 중 적어도 하나를 포함하는 메시지 헤더 영역과, 상기 메시지 헤더 영역에 종속되는 적어도 하나의 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지 전송 요청을 수신하는 것인,
    구독 채널 참조 기반의 주제별 메시지 채팅 방법.
  6. 제5항에 있어서,
    상기 수신한 메시지를 파싱하여 구독 채널을 추출하는 단계는,
    상기 제1 사용자에 상응하는 구독 채널을 추출하는 단계; 및
    상기 제2 사용자인 복수의 사용자에 상응하는 구독 채널, 상기 복수의 그룹에 상응하는 구독 채널 및 상기 사용자 및 그룹에 각각 상응하는 구독 채널 중 해당되는 적어도 하나의 구독 채널을 추출하는 단계를 포함하는,
    구독 채널 참조 기반의 주제별 메시지 채팅 방법.
  7. 제6항에 있어서,
    상기 독출한 클라이언트 핸들러를 통해 제1 및 제2 사용자 단말로 메시지를 전송하는 단계는,
    상기 복수의 사용자에 상응하는 각각의 구독 채널로 전송하거나, 상기 복수의 그룹에 상응하는 각각의 구독 채널로 전송하거나, 상기 적어도 하나의 사용자 및 그룹에 상응하는 각각의 구독 채널에 상응하는 클라이언트 핸들러를 통해 상기 메시지를 전송하는 것인,
    구독 채널 참조 기반의 주제별 메시지 채팅 방법.
  8. 구독 채널 참조 기반의 주제별 메시지 채팅 제공이 가능한 서버에 있어서,
    통신모듈, 메모리 및 상기 메모리에 저장된 프로그램을 실행시키는 프로세서를 포함하고,
    상기 프로세서는 상기 프로그램을 실행시킴에 따라, 상기 통신모듈이 제1 사용자에 상응하는 제1 사용자 단말로부터 제2 사용자에 상응하는 제2 사용자 단말로의 메시지 전송 요청을 수신하면, 상기 수신한 메시지를 파싱하여 참조할 구독 채널을 추출하고, 구독 채널 저장소에 저장된 구독 채널을 참조하여 상응하는 클라이언트 핸들러를 독출한 후, 상기 통신모듈을 통해 상기 독출한 클라이언트 핸들러를 통해 상응하는 제1 및 제2 사용자 단말로 메시지를 전송하는 것인,
    구독 채널 참조 기반의 주제별 메시지 채팅 제공이 가능한 서버.
  9. 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법에 있어서,
    메시지의 주제와 구독 채널로 구성된 메시지 헤더 영역과, 상기 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지를 생성하는 단계;
    적어도 하나의 타 사용자 및 그룹에 상응하는 타 사용자 단말로의 상기 메시지 전송을 서버로 요청하는 단계; 및
    상기 메시지가 타 사용자 단말에 상응하는 구독 채널을 통해 전송됨에 따라, 상기 사용자 단말에 상응하는 구독 채널을 통해 상기 메시지가 제공되는 단계를 포함하고,
    상기 메시지는 서버에 의해 파싱되어 구독 채널 저장소를 통해 참조할 사용자 단말 및 타 사용자 단말에 상응하는 클라이언트 핸들러가 독출되고, 상기 독출된 클라이언트 핸들러를 통해 상응하는 사용자 단말 및 타 사용자 단말로 상기 메시지가 전송되는 것인,
    구독 채널 참조 기반의 주제별 메시지 채팅 방법.
  10. 제9항에 있어서,
    상기 메시지의 주제와 구독 채널로 구성된 메시지 헤더 영역과, 상기 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지를 생성하는 단계는,
    상기 타 사용자 단말로 전송하고자 하는 메시지의 주제와, 상기 타 사용자 단말에 상응하는 구독 채널을 포함하는 메시지 헤더 영역과, 상기 메시지의 헤더 영역에 종속되는 적어도 하나의 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지를 생성하는 것인,
    구독 채널 참조 기반의 주제별 메시지 채팅 방법.
  11. 제9항에 있어서,
    상기 타 사용자는 복수의 사용자, 복수의 그룹 또는 적어도 하나의 사용자 및 그룹에 해당하고,
    상기 메시지의 주제와 구독 채널로 구성된 메시지 헤더 영역과, 상기 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지를 생성하는 단계는,
    상기 타 사용자 단말로 전송하고자 하는 메시지의 주제와, 상기 복수의 타 사용자에 상응하는 구독 채널, 상기 복수의 그룹에 상응하는 구독 채널 및 상기 타 사용자 및 그룹에 각각 상응하는 구독 채널 중 적어도 하나를 포함하는 메시지 헤더 영역과, 상기 메시지 헤더 영역에 종속되는 적어도 하나의 메시지의 내용을 포함하는 메시지 쓰레드 영역으로 구성된 메시지를 생성하는 것인,
    구독 채널 참조 기반의 주제별 메시지 채팅 방법.
  12. 제11항에 있어서,
    상기 메시지는 서버에 의해 파싱됨에 따라, 구독 채널 저장소를 통해 참조할 사용자 단말에 상응하는 구독 채널이 추출되며,
    상기 복수의 타 사용자에 상응하는 구독 채널, 상기 복수의 그룹에 상응하는 구독 채널 및 상기 타 사용자 및 그룹에 각각 상응하는 구독 채널 중 해당되는 적어도 하나의 구독 채널이 추출되는 것인,
    구독 채널 참조 기반의 주제별 메시지 채팅 방법.
  13. 제12항에 있어서,
    상기 메시지는 상기 복수의 타 사용자에 상응하는 각각의 구독 채널로 전송되거나, 상기 복수의 그룹에 상응하는 각각의 구독 채널로 전송되거나, 상기 적어도 하나의 타 사용자 및 그룹에 상응하는 각각의 구독 채널에 상응하는 클라이언트 핸들러를 통해 전송되는 것인,
    구독 채널 참조 기반의 주제별 메시지 채팅 방법.
KR1020210043461A 2021-04-02 2021-04-02 서버 및 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법 KR102527601B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210043461A KR102527601B1 (ko) 2021-04-02 2021-04-02 서버 및 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법
US17/711,584 US11870746B2 (en) 2021-04-02 2022-04-01 Method for chatting messages by topic based on subscription channel reference in server and user device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210043461A KR102527601B1 (ko) 2021-04-02 2021-04-02 서버 및 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법

Publications (2)

Publication Number Publication Date
KR20220137408A true KR20220137408A (ko) 2022-10-12
KR102527601B1 KR102527601B1 (ko) 2023-05-02

Family

ID=83449272

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210043461A KR102527601B1 (ko) 2021-04-02 2021-04-02 서버 및 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법

Country Status (2)

Country Link
US (1) US11870746B2 (ko)
KR (1) KR102527601B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11909700B1 (en) * 2023-02-09 2024-02-20 Inner-Machinations, L.L.C. Enterprise micro-forum network

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040102061A (ko) * 2002-03-28 2004-12-03 프리캐시 인크. 발행 구독 네트워크에서 신뢰할 수 있고 효과적인 콘텐츠기반 라우팅 및 질의와 응답을 위한 방법 및 장치
KR20160075457A (ko) 2016-06-16 2016-06-29 주식회사 카카오 채팅 메시지를 그룹화하기 위한 방법, 디바이스 및 서버
KR20180072888A (ko) * 2012-12-14 2018-07-02 페이스북, 인크. 구독자로의 알림의 통신을 위한 기술

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8745165B2 (en) * 2008-03-11 2014-06-03 Disney Enterprises, Inc. System and method for managing distribution of rich media content
US20180077542A1 (en) * 2015-03-16 2018-03-15 Kennesaw State University Research And Service Foundation, Inc. Unified enterprise mobile data collaboration
IN2015DE00833A (ko) * 2015-03-25 2015-04-03 Hcl Technologies Ltd

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040102061A (ko) * 2002-03-28 2004-12-03 프리캐시 인크. 발행 구독 네트워크에서 신뢰할 수 있고 효과적인 콘텐츠기반 라우팅 및 질의와 응답을 위한 방법 및 장치
KR20180072888A (ko) * 2012-12-14 2018-07-02 페이스북, 인크. 구독자로의 알림의 통신을 위한 기술
KR20160075457A (ko) 2016-06-16 2016-06-29 주식회사 카카오 채팅 메시지를 그룹화하기 위한 방법, 디바이스 및 서버

Also Published As

Publication number Publication date
US20220321513A1 (en) 2022-10-06
KR102527601B1 (ko) 2023-05-02
US11870746B2 (en) 2024-01-09

Similar Documents

Publication Publication Date Title
US8219133B2 (en) Implicit group formation around feed content for mobile devices
US8209384B2 (en) Persistent group-based instant messaging
US7596596B2 (en) Chat marking and synchronization
US20150312176A1 (en) Instant Messaging Systems and Methods
CN101494620B (zh) 用于改进即时消息递送系统的控制的方法和系统
US11646981B2 (en) Providing instant messaging service
US20100235758A1 (en) Method, System and Apparatus for Sorting Topics within a Group
CN103139051A (zh) 一种基于Websocket协议的即时通讯方法
EP3255849A1 (en) Multi-channel communications for sending push notifications to mobile devices
KR20200020194A (ko) 대화방 기반의 업무관리 장치, 방법 및 이를 저장하는 기록매체
US20220385607A1 (en) Dynamic control of access permissions for split message threads of a communication system
CN105704001A (zh) 一种微信服务器消息分发方法及系统
KR102527601B1 (ko) 서버 및 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법
KR20200020656A (ko) 대화방 기반의 업무관리 장치, 방법 및 이를 저장하는 기록매체
CN110798495B (zh) 用于在集群架构模式下端到端的消息推送的方法和服务器
CN100559780C (zh) 一种在im消息中显示多媒体信息的方法、系统及设备
WO2019023974A1 (zh) 多主题对话的通信控制装置和方法、及计算机处理设备
CN114390239B (zh) 通信方法、装置、系统、电子设备以及存储介质
US20090172104A1 (en) Instant messenger subset management
CN110545237A (zh) 一种即时通讯方法、装置、系统、计算机设备和存储介质
KR101471171B1 (ko) 게시판과 연계된 인스턴트 메시징 서비스 제공 시스템 및 방법
WO2018147747A1 (en) Method, system and computer program product for providing interactive elements in messages
JP2004252614A (ja) メールチャットシステム
KR101292002B1 (ko) 클라이언트 기반의 채팅 서비스를 제공하는 방법, 클라이언트 장치, 채팅 서버, 시스템 및 기록매체
CN115878304A (zh) 消息发送方法、接收方法、装置、设备及存储介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant