KR20160016532A - 메시지 서비스를 제공하는 전자기기 및 그 전자기기가 컨텐트 제공하는 방법 - Google Patents

메시지 서비스를 제공하는 전자기기 및 그 전자기기가 컨텐트 제공하는 방법 Download PDF

Info

Publication number
KR20160016532A
KR20160016532A KR1020150026750A KR20150026750A KR20160016532A KR 20160016532 A KR20160016532 A KR 20160016532A KR 1020150026750 A KR1020150026750 A KR 1020150026750A KR 20150026750 A KR20150026750 A KR 20150026750A KR 20160016532 A KR20160016532 A KR 20160016532A
Authority
KR
South Korea
Prior art keywords
electronic device
content
user
message
keyword
Prior art date
Application number
KR1020150026750A
Other languages
English (en)
Other versions
KR102232929B1 (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 EP15179143.1A priority Critical patent/EP2980733A1/en
Priority to CN201580000958.3A priority patent/CN105453612B/zh
Priority to EP20190685.6A priority patent/EP3757928A1/en
Priority to PCT/KR2015/008015 priority patent/WO2016018111A1/en
Priority to CN201911163405.6A priority patent/CN110996271A/zh
Priority to US14/815,420 priority patent/US9832619B2/en
Priority to TW104124851A priority patent/TWI689201B/zh
Publication of KR20160016532A publication Critical patent/KR20160016532A/ko
Priority to US15/808,484 priority patent/US9986391B2/en
Priority to US16/410,575 priority patent/USRE49367E1/en
Priority to KR1020210036926A priority patent/KR102378513B1/ko
Application granted granted Critical
Publication of KR102232929B1 publication Critical patent/KR102232929B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Tourism & Hospitality (AREA)
  • Primary Health Care (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • General Health & Medical Sciences (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

본 발명의 일 실시예에 따른 메시지 서비스를 제공하는 전자기기는, 상대방 기기와 메시지를 송수신하는 통신부; 수신된 메시지, 상기 전자기기의 사용자가 입력한 메시지 및 상기 전자기기가 제공하는 적어도 하나의 답변 메시지를 상기 메시지 서비스 화면에 함께 표시하는 디스플레이; 및 상기 수신된 메시지를 이용하여 적어도 하나의 컨텐트를 추천하고, 상기 추천된 적어도 하나의 컨텐트를 포함하는 답변 메시지가 상기 상대방 기기에서 상기 전자기기 사용자가 입력한 메시지로 보여지도록, 상기 상대방 기기로 상기 답변 메시지를 제공하는 프로세서를 포함할 수 있다.

Description

메시지 서비스를 제공하는 전자기기 및 그 전자기기가 컨텐트 제공하는 방법 {Message Service Providing Device and Method Providing Content thereof}
본 발명은 대화 중에 사용자에게 컨텐트를 제공하는 방법 및 이를 위한 전자 기기에 관한 것이다.
최근 휴대용 단말기 보급률의 급속한 증가로 휴대 단말기는 이제 현대인의 생활 필수품으로 자리매김하게 되었다. 이와 같은 휴대 단말기는 고유의 음성 통화 서비스뿐만 아니라 각종 데이터 전송 서비스와 다양한 부가 서비스도 제공할 수 있게 되어 다양한 기능을 제공하고 있다.
특히, 스마트 단말기를 이용하여 사용자간의 커뮤니케이션이 활성화 되고 있다. 이러한 활성화 추세와 함께, 커뮤니케이션에서 보다 편리한 대화 환경을 제공하는 여러가지 기술이 개발되고 있다.
본 발명이 이루고자 하는 기술적 과제는 각종 전자기기를 사용하면서 보다 편리한 대화 환경을 제공하는 방법을 제공하는데 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 제 1 측면은, 상대방 기기와 메시지를 송수신하는 통신부; 수신된 메시지, 상기 전자기기의 사용자가 입력한 메시지 및 상기 전자기기가 제공하는 적어도 하나의 답변 메시지를 상기 메시지 서비스 화면에 함께 표시하는 디스플레이; 및 상기 수신된 메시지를 이용하여 적어도 하나의 컨텐트를 추천하고, 상기 추천된 적어도 하나의 컨텐트를 포함하는 답변 메시지가 상기 상대방 기기에서 상기 전자기기 사용자가 입력한 메시지로 보여지도록, 상기 상대방 기기로 상기 답변 메시지를 제공하는 프로세서를 포함하는 전자기기를 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 컨텐트 제공 시스템을 설명하기 위한 구성도이다.
도 2은 본 발명의 일 실시예를 설명하기 위한 전자기기의 유저 인터페이스(UI)를 도시하는 도면이다.
도 3은 본 발명의 일 실시예에 따른 전자기기의 컨텐트 제공 방법을 설명하기 위한 흐름도이다.
도 4 내지 도 7은 본발명의 일 실시예에 따른 컨텐트 제공 방법을 설명하기 위하여 도시하는 도면이다.
도 8은 본 발명에 따른 컨텐트 제공 방법을 이용할 수 있는 다양한 전자기기의 종류 및 다양한 채팅 방식을 설명하기 위한 도면이다.
도 9a 는 전자기기에 포함된 답변 관련 컨텐트를 제공하는 지식 프레임 워크(120)을 설명하기 위한 도면이다.
도 9b는 본 발명의 일 실시예에 따른 전자기기(100)에서 각각의 블록도의 동작을 설명하기 위한 도면이다.
도 10a 내지 도 10d는 본 발명의 일 실시예에 따른 전자기기에서 제공하는 환경 설정 유저 인터페이스를 도시하는 도면이다.
도 11a 내지 도 11d는 전자기기가 답변 관련 컨텐트를 제공하는 방법을 도시하기 위한 도면이다.
도 12a는 전자기기가 답변 관련 컨텐트 제공하는 방법을 설명하기 위한 흐름도이다.
도 12b는 전자기기와 서버에 각각 포함된 모듈을 도시하는 도면이다.
도 13a는 전자기기가 답변 관련 컨텐트 제공하는 방법을 설명하기 위한 흐름도이다.
도 13b는 전자기기와 서버에 각각 포함된 모듈을 도시하는 도면이다.
도 14a는 전자기기가 답변 관련 컨텐트 제공하는 방법을 설명하기 위한 흐름도이다.
도 14b는 전자기기와 서버에 각각 포함된 모듈을 도시하는 도면이다.
도 15는 사용자들 간의 관계를 파악하기 위하여 서버의 데이터 베이스에 저장된 컨텐트를 활용하는 방법을 설명하기 위한 도면이다.
도 16는 사용자들 간의 관계를 파악하기 위하여 전자기기의 데이터 베이스에 저장된 컨텐트를 활용하는 방법을 설명하기 위한 도면이다.
도 17는 전자기기의 사용자와 상대방 기기의 사용자 간의 관계를 파악하기 위하여 전자기기의 데이터 베이스에 저장된 컨텐트 및 서버의 데이터 베이스에 저장된 컨텐트를 활용하는 방법을 설명하기 위한 도면이다.
도 18 내지 도 24는 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 설명하기 위하여 도시하는 도면이다.
도 25a 내지 도 25e은 본 발명의 일 실시예에 따른 답변에 이용 가능한 컨텐트를 제공하는 경우, 컨텐트 제공 화면을 도시하는 도면이다.
도 26은 전자기기가 컨텐트제공 레이아웃을 변경하는 인터페이스를 제공하는 것을 도시하는 도면이다.
도 27 내지 도 37는 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 설명하기 위하여 도시하는 도면이다.
도 38 내지 도 48는 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 설명하기 위하여 도시하는 도면이다.
도 49는 본 개시의 일 실시 예에 따른 사용자 단말 장치의 구성을 나타내는 블록도이며, 도 49에 도시된 사용자 단말 장치은 도 1의 전자기기 일 수 있다.
도 49 내지 도 53는 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 종합적으로 설명하기 위하여 도시하는 도면이다.
도 54(a) 내지 도 54(d)는 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 설명하기 위하여 도시하는 도면이다.
도 55(a) 내지 도 55(d)는 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 설명하기 위하여 도시하는 도면이다.
도 56은 본 개시의 일 실시 예에 따른 사용자 단말 장치의 소프트웨어 구성을 나타내는 블록도이다.
도 57은 본 발명의 일 실시예를 설명하기 위한 전자기기의 유저 인터페이스(UI)를 도시하는 도면이다.
도 58은 본 발명의 일 실시예를 설명하기 위한 전자기기(2000)의 유저 인터페이스(UI)를 도시하는 도면이다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
명세서 전체에서 "사용자"는 전자기기의 사용자를 의미할 수 있다. 명세서 전체에서 메시지 서비스는 사용자간의 대화와 같이, 사용자들간에 메시지를 주고 받는 것을 용이하게 해주는 일대일(one to one), 일대다(one to many), 다대다(many to many) 서비스를 의미할 수 있다.
명세서 전체에서 애플리케이션(Application)은 특정한 업무를 수행하기 위해 고안된 일련의 컴퓨터 프로그램 집합을 말한다. 본 명세서에 기술되는 애플리케이션은 다양할 수 있다. 예를 들어, 게임 애플리케이션, 동영상 재생 애플리케이션, 지도 애플리케이션, 메모 애플리케이션, 캘린더 애플리케이션, 폰 북 애플리케이션, 방송 애플리케이션, 운동 지원 애플리케이션, 결제 애플리케이션, 사진 폴더 애플리케이션 등이 있을 수 있으나, 이에 한정되는 것은 아니다. 애플리케이션(Application)은 앱(App)이라고 표현될 수 있다.
명세서 전체에서 애플리케이션(Application)은 특정한 업무를 수행하기 위해 고안된 일련의 컴퓨터 프로그램 집합을 말한다. 본 명세서에 기술되는 애플리케이션은 다양할 수 있다. 예를 들어, 게임 애플리케이션, 동영상 재생 애플리케이션, 지도 애플리케이션, 메모 애플리케이션, 캘린더 애플리케이션, 폰 북 애플리케이션, 방송 애플리케이션, 운동 지원 애플리케이션, 결제 애플리케이션, 사진 폴더 애플리케이션 등이 있을 수 있으나, 이에 한정되는 것은 아니다. 애플리케이션(Application)은 앱(App)이라고 표현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 명세서에서 메시지는 사용자들 간에 주고 받은 대화의 일부분으로 하나 이상의 단어(word), 하나 이상의 어구(phrase) 및 하나 이상의 문구(clause) 중 적어도 하나를 포함하는 텍스트의 단위 묶음이거나 음성의 단위 묶음을 의미할 수 있다.
본 명세서에서 키워드는 메시지들을 자연어 해석하여 획득한 메시지들의 의미와 관련된 단어(word), 어구(phrase) 및 문구(clause)를 의미하고, 메시지에 포함되는 것뿐만 아니라, 포함되지 않은 단어(word), 어구(phrase) 및 문구(clause)를 의미할 수 있다.
본 명세서에서 컨텐트는 전자기기를 통하여 정보를 전달하는 영상, 음성, 문자을 포함하는 데이터, 파일, 소프트웨어, 정보를 의미할 수 있다. 예를 들면 영상 컨텐츠는 전자기기를 통하여 전달되는 영상 데이터를 의미할 수 있다. 예를 들어, 컨텐트는 2차원 이미지, 3차원 이미지, 2차원 동영상, 3차원 동영상, 다양한 언어로 구성된 텍스트 답변, 다양한 서비스를 제공하는 애플리케이션 서비스(App Service)에 대한 컨텐트를 포함할 수 있다.
[1. 발명의 기본적인 개념]
도 1은 본 발명의 일 실시예에 따른 컨텐트 제공 시스템을 설명하기 위한 구성도이다.
도 1에 도시된 바와 같이, 컨텐트 제공 시스템(10)은 전자기기(100), 상대방 기기(200) 및 서버(300)를 포함할 수 있다.
본 발명의 일 실시예에 따른 전자기기(100)는 상대방 기기(200)와 텍스트 메시지 또는 음성 메시지 중 적어도 하나를 송수신 할 수 있다. 또한, 전자기기(100)는 서버(300)를 통하여 상대방 기기(200)와 텍스트 메시지 또는 음성 메시지 중 적어도 하나를 송수신 할 수 있다.
또한, 전자기기(100)는 서버(300)에 각종 데이터를 요청하고 획득할 수 있고, 서버(300)에 각종 데이터를 전달할 수 있다. 예를 들어, 전자기기(100)가 서버(300)로부터 획득하는 데이터는 상대방 기기(200)와 서버(300)간에 교환된 데이터 일 수 있다.
그러나, 도시된 구성요소가 본 발명의 필수구성요소인 것은 아니다. 도시된 구성요소보다 많은 구성요소에 의해 컨텐트 제공 시스템(10)이 구현될 수도 있고, 그보다 적은 구성요소에 의해서도 컨텐트 제공 시스템(10)은 구현될 수 있다. 예를 들어, 본 발명의 다른 실시예에서, 서버(300)는 컨텐트 제공 시스템(10)에 포함되지 않을 수도 있다.
이하에서는 각 구성에 대해 살펴보기로 한다.
본 발명의 일 실시예에 따른 전자 기기(100)는 메시지를 상대방 기기(200)와 송수신할 수 있다.
본 명세서에서 전자기기(100)는 스마트 폰(Smart Phone), 태블릿(Tablet) PC, 웨어러블 디바이스(Wearable Device), PDA(Personal Digital Assistant), 랩탑 컴퓨터(Laptop Computer), 휴대폰(Cell Phone), 이동 전화기(Mobile Phone), EDA (Enterprise Digital Assistant), PMP(Portable Multimedia Player), PND(personal Navigation Device 또는 Portable Navigation Device), 휴대용 게임 콘솔(Handheld Game Console), 모바일 인터넷 장치(Mobile Internet Device(MID)), 또는 e-북(e-Book)으로 구현될 수 있다.
본 명세서에서 웨어러블 디바이스는 머리 부분에 장착 가능한 헤드 마운트 디스플레이(HMD: Head mounted display, 이하 `HMD`라 함)를 포함할 수 있다. 예를 들어, 헤드 마운트 디스플레이(HMD)는 안경, 헬멧, 모자 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 본 명세서에서 웨어러블 디바이스는, 반지, 목걸이, 팔찌, 신발, 귀걸이, 헤어밴드, 옷, 장갑, 골무와 같은 형태로 구현될 수도 있다.
상대방 기기(200)는 전자 기기(100)에서 생성된 제 1 메시지를 수신하고, 출력 인터페이스에 제 1 메시지를 표시하는 기기일 수 있다. 또한, 상대방 기기(200)는 사용자의 입력에 따라 제 2 메시지를 생성하고, 전자 기기(100)에 제 2 메시지를 전송할 수 있다.
본 발명의 일 실시예에 의하면, 상대방 기기(200)는 서버(300)를 통해서 전자 기기(100)로부터 제 1 메시지를 수신하고, 서버(300)를 통해서 제 2 메시지를 상대방 기기(200)에 전송할 수 있다. 본 발명의 다른 실시예에 의하면, 상대방 기기(200)는 서버(300)를 통하지 않고 직접 제 1 메시지를 전자 기기(100)로부터 수신하고, 제 2 메시지를 직접 전자 기기(100)에 전송할 수도 있다. 다른 실시예에서 상대방 기기(200)는 하나일 수도 있고 복수 개일 수도 있다.
본 발명의 일 실시예에 따른 상대방 기기(200)는 다양한 형태로 구현될 수 있다. 예를 들어, 본 명세서에서 기술되는 상대방 기기(200)는 스마트 폰(Smart Phone), 태블릿(Tablet) PC, 웨어러블 디바이스(Wearable Device), PDA(Personal Digital Assistant), 랩탑 컴퓨터(Laptop Computer), 휴대폰(Cell Phone), 이동 전화기(Mobile Phone), EDA (Enterprise Digital Assistant), PMP(Portable Multimedia Player), PND(personal Navigation Device 또는 Portable Navigation Device), 휴대용 게임 콘솔(Handheld Game Console), 모바일 인터넷 장치(Mobile Internet Device(MID)), 또는 e-북(e-Book)으로 구현될 수 있다.
서버(300)는 전자 기기(100) 또는 상대방 기기(200)와 통신을 수행할 수 있다. 예를 들어, 서버(300)는 전자 기기(100)에서 생성된 제 1 메시지를 전자 기기(100)로부터 수신하고, 상대방 기기(200)에서 생성된 제 2 메시지를 상대방 기기(200)로부터 수신할 수 있다. 그리고 서버(300)는 제 1 메시지를 상대방 기기(200)로 전송하고, 제 2 메시지를 전자 기기(100)로 전송할 수 있다.
서버(300)는 전자 기기(100) 또는 상대방 기기(200)로부터 수신된 메시지를 관리할 수 있다. 예를 들어, 서버(300)는 송수신된 메시지를 기기 별 메시지 DB(Database)에 저장할 수 있다. 그리고 서버(300)는 메시지 DB를 갱신할 수 있다. 서버(300)는 메시지 DB를 일정한 시간 주기로 갱신할 수도 있고, 전자 기기(100) 또는 상대방 기기(200)로부터 새로운 메시지가 수신될 때 마다, 메시지 DB를 갱신할 수도 있다.
도 2은 본 발명의 일 실시예를 설명하기 위한 전자기기(100)의 유저 인터페이스(UI)를 도시하는 도면이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 전자기기(100)는 상대방 기기(200)로부터 수신된 메시지에서 키워드를 추출할 수 있다. 또한, 전자기기(100)는 하나의 키워드에 기초하여 메시지에 대한 답변 시에 이용 가능한 적어도 하나의 컨텐트를 획득할 수 있다. 또한, 전자기기(100)는 획득된 적어도 하나의 컨텐트를 디스플레이 할 수 있다.
전자기기(100)는 백 버튼(back button, 20), 음성 전화 연결 버튼(call button, 30), 유저 이름 박스(user name box, 40) 및 메시지들(50, 51, 52, 53)을 포함하는 대화창과 같은 인터페이스를 제공할 수 있다. 유저 이름 박스(40) 상에 백 버튼(20)과 전화 연결 버튼(30)이 디스플레이 될 수 있다.
사용자는 백 버튼(20)을 터치하거나 더블 탭하여 이전 메뉴로 돌아갈 수 있다. 사용자는 전화 연결 버튼(30)을 터치하거나 더블 탭하여 음성 채팅(Voice Chatting) 또는 보이스 콜(Voice Call)을 할 수 있다. 유저 이름 박스(40)는 대화 상대방의 이름 또는 닉네임을 표시할 수 있다. 또한, 유저 이름 박스(40)는 전자기기(100)의 사용자의 이름 또는 닉네임을 표시할 수 있다. 대화창은 사용자 및 대화 상대방이 주고 받은 메시지(50, 51, 52, 53)를 디스플레이 할 수 있다.
전자기기(100)는 각각의 메시지(50, 51, 52, 53)에 대해서 질문 인지 여부를 판단할 수 있다. 전자기기(100)는 메시지들(50, 51, 52, 53) 중 어느 하나가 질문인 경우, 메시지들(50, 51, 52, 53)에서 키워드를 추출할 수 있다. 전자기기(100)는 추출된 키워드에 기초하여 메시지에 대한 답변시에 이용 가능한 컨텐트를 획득할 수 있다.
전자기기(100)는 각각의 키워드에 대해서 팝업창(60)을 통하여 획득한 컨텐트를 디스플레이 할지 여부를 사용자로부터 입력 받을 수 있다. 전자기기(100)는 사용자가 제1 응답버튼(61)을 터치하거나 탭하는 경우, 획득한 컨텐트를 디스플레이 할 수 있다. 전자기기(100)는 사용자가 제2 응답버튼(62)을 터치하거나 탭하는 경우, 획득한 컨텐트를 디스플레이 하지 않을 수 있다.
전자기기(100)는 메시지들(50, 51, 52, 53) 중 어느 하나가 질문인 경우, 팝업창(60)을 활성화 하기 전에 질문에 대한 답변시에 이용 가능한 컨텐트를 획득할 수 있다. 또는, 전자기기(100)는 메시지들(50, 51, 52, 53) 중 어느 하나가 질문인 경우, 팝업창(60)을 활성화 한 후에 질문에 대한 답변시에 이용 가능한 컨텐트를 획득할 수 있다. 또는, 전자기기(100)는 메시지들(50, 51, 52, 53) 중 어느 하나가 질문인 경우, 팝업창(60)을 활성화 한 후에 사용자가 제1 응답버튼(61)을 터치한 후에 질문에 대한 답변시에 이용 가능한 컨텐트를 획득할 수 있다.
도 3은 본 발명의 일 실시예에 따른 전자기기(100)의 컨텐트 제공 방법을 설명하기 위한 흐름도이다.
[1.1. 메시지 수신]
도 3을 참조하면, 전자기기(100)는 상대방 기기(200)로부터 메시지를 수신할 수 있다(S110).
전자기기(100)는 상대방 기기(200)으로부터 메시지들(50, 51, 52, 53)을 수신할 수 있다. 또는 전자기기(100)는 서버(300)를 통하여 상대방 기기(200)로부터 메시지들(50, 51, 52, 53)을 수신할 수 있다.
전자기기(100)는 각각의 메시지들(50, 51, 52, 53)이 질문에 해당하는지 여부를 판단할 수 있다. 전자기기(100)는 후술하는 의미론적 분석(semantic analysis) 및 확률적 분석(statistical analysis)의 방법을 통하여 질문인지 여부를 판단할 수 있다.
[1.2. 키워드 추출]
전자기기(100)는 상대방 기기로부터 수신된 메시지에서 키워드를 추출 할 수 있다(S130).
전자기기(100)는 의미론적 분석(semantic analysis) 및 확률적 분석(statistical analysis)을 통하여, 메시지로부터 키워드를 추출할 수 있다.
전자기기(100)는 의미론적 분석(semantic analysis)을 통하여 키워드를 추출할 수 있다.
예를 들어, 전자기기(100)는 상대방 기기(200)로부터 `where are you?`라는 메시지(53)를 수신할 수 있다. 전자기기는 메시지(53)의 의미를 파악하여 키워드를 `where`로 추출할 수 있다. 또한, 전자기기는 사용자 간의 대화 내용 및 사용자 관련 데이터를 추가적으로 고려하여 키워드를 `where`로 추출할 수 있다. 사용자 관련 데이터는 사용자가 입력한 컨텐트 및 사용자에 대한 기록 데이터 중 적어도 하나를 포함할 수 있다. 사용자 관련 데이터는 일방의 사용자에 대해 관련된 컨텐트만을 의미할 수 있고, 2인 이상의 사용자에 대해 관련된 컨텐트를 의미할 수 있다.
전자기기는 메시지의 의미, 사용자가 입력한 컨텐트 및 사용자에 대한 기록 데이터 중 적어도 하나를 기초로 키워드를 `where`로 추출할 수 있다.
전자기기는 메시지의 의미를 자연어(Natural Language) 분석하여, 키워드를 추출할 수 있다. 예를 들어, 전자기기는 키워드를 `where`로 추출할 수 있다. 전자기기는 사용자간의 대화에 포함된 메시지의 의미를 확인하고, 메시지의 의미를 기초로 사용자에게 필요한 컨텐트가 무엇에 대한 것인지 예측 할 수 있다. 예를 들어, 전자기기는 메시지의 의미를 상대방 기기의 사용자가 전자기기의 사용자의 위치에 대하여 질문한 것으로 분석할 수 있다. 전자기기는 이러한 의미를 기초로 사용자가 자신의 위치에 대한 답변을 상대방 기기의 사용자에게 제공하는 것이 필요한 상황이라고 예측하고, 키워드를 `where`로 추출할 수 있다.
또한, 전자기기는 메시지의 의미를 기초로 키워드를 추출하는 경우, 사용자가 입력한 컨텐트를 고려할 수 있다. 예를 들어, 사용자가 입력한 컨텐트는 사용자의 집 주소, 사용자의 회사 주소, 사용자의 이동 경로 기록, 사용자의 예정된 스케쥴에 따른 장소를 포함할 수 있다. 예를 들어, 사용자가 스케줄러 애플리케이션을 통하여 출장을 가는 것을 기록 하였고, 상대방 기기와 주고 받은 메시지의 내용이 출장 장소에 대한 것이라면, 전자기기는 키워드를 `where`로 추출할 수 있다.
또한, 전자기기는 메시지의 의미를 기초로 키워드를 추출하는 경우, 사용자에 대한 기록 컨텐트를 고려할 수 있다. 예를 들어, 사용자에 대한 기록은 전자기기 및 서버에 기록된 사용자에 대한 기록을 의미할 수 있다. 또한, 사용자에 대한 기록은 사용자가 전자기기를 이용하면서 기록한 것과 앱 서비스를 이용하면서 서버에 기록한 것을 포함할 수 있다. 또한, 사용자에 대한 기록은 사용자가 직접 기록하지 않았지만, 사용자가 전자기기나 서버를 이용하면서 간접적으로 기록된 내용을 포함할 수 있다.
예를 들어, 사용자에 대한 기록은 사용자의 통화 내역, 사용자의 신용카드를 통한 결재 내역 및 사용자가 SNS(Social Network Service)를 통하여 기록한 컨텐트를 포함할 수 있다.
전자기기는 확률적 분석(statistical analysis)을 통하여 메시지의 의미를 파악하여 키워드를 추출할 수 있다.
예를 들어, 전자기기는 사용자의 예측된 상황들 간의 우선 순위를 판단할 수 있다. 예를 들어, 전자기기는 사용자의 예측된 하나 이상의 상황 중에서 어느 하나의 발생 확률이 높다고 판단할 수 있다. 예를 들어, 전자기기는 하나 이상의 키워드 중에서 어느 하나의 발생 확률이 높다고 판단할 수 있다.
전자기기는 상술한 방식으로 확률적 분석(statistical analysis), 의미론적 분석(semantic analysis)을 통하여, 키워드를 `where`로 추출할 수 있다.
[1.3. 컨텐트의 획득]
전자기기(100)는 추출된 키워드에 기초하여 메시지에 대한 답변시 이용 가능한 컨텐트를 획득할 수 있다(S170).
전자기기(100)는 추출된 키워드를 기초로 각종 검색을 수행하여 컨텐트를 획득할 수 있다. 전자기기(100)가 획득하는 컨텐트는 2차원 이미지, 3차원 이미지, 2차원 동영상, 3차원 동영상, 다양한 언어로 구성된 텍스트 답변, 다양한 분야의 컨텐츠, 다양한 서비스를 제공하는 애플리케이션 서비스(App Service)에 대한 컨텐트를 포함할 수 있다.
본 발명의 일 실시예에서 전자기기(100)는 외부의 검색 서버로부터 키워드에 관련되는 컨텐트를 획득할 수 있다.
예를 들어, 전자기기(100)는 키워드와 관련된 애플리케이션 서비스(App Service)에 대한 컨텐트를 획득할 수 있다.
예를 들어, 전자기기(100)는 수신된 메시지가 질문 형태인 경우, 메시지를 분석하여 날씨 애플리케이션 서비스에 대한 컨텐트를 획득할 수 있다.
예를 들어, 전자기기(100)는 수신된 메시지가 질문 형태는 아니지만, 의미론적 분석 결과 답변이 필요한 것으로 인정되는 경우, 매칭 테이블을 이용하거나 미리 정해진 규칙을 이용하여 컨텐트를 획득할 수 있다.
예를 들어, 전자기기(100)는 대화 내용 및 사용자 관련 데이터를 고려하여 키워드에 따라서 사용자가 답변에 이용할 수 있는 애플리케이션 서비스(App Service)를 결정할 수 있다.
예를 들어, 전자기기(100)는 사용자가 한국에 위치하는 경우, 한국 국적의 서비스 제공자가 제공하는 지도(map) 관련 애플리케이션 서비스(App Service)를 선택하고, 사용자가 일본에 위치하는 경우, 일본 국적의 서비스 제공자가 제공하는 지도(map) 관련 애플리케이션 서비스(App Service)를 선택 할 수 있다.
또한, 예를 들어, 전자기기(100)는 사용자의 애플리케이션(App) 사용 빈도수를 참조하여, 전자기기(100)의 사용자가 자주 이용하는 지도(map) 애플리케이션 서비스(App Service)를 선택할 수 있다.
또한, 예를 들어, 전자기기(100)는 사용자가 미리 선택한 애플리케이션 서비스(App Service) 중에서 현재 상황에 맞는 애플리케이션 서비스(App Service)를 선택할 수 있다.
예를 들어, 전자기기(100)는 사용자가 미리 선택한 제1 애플리케이션 서비스(App Service) 내지 제5 애플리케이션 서비스(App Service) 중에서, 사용자의 현재 상황에 맞게 제1 애플리케이션 서비스(App Service)을 선택할 수 있다. 예를 들어, 사용자가 미리 선택한 제1 레스토랑 애플리케이션 서비스(App Service) 내지 제5 레스토랑 애플리케이션 서비스(App Service)가 있는 경우, 사용자의 현재 상황에 맞는 지도(map) 관련 애플리케이션 서비스(App Service)을 선택할 수 있다.
또한, 전자기기(100)는 인터넷 검색 서비스를 통하여, 컨텐트를 획득할 수 있다. 예를 들어, 전자기기(100)는 인터넷 검색 서비스를 결정한 후, 키워드를 기초로 각종 검색을 수행하여 컨텐트를 획득할 수 있다. 예를 들어, 인터넷 검색 서비스는 야후(yahoo), 구글(google), 빙(bing), 네이버(naver)와 같은 상용화된 검색 서비스 일 수 있다. 예를 들어, 인터넷 검색 서비스는 대학교 도서관, 논문 검색 싸이트, 연구시설의 데이터 베이스와 같이 특정인만이 접근이 가능한 검색 서비스 일 수 있다.
예를 들어, 전자기기(100)는 야후(yahoo)와 같은 상용화된 검색 서비스를 이용하여, 키워드에 대응하는 2차원 이미지를 획득할 수 있다. 예를 들어, 전자기기(100)는 키워드를 야후(yahoo)와 같은 상용화된 검색 서비스에 입력값으로 입력하여, 다양한 분야의 컨텐츠를 획득할 수 있다.
본 발명의 다른 실시예에서 전자기기(100)는 전자기기(100)에 저장된 관련 컨텐트를 획득할 수 있다.
예를 들어, 전자기기(100)는 전자기기(100)가 저장하고 있는 2차원 이미지, 3차원 이미지, 2차원 동영상, 3차원 동영상, 다양한 언어로 구성된 텍스트 답변, 다양한 분야의 컨텐츠에 대한 데이터를 획득할 수 있다.
[1.4. 컨텐트의 제공]
전자기기(100)는 획득된 적어도 하나의 컨텐트를 제공 할 수 있다(S190).
전자기기(100)는 키워드를 기초로 획득한 컨텐트를 다양한 방식으로 사용자에게 제공할 수 있다.
예를 들어, 전자기기(100)는 획득한 컨텐트를 음성, 영상 및 텍스트 중 적어도 하나를 통하여 사용자에게 제공할 수 있다. 예를 들어, 전자기기(100)가 획득한 컨텐트를 제공하는 방식은 전자기기(100)의 종류에 따라서 다양할 수 있다. 예를 들어, 전자기기(100)는 화면 분할, 화면 전환의 방식으로 컨텐트를 디스플레이 할 수 있고, 전자기기(100)가 스마트 워치와 같은 웨어러블 디바이스인 경우, 요약하여 컨텐트를 디스플레이 할 수 있다. 예를 들어, 전자기기(100)는 아바타를 통하여 컨텐트를 음성, 영상으로 디스플레이 할 수 있고, 전자기기(100)가 스마트 워치와 같은 웨어러블 디바이스인 경우, 요약하여 컨텐트를 디스플레이 할 수 있다.
예를 들어, 전자기기(100)는 야후(yahoo)와 같은 상용화된 검색 서비스를 이용하여, 키워드에 대응하는 2차원 이미지를 획득할 수 있다. 예를 들어, 전자기기(100)는 키워드를 야후(yahoo)와 같은 상용화된 검색 서비스에 입력값으로 입력하여, 다양한 분야의 컨텐츠를 획득할 수 있다.
[2. 시나리오 1]
도 4 내지 도 7은 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 설명하기 위하여 도시하는 도면이다. 도 4 내지 도 7은 전자기기가 텍스트 채팅 서비스를 제공하면서, 사용자에게 답변 관련 컨텐트로, 전자기기에 저장된 이미지를 제공하는 시나리오에 대하여 단계별로 유저 인터페이스를 도시하는 도면이다.
도 4를 참조하면, 전자기기의 사용자인 Chris는 상대방 기기의 사용자인 Hyunjin과 텍스트 채팅을 하고 있다.
전자기기는 전자기기의 사용자의 이름을 유저 이름 박스(40)를 통하여 디스플레이하고 있다. 본 발명의 다른 실시예에서 전자기기는 상대방 기기의 사용자를 유저 이름 박스(40)를 통하여 디스플레이 할 수 있다.
전자기기는 2013년 8월 6일 8시 26분에 `Hi~!`라는 메시지(50)를 Chris의 상대방 기기로부터 수신한다. 전자기기는 메시지(51)을 상대방 기기에 송신하고, 상대방 기기로부터 메시지(52)를 수신한다. 전자기기의 사용자는 Hyunjin으로부터 `Where are you?`라는 메시지를 수신한다.
전자기기는 각각의 메시지들(50, 51, 52, 53)이 질문인지 판단을 할 수 있다. 예를 들어, 전자기기는 메시지들(50, 51, 52) 각각이 질문이 아니라고 판단할 수 있고, 메시지(53)가 질문이라고 판단할 수 있다.
예를 들어, 전자기기는 질문이라고 판단한 메시지에 대해서 다른 메시지와 구별이 되도록 표시(mark) 할 수 있다. 예를 들어, 전자기기는 질문이라고 판단한 메시지에 대해서 다른 메시지와 구별이 되도록 다른 색상(예를 들어, 형광 노란색)으로 표시(mark) 할 수 있다.
전자기기는 메시지(53)에 대해서 키워드를 추출할 수 있다. 예를 들어, 전자기기는 메시지(53)에 대하여 `현재 위치`라고 키워드를 추출할 수 있다. 또는, 예를 들어, 전자기기는 메시지(53)에 대하여 `where am I?`라고 키워드를 추출할 수 있다. 또는, 예를 들어, 전자기기는 메시지(53)에 대하여 `영국` 또는 `서울` 같이 사용자 관련 데이터를 추가적으로 고려하여 키워드를 추출 할 수 있다.
도 5를 참조하면, 전자기기는 메시지(53)와 관련된 이미지들(71, 72, 73)을 디스플레이 할 수 있다. 전자기기는 전자기기에 저장된 이미지 또는 전자기기와 연결된 서버에 저장된 이미지를 디스플레이 할 수 있다. 전자기기는 메시지(53)을 질문으로 판단하면, 사용자의 별도의 입력이 없더라도 관련된 이미지들(71, 72, 73)을 디스플레이 할 수 있다. 또는, 전자기기는 메시지(53)을 질문으로 판단하면, 환경설정(setting)에서 사용자의 입력값을 참조하여 관련된 이미지들(71, 72, 73)을 답변에 이용 가능한 컨텐트로 디스플레이 할 수 있다.
도 6을 참조하면, 전자기기는 사용자의 터치 입력 또는 탭 입력을 통하여, 디스플레이된 이미지들 중 하나를 선택할 수 있다.
도 7을 참조하면, 전자기기(100)는 사용자의 터치 입력 또는 탭 입력을 통하여 선택 이미지(72)를 답변으로 메시지(54)를 통하여 상대방 기기(200)에 전달 할 수 있다. 상대방 기기(200)의 전자기기(100)로부터 수신한
[2.1. 적용가능한 장치와 애플리케이션]
도 8은 본 발명에 따른 컨텐트 제공 방법을 이용할 수 있는 다양한 전자기기의 종류 및 다양한 채팅 방식을 설명하기 위한 도면이다.
도 8을 참조하면, 본 발명에 따른 컨텐트 제공 방법은 전자기기와 상대방 기기 간의 음성 채팅 또는 텍스트 채팅을 통한 커뮤니케이션 과정 중에서 수행 될 수 있다. 또한, 본 발명에 따른 컨텐트 제공 방법은 전자기기와 상대방 기기 간의 STT(Speech to Text) 기능을 동반하는 음성 채팅을 통한 커뮤니케이션 과정 중에서 수행 될 수 있다. 또한, 전자기기(100)는 스마트 폰(Smart Phone), 태블릿(Tablet) PC, 웨어러블 디바이스(Wearable Device) 등으로 구현될 수 있다. 또한, 전자기기(100)는 도시되지 않은 종류의 기기 중 메시지 서비스를 구현할 수 있는 것이라면, 본 발명의 컨텐트 제공 방법을 사용 할 수 있다.
[2.2. 기구의 세부 구성]
도 9a는 전자기기(100)에 포함된 답변 관련 컨텐트를 제공하는 지식 프레임 워크(120)을 설명하기 위한 도면이다.
전자기기(100)는 지식 프레임 워크(120), 제1 애플리케이션(141), 제2 애플리케이션(143)을 구현할 수 있고, 웹 컨텐트 목록(145) 및 장치 목록(147)을 저장할 수 있다.
지식 프레임 워크(120)는 자연어 처리부(NLU, 121), 세션 메니져(Session Manager, 122), 프로파일러(Profiler, 123), 컨택스 분석기(Context Analyzer, 124), 응답 생성기(Response Generator, 125), 컨텐트 메타데이터 저장부(Content Metadata Storage, 126) 및 앱 레지스터(App Register, 127)을 포함할 수 있다.
자연어 처리부(121)는 전자기기(100)가 수신하는 각각의 메시지에 대한 의미를 분석할 수 있다. 자연어 처리부(121)는 각각의 메시지에 대해서 확률적 방식으로 의미를 분석할 수 있다. 자연어 처리부(121)는 각각의 메시지를 확률적 방식, 의미론적 방식을 통하여 분석하여 컨택스 분석기(124)에 전달할 수 있다.
세션 메니져(122)는 전자기기(100)가 송수신한 메시지들에 대한 대화 상대방, 대화 일시, 대화 내용 및 대화 환경을 파악하여 전자기기(100)가 송수신한 메시지를 그룹단위로 파악할 수 있다. 세션 메니져(122)는 전자기기(100)가 송수신한 하나 이상의 메시지를 묶어서 세션으로 정의할 수 있다.
프로파일러(123)는 전자기기의 사용자 또는 전자기기의 사용자와 메시지를 송수신한 사용자에 대한 컨텐트를 수집 및 저장 할 수 있다. 프로파일러(123)는 전자기기의 사용자 또는 전자기기의 사용자와 메시지를 송수신한 사용자가 작성한 컨텐트를 보관, 처리 및 저장할 수 있다.
컨택스 분석기(124)는 전자기기가 송수신한 메시지들의 의미에 기초하여 전자기기가 송수신한 각각의 메시지들의 의미를 파악할 수 있다. 컨택스 분석기(124)는 세션 메니져(122)가 정의한 하나 이상의 메시지 단위 별로 전자기기가 송수신한 각각의 메시지들의 의미를 파악할 수 있다.
응답 생성기(125)는 메시지에 대한 답변을 생성할 수 있다. 응답 생성기(125)는 메시지에 대한 답변에 사용될 수 있는 컨텐트를 생성할 수 있다. 응답 생성기(125)는 다양한 가능한 답변을 생성하여 인터페이스 화면을 통하여 사용자에게 제공할 수 있다.
컨텐트 메타데이터 저장부(126)는 컨텐트에 대한 메타 데이터를 포함할 수 있다. 예를 들어, 컨텐트 메타데이터 저장부(126)는 애플리케이션에 대한 컨텐트를 포함할 수 있다. 예를 들어, 컨텐트 메타데이터 저장부(126)는 애플리케이션이 스포츠 관련 애플리케이션인지, 영화 관련 애플리케이션인지에 대한 메타 데이터를 포함할 수 있다. 또한, 예를 들어, 컨텐트 메타데이터 저장부(126)는 이미지에 대한 메타 데이터를 포함할 수 있다. 컨텐트 메타 데이터 저장부(126)는 이미지에 등장하는 인물들의 이름, 전자기기의 사용자와의 관계와 같은 컨텐트를 포함할 수 있다.
예를 들어, 컨텐트 메타데이터 저장부(126)는 인터넷 상의 웹 컨텐트 목록 (Web Content, 145)에 대한 컨텐트를 계속적으로 수집할 수 있다. 예를 들어, 컨텐트 메타데이터 저장부(126)는 전자기기의 장치 목록(Device Content, 147)에 대한 데이터를 계속적으로 수집할 수 있다.
앱 레지스터(127)는 다양한 애플리케이션에 대한 컨텐트를 포함할 수 있다. 예를 들어, 앱 레지스터(127)는 전자기기(100)에 포함된 애플리케이션에 대한 데이터를 포함할 수 있다. 예를 들어, 앱 레지스터(127)는 전자기기(100)에 포함되지 않은 애플리케이션에 대한 데이터를 포함할 수 있다. 앱 레지스터(127)는 애플리케이션에 대한 데이터를 수시로 업데이트 할 수 있다. 응답 생성기(125)는 앱 레지스터(127)에 애플리케이션에 대한 데이터를 참조하여, 애플리케이션에 관련된 답변을 생성할 수 있다.
예를 들어, 앱 레지스터(127)는 제1 애플리케이션(141) 및 제2 애플리케이션(142) 중 적어도 하나에 대한 데이터를 저장할 수 있다. 예를 들어, 제1 애플리케이션(141)은 전자기기(100)에 설치된 애플리케이션 일 수 있다. 예를 들어, 제2 애플리케이션(143)은 전자기기(100)에 설치되지 않은 애플리케이션 일 수 있다.
도 9b는 본 발명의 일 실시예에 따른 전자기기(100)에서 각각의 블록도의 동작을 설명하기 위한 도면이다.
도 9b를 참조하면, 전자기기(100)는 세션 메니져(Session Manager, 122), 프로파일러(Profiler, 123), 컨택스 분석기(Context Analyzer, 124), 컨텐트 메타데이터 저장부(Content Metadata Storage, 126), 앱 레지스터(App Register, 127), 응답 추천기(Response Recommender, 128) 및 웹 서치 엔진(129)를 포함할 수 있다.
응답 추천기(128)는 자연어 처리부(NLU, 121) 및 응답 생성기(Response Generator, 125)을 포함할 수 있다.
세션 메니져(122)는 응답 추천기(128)로 메시지(um[n])를 송신할 수 있다. 응답 추천기(128)는 세션 메니져(122)로부터 메시지(um[n])를 수신하고, 자연어 처리부(121)는 메시지(um[n])에서 키워드(kw[m])을 생성할 수 있다. 예를 들어, 세션 메니져(122)는 <where are you?>라는 메시지(um[n])를 응답 추천기(128)에 전달할 수 있고, 자연어 처리부(121)는 location 또는 information으로 키워드(kw[m])을 생성할 수 있다.
응답 추천기(128)는 프로파일러(123)으로부터 유저 정보(usr.info)를 수신할 수 있다. 예를 들어, 응답 추천기(128)는 <where are you?>라는 메시지(um[n])에 대해서, 외부 서비스 계정(External Service Account)에서의 유저 정보, 유저의 집이나 직장 또는 유저가 빈번하게 출입하는 장소에 대한 정보를 유저 정보(usr.info)로 수신할 수 있다. 응답 추천기(128)는 키워드(kw[m])를 생성하는 경우, 프로파일러(123)로부터 수신된 유저 정보(usr.info)를 참조할 수 있다.
응답 추천기(128)는 컨택스 분석기(124)로부터 컨택스 정보(cnt.info)를 수신할 수 있다. 예를 들어, <where are you?>라는 메시지(um[n])에 대한 컨택스 정보(cnt.info)는 시간정보, GPS 정보, 날씨 정보, 분석된 유저 활동 정보, 최근 로그(Recent Logs)를 포함할 수 있다.
예를 들어, 유저 활동 정보는 유저가 레스토랑에서 1시간 동안 머무른 사실, 유저가 1분 동안 지속적으로 달리기를 했던 사실과 같은 정보를 포함할 수 있다. 예를 들어, 최근 로그(Recent Logs)는 전자기기가 접속된 기지국 정보와 같은 네트워킹 정보(Networking info)를 포함할 수 있다. 응답 추천기(128)는 키워드(kw[m])를 사용하여 추천 응답(rcm.ans)를 생성하는 경우, 컨택스 정보(cnt.info)를 고려할 수 있다.
응답 추천기(128)는 앱 레지스터(127)에 키워드(kw[m])를 전달하여 앱 관련 정보(ap.info)를 수신할 수 있다. 예를 들어, 앱 관련 정보(ap.info)는 앱에 대한 메타 데이터 정보(Metadata of App) 또는 지도 관련 앱에 대한 정보를 포함할 수 있다.
응답 추천기(128)는 컨텐트 메타데이터 저장부(126)로부터 키워드(kw[m])에 대응하는 컨텐트 정보(cm.info)를 수신할 수 있다. 예를 들어, 컨텐트 정보(cm.info)는 이미지의 상세 정보를 포함할 수 있다. 예를 들어, 이미지의 상세 정보는 이미지의 생성 장소(위도, 경도) 또는 태그 정보를 포함할 수 있다.
응답 추천기(128)는 웹 서치 엔진(129)에 키워드(kw[m])을 전달하여 서치 결과값(srch.rst)를 수신할 수 있다. 예를 들어, 서치 결과값(srch.rst)은 보스톤(Boston)의 이미지, 사무실의 주소, 지도 앱 등을 포함할 수 있다.
응답 추천기(128)는 앱 관련 정보(ap.info), 컨텐트 정보(cm.info) 및 서치 결과값(srch.rst) 중 적어도 하나를 수신하고, 유저 정보(usr.info) 및 컨택스 정보(cnt.info)를 참조하여, 메시지(um[n])에 대응하는 추천 응답(rcm.ans)를 생성할 수 있다.
[2.3. 환경 설정]
도 10a 내지 도 10d는 본 발명의 일 실시예에 따른 전자기기(100)에서 제공하는 환경 설정 유저 인터페이스를 도시하는 도면이다.
환경설정(Setting)이란 전자기기의 사용환경을 설정하기 위하여 사용자의 설정에 의하여 또는 사용자의 입력에 의하여 전자기기의 동작 방식을 미리 정해 놓는 것을 의미할 수 있다.
도 10a를 참조하면, 환경설정(Setting)에 따라서 전자기기(100)는 답변 관련 컨텐트를 제공하지 않을 수 있고, 답변 관련 컨텐트를 제공할 수 있다. 환경설정(Setting)에 따라서 전자기기(100)가 답변 관련 컨텐트를 제공하는 경우, 전자기기(100)는 자동(Auto), 반자동(Semi-Auto), 수동(Manual)으로 답변 관련 컨텐트를 제공할 수 있다.
환경설정(Setting)에 따라서 전자기기(100)가 자동(Auto)으로 답변 관련 컨텐트를 제공한다는 것은 전자기기(100)가 송수신된 메시지를 질문인 것으로 판단하는 경우, 사용자에게 추가적인 입력을 수신하지 않더라도 메시지에 대한 답변 관련 컨텐트를 제공한다는 것을 의미할 수 있다.
환경설정(Setting)에 따라서 전자기기(100)가 반자동(Semi-Auto)으로 답변 관련 컨텐트를 제공한다는 것은 전자기기(100)가 송수신된 메시지를 질문 인 것으로 판단하는 경우, 사용자의 해당 메시지에 대한 간단한 입력(터치 또는 탭 입력)을 수신하는 경우 메시지에 대한 답변 관련 컨텐트를 제공한다는 것을 의미할 수 있다.
예를 들어, 전자기기(100)가 반자동(Semi-Auto)으로 답변 관련 컨텐트를 제공하는 경우, 질문에 해당하는 메시지를 다른 메시지와 구분하여 표시할 수 있다. 예를 들어, 전자기기(100)는 질문에 해당하는 메시지의 배경 색상을 다른 메시지와 다른 색상으로 구분하여 표시할 수 있다. 예를 들어, 전자기기(100)는 질문에 해당하는 메시지에 밑줄 표시를 하여 다른 메시지와 구분이 되도록 표시할 수 있다.
전자기기(100)의 사용자는 이러한 표시를 터치 또는 탭하여 컨텐트를 제공받을 수 있다. 전자기기(100)는 사용자의 터치 또는 탭과 같은 입력을 수신하여 답변 관련 컨텐트를 획득할 수 있다. 전자기기(100)는 사용자의 터치 또는 탭과 같은 입력을 수신하기 전에 예상되는 답변 관련 컨텐트를 획득하여 저장한 다음, 사용자의 터치 또는 탭과 같은 입력을 수신하면 답변 관련 컨텐트를 제공할 수 있다.
환경설정(Setting)에 따라서 전자기기(100)가 답변 관련 컨텐트를 제공하는 경우, 전자기기(100)가 수동(Manual)으로 답변 관련 컨텐트를 제공한다는 것은 전자기기(100)가 송수신된 메시지를 질문인 것으로 판단하는 경우, 사용자에게 답변 관련 컨텐트를 수신할지 여부를 확인하고, 사용자가 답변 관련 컨텐트를 수신하겠다는 것을 입력하는 경우, 메시지에 대한 답변 관련 컨텐트를 제공한다는 것을 의미할 수 있다.
도 10b를 참조하면, 전자기기(100)는 환경설정(Setting)에서 지정된 사용자와 관련되는 조건을 고려하여 답변 관련 컨텐트를 제공할 수 있다.
예를 들어, 전자기기(100)는 환경설정(Setting)에서 지정된 제1 사용자(User1)에 대한 컨텐트를 고려하여 답변 관련 컨텐트를 제공할 수 있다. 또한, 예를 들어, 전자기기(100)는 제2 사용자(User2)가 송수신한 메시지에 대한 답변 관련 컨텐트를 제공할 수 있다. 또한, 예를 들어, 전자기기(100)는 제3 사용자(User3)가 입력한 컨텐트에 대해서만 컨텐트를 제공 할 수 있다.
도 10c를 참조하면, 전자기기(100)는 환경설정(Setting)에서 지정된 시간과 관련되는 조건을 고려하여 답변 관련 컨텐트를 제공할 수 있다.
예를 들어, 전자기기(100)는 환경설정(Setting)에서 도 10a에서 설명한 반자동(Semi-Auto)으로 답변 관련 컨텐트를 제공하는 것으로 설정되었다면, 질문에 해당하는 메시지를 다른 메시지와 구분하여 표시하는 시간을 제한할 수 있다. 예를 들어, 전자기기(100)는 질문에 해당하는 메시지를 다른 메시지와 구분하여 표시하는 시간을 10초, 20초, 30초 또는 1분으로 제한할 수 있다. 전자기기(100)는 해당시간이 경과하는 경우, 더 이상 질문에 해당하는 메시지를 다른 메시지와 구분하여 표시하지 않을 수 있다.
도 10d를 참조하면, 전자기기(100)는 환경설정(Setting)에서 데이터 조건을 고려하여 답변 관련 컨텐트를 제공할 수 있다.
예를 들어, 전자기기(100)는 전자기기에 저장된 데이터만을 참조하여 질문 내용을 이해할 수 있다. 예를 들어, 전자기기(100)는 전자기기 및 서버에 저장된 데이터만을 참조하여 질문 내용을 이해할 수 있다.
예를 들어, 전자기기(100)는 전자기기에 저장된 데이터만을 참조하여 답변 관련 컨텐트를 제공할 수 있다. 예를 들어, 전자기기(100)는 전자기기 및 서버에 저장된 데이터만을 참조하여 답변 관련 컨텐트를 제공할 수 있다.
도 10a 내지 도 10d에 도시된 것 이외에도, 전자기기(100)는 다양한 형태로 환경 설정을 통해서 동작할 수 있다. 예를 들어, 전자기기(100)의 사용자는 답변 관련 컨텐트를 텍스트, 음성, 이미지 등으로 제공받을 수 있도록 설정할 수 있다. 예를 들어, 전자기기(100)의 사용자는 컨텐트 제공이 필요한 관심 분야를 설정할 수 있다. 예를 들어, 전자기기(100)의 사용자는 관심 분야를 스포츠, 날씨, 정치, 영화, 경제, 라이프 와 같은 항목으로 설정할 수 있다.
[2.4. 단말 중심의 서비스 제공]
도 11a은 전자기기(100)가 답변 관련 컨텐트를 제공하는 방법을 도시하기 위한 도면이다.
도 11a을 참조하면, 전자기기(100)는 상대방 기기(200)로부터 메시지를 수신할 수 있다(S210). 전자기기(100)는 상대방 기기(200)로부터 메시지를 계속적으로 수신할 수 있다. 전자기기(100)는 서버(300)를 통하여 상대방 기기(200)로부터 메시지를 수신할 수 있다.
전자기기(100)는 상대방 기기(200)로부터 수신한 메시지가 질문인지 여부를 판단할 수 있다(S220). 전자기기(100)는 메시지에 사용된 문장을 문법 구성 성분으로 구분하고, 각각의 문법 구성 성분간의 관계를 추출할 수 있다. 전자기기(100)는 이러한 동작에 대한 결과를 기초로 하여 수신한 메시지가 질문인지 여부를 판단할 수 있다.
전자기기(100)는 상대방 기기로부터 수신된 메시지에서 키워드를 추출 할 수 있다(S230). 전자기기(100)는 자연어 해석을 통하여 수신된 메시지에 키워드를 추출할 수 있다. 전자기기(100)는 키워드를 추출하는 경우, 사용자가 입력한 데이터 및 사용자에 대한 기록 데이터를 참조하여 키워드를 추출할 수 있다.
전자기기(100)는 키워드에 기초하여 메시지에 대한 답변시에 이용 가능한 컨텐트를 획득 할 수 있다(S250). 전자기기(100)는 추출된 키워드를 기초로 각종 검색을 수행하여 컨텐트를 획득할 수 있다. 전자기기(100)가 획득하는 컨텐트는 2차원 이미지, 3차원 이미지, 2차원 동영상, 3차원 동영상, 다양한 언어로 구성된 텍스트 답변, 다양한 분야의 컨텐츠, 다양한 서비스를 제공하는 애플리케이션 서비스(App Service)에 대한 컨텐트를 포함할 수 있다.
전자기기(100)는 획득된 적어도 하나의 컨텐트를 제공할 수 있다(S270). 예를 들어, 전자기기(100)는 획득한 컨텐트를 음성, 영상 및 텍스트 중 적어도 하나를 통하여 사용자에게 제공할 수 있다.
도 11b은 전자기기(100)가 답변 관련 컨텐트를 제공하는 방법을 도시하기 위한 도면이다.
도 11b을 참조하면, 전자기기(100)는 상대방 기기(200)로부터 메시지를 수신할 수 있다(S310).
전자기기(100)는 상대방 기기(200)로부터 수신한 메시지에 대해서 답변시에 이용가능한 컨텐트를 제공 받는 것이 필요한지 여부를 판단할 수 있다(S320). 예를 들어, 전자기기(100)는 환경 설정을 통하여 사용자가 설정한 사항들을 기초로 수신한 메시지가 답변시에 이용가능한 컨텐트를 제공 받는 것이 필요한지 여부를 판단할 수 있다
전자기기(100)는 상대방 기기로부터 수신된 메시지에서 키워드를 추출 할 수 있다(S330). 전자기기는 메시지의 의미를 자연어(Natural Language) 분석하여, 키워드를 추출할 수 있다.
전자기기(100)는 키워드에 기초하여 메시지에 대한 답변시에 이용 가능한 컨텐트를 획득 할 수 있다(S350). 전자기기(100)는 외부의 검색 서버로부터 키워드에 관련되는 컨텐트를 획득할 수 있다. 전자기기(100)는 인터넷 검색 서비스를 통하여, 컨텐트를 획득할 수 있다. 전자기기(100)는 전자기기(100)에 저장된 관련 컨텐트를 획득할 수 있다.
전자기기(100)는 획득된 컨텐트들의 목록을 제공할 수 있다(S370). 전자기기(100)는 키워드를 기초로 획득한 컨텐트를 다양한 방식으로 사용자에게 제공할 수 있다.
도 11c은 전자기기(100)가 답변 관련 컨텐트를 제공하는 방법을 도시하기 위한 도면이다.
도 11c을 참조하면, 전자기기(100)는 상대방 기기(200)로부터 메시지를 수신할 수 있다(S410). 전자기기(100)는 상대방 기기로부터 수신된 메시지에서 하나 이상의 키워드를 추출 할 수 있다(S430).
전자기기(100)는 전자기기(100)의 내부 데이터 또는 사용자로부터의 입력에 기초하여 하나 이상의 키워드들 간의 우선순위를 정할 수 있다(S440). 전자기기(100)는 키워드들 간의 우선순위를 정하여 컨텐트 획득에 참조할 수 있다. 예를 들어, 전자기기(100)는 복수의 키워드를 통하여 컨텐트를 획득하되, 우선 순위가 높은 키워드에 대한 컨텐트를 선순위로 획득하고, 우선순위가 낮은 키워드에 대한 컨텐트를 후순위로 획득 할 수 있다. 예를 들어, 전자기기(100)는 복수의 키워드를 통하여 컨텐트를 획득하되, 우선 순위가 높은 키워드에 대한 컨텐트를 선순위로 디스플레이하고, 우선순위가 낮은 키워드에 대한 컨텐트를 후순위로 디스플레이 할 수 있다.
전자기기(100)는 키워드에 기초하여 메시지에 대한 답변시에 이용 가능한 컨텐트를 획득하여, 적어도 하나의 컨텐트를 다양한 방식을 통하여 제공할 수 있다(S450, S470).
도 11d은 전자기기(100)가 답변 관련 컨텐트를 제공하는 방법을 도시하기 위한 도면이다.
도 11d을 참조하면, 전자기기(100)는 상대방 기기(200)로부터 메시지를 수신할 수 있다(S510).
전자기기(100)는 상대방 기기로부터 수신된 메시지에서 키워드를 추출 할 수 있다(S530).
전자기기(100)는 상대방 기기의 사용자와 전자기기의 사용자 간의 관계 데이터를 분석 할 수 있다(S540). 상대방 기기의 사용자와 전자기기의 사용자 간의 관계 데이터는 전자 기기 또는 서버에 저장된 데이터를 의미할 수 있다.
전자기기(100)는 분석된 사용자 간의 관계 데이터 및 키워드에 기초하여 메시지에 대한 답변시에 이용 가능한 컨텐트를 획득할 수 있다(S550). 또한, 전자기기(100)는 적어도 하나의 컨텐트를 다양한 방식을 통하여 제공할 수 있다(S570).
도 12a는 전자기기(100)가 답변 관련 컨텐트 제공하는 방법을 설명하기 위한 흐름도이다.
전자기기(100)는 상대방 기기(200)로부터 제1 메시지를 수신할 수 있다(S1005). 전자기기(100)는 서버(300)를 통하여 상대방 기기(200)로부터 제1 메시지를 수신할 수 있다.
전자기기(100)는 상대방 기기(200)로부터 수신한 제1 메시지가 질문인지 판단할 수 있다(S1010). 전자기기(100)는 자연어 해석을 통하여 수신한 제1 메시지가 질문인지 판단할 수 있다.
수신한 제1 메시지가 질문인 경우, 전자기기(100)는 메시지에서 키워드를 추출할 수 있다(S1020).
전자기기(100)는 서버(300)에 키워드를 기초로 한 컨텐트 획득을 요청할 수 있다(S1025). 서버(300)는 키워드에 기초하여 메시지에 대한 답변에 이용 가능한 컨텐트를 획득할 수 있다(S1030).
서버(300)는 전자기기(100)에 키워드를 기초로 하여 획득한 컨텐트를 제공할 수 있다(S1035). 전자기기(100)는 획득된 컨텐트를 제공할 수 있다(S1040).
전자기기(100)는 상대방 기기(200)로 제2 메시지를 전송할 수 있다(S1045). 예를 들어, 전자기기(100)는 제2 메시지에 적어도 하나의 획득된 컨텐트 포함시켜서 상대방 기기(200)로 전송할 수 있다.
도 12b는 전자기기(100)와 서버(300)에 각각 포함된 모듈을 도시하는 도면이다.
도 12b는 전자기기(100)를 중심으로 답변 관련 컨텐트를 획득하는 방법에 대한 설명을 하기 위한 예시적인 도면이다. 전자기기(100)에 포함된 세부 구성들과 서버(300)에 포함된 세부 구성들은 다양한 방식으로 변경될 수 있다.
도 12b을 참조하면, 전자기기(100)는 세션 메니져(Session Manager, 122), 프로파일러(Profiler, 123), 컨택스 분석기(Context Analyzer, 124) 및 응답 추천기(Response Recommender, 128)를 포함할 수 있다. 응답 추천기(Response Recommender, 128)는 자연어 처리부(NLU, 121) 및 응답 생성기(Response Generator, 125)를 포함할 수 있다.
서버(300)는 컨텐트 메타데이터 저장부(Content Metadata Storage, 326) 및 앱 레지스터(App Register, 327)을 포함할 수 있다.
자연어 처리부(121)는 전자기기(100)가 수신하는 메시지에 대한 의미를 분석할 수 있다. 자연어 처리부(121)는 메시지를 확률적 방식, 의미론적 방식을 통하여 분석하여 컨택스 분석기(124)에 전달할 수 있다.
세션 메니져(122)는 전자기기(100)가 송수신한 메시지들에 대한 대화 상대방, 대화 일시, 대화 내용 및 대화 환경을 파악하여 전자기기(100)가 송수신한 메시지를 그룹단위로 파악할 수 있다. 세션 메니져(122)는 전자기기(100)가 송수신한 하나 이상의 메시지를 묶어서 세션으로 정의할 수 있다. 예를 들어, 세션 메니져(122)는 응답 추천기(128)로 메시지(um[n], 예를 들어, where will you go afternoon?)를 송신할 수 있다.
응답 추천기(128)는 세션 메니져(122)로부터 메시지(um[n])를 수신하고, 자연어 처리부(121)는 메시지(um[n])에서 키워드(kw[m])을 생성할 수 있다. 예를 들어, 세션 메니져(122)는 <where will you go afternoon?>라는 메시지를 응답 추천기(128)에 전달할 수 있고, 자연어 처리부(121)는 schedule, event, location, destination 또는 time으로 키워드(kw[m])을 생성할 수 있다.
프로 파일러(123)는 전자기기의 사용자 또는 그와 연관된 인물들에 대한 컨텐트를 계속적으로 수집, 처리 및 저장 할 수 있다. 응답 추천기(128)는 키워드(kw[m])를 생성하는 경우, 프로파일러(123)로부터 해당 키워드(kw[m])와 관련된 유저 정보(usr.info)를 수신하고 참조할 수 있다. 예를 들어, <where will you go afternoon?>라는 메시지(um[n])에 대한 유저 정보(usr.info)는 외부 서비스 계정(External Service Account)에서의 유저 정보, 유저의 집이나 직장 또는 유저가 빈번하게 출입하는 장소에 대한 정보를 포함할 수 있다.
컨택스 분석기(124)는 전자기기가 송수신한 메시지들의 의미에 기초하여 전자기기가 송수신한 각각의 메시지들의 의미를 파악할 수 있다. 컨택스 분석기(124)는 세션 메니져(122)가 정의한 하나 이상의 메시지 단위 별로 전자기기가 송수신한 각각의 메시지들의 의미를 파악할 수 있다. 응답 추천기(128)는 컨택스 분석기(124)로부터 컨택스 정보(cnt.info)를 수신할 수 있다.
예를 들어, <where will you go afternoon?>라는 메시지(um[n])에 대한 컨택스 정보(cnt.info)는 시간정보, GPS 정보, 분석된 유저 스케쥴 정보, 최근 로그(Recent Logs)를 포함할 수 있다. 예를 들어, 응답 추천기(128)는 키워드(kw[m])를 사용하여 추천 응답(rcm.ans)를 생성하는 경우, 컨택스 정보(cnt.info)를 고려할 수 있다.
전자기기(100)는 앱 레지스터(327)에 키워드(kw[m])을 전달하여 앱 관련 정보(ap.info)를 수신할 수 있다. 예를 들어, <where will you go afternoon?>라는 메시지(um[n])에 대한 앱 관련 정보(ap.info)는 스케쥴러 앱 관련 정보, 소셜 네트워크 서비스 앱 관련 정보, 채팅 앱 관련 정보 등을 포함할 수 있다. 예를 들어, 제1 애플리케이션은 전자기기(100)에 설치된 날씨 관련 애플리케이션 일 수 있다. 예를 들어, 제2 애플리케이션은 전자기기(100)에 설치되지 않은 뉴스 관련 애플리케이션 일 수 있다.
전자기기(100)는 컨텐트 메타데이터 저장부(326)에 키워드(kw[m])을 전달하여 컨텐트 정보(cm.info)를 수신할 수 있다. 예를 들어, 응답 추천기(128)는 컨텐트 메타데이터 저장부(326)로부터 날씨 관련 애플리케이션, 뉴스 관련 애플리케이션에 대한 데이터를 수신할 수 있다. 예를 들어, <where will you go afternoon?>라는 메시지(um[n])에 대한 컨텐트 정보(cm.info)는 이미지의 상세 정보 또는 스케쥴 관련 정보를 포함할 수 있다. 예를 들어, 이미지의 상세 정보는 이미지의 생성 장소(위도, 경도)를 포함할 수 있다.
전자기기(100)의 응답 추천기(128)는 앱 관련 정보(ap.info) 및 컨텐트 정보(cm.info) 중 적어도 하나를 서버(300)로부터 수신하고, 유저 정보(usr.info) 및 컨택스 정보(cnt.info)를 참조하여, 메시지(um[n])에 대응하는 추천 응답(rcm.ans)를 생성할 수 있다.
응답 생성기(125)는 메시지에 대한 답변 관련 컨텐트를 생성할 수 있다. 응답 생성기(125)는 메시지에 대한 답변에 이용될 수 있는 컨텐트를 생성할 수 있다. 응답 생성기(125)는 생성된 컨텐트를 인터페이스 화면을 통하여 사용자에게 제공할 수 있다.
[2.5. 서버 중심의 서비스 제공]
도 13a는 전자기기(100)가 답변 관련 컨텐트 제공하는 방법을 설명하기 위한 흐름도이다.
서버(300)는 상대방 기기(200)로부터 제1 메시지를 수신할 수 있다(S2010). 서버(300)는 상대방 기기(200)로부터 수신한 제1 메시지를 전자기기(100)로 송신할 수 있다(S2020).
서버(300)는 상대방 기기(200)로부터 수신한 제1 메시지가 질문인지 판단할 수 있다(S2030).
수신한 제1 메시지가 질문인 경우, 서버(300)는 메시지에서 키워드를 추출할 수 있다(S2040).
서버(300)는 키워드에 기초하여 메시지에 대한 답변시에 이용 가능한 컨텐트를 획득할 수 있다(S2050)
서버(300)는 전자기기(100)에 키워드를 기초로 하여 획득한 컨텐트를 제공할 수 있다. 전자기기(100)는 획득된 컨텐트를 제공할 수 있다(S2060).
전자기기(100)는 서버(300)로 제2 메시지를 전송할 수 있다(S2070). 예를 들어, 전자기기(100)는 제2 메시지에 적어도 하나의 획득된 컨텐트 포함시켜서 서버(300)로 전송할 수 있다. 서버(300)는 상대방 기기(200)로 제2 메시지를 전송할 수 있다(S2080).
도 13b는 전자기기(100)와 서버(300)에 각각 포함된 모듈을 도시하는 도면이다.
도 13b는 서버(300)를 중심으로 답변 관련 컨텐트를 획득하는 방법에 대한 설명을 하기 위한 예시적인 도면이다. 전자기기(100)에 포함된 세부 구성들과 서버(300)에 포함된 세부 구성들은 다양한 방식으로 변경될 수 있다.
도 13b을 참조하면, 전자기기(100)는 프로파일러(Profiler, 123) 및 컨택스 분석기(Context Analyzer, 124)를 포함할 수 있다.
프로파일러(123)는 전자기기의 사용자 또는 다른 사용자가 작성한 컨텐트를 계속적으로 보관, 처리 및 저장할 수 있다. 프로파일러(123)는 서버(300)의 요청을 수신하여, 유저 정보(usr.info)를 서버(300)로 송신할 수 있다.
컨택스 분석기(124)는 전자기기가 송수신한 메시지들의 의미에 기초하여 전자기기가 송수신한 각각의 메시지들의 의미를 파악할 수 있다. 컨택스 분석기(124)는 서버(300)의 요청을 수신하여, 컨택스 정보(cnt.info)를 서버(300)로 송신할 수 있다.
서버(300)는 세션 메니져(Session Manager, 322), 컨텐트 메타데이터 저장부(Content Metadata Storage, 326), 앱 레지스터(App Register, 327) 및 응답 추천기(Response Recommender, 328)를 포함할 수 있다. 응답 추천기(Response Recommender, 328)는 자연어 처리부(NLU, 321) 및 응답 생성기(Response Generator, 325)를 포함할 수 있다.
세션 메니져(322)는 전자기기(100)가 송수신한 메시지들에 대한 대화 상대방, 대화 일시, 대화 내용 및 대화 환경을 파악하여 전자기기(100)가 서버(300)를 통하여 송수신한 메시지를 그룹단위로 파악할 수 있다. 세션 메니져(322)는 전자기기(100)가 송수신한 하나 이상의 메시지를 묶어서 세션으로 정의할 수 있다. 예를 들어, 세션 메니져(322)는 수신한 메시지(um[n])를 응답 추천기(328)로 송신할 수 있다.
응답 추천기(328)는 세션 메니져(322)로부터 메시지(um[n])를 수신하고, 자연어 처리부(321)는 메시지(um[n])에서 키워드(kw[m])을 생성할 수 있다. 예를 들어, 세션 메니져(322)는 <Is there a hot issue in Boston?>라는 메시지를 응답 추천기(328)에 전달할 수 있고, 자연어 처리부(321)는 news, issue, topic, 및 location 으로 키워드(kw[m])을 생성할 수 있다.
응답 추천기(328)은 프로파일러(123)으로부터 유저 정보(usr.info)를 수신할 수 있다. 예를 들어, 응답 추천기(328)는 키워드(kw[m])를 생성하는 경우, 프로파일러(123)로부터 수신된 유저 정보(usr.info)를 참조할 수 있다. 예를 들어, 유저 정보(usr.info)는 나이(age), 선호분야(preference)를 포함 할 수 있다. 예를 들어, 유저 정보(usr.info)는 외부 서비스 계정(External Service Account)에서의 유저 정보를 포함할 수 있다.
응답 추천기(328)는 컨택스 분석기(124)로부터 컨택스 정보(cnt.info)를 수신할 수 있다. 예를 들어, 응답 추천기(328)는 키워드(kw[m])를 사용하여 추천 응답(rcm.ans)를 생성하는 경우, 컨택스 정보(cnt.info)를 고려할 수 있다. 컨택스 정보(cnt.info)는 시간, 분석된 유저 스케쥴 및 최근 로그(Recent Logs)를 포함할 수 있다.
응답 추천기(328)는 앱 관련 정보(ap.info) 및 컨텐트 정보(cm.info) 중 적어도 하나를 수신하고, 전자기기(100)로부터 수신된 유저 정보(usr.info) 및 컨택스 정보(cnt.info)를 참조하여, 메시지(um[n])에 대응하는 추천 응답(rcm.ans)를 생성할 수 있다. 예를 들어, 앱 관련 정보(ap.info)는 뉴스, 잡지, 기사를 제공하는 앱에 대한 정보를 포함할 수 있다. 예를 들어, 컨텐트 정보(cm.info)는 기사, 보스톤에 대한 이미지를 포함할 수 있다.
응답 생성기(325)는 메시지에 대한 답변 관련 컨텐트를 생성할 수 있다. 응답 생성기(325)는 메시지에 대한 답변에 이용될 수 있는 컨텐트를 생성할 수 있다. 응답 생성기(325)는 생성된 컨텐트를 전자기기(100)에 전달 할 수 있다.
[2.6. 단말 및 서버 혼합의 서비스 제공]
도 14a는 전자기기(100)가 답변 관련 컨텐트 제공하는 방법을 설명하기 위한 흐름도이다.
서버(300)는 상대방 기기(200)로부터 제1 메시지를 수신할 수 있다(S3010). 서버(300)는 상대방 기기(200)로부터 수신한 제1 메시지를 전자기기(100)로 송신할 수 있다(S3020).
서버(300)는 상대방 기기(200)로부터 수신한 제1 메시지가 질문인지 판단할 수 있다(S3030). 서버(300)는 제1 메시지를 전자기기(100)에 전송한 후에, 제1 메시지가 질문인지 판단할 수 있고, 제1 메시지를 전자기기(100)에 전송하기 전에, 제1 메시지가 질문인지 판단할 수 있다.
수신한 제1 메시지가 질문인 경우, 서버(300)는 메시지에서 키워드를 추출할 수 있다(S3040). 서버(300)는 전자기기(100)에 키워드를 전송할 수 있다(S3045).
전자기기(100)는 키워드에 기초하여 메시지에 대한 답변에 이용 가능한 컨텐트를 획득할 수 있다(S3050). 전자기기(100)는 키워드를 기초로 하여 획득한 컨텐트를 디스플레이 할 수 있다.
전자기기(100)는 서버(300)로 제2 메시지를 전송할 수 있다(S3060). 예를 들어, 전자기기(100)는 제2 메시지에 적어도 하나의 획득된 컨텐트 포함시켜서 서버(300)로 전송할 수 있다. 서버(300)는 상대방 기기(200)로 제2 메시지를 전송할 수 있다(S3070).
도 14b는 전자기기(100)와 서버(300)에 각각 포함된 모듈을 도시하는 도면이다.
도 14b는 서버(300)를 중심으로 답변 관련 컨텐트를 획득하는 방법에 대한 설명을 하기 위한 예시적인 도면이다. 전자기기(100)에 포함된 세부 구성들과 서버(300)에 포함된 세부 구성들은 다양한 방식으로 변경될 수 있다.
도 14b을 참조하면, 전자기기(100)는 제1 프로파일러(123), 컨텐트 메타데이터 저장부(Content Metadata Storage, 126) 및 앱 레지스터(App Register, 127)를 포함할 수 있다.
제1 프로파일러(Profiler 1, 123)는 전자기기(100)의 사용자 또는 다른 사용자에 대한 데이터를 수집 및 저장 할 수 있다. 사용자에 대한 데이터는 사용자의 이름, 직업, 전화번호, 관심분야, 친구 관계 및 이동 기록과 같은 데이터를 포함할 수 있다. 제1 프로파일러(Profiler 1, 123)는 전자기기(100)의 사용자가 작성한 컨텐트를 보관, 처리 및 저장할 수 있다. 전자기기(100)의 사용자가 작성한 컨텐트는 사용자가 작성한 메시지, 메모, 답글, 코멘트를 포함할 수 있다.
컨텐트 메타데이터 저장부(126)는 컨텐트에 대한 각종 데이터를 포함할 수 있다. 예를 들어, 컨텐트 메타데이터 저장부(126)는 애플리케이션이 어느 종류의 애플리케이션인지에 대한 데이터를 포함할 수 있다. 또한, 예를 들어, 컨텐트 메타데이터 저장부(126)는 이미지의 생성 날짜, 이미지의 생성 장소와 같은 메타 데이터를 포함할 수 있다.
또한, 예를 들어, 컨텐트 메타데이터 저장부(126)는 인터넷 상의 각종 웹 컨텐트들에 대한 데이터 및 전자기기의 각종 컨텐트들에 대한 데이터를 계속적으로 수집하여 저장할 수 있다.
앱 레지스터(127)는 다양한 애플리케이션에 대한 데이터를 포함할 수 있다. 예를 들어, 앱 레지스터(127)는 전자기기에 설치된 제1 애플리케이션 및 전자기기에 설치되지 않은 제2 애플리케이션 중 적어도 하나에 대한 데이터를 저장할 수 있다.
서버(300)는 자연어 처리부(NLU, 321), 세션 메니져(Session Manager, 322), 제2 프로파일러(Profiler 2, 323), 컨택스 분석기(Context Analyzer, 324) 및 응답 생성기(Response Generator, 325)를 포함할 수 있다.
세션 메니져(322)는 서버(300)가 송수신한 메시지들에 대한 대화자, 대화 일시, 대화 내용 및 대화 환경을 파악하여 서버(300)가 송수신한 메시지를 그룹단위로 파악할 수 있다. 세션 메니져(322)는 서버(300)가 송수신한 하나 이상의 메시지를 묶어서 세션으로 정의할 수 있다.
자연어 처리부(321)는 서버(300)가 수신하는 제1 메시지에 대한 의미를 분석할 수 있다. 자연어 처리부(321)는 제1 메시지를 확률적 방식, 의미론적 방식을 통하여 분석하여 컨택스 분석기(324)에 전달할 수 있다.
컨택스 분석기(324)는 전자기기(100)가 송수신한 메시지들의 의미에 기초하여 전자기기가 송수신한 각각의 메시지들의 의미를 파악할 수 있다. 컨택스 분석기(324)는 세션 메니져(322)가 정의한 하나 이상의 메시지 단위 별로 전자기기가 송수신한 각각의 메시지들의 의미를 파악할 수 있다.
응답 추천기(328)는 유저 정보(usr.info[p]), 컨택스 정보(cnt.info) 중 적어도 하나를 수신하고, 전자기기(100)로부터 수신된 유저 정보(usr.info[p]), 앱 관련 정보(ap.info) 및 컨텐트 정보(cm.info) 를 참조하여, 메시지(um[n])에 대응하는 추천 응답(rcm.ans)를 생성할 수 있다. 서버(300)는 추천 응답(rcm.ans)을 전자기기(100)로 송신할 수 있다.
[2.7. 대화자 관계 분석]
도 15는 사용자들 간의 관계를 파악하기 위하여 서버(300)의 데이터 베이스(370)에 저장된 정보를 활용하는 방법을 설명하기 위한 도면이다.
도 15를 참조하면, 서버(300)는 데이터 베이스(370) 및 데이터 베이스 관리부(360)를 통하여 사용자들에 대한 정보를 수집, 관리 및 분석할 수 있다.
데이터 베이스(370)는 다양한 사용자에 대한 데이터를 포함할 수 있다. 예를 들어, 데이터 베이스(370)는 전자기기(100)의 사용자와 관련된 다른 사용자에 대한 정보를 저장할 수 있다. 예를 들어, 데이터 베이스(370)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자의 친밀도에 대한 데이터를 포함할 수 있다.
데이터 베이스 관리부(360)는 데이터 베이스(370)를 관리할 수 있다. 데이터 베이스 관리부(360)는 데이터 베이스(370)에 기록된 다양한 데이터를 관리할 수 있고, 전자기기(100)의 요청에 의하여 데이터 베이스 관리부(360)에서 관리된 데이터를 전자기기(100)에 제공할 수 있다.
데이터 베이스 관리부(360)는 각각의 사용자 별로 데이터 베이스(370)에 기록된 것을 관리할 수 있다. 또한 데이터 베이스 관리부(360)는 각각의 그룹 별로 데이터 베이스(370)에 기록된 것을 관리할 수 있다. 데이터 베이스 관리부(360)는 전자기기(100)에서 요청한 데이터를 전자기기(100)에 전달할 수 있다.
전자기기(100)는 관계 탐지기(Relationship Finder, 140), 친밀도 분석기(Intimacy Analyzer, 150) 및 친구 목록 데이터베이스(Friend List Database, 190)를 통하여 서버에 저장된 정보를 편집 및 관리 할 수 있다.
관계 탐지기(140)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 관계를 파악할 수 있다. 관계 탐지기(140)는 서버(300)에 포함된 데이터 베이스 관리부(360)에 요청하여 상대방 기기(200)의 사용자와 전자기기(100)의 사용자에 대한 정보를 수신할 수 있고, 사용자들 간의 관계를 파악할 수 있다. 관계 탐지기(140)는 사용자들 간의 이전의 통화 기록 및 대화 내용을 분석하여 사용자들 간의 관계를 파악할 수 있다.
친밀도 분석기(150)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 친밀도를 분석할 수 있다. 예를 들어, 친밀도 분석기(150)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 친밀도를 정량화된 데이터(예를 들어, 1,2, 3, 10 등과 같은 데이터 또는 1 등급, 2 등급, 3 등급 과 같은 데이터)로 산출할 수 있다. 예를 들어, 친밀도 분석기(150)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 친밀도를 미리 정해진 하나 이상의 카테고리 중에서 어느 곳에 포함되는지를 선택할 수 있다. 예를 들어, 친밀도 분석기(150)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 친밀도를 `가족`, `친구`, `직장` 또는 `학교`와 같은 카테고리 중에 하나를 선택하는 방식으로 분석할 수 있다.
친구 목록 데이터베이스(190)는 관계 탐지기(140) 및 친밀도 분석기(150)에서 분석된 데이터를 전자기기(100)의 사용자에 대한 관계를 중심으로 저장할 수 있다. 여기서, 친구 목록 데이터베이스에 포함되는 정보는 전자기기(100)의 사용자와 사회적인 의미에서의 친구에 대한 정보만을 포함하는 것이 아니라, 가족, 선후배, 친척과 같이 사용자와 전자기기(100)를 통하여 연락이 가능한 모든 사람들에 대한 정보를 포함할 수 있다.
예를 들어, 친구 목록 데이터베이스(190)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자가 SNS(Social Network Service)에서 친구관계라는 정보를 저장할 수 있다. 예를 들어, 친구 목록 데이터베이스(190)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자가 가족관계 또는 친척관계라는 정보를 저장하고 있을 수 있다. 예를 들어, 친구 목록 데이터베이스(190)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자가 직장에서 고용주와 피고용인의 관계라는 정보를 저장하고 있을 수 있다. 예를 들어, 친구 목록 데이터베이스(190)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자가 같은 학교 선후배 관계라는 정보를 저장하고 있을 수 있다.
도 16는 사용자들 간의 관계를 파악하기 위하여 전자기기(100)의 데이터 베이스(170)에 저장된 정보를 활용하는 방법을 설명하기 위한 도면이다.
도 16를 참조하면, 전자기기(100)는 데이터 베이스(170), 데이터 베이스 분석기(160), 관계 탐지기(Relationship Finder, 140), 친밀도 분석기(Intimacy Analyzer, 150) 및 친구 목록 데이터베이스(Friend List Database, 190)을 통하여 사용자들에 대한 정보를 수집, 관리 및 분석 할 수 있다.
데이터 베이스(170)는 다양한 사용자와 전자기기의 사용자(100)의 통화 기록에 대한 데이터를 포함할 수 있다. 예를 들어, 데이터 베이스(170)는 전자기기(100)의 사용자와 다른 사용자가 통화한 기록에 대한 정보를 실시간으로 저장할 수 있다. 예를 들어, 통화한 기록에는 통화 시간, 통화 장소, 통화 시작 시간, 통화 종료 시간 및 통화 방식(음성, 메시지)과 같은 정보를 포함할 수 있다.
또한, 데이터 베이스(170)는 전자기기의 사용자(100)의 주소록 또는 연락처에 기록된 데이터를 포함할 수 있다. 예를 들어, 데이터 베이스(170)는 친구의 직장명, 직업, 가족관계와 같은 정보를 포함할 수 있다.
데이터 베이스 분석기(160)는 데이터 베이스(170)에 포함된 통화 기록 또는 주소록과 같은 데이터를 분석 및 관리할 수 있다. 데이터 베이스 분석기(160)는 데이터 베이스(170)에 기록된 다양한 데이터를 분석하여, 관계 탐지기(140) 또는 친밀도 분석기(150)의 요청에 의하여 데이터에 대한 분석 결과를 제공할 수 있다.
데이터 베이스 분석기(160)는 데이터 베이스(170)에 기록된 것을 개인별로 관리할 수 있다. 또한 데이터 베이스 분석기(160)는 각각의 그룹 별로 데이터 베이스(170)에 기록된 것을 관리할 수 있다. 데이터 베이스 분석기(160)는 관계 탐지기(140) 또는 친밀도 분석기(150)에서 요청한 데이터를 전자기기(100)에 전달할 수 있다.
관계 탐지기(140)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 관계를 파악할 수 있다. 관계 탐지기(140)는 데이터 베이스 분석기(160)에 요청하여 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 관계를 파악할 수 있다. 관계 탐지기(140)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 이전의 통화 기록을 분석하여 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 관계를 파악할 수 있다.
친밀도 분석기(150)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 친밀도를 분석할 수 있다. 예를 들어, 친밀도 분석기(150)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 친밀도를 정량화된 데이터(예를 들어, 1,2, 3, 10 등과 같은 데이터 또는 1 등급, 2 등급, 3 등급 과 같은 데이터)로 산출할 수 있다. 예를 들어, 친밀도 분석기(150)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 친밀도를 `가족`, `친구`, `직장` 또는 `학교`와 같은 카테고리 중에 하나를 선택하는 방식으로 분석할 수 있다.
친구 목록 데이터베이스(190)는 관계 탐지기(140) 및 친밀도 분석기(150)에서 분석된 데이터를 전자기기(100)의 사용자에 대한 관계를 중심으로 저장하고 있을 수 있다. 도 16의 친구 목록 데이터베이스(190)는 도 15의 친구 목록 데이터베이스(190)와 유사하다.
도 17는 전자기기(100)의 사용자와 상대방 기기(200)의 사용자 간의 관계를 파악하기 위하여 전자기기(100)의 데이터 베이스(170)에 저장된 정보 및 서버(300)의 데이터 베이스(370)에 저장된 정보를 활용하는 방법을 설명하기 위한 도면이다.
도 17를 참조하면, 전자기기(100)는 데이터 베이스(170), 데이터 베이스 분석기(160), 관계 탐지기(Relationship Finder, 140), 친밀도 분석기(Intimacy Analyzer, 150) 및 친구 목록 데이터베이스(Friend List Database, 190)를 통하여 사용자들에 대한 정보를 수집, 관리 및 분석할 수 있다. 도 17의 데이터 베이스(170)와 데이터 베이스 분석기(160)는 도 16의 데이터 베이스(170)와 데이터 베이스 분석기(160)와 유사하다. 이하 중복되는 설명은 생략한다.
서버(300)는 데이터 베이스(da370) 및 데이터 베이스 관리부(360)를 포함할 수 있다. 도 17의 데이터 베이스(370) 및 데이터 베이스 관리부(360)는 도 15의 데이터 베이스(370) 및 데이터 베이스 관리부(360)와 유사하다. 이하 중복되는 설명은 생략한다.
관계 탐지기(140)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 관계를 파악할 수 있다. 관계 탐지기(140)는 데이터 베이스 분석기(160) 및 데이터 베이스 관리부(360) 중 적어도 하나에 요청하여 사용자들 간의 관계를 파악할 수 있다. 관계 탐지기(140)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 이전의 통화 기록을 분석하여 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 관계를 파악할 수 있다. 관계 탐지기(140)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 대화 내용을 분석하여 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 관계를 파악할 수 있다.
친밀도 분석기(150)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 친밀도를 분석할 수 있다. 친밀도 분석기(150)는 데이터 베이스 분석기(160) 및 데이터 베이스 관리부(360) 중 적어도 하나에 요청하여 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 친밀도를 분석할 수 있다.
예를 들어, 친밀도 분석기(150)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 친밀도를 정량화된 데이터(예를 들어, 1,2, 3, 10 등과 같은 데이터 또는 1 등급, 2 등급, 3 등급 과 같은 데이터)로 산출할 수 있다. 예를 들어, 친밀도 분석기(150)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 친밀도를 미리 정해진 하나 이상의 카테고리 중에서 어느 곳에 포함되는지를 선택할 수 있다. 예를 들어, 친밀도 분석기(150)는 상대방 기기(200)의 사용자와 전자기기(100)의 사용자 간의 친밀도를 `가족`, `친구`, `직장` 또는 `학교`와 같은 카테고리 중에 하나를 선택하는 방식으로 분석할 수 있다.
친구 목록 데이터베이스(190)는 관계 탐지기(140) 및 친밀도 분석기(150)에서 분석된 데이터를 전자기기(100)의 사용자에 대한 관계를 중심으로 저장할 수 있다.
또한, 본 발명의 다른 실시 예에서 관계 탐지기(140), 친밀도 분석기(150) 및 친구 목록 데이터베이스(190) 중 적어도 하나는 서버(300)에 포함될 수 있다.
[3. 시나리오 2]
[3.1. 컨텐트 획득 여부 확인]
도 18 내지 도 24는 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 설명하기 위하여 도시하는 도면이다. 도 18 내지 도 24는 전자기기가 텍스트 채팅 서비스를 제공하면서, 사용자에게 답변 관련 컨텐트로, 이미지, 추천 애플리케이션, 직접 답변을 제공하는 시나리오에 대하여 단계별로 유저 인터페이스를 도시하는 도면이다.
도 18를 참조하면, 전자기기의 사용자인 Chris는 상대방 기기의 사용자인 Hyunjin과 텍스트 채팅을 하고 있다.
전자기기는 전자기기의 사용자의 이름을 유저 이름 박스(40)를 통하여 디스플레이하고 있다. 본 발명의 다른 실시예에서 전자기기는 상대방 기기의 사용자를 유저 이름 박스(40)를 통하여 디스플레이 할 수 있다.
전자기기는 2013년 8월 6일 8시 26분에 `Hi~!`라는 메시지(50)를 Chris의 상대방 기기로부터 수신한다. 전자기기는 메시지(51)을 상대방 기기에 송신하고, 상대방 기기로부터 메시지(52)를 수신한다. 전자기기의 사용자는 Hyunjin으로부터 `Where are you?`라는 메시지를 수신한다.
전자기기는 각각의 메시지들(50, 51, 52, 53)이 질문인지 판단을 할 수 있다. 예를 들어, 전자기기는 메시지들(50, 51, 52) 각각이 질문이 아니라고 판단할 수 있고, 메시지(53)가 질문이라고 판단할 수 있다.
예를 들어, 전자기기는 질문이라고 판단한 메시지 메시지에 대해서 다른 메시지와 구별이 되도록, 도 19a 내지 도 19c에 도시된 바와 같이, 표시(mark) 할 수 있다. 예를 들어, 전자기기는 도 19a와 같이, 밑줄을 통하여 질문에 해당하는 메시지를 표시할 수 있다. 예를 들어, 전자기기는 도 19b와 같이, 문자에 음영 표시를 하여 질문에 해당하는 메시지를 표시할 수 있다. 예를 들어, 전자기기는 도 19c와 같이, 말풍선에 음영 표시를 하여 질문에 해당하는 메시지를 표시할 수 있다.
전자기기는 사용자로부터 다른 메시지와 구별이 되도록 표시한 부분에 대응하는 입력을 수신하는 경우, 메시지에 대한 답변에 이용 가능한 컨텐트를 디스플레이 할 수 있다.
예를 들어, 전자기기는 메시지(53)가 질문이라고 판단한 메시지 경우, 도 19d에 도시된 바와 같이, 팝업창(60)을 통하여 추천 응답이 필요한지 여부를 사용자로부터 확인 받을 수 있다.
[3.2. 컨텐트의 제안]
도 20a 내지 도 20d를 참조하면, 전자기기는 사용자의 입력에 대응하여 메시지(53)와 관련된 답변시 이용 가능 컨텐트들을 디스플레이 할 수 있다.
도 20a를 참조하면, 전자기기는 도 19c와 같은 표시(mark)에 대응하는 사용자의 입력(예를 들어, 터치)을 수신하는 경우, 질문에 해당하는 메시지와 관련된 애플리케이션을 추천할 수 있다. 예를 들어, 전자기기는 질문에 해당하는 메시지가 위치와 관련되어 있는 경우, 지도 애플리케이션 또는 네비게이션 애플리케이션을 추천할 수 있다.
도 20b를 참조하면, 전자기기는 도 19d와 같은 표시에 대응하는 사용자의 입력(예를 들어, 사용자가 Yes 버튼을 터치하는 입력)을 수신하는 경우, 질문에 해당하는 메시지와 관련된 애플리케이션을 추천할 수 있다. 예를 들어, 전자기기는 질문에 해당하는 메시지가 위치와 관련되어 있는 경우, 지도 애플리케이션 또는 네비게이션 애플리케이션을 추천할 수 있다.
도 20c를 참조하면, 전자기기는 도 19d와 같은 표시에 대응하는 사용자의 입력(예를 들어, 사용자가 Yes 버튼을 터치하는 입력)을 수신하는 경우, 질문에 해당하는 메시지와 관련된 애플리케이션 및 이미지 중 적어도 하나를 추천할 수 있다.
전자기기는 도 15 내지 도 17에서 설명한 예시적인 방법을 통하여, 전자기기의 사용자와 상대방 기기의 사용자 간의 관계를 고려하여, 응답에 사용될 수 있는 애플리케이션 및 이미지 중 적어도 하나를 추천할 수 있다.
예를 들어, 전자기기는 전자기기의 사용자와 상대방 기기의 사용자가 직장에서 고용주와 피고용인의 관계에 있다고 판단한 경우, 전자기기의 사용자의 개인적인 사진은 제외하고 애플리케이션 및 이미지 중 적어도 하나를 추천할 수 있다. 예를 들어, 전자기기의 사용자가 현재에 런던에서 휴가를 보내고 있다면, 전자기기는 대화자들 간의 관계가 업무상의 관계라는 것을 고려하여, 휴가 중에 찍은 사진은 답변으로 추천하지 않을 수 있다.
도 20d를 참조하면, 전자기기는 도 19d와 같은 표시에 대응하는 사용자의 입력(예를 들어, 사용자가 Yes 버튼을 터치하는 입력)을 수신하는 경우, 질문에 해당하는 메시지와 관련된 애플리케이션, 직접 답변 및 이미지 중 적어도 하나를 추천할 수 있다.
전자기기는 도 15 내지 도 17에서 설명한 예시적인 방법을 통하여, 전자기기의 사용자와 상대방 기기의 사용자 간의 관계를 고려하여, 응답에 사용될 수 있는 애플리케이션, 직접 답변 및 이미지 중 적어도 하나를 추천할 수 있다. 본 명세서에서 직접 답변이란 다른 추가적인 검색이 없어도 메시지에 대해서 답변이 될 수 있는 문장, 어구, 단어 등을 의미할 수 있다.
예를 들어, 전자기기는 전자기기의 사용자와 상대방 기기의 사용자가 가족 관계 또는 친밀도가 높은 친구관계에 있다고 판단한 경우, 전자기기의 사용자의 개인적인 사진을 포함하여 답변에 있어서 이용 가능한 컨텐트를 제공할 수 있다. 예를 들어, 전자기기의 사용자가 현재에 런던에서 휴가를 보내고 있다면, 전자기기는 대화자들 간의 관계가 개인적인 관계라는 것을 고려하여, 휴가 중에 찍은 사진은 답변으로 추천할 수 있다.
[3.3. 구체적 답변 상황]
도 21 내지 도 24는 전자기기가 제안한 답변과 관련된 컨텐트를 사용자가 선택하여 상대방 기기에 제공하는 것을 도시하는 도면이다.
도 21을 참조하면, 전자기기의 사용자는 도 20d와 같이 추천된 답변 관련 컨텐트 중에 지도 애플리케이션을 선택할 수 있다.
도 22a를 참조하면, 전자기기는 팝업창(70)을 통하여, 사용자에게 컨텐트를 편집할지 여부에 대해서 확인을 요청할 수 있다. 예를 들어, 사용자가 어플리케이션에서 제공되는 컨텐트를 별도의 편집 없이 사용하기를 원하는 경우, 컨텐트를 편집하지 않는다는 답변을 선택할 수 있다.
도 22b를 참조하면, 전자기기는 사용자가 선택된 컨텐트를 편집하지 않기를 원한다고 확인한 경우, 도 21에서 선택된 지도 앱에서 사용자의 현재 위치를 나타내는 화면을 별도의 편집 없이, 메시지를 통하여 상대방 기기에 제공할 수 있다.
도 23a를 참조하면, 전자기기는 팝업창(70)을 통하여, 사용자에게 컨텐트를 편집할지 여부에 대해서 확인을 요청할 수 있다. 예를 들어, 사용자가 어플리케이션에서 제공되는 컨텐트를 편집하여 답변하기를 원하는 경우, 컨텐트를 편집하겠다는 답변을 선택할 수 있다.
도 23b를 참조하면, 전자기기는 사용자가 선택된 컨텐트를 편집하기를 원한다고 확인한 경우, 사용자가 현재 위치를 나타내는 화면을 편집하도록 도 21에서 선택된 지도 애플리케이션에서 사용자의 현재 위치를 검색하여, 검색 결과에 대응하는 화면을 디스플레이 할 수 있다.
도 23c를 참조하면, 전자기기는 사용자가 지도 애플리케이션에서 제공된 검색 결과를 편집한 화면을 메시지를 통하여 상대방 기기에 전달 할 수 있다.
[3.4. 피드백 상황]
도 24a 내지 도 24e는 본 발명의 일 실시예에 따른 답변에 이용 가능한 컨텐트의 제공에 대해서 사용자로부터 피드백을 받는 유저 인터페이스를 도시하는 도면들이다.
도 24a를 참조하면, 전자기기는 팝업창(80)을 통하여, 답변에 이용 가능한 컨텐트의 제공이 사용자에게 만족스러웠는지 여부에 대해서 질문할 수 있다.
도 24b 내지 도 24d를 참조하면, 전자기기는 사용자가 팝업창(80)을 통하여, 컨텐트의 제공이 사용자에게 만족스럽지 않다고 답변한 경우, 추후 답변에 이용 가능한 컨텐트의 제공에서 추가하거나 제외하고 싶은 카테고리를 선택하도록 팝업창(81, 82, 83, 84, 85)을 제공할 수 있다.
도 24e를 참조하면, 전자기기는 사용자가 팝업창(80)을 통하여, 컨텐트의 제공이 사용자에게 만족스럽지 않다고 답변한 경우, 추후 답변에 이용 가능한 컨텐트의 제공과 관련하여 변경을 원하는 환경설정에 대해서 선택하도록 팝업창(86, 87)을 제공할 수 있다.
[3.5. 제안 답변 레이 아웃]
도 25a 내지 도 25e은 본 발명의 일 실시예에 따른 답변에 이용 가능한 컨텐트를 제공하는 경우, 컨텐트 제공 화면을 도시하는 도면이다.
도 25a를 참조하면, 전자기기가 화면 분할 방식으로 컨텐트를 제공할 수 있다. 전자기기는 추천 컨텐트 리스트(90), 추천 컨텐트 리스트(91) 및 추천 애플리케이션 리스트(92)를 디스플레이 할 수 있다. 예를 들어, 사용자가 제1 장면(Scene #1)에서 추천 컨텐트 리스트(90)를 터치하는 경우, 전자기기는 제2 장면(Scene #2)으로 전환하면서, 추천 컨텐트 리스트(90)를 상대방 기기에 전달할 수 있다. 예를 들어, 전자기기는 추천 컨텐트 리스트(90)를 메시지를 통하여 상대방 기기에 전달할 수 있다.
도 25b를 참조하면, 전자기기가 화면 전환 방식으로 컨텐트를 제공할 수 있다. 전자기기는 제3 장면(Scene #3)에 요약된 답변 관련 컨텐트(98)를 디스플레이하고, 제4 장면(Scene #4)에 구체적인 답변 관련 컨텐트(93, 9)를 디스플레이 할 수 있다. 전자기기는 사용자가 제3 장면(Scene #3)을 터치(touch) 또는 패닝(panning)하는 경우, 제4 장면(Scene #4)을 도시하도록 할 수 있다.
도 25c를 참조하면, 전자기기는 이미지, 애플리케이션 및 가능한 직접 답변을 디스플레이 할 수 있다. 도시되지 않았지만, 전자기기는 다양한 방식과 다양한 배치로 답변에 이용 가능한 컨텐트를 디스플레이 할 수 있다.
도 25d를 참조하면, 전자기기가 아바타의 음성을 통하여 답변에 이용 가능한 컨텐트를 제공할 수 있다.
도 25e를 참조하면, 전자기기가 스마트 워치인 경우, 전자기기는 추천 컨텐트를 요약 화면(97)을 통하여 제공할 수 있다. 전자기기는 사용자가 이동 버튼(98)을 터치하거나 탭하는 경우, 다른 요약 화면을 디스플레이 할 수 있다.
도 26은 전자기기가 컨텐트제공 레이아웃을 변경하는 인터페이스를 제공하는 것을 도시하는 도면이다.
도 26을 참조하면, 전자기기는 팝업창(99)를 통하여 컨텐트제공 레이아웃을 변경할지 여부에 대해서 사용자의 피드백을 수신할 수 있고, 사용자의 선택에 의하여 다양한 컨텐트 제공 레이아웃을 선택할 수 있다.
[4. 시나리오 3]
[4.1. 컨텐트 획득 여부 확인]
도 27 내지 도 37는 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 설명하기 위하여 도시하는 도면이다. 도 27 내지 도 37은 전자기기가 음성 채팅 서비스를 제공하면서, 사용자에게 답변 관련 컨텐트로, 이미지, 추천 애플리케이션, 직접 답변을 제공하는 시나리오에 대하여 단계별로 유저 인터페이스를 도시하는 도면이다.
도 27를 참조하면, 전자기기의 사용자인 Chris는 상대방 기기의 사용자인 Hyunjin과 음성 채팅을 하고 있다. 전자기기와 상대방 기기는 각각의 사용자의 대화를 메시지 단위로 구분할 수 있다.
도 28을 참조하면, 전자기기는 각각의 음성 메시지를 수신하여, 도시된 순서에 의하여, 메시지를 STT(Speech to Text) 변환할 수 있다.
전자기기는 각각의 음성 메시지에 대해서 각각의 음성 메시지가 어느 언어로 구성되는지 식별할 수 있다(S4010). 예를 들어, 전자기기는 각각의 음성 메시지에 대해서 각각의 음성 메시지가 영어로 구성되어 있는지 또는 한국어로 구성되어 있는지 여부를 식별할 수 있다.
전자기기는 식별된 언어로 각각의 음성 메시지를 텍스트로 전환 할 수 있다(S4030). 예를 들어, 전자기기가 제1 음성 메시지가 영어로 구성되어 있다고 판단한 경우, 제1 음성 메시지를 영문자 텍스트로 전환할 수 있다.
전자기기는 전환된 텍스트를 디스플레이 할 수 있다(S4050). 예를 들어, 전자기기는 제1 음성 메시지를 영문자 텍스트로 전환하고, 디스플레이부(또는 출력 인터페이스)를 통하여, 디스플레이 할 수 있다.
도 29를 참조하면, Chris의 전자기기는 Hyunjin의 전자기기로부터 `Where is he?`라는 메시지(55)를 수신한다. 전자기기는 각각의 메시지들이 질문인지 판단을 할 수 있다. 예를 들어, 전자기기는 메시지(55)가 질문인지 여부를 판단할 수 있다. 전자기기는 자연어 분석을 통하여, `Where is he?`라는 메시지(55)에 포함된 `he`가 누구를 지칭하는지를 판단할 수 있다.
[4.2. 사용자 입력 수신]
도 30을 참조하면, 전자기기는 메시지가 질문이라고 판단한 경우, 사용자에게 추천 응답이 필요한지 여부를 확인 받을 수 있다.
예를 들어, 전자기기는 `Where is he?`라는 메시지(55)가 질문이라고 판단한 메시지 경우, 도 30에 도시된 바와 같이, 팝업창(63)을 통하여 추천 응답이 필요한지 여부를 사용자로부터 확인 받을 수 있다. 사용자가 팝업창(63)에 응답하여, 답변에 이용 가능한 컨텐트를 제공받기를 원한다는 의미로 `yes`버튼을 터치하는 경우, 전자기기는 획득한 다양한 컨텐트를 디스플레이 할 수 있다.
[4.3. 구체적 제안 상황]
도 31을 참조하면, 전자기기는 이미지(74_a, 74_b, 74_c), 애플리케이션(75_a, 75_b, 75_c), 가능한 직접 답변(76)을 제공할 수 있다.
도 32를 참조하면, 사용자는 답변에 이용 가능한 컨텐트 중에서 이미지(74_b)를 선택할 수 있다. 전자기기는 사용자의 입력을 수신할 수 있다. 예를 들어, 사용자의 입력은 이미지(74_b)를 선택하는 터치 입력 일 수 있다.
도 33을 참조하면, 전자기기는 팝업창(64)을 통하여 선택된 컨텐트를 편집할지 여부를 확인 할 수 있다. 사용자는 팝업창(64)을 통하여 선택된 컨텐트를 편집 없이 응답에 사용하겠다는 의미로 `No` 버튼을 터치할 수 있다.
도 34를 참조하면, 사용자가 팝업창(64)을 통하여 선택된 컨텐트를 편집 없이 응답에 사용하겠다고 확인한 경우, 전자기기는 대화 상대방에게 이미지(74_b)를 메시지(56)로 전송할 수 있다.
도 35를 참조하면, 전자기기는 팝업창(64)을 통하여 선택된 컨텐트를 편집할지 여부를 확인 할 수 있다. 사용자는 팝업창(64)을 통하여 선택된 컨텐트를 편집하여 응답에 사용하겠다는 의미로 `Yes` 버튼을 터치할 수 있다.
도 36을 참조하면, 사용자가 팝업창(64)을 통하여 선택된 컨텐트를 편집하여 응답에 사용하겠다는 의미로 `Yes` 버튼을 터치한 경우, 전자기기는 사용자에게 이미지 편집환경(65)을 제공할 수 있다. 사용자는 이미지 편집환경(65)을 통하여 이미지(74_b)를 편집할 수 있다.
도 37을 참조하면, 사용자가 편집을 끝낸 경우, 전자기기는 사용자의 선택에 의하여, 메일링 서비스(Mailing Service) 또는 SNS(Social Network Service)를 통하여 전자기기의 사용자, 상대방 기기의 사용자 또는 제3자에게 이미지(74_b)를 제공할 수 있다. 또한, 전자기기는 사용자의 선택과 무관하게, 각종 서비스를 통하여 전자기기의 사용자, 상대방 기기의 사용자 또는 제3자에게 이미지(74_b)를 제공할 수 있다.
[5. 시나리오 4]
[5.1. 컨텐트 획득 여부 확인]
도 38 내지 도 56는 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 설명하기 위하여 도시하는 도면이다. 도 38 내지 도 56는 전자기기가 화상 통화 서비스를 제공하면서, 사용자에게 답변 관련 컨텐트로, 이미지, 추천 애플리케이션, 가능한 직접 답변 중 적어도 하나를 제공하는 시나리오에 대하여 단계별로 유저 인터페이스를 도시하는 도면이다.
도 38를 참조하면, 전자기기의 사용자인 Sunny는 상대방 기기의 사용자인 John과 화상 통화을 하고 있다. 전자기기는 전자기기의 사용자와 상대방 기기의 사용자의 모습을 실시간으로 디스플레이 할 수 있다. 전자기기는 전자기기의 사용자와 상대방 기기의 사용자의 대화 내용을 실시간으로 디스플레이 할 수 있다. 예를 들어, 전자기기는 실시간으로 사용자들 간의 대화 내용을 STT(Speech to Text) 기능을 통하여 말풍선 형태로 디스플레이 할 수 있다.
전자기기는 `Where are you?`라는 메시지(57)를 John의 상대방 기기로부터 수신한다. 전자기기와 상대방 기기는 주고 받는 메시지를 STT(Speech to Text) 기능을 통하여 디스플레이 할 수 있다. 전자기기는 계속적으로 메시지를 상대방 기기에 송신하고, 상대방 기기로부터 메시지를 수신한다. 전자기기는 계속적으로 수신되는 메시지가 질문 인지 여부를 판단할 수 있다. 전자기기의 사용자는 John으로부터 `Where are you?`라는 메시지를 수신한다.
도 39를 참조하면, 전자기기는 메시지(57)를 질문이라고 판단한 메시지 경우, 팝업창(65)을 통하여 답변시에 이용 가능한 컨텐트의 제공이 필요한지 여부를 사용자로부터 확인 받을 수 있다.
[5.2. 컨텐트의 제안]
도 40 내지 도 42를 참조하면, 전자기기는 사용자의 입력에 대응하여 메시지(57)와 관련된 답변시 이용 가능한 컨텐트들을 디스플레이 할 수 있다.
도 40를 참조하면, 전자기기는 도 38과 같은 메시지(57)을 수신하는 경우, 메시지(57)와 관련된 애플리케이션을 추천할 수 있다. 예를 들어, 전자기기는 메시지의 내용이 위치와 관련되어 있는 경우, 지도 애플리케이션 또는 네비게이션 애플리케이션을 추천할 수 있다.
도 41를 참조하면, 전자기기는 도 39와 같은 표시에 대응하는 사용자의 입력(예를 들어, 사용자가 Yes 버튼을 터치하는 입력)을 수신하는 경우, 메시지(57)와 관련된 애플리케이션을 추천할 수 있다. 예를 들어, 전자기기는 질문에 해당하는 메시지가 위치와 관련되어 있는 경우, 지도 애플리케이션 또는 네비게이션 애플리케이션을 추천할 수 있다.
도 42를 참조하면, 전자기기는 도 39와 같은 표시에 대응하는 사용자의 입력(예를 들어, 사용자가 Yes 버튼을 터치하는 입력)을 수신하는 경우, 메시지(57)와 관련된 이미지, 애플리케이션 및 직접 답변 중 적어도 하나를 추천할 수 있다.
[5.3. 구체적 제안 상황(1)]
도 43a을 참조하면, 전자기기는 사용자가 답변시 이용 가능한 컨텐트 제공을 요청하는 경우, 이미지들을 제공할 수 있다.
도 43b을 참조하면, 전자기기는 메시지에 대응하여, 답변시 이용 가능한 컨텐트 제공에 대한 별도의 확인 없이, 사용자가 컨텐트 제공을 받기를 원하는 경우, 이미지들을 제공할 수 있다.
도 44를 참조하면, 사용자는 답변에 이용 가능한 컨텐트 중에서 이미지(77_a)를 선택할 수 있다. 전자기기는 선택을 위한 사용자의 입력을 수신할 수 있다. 예를 들어, 사용자의 입력은 이미지(77_a)를 선택하는 터치 입력 일 수 있다.
전자기기는 사용자에게 답변 편집창을 제공할 수 있다. 사용자는 답변 편집창을 통하여 선택 이미지(77_b)를 편집할 수 있다.
도 45을 참조하면, 사용자가 편집을 마친 이미지(77_b)를 터치하는 경우, 편집된 선택 이미지(77_b)는 대화 상대방에게 제공될 수 있다. 예를 들어, 사용자가 편집을 마친 선택 이미지(77_b)를 터치하는 경우, 전자기기는 편집된 선택 이미지(77_b)를 대화 상대방에게 전달할 수 있다. 전자기기는 사용자의 모습을 디스플레이하는 부분을 통하여 편집된 선택 이미지(77_b)를 전달할 수 있다.
도시되지 않았지만, 사용자가 편집을 끝낸 경우, 전자기기는 사용자의 선택에 의하여, 메일링 서비스(Mailing Service) 또는 SNS(Social Network Service)를 통하여 전자기기의 사용자, 상대방 기기의 사용자 또는 제3자에게 이미지(77_b)를 제공할 수 있다. 또한, 전자기기는 사용자의 선택과 무관하게, 각종 서비스를 통하여 전자기기의 사용자, 상대방 기기의 사용자 또는 제3자에게 이미지(77_b)를 제공할 수 있다.
[5.4. 구체적 제안 상황(2)]
도 46_a을 참조하면, 전자기기는 사용자가 답변시 이용 가능한 컨텐트 제공을 요청하는 경우, 이미지, 애플리케이션, 가능한 직접 답변을 제공할 수 있다.
도 46b을 참조하면, 전자기기는 메시지에 대응하여, 답변시 이용 가능한 컨텐트 제공에 대한 별도의 확인 없이 이미지, 애플리케이션, 가능한 직접 답변을 제공할 수 있다.
도 47를 참조하면, 사용자는 답변에 이용 가능한 컨텐트 중에서 지도 애플리케이션(78_a)를 선택할 수 있다. 전자기기는 사용자의 입력을 수신할 수 있다. 예를 들어, 사용자의 입력은 애플리케이션(78_a)를 선택하는 터치 입력 일 수 있다.
전자기기는 사용자의 입력에 대응하여 사용자에게 답변 편집창을 제공할 수 있다. 전자기기는 애플리케이션(78_a)에 메시지에서 추출된 키워드를 입력값으로 입력하여 생성된 결과를 답변 편집창을 통하여 디스플레이 할 수 있다. 예를 들어, 전자기기는 도시된 바와 같이, 지도 애플리케이션에 `현재위치`를 키워드로 입력하여 생성된 결과 이미지(78_b)를 답변 편집창을 통하여 디스플레이 할 수 있다.
전자기기는 사용자가 결과 이미지(78_b)를 편집할 수 있도록 답변 편집창을 통하여 편집 환경을 제공할 수 있다. 예를 들어, 사용자는 답변 편집창을 통하여 결과 이미지(78_b)를 확대 또는 축소할 수 있고, 결과 이미지(78_b)의 일부분을 선택할 수 있다.
도 48을 참조하면, 사용자가 편집을 마친 결과 이미지(78_b)를 선택하는 경우, 결과 이미지(78_b)는 대화 상대방에게 제공될 수 있다. 예를 들어, 사용자가 편집을 마친 결과 이미지(78_b)를 터치하는 경우, 전자기기는 편집된 결과 이미지(78_b)를 대화 상대방에게 전달할 수 있다. 전자기기는 사용자의 모습을 디스플레이하는 부분을 통하여 편집된 결과 이미지(78_b)를 전달할 수 있다.
[6. 시나리오 5]
도 49 내지 도 53는 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 종합적으로 설명하기 위하여 도시하는 도면이다. 도 49 내지 도 53는 전자기기(100)와 상대방 기기(200)가 문자 메시지 서비스를 제공하면서, 사용자에게 답변 관련 컨텐트로, 가능한 직접 답변, 음식점 애플리케이션, 답변 관련 이미지, 지도 애플리케이션, 뉴스 애플리케이션을 추천하는 시나리오에 대하여 단계별로 유저 인터페이스를 도시하는 도면이다.
[6.1. 직접 답변 제안]
도 49(a) 및 도 49(b)를 참조하면, 전자기기(100)의 사용자인 John은 상대방 기기(200)의 사용자인 Mike와 문자 메시지 서비스를 이용하여 대화를 하고 있다. John은 `Where will you go afternoon?`이라는 메시지(111)를 Mike 로부터 수신한다. 전자기기(100)와 상대방 기기(200)는 주고 받는 메시지를 디스플레이 할 수 있다. 전자기기(100)는 계속적으로 수신되는 메시지가 질문 인지 여부를 판단할 수 있다.
도 49(a)를 참조하면, 전자기기(100)는 메시지(111)를 질문이라고 판단한 경우, 직접 답변 후보들(111_a, 111_b, 111_c)를 사용자에게 제공할 수 있다. 사용자(John)는 하나의 직접 답변 후보(111_b)를 클릭하여 상대방(Mike)에 전송할 수 있다.
도 49(c) 및 도 49(d)를 참조하면, John과 Mike는 각각의 기기에서 주고받은 메시지들(111,112,211,212)를 확인할 수 있다.
[6.2. 음식점 어플리케이션을 통한 식당의 제안]
도 50(a) 및 도 50(b)를 참조하면, Mike는 John에게 “Really? I was there for one month.”라고 메시지(213)을 전달 할 수 있다. 전자기기(100)는 상대방 기기(200)로부터 수신한 메시지(113)을 디스플레이 할 수 있다. John은 Mike에게 "Do you know a good restaurant near the Fenway park?"라고 메시지(114)를 전달 할 수 있다. 상대방 기기(200)는 전자기기(100)로부터 수신한 메시지(214)를 디스플레이할 수 있다.
도 50(c) 및 도 50(d)를 참조하면, 상대방 기기(200)는 수신된 메시지에 대응하여 다양한 음식점 관련 어플리케이션(214_a)을 추천할 수 있고, 메뉴 컨텐츠를 추천할 수 있다. Mike는 메뉴 컨텐츠를 터치하여, John에게 메뉴 컨텐츠가 포함된 메시지(115)를 송신할 수 있다.
[6.3. 이미지를 통한 답변 제안]
도 51(a) 및 도 51(b)를 참조하면, 전자기기(100)의 사용자인 John은 상대방 기기(200)의 사용자인 Mike에게 "Do you have a picture?"라고 메시지(116)를 전달 할 수 있다. 상대방 기기(200)는 John으로부터 수신한 메시지(216)를 디스플레이할 수 있다.
도 51(c) 및 도 51(d)를 참조하면, 상대방 기기(200)는 수신된 메시지에 대응하여 이미지(216_a)를 추천할 수 있다. Mike는 추천된 음식의 이미지를 터치하여, John에게 메뉴 컨텐츠가 포함된 메시지(118)를 송신할 수 있다.
[6.4. 지도 어플리케이션을 통한 자신의 위치 전송]
도 52(a) 및 도 52(b)를 참조하면, Mike는 John에게 "Where do you depart from?"이라고 메시지(219)를 송신 할 수 있다. 전자 기기(100)는 Mike로부터 수신한 메시지(119)를 디스플레이할 수 있다.
도 52(c) 및 도 52(d)를 참조하면, 전자 기기(100)는 수신된 메시지(119)에 대응하여 지도 어플리케이션(119_a)을 추천할 수 있다. John은 추천된 지도 어플리케이션을 통하여 자신의 위치를, Mike에게 메시지(220)로 송신할 수 있다.
[6.5. 뉴스 어플리케이션을 통한 기사 전송]
도 53(a) 및 도 53(b)를 참조하면, John은 Mike에게 "Is there a hot issue in Boston?"이라고 메시지(121)를 송신 할 수 있다.
도 53(c), 도 53(d1) 및 도 53(d2)를 참조하면, 상대방 기기(200)는 Mike로부터 수신한 메시지(221)를 디스플레이할 수 있다. 상대방 기기(200)는 수신된 메시지(221)에 대응하여 뉴스 어플리케이션(221_a)을 추천할 수 있다. Mike가 추천된 뉴스 어플리케이션을 선택하면, 상대방 기기(200)는 도 53(d2)와 같이 화면전환을 통하여 뉴스 기사를 디스플레이 할 수 있고, Mike는 뉴스 기사를 선택하여 관련 기사를 John의 전자기기(100)에 전송할 수 있다. 전자기기(100)는 관련기사의 링크 및 기사 요약 화면을 포함하는 메시지(122)를 디스플레이 할 수 있다.
[7. 시나리오 6]
도 54(a) 내지 도 54(d)는 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 설명하기 위하여 도시하는 도면이다. 도 54는 전자기기(100)와 상대방 기기(200)가 음성 통화 중에 문자 메시지 서비스를 제공하면서, 사용자에게 답변 관련 컨텐트로, 지도 애플리케이션를 통하여 답변을 추천하는 시나리오에 대하여 단계별로 유저 인터페이스를 도시하는 도면이다.
도 54(a)를 참조하면, 전자기기(100)는 음성 통화 중에 "where is the accident point?"라는 음성 메시지(131)를 수신할 수 있다. 도 54(b)를 참조하면, 전자기기는 팝업화면(132)를 통하여 사용자가 추천응답을 원하는지 확인할 수 있다. 도 54(c)를 참조하면, 전자기기(100)의 사용자는 터치를 통하여 지도 어플리케이션을 선택할 수 있다. 도 54(d)를 참조하면, 상대방 기기(200)는 전자기기(100)로부터 전자기기(100)의 사용자의 위치를 나타내는 메시지(232)를 수신할 수 있다.
[8. 시나리오 7]
도 55(a) 내지 도 55(d)는 본 발명의 일 실시예에 따른 컨텐트 제공 방법을 설명하기 위하여 도시하는 도면이다. 도 55(a) 내지 도 55(d)는 전자기기(100)와 상대방 기기(200)가 문자 메시지 서비스를 제공하면서, 사용자에게 답변 관련 컨텐트로, 서로 다른 후보를 답변으로 추천하는 시나리오에 대하여 단계별로 유저 인터페이스를 도시하는 도면이다.
도 55(a)을 참조하면, John은 보스로부터 "where will you go afternoon?”이라는 메시지(141)를 수신할 수 있다. 이에 대해서 전자기기(100)는 [13:00 Launch Meeting](141_a), [15:00 Business Trip](141_b) 및 [18:00 Conference Meeting](141_c)와 같은 직접 답변 및 관련 어플리케이션(141_d)를 제안할 수 있다.
도 55(b)을 참조하면, John은 친구로부터 "Where will you go afternoon?"이라는 메시지(151)를 수신할 수 있다. 이에 대해서 전자기기(100)는 [13:00 Launch Meeting](151_a), [14:00 Coffee Time with Peter](151_b) 및 [18:00 Conference Meeting](151_c)와 같은 직접 답변 및 관련 어플리케이션(151_d)를 제안할 수 있다.
도 55(a) 및 도 55(b)를 참조하면, 동일한 전자기기에서 동일한 질문을 수신하는 경우, 대화 상대방이 사용자와 어떤 관계에 있는지에 따라서 다른 답변이 추천될 수 있다. 예를 들어, 전자기기(100)는 보스로부터 메시지(141)를 수신한 경우에는 [15:00 Business Trip](141_b)를 추천할 수 있고, 친구로부터 메시지(151)를 수신한 경우에는 [15:00 Business Trip](141_b)를 추천하지 않고, [14:00 Coffee Time with Peter](151_b)를 추천할 수 있다.
도 55(c)을 참조하면, John은 판매원으로부터 "How about buying a nice car?”라는 메시지(142)를 수신할 수 있다. 이에 대해서 전자기기(100)는 [NO, I don’t need to buy a car](142_a) 및 [Never call me](142_b) 와 같은 직접 답변 및 관련 어플리케이션(142_c)를 추천할 수 있다.
도 55(d)을 참조하면, John은 친구로부터 " How about buying a nice car?"라는 메시지(152)를 수신할 수 있다. 이에 대해서 전자기기(100)는 [If you give me it, I’ll be so happy](151_a) 및 [I dream it every day](152_b)와 같은 직접 답변 및 관련 어플리케이션(151_c)를 제안할 수 있다.
도 55(a) 및 도 55(b)를 참조하면, 동일한 전자기기에서 동일한 질문을 수신하는 경우, 대화 상대방이 사용자와 어떤 관계에 있는지에 따라서 다른 답변이 추천될 수 있다. 예를 들어, 전자기기(100)는 판매원으로부터 메시지(142)를 수신한 경우에는 [Never call me](142_b)를 추천할 수 있고, 친구로부터 메시지(152)를 수신한 경우에는 [I dream it every day.](152_b)를 추천할 수 있다.
[9. 전자기기의 구성]
도 56는 본 개시의 일 실시 예에 따른 사용자 단말 장치의 구성을 나타내는 블록도이며, 도 49에 도시된 사용자 단말 장치(1000)은 도 1의 전자기기(100) 일 수 있다.
도 56에 따르면, 사용자 단말 장치(1000)는 디스플레이부(1100), 제어부(1700), 메모리(1200), GPS 칩(1250), 통신부(1300), 비디오 프로세서(1350), 오디오 프로세서(1400), 사용자 입력부(1450), 마이크부(1500), 촬상부(1550), 스피커부(1600), 움직임 감지부(1650) 중 적어도 하나를 포함 할 수 있다.
디스플레이부(1100)는 표시패널(1110) 및 표시 패널(1110)을 제어하는 컨트롤러(미도시)를 포함할 수 있다. 표시패널(1110)에는 LCD(Liquid Crystal Display), OLED(Organic Light Emitting Diodes) 디스플레이, AM-OLED(Active-Matrix Organic Light-Emitting Diode), PDP(Plasma Display Panel) 등과 같은 다양한 형태의 디스플레이로 구현될 수 있다. 표시패널(1110)은 유연하게(flexible), 투명하게(transparent) 또는 착용할 수 있게(wearable) 구현될 수 있다. 디스플레이부(1100)는 사용자 입력부(1450)의 터치 패널(1470)과 결합되어 터치 스크린(미도시)으로 제공될 수 있다. 예를 들어, 터치 스크린(미도시)은 표시 패널(1110)과 터치 패널(1470)이 적층 구조로 결합된 일체형의 모듈을 포함할 수 있다. 메모리(1200)는 내장 메모리(Internal Memory)(미도시) 및 외장 메모리(External Memory)(미도시) 중 적어도 하나를 포함할 수 있다.
내장 메모리는, 예를 들어, 휘발성 메모리(예를 들면, DRAM(Dynamic RAM), SRAM(Static RAM), SDRAM(Synchronous Dynamic RAM) 등), 비휘발성 메모리(예를 들면, OTPROM(One Time Programmable ROM), PROM(Programmable ROM), EPROM(Erasable and Programmable ROM), EEPROM(Electrically Erasable and Programmable ROM), Mask ROM, Flash ROM 등), 하드 디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD) 중 적어도 하나를 포함할 수 있다. 일 실시 예에 따르면, 제어부(1700)는 비휘발성 메모리 또는 다른 구성요소 중 적어도 하나로부터 수신한 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리할 수 있다. 또한, 제어부(1700)는 다른 구성요소로부터 수신하거나 생성된 데이터를 비휘발성 메모리에 보존할 수 있다.
외장 메모리는, 예를 들면, CF(Compact Flash), SD(Secure Digital), Micro-SD(Micro Secure Digital), Mini-SD(Mini Secure Digital), xD(extreme Digital) 및 Memory Stick 중 적어도 하나를 포함할 수 있다.
메모리(1200)는 사용자 단말 장치(1000)의 동작에 사용되는 각종 프로그램 및 데이터를 저장할 수 있다. 예를 들어, 메모리(1200)에는 잠금 화면에 표시될 컨텐츠의 적어도 일부를 임시 또는 반영구적으로 저장할 수 있다.
제어부(1700)는 메모리(1200)에 저장된 컨텐츠의 일부가 디스플레이부(1100)에 표시되도록 디스플레이부(1100)를 제어할 수 있다. 다시 말하자면, 제어부(1700)는 메모리(1200)에 저장된 컨텐츠의 일부를 디스플레이부(1100)에 표시할 수 있다. 또는, 제어부(1700)는 디스플레이부(11000)의 일 영역에서 사용자 제스처가 이루어지면, 사용자의 제스처에 대응되는 제어 동작을 수행할 수 있다.
제어부(1700)는 RAM(1710), ROM(1720), CPU(1730), GPU(Graphic Processing Unit)(1740) 및 버스(1750) 중 적어도 하나를 포함 할 수 있다. RAM(1710), ROM(1720), CPU(1730) 및 GPU(1740) 등은 버스(1750)를 통해 서로 연결될 수 있다.
CPU(1730)는 메모리(1200)에 액세스하여, 메모리(1200)에 저장된 O/S를 이용하여 부팅을 수행한다. 그리고, 메모리(1200)에 저장된 각종 프로그램, 컨텐츠, 데이터 등을 이용하여 다양한 동작을 수행한다.
ROM(1720)에는 시스템 부팅을 위한 명령어 세트 등이 저장된다. 예로, 휴대 단말기(1000)는 턴온 명령이 입력되어 전원이 공급되면, CPU(1730)가 ROM(1720)에 저장된 명령어에 따라 메모리(1200)에 저장된 O/S를 RAM(1710)에 복사하고, O/S를 실행시켜 시스템을 부팅시킬 수 있다. 부팅이 완료되면, CPU(1730)는 메모리(1200)에 저장된 각종 프로그램을 RAM(1710)에 복사하고, RAM(1710)에 복사된 프로그램을 실행시켜 각종 동작을 수행한다. GPU(1740)는 사용자 단말 장치(1000)의 부팅이 완료되면, 디스플레이부(1100)의 영역에 UI 화면을 디스플레이한다. 구체적으로는, GPU(1740)는 컨텐츠, 아이콘, 메뉴 등과 같은 다양한 객체를 포함하는 전자문서가 표시된 화면을 생성할 수 있다. GPU(1740)는 화면의 레이아웃에 따라 각 객체들이 표시될 좌표값, 형태, 크기, 컬러 등과 같은 속성 값을 연산한다. 그리고, GPU(1740)는 연산된 속성값에 기초하여 객체를 포함하는 다양한 레이아웃의 화면을 생성할 수 있다. GPU(1740)에서 생성된 화면은 디스플레이부(1100)로 제공되어, 디스플레이부(1100)의 각 영역에 각각 표시될 수 있다.
GPS 칩(1250)은 GPS(Grobal Positioning System) 위성으로부터 GPS 신호를 수신하여, 사용자 단말 장치(1000)의 현재 위치를 산출할 수 있다. 제어부(1700)는 네비게이션 프로그램을 이용할 때나 그 밖에 사용자의 현재 위치가 필요할 경우에, GPS 칩(1250)을 이용하여 사용자 위치를 산출할 수 있다.
통신부(1300)는 다양한 유형의 통신방식에 따라 다양한 유형의 상대방 기기와 통신을 수행할 수 있다. 통신부(130)는 와이파이칩(1310), 블루투스 칩(1320), 무선 통신 칩(1330), NFC 칩(1340) 중 적어도 하나를 포함할 수 있다. 제어부(1700)는 통신부(1300)를 이용하여 각종 상대방 기기와 통신을 수행할 수 있다.
와이파이 칩(1310), 블루투스 칩(1320)은 각각 WiFi 방식, 블루투스 방식으로 통신을 수행할 수 있다. 와이파이 칩(1310)이나 블루투스 칩(1320)을 이용하는 경우에는 SSID 및 세션 키 등과 같은 각종 연결 컨텐트를 먼저 송수신하여, 이를 이용하여 통신 연결한 후 각종 컨텐트들을 송수신할 수 있다. 무선 통신 칩(1330)은 IEEE, 지그비, 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evoloution) 등과 같은 다양한 통신 규격에 따라 통신을 수행하는 칩을 의미한다. NFC 칩(134)은 135kHz, 13.56MHz, 433MHz, 860~960MHz, 2.45GHz 등과 같은 다양한 RF-ID 주파수 대역들 중에서 13.56MHz 대역을 사용하는 NFC(Near Field Communication) 방식으로 동작하는 칩을 의미한다.
비디오 프로세서(1350)는 통신부(1300)를 통해 수신된 컨텐츠 또는, 메모리(1200)에 저장된 컨텐츠에 포함된 비디오 데이터를 처리할 수 있다. 비디오 프로세서(1350)에서는 비디오 데이터에 대한 디코딩, 스케일링, 노이즈 필터링, 프레임 레이트 변환, 해상도 변환 등과 같은 다양한 이미지 처리를 수행할 수 있다.
오디오 프로세서(1400)는 통신부(1300)를 통해 수신된 컨텐츠 또는, 메모리(1200)에 저장된 컨텐츠에 포함된 오디오 데이터를 처리할 수 있다. 오디오 프로세서(1400)에서는 오디오 데이터에 대한 디코딩이나 증폭, 노이즈 필터링 등과 같은 다양한 처리가 수행될 수 있다.
제어부(1700)는 멀티미디어 컨텐츠에 대한 재생 프로그램이 실행되면 비디오 프로세서(1350) 및 오디오 프로세서(1400)를 구동시켜, 해당 컨텐츠를 재생할 수 있다. 스피커부(1600)는 오디오 프로세서(1400)에서 생성한 오디오 데이터를 출력할 수 있다.
사용자 입력부(1450)는 사용자로부터 다양한 명령어를 입력 받을 수 있다. 사용자 입력부(1450)는 키(1460), 터치 패널(1470) 및 펜 인식 패널(1480) 중 적어도 하나를 포함할 수 있다.
키(1460)는 사용자 단말 장치(1000)의 본체 외관의 전면부나 측면부, 배면부 등의 다양한 영역에 형성된 기계적 버튼, 휠 등과 같은 다양한 유형의 키를 포함할 수 있다.
터치 패널(1470)은 사용자의 터치 입력을 감지하고, 감지된 터치 신호에 해당하는 터치 이벤트 값을 출력할 수 있다. 터치 패널(1470)이 표시 패널(1110)과 결합하여 터치 스크린(미도시)을 구성한 경우, 터치 스크린은 정전식이나, 감압식, 압전식 등과 같은 다양한 유형의 터치 센서로 구현될 수 있다. 정전식은 터치 스크린 표면에 코팅된 유전체를 이용하여, 사용자의 신체 일부가 터치 스크린 표면에 터치되었을 때 사용자의 인체로 야기되는 미세 전기를 감지하여 터치 좌표를 산출하는 방식이다. 감압식은 터치 스크린에 내장된 두 개의 전극 판을 포함하여, 사용자가 화면을 터치하였을 경우, 터치된 지점의 상하 판이 접촉되어 전류가 흐르게 되는 것을 감지하여 터치 좌표를 산출하는 방식이다. 터치 스크린에서 발생하는 터치 이벤트는 주로 사람의 손가락에 의하여 생성될 수 있으나, 정전 용량 변화를 가할 수 있는 전도성 재질의 물체에 의해서도 생성될 수 있다.
펜 인식 패널(1480)은 사용자의 터치용 펜(예컨대, 스타일러스 펜(stylus pen), 디지타이저 펜(digitizer pen))의 운용에 따른 펜의 근접 입력 또는 터치 입력을 감지하고 감지된 펜 근접 이벤트 또는 펜 터치 이벤트를 출력할 수 있다. 펜 인식 패널(1480)은, 예로, EMR 방식으로 구현될 수 있으며, 펜의 근접 또는 터치에 의한 전자기장의 세기 변화에 따라 터치 또는 근접 입력을 감지할 수 있다. 상세하게는 펜 인식 패널(1480)은 그리드 구조를 가지는 전자 유도 코일 센서(미도시)와 전자 유도 코일 센서의 각 루프 코일에 순차적으로 소정의 주파수를 가지는 교류 신호를 제공하는 전자 신호 처리부(미도시)를 포함하여 구성될 수 있다. 이러한 펜 인식 패널(1480)의 루프 코일 근방에 공진회로를 내장하는 펜이 존재하면, 해당 루프 코일로부터 송신되는 자계가 펜 내의 공진회로에 상호 전자 유도에 기초한 전류를 발생시킨다. 이 전류를 기초로 하여, 펜 내의 공진 회로를 구성하는 코일로부터 유도 자계가 발생하게 되고, 펜 인식 패널(1480)은 이 유도 자계를 신호 수신 상태에 있는 루프 코일에서 검출하게 되어 펜의 접근 위치 또는 터치 위치가 감지될 수 있다. 펜 인식 패널(1480)은 표시 패널(1110)의 하부에 일정 면적, 예를 들어, 표시 패널(1110)의 표시 영역을 커버할 수 있는 면적을 가지고 마련될 수 있다.
마이크부(1500)는 사용자 음성이나 기타 소리를 입력 받아 오디오 데이터로 변환할 수 있다. 제어부(1700)는 마이크 부(1500)를 통해 입력되는 사용자 음성을 통화 동작에서 이용하거나, 오디오 데이터로 변환하여 메모리(1200)에 저장할 수 있다.
촬상부(1550)는 사용자의 제어에 따라 정지 영상 또는 동영상을 촬상할 수 있다. 촬상부(1550)는 전면 카메라, 후면 카메라와 같이 복수 개로 구현될 수도 있다.
촬상부(1550) 및 마이크부(1500)가 마련된 경우, 제어부(1700)는 마이크부(150)를 통해 입력되는 사용자 음성이나 촬상부(1550)에 의해 인식되는 사용자 모션에 따라 제어 동작을 수행할 수도 있다. 예컨대, 사용자 단말 장치(100)는 모션 제어 모드나 음성 제어 모드로 동작할 수 있다. 모션 제어 모드로 동작하는 경우, 제어부(1700)는 촬상부(1550)를 활성화시켜 사용자를 촬상하고, 사용자의 모션 변화를 추적하여 그에 대응되는 제어 동작을 수행할 수 있다. 음성 제어 모드로 동작하는 경우 제어부(1700)는 마이크부(1500)를 통해 입력된 사용자 음성을 분석하고, 분석된 사용자 음성에 따라 제어 동작을 수행하는 음성 인식 모드로 동작할 수 있다.
움직임 감지부(1650)는 사용자 단말 장치(1000)의 본체 움직임을 감지할 수 있다. 사용자 단말 장치(1000)는 다양한 방향으로 회전되거나 기울어질 수 있다. 이 때, 움직임 감지부(1650)는 지자기 센서, 자이로 센서, 가속도 센서 등과 같은 다양한 센서들 중 적어도 하나를 이용하여 회전 방향 및 각도, 기울기 등과 같은 움직임 특성을 감지할 수 있다.
그 밖에, 사용자 단말 장치(1000) 내에 USB 커넥터가 연결될 수 있는 USB 포트나, 헤드셋, 마우스, LAN 등과 같은 다양한 외부 단자와 연결하기 위한 다양한 외부 입력 포트, DMB(Digital Multimedia Broadcasting) 신호를 수신하여 처리하는 DMB 칩, 다양한 센서 등을 더 포함할 수 있다.
전술한 사용자 단말 장치(1000)의 구성 요소들의 명칭은 달라질 수 있다. 또한, 본 개시에 따른 사용자 단말 장치(1000)는 전술한 구성요소들 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다.
도 57은 본 개시의 일 실시 예에 따른 사용자 단말 장치(1000)의 소프트웨어 구성을 나타내는 블록도이다.
도 57에 따르면, 메모리(1200)는 사용자 단말 장치(1000)의 자원을 제어하는 운영체제 및 어플리케이션의 동작을 위한 응용 프로그램 등을 저장할 수 있다. 운영체제는 커널, 미들웨어, API 등을 포함할 수 있다. 운영체제로는, 예를 들어, 안드로이드(Android), iOS, 윈도우즈(Windows), 심비안(Symbian), 타이젠(Tizen) 또는 바다(Bada) 운영 체제 등이 있을 수 있다.
커널(1210)은 자원을 관리할 수 있는 디바이스 드라이버(1210-1) 또는 시스템 리소스 매니저(1210-2) 중 적어도 하나를 포함할 수 있다. 디바이스 드라이버(1210-1)는 사용자 단말 장치(1000)의 하드웨어들을 소프트웨어적으로 접근하여 제어하도록 할 수 있다. 이를 위하여, 디바이스 드라이버(1210-1)는, 인터페이스와 각 하드웨어 업체가 제공하는 개별 드라이버 모듈로 구분될 수 있다. 디바이스 드라이버(1210-1)는, 예로, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, WiFi 드라이버, 오디오 드라이버 또는 IPC (inter-process communication) 드라이버 중 적어도 하나를 포함할 수 있다. 시스템 리소스 매니저(1210-2)는 프로세스 관리부, 메모리 관리부 또는 파일 시스템 관리부 중 적어도 하나를 포함할 수 있다. 시스템 리소스 메니저(1210-2)는 시스템 리소스의 제어, 할당 또는 회수 등의 기능을 수행할 수 있다.
미들웨어(1220)는 다양한 어플리케이션들에서 공통적으로 요구되는 기능을 제공하기 위해 미리 구현해 놓은 복수의 모듈들을 포함할 수 있다. 미들웨어(1220)는 어플리케이션(1240)이 사용자 단말 장치 내부의 자원을 효율적으로 사용할 수 있도록 API(1230)를 통해 기능을 제공할 수 있다. 미들웨어(1220)는, 예컨대, 어플리케이션 매니저(1220-1), 윈도우 매니저(1220-2), 멀티미디어 매니저(1220-3), 리소스 매니저(1220-4), 파워 매니저(1220-5), 데이터베이스 매니저(1220-6), 패키지 매니저(1220-7), 연결 매니저(1220-8), 통지 매니저(1220-9), 위치 매니저(1220-10), 그래픽 매니저(1220-11) 또는 보안 매니저(1220-12) 등의 복수의 모듈들 중 적어도 하나 이상을 포함할 수 있다.
어플리케이션 매니저(1220-1)는 어플리케이션(1240) 중 적어도 하나의 어플리케이션의 생명 주기(life cycle)를 관리할 수 있다. 윈도우 매니저(1220-2)는 화면에서 사용하는 GUI 자원을 관리할 수 있다. 멀티미디어 매니저(1220-3)는 다양한 미디어 파일들의 재생에 포맷을 파악하고, 해당 포맷에 맞는 코덱(codec)을 이용하여 미디어 파일의 인코딩(encoding) 또는 디코딩(decoding)을 수행할 수 있다. 리소스 매니저(1220-4)는 어플리케이션(1240) 중 적어도 어느 하나의 어플리케이션의 소스 코드, 메모리 또는 저장 공간 등의 자원을 관리할 수 있다. 파워 매니저(1220-5)는 바이오스(BIOS) 등과 함께 동작하여 배터리(battery) 또는 전원을 관리하고, 동작에 전력 정보 등을 제공할 수 있다. 데이터베이스 매니저(1220-6)는 어플리케이션(1240) 중 적어도 하나의 어플리케이션에서 사용할 데이터베이스를 생성, 검색 또는 변경할 수 있도록 관리할 수 있다. 패키지 매니저(1220-7)은 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 업데이트를 관리할 수 있다. 연결 매니저(1220-8)는, 예로, WiFi 또는 블루투스 등의 무선 연결을 관리할 수 있다. 통지 매니저(122-9)는 도착 메시지, 약속, 근접성 알림 등의 사건(event)을 사용자에게 방해되지 않는 방식으로 표시 또는 통지할 수 있다. 위치 매니저(1220-10)는 사용자 단말 장치(1000)의 위치 정보를 관리할 수 있다. 그래픽 매니저(1220-11)는 사용자에게 제공될 그래픽 효과 및 이와 관련된 사용자 인터페이스를 관리할 수 있다. 보안 매니저(1220-12)는 시스템 보안 또는 사용자 인증 등에 요구되는 제반 보안 기능을 제공할 수 있다. 사용자 사용자 단말 장치(1000)가 전화 기능을 구비한 경우에는, 미들웨어(1220)는 사용자의 음성 또는 영상 통화 기능을 관리하기 위한 통화 매니저(미도시)를 더 포함할 수 있다.
미들웨어(1220)는 런타임 라이브러리(1220-13) 또는 다른 라이브러리 모듈들(미도시)를 더 포함할 수 있다. 런타임 라이브러리(1220-13)는 어플리케이션이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈이다. 예컨대, 런타임 라이브러리(1220-13)는 입출력, 메모리 관리 또는 산술 함수에 대한 기능 등을 수행할 수 있다. 미들웨어(1220)는 전술한 내부 구성요소 모듈들의 다양한 기능 조합을 통해 새로운 미들웨어 모듈을 생성하여 사용할 수 있다. 미들웨어(1220)는 차별화된 기능을 제공하기 위해 운영체제의 종류별로 특화된 모듈을 제공할 수 있다. 미들웨어(1220)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다. 본 개시의 실시 예에 기재된 구성요소를 일부 생략하거나 다른 구성요소를 더 구비하거나, 또는 유사한 기능을 수행하는 다른 명칭을 갖는 구성요소로 대체할 수 있다.
API(1230)는 API 프로그래밍 함수들의 집합으로써 운영체제에 따라 다른 구성으로 제공될 수 있다. 안드로이드 또는 iOS의 경우, 예를 들면, 플랫폼 별로 하나의 API 셋을 제공할 수 있으며, 타이젠(Tizen)의 경우, 예를 들면, 두 개 이상의 API 셋을 제공할 수 있다.
어플리케이션(1240)은, 디폴트로 설치되어 있는 프리로드 어플리케이션(preloaded Application) 또는 사용자가 사용 과정에서 설치하여 사용할 수 있는 제 3자 어플리케이션(third party application)을 포함할 수 있다. 어플리케이션(1240)은, 예를 들어, 홈 화면으로 돌아가기 위한 홈 어플리케이션(1240-1), 상대방과 전화 통화를 할 수 있는 다이얼러(dialer) 어플리케이션(1240-2), 전화번호로 식별되는 상대방으로부터 메시지를 수신하는 문자 메시지 어플리케이션(1240-3), IM(Instant Message) 어플리케이션(1240-4), 브라우저(Browser) 어플리케이션(1240-5), 카메라 어플리케이션(1240-6), 알람 어플리케이션(1240-7), 상대방의 전화번호 또는 주소를 관리하는 폰 북(Phone-Book) 어플리케이션(1240-8), 사용자의 통화 로그, 문자 메시지의 수/발신 로그 또는 부재 중 전화 로그 등을 관리하는 콜 로그 어플리케이션(1240-9), 이메일(E-mail)로 식별되는 상대방으로부터 메시지를 수신하는 이메일 어플리케이션(1240-10), 달력 어플리케이션(1240-11), 미디어 플레이어(Media Player) 어플리케이션(1240-12), 앨범 어플리케이션(1240-13) 또는 시계 어플리케이션(1240-14) 중 적어도 하나를 포함할 수 있다. 본 개시에 따른 소프트웨어의 전술한 구성요소들의 명칭은 운영체제의 종류에 달라질 수 있다. 또한, 본 개시에 따른 소프트웨어는 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다.
도 58은 본 발명의 일 실시예를 설명하기 위한 전자기기(2000)의 유저 인터페이스(UI)를 도시하는 도면이다. 전자기기(2000)는 도 1의 전자기기(100) 일 수 있다.
전자기기(2000)는 프로세서(2700), 입력 인터페이스(2400), 출력 인터페이스(2100)를 포함할 수 있다.
프로세서 프로세서(2700)는 모바일 애플리케이션 프로세서(Mobile Application Processor) 또는 중앙 처리 장치(Central Processor Unit)을 포함할 수 있다. 프로세서는 제어기(Controller), 제어부(Control Unit) 등으로 표현될 수 있다. 또한, 프로세서는 코어(Core), 디스플레이 제어기(Display controller), ISP(Image Signal Processor)를 포함하는 의미로 사용될 수 있다.
본 발명의 일 실시예에 따른 프로세서(2700)는 메시지 서비스를 통해서 화면에 표시되는 메시지에서 적어도 하나의 키워드를 추출할 수 있다. 또한, 본 발명의 일 실시예에 따른 프로세서(2700)는 키워드와 관련된 키워드를 새롭게 생성할 수 있다. 또한, 본 발명의 일 실시예에 따른 프로세서(2700)는 새롭게 생성된 키워드 및 전자기기의 위치 정보를 기초로 컨텐트를 획득하는 할 수 있다.
입력 인터페이스(2400)는 사용자가 전자기기(100)의 제어를 위해 데이터를 입력하기 위한 수단을 의미할 수 있다. 예를 들어, 입력 인터페이스(2400)는 키 패드(Key Pad), 돔 스위치 (Dome Switch), 터치 패드 (접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 등으로 구성될 수 있다. 또한, 입력 인터페이스는 터치 스크린(Touch Screen), 터치 패널(Touch Panel), 마이크, 키보드를 포함할 수 있다.
또한, 입력 인터페이스(2400)는 사용자로부터 데이터를 입력받기 위한 적어도 하나 이상의 모듈을 포함할 수 있다. 예를 들어, 입력 인터페이스(2400)는, 모션 인식 모듈, 터치 인식 모듈, 음성 인식 모듈 등을 포함할 수 있다.
터치 인식 모듈은 사용자의 터치 스크린 상의 터치 제스처를 감지하고, 터치 제스처에 관한 컨텐트를 프로세서로 전달할 수 있다. 음성 인식 모듈은 음성 인식 엔진을 이용하여 사용자의 음성을 인식하고, 인식된 음성을 프로세서로 전달할 수 있다. 모션 인식 모듈은 피사체(Object)의 움직임을 인식하고, 피사체(Object)의 움직임에 관한 컨텐트를 프로세서로 전달할 수 있다.
명세서 전체에서 사용자가 전자기기(2000)의 입력 인터페이스(2400)를 통해서 하는 `입력`은, 터치 입력, 벤딩 입력, 음성 입력, 키 입력 및 다중(multimodal) 입력 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다.
"터치 입력"이란 사용자가 전자기기(100)를 제어하기 위해 터치 스크린에 행하는 제스처 등을 의미한다. 예를 들어, 본 명세서에서 기술되는 터치 입력에는 탭, 터치&홀드, 더블 탭, 드래그, 패닝, 플릭, 드래그 앤드 드롭 등이 있을 수 있다.
"탭(tap)"은 사용자가 손가락이나 터치 도구(예컨대, 전자 펜)를 이용하여 화면을 터치한 후 움직이지 않은 채 화면에서 즉시 들어올리는 동작을 나타낸다.
"터치&홀드(touch & hold)"는 사용자가 손가락이나 터치 도구(예컨대, 전자 펜)를 이용하여 화면을 터치한 후 임계 시간(예컨대, 2초) 이상 터치 입력을 유지하는 동작을 나타낸다. 예를 들어, 터치-인 시점과 터치-아웃 시점 간의 시간 차이가 임계 시간(예컨대, 2초) 이상인 경우를 의미한다. 터치 입력이 탭인지 터치&홀드인지를 사용자에게 인식시키도록 하기 위하여 터치 입력이 임계 시간 이상 유지되면 시각적 또는 청각적 또는 촉각적으로 피드백 신호를 제공할 수도 있다. 상기 임계 시간은 구현 예에 따라서 변경될 수 있다.
"더블 탭(double tap)"은 사용자가 손가락이나 터치 도구(stylus)를 이용하여 화면을 두 번 터치하는 동작을 나타낸다.
"드래그(drag)"는 사용자가 손가락이나 터치 도구를 화면에 터치한 후 터치를 유지한 상태에서 손가락이나 터치 도구를 화면 내의 다른 위치로 이동시키는 동작을 의미한다. 드래그 동작으로 인하여 오브젝트가 이동되거나 후술할 패닝 동작이 수행된다.
"패닝(panning)"은 사용자가 오브젝트를 선택하지 않고 드래그 동작을 수행하는 경우를 나타낸다. 패닝은 특정 오브젝트를 선택하지 않기 때문에 오브젝트가 페이지 내에서 이동되는 것이 아니라 페이지 자체가 화면 내에서 이동하거나, 오브젝트의 그룹이 페이지 내에서 이동한다.
"플릭(flick)"은 사용자가 손가락이나 터치 도구를 이용하여 임계 속도(예컨대, 100 pixel/s) 이상으로 드래그하는 동작을 나타낸다. 손가락이나 터치 도구의 이동 속도가 임계 속도(예컨대, 100 pixel/s) 이상인지에 기초하여 드래그(또는 패닝)와 플릭을 구별할 수 있다.
"드래그 앤드 드롭(drag & drop)"은 사용자가 손가락이나 터치 도구를 이용해 오브젝트를 화면 내 소정 위치에 드래그한 후 놓는 동작을 의미한다.
"핀치(pinch)"는 사용자가 두 손가락을 화면 위에 터치한 상태에서 서로 다른 방향으로 움직이는 동작을 나타낸다. 오브젝트 또는 페이지의 확대(Pinch Open) 또는 축소(Pinch Close)를 위한 제스처이며, 두 손가락의 거리에 따라 확대 값이나 축소 값이 결정된다.
"스와이프(swipe)"는 손가락이나 터치 도구로 화면 위의 오브젝트를 터치한 상태에서 수평 또는 수직 방향으로 일정 거리를 움직이는 동작이다. 사선 방향의 움직임은 스와이프 이벤트로 인식되지 않을 수 있다.
"모션 입력"은, 사용자가 전자기기(100)를 제어하기 위해 전자기기(100)에 가하는 모션을 의미한다. 예를 들어, 모션 입력은, 사용자가 전자기기(100)를 회전시키거나, 전자기기(100)를 기울이거나, 전자기기(2000)를 상하좌우로 이동시키는 입력을 포함할 수 있다. 전자기기(2000)는, 가속도 센서(Acceleration sensor), 기울기 센서(tilt sensor), 자이로 센서(Gyro sensor), 자기장 센서(3-axis Magnetic sensor) 등을 이용하여, 사용자에 의해 기 설정된 모션 입력을 감지할 수 있다.
명세서 전체에서 "벤딩 입력"은, 전자기기(100)가 플렉서블 디스플레이 장치인 경우, 사용자가 전자기기(2000)를 제어하기 위해 전자기기(2000)의 전체 또는 일부 영역을 구부리는 입력을 의미한다. 본 발명의 일 실시예에 의하면, 전자기기(2000)는 벤딩 센서를 이용하여, 벤딩 위치(좌표 값), 벤딩 방향, 벤딩 각도, 벤딩 속도, 벤딩 횟수, 벤딩 동작 발생 시점, 벤딩 동작 유지 시간 등을 감지할 수 있다.
명세서 전체에서 "벤딩 입력"은, 전자기기(100)가 플렉서블 디스플레이 장치인 경우, 사용자가 전자기기(2000)를 제어하기 위해 전자기기(2000)의 전체 또는 일부 영역을 구부리는 입력을 의미한다. 본 발명의 일 실시예에 의하면, 전자기기(2000)는 벤딩 센서를 이용하여, 벤딩 위치(좌표 값), 벤딩 방향, 벤딩 각도, 벤딩 속도, 벤딩 횟수, 벤딩 동작 발생 시점, 벤딩 동작 유지 시간 등을 감지할 수 있다.
명세서 전체에서 "키 입력"은 사용자가 전자기기(2000)에 부착된 물리적인 키 또는 전자기기(2000)가 제공하는 가상적인 키를 이용하여, 전자기기(2000)를 제어하는 입력을 의미한다.
출력 인터페이스는 오디오 신호 또는 비디오 신호 또는 알람(Alarm) 신호의 출력을 위한 것으로, 출력 인터페이스는 디스플레이 모듈과 음향 출력 모듈 등을 포함할 수 있다. 또한, 출력 인터페이스는 2차원 영상을 디스플레이 할 수 있는 평판 디스플레이, 3차원 영상을 디스플레이 할 수 있는 평판 디스플레이를 포함할 수 있다. 출력 인터페이스는 3차원 홀로그램을 출력할 수 있는 장치를 포함할 수 있다.
전자기기(2000)는 검색 서버와 통신을 통하여 정보를 송수신할 수 있다. 예를 들어, 전자기기(2000)은 적어도 하나의 프로토콜을 통하여 검색 서버와 통신할 수 있다. 예를 들어, 전자기기(2000)은 TFTP(Trivial File Transfer Protocol), SNMP(Simple Network Mangement Protocol), SMTP(Simple Mail Transfer Protocol), POP(Post Office Protocol), ICMP(Internet Control Message Protocol), SLIP(Serial Line Interface Protocol), PPP(Point to Point Protocol), DHCP(Dynamic Host Control Protocol), NETBIOS(Network Basic Input Output System), IPX/SPX(Internetwork Packet eXcharge), ICMP(Internet Control Manage Protocol), IP(Internet Protocol), ARP(Address Resolusion Protocol), TCP(Transmission Control Protocol), UDP(User Datagram Protocol), winsock, DHCP(Dynamic Host Configulatin Protocol), RIP(Routing Informaion Protocol) 및 NetBIOS 중 적어도 하나의 프로토콜을 통하여 검색 서버와 통신할 수 있으나, 이에 한정되는 것은 아니다.
전자기기(2000)는 근거리 통신 모듈을 통하여 근거리 통신을 수행할 수 있다. 근거리 통신 기술로 무선 랜(Wi-Fi), 블루투스, 지그비, WFD((Wi-Fi Direct), UWB(ultra wideband), 적외선 통신(IrDA, infrared Data Association) 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
본원 발명의 실시 예 들과 관련된 기술 분야에서 통상의 지식을 가진 자는 상기 기재의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로, 개시된 방법들은 한정적인 관점이 아닌 설명적 관점에서 고려되어야 한다. 본 발명의 범위는 발명의 상세한 설명이 아닌 특허청구 범위에 나타나며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (20)

  1. 메시지 서비스를 제공하는 전자기기에 있어서,
    상대방 기기와 메시지를 송수신하는 통신부;
    수신된 메시지, 상기 전자기기의 사용자가 입력한 메시지 및 상기 전자기기가 제공하는 적어도 하나의 답변 메시지를 상기 메시지 서비스 화면에 함께 표시하는 디스플레이; 및
    상기 수신된 메시지를 이용하여 적어도 하나의 컨텐트를 추천하고, 상기 추천된 적어도 하나의 컨텐트를 포함하는 답변 메시지가 상기 상대방 기기에서 상기 전자기기 사용자가 입력한 메시지로 보여지도록, 상기 상대방 기기로 상기 답변 메시지를 제공하는 프로세서를 포함하는 전자기기.
  2. 제1항에 있어서, 상기 프로세서는 상기 수신된 메시지에 대하여, 상기 답변 메시지를 생성하는데 이용 가능한 컨텐트를 제공 받는 것이 필요한지 판단하고, 상기 판단에 기초하여, 상기 적어도 하나의 컨텐트를 획득하는 것을 특징으로 하는 전자기기.
  3. 제1항에 있어서, 상기 프로세서는 상기 컨텐트를 추천하기 위한 키워드를 결정하고, 상기 키워드에 대응하는 컨텐트를 획득하는 것을 특징으로 하는 전자기기.
  4. 제1항에 있어서, 상기 프로세서는 상기 상대방 기기의 사용자와 상기 전자기기의 사용자의 관계 데이터를 참조하여, 상기 적어도 하나의 컨텐트를 획득하는 것을 특징으로 하는 전자기기.
  5. 제4항에 있어서, 상기 관계 데이터는 상기 전자 기기에 저장된 데이터, 상기 전자 기기와 통신하는 서버에 저장된 데이터 및 상기 상대방 기기에 저장된 데이터 중 적어도 하나를 포함하는 전자기기.
  6. 제1항에 있어서, 상기 디스플레이는,
    셋팅(settings) 메뉴에서 상기 컨텐트를 수동(manual)으로 추천하도록 설정된 경우, 상기 컨텐트를 요청하는 사용자 입력에 기초하여 상기 컨텐트를 디스플레이 하고,
    셋팅(settings) 메뉴에서 상기 컨텐트를 반자동(semiautomatic)으로 추천하도록 설정된 경우, 상기 수신된 메시지에 표시(indication)된 사용자 입력에 기초하여 상기 컨텐트를 디스플레이 하고,
    셋팅(settings) 메뉴에서 상기 컨텐트를 자동(automatic)으로 추천하도록 설정된 경우, 상기 전자기기가 상기 메시지를 인식하여 상기 적어도 하나의 컨텐트를 획득한 경우 사용자 입력(user input) 없이도 상기 컨텐트를 디스플레이 하는 것을 특징으로 하는 전자기기.
  7. 제1항에 있어서, 상기 프로세서는, 상기 메시지 내에 포함된 단어의 종류, 단어 간의 관계 및 단어의 의미를 기초로 상기 적어도 하나의 컨텐트를 획득하는 전자기기.
  8. 제1항에 있어서, 상기 프로세서는 사용자 입력에 기초하여 설정된 상기 상대방 기기의 사용자와 관계를 기초로, 상기 적어도 하나의 컨텐트를 획득하는 전자기기.
  9. 제1항에 있어서, 상기 컨텐트는 상기 전자기기에 설치된 애플리케이션에서 획득한 것을 특징으로 하는 전자기기.
  10. 제1항에 있어서, 상기 프로세서는 상기 상대방 기기로부터 수신된 메시지가 질문인지 여부를 판단하고,
    상기 수신된 메시지가 질문인 경우, 상기 적어도 하나의 키워드를 추출하는 것을 특징으로 하는 전자기기.
  11. 메시지 서비스를 제공하는 전자기기가 상대방 기기에 컨텐트를 제공하는 방법에 있어서,
    상기 상대방 기기로부터 메시지를 수신하는 단계;
    상기 수신된 메시지를 상기 메시지 서비스 화면에 표시하는 단계;
    상기 수신된 메시지를 이용하여 적어도 하나의 컨텐트를 추천하는 단계; 및
    상기 적어도 하나의 컨텐트를 포함하는 답변 메시지가 상기 상대방 기기에서 상기 전자기기 사용자가 입력한 메시지로 보여지도록, 상기 상대방 기기로 상기 답변 메시지를 제공하는 단계를 포함하는 컨텐트 제공 방법.
  12. 제11항에 있어서, 상기 컨텐트 추천 단계는 상기 수신된 메시지에 대하여, 상기 답변 메시지를 생성하는데 이용 가능한 컨텐트를 제공 받는 것이 필요한지 판단하고, 상기 판단에 기초하여, 상기 적어도 하나의 컨텐트를 획득하는 단계를 포함하는 것을 특징으로 하는 컨텐트 제공 방법.
  13. 제11항에 있어서, 상기 컨텐트 추천 단계는 상기 컨텐트를 추천하기 위한 키워드를 결정하고, 상기 키워드에 대응하는 컨텐트를 획득하는 단계를 포함하는 것을 특징으로 하는 컨텐트 제공 방법.
  14. 제11항에 있어서, 상기 컨텐트 추천 단계는 상기 상대방 기기의 사용자와 상기 전자기기의 사용자의 관계 데이터를 참조하여, 상기 적어도 하나의 컨텐트를 획득하는 단계를 포함하는 것을 특징으로 하는 컨텐트 제공 방법.
  15. 제14항에 있어서, 상기 관계 데이터는 상기 전자 기기에 저장된 데이터, 상기 전자 기기와 통신하는 서버에 저장된 데이터 및 상기 상대방 기기에 저장된 데이터 중 적어도 하나를 포함하는 컨텐트 제공 방법.
  16. 제11항에 있어서, 상기 컨텐트 추천 단계는,
    셋팅(settings) 메뉴에서 상기 컨텐트를 수동(manual)으로 추천하도록 설정된 경우, 상기 컨텐트를 요청하는 사용자 입력에 기초하여 상기 컨텐트를 디스플레이 하고,
    셋팅(settings) 메뉴에서 상기 컨텐트를 반자동(semiautomatic)으로 추천하도록 설정된 경우, 상기 수신된 메시지에 표시(indication)된 사용자 입력에 기초하여 상기 컨텐트를 디스플레이 하고,
    셋팅(settings) 메뉴에서 상기 컨텐트를 자동(automatic)으로 추천하도록 설정된 경우, 상기 전자기기가 상기 메시지를 인식하여 상기 적어도 하나의 컨텐트를 획득한 경우 사용자 입력(user input) 없이도 상기 적어도 하나의 컨텐트를 디스플레이 하는 것을 특징으로 하는 컨텐트 제공 방법.
  17. 제11항에 있어서, 상기 컨텐트 추천 단계는, 상기 메시지 내에 포함된 단어의 종류, 단어 간의 관계 및 단어의 의미를 기초로 상기 적어도 하나의 컨텐트를 획득하는 단계를 포함하는 것을 특징으로 하는 컨텐트 제공 방법.
  18. 제11항에 있어서, 상기 컨텐트 추천 단계는 사용자 입력에 기초하여 설정된 상기 상대방 기기의 사용자와 관계를 기초로, 상기 적어도 하나의 컨텐트를 획득하는 컨텐트 제공 방법.
  19. 제11항에 있어서, 상기 컨텐트는 상기 전자기기에 설치된 애플리케이션에서 획득한 것을 특징으로 하는 컨텐트 제공 방법.
  20. 제11항에 있어서, 상기 컨텐트 추천 단계는 상기 상대방 기기로부터 수신된 메시지가 질문인지 여부를 판단하는 단계;
    상기 수신된 메시지가 질문인 경우, 상기 적어도 하나의 키워드를 추출하는 단계를 포함하는 것을 특징으로 하는 컨텐트 제공 방법.
KR1020150026750A 2014-07-31 2015-02-25 메시지 서비스를 제공하는 전자기기 및 그 전자기기가 컨텐트 제공하는 방법 KR102232929B1 (ko)

Priority Applications (10)

Application Number Priority Date Filing Date Title
CN201580000958.3A CN105453612B (zh) 2014-07-31 2015-07-30 消息服务提供装置以及经由其提供内容的方法
EP20190685.6A EP3757928A1 (en) 2014-07-31 2015-07-30 Message service providing device and method of providing content via the same
PCT/KR2015/008015 WO2016018111A1 (en) 2014-07-31 2015-07-30 Message service providing device and method of providing content via the same
CN201911163405.6A CN110996271A (zh) 2014-07-31 2015-07-30 消息服务提供装置以及服务器
EP15179143.1A EP2980733A1 (en) 2014-07-31 2015-07-30 Message service providing device and method of providing content via the same
US14/815,420 US9832619B2 (en) 2014-07-31 2015-07-31 Automated generation of recommended response messages
TW104124851A TWI689201B (zh) 2014-07-31 2015-07-31 訊息服務提供裝置以及經由該裝置提供內容的方法
US15/808,484 US9986391B2 (en) 2014-07-31 2017-11-09 Automated generation of recommended response messages
US16/410,575 USRE49367E1 (en) 2014-07-31 2019-05-13 Automated generation of recommended response messages
KR1020210036926A KR102378513B1 (ko) 2014-07-31 2021-03-22 메시지 서비스를 제공하는 전자기기 및 그 전자기기가 컨텐트 제공하는 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20140098634 2014-07-31
KR1020140098634 2014-07-31

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210036926A Division KR102378513B1 (ko) 2014-07-31 2021-03-22 메시지 서비스를 제공하는 전자기기 및 그 전자기기가 컨텐트 제공하는 방법

Publications (2)

Publication Number Publication Date
KR20160016532A true KR20160016532A (ko) 2016-02-15
KR102232929B1 KR102232929B1 (ko) 2021-03-29

Family

ID=55357231

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020150026750A KR102232929B1 (ko) 2014-07-31 2015-02-25 메시지 서비스를 제공하는 전자기기 및 그 전자기기가 컨텐트 제공하는 방법
KR1020220032788A KR102447503B1 (ko) 2014-07-31 2022-03-16 메시지 서비스를 제공하는 전자기기 및 그 전자기기가 컨텐트 제공하는 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220032788A KR102447503B1 (ko) 2014-07-31 2022-03-16 메시지 서비스를 제공하는 전자기기 및 그 전자기기가 컨텐트 제공하는 방법

Country Status (3)

Country Link
KR (2) KR102232929B1 (ko)
CN (2) CN110996271A (ko)
TW (1) TWI689201B (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190077623A (ko) * 2016-10-24 2019-07-03 스냅 인코포레이티드 전자 메시지들 내의 커스터마이즈된 아바타들의 생성 및 디스플레이
KR20190094245A (ko) * 2016-12-30 2019-08-12 구글 엘엘씨 전자 통신들 내의 포함을 위한 제안들로서 제공하기 위한 시맨틱적으로 다양한 응답들의 결정
KR20190099093A (ko) * 2017-01-18 2019-08-23 스냅 인코포레이티드 맞춤화된 컨텍스트 미디어 콘텐츠 항목 생성
KR20200044435A (ko) * 2018-10-19 2020-04-29 인하대학교 산학협력단 영상의 쇼트 분류를 이용한 사용자 맞춤형 영상 추천 시스템
CN113836400A (zh) * 2016-04-14 2021-12-24 连股份有限公司 利用通讯工具服务的关键词检索方法及系统
US11229849B2 (en) 2012-05-08 2022-01-25 Snap Inc. System and method for generating and displaying avatars
US11631276B2 (en) 2016-03-31 2023-04-18 Snap Inc. Automated avatar generation

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI617823B (zh) * 2016-12-23 2018-03-11 旺玖科技股份有限公司 非接觸式智慧電池感測系統及方法
KR20180084549A (ko) * 2017-01-17 2018-07-25 삼성전자주식회사 메시지 생성 방법 및 이를 지원하는 웨어러블 전자 장치
CN107222386A (zh) * 2017-05-02 2017-09-29 珠海市魅族科技有限公司 一种消息回复方法及终端
CN107193395A (zh) * 2017-05-31 2017-09-22 珠海市魅族科技有限公司 一种信息输入方法、终端以及计算设备
CN111309875B (zh) * 2018-12-10 2023-08-04 百度在线网络技术(北京)有限公司 问题应答的方法、装置、设备和存储介质
CN110311856A (zh) * 2019-06-28 2019-10-08 上海连尚网络科技有限公司 即时通信方法、设备及计算机可读存储介质
CN112269509B (zh) * 2020-10-29 2022-11-25 维沃移动通信(杭州)有限公司 信息处理方法、装置及电子设备
CN113364915B (zh) * 2021-06-02 2022-09-27 维沃移动通信(杭州)有限公司 信息显示方法、装置和电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100332218A1 (en) * 2009-06-29 2010-12-30 Nokia Corporation Keyword based message handling
US20140074879A1 (en) * 2012-09-11 2014-03-13 Yong-Moo Kwon Method, apparatus, and system to recommend multimedia contents using metadata

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9419819B2 (en) * 2007-12-20 2016-08-16 At&T Intellectual Property I, L.P., Via Transfer From At&T Delaware Intellectual Property, Inc. Methods and computer program products for creating preset instant message responses for instant messages received at an IPTV
US20120095862A1 (en) * 2010-10-15 2012-04-19 Ness Computing, Inc. (a Delaware Corportaion) Computer system and method for analyzing data sets and generating personalized recommendations
US8549433B2 (en) * 2011-04-08 2013-10-01 Nokia Corporation Method and apparatus for providing a user interface in association with a recommender service
KR101801188B1 (ko) * 2011-07-05 2017-11-24 엘지전자 주식회사 휴대 전자기기 및 이의 제어방법
KR101290977B1 (ko) * 2012-01-26 2013-07-30 한국외국어대학교 연구산학협력단 푸쉬 서버를 이용한 메시지 전송 방법 및 그 시스템
CN103546362B (zh) * 2012-07-11 2018-05-25 腾讯科技(深圳)有限公司 进行信息推送的方法、系统及服务器
CN103079008B (zh) * 2013-01-07 2015-05-27 播思通讯技术(北京)有限公司 根据短信内容自动生成回复建议的方法和系统
US20140207806A1 (en) * 2013-01-21 2014-07-24 Samsung Electronics Co., Ltd. Method and apparatus for processing information of a terminal

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100332218A1 (en) * 2009-06-29 2010-12-30 Nokia Corporation Keyword based message handling
US20140074879A1 (en) * 2012-09-11 2014-03-13 Yong-Moo Kwon Method, apparatus, and system to recommend multimedia contents using metadata

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11925869B2 (en) 2012-05-08 2024-03-12 Snap Inc. System and method for generating and displaying avatars
US11607616B2 (en) 2012-05-08 2023-03-21 Snap Inc. System and method for generating and displaying avatars
US11229849B2 (en) 2012-05-08 2022-01-25 Snap Inc. System and method for generating and displaying avatars
US11631276B2 (en) 2016-03-31 2023-04-18 Snap Inc. Automated avatar generation
CN113836400A (zh) * 2016-04-14 2021-12-24 连股份有限公司 利用通讯工具服务的关键词检索方法及系统
US11803564B2 (en) 2016-04-14 2023-10-31 Line Corporation Method and system for keyword search using messaging service
KR20200140405A (ko) * 2016-10-24 2020-12-15 스냅 인코포레이티드 전자 메시지들 내의 커스터마이즈된 아바타들의 생성 및 디스플레이
US11843456B2 (en) 2016-10-24 2023-12-12 Snap Inc. Generating and displaying customized avatars in media overlays
US11876762B1 (en) 2016-10-24 2024-01-16 Snap Inc. Generating and displaying customized avatars in media overlays
KR20210035334A (ko) * 2016-10-24 2021-03-31 스냅 인코포레이티드 전자 메시지들 내의 커스터마이즈된 아바타들의 생성 및 디스플레이
US10938758B2 (en) 2016-10-24 2021-03-02 Snap Inc. Generating and displaying customized avatars in media overlays
US10880246B2 (en) 2016-10-24 2020-12-29 Snap Inc. Generating and displaying customized avatars in electronic messages
US11218433B2 (en) 2016-10-24 2022-01-04 Snap Inc. Generating and displaying customized avatars in electronic messages
KR20190077623A (ko) * 2016-10-24 2019-07-03 스냅 인코포레이티드 전자 메시지들 내의 커스터마이즈된 아바타들의 생성 및 디스플레이
US11030515B2 (en) 2016-12-30 2021-06-08 Google Llc Determining semantically diverse responses for providing as suggestions for inclusion in electronic communications
KR20190094245A (ko) * 2016-12-30 2019-08-12 구글 엘엘씨 전자 통신들 내의 포함을 위한 제안들로서 제공하기 위한 시맨틱적으로 다양한 응답들의 결정
CN110268437A (zh) * 2017-01-18 2019-09-20 斯纳普公司 定制的上下文媒体内容项生成
CN110268437B (zh) * 2017-01-18 2023-08-29 斯纳普公司 用于定制的上下文媒体内容项生成的系统、方法和计算机可读介质
KR20190099093A (ko) * 2017-01-18 2019-08-23 스냅 인코포레이티드 맞춤화된 컨텍스트 미디어 콘텐츠 항목 생성
US10951562B2 (en) 2017-01-18 2021-03-16 Snap. Inc. Customized contextual media content item generation
KR20200044435A (ko) * 2018-10-19 2020-04-29 인하대학교 산학협력단 영상의 쇼트 분류를 이용한 사용자 맞춤형 영상 추천 시스템

Also Published As

Publication number Publication date
TWI689201B (zh) 2020-03-21
CN110996271A (zh) 2020-04-10
KR20220038639A (ko) 2022-03-29
TW201607303A (zh) 2016-02-16
KR102232929B1 (ko) 2021-03-29
CN105453612A (zh) 2016-03-30
CN105453612B (zh) 2021-06-04
KR102447503B1 (ko) 2022-09-27

Similar Documents

Publication Publication Date Title
KR102378513B1 (ko) 메시지 서비스를 제공하는 전자기기 및 그 전자기기가 컨텐트 제공하는 방법
KR102447503B1 (ko) 메시지 서비스를 제공하는 전자기기 및 그 전자기기가 컨텐트 제공하는 방법
US10841265B2 (en) Apparatus and method for providing information
US11893992B2 (en) Multi-modal inputs for voice commands
US11888791B2 (en) Providing message response suggestions
CN111480134B (zh) 注意力感知虚拟助理清除
US20230036798A1 (en) Systems and methods for providing search interface with contextual suggestions
CN107924313B (zh) 分布式个人助理
TWI554900B (zh) 提供資訊的裝置與方法
KR102370373B1 (ko) 정보 제공하는 방법 및 이를 위한 전자기기
CN111399714A (zh) 用户活动快捷方式建议

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant