KR101910581B1 - 사용자 대화 활동성 및 대화 상황 정보를 활용한 대화방 정렬 방법 및 그 시스템 - Google Patents

사용자 대화 활동성 및 대화 상황 정보를 활용한 대화방 정렬 방법 및 그 시스템 Download PDF

Info

Publication number
KR101910581B1
KR101910581B1 KR1020170076613A KR20170076613A KR101910581B1 KR 101910581 B1 KR101910581 B1 KR 101910581B1 KR 1020170076613 A KR1020170076613 A KR 1020170076613A KR 20170076613 A KR20170076613 A KR 20170076613A KR 101910581 B1 KR101910581 B1 KR 101910581B1
Authority
KR
South Korea
Prior art keywords
chat
room
user
conversations
score
Prior art date
Application number
KR1020170076613A
Other languages
English (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 KR1020170076613A priority Critical patent/KR101910581B1/ko
Priority to JP2018095447A priority patent/JP7089400B2/ja
Priority to US15/994,156 priority patent/US10805100B2/en
Application granted granted Critical
Publication of KR101910581B1 publication Critical patent/KR101910581B1/ko

Links

Images

Classifications

    • 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/40Business processes related to the transportation industry
    • G06Q50/30
    • 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
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0263Targeted advertisements based upon Internet or website rating
    • 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/10Services
    • 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
    • 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/222Monitoring or handling of messages using geographical location information, e.g. messages transmitted or received in proximity of a certain spot or area
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Accounting & Taxation (AREA)
  • Multimedia (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Operations Research (AREA)

Abstract

사용자 대화 활동성 및 대화 상황 정보를 활용한 대화방 정렬 방법 및 그 시스템이 개시된다. 대화방 정렬 방법은, 대화방 목록에 포함된 대화방 각각에 대하여 대화관련 이벤트가 감지되는 경우 이벤트 감지 시점과 관련된 상황 정보를 인지하여 상기 대화관련 이벤트와 연계하여 저장하는 단계; 상기 대화방 별로 사용자의 대화 참여와 관련된 활동성 점수, 및 현재 시점의 상황과 상기 상황 정보 간의 유사성 점수 중 적어도 하나를 산출하는 단계; 및 상기 대화방 목록에 포함된 적어도 일부의 대화방을 상기 활동성 점수와 상기 유사성 점수 중 적어도 하나를 기준으로 정렬하는 단계를 포함할 수 있다.

Description

사용자 대화 활동성 및 대화 상황 정보를 활용한 대화방 정렬 방법 및 그 시스템{METHOD AND SYSTEM OF CHAT ROOM LIST SORTING BASED ON CONVERSATIONAL ACTIVENESS AND CONTEXTRUAL INFORMATION}
아래의 설명은 대화방을 정렬하는 기술에 관한 것이다.
일반적인 커뮤니케이션 도구인 인스턴트 메신저(instant messenger)는 실시간으로 메시지나 데이터를 송수신할 수 있는 소프트웨어로서, 사용자가 메신저 상에 대화 상대를 등록하고 대화 상대 목록에 있는 상대방과 실시간으로 메시지를 주고 받을 수 있다.
이러한 메신저 기능은 PC 뿐만 아니라 이동 통신 단말의 모바일 환경에서도 메신저의 사용이 보편화 되고 있다. 예컨대, 한국공개특허 제10-1002-0074304호에는 휴대 단말기에 설치된 모바일 메신저 간에 메신저 서비스를 제공할 수 있도록 한 무선 통신망을 이용한 휴대 단말기의 모바일 메신저 서비스 시스템 및 방법이 개시되어 있다.
일반적으로 메신저 상의 대화방 정렬 방법에는 최근 메시지 수신 시간, 읽지 않은 메시지의 개수, 즐겨찾기(favorite) 설정 여부 등과 같은 단순한 조건을 사용한다.
사용자가 특정 대화방을 찾기 위해서는 대화방 목록에서 직접 키워드를 입력하여 검색 결과에서 찾거나, 혹은 목록에 대한 스크롤을 통해 찾아야 하기 때문에 스크롤의 경우 대화방의 개수가 많을수록 대화방을 찾는데 불편한 경우가 많다.
사용자가 즐겨찾기나 혹은 핀(pin) 설정 기능을 통해서 특정 대화방을 목록의 상단에 고정시킬 수 있으나, 이는 사용자가 직접 특정 대화방을 일일이 설정해야 하는 수고를 들여야 한다.
대화방 내에서의 활동성과 활동 시의 상황 정보를 바탕으로 대화방을 자동 정렬할 수 있는 방법 및 시스템을 제공한다.
컴퓨터로 구현되는 대화방 정렬 방법에 있어서, 대화방 목록에 포함된 대화방 각각에 대하여 대화관련 이벤트가 감지되는 경우 이벤트 감지 시점과 관련된 상황 정보를 인지하여 상기 대화관련 이벤트와 연계하여 저장하는 단계; 상기 대화방 별로 사용자의 대화 참여와 관련된 활동성 점수, 및 현재 시점의 상황과 상기 상황 정보 간의 유사성 점수 중 적어도 하나를 산출하는 단계; 및 상기 대화방 목록에 포함된 적어도 일부의 대화방을 상기 활동성 점수와 상기 유사성 점수 중 적어도 하나를 기준으로 정렬하는 단계를 포함하는 대화방 정렬 방법을 제공한다.
일 측면에 따르면, 상기 저장하는 단계는, 상기 대화관련 이벤트가 감지된 시점의 시간 정보와 위치 정보 중 적어도 하나를 포함하는 상황 정보를 저장할 수 있다.
다른 측면에 따르면, 상기 저장하는 단계는, 상기 대화관련 이벤트가 감지된 대화방 정보를 시간 순으로 저장한 대화방 타임 테이블과, 상기 상황 정보로서 상기 사용자의 위치 정보를 시간 순으로 저장한 위치 타임 테이블을 구축할 수 있다.
또 다른 측면에 따르면, 상기 산출하는 단계는, 상기 대화방에서의 전체 대화 수 대비 사용자의 대화 수의 비율, 전체 대화방에서의 사용자의 대화 수 총합 대비 상기 대화방에서의 사용자의 대화 수의 비율, 상기 대화방에서의 전체 대화 수 대비 화자가 바뀐 횟수의 비율 중 적어도 하나를 이용하여 상기 활동성 점수를 산출할 수 있다.
또 다른 측면에 따르면, 상기 산출하는 단계는, 상기 대화방에서 마지막 대화 이후 사용자가 대화를 시작한 횟수, 상기 대화방에서 멀티미디어 컨텐츠를 송수신한 횟수, 상기 대화방이 생성된 후 경과된 날짜 수 대비 대화가 있는 날짜 수의 비율 중 적어도 하나를 이용하여 상기 활동성 점수를 산출할 수 있다.
또 다른 측면에 따르면, 상기 산출하는 단계는, 상기 대화방 별로 상기 상황 정보가 현재 시점의 상황과 유사한 대화이력을 이용하여 상기 유사성 점수를 산출할 수 있다.
또 다른 측면에 따르면, 상기 산출하는 단계는, 현재 시점의 상황과 대응되는 시간에 이루어진 상기 대화방에서의 전체 대화 수 대비 사용자의 대화 수의 비율, 현재 시점의 상황과 대응되는 시간에 이루어진 전체 대화방에서의 사용자의 대화 수 총합 대비 상기 대화방에서의 사용자의 대화 수의 비율 중 적어도 하나를 이용하여 상기 유사성 점수를 산출할 수 있다.
또 다른 측면에 따르면, 상기 산출하는 단계는, 현재 시점의 상황과 대응되는 장소에서 이루어진 상기 대화방에서의 전체 대화 수 대비 사용자의 대화 수의 비율, 현재 시점의 상황과 대응되는 장소에서 이루어진 전체 대화방에서의 사용자의 대화 수 총합 대비 상기 대화방에서의 사용자의 대화 수의 비율 중 적어도 하나를 이용하여 상기 유사성 점수를 산출할 수 있다.
또 다른 측면에 따르면, 상기 정렬하는 단계는, 상기 활동성 점수와 상기 유사성 점수 중 적어도 하나를 이용하여 전체 대화방 중 일부 대화방을 선정하여 선정된 대화방을 목록의 상위에 배치할 수 있다.
또 다른 측면에 따르면, 상기 정렬하는 단계는, 상기 활동성 점수와 상기 유사성 점수 중 적어도 하나를 이용하여 상기 대화방 별 확률 점수를 계산하는 단계; 상기 대화방 간의 상기 확률 점수의 차이를 이용하여 전체 대화방 중 N개의 대화방을 선정하는 단계; 및 상기 전체 대화방 중 상기 N개의 대화방을 목록의 상위에 배치하고 나머지 대화방을 기존 정렬 기준으로 배치하는 단계를 포함할 수 있다.
컴퓨터 시스템과 결합되어 대화방 정렬 방법을 실행시키기 위해 컴퓨터 판독 가능한 기록 매체에 기록된 컴퓨터 프로그램에 있어서, 상기 대화방 정렬 방법은, 대화방 목록에 포함된 대화방 각각에 대하여 대화관련 이벤트가 감지되는 경우 이벤트 감지 시점과 관련된 상황 정보를 인지하여 상기 대화관련 이벤트와 연계하여 저장하는 단계; 상기 대화방 별로 사용자의 대화 참여와 관련된 활동성 점수, 및 현재 시점의 상황과 상기 상황 정보 간의 유사성 점수 중 적어도 하나를 산출하는 단계; 및 상기 대화방 목록에 포함된 적어도 일부의 대화방을 상기 활동성 점수와 상기 유사성 점수 중 적어도 하나를 기준으로 정렬하는 단계를 포함하는, 컴퓨터 프로그램을 제공한다.
컴퓨터로 구현되는 대화방 정렬 시스템에 있어서, 컴퓨터가 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 대화방 목록에 포함된 대화방 각각에 대하여 대화관련 이벤트가 감지되는 경우 이벤트 감지 시점과 관련된 상황 정보를 인지하여 상기 대화관련 이벤트와 연계하여 저장하는 저장부; 상기 대화방 별로 사용자의 대화 참여와 관련된 활동성 점수, 및 현재 시점의 상황과 상기 상황 정보 간의 유사성 점수 중 적어도 하나를 산출하는 산출부; 및 상기 대화방 목록에 포함된 적어도 일부의 대화방을 상기 활동성 점수와 상기 유사성 점수 중 적어도 하나를 기준으로 정렬하는 정렬부를 포함하는 대화방 정렬 시스템을 제공한다.
본 발명의 실시예들에 따르면, 대화방 내에서의 활동성과 활동 시의 상황 정보를 바탕으로 대화방을 자동 정렬함으로써 특정 대화방을 일일이 설정하지 않아도 사용자가 활발히 사용하거나 때와 장소에 따라 사용자가 사용할 것으로 예상되는 대화방을 자동으로 상단에 위치시켜 대화방을 쉽고 편리하게 찾아 대화할 수 있도록 도와줄 수 있다.
도 1은 본 발명의 일 실시예에 있어서 컴퓨터 시스템의 내부 구성의 일례를 설명하기 위한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 컴퓨터 시스템의 프로세서가 포함할 수 있는 구성요소의 예를 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 컴퓨터 시스템이 수행할 수 있는 대화방 정렬 방법의 예를 도시한 순서도이다.
도 4는 본 발명의 일 실시예에 있어서 대화관련 이벤트의 상황 정보를 저장하는 과정의 예시를 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 있어서 대화방을 정렬하는 과정의 예시를 도시한 순서도이다.
도 6 내지 도 8은 본 발명의 일 실시예에 있어서 대화방 점수 분포에 따른 대화방 선정 과정을 설명하기 위한 예시 도면이다.
도 9 내지 도 10은 본 발명의 일 실시예에 있어서 대화방을 정렬하는 화면 예시를 도시한 도면이다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
본 발명의 실시예들은 대화방을 정렬하는 기술에 관한 것으로, 더욱 상세하게는 대화방 내에서의 활동성과 활동 시의 상황 정보를 바탕으로 대화방을 자동 정렬하는 방법 및 시스템에 관한 것이다.
본 명세서에서 구체적으로 개시되는 것들을 포함하는 실시예들은 사용자 활동을 바탕으로 대화방을 정렬할 수 있고 이를 통해 효율성, 편의성, 용이성, 비용 절감 등의 측면에 있어서 상당한 장점들을 달성한다.
본 명세서에서 '대화방'은 사용자 간에 주고 받은 메시지를 제공하기 위한 인터페이스 화면을 의미할 수 있으며, 예를 들어 메신저에서 사용자들의 계정 간에 설정된 통신 세션을 통해 주고 받은 메시지를 표시하기 위한 인터페이스 화면은 물론이고, SMS(short message service)나 MMS(multimedia message service)와 같은 문자 기능에서 전화번호를 기준으로 해당 전화번호의 상대방과 주고 받은 메시지를 표시하기 위한 인터페이스 화면 등이 대화방의 대표적인 예에 해당될 수 있다. 메신저에서는 계정 간에 설정된 통신 세션을 기준으로 대화방이 생성되고 문자 기능의 경우에는 전화번호를 기준으로 대화방이 생성되게 되는데, 해당 기능들은 생성된 모든 대화방에 대해 소정의 정렬 기준에 따른 목록을 제공할 수 있다.
일 실시예로서 메신저의 대화방 정렬에 대하여 설명하고 있으나 이러한 것으로만 한정되지 않으며, 앞서 설명한 바와 같이 SMS나 MMS와 같은 문자 기능은 물론이고, 이외에도 대화관련 인터페이스로 생성되어 정렬 대상이 되는 객체라면 모두 적용 가능하다.
도 1은 본 발명의 일 실시예에 있어서 컴퓨터 시스템의 내부 구성의 일례를 설명하기 위한 블록도이다. 예를 들어, 본 발명의 실시예들에 따른 대화방 정렬 시스템이 도 1의 컴퓨터 시스템(100)을 통해 구현될 수 있다. 도 1에 도시한 바와 같이, 컴퓨터 시스템(100)은 대화방 정렬 방법을 실행하기 위한 구성요소로서 프로세서(110), 메모리(120), 영구 저장 장치(130), 버스(140), 입출력 인터페이스(150) 및 네트워크 인터페이스(160)를 포함할 수 있다.
프로세서(110)는 명령어들의 시퀀스를 처리할 수 있는 임의의 장치를 포함하거나 그의 일부일 수 있다. 프로세서(110)는 예를 들어 컴퓨터 프로세서, 이동 장치 또는 다른 전자 장치 내의 프로세서 및/또는 디지털 프로세서를 포함할 수 있다. 프로세서(110)는 예를 들어, 서버 컴퓨팅 디바이스, 서버 컴퓨터, 일련의 서버 컴퓨터들, 서버 팜, 클라우드 컴퓨터, 컨텐츠 플랫폼, 이동 컴퓨팅 장치, 스마트폰, 태블릿, 셋톱 박스 등에 포함될 수 있다. 프로세서(110)는 버스(140)를 통해 메모리(120)에 접속될 수 있다.
메모리(120)는 컴퓨터 시스템(100)에 의해 사용되거나 그에 의해 출력되는 정보를 저장하기 위한 휘발성 메모리, 영구, 가상 또는 기타 메모리를 포함할 수 있다. 메모리(120)는 예를 들어 랜덤 액세스 메모리(RAM: random access memory) 및/또는 동적 RAM(DRAM: dynamic RAM)을 포함할 수 있다. 메모리(120)는 컴퓨터 시스템(100)의 상태 정보와 같은 임의의 정보를 저장하는 데 사용될 수 있다. 메모리(120)는 예를 들어 얼굴 인식 카메라를 제어하기 위한 명령어들을 포함하는 컴퓨터 시스템(100)의 명령어들을 저장하는 데에도 사용될 수 있다. 컴퓨터 시스템(100)은 필요에 따라 또는 적절한 경우에 하나 이상의 프로세서(110)를 포함할 수 있다.
버스(140)는 컴퓨터 시스템(100)의 다양한 컴포넌트들 사이의 상호작용을 가능하게 하는 통신 기반 구조를 포함할 수 있다. 버스(140)는 컴퓨터 시스템(100)의 컴포넌트들 사이에, 예를 들어 프로세서(110)와 메모리(120) 사이에 데이터를 운반할 수 있다. 버스(140)는 컴퓨터 시스템(100)의 컴포넌트들 간의 무선 및/또는 유선 통신 매체를 포함할 수 있으며, 병렬, 직렬 또는 다른 토폴로지 배열들을 포함할 수 있다.
영구 저장 장치(130)는 (예를 들어, 메모리(120)에 비해) 소정의 연장된 기간 동안 데이터를 저장하기 위해 컴퓨터 시스템(100)에 의해 사용되는 바와 같은 메모리 또는 다른 영구 저장 장치와 같은 컴포넌트들을 포함할 수 있다. 영구 저장 장치(130)는 컴퓨터 시스템(100) 내의 프로세서(110)에 의해 사용되는 바와 같은 비휘발성 메인 메모리를 포함할 수 있다. 영구 저장 장치(130)는 예를 들어 플래시 메모리, 하드 디스크, 광 디스크 또는 다른 컴퓨터 판독 가능 매체를 포함할 수 있다.
입출력 인터페이스(150)는 키보드, 마우스, 음성 명령 입력, 디스플레이 또는 다른 입력 또는 출력 장치에 대한 인터페이스들을 포함할 수 있다. 구성 명령들 및/또는 얼굴 인식 카메라와 관련된 입력이 입출력 인터페이스(150)를 통해 수신될 수 있다.
네트워크 인터페이스(160)는 근거리 네트워크 또는 인터넷과 같은 네트워크들에 대한 하나 이상의 인터페이스를 포함할 수 있다. 네트워크 인터페이스(160)는 유선 또는 무선 접속들에 대한 인터페이스들을 포함할 수 있다. 구성 명령들은 네트워크 인터페이스(160)를 통해 수신될 수 있다. 그리고, 얼굴 인식 카메라와 관련된 정보들은 네트워크 인터페이스(160)를 통해 수신 또는 송신될 수 있다.
또한, 다른 실시예들에서 컴퓨터 시스템(100)은 도 1의 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 컴퓨터 시스템(100)은 상술한 입출력 인터페이스(150)와 연결되는 입출력 장치들 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), GPS(Global Positioning System) 모듈, 카메라, 각종 센서, 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다. 보다 구체적인 예로, 컴퓨터 시스템(100)이 스마트폰과 같은 모바일 기기의 형태로 구현되는 경우, 일반적으로 모바일 기기가 포함하고 있는 카메라, 가속도 센서나 자이로 센서, 카메라, 각종 물리적인 버튼, 터치패널을 이용한 버튼, 입출력 포트, 진동을 위한 진동기 등의 다양한 구성요소들이 컴퓨터 시스템(100)에 더 포함되도록 구현될 수 있다.
본 발명에서는 대화방 내에서의 사용자의 활동성 및/또는 대화방에서의 활동 시 상황 정보와 사용자의 현재 상황 정보 간의 유사성을 바탕으로 대화방을 자동 정렬할 수 있다. 이를 위한 기술 시나리오의 일례는 다음과 같다.
(1) 대화방 각각에 대하여 대화관련 이벤트(예컨대, 메시지 송수신, 멀티미디어 컨텐츠 송수신 등)가 감지되는 경우 이벤트 감지 시점의 현재 위치나 시간 등을 포함한 상황 정보를 인지한 후 해당 이벤트와 연계하여 저장한다.
(2) 메신저 상의 대화내역이 저장된 대화 DB(데이터베이스)에 접근하여 대화방 별로 사용자의 활동성 점수를 계산하여 저장한다.
(3) 대화방 정렬이 필요한 경우 (3-1) 대화방 별로 사용자의 현재 상황 정보와 과거 이벤트 상황 간의 유사성 점수를 산출하고 (3-2) 대화방 별로 저장되어 있는 활동성 점수를 조회한다.
(4) 각 대화방의 활동성 점수와 유사성 점수를 바탕으로 일정 개수의 대화방을 선정하여 목록 상단에 정렬한다.
도 2는 본 발명의 일 실시예에 따른 컴퓨터 시스템의 프로세서가 포함할 수 있는 구성요소의 예를 도시한 도면이고, 도 3은 본 발명의 일 실시예에 따른 컴퓨터 시스템이 수행할 수 있는 대화방 정렬 방법의 예를 도시한 순서도이다.
도 2에 도시된 바와 같이, 프로세서(110)는 저장부(210), 산출부(220), 및 정렬부(230)를 포함할 수 있다. 이러한 프로세서(110)의 구성요소들은 적어도 하나의 프로그램 코드에 의해 제공되는 제어 명령에 따라 프로세서(110)에 의해 수행되는 서로 다른 기능들(different functions)의 표현들일 수 있다. 예를 들어, 프로세서(110)가 대화관련 이벤트와 연계하여 상황 정보를 저장하도록 컴퓨터 시스템(100)을 제어하기 위해 동작하는 기능적 표현으로서 저장부(210)가 사용될 수 있다. 프로세서(110) 및 프로세서(110)의 구성요소들은 도 3의 대화방 정렬 방법이 포함하는 단계들(S310 내지 S340)을 수행할 수 있다. 예를 들어, 프로세서(110) 및 프로세서(110)의 구성요소들은 메모리(120)가 포함하는 운영체제의 코드와 상술한 적어도 하나의 프로그램 코드에 따른 명령(instruction)을 실행하도록 구현될 수 있다. 여기서, 적어도 하나의 프로그램 코드는 대화방 정렬 방법을 처리하기 위해 구현된 프로그램의 코드에 대응될 수 있다.
대화방 정렬 방법은 도시된 순서대로 발생하지 않을 수 있으며, 단계들 중 일부가 생략되거나 추가의 과정이 더 포함될 수 있다.
단계(S310)에서 프로세서(110)는 대화방 정렬 방법을 위한 프로그램 파일에 저장된 프로그램 코드를 메모리(120)에 로딩할 수 있다. 예를 들어, 대화방 정렬 방법을 위한 프로그램 파일은 도 1을 통해 설명한 영구 저장 장치(130)에 저장되어 있을 수 있고, 프로세서(110)는 버스를 통해 영구 저장 장치(130)에 저장된 프로그램 파일로부터 프로그램 코드가 메모리(120)에 로딩되도록 컴퓨터 시스템(110)을 제어할 수 있다. 이때, 프로세서(110) 및 프로세서(110)가 포함하는 저장부(210), 산출부(220), 및 정렬부(230) 각각은 메모리(120)에 로딩된 프로그램 코드 중 대응하는 부분의 명령을 실행하여 이후 단계들(S320 내지 S340)을 실행하기 위한 프로세서(110)의 서로 다른 기능적 표현들일 수 있다. 단계들(S320 내지 S340)의 실행을 위해, 프로세서(110) 및 프로세서(110)의 구성요소들은 직접 제어 명령에 따른 연산을 처리하거나 또는 컴퓨터 시스템(100)을 제어할 수 있다.
단계(S320)에서 저장부(210)는 메신저 상의 대화방 각각에 대하여 대화관련 이벤트가 감지되는 경우 이벤트 감지 시점과 관련된 상황 정보를 인지한 후 해당 이벤트와 연계하여 저장할 수 있다. 이때, 대화관련 이벤트는 대화방을 통해 메시지나 멀티미디어 컨텐츠(예컨대, 스탬프, 스티커, 이모지, 사진, 이미지, 동영상 등) 등 각종 데이터를 주고 받음에 따라 발생되는 모든 이벤트를 의미할 수 있다. 그리고, 상황 정보는 대화관련 이벤트가 발생한 시점의 시간 정보, 대화관련 이벤트가 발생한 시점에 컴퓨터 시스템(100)에서 획득 가능한 위치 정보 등을 포함할 수 있다. 위치 정보의 경우 GPS(global positioning system) 등을 이용한 위경도 정보나, WiFi AP(access point) 정보와 같은 네트워크 접속 정보를 이용한 장소 정보 등을 활용할 수 있다. 저장부(210)는 사용자가 각 대화방에서 활동할 때의 상황 정보로서 대화관련 이벤트가 감지된 시점의 시간이나 위치 등을 포함한 상황 정보를 해당 이벤트와 연계하여 저장할 수 있다.
단계(S330)에서 산출부(220)는 대화방 별로 사용자의 대화 참여와 관련된 활동성 점수, 및 사용자의 현재 상황과 이전 대화관련 이벤트의 상황 간의 유사성 점수 중 적어도 하나를 산출할 수 있다. 이때, 산출부(220)는 메신저 상의 대화내역이 저장된 대화 DB를 이용하여 각 대화방마다 사용자의 대화 참여에 따른 활동성을 측정하여 점수로 환산함으로써 활동성 점수를 산출할 수 있다. 활동성의 일례는 대화방 내에서 사용자가 얼마나 많이 또는 얼마나 자주 이야기를 했는지에 관한 것으로, 대화방 내에서의 사용자의 대화 비율, 사용자의 전체 대화 수 대비 해당 대화방에서의 대화 비율 등으로 산출될 수 있다. 활동성의 다른 예는 사용자가 얼마나 대화를 많이 시작했는지에 관한 것으로, 마지막 대화 이후 일정 시간이 지난 후에 사용자가 먼저 새로운 대화를 시작한 횟수 등으로 산출될 수 있다. 활동성의 또 다른 예는 사용자가 일방적으로 대화하는 것이 아닌 상대방과 얼마나 균등하게 대화를 주고 받았는지, 스탬프, 스티커, 사진, 동영상 등과 같은 멀티미디어 컨텐츠를 얼마나 사용했는지, 대화가 끊이지 않고 얼마나 지속적으로 이루어졌는지 등에 관한 특징들을 점수로 환산할 수 있다. 그리고, 산출부(220)는 각 대화방 별로 대화방 정렬이 필요한 시점의 현재 시간이나 현재 위치 등을 포함한 사용자의 현재 상황 정보와 이전 대화관련 이벤트가 발생된 시점의 상황 정보를 비교하여 그 유사성을 점수로 환산할 수 있다. 대화방 별 활동성 점수와 상황 정보에 대한 유사성 점수를 산출함에 있어 과거 대화이력이나 대화관련 이벤트에 대해 시간 경과에 따라 점수 반영 비중을 적게 적용할 수 있다. 다시 말해, 대화방 별 활동성 점수와 상황 정보에 대한 유사성 점수는 가장 최근 대화 시간으로부터 경과된 시간에 따라 감소할 수 있다.
단계(S340)에서 정렬부(230)는 대화방 목록에 포함된 적어도 일부의 대화방을 활동성 점수와 유사성 점수 중 적어도 하나를 기준으로 정렬할 수 있다. 정렬부(230)는 대화방 별 활동성 점수와 상황 정보에 대한 유사성 점수 중 적어도 하나를 바탕으로 각 대화방에 대해 사용자가 현재 사용할 것인지에 대한 확률 점수를 산출할 수 있으며, 대화방 별 확률 점수를 기준으로 대화방 목록을 정렬할 수 있다. 정렬부(230)는 대화방 목록을 정렬하기 위한 기준으로서 활동성 점수와 유사상 점수를 동시에 사용할 수 있고, 활동성 점수와 유사성 점수를 각각 별개로 사용할 수 있다. 예를 들어, 활동성 점수에 따른 대화방 정렬과 유사성 점수에 따른 대화방 정렬을 각각 제공할 수 있다. 일례로, 정렬부(230)는 전체 대화방을 확률 점수에 따라 내림차순으로 정렬하여 대화방 간의 확률 점수의 감소치에 따라서 상위에 배치할 N개의 대화방을 선정한 후 선정된 대화방을 확률 점수 순으로 목록 상단에 배치하고 나머지 대화방은 기존 정렬 기준에 따라 나열할 수 있다. 이때, N개의 대화방을 선정하기 위한 클러스터링 문제에서 가장 최적의 클러스터링 개수 K를 찾는 문제로 엘보 메소드(elbow method) 등을 사용할 수 있다. 그리고, 상위에 배치할 N개의 대화방을 선정함에 있어 컴퓨터 시스템(100)의 디스플레이의 한 화면에 보이는 대화방의 개수를 고려하여 최대값을 제한할 수 있으며, 다시 말해 상위에 배치할 대화방의 개수는 최대값 이내로 정해질 수 있다. 기존 정렬 방식은 대화방에 대하여 메시지를 보내거나 받은 시간이 최근일수록, 혹은 미확인 메시지의 개수가 많을수록, 혹은 즐겨찾기에 등록된 경우 목록의 상위에 정렬될 수 있다. 다른 예로, 정렬부(230)는 목록에 포함된 전체 대화방을 대화방 별 확률 점수에 따라 내림차순으로 정렬할 수 있다. 또 다른 예로, 정렬부(230)는 확률 점수 순으로 상위 일정 개수(고정 개수, 예컨대 3개)의 대화방을 선정하여 전체 대화방 중 선정된 대화방을 확률 점수 순으로 목록 상단에 배치하고 나머지 대화방은 기존 정렬 기준에 따라 나열할 수 있다. 그리고, 정렬부(230)는 대화방 목록을 기존 정렬 방식으로 유지하고 있다가 사용자로부터 요청이 있을 때 대화방 별 활동성 점수와 상황 정보에 대한 유사성 점수 중 적어도 하나를 이용하여 한시적으로(예컨대, 1분) 대화방 정렬을 변경할 수 있다.
따라서, 본 발명은 대화방 내에서의 활동성과 활동 시의 상황 정보를 바탕으로 사용자가 활발히 사용하거나 때와 장소에 따라 사용자가 사용할 것으로 예상되는 대화방을 자동으로 상단에 위치시켜 대화방을 정렬할 수 있다.
도 4는 본 발명의 일 실시예에 있어서 대화관련 이벤트의 상황 정보를 저장하는 과정의 예시를 설명하기 위한 도면이다.
도 4를 참조하면, 대화 DB는 대화이력으로서 대화관련 이벤트가 발생된 대화방 정보를 시간(40) 순으로 저장한 대화방 타임 테이블(410)을 포함할 수 있다. 그리고, 컴퓨터 시스템(100)은 시스템에서 인지된 사용자의 위치 변화를 시간(40) 순으로 기록하기 위한 별도의 DB로서 위치 타임 테이블(420)을 구축할 수 있다. 예를 들어, WiFi AP 정보에 따라 장소 별 인(in)/아웃(out) 상태를 기록하거나, 혹은 위/경도 값을 주기적으로 혹은 대화관련 이벤트 별로 기록함으로써 위치 타임 테이블(420)을 구축할 수 있다. 이러한 대화방 타임 테이블(410)과 위치 타임 테이블(420)을 이용하여 특정 상황(특정 시간 또는 특정 장소)에서의 대화이력이 있는 대화방 정보를 확인하거나 특정 대화방 내에서의 이전 대화이력에 대해 해당 시점의 상황 정보를 확인할 수 있다.
대화방 별 활동성 점수와 상황 정보에 대한 유사성 점수를 산출하는 구체적인 과정은 다음과 같다.
산출부(220)는 개별 대화방에서의 전체 대화 수 대비 사용자의 대화 수의 비율, 전체 대화방에서의 사용자의 대화 수 총합 대비 개별 대화방에서의 사용자의 대화 수의 비율, 개별 대화방에서의 전체 대화 수 대비 화자가 바뀐 횟수의 비율, 개별 대화방에서 마지막 대화 이후 사용자가 대화를 시작한 횟수, 개별 대화방에서 멀티미디어 컨텐츠를 송수신한 횟수, 개별 대화방이 생성된 후 경과된 날짜 수 대비 대화가 있는 날짜 수의 비율 중 적어도 하나를 이용하여 활동성 점수를 산출할 수 있다.
대화방 별 활동성 점수를 계산하는 과정의 일례는 표 1과 같다.
Figure 112017057765350-pat00001
상기에서는 score1과 score2를 합산하여 활동성 점수를 계산하는 것으로 설명하고 있으나, score1과 score2 중 적어도 하나만을 이용할 수도 있고 score1과 score2 각각에 서로 다른 가중치를 부여하는 것 또한 가능하다.
그리고, 산출부(220)는 사용자의 현재 상황과 대응되는 상황 정보를 가진 과거 대화이력을 이용하여 유사성 점수를 계산할 수 있다. 이때, 산출부(220)는 현재 시점의 상황과 대응되는 시간이나 장소에서 이루어진 대화이력만을 대상으로 하여 개별 대화방에서의 전체 대화 수 대비 사용자의 대화 수의 비율과 전체 대화방에서의 사용자의 대화 수 총합 대비 개별 대화방에서의 사용자의 대화 수의 비율 중 적어도 하나를 이용하여 상황 정보에 대한 유사성 점수를 산출할 수 있다.
상황 정보에 대한 유사성 점수를 계산하는 과정의 일례는 표 2와 같다.
상황 정보에 대한 유사성 점수를 산출하기 위해서는 대화방 정렬이 필요한 시점의 현재 상황(예를 들어, 시간: 목요일 오후 5시 27분, 위치: 집)을 인지한다. 그리고, 단위 시간(예컨대, 일주일 등)을 일정 크기의 타임슬롯(timeslot)으로 나누게 되는데, 예를 들어 20분을 하나의 타임슬롯으로 삼고 일주일을 총 504개(7(일)×24(시간)×3(20분/60분)=504개)의 타임슬롯으로 나눈다.
표 2에서 '현 timeslot'은 대화방 정렬이 필요한 현재 시간 '목요일 오후 5시 27분'에 해당되는 타임슬롯이고, '현 장소'는 대화방 정렬이 필요한 현재 장소 '집'을 의미한다.
Figure 112017057765350-pat00002
유사성 점수 계산 시 타임슬롯을 이용하지 않고 현재 시각과 각 대화 시각의 차이를 이용하는 방법 또한 가능하다. 예를 들어, 대화방 정렬이 필요한 현재 시간 '목요일 오후 5시 27분'의 일정 시간 전후 시간대(목요일 오후 5시 12분부터 5시 42분까지) 동안의 과거 대화 이벤트를 이용할 수 있다.
집과 회사 등과 같이 자주 가는 장소를 기준으로 상황 정보를 기록하고 사용자의 현재 장소에서 일어난 과거 대화 이벤트를 이용하여 유사성 점수를 계산할 수 있다. 이때, 개별 장소가 아닌 위/경도를 사용하여 거리를 기준으로 하여 유사성 점수를 계산하는 것 또한 가능하다. 예를 들어, 사용자의 현재 위치를 나타내는 경/위도 값을 중심으로 일정 반경(예컨대, 1km) 이내에서의 과거 대화 이벤트를 이용할 수 있다.
상기에서는 score3과 score4를 승산하여 유사성 점수를 계산하는 것으로 설명하고 있으나, score3과 score4중 적어도 하나만을 이용할 수도 있고 score3과 score4 각각에 서로 다른 가중치를 부여하는 것 또한 가능하다.
표 1과 표 2의 활동성 점수와 유사성 점수의 산출식은 예시적인 것으로 이에 한정되는 것은 아니며 대화방 내에서의 활동성 및/또는 상황 정보에 대한 유사성을 나타내는 특징들을 점수로 환산 가능한 다른 산출 방식을 적용 가능함은 물론이다.
도 5는 본 발명의 일 실시예에 있어서 대화방을 정렬하는 과정의 예시를 도시한 순서도이다.
단계(S501)에서 정렬부(230)는 대화방 별 활동성 점수와 상황 정보에 대한 유사성 점수 중 적어도 하나를 바탕으로 각 대화방에 대해 사용자가 현재 사용할 것인지에 대한 확률 점수를 산출할 수 있다. 예를 들어, 정렬부(230)는 각 대화방 별로 해당 대화방의 활동성 점수와 상황 정보에 대한 유사성 점수를 합산하여 대화방 별 확률 점수를 계산할 수 있다.
단계(S502)에서 정렬부(230)는 대화방 간의 확률 점수의 차이를 이용하여 목록 상위에 배치할 N개의 대화방을 선정할 수 있다. 화면에 보이는 대화방 개수에 따라서, 혹은 대화방 관리 정책에 따라서 N에 대한 최대값과 최소값을 미리 지정할 수 있다. 구체적인 예를 들어, 도 6을 참조하면 정렬부(230)는 전체 대화방(A~L)을 확률 점수에 따라 내림차순으로 정렬한 후(S61), 대화방 간의 확률 점수의 차이를 계산할 수 있다(S62). 이때, 확률 점수에 따라 내림차순으로 정렬된 대화방(A~L)에 대해 대화방 간의 점수 차이는 {1, 1, 3, 1, 1, 1, 1, 4, 1, 1, 1}와 같다. 이어, 정렬부(230)는 대화방 간에 확률 점수의 차이가 큰 순서대로 대화방을 분리해갈 수 있다(clustering). 도 7에 도시한 바와 같이, 확률 점수에 따라 내림차순으로 정렬된 대화방(A~L) 중에서 점수의 감소치가 가장 큰 대화방들(대화방 K, J)을 기준으로 리스트를 일차 분리한다(S73). 다음으로, 도 8에 도시한 바와 같이 점수의 감소치가 두 번째로 큰 대화방들(대화방 F, A)을 기준으로 리스트를 이차로 추가 분리한다(S84). 다시 말해, 정렬부(230)는 초기 과정(stage1)으로 대화방 별 확률 점수를 내림차순으로 정렬한 리스트 [20, 19, 18, 15, 14, 13, 12, 11, 7, 6, 5, 4]를 구성한 후, 다음 과정(stage2)으로 점수의 감소치가 가장 큰 지점을 기준으로 [20, 19, 18, 15, 14, 13, 12, 11], [7, 6, 5, 4]로 분리하고, 이어 또 다음 과정(stage3)으로 점수의 감소치가 두 번째로 큰 지점을 기준으로 [20, 19, 18], [15, 14, 13, 12, 11], [7, 6, 5, 4]로 분리할 수 있다. 각 분리된 클러스터들 간의 변화량(inter-variance, intra-variance)을 계산하여 각각을 최대 혹은 최소하는 지점을 찾을 수 있으며, 이때 해당 지점의 결과가 세 번째 과정(stage3)이라고 한다면 상위 그룹에 속한 개수에 따라 N은 3이 된다.
다시 도 5에서, 단계(S503)에서 정렬부(230)는 전체 대화방 중 N개의 대화방을 목록의 상단에 배치하고 나머지 대화방을 기존 정렬 기준에 따라 배치할 수 있다. 정렬부(230)는 상기한 예시에서 상위 그룹인 [20, 19, 18]의 점수를 가진 대화방 D, L, F을 선별하여 목록의 상단에 배치할 수 있다. 일례로, 목록 상단에 배치되는 대화방 D, L, F는 확률 점수에 따라 내림차순으로 정렬될 수 있다.
도 9는 메신저의 대화방 목록 화면(900)을 나타내고 있다. 도 9에 도시한 바와 같이, 대화방 목록 화면(900)에는 사용자가 다른 사용자와 메시지를 주고 받는 대화방을 정렬한 대화방 목록(910)이 포함될 수 있다. 예를 들어, 대화방 목록(910)은 기존 정렬 기준 중 하나인 메시지 송수신 시간을 기준으로 내림차순으로 정렬될 수 있으며, 다시 말해 사용자가 메시지를 보냈거나 받은 시간이 최근일수록 대화방이 목록 상위에 정렬될 수 있다. 이때, 대화방 목록 화면(900)에는 대화방 목록(910)에 대해 사용자가 활발히 사용하거나 현재 상황에서 사용자가 사용할 것으로 예상되는 대화방을 별도로 정렬하기 위한 '선호 대화방' 메뉴(901)가 포함될 수 있다.
대화방이 기존 정렬 기준으로 정렬된 초기 대화방 목록 화면(900)에서 사용자가 '선호 대화방' 메뉴(901)를 조작하는 경우, 도 10에 도시한 바와 같이 대화방 별 활동성 점수와 상황 정보에 대한 유사성 점수 중 적어도 하나를 바탕으로 선정된 N개의 대화방, 즉 선호 대화방(1011)이 대화방 목록(910)의 최상위부터 확률 점수에 따른 내림차순으로 정렬되어 표시될 수 있다. 도 5 내지 도 8을 통해 설명한 상위 그룹인 [20, 19, 18]의 점수를 가진 대화방 D, L, F가 선호 대화방(1011)으로 목록 상단에 정렬될 수 있고, 그 외 나머지 대화방(1012)은 선호 대화방(1011)의 아래에 기존 정렬 기준, 예를 들어 메시지 송수신 시간을 기준으로 내림차순으로 정렬될 수 있다. 선호 대화방(1011)이 대화방 목록(910)의 상단에 정렬된 상태에서 사용자가 다시 '선호 대화방' 메뉴(901)를 조작하거나 일정 시간(예컨대, 1분)이 경과하는 경우 도 9에 도시한 기존 정렬 상태로 복귀할 수 있다.
다른 예로, 대화방 목록 화면(900)에는 '선호 대화방' 메뉴(901)를 활동성 점수에 따라 대화방을 정렬하기 위한 제1 메뉴와, 상황 정보에 대한 유사성 점수에 따라 대화방을 정렬하기 위한 제2 메뉴로 각각 구성하여 제공하는 것 또한 가능하다. 대화방 목록 화면(900)에서 사용자가 제1 메뉴를 조작하는 경우 평상 시에 사용자가 활발히 활동했던 대화방을 목록 상단에 정렬할 수 있고, 제2 메뉴를 조작하는 경우 사용자의 현재 상황(시간 및/또는 위치)과 유사한 상황에서 대화했던 대화방을 목록 상단에 정렬할 수 있다.
이처럼 본 발명의 실시예들에 따르면, 대화방 내에서의 활동성과 활동 시의 상황 정보를 바탕으로 대화방을 자동 정렬함으로써 특정 대화방을 일일이 설정하지 않아도 사용자가 활발히 사용하거나 때와 장소에 따라 사용자가 사용할 것으로 예상되는 대화방을 자동으로 상단에 위치시켜 대화방을 쉽고 편리하게 찾아 대화할 수 있도록 도와줄 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수 개의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 어플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 컴퓨터로 구현되는 대화방 정렬 방법에 있어서,
    대화방 목록에 포함된 대화방 각각에 대하여 대화관련 이벤트가 감지되는 경우 이벤트 감지 시점과 관련된 상황 정보를 인지하여 상기 대화관련 이벤트와 연계하여 저장하는 단계;
    상기 대화방 별로 사용자의 대화 참여와 관련된 활동성 점수, 및 현재 시점의 상황과 상기 상황 정보 간의 유사성 점수 중 적어도 하나를 산출하는 단계; 및
    상기 대화방 목록에 포함된 적어도 일부의 대화방을 상기 활동성 점수와 상기 유사성 점수 중 적어도 하나를 기준으로 정렬하는 단계
    를 포함하고,
    상기 정렬하는 단계는,
    상기 활동성 점수를 이용하여 상기 대화방 별 확률 점수를 계산하는 단계; 및
    상기 대화방 별 확률 점수를 이용하여 전체 대화방 중 일부 대화방을 선정하여 선정된 대화방을 목록의 상위에 배치하는 단계
    를 포함하는 대화방 정렬 방법.
  2. 제1항에 있어서,
    상기 저장하는 단계는,
    상기 대화관련 이벤트가 감지된 시점의 시간 정보와 위치 정보 중 적어도 하나를 포함하는 상황 정보를 저장하는 것
    을 특징으로 하는 대화방 정렬 방법.
  3. 제1항에 있어서,
    상기 저장하는 단계는,
    상기 대화관련 이벤트가 감지된 대화방 정보를 시간 순으로 저장한 대화방 타임 테이블과, 상기 상황 정보로서 상기 사용자의 위치 정보를 시간 순으로 저장한 위치 타임 테이블을 구축하는 것
    을 특징으로 하는 대화방 정렬 방법.
  4. 제1항에 있어서,
    상기 산출하는 단계는,
    상기 대화방에서의 전체 대화 수 대비 사용자의 대화 수의 비율, 전체 대화방에서의 사용자의 대화 수 총합 대비 상기 대화방에서의 사용자의 대화 수의 비율, 상기 대화방에서의 전체 대화 수 대비 화자가 바뀐 횟수의 비율 중 적어도 하나를 이용하여 상기 활동성 점수를 산출하는 것
    을 특징으로 하는 대화방 정렬 방법.
  5. 제1항에 있어서,
    상기 산출하는 단계는,
    상기 대화방에서 마지막 대화 이후 사용자가 대화를 시작한 횟수, 상기 대화방에서 멀티미디어 컨텐츠를 송수신한 횟수, 상기 대화방이 생성된 후 경과된 날짜 수 대비 대화가 있는 날짜 수의 비율 중 적어도 하나를 이용하여 상기 활동성 점수를 산출하는 것
    을 특징으로 하는 대화방 정렬 방법.
  6. 제1항에 있어서,
    상기 산출하는 단계는,
    상기 대화방 별로 상기 상황 정보가 현재 시점의 상황과 유사한 대화이력을 이용하여 상기 유사성 점수를 산출하는 것
    을 특징으로 하는 대화방 정렬 방법.
  7. 제1항에 있어서,
    상기 산출하는 단계는,
    현재 시점의 상황과 대응되는 시간에 이루어진 상기 대화방에서의 전체 대화 수 대비 사용자의 대화 수의 비율, 현재 시점의 상황과 대응되는 시간에 이루어진 전체 대화방에서의 사용자의 대화 수 총합 대비 상기 대화방에서의 사용자의 대화 수의 비율 중 적어도 하나를 이용하여 상기 유사성 점수를 산출하는 것
    을 특징으로 하는 대화방 정렬 방법.
  8. 제1항에 있어서,
    상기 산출하는 단계는,
    현재 시점의 상황과 대응되는 장소에서 이루어진 상기 대화방에서의 전체 대화 수 대비 사용자의 대화 수의 비율, 현재 시점의 상황과 대응되는 장소에서 이루어진 전체 대화방에서의 사용자의 대화 수 총합 대비 상기 대화방에서의 사용자의 대화 수의 비율 중 적어도 하나를 이용하여 상기 유사성 점수를 산출하는 것
    을 특징으로 하는 대화방 정렬 방법.
  9. 삭제
  10. 제1항에 있어서,
    상기 정렬하는 단계는,
    상기 활동성 점수와 상기 유사성 점수를 합산하여 상기 대화방 별 확률 점수를 계산하는 단계;
    상기 대화방 간의 확률 점수의 차이를 이용하여 전체 대화방 중 N개의 대화방을 선정하는 단계; 및
    상기 전체 대화방 중 상기 N개의 대화방을 목록의 상위에 배치하고 나머지 대화방을 기존 정렬 기준으로 배치하는 단계
    를 포함하는 대화방 정렬 방법.
  11. 컴퓨터 시스템과 결합되어 대화방 정렬 방법을 실행시키기 위해 컴퓨터 판독 가능한 기록 매체에 기록된 컴퓨터 프로그램에 있어서,
    상기 대화방 정렬 방법은,
    대화방 목록에 포함된 대화방 각각에 대하여 대화관련 이벤트가 감지되는 경우 이벤트 감지 시점과 관련된 상황 정보를 인지하여 상기 대화관련 이벤트와 연계하여 저장하는 단계;
    상기 대화방 별로 사용자의 대화 참여와 관련된 활동성 점수, 및 현재 시점의 상황과 상기 상황 정보 간의 유사성 점수 중 적어도 하나를 산출하는 단계; 및
    상기 대화방 목록에 포함된 적어도 일부의 대화방을 상기 활동성 점수와 상기 유사성 점수 중 적어도 하나를 기준으로 정렬하는 단계
    를 포함하고,
    상기 정렬하는 단계는,
    상기 활동성 점수를 이용하여 상기 대화방 별 확률 점수를 계산하는 단계; 및
    상기 대화방 별 확률 점수를 이용하여 전체 대화방 중 일부 대화방을 선정하여 선정된 대화방을 목록의 상위에 배치하는 단계
    를 포함하는, 컴퓨터 판독 가능한 기록 매체에 기록된 컴퓨터 프로그램.
  12. 컴퓨터로 구현되는 대화방 정렬 시스템에 있어서,
    컴퓨터가 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
    를 포함하고,
    상기 적어도 하나의 프로세서는,
    대화방 목록에 포함된 대화방 각각에 대하여 대화관련 이벤트가 감지되는 경우 이벤트 감지 시점과 관련된 상황 정보를 인지하여 상기 대화관련 이벤트와 연계하여 저장하는 저장부;
    상기 대화방 별로 사용자의 대화 참여와 관련된 활동성 점수, 및 현재 시점의 상황과 상기 상황 정보 간의 유사성 점수 중 적어도 하나를 산출하는 산출부; 및
    상기 대화방 목록에 포함된 적어도 일부의 대화방을 상기 활동성 점수와 상기 유사성 점수 중 적어도 하나를 기준으로 정렬하는 정렬부
    를 포함하고,
    상기 정렬부는,
    상기 활동성 점수를 이용하여 상기 대화방 별 확률 점수를 계산한 후,
    상기 대화방 별 확률 점수를 이용하여 전체 대화방 중 일부 대화방을 선정하여 선정된 대화방을 목록의 상위에 배치하는 것
    을 특징으로 하는 대화방 정렬 시스템.
  13. 제12항에 있어서,
    상기 저장부는,
    상기 대화관련 이벤트가 감지된 시점의 시간 정보와 위치 정보 중 적어도 하나를 포함하는 상황 정보를 저장하는 것
    을 특징으로 하는 대화방 정렬 시스템.
  14. 제12항에 있어서,
    상기 산출부는,
    상기 대화방에서의 전체 대화 수 대비 사용자의 대화 수의 비율, 전체 대화방에서의 사용자의 대화 수 총합 대비 상기 대화방에서의 사용자의 대화 수의 비율, 상기 대화방에서의 전체 대화 수 대비 화자가 바뀐 횟수의 비율 중 적어도 하나를 이용하여 상기 활동성 점수를 산출하는 것
    을 특징으로 하는 대화방 정렬 시스템.
  15. 제12항에 있어서,
    상기 산출부는,
    상기 대화방에서 마지막 대화 이후 사용자가 대화를 시작한 횟수, 상기 대화방에서 멀티미디어 컨텐츠를 송수신한 횟수, 상기 대화방이 생성된 후 경과된 날짜 수 대비 대화가 있는 날짜 수의 비율 중 적어도 하나를 이용하여 상기 활동성 점수를 산출하는 것
    을 특징으로 하는 대화방 정렬 시스템.
  16. 제12항에 있어서,
    상기 산출부는,
    상기 대화방 별로 상기 상황 정보가 현재 시점의 상황과 유사한 대화이력을 이용하여 상기 유사성 점수를 산출하는 것
    을 특징으로 하는 대화방 정렬 시스템.
  17. 제12항에 있어서,
    상기 산출부는,
    현재 시점의 상황과 대응되는 시간에 이루어진 상기 대화방에서의 전체 대화 수 대비 사용자의 대화 수의 비율, 현재 시점의 상황과 대응되는 시간에 이루어진 전체 대화방에서의 사용자의 대화 수 총합 대비 상기 대화방에서의 사용자의 대화 수의 비율 중 적어도 하나를 이용하여 상기 유사성 점수를 산출하는 것
    을 특징으로 하는 대화방 정렬 시스템.
  18. 제12항에 있어서,
    상기 산출부는,
    현재 시점의 상황과 대응되는 장소에서 이루어진 상기 대화방에서의 전체 대화 수 대비 사용자의 대화 수의 비율, 현재 시점의 상황과 대응되는 장소에서 이루어진 전체 대화방에서의 사용자의 대화 수 총합 대비 상기 대화방에서의 사용자의 대화 수의 비율 중 적어도 하나를 이용하여 상기 유사성 점수를 산출하는 것
    을 특징으로 하는 대화방 정렬 시스템.
  19. 삭제
  20. 제12항에 있어서,
    상기 정렬부는,
    상기 활동성 점수와 상기 유사성 점수를 합산하여 상기 대화방 별 확률 점수를 계산한 후,
    상기 대화방 간의 확률 점수의 차이를 이용하여 전체 대화방 중 N개의 대화방을 선정하고,
    상기 전체 대화방 중 상기 N개의 대화방을 목록의 상위에 배치하고 나머지 대화방을 기존 정렬 기준으로 배치하는 것
    을 특징으로 하는 대화방 정렬 시스템.
KR1020170076613A 2017-06-16 2017-06-16 사용자 대화 활동성 및 대화 상황 정보를 활용한 대화방 정렬 방법 및 그 시스템 KR101910581B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020170076613A KR101910581B1 (ko) 2017-06-16 2017-06-16 사용자 대화 활동성 및 대화 상황 정보를 활용한 대화방 정렬 방법 및 그 시스템
JP2018095447A JP7089400B2 (ja) 2017-06-16 2018-05-17 チャットルーム整列方法、コンピュータプログラムおよびチャットルーム整列システム
US15/994,156 US10805100B2 (en) 2017-06-16 2018-05-31 Method and system for sorting chatroom list based on conversational activeness and contextual information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170076613A KR101910581B1 (ko) 2017-06-16 2017-06-16 사용자 대화 활동성 및 대화 상황 정보를 활용한 대화방 정렬 방법 및 그 시스템

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020180122970A Division KR102164401B1 (ko) 2018-10-16 2018-10-16 사용자 대화 활동성 및 대화 상황 정보를 활용한 대화방 정렬 방법 및 그 시스템

Publications (1)

Publication Number Publication Date
KR101910581B1 true KR101910581B1 (ko) 2018-10-22

Family

ID=64102477

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170076613A KR101910581B1 (ko) 2017-06-16 2017-06-16 사용자 대화 활동성 및 대화 상황 정보를 활용한 대화방 정렬 방법 및 그 시스템

Country Status (3)

Country Link
US (1) US10805100B2 (ko)
JP (1) JP7089400B2 (ko)
KR (1) KR101910581B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112085323A (zh) * 2020-07-30 2020-12-15 北京明略软件系统有限公司 基于活跃度指标的关联可信度评估方法和装置
CN112653616A (zh) * 2020-12-30 2021-04-13 深圳市镜玩科技有限公司 白名单处理方法、相关装置、设备及介质
KR20210152916A (ko) * 2020-06-09 2021-12-16 애플 인크. 메시지들을 위한 사용자 인터페이스들
KR20220160913A (ko) 2021-05-28 2022-12-06 삼성에스디에스 주식회사 유사 대화방 표시 방법, 대화방 그룹 표시 방법, 그리고 이를 구현하기 위한 장치

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10104025B2 (en) * 2016-05-23 2018-10-16 Oath Inc. Virtual chat rooms
WO2019139192A1 (ko) * 2018-01-12 2019-07-18 라인플러스 주식회사 메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션
KR20200014108A (ko) * 2018-07-31 2020-02-10 라인플러스 주식회사 대화 내용에서 텍스트를 이용하여 비텍스트를 검색하는 방법과 시스템 및 비-일시적인 컴퓨터 판독 가능한 기록 매체
CN111385664B (zh) * 2018-12-29 2023-04-14 广州市百果园网络科技有限公司 直播间的互动数据处理方法、装置、存储介质及服务器
US11206236B2 (en) * 2019-06-21 2021-12-21 Cisco Technology, Inc. Systems and methods to prioritize chat rooms using machine learning
CN110704659B (zh) * 2019-09-30 2023-09-26 腾讯科技(深圳)有限公司 图像列表的排序方法和装置、存储介质及电子装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004226633A (ja) * 2003-01-22 2004-08-12 Honda Motor Co Ltd 対話制御装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4130042B2 (ja) * 1999-08-12 2008-08-06 富士通株式会社 会話空間推薦方法及び装置
JP2002123478A (ja) * 2000-10-17 2002-04-26 Isao:Kk チャットシステム、チャット情報処理装置、チャット情報処理方法、および、記録媒体
KR20020074304A (ko) 2001-03-20 2002-09-30 엘지전자주식회사 무선 통신망을 이용한 휴대 단말기의 모바일 메신저서비스 시스템 및 방법
KR20050115364A (ko) * 2004-06-02 2005-12-07 봉래 박 오프라인에 기반을 둔 온라인 채팅 시스템 및 그 방법
US8924488B2 (en) * 2010-07-27 2014-12-30 At&T Intellectual Property I, L.P. Employing report ratios for intelligent mobile messaging classification and anti-spam defense
US20130169742A1 (en) * 2011-12-28 2013-07-04 Google Inc. Video conferencing with unlimited dynamic active participants
KR20140120982A (ko) 2013-04-03 2014-10-15 에스케이플래닛 주식회사 메시지 분석 방법, 이를 위한 장치 및 시스템
US9648058B2 (en) * 2013-11-01 2017-05-09 Facebook, Inc. Media plug-in for third-party system
KR101586688B1 (ko) * 2014-08-19 2016-01-20 주식회사 카카오 컨텐츠 공유 방법, 디바이스 및 컴퓨터 프로그램
JP5957048B2 (ja) * 2014-08-19 2016-07-27 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 曖昧性を解消する教師データの生成方法、生成システム、及び生成プログラム
CN107710197B (zh) * 2015-09-28 2021-08-17 谷歌有限责任公司 在通信网络上共享图像和图像相册
US10796697B2 (en) * 2017-01-31 2020-10-06 Microsoft Technology Licensing, Llc Associating meetings with projects using characteristic keywords

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004226633A (ja) * 2003-01-22 2004-08-12 Honda Motor Co Ltd 対話制御装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
네이버 블로그, ‘카카오톡 대화분석기 어플 소개 및 어플 제작 방법’, 2015.09.04.*
동아일보, ‘씨온, '테마 채팅'으로 사용자 유대 강화’, 2014.09.24.*

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210152916A (ko) * 2020-06-09 2021-12-16 애플 인크. 메시지들을 위한 사용자 인터페이스들
KR102565399B1 (ko) * 2020-06-09 2023-08-08 애플 인크. 메시지들을 위한 사용자 인터페이스들
US11743213B2 (en) 2020-06-09 2023-08-29 Apple Inc. User interfaces for messages
US11991127B2 (en) 2020-06-09 2024-05-21 Apple Inc. User interfaces for messages
CN112085323A (zh) * 2020-07-30 2020-12-15 北京明略软件系统有限公司 基于活跃度指标的关联可信度评估方法和装置
CN112653616A (zh) * 2020-12-30 2021-04-13 深圳市镜玩科技有限公司 白名单处理方法、相关装置、设备及介质
CN112653616B (zh) * 2020-12-30 2023-04-28 深圳市镜玩科技有限公司 白名单处理方法、相关装置、设备及介质
KR20220160913A (ko) 2021-05-28 2022-12-06 삼성에스디에스 주식회사 유사 대화방 표시 방법, 대화방 그룹 표시 방법, 그리고 이를 구현하기 위한 장치

Also Published As

Publication number Publication date
US10805100B2 (en) 2020-10-13
JP2019003624A (ja) 2019-01-10
US20180367325A1 (en) 2018-12-20
JP7089400B2 (ja) 2022-06-22

Similar Documents

Publication Publication Date Title
KR101910581B1 (ko) 사용자 대화 활동성 및 대화 상황 정보를 활용한 대화방 정렬 방법 및 그 시스템
KR102164401B1 (ko) 사용자 대화 활동성 및 대화 상황 정보를 활용한 대화방 정렬 방법 및 그 시스템
US10411945B2 (en) Time-distributed and real-time processing in information recommendation system, method and apparatus
KR102601687B1 (ko) 메시지 그룹 관리를 위한 방법, 시스템, 및 비-일시적인 컴퓨터 판독가능한 기록 매체
US9307362B2 (en) Systems and methods for optimizing message notification timing based on geographic location
WO2018157721A1 (zh) 信息获取方法、提供方法、装置及系统、存储介质
CN109417502B (zh) 用于提供基于消息的通知的方法及系统以及存储介质
KR102663909B1 (ko) 사용자간 관련성 정보 제공 방법 및 시스템
TW201317933A (zh) 活動出席通知系統及方法
KR20200043659A (ko) 미응답 메시지를 수집하는 방법, 시스템, 및 비-일시적인 컴퓨터 판독가능한 기록 매체
CN111130986B (zh) 消息发送方法、装置、设备及存储介质
EP3125581B1 (en) Address book information service system, and method and device for address book information service therein
KR20200120288A (ko) 하나의 대화방에서 다수의 그룹통화를 제공하는 방법, 시스템, 및 비-일시적인 컴퓨터 판독가능한 기록 매체
US20230283983A1 (en) Proximity-based messaging
KR102230875B1 (ko) 휴대 단말기에서 채팅방 관리 방법 및 그 장치
JP2020177655A (ja) イベントメッセージを管理するための方法、システム、および非一時的なコンピュータ読み取り可能な記録媒体
EP3516831B1 (en) Uniform resource identifier and image sharing for contextual information display
US20170187872A1 (en) System and method for device availability signaling
KR20210009301A (ko) 사용 정도에 기초하여 대화방을 처리하는 방법과 시스템 및 비-일시적인 컴퓨터 판독가능한 기록 매체
KR102600688B1 (ko) 메신저 상에서 자동 응답 기능을 제공하는 방법 및 시스템
KR20200014107A (ko) 멀티 디바이스 환경에서 알림을 제공하는 방법과 시스템 및 비-일시적인 컴퓨터 판독 가능한 기록 매체
KR20230159099A (ko) 메시징 서비스 방법 및 장치
KR20240071357A (ko) 사용자간 관련성 정보 제공 방법 및 시스템
KR20200138977A (ko) 대화방에서 컨텐츠 생성자를 픽할 수 있는 방법, 시스템, 및 비-일시적인 컴퓨터 판독가능한 기록 매체
CN116389816A (zh) 直播动画特效交互方法及其装置、设备、介质

Legal Events

Date Code Title Description
A107 Divisional application of patent
GRNT Written decision to grant