An electronic device providing a message service includes: a communication unit configured to exchange a message with another device; a display configured to display a message received from the another device, a message input by the electronic device, and at least one response message generated by the electronic device, all together on a message service screen of the display; and a processor configured to determine whether the received message includes an inquiry, and provide at least one piece of recommended content based on the inquiry in response to the received message being determined as including the inquiry, and transmit the at least one response message comprising the at least one piece of recommended content to the other device.
10. A method of providing a message service of an electronic device, the method comprising:
receiving a message from another electronic device;
displaying the received message on a message service screen of the electronic device;
determining whether the received message includes an inquiry;
in response to the received message being determined as including the inquiry, controlling based on the received message to display a plurality of recommended application icons, which enable execution of corresponding application programs that have different categories from each other, together with a plurality of recommended images stored on the electronic device based on the received message; and
transmitting a response message comprising a content corresponding to at least one of the application programs to the other another electronic device.
1. An electronic device providing a message service, the electronic device comprising:
a communicator configured to exchange a message with another electronic device;
a display configured to display a message service screen; and
a processor configured to:
control the display to display a message received from the another electronic device, a message input by the electronic device, and at least one response message generated by the electronic device, all together on the message service screen,
determine whether the received message includes an inquiry,
in response to the received message being determined as including the inquiry, control the display based on the inquiry to display a plurality of recommended application icons, which enable execution of corresponding application programs that have different categories from each other, together with a plurality of recommended images stored on the electronic device, and
transmit the at least one response message comprising a content corresponding to at least one of the application programs to the other another electronic device.
0. 35. An electronic device comprising:
a display;
a memory storing instructions; and
at least one processor configured to execute the instructions to:
control to output, via the display, a screen of a messaging application, the screen including one or more messages exchanged between the electronic device and another electronic device via the messaging application, and an input portion to receive an input message input by a user for sending to the another electronic device,
control to transmit, to a server distinct from the electronic device and the another electronic device, information on messages displayed on the screen,
control to receive, from the server, at least one recommended content determined to be related to the messages,
control to output, via the display, the at least one recommended content so as to be selectable by the user, on the input portion of the screen, and
based on a selection of a recommended content, from among the at least one recommended content output via the display, control to transmit, toward the another electronic device, a message including the selected recommended content.
0. 20. A server for providing message-related content to an electronic device, the server comprising:
a memory storing instructions; and
at least one processor configured to execute the instructions to:
obtain information for messages between an electronic device and another electronic device, the messages being exchanged between the electronic device and the another electronic device through a message application installed in the electronic device,
analyze a meaning of the messages based on the obtained information for the messages,
identify information for location in association with the messages by analyzing the meaning of the messages,
receive, based on the identified information for the location, information for at least one recommended content related to the messages from an external server for providing search service, and
in response to receiving the information for the at least one recommended content, control to provide, through the message application installed in the electronic device, the information for the at least one recommended content for sharing the at least one recommended content with the another electronic device.
2. The electronic device of
3. The electronic device of
4. The electronic device of
5. The electronic device of
6. The electronic device of
7. The electronic device of
8. The electronic device of
9. The electronic device of
11. The method of
wherein the controlling to display the plurality of recommended application icons comprises providing the recommended programs in response the marked received message being selected.
12. The method of
13. The method of
14. The method of
controlling to display the plurality of recommended application icons based on a user input requesting the application programs in response to a settings menu being set to manually recommend the application programs;
controlling to display the plurality of recommended application icons based on a user input indicated in the received message in response to the settings menu being set to semi-automatically recommend the application programs; and
controlling to display the plurality of recommended application icons without a user input when the electronic device obtains the application programs by recognizing the received message in response to the settings menu being set to automatically recommend the application programs.
15. The method of
16. The method of
17. The method of
18. The method of
extracting keywords from the received message; and
obtaining content related to each of the keywords in order of descending priority of the keywords.
19. A non-transitory computer-readable recording medium having recorded thereon a computer program for performing the method of
0. 21. The server of claim 20, wherein the at least one processor is further configured to execute the instructions to perform the natural language interpretation of the message between the electronic device and the another electronic device for analyzing the meaning of the messages.
0. 22. The server of claim 21, wherein the at least one processor is further configured to execute the instructions to determine, based on the analyzed meaning of the messages, that the messages include a location-based inquiry.
0. 23. The server of claim 22, wherein the at least one processor is further configured to execute the instructions to determine, as the identified information, a location for the location-based inquiry.
0. 24. The server of claim 20, wherein the at least one processor is further configured to execute the instructions to control to receive, from the electronic device, the identified information for the location in association with the messages.
0. 25. The server of claim 20, wherein the at least one processor is further configured to execute the instructions to control to receive, from the electronic device, the meaning of the messages.
0. 26. The server of claim 20, wherein the message are received by the electronic device from the another electronic device, and the at least one recommended content is at least one recommended content for responding to the message.
0. 27. The server of claim 20, wherein, based on the analyzed meaning of the messages indicating that the messages include a weather-related inquiry, the at least one recommended content comprises weather information corresponding to the identified information for the location in association with the messages.
0. 28. The server of claim 27, wherein, based on the analyzed meaning of the messages indicating that the messages include the weather-related inquiry, the at least one processor is further configured to execute the instructions to control to obtain, from an external weather service, the weather information corresponding to the identified information for the location in association with the messages.
0. 29. The server of claim 27, wherein the at least one processor is further configured to execute the instructions to:
perform the natural language interpretation of the messages between the electronic device and the another electronic device, and
determine, based on the natural language interpretation, that the message includes the weather-related inquiry.
0. 30. The server of claim 20, wherein the at least one processor is further configured to execute the instructions to determine, based on the analyzed meaning of the messages, the at least one recommended content to include restaurant information corresponding to the identified information for the location in association with the messages.
0. 31. The server of claim 30, wherein the at least one processor is further configured to execute the instructions to obtain, from an external service, the restaurant information corresponding to the identified information for the location in association with the messages.
0. 32. The server of claim 31, wherein the restaurant information includes information on a plurality of restaurants corresponding to the identified information for the location in association with the messages.
0. 33. The server of claim 30, wherein the at least one processor is further configured to execute the instructions to perform the natural language interpretation of the messages between the electronic device and the another electronic device.
0. 34. The server of claim 20, wherein the messages are exchanged between the electronic device and the another electronic device via a text chatting service.
0. 36. The electronic device of claim 35, wherein the at least one recommended content is information on at least one restaurant determined to be related to the messages according to an analyzed meaning of the messages, or weather information determined to be related to the messages according to the analyzed meaning of the messages.
0. 37. The electronic device of claim 35, wherein the at least one recommended content output via the display comprises a displayed list of a plurality of restaurants determined to be related to the messages, and the selected recommended content is information on one of the plurality of restaurants.
0. 38. The electronic device of claim 35, wherein the information on the at least one recommended content is determined by the server to be related to the messages according to an analyzation performed by the server with respect to the messages.
0. 39. The electronic device of claim 35, wherein the at least one processor is further configured to execute the instructions to:
perform an analyzation of a meaning of the messages,
control to transmit, to the server, the information on the messages comprising the analyzed meaning of the messages, and
control to receive, from the server, the at least one recommended content based on the transmitted information comprising the analyzed meaning of the messages, and
wherein the transmitted information comprising the analyzed meaning of the messages comprises at least one of a determined keyword and a determined context corresponding to the messages.
0. 40. The electronic device of claim 35, wherein the control to transmit, the control to receive, and the control to output the at least one recommended content are performed automatically by the at least one processor without a user input.
0. 41. The electronic device of claim 35, wherein the at least one processor is further configured to execute the instructions to control to output, via the display, a notification that at least one recommended content is displayable in relation to the message text, and
the control to output the at least one recommended content is performed based on a user input received within a predetermined time relative to the output of the notification.
0. 42. The electronic device of claim 35, wherein the at least one processor is further configured to execute the instructions to control to output, via the display, a notification that at least one recommended content is displayable in relation to the messages, and
wherein the notification is not displayed when a predetermined time is exceeded.
|
This is a reissue application of U.S. Pat. No. 9,832,619, which was filed as U.S. patent application Ser. No. 14/815,420 on Jul. 31, 2015 and issued on Nov. 28, 2017, the disclosure of which is incorporated herein by reference in its entirety.
This application claims priority from Korean Patent Application No. 10-2015-0026750, filed on Feb. 25, 2015, and 10-2014-0098634, filed on Jul. 31, 2014 in the Korean Intellectual Property Office, the disclosures of which are incorporated herein in their entireties by reference.
1. Field
Apparatuses and methods consistent with exemplary embodiments relate to providing content to a user during a conversation by using an electronic device.
2. Description of the Related Art
As the distribution rate of portable terminals has been rapidly increased in recent times, portable terminals have become a daily necessity for contemporary people. The portable terminals provide various functions including not only a voice call service, which is its primary function, but also various kinds of additional services, such as data transferring, etc.
In particular, communication between users has been actively performed by using a smart terminal. With this trend, various technologies configured to provide more convenient environments for such communication have been developed.
One or more exemplary embodiments provide a method of providing convenient communication environments by using various electronic devices.
According to an aspect of an exemplary embodiment, there is provided an electronic device providing a message service including: a communication unit configured to exchange a message with another device; a display configured to display a message received from the another device, a message input by the electronic device, and at least one response message generated by the electronic device, all together on a message service screen of the display; and a processor configured to determine whether the received message includes an inquiry, and provide at least one piece of recommended content based on the inquiry in response to the received message being determined as including the inquiry, and transmit the at least one response message comprising the at least one piece of recommended content to the other device.
The processor may be further configured to determine whether the electronic device stores data used to generate the at least one piece of recommended comment, and obtain the data based on a result of the determination.
The processor may be further configured to determine a keyword associated with the at least one piece of recommended content, and obtain content corresponding to the keyword.
The processor may be further configured to obtain the at least one piece of recommended content based on relational data between a user of the other device and a user of the electronic device.
The relational data may include at least one of data stored in the electronic device, data stored in a server communicating with the electronic device, and data stored in the other device.
The display may be further configured to display the at least one piece of recommended content based on a user input requesting the at least one piece of recommended content in response to a settings menu being set to manually recommend the at least one piece of recommended content, display the at least one piece of recommended content based on a user input indicated in the received message in response to the settings menu being set to semi-automatically recommend the at least one piece of recommended content, and display the at least one piece of recommended content without a user input when the electronic device obtains the at least one piece of content by recognizing the received message in response to the settings menu being set to automatically recommend the at least one piece of recommended content.
The processor may be further configured to obtain the at least one piece of recommended content based on types of words included in the message, relations among the words, and meanings of the words.
The processor may be further configured to obtain the at least one piece of recommended content based on a relation between a user of the electronic device and a user of the other device, which is set based on a user input.
The at least one piece of recommended content may be obtained from an application installed in the electronic device.
The processor may be further configured to extract at least one keyword from the received message to determine whether the received message includes an inquiry.
According to an aspect of another exemplary embodiment, there is provided a method of providing content to another device, via an electronic device providing a message service including: receiving a message from the other device; displaying the received message on a message service screen; determining whether the received message includes an inquiry; providing at least one piece of recommended content based on the received message; and transmitting a response message comprising the at least one piece of recommended content to the other device.
The providing the at least one piece of recommended content may include determining whether the electronic device stores data used to generate the at least one piece of recommended comment, and obtaining the data based on a result of the determination.
The providing the at least one piece of recommended content may include determining a keyword associated with the at least one piece of recommended content and obtaining content corresponding to the keyword.
The providing the at least one piece of recommended content may include obtaining the at least one piece of recommended content based on relational data between a user of the electronic device and a user of the other device.
The relational data may include at least one of data stored in the electronic device, data stored in a server communicating with the electronic device, and data stored in the other device.
The providing the at least one piece of recommended content may include: displaying the at least one piece of recommended content based on a user input requesting the at least one piece of content in response to a settings menu being set to manually recommend the at least one piece of recommended content; displaying the at least one piece of recommended content based on a user input indicated in the received message in response to the settings menu being set to semi-automatically recommend the at least one piece of recommended content; and displaying the at least one piece of recommended content without a user input when the electronic device obtains the at least one piece of content by recognizing the received message in response to the settings menu being set to automatically recommend the at least one piece of recommended content.
The providing the at least one piece of recommended content may include obtaining the at least one piece of recommended content based on types of words included in the message, relations among the words, and meanings of the words.
The providing the at least one piece of recommended content may include obtaining the at least one piece of recommended content based on a relation between a user of the electronic device and a user of the other device, which is set based on a user input.
The at least one piece of recommended content may be obtained from an application installed in the electronic device.
The providing the at least one piece of recommended content includes: extracting at least one keyword from the received message to determine whether the received message includes an inquiry.
According to an aspect of an exemplary embodiment, there is provided a method of providing a social networking service by a server including: displaying a message posted by a first device through an application or a website; recognizing a user input from a second device that activates an input field displayed on the application or the website; determining whether the posted message includes an inquiry; generating a recommended response based on information of relationship between a user of the first device and a user of the second device in response to the posted message including the inquiry; and providing the recommended response to the second device.
The determining whether the posted message may include the inquiry includes determining whether a sentence of the message starts with an interrogative adverb, determining whether a subject and a verb of the sentence are inversed, and determining whether the sentence includes a question mark.
The recommended response may include a plurality of contents that belong to at least two different categories, and the at least two different categories include an application and a picture.
The method may further include determining user preference of the at least two different categories based on the number of times that each of the categories is selected by the second device, and displaying the plurality of contents in the order of the user preference.
The above and/or other aspects will be more apparent by describing certain exemplary embodiments, with reference to the accompanying drawings, in which:
Exemplary embodiments are described in greater detail below with reference to the accompanying drawings.
In the following description, like drawing reference numerals are used for like elements, even in different drawings. The matters defined in the description, such as detailed construction and elements, are provided to assist in a comprehensive understanding of the exemplary embodiments. However, it is apparent that the exemplary embodiments can be practiced without those specifically defined matters. Also, well-known functions or constructions are not described in detail since they would obscure the description with unnecessary detail.
When a part “includes” or “comprises” an element, unless there is a particular description contrary thereto, the part can further include other elements, not excluding the other elements. Throughout the specification, it will be understood that when an element is referred to as being “connected” to another element, it may be “directly connected” to the other element or “electrically connected” to the other element with intervening elements therebetween. In addition, terms such as “ . . . unit,” “ . . . module,” or the like refer to units that perform at least one function or operation, and the units may be implemented as hardware or software or as a combination of hardware and software.
Throughout the specification, a term such as “user” may refer to a user of an electronic device. Throughout the specification, a term such as “message service” may refer to a one to one, one to many, or many to many service via which users may easily exchange messages, such as a conversation of the users.
Throughout the specification, a term “application” refers to a set of a series of computer programs designed to execute specific tasks. The application in this specification may vary. The application may include a game application, a video playing application, a map application, a memo application, a calendar application, a phone book application, a broadcasting application, a sport support application, a payment application, a picture folder application, etc. However, the application is not limited thereto. The application may also be referred to as an App.
Expressions such as “at least one of,” when preceding a list of elements, modify the entire list of elements and do not modify the individual elements of the list.
In this specification, a term “message” may refer to a group of text units or a group of sound units including at least one selected from one or more words, one or more phrases, and one or more clauses, as part of a conversation exchanged between users.
In this specification, a term “keyword” may refer to a word, a phrase, and a clause related to a meaning of a message, the meaning being obtained by performing a natural language analysis with respect to the message. The keyword may refer to not only the word, the phrase, and the clause included in the message, but also a word, a phrase, and a clause which are not included in the message.
In this specification, a term “content” may refer to data, files, software, and information including a video, a sound, and a text transferring information via an electronic device. For example, the image content may refer to image data transferred via the electronic device. For example, the content may include text responses including a two-dimensional image, a three-dimensional image, a two-dimensional video, a three-dimensional video, and various languages, and content related to various application services.
As illustrated in
The electronic device 100 according to an exemplary embodiment may exchange a text message or a voice message with the device of another user 200. Also, the electronic device 100 may exchange the text message or the voice message with the device of another user 200 via the server 300.
In addition, the electronic device 100 may request and obtain various types of data from the server 300 and may transmit various types of data to the server 300. For example, the data that the electronic device 100 obtains from the server 300 may be data that is exchanged between the device of another user 200 and the server 300.
The content providing system 10 may be embodied by more or less components than the illustrated components. For example, according to another exemplary embodiment, the server 300 may not be included in the content providing system 10.
Hereinafter, the electronic device 100, the device of another user 200, and the server 300 will be described in greater detail.
The electronic device 100 according to an exemplary embodiment may exchange a message with the device of another user 200.
In this specification, the electronic device 100 may be realized as smart phones, tablets, personal computers (PCs), wearable devices, personal digital assistants (PDAs), laptop computers, cell phones, mobile phones, enterprise digital assistants (EDAs), portable multimedia players (PMPs), personal navigation devices or portable navigation devices (PNDs), handheld game consoles, mobile Internet devices (MIDs), or electronic books (e-books).
The wearable device may include a head mounted display (HMD) (hereinafter, referred to as “HMD”) which may be worn at a head portion. For example, the HMD may include glasses, helmets, hats, etc., but it is not limited thereto. The wearable device may also be realized as a ring, a necklace, a bracelet, shoes, earrings, a hair band, clothes, gloves, a thimble, etc.
The device of another user 200 may be a device which receives a first message generated in the electronic device 100 and displays the first message in an output interface. Also, the device of another user 200 may generate a second message according to a user input and transmit the second message to the electronic device 100.
According to an exemplary embodiment, the device of another user 200 may receive the first message from the electronic device 100 via the server 300, and may transmit the second message to the electronic device 100 via the server 300. According to another exemplary embodiment, the device of another user 200 may directly receive the first message from the electronic device 100 without the server 300, and may directly transmit the second message to the electronic device 100 without the server 300. According to another exemplary embodiment, the device of another user 200 may be a single device or a plurality of devices.
The device of another user 200 according to exemplary embodiments may be realized as various types. For example, the device of another user 200 may be realized as smart phones, tablet PCs, wearable devices, personal digital assistants (PDAs), laptop computers, cell phones, mobile phones, enterprise digital assistants (EDAs), portable multimedia players (PMPs), personal navigation devices or portable navigation devices (PNDs), handheld game consoles, mobile Internet devices (MIDs), or electronic books (e-books).
The server 300 may perform communication with the electronic device 100 or the device of another user 200. For example, the server 300 may receive the first message generated in the electronic device 100 from the electronic device 100, and may receive the second message generated in the device of another device 200 from the device of another device 200. Also, the server 300 may transmit the first message to the device of another user 200 and transmit the second message to the electronic device 100.
The server 300 may manage the message received from the electronic device 100 or the device of another user 200. For example, the server 300 may store the exchanged message in a message database (DB) of each device. Also, the server 300 may renew the message DB. The server 300 may renew the message DB according to a cycle time period, or may renew the message DB whenever a new message is received from the electronic device 100 or the device of another user 200.
Referring to
The electronic device 100 may provide an interface, such as a conversation window including a back button 20, a call button 30, a user name box 40, and messages 50, 51, 52, and 53. The back button 20 and the call button 30 may be displayed on the user name box 40.
The user may touch or double tap the back button 20 to go back to a previous menu. The user may touch or double tap the call button 30 to execute a voice chatting or a voice call. The user name box 40 may display a name or a nickname of a conversation partner. Also, the user name box 40 may display a name or a nickname of the user of the electronic device 100. The conversation window may display the messages 50, 51, 52, and 53 exchanged between the user of the electronic device and the conversation partner.
The electronic device 100 may determine whether each message 50, 51, 52, or 53 is a question or not. The electronic device 100 may extract a keyword from the message 50, 51, 52, or 53, when any of the messages 50, 51, 52, 53 is a question. Based on the extracted keyword, the electronic device 100 may obtain the content which may be used when responding to the message.
Via a pop-up window 60, the electronic device 100 may receive a user input regarding whether to display the content obtained with respect to each keyword. The electronic device 100 may display the obtained content, when the user touches or taps a first response button 61. The electronic device 100 may not display the obtained content, when the user touches or taps a second response button 62.
When any of the messages 50, 51, 52, and 53 is a question, the electronic device 100 may obtain the content which may be used in responding to the question, before activating the pop-up window 60. Alternatively, when any of the messages 50, 51, 52, and 53 is a question, the electronic device 100 may obtain the content which may be used in responding to the question, after activating the pop-up window 60. Alternatively, when any of the messages 50, 51, 52, and 53 is a question, the electronic device 100 may obtain the content which may be used in responding to the message after the user touches the first response button 61, after the pop-up window 60 is activated.
Referring to
The electronic device 100 may receive the messages 50, 51, 52, and 53 from the device of another user 200. Alternatively, the electronic device 100 may receive the messages 50, 51, 52, and 53 from the device of another user 200 via the server 300.
The electronic device 100 may determine whether each of the messages 50, 51, 52, and 53 includes a question. The electronic device 100 may determine whether each of the messages 50, 51, 52, and 53 includes a question by using a semantic analysis method and a statistical analysis method which will be described later.
The electronic device 100 may extract a keyword from the message received from the device of another user 200 in operation S130.
The electronic device 100 may extract the keyword from the message by using the semantic analysis method and the statistical analysis method.
The electronic device 100 may extract the keyword by using the semantic analysis. The electronic device 100 may determine whether a given sentence is demanding an answer or is providing some information. The electronic device 100 may analyze the sentence to determine whether the sentence starts with interrogative adverbs (e.g., who, what, when, where, why, which, how) or helping verb (e.g., is, are, can, could, did, does, or do, have, has, may, might, shall, should, will, would), whether the subject and the verb of the sentence are inversed, and whether the sentence includes a question mark to determine whether the sentence is an interrogative sentence.
For example, the electronic device 100 may receive the message 53 “where are you?” from the device of another user 200. The electronic device 100 may determine the meaning of the message 53 and extract “where” as the keyword. Also, the electronic device may extract “where” as the keyword by further considering conversation content between the users and user-related data. The user-related data may include at least one of content that is input by the user and recorded data regarding the user. The user-related data may denote content related to only one user or content related to two or more users.
The electronic device 100 may extract “where” as the keyword based on at least one selected from the meaning of the message, the content that is input by the user, and the recorded data regarding the user.
The electronic device 100 may perform a natural language analysis with respect to the meaning of the message to extract the keyword. For example, the electronic device 100 may extract “where” as the keyword. The electronic device 100 may analyze and determine the meaning of the message included in the conversation between the users, and may predict content for a response message, based on the meaning of the message. For example, the electronic device 100 may analyze the meaning of the message as a question that is put by the user of the device of another user 200 to ask about a location of the user of the electronic device 100. Based on this meaning, the electronic device 100 may predict that the user of the electronic device 100 may need to provide a response regarding his/her own location to the user of the device of another user 200, and may extract “where” as the keyword.
Also, when the electronic device 100 extracts the keyword based on the meaning of the message, the electronic device 100 may consider the content that is input by the user. For example, the content that is input by the user may include a home address of the user, a company address of the user, a movement path record of the user, and a place according to a schedule of the user. For example, when the user records a business trip plan via a scheduler application, and the content of the message exchanged with the device of another user 200 is related to a business trip location, the electronic device 100 may extract “where” as the keyword.
Also, when the electronic device 100 extracts the keyword based on the meaning of the message, the electronic device 100 may consider the recorded content regarding the user. For example, the recorded content regarding the user may denote a record about the user which is written in the electronic device 100 and the server 300. Also, the record about the user may include a record that is written by the user while the user uses the electronic device 100 and a record that is written in the server while the user users an App service. Also, the record about the user may include a record that is written indirectly rather than directly by the user while the user uses the electronic device 100 or the server 300.
For example, the record about the user may include content of a call of the user, content of payment of the user via a credit card, and content written by the user via a social network service (SNS).
The electronic device 100 may extract the keyword by figuring out the meaning of the message by the statistical analysis.
For example, the electronic device 100 may determine a priority order among predicted situations of the user. For example, the electronic device 100 may determine that any of one or more predicted situations is more likely to happen than the other situations. For example, the electronic device 100 may determine that any of one or more keywords is more likely to happen than the other keywords.
The electronic device may extract “where” as the keyword in the above-described method by the statistical analysis and the semantic analysis.
The electronic device 100 may obtain content which may be used in responding to the message, based on the extracted keyword, in operation S170.
The electronic device 100 may obtain the content by performing various searches based on the extracted keyword. The content that the electronic device 100 obtains may include a two-dimensional image, a three-dimensional image, a two-dimensional video, a three-dimensional video, a text reply formed of various languages, content of various fields, and content related to applications providing various services.
The electronic device 100 according to an exemplary embodiment may obtain the content related to the keyword from an external search server.
For example, the electronic device 100 may obtain the content related to the application service related to the keyword.
For example, when the received message is a question type message, the electronic device 100 may analyze the message and obtain the content related to a weather application service.
For example, when although the received message is not a question type, it is recognized as a result of the semantic analysis that the message requires a response, the electronic device 100 may obtain the content by using a matching table or a predetermined rule.
For example, the electronic device 100 may determine an application service which the user may use in responding to the message according to the keyword, by considering the conversation content and the user-related data.
For example, when the user is located in Korea, the electronic device 100 may select an application service related to maps which is provided by a service provider of Korean nationality. When the user is located in Japan, the electronic device 100 may select an application service related to maps which is provided by a service provider of Japanese nationality.
Also, for example, the electronic device 100 may select a map application service which is frequently used by the user of the electronic device 100, by referring to an application use frequency of the user.
Also, for example, the electronic device 100 may select an application service suitable to a current situation from among application services which are pre-selected by the user.
For example, the electronic device 100 may select a first application service suitable to the current situation of the user, from among first through fifth application services which are pre-selected by the user. For example, when there are first through fifth restaurant application services which are pre-selected by the user, the electronic device 100 may select at least one restaurant application service suitable to the current situation of the user, from among the first through fifth restaurant application services.
Also, the electronic device 100 may obtain the content by using an internet search service. For example, the electronic device 100 may obtain the content by performing various searches based on the keyword, after determining the interest search service. For example, the internet search service may be search services which are capable of being accessed by only authorized persons, such as a university library, a thesis search site, and a database of a research institute.
For example, the electronic device 100 may obtain a two-dimensional image corresponding to the keyword, through the search service. For example, the electronic device 100 may obtain the content of various fields by inputting the keyword in the search service as an input value.
According to another exemplary embodiment, the electronic device 100 may obtain the related content stored in the electronic device 100.
For example, the electronic device 100 may obtain a two-dimensional image, a three-dimensional image, a two-dimensional video, a three-dimensional video, a text reply formed of various languages, data about the content of various fields, which are stored in the electronic device 100.
The electronic device 100 may provide at least one piece of obtained content in operation S190.
The electronic device 100 may provide the content obtained based on the keyword to the user by various methods.
For example, the electronic device 100 may provide the obtained content to the user by using at least one of a sound, an image, and a text. For example, the method by which the electronic device 100 provides the obtained content may vary according to types of electronic devices 100. For example, the electronic device 100 may display the obtained content by a screen division method and a screen transformation method, and when the electronic device 100 is a wearable device such as a smart watch, the electronic device 100 may display the content by summarizing the content. For example, the electronic device 100 may display the content in a sound and an image via an avatar, and when the electronic device 100 is a wearable device such as a smart watch, the electronic device 100 may display the summary of the content.
For example, the electronic device 100 may obtain a two-dimensional image corresponding to the keyword, by using the search service. For example, the electronic device 100 may obtain the content of various fields by inputting the keyword in the search service as an input value.
Referring to
The electronic device 100 displays the name of the user of the electronic device 100 in the user name box 40. According to another exemplary embodiment, the electronic device 100 may display the name of the user of the device of another user 200 in the user name box 40.
The electronic device 100 receives the message 50 “Hi” from the device of another user 200 at 8:26 on Aug. 6, 2013. The electronic device 100 sends the message 51 to the device of another user 200 and receives the message 52 from the device of another user 200. The user of the electronic device 100 receives the message “where are you?” from Hyunjin.
The electronic device 100 may determine whether each of the messages 50, 51, 52, and 53 includes a question. For example, the electronic device 100 may determine that each of the messages 50, 51, and 52 is not a question, and the message 53 is a question.
For example, the electronic device 100 may mark the message which is determined as a question to distinguish the question message from the other messages. For example, the electronic device 100 may mark the message which the electronic device 100 determines as the question in a different color (for example, a fluorescent yellow color) so as to be distinguished from the other messages.
The electronic device 100 may extract a keyword with respect to the message 53. For example, the electronic device 100 may extract “a current location” as the keyword with respect to the message 53. Alternatively, for example, the electronic device 100 may extract “where are you?” and convert it to “where am I?” as the keyword with respect to the message 53. Alternatively, for example, the electronic device 100 may extract “England” or “Seoul” as the keyword with respect to the message 53 by further considering user-related data.
Referring to
Referring to
Referring to
Referring to
The electronic device 100 may realize the knowledge framework 120, a first application 141, and a second application 143, and may store a web content list 145 and a device list 147.
The knowledge framework 120 may include a natural language processing unit (NLU) 121, a session manager 122, a profiler 123, a context analyzer 124, a response generator 125, a content metadata storage 126, and an App register 127.
The NLU 121 may analyze a meaning of each message received by the electronic device 100. The NLU 121 may analyze the meaning of each message by a statistical method. The NLU 121 may analyze each message by the statistical method and the semantic method and may transmit the analyzed message to the context analyzer 124.
The session manager 122 may check a conversation partner, conversation date and time, conversation content, and a conversation environment with respect to the messages exchanged by the electronic device 100 and may analyze the exchanged message in a group unit. The session manager 122 may analyze the one or more messages exchanged by the electronic device 100 to define the messages as a session.
The profiler 123 may collect and store content about the user of the electronic device or a user who exchanged messages with the user of the electronic device. The profiler 123 may keep, process, and store content written by the user of the electronic device or the user who exchanged messages with the user of the electronic device.
The context analyzer 124 may analyze and determine a meaning of each of messages exchanged by the electronic device, based on meanings of the messages exchanged by the electronic device. The context analyzer 124 may analyze and determine the meaning of each of messages exchanged by the electronic device in a unit of one or more message, the unit being defined by the session manager 122.
The response generator 125 may generate a response with respect to the message. The response generator 125 may generate the content which may be used in responding to the message. The response generator 125 may generate various possible responses and provide the generated responses to the user via an interface screen.
The content metadata storage 126 may include metadata about content. For example, the content metadata storage 126 may include content about an application. For example, the content metadata storage 126 may include the metadata regarding whether the application is a sport-related application or a movie-related application. Also, for example, the content metadata storage 126 may include the metadata about an image. The content metadata storage 126 may include content, such as names of persons appearing in the image, and a relation between the persons and the user of the electronic device.
For example, the content metadata storage 126 may continuously collect content about a web content list 145 on the internet. For example, the content metadata storage 126 may continuously collect data about a device content list 147 of the electronic device.
The App register 127 may include content about various applications. For example, the App register 127 may include data about applications included in the electronic device 100. For example, the App register 127 may include data about applications not included in the electronic device 100. The App register 127 may frequently update the data about applications. The response generator 125 may generate a response related to the applications by referring to the data about the applications of the App register 127.
For example, the App register 127 may store data about at least one of the first application 141 and the second application 142. For example, the first application 141 may be an application installed in the electronic device 100. For example, the second application 143 may be an application that is not installed in the electronic device 100.
Referring to
The response recommender 128 may include the natural language processing unit NLU 121 and the response generator 125.
The session manager 122 may transmit a message um[n] to the response recommender 128. The response recommender 128 may receive the message um[n] from the session manager 122 and the natural language processing unit 121 may generate a keyword kw[m] from the message um[n]. For example, the session manager 122 may transmit the message um[n] “where are you?” to the response recommender 128, and the natural language processing unit 121 may generate “location” or “information” as the keyword kw[m].
The response recommender 128 may receive user information usr.info from the profiler 123. For example, with respect to the message um[n] “where are you?”, the response recommender 128 may receive user information in an external service account, information about a user's home or company or about a place that the user frequently visits, as the user information usr.info. When the response recommender 128 generates the keyword kw[m], the response recommender 128 may refer to the user information usr.info received from the profiler 123.
The response recommender 128 may receive context information cnt.info from the context analyzer 124. For example, the context information cnt.info about the message um[n] “where are you?” may include time information, global positioning system (GPS) information, weather information, analyzed user activity information, and recent logs.
For example, the user activity information may include information such as a fact that the user stayed in a restaurant for one hour, and a fact that the user continuously ran for one minute. For example, the recent logs may include networking information such as information of a base station accessed by the electronic device 100. The response recommender 128 may consider the context information cnt.info, when generating a recommended response rcm.ans by using the keyword kw[m].
The response recommender 128 may receive application related information ap.info by transmitting the keyword kw[m] to the App register 127. For example, the application related information ap.info may include metadata of applications or information about a map-related application.
The response recommender 128 may receive content information cm.info corresponding to the keyword kw[m] from the content metadata storage 126. For example, the content information cm.info may include specific information of an image. For example, the specific image information may include a location (latitude and longitude) in which the image is generated or tag information.
The response recommender 128 may receive a search result value srch.rst by transmitting the keyword kw[m] to the web search engine 129. For example, the search result value srch.rst may include an image of Boston, an address of a company, and a map application.
The response recommender 128 may receive at least one of the application related information ap.info, the content information cm.info, and the search result value srch.rst, and may generate the recommended response rcm.ans corresponding to the message um[n] by referring to the user information usr.info and the context information cnt.info.
A term “setting” may denote pre-determining an operation method of the electronic device 100 by a user's setting or a user's input to set a use environment of the electronic device 100.
Referring to
That the electronic device 100 provides the response related content automatically according to the settings may denote that when the electronic device 100 determines that an exchanged message includes a question, the electronic device 100 provides the response related content with respect to the message without receiving an additional user input.
That the electronic device 100 provides the response related content semi-automatically according to the settings may denote that when the electronic device 100 determines that an exchanged message includes a question, the electronic device 100 provides the response related content with respect to the message if the electronic device 100 receives a user's simple input (a touch or tap input) with respect to the message.
For example, when the electronic device 100 provides the response related content semi-automatically, the electronic device 100 may display the message corresponding to the question so as to be distinguished from other messages. For example, the electronic device 100 may display a background color of the message corresponding to the question differently from other messages. For example, the electronic device 100 may display the message corresponding to the question by using an underline and/or a conspicuous color so as to be distinguished from other messages.
The user of the electronic device 100 may receive the content by touching or tapping the message marked by using one of the above methods. The electronic device 100 may obtain the response related content by receiving the touch or tap input of the user. The electronic device 100 may obtain and store the content related to a predicted response before the electronic device 100 receives the touch or tap input of the user, and then, may provide the response related content when receiving the touch or tap input of the user.
When the electronic device 100 is set to manually provide the response related content, the electronic device 100 provides the response related content with respect to the message, if the electronic device 100 determines an exchanged message as a question and identifies whether the user will receive the response related content by using the user input indicating that the user will receive the response related content.
Referring to
For example, the electronic device 100 may provide the response related content by considering content related to a first user User1 set in the settings. Also, for example, the electronic device 100 may provide the response related content with respect to a message exchanged by a second user User2. Also, for example, the electronic device 100 may provide the response related content only with respect to a message input by a third user User3.
Referring to
For example, when it is set in the settings to semi-automatically provide the response related content as illustrated in
Referring to
For example, the electronic device 100 may determine content of the question by referring to only data stored in the electronic device 100. For example, the electronic device 100 may determine the content of the question by referring to only data stored in the electronic device 100 and the server 300.
For example, the electronic device 100 may provide the response related content by referring to only the data stored in the electronic device 100. For example, the electronic device 100 may provide the response related content by referring to only the data stored in the electronic device 100 and the server 300.
In addition to the manners illustrated in
Referring to
The electronic device 100 may determine whether the message received from the device of another user 200 includes a question in operation S220. The electronic device 100 may divide a sentence used in the message into grammatical units and extract the relationship among the grammatical units. The electronic device 100 may determine whether the received message is a question based on a result of this operation.
The electronic device 100 may extract a keyword from the message received from the device of another user 200 in operation S230. The electronic device 100 may extract the keyword from the received message by performing a natural language analysis. When the electronic device 100 extracts the keyword, the electronic device 100 may extract the keyword by referring to data that is input by the user or recorded data regarding the user.
The electronic device 100 may obtain the content which may be used in responding to the message based on the keyword in operation S250. The electronic device 100 may obtain the content by performing various searches based on the extracted keyword. The content that the electronic device 100 obtains may include a two-dimensional image, a three-dimensional image, a two-dimensional video, a three-dimensional video, text replies including various languages, content of various fields, and content regarding application services providing various services.
The electronic device 100 may provide at least one piece of obtained content in operation S270. For example, the electronic device 100 may provide the at least one piece of obtained content to the user via at least one of a sound, an image, and a text.
Referring to
The electronic device 100 may determine whether to receive the content which may be used in responding to the message received from the device of another user 200, in operation S320. For example, the electronic device 100 may determine whether to receive the content which may be used in responding to the received message, based on user configurations which are set via settings.
The electronic device 100 may extract a keyword from the message received from the device of another user 200 in operation S330. The electronic device 100 may extract the keyword by performing a natural language analysis to determine a meaning of the message.
The electronic device 100 may obtain the content which may be used in responding to the message, based on the keyword, in operation S350. The electronic device 100 may obtain the content related to the keyword from an external search server. The electronic device 100 may obtain the content via an Internet search service. The electronic device 100 may obtain the related content stored in the electronic device 100.
The electronic device 100 may provide a list of the obtained content in operation 5370. The electronic device 100 may provide the content obtained based on the keyword to the user via various methods.
Referring to
The electronic device 100 may set a priority order among the one or more keywords based on internal data of the electronic device 100 or an input by the user, in operation S440. The electronic device 100 may set the priority order among the keywords, which may be referred to for obtaining the content. For example, when the electronic device 100 may obtain the content based on the plurality of keywords, the electronic device 100 may first obtain the content based on the keyword which has a high priority order, and may later obtain the content based on the keyword which has a low priority order. For example, when the electronic device 100 may obtain the content based on the plurality of keywords, the electronic device 100 may first display the content based on the keyword which has a high priority order, and may later display the content based on the keyword which has a low priority order.
The electronic device 100 may obtain the content which may be used in responding to the message, based on the keyword, in operation S450, and may provide at least one piece of content via one or more methods, in operation S470.
Referring to
The electronic device 100 may extract a keyword from the message received from the device of another user 200 in operation S530.
The electronic device 100 may analyze relational data between a user of the device of another user 200 and a user of the electronic device 100, in operation S540. The relational data between the user of the other device 200 and the user of the electronic device 100 may refer to data stored in the electronic device 100 or the server 300.
The electronic device 100 may obtain the content which may be used in responding to the message based on the analyzed relational data between the users or the keyword, in operation S550. Also, the electronic device 100 may provide at least one piece of content via one or more methods in operation S570.
The electronic device 100 may receive a first message from the device of another user 200 in operation S1005. The electronic device 100 may receive the first message from the device of another user 200 via the server 300.
The electronic device 100 may determine whether the first message received from the device of another user 200 includes a question in operation S1010. The electronic device 100 may determine whether the received first message includes a question by performing a natural language analysis.
When the received first message includes a question, the electronic device 100 may extract a keyword from the message in operation S1020.
The electronic device 100 may request the server 300 to obtain the content based on the keyword in operation S1020. The server 300 may obtain the content which may be used in responding to the message based on the keyword in operation S1030.
The server 300 may provide the content obtained based on the keyword to the electronic device 100 in operation S1035. The electronic device 100 may provide the obtained content in operation S1040.
The electronic device 100 may transmit a second message to the device of another user 200 in operation S1045. For example, the electronic device 100 may transmit the second message to the device of another user 200 by including at least one piece of the obtained content in the second message.
Referring to
The server 300 may include a content metadata storage 326 and an App register 327.
The NLU 121 may analyze a meaning of the message received by the electronic device 100. The NLU 121 may analyze the message via a statistical analysis method and a semantic analysis method, and transmit the analyzed message to the context analyzer 124.
The session manager 122 may analyze the messages exchanged by the electronic device 100 in a group unit by checking and using a conversation partner, date and time at which the conversation takes place, conversation content, and a conversation environment with respect to the exchanged messages. The session manager 122 may group one or more messages exchanged by the electronic device 100 and define the group as a session. For example, the session manager 122 may transmit, for example, a message um[n] “where are you going in this afternoon?” to the response recommender 128.
The response recommender 128 may receive the message um[n] from the session manager 122, and the NLU 121 may generate a keyword kw[m] from the message um[n]. For example, the session manager 12 may transmit the message “where are you going in this afternoon?” to the response recommender 128, and the NLU 121 may generate a schedule, an event, a location, a destination, or time as the keyword kw[m].
The profiler 123 may continuously collect, process, and store content regarding the user of the electronic device 100 and persons related to the user of the electronic device 100. When the keyword kw[m] is generated, the response recommender 128 may receive user information usr.info related to the keyword kw[m] from the profiler 123 and refer to the user information usr.info. For example, the user information usr.info with respect to the message um[n] “where are you going in this afternoon?” may include the user information in an external service accountant and information about a user's home or company or places frequently visited by the user.
The context analyzer 124 may determine a meaning of each of messages exchanged by the electronic device 100, based on meanings of the messages exchanged by the electronic device 100. The context analyzer 124 may determine the meaning of each of messages exchanged by the electronic device 100 in a unit of one or more messages, the unit being defined by the session manager 122. The response recommender 128 may receive the context information cnt.info from the context analyzer 124.
For example, the context information cnt.info regarding the message um[n] “where are you going in this afternoon?” may include time information, GPS information, analyzed user schedule information, and recent logs. For example, the response recommender 128 may consider the context information cnt.info when the response recommender 128 generates a recommended response rcm.ans by using the keyword kw[m].
The electronic device 100 may receive application related information ap.info by transmitting the keyword kw[m] to the App register 327. For example, the application related information ap.info with respect to the message um[n] “where are you going in this afternoon?” may include scheduler application related information, social network service application related information, and chatting application related information. For example, a first application may be a weather-related application installed in the electronic device 100. For example, a second application may be a news related application which is not installed in the electronic device 100.
The electronic device 100 may receive content information cm.info by transmitting the keyword kw[m] to the content metadata storage 326. For example, the response recommender 128 may receive data about the weather related application and the news related application from the content metadata storage 326. For example, the content information cm.info regarding the message um[n] “where are you going in this afternoon?” may include image specific information or schedule related information. For example, the image specific information may include a location (latitude, longitude) in which an image is generated.
The response recommender 128 of the electronic device 100 may receive at least one of the application related information ap.info and the content information cm.info from the server 300 and refer to the user information usr.info and the context information cnt.info to generate the recommended response rcm.ans corresponding to the message um[n].
The response generator 125 may generate the response related content with respect to the message. The response generator 125 may generate the content which may be used in responding to the message. The response generator 125 may provide the generated content to the user via an interface screen.
The server 300 may receive a first message from the device of another user 200 in operation S2010. The server 300 may transmit the first message received from the device of another user 200 to the electronic device 100 in operation S2020.
The server 300 may determine whether the first message received from the device of another user 200 includes a question in operation S2030.
When the received first message includes a question, the server 300 may extract a keyword from the message in operation S2040.
The server 300 may obtain the content which may be used in responding to the message, based on the keyword, in operation S2050.
The server 300 may provide the content obtained based on the keyword to the electronic device 100. The electronic device 100 may provide the obtained content in operation S2060.
The electronic device 100 may transmit a second message to the server 300 in operation S2070. For example, the electronic device 100 may transmit the second message to the server 300 by including at least one piece of obtained content in the second message. The server 300 may transmit the second message to the device of another user 200 in operation S2080.
In
Alternatively, the device of anther user 200 may directly transmit the first message to the electronic device 100 before, at, or after the device of another user 200 transmits the first message to the server 300. In that case, the server 200 may omit operation S2020.
According to another exemplary embodiment, the server 300 may provide online social networking services through a website or a mobile application. In that case, the server 300 may display the first message received from the device of another user 200 on the website or the mobile application rather than directly forwarding the first message to the electronic device 100 (operation S2020). The first message may be one of threaded comments posted by the device of another user 200 and/or other users. When the user of the electronic device 100 activates a comment input field by placing a cursor in the input field or touching the input field with his/her finger, the server 300 may perform operations S2030, S2040, and S2050 with one of the comments posted on the website or the mobile application. For example, the server 300 may perform operations S2030, S2040, and S2050 on comments which are posted most recently or selected by a user input.
Referring to
The profiler 123 may continuously retain, process, and store content written by the user of the electronic device 100 or other users. The profiler 123 may transmit user information usr.info to the server 300 by receiving a request of the server 300.
The context analyzer 124 may determine a meaning of each of messages exchanged by the electronic device 100, based on meanings of the messages exchanged by the electronic device 100. The context analyzer 124 may transmit context information cnt.info to the server 300 by receiving a request of the server 300.
The server 300 may include a session manager 322, the content metadata storage 326, the App register 327, and a response recommender 328. The response recommender 328 may include the natural language processing unit NLU 321 and a response generator 325.
The session manager 322 may determine a conversation partner, date and time in which the conversation takes place, conversation content, and conversation environments with respect to the messages exchanged by the electronic device 100 and may determine the messages exchanged by the electronic device 100 via the server 300 in a group unit. The session manager 322 may gather one or more messages exchanged by the electronic device 100 and define the gathered messages as a session. For example, the session manager 322 may transmit the received message um[n] to the response recommender 328.
The response recommender 328 may receive the message um[n] from the session manager 322 and the NLU 321 may generate a keyword kw[m] from the message um[n]. For example, the session manager 322 may transmit a message “Is there a hot issue in Boston?” to the response recommender 328, and the NLU 321 may generate news, issues, topic, and location as the keyword kw[m].
The response recommender 328 may receive user information usr.info from the profiler 123. For example, when the keyword kw[m] is generated, the response recommender 328 may refer to the user information usr.info received from the profiler 123. For example, the user information usr.info may include an age and a preference of the user. For example, the user information usr.info may include user information in an external service accountant.
The response recommender 328 may receive context information cnt.info from the context analyzer 124. For example, the response recommender 328 may consider the context information cnt.info, when the response recommender 328 generates a recommended response rcm.ans by using the keyword kw[m]. The context information cnt.info may include time, an analyzed user schedule, and recent logs.
The response recommender 328 may receive at least one of application related information ap.info and content information cm.info and may refer to the user information usr.info and the context information cnt.info received from the electronic device 100, to generate the recommended response rcm.ans corresponding to the message um[n]. For example, the application related information ap.info may include information of applications providing news, magazines, articles. For example, the content information cm.info may include articles, and images of Boston.
The response generator 325 may generate the response related content with respect to the message. The response generator 325 may generate the content which may be used in responding to the message. The response generator 325 may transmit the generated content to the electronic device 100.
The server 300 may receive a first message from the device of another user 200 in operation S3010. The server 300 may transmit the first message received from the device of another user 200 to the electronic device 100 in operation S3020.
The server 300 may determine whether the first message received from the device of another user 200 includes a question in operation S3030. The server 300 may determine whether the first message includes a question after transmitting the first message to the electronic device 100, and may determine whether the first message includes a question before transmitting the first message to the electronic device 100.
When the received first message includes a question, the server 300 may extract a keyword from the message in operation S3040. The server 300 may transmit the keyword to the electronic device 100 in operation S3045.
The electronic device 100 may obtain the content which may be used in responding to the message based on the keyword, in operation S3050. The electronic device 100 may display the content obtained based on the keyword.
The electronic device 100 may transmit a second message to the server 300 in operation S3060. For example, the electronic device 100 may transmit the second message to the server 300 by including at least one piece of obtained content in the second message. The server 300 may transmit the second message to the device of another user 200 in operation S3070.
The sever 300 may perform operations S3030 and S3040 before transmitting the first message, and may transmit the first message and the keyword to the electronic device 100 at substantially the same time. Alternatively, the device of anther user 200 may directly transmit the first message to the electronic device 100 before, at, or after the device of another user 200 transmits the first message to the server 300. In that case, the server 300 may omit operation S3020.
Referring to
The first profiler 123 may collect and store data regarding a user of the electronic device 100 or another user. The data regarding the user may include a name, a job, a telephone number, an interest field, a friend relationship, and a movement record of the user. The first profiler 123 may keep, process, and store content written by the user of the electronic device 100. The content written by the user of the electronic device 100 may include a message, a memo, a reply, and a comment written by the user.
The content metadata storage 126 may include various types of data with respect to the content. For example, the content metadata storage 126 may include data regarding types of an application. Also, for example, the content metadata storage 126 may include metadata, such as a date of image generation, and a place of image generation.
Also, for example, the content metadata storage 126 may continuously collect and store data with respect to various types of web content on the Internet and data with respect to various types of content of the electronic device 100.
The App register 127 may include data regarding various applications. For example, the App register 127 may store data regarding at least one of a first application installed in the electronic device 100 and a second application not installed in the electronic device 100.
The server 300 may include the NLU 321, the session manager 322, a second profiler 323, the context analyzer 324, and the response generator 325.
The session manager 322 may analyze messages exchanged by the server 300 in a group unit by checking and using conversation participants, date and time of conversation, conversation content, and conversation environments of the messages exchanged by the server 300. The session manager 322 may gather one or more messages exchanged by the server 300 and define the gathered messages as a session.
The NLU 321 may analyze a meaning of a first message received by the server 300. The NLU 321 may analyze the first message by a statistical analysis method and a semantic analysis method and transmit the analyzed meaning to the context analyzer 324.
The context analyzer 324 may determine a meaning of each of messages exchanged by the electronic device 100 based on meanings of the messages exchanged by the electronic device 100. The context analyzer 324 may determine the meaning of each of messages exchanged by the electronic device 100 in a unit of one or more messages, the unit being defined by the session manager 322.
The response recommender 328 may receive at least one of user information usr.info[p] and context information cnt.info and may refer to the user information usr.info[p], application related information ap.info, and content information cm.info received from the electronic device 100, to generate a recommended response rcm.ans corresponding to the message um[n]. The server 300 may transmit the recommended response rcm.ans to the electronic device 100.
Referring to
The database 370 may include data with respect to various users. For example, the database 370 may store information regarding a user related to the user of the electronic device 100. For example, the database 370 may include data regarding a level of intimacy between a user of the device of another user 200 and the user of the electronic device 100.
The database manager 360 may manage the database 370. The database manager 360 may manage various types of data recorded in the database 370, and may provide the data managed by the database manager 360 to the electronic device 100 in response to a request of the electronic device 100.
The database manager 360 may manage records for each user written in the database 370. Also, the database manager 360 may manage records for each group written in the database 370. The database manager 360 may transmit the data requested by the electronic device 100 to the electronic device 100.
The electronic device 100 may edit and manage information stored in the server 300 via a relationship finder 140, an intimacy analyzer 150, and a friend list database 190.
The relationship finder 140 may determine a relationship between the user of the device of another user 200 and the user of the electronic device 100. The relationship finder 140 may receive the information about the user of the device of another user 200 and the user of the electronic device 100 by requesting the information from the database manager 360 included in the server 300, and may determine the relationship between the users. The relationship finder 140 may determine the relationship between the users by analyzing previous call records and conversation content between the users.
The intimacy analyzer 150 may analyze the level of intimacy between the user of the device of another user 200 and the user of the electronic device 100. For example, the intimacy analyzer 150 may calculate the level of intimacy between the user of the device of another user 200 and the user of the electronic device 100 as quantified data (for example, data such as 1, 2, 3, and 10, or data such as a first level, a second level, and a third level). For example, the intimacy analyzer 150 may determine which of one or more predetermined categories the intimacy level between the user of the device of another user 200 and the user of the electronic device 100 belongs to. For example, the intimacy analyzer 150 may analyze the level of intimacy between the user of the device of another user 200 and the user of the electronic device 100 in such a way that the intimacy analyzer 150 selects the intimacy level from among categories, such as a “family,” a “friend,” a “colleague,” or a “school mate.”
The friend list database 190 may store data analyzed by the relationship finder 140 and the intimacy analyzer 150, based on a relationship that a user has with respect to the user of the electronic device 100. Here, information included in the friend list database 190 may correspond to not only information about friends of the user of the electronic device 100, the friends as in a social context, but also information about all persons who may be accessed by the electronic device 100, such as families, alumni, colleagues, and relatives.
For example, the friend list database 190 may store information that the user of the device of another user 200 and the user of the electronic device 100 are friends in a social network service (SNS). For example, the friend list database 190 may store information that the user of the device of another user 200 and the user of the electronic device 100 are family members or relatives. For example, the friend list database 190 may store information that the user of the device of another user 200 and the user of the electronic device 100 are an employee and an employer of a company. For example, the friend list database 190 may store information that the user of the device of another user 200 and the user of the electronic device 100 are school alumni.
Referring to
The database 170 may include data corresponding to phone records between the user of the electronic device 100 and various users. For example, the database 170 may store information about phone records between the user of the electronic device 100 and other users, in real time. For example, the phone records may include calling time, calling places, calling start time, calling end time, and calling methods (voice or message).
Also, the database 170 may include data written in an address book or a contact list of the user of the electronic device 100. For example, the database 170 may include information, such as a company name, a job, and a family relation of a friend.
The database analyzer 160 may analyze and manage data such as the phone records or the address list included in the database 170. The database analyzer 160 may analyze various types of data written in the database 170 and may provide a result of the analysis of the data, in response to a request of the relationship finder 140 or the intimacy analyzer 150.
The database analyzer 160 may manage the record written in the database 170 for each individual. Also, the database analyzer 160 may manage the record written in the database 170 for each group. The database analyzer 160 may transmit the data requested by the relationship finder 140 or the intimacy analyzer 150 to the electronic device 100.
The relationship finder 140 may determine a relationship between the user of the device of another user 200 and the user of the electronic device 100. The relationship finder 140 may determine the relationship between the user of the device of another user 200 and the user of the electronic device 100 by requesting the database analyzer 160. The relationship finder 140 may determine the relationship between the user of the device of another user 200 and the user of the electronic device 100 by analyzing previous call records between the user of the device of another user 200 and the user of the electronic device 100.
The intimacy analyzer 150 may analyze a level of intimacy between the user of the device of another user 200 and the user of the electronic device 100. For example, the intimacy analyzer 150 may calculate the level of intimacy between the user of the device of another user 200 and the user of the electronic device 100 as quantified data (for example, data such as 1, 2, 3, and 10, or data such as a first level, a second level, and a third level). For example, the intimacy analyzer 150 may analyze the level of intimacy between the user of the device of another user 200 and the user of the electronic device 100 in such a way that the intimacy analyzer 150 selects the level of intimacy from among categories, such as a “family,” a “friend,” a “colleague,” or a “school mate.”
The friend list database 190 may store the data analyzed by the relationship finder 140 and the intimacy analyzer 150, based on a relationship that a user has with respect to the user of the electronic device 100. The friend list database 190 of
Referring to
The server 300 may include the database 370 and the database manager 360. The database 370 and the database manager 360 of
The relationship finder 140 may determine the relationship between the user of the device of another user 200 and the user of the electronic device 100. The relationship finder 140 may determine the relationship between the user of the device of another user 200 and the user of the electronic device 100 by requesting at least one of the database analyzer 160 and the database manager 360. The relationship finder 140 may determine the relationship between the user of the device of another user 200 and the user of the electronic device 100 by analyzing previous phone records between the user of the device of another user 200 and the user of the electronic device 100. The relationship finder 140 may determine the relationship between the user of the device of another user 200 and the user of the electronic device 100 by analyzing conversation content between the user of the device of another user 200 and the user of the electronic device 100.
The intimacy analyzer 150 may analyze a level of intimacy between the user of the device of another user 200 and the user of the electronic device 100. The intimacy analyzer 150 may analyze the level of intimacy between the user of the device of another user 200 and the user of the electronic device 100 by requesting at least one of the database analyzer 160 and the database manager 360.
For example, the intimacy analyzer 150 may calculate the level of intimacy between the user of the device of another user 200 and the user of the electronic device 100 as quantified data (for example, data such as 1, 2, 3, and 10, or data such as a first level, a second level, and a third level). For example, the intimacy analyzer 150 may determine which of one or more predetermined categories the level of intimacy between the user of the device of another user 200 and the user of the electronic device 100 belongs to. For example, the intimacy analyzer 150 may analyze the level of intimacy between the user of the device of another user 200 and the user of the electronic device 100 in such a way that the intimacy analyzer 150 selects the level of intimacy from among categories, such as a “family,” a “friend,” a “colleague,” or a “school mate.”
The friend list database 190 may store the data analyzed in the relationship finder 140 and the intimacy analyzer 150, based on a relationship that a user has with respect to the user of the electronic device 100.
Also, according to another exemplary embodiment, at least one of the relationship finder 140, the intimacy analyzer 150, and the friend list database 190 may be included in the server 300.
Referring to
The electronic device 100 displays the name of the user of the electronic device 100 via the user name box 40. According to another exemplary embodiment, the electronic device 100 may display the name of the user of the device of another user 200 via the user name box 40.0
The electronic device 100 receives the message 50 “Hi” from the device of another user 200 at 8:26 on Aug. 6, 2013. The electronic device 100 transmits the message 51 to the device of another user 200 and receives the message 52 from the device of another user 200. The user of the electronic device 100 receives the message “where are you?” from Hyunjin.
The electronic device 100 may determine whether each of the messages 50, 51, 52, and 53 includes a question. For example, the electronic device 100 may determine that the messages 50, 51, and 52 do not include questions, and the message 53 includes a question.
For example, the electronic device 100 may mark the message which is determined as a question such that the message determined as a question is distinguished from other messages, as illustrated in
When the electronic device 100 receives a user input corresponding to the portion marked so as to be distinguished from other messages, the electronic device 100 may display content which may be used in responding to the message.
For example, when the message 53 is determined as the question, the electronic device 100 may receive a user input indicating whether a recommended response is required, via the pop-up window 60, as illustrated in
Referring to
Referring to
Referring to
Referring to
The electronic device 100 may recommend at least one of the application and the image which may be used in responding to the message, by considering the relationship between the user of the electronic device 100 and the user of the device of another user 200, according to the exemplary method described by referring to
For example, the electronic device 100 may recommend at least one of the application and the image, except a personal picture of the user of the electronic device 100, when the electronic device 100 determines that the user of the electronic device 100 and the user of the device of another user 200 have a relationship that is an employer and an employee. For example, if the user of the electronic device 100 takes a vacation in London now, the electronic device 100 may not recommend a picture taken in the vacation as the response, by considering that the relationship between conversation participants is business-related. The electronic device 100 may classify the vacation picture as personal data and store the classification information in connection with the vacation picture. The electronic device 100 may not suggest any data classified as personal data when the level of intimacy (e.g., level 2) of the user of another device 200 is lower than a predetermined level (e.g., level 7).
Referring to
The electronic device 100 may recommend at least one of the application, the direct response, and the image which may be used in responding to the message, by considering the relationship between the user of the electronic device 100 and the user of the device of another user 200, according to the exemplary method described with reference to
For example, when the electronic device 100 determines that the user of the electronic device 100 and the user of the device of another user 200 have a relationship that has a high level of intimacy, such as families or friends, the electronic device 100 may provide the content which may be used in responding to the message, the content including an personal picture of the user of the electronic device 100. For example, if the user of the electronic device 100 currently takes a vacation in London, the electronic device 100 may recommend a picture taken in the vacation as the response, by considering that the conversation participants have a personal relationship.
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
According to another exemplary embodiment, the electronic device 100 may determine user's category preference without using the survey pop-up windows 81, 82, 83, 53, and 85, To this end, the electronic device 100 may automatically store category information of content selected by the user every time a selection is made, and count the number of times that each category is selected. Recommended response may be displayed in the order of category preference.
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
The electronic device 100 may identify which language each voice message is formed of in operation S4010. For example, the electronic device 100 may identify whether each voice message is formed of the English language or the Korean language.
The electronic device 100 may transform each voice message into a text of the identified language in operation S4030. For example, when the electronic device 100 determines that a first voice message is formed of the English language, the electronic device 100 may transform the first voice message into an English text.
The electronic device 100 may display the transformed text in operation S4050. For example, the electronic device 100 may transform the first voice message into the English text and may display the English text via a display unit (or an output interface).
Referring to
Referring to
For example, when the electronic device 100 determines that the message 55 “Where is he?” is a question, the electronic device 100 may check whether the user needs a recommended response, via the pop-up window 63, as illustrated in
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
The electronic device receives the message 57 “Where are you?” from the device of another user 200, which is the device of John. The electronic device 100 and the device of another user 200 may display exchanged messages via the STT function. The electronic device 100 continuously transmits messages to the device of another user, and receives messages from the device of another user 200. The electronic device 100 may determine whether the continuously received messages are questions. The user of the electronic device 100 receives the message 57 “where are you?” from John.
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
The electronic device 100 may provide a response edit window to the user. The user may edit the selected image 77_b via the response edit window.
Referring to
When the user finishes editing the selected image, the electronic device may provide the image 77_b to the user of the electronic device 100, the user of the device of another user 200, or a third user, via a mailing service or an SNS, according to a selection of the user. Also, the electronic device 100 may provide the image 77_b to the user of the electronic device 100, the user of the device of another user 200, or the third user, via one or more services, regardless of the selection of the user.
Referring to
Referring to
Referring to
The electronic device 100 may provide a response edit window to the user, in correspondence to a user input. The electronic device 100 may display, via the response edit window, a result of inputting a keyword extracted from the message in the application 78_a as an input value. For example, as illustrated in
The electronic device 100 may provide an editing environment via the response edit window, via which the user may emit the result image 78_b. For example, the user may enlarge or reduce the result image 78_b via the response edit window, and may select a portion of the result image 78_b.
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
The display unit 1100 may include a display panel 1110 and a controller for controlling the display panel 1110. The display panel 1110 may be realized as various types of displays, such as liquid crystal displays (LCD), organic light-emitting diodes (OLED), active-matrix organic light-emitting diodes (AM-OLED), and plasma display panels (PDP). The display panel 1110 may be realized to be flexible, transparent, and wearable. The display unit 1100 may be combined with a touch panel 1470 of the user input unit 1450 to be provided as a touch screen. For example, the touch screen may include an integral module in which the display panel 1110 and the touch panel 1470 are stacked. The memory 1200 may include at least one of an internal memory and an external memory.
The internal memory may include at least one selected from, for example, volatile memories (for example, dynamic RAM (DRAM), static RAM (SRAM), and synchronous dynamic RMA (SDRAM), non-volatile memories (for example, one time programmable ROM (OTPROM), programmable ROM (PROM), erasable and programmable ROM (EPROM), electrically erasable and programmable ROM (EEPROM), mask ROM, and flash ROM), hard disk drive (HDD), and solid state drive (SSD). According to an exemplary embodiment, the control unit 1700 may process a command or data received from the non-volatile memory or from at least one of other components by loading the command or the data in the volatile memory. Also, the control unit 1700 may retain the data received or generated from other components in the non-volatile memory.
The external memories may include at least one selected from, for example, compact flash (CF), secure digital (SD), micro secure digital (Micro-SD), mini secure digital (Mini-SD), extreme digital (xD), and memory stick.
The memory 1200 may store various programs and data used for an operation of the user terminal device 1000. For example, the memory 1200 may temporarily or semi-permanently store at least a portion of content that is to be displayed on a lock screen.
The control unit 1700 may control the display unit 1100 such that a portion of the content stored in the memory 1200 is displayed in the display unit 1100. In other words, the control unit 1700 may display a portion of the content stored in the memory 1200 in the display unit 1100. Alternatively, the control unit 1700 may perform a control operation corresponding to a user's gesture, when the user's gesture is generated in a portion of the display unit 1100.
The control unit 1700 may include at least one of the natural language processing unit (NLU) 121, the session manager 122, the profiler 123, the context analyzer 124, the response generator 125, the content metadata storage 126, and the App register 127 of the knowledge framework 120 as illustrated in
The control unit 1700 may include at least one selected from random access memory (RAM) 1710, read-only memory (ROM) 1720, a central processing unit (CPU) 1730, a graphic processing unit (GPU) 1740, and a bus 1750. The RAM 1710, the ROM 1720, the CPU 1730, and the GPU 1740 may be connected with one another via the bus 1750.
The CPU 1730 accesses the memory 1200 and performs a boot operation by using O/S stored in the memory 1200. Also, the CPU 1730 performs various operations by using various programs, content, and data stored in the memory 1200.
A set of command languages for a system boot operation is stored in the ROM 1720. For example, when a turn-on command is input in a portable terminal 1000 and a power is supplied, the CPU 1730 may copy the O/S stored in the memory 1200 in the RAM 1710, according to the command language stored in the ROM 1720, and may execute the O/S to boot the system. When the booting is completed, the CPU 1730 may copy various programs stored in the memory 1200 in the RAM 1710 and execute the programs copied in the RAM 1710 to perform various operations. The GPU 1740 displays a UI screen on a portion of the display unit 1100, when the booting of the user terminal device 1000 is completed. In detail, the GPU 1740 may generate a screen in which electronic files including various objects, such as content, icons, and menus are displayed. The GPU 1740 may calculate feature values, such as coordinate values, shapes, sizes, and colors of displayed objects in correspondence to a layout of the screen. Also, the GPU 1740 may generate screens of various layouts including objects, based on the calculated feature values. The screens generated by the GPU 1740 may be provided to the display unit 1100 and may be each displayed in each portion of the display unit 1100.
The GPS chip 1250 may receive a global positioning system (GPS) signal from a GPS satellite to calculate a current location of the user terminal device 1000. The control unit 1700 may calculate a user location by using the GPS chip 1250, when a navigation program is used or on other occasions when a current user location is needed.
The communication unit 1300 may perform communication with various types of devices of another user, according to various types of communication methods. The communication unit 1300 may include at least one selected from a WiFi chip 1310, a bluetooth chip 1320, a wireless communication chip 1330, and an NFC chip 1340. The control unit 1700 may perform communication with various types of devices of another user by using the communication unit 1300.
The WiFi chip 1310 and the bluetooth chip 1320 may perform communication by respectively using a WiFi method and a bluetooth method. When the WiFi chip 1310 or the bluetooth chip 1320 is used, various connection content such as SSID and a session key is firstly transmitted and received, and then, communication is connected by using the various connection content, to transmit and receive various information. The wireless communication chip 1330 refers to a chip performing communication according to various communication standards, such as IEEE, Zigbee, 3rd generation (3G), 3rd generation partnership project (3GPP), and long term evolution (LTE). The NFC chip 1340 refers to a chip operating in a near field communication (NFC) method using 13.56 MHz zone from among various RF-ID frequency zones, including 135 kHz, 13.56 MHz, 433 MHz, 860-960 MHz, and 2.45 GHz.
The video processor 1350 may process content received via the communication unit 1300 or video data included in content stored in the memory 1200. The video processor 1350 may perform various image processing with respect to the video data, such as decoding, scaling, noise filtering, frame rate conversion, and resolution conversion.
The audio processor 1400 may process content received via the communication unit 1300 or audio data included in the content stored in the memory 1200. The audio processor 1400 may perform various processing with respect to the audio data, such as decoding, amplification, and noise filtering.
The control unit 1700 may drive the video processor 1350 and the audio processor 1400 when a reproducing program with respect to multimedia content is executed, to reproduce corresponding content. The speaker unit 1600 may output audio data generated by the audio processor 1400.
The user input unit 1450 may receive an input of various command languages from a user. The user input unit 1450 may include at least one selected from a key 1460, a touch panel 1470, and a pen recognition panel 1480.
The key 1460 may include various types of keys, such as a mechanical button and a wheel, formed in various portions of an external body of the user terminal device 1000, such as a front portion, a side portion, and a rear portion.
The touch panel 1470 may sense a touch input of a user and may output a touch event value corresponding to the sensed touch signal. When the touch panel 1470 is formed as the touch screen by being combined with the display panel 1110, the touch screen may be realized as various types of touch sensors, such as a capacitive type, a decompression type, and a piezoelectric type. The capacitive type uses a method of calculating a touch coordinate by sensing fine electricity caused by a human body of a user when a part of the human body of the user touches a surface of the touch screen, by using a dielectric coated on the surface of the touch screen. The decompression type uses a method of including two electrode plates equipped in the touch screen and calculating a touch coordinate by sensing a current flow due to the upper and bottom plates contacting each other at a touched point, when a user touches a screen. The touch event occurring in the touch screen may be generated mainly by a finger of a human being, but may also be generated by an object of a conductive material which may cause a change in a capacitance.
The pen recognition panel 1480 may sense a proximate input of a pen or a touch input of a pen according to an operation of a touch pen (for example, a stylus pen) or a digitizer pen by a user, and may output a pen proximate event or a pen touch event that is sensed. The pen recognition panel 1480 may be realized for example as an EMR method and may sense a touch or proximate input, according to a change in a strength of an electromagnetic field due to approaching or a touch of a pen. In detail, the pen recognition panel 1480 may be formed by including an electronic induction coil sensor having a grid structure, and an electronic signal processing unit sequentially providing indirect signals having pre-determined frequencies in each loop coil of the electronic induction coil sensor. If there is a pen in which a resonator circuit is equipped, around the loop coil of the pen recognition panel 1480, the magnetic field transmitted from the corresponding loop coil may generate a current based on mutual electromagnetic induction, in the resonator circuit in the pen. Based on the current, an inductive magnetic field is generated from a coil forming the resonator circuit in the pen, and the pen recognition panel 1480 may detect the inductive magnetic field in the loop coil in a state of signal reception, so that an approaching or a touch location of the pen may be sensed. The pen recognition panel 1480 may be provided below the display panel 1110, by having a pre-determined area, for example, an area which may cover a display portion of the display panel 1110.
The microphone unit 1500 may receive an input of a user's voice or other noises and convert the input into audio data. The control unit 1700 may use the user's voice input through the microphone unit 1500 in a calling operation or may convert the user's voice into audio data to store the audio data in the memory 1200.
The photographing unit 1550 may photograph a still image or a video according to a control of a user. The photographing unit 1550 may be realized in a multiple number, for example including a front camera and a rear camera.
When the photographing unit 1550 and the microphone unit 1500 are provided, the control unit 1700 may perform a control operation according to a user's voice input through the microphone unit 1500 or a user's motion recognized by the photographing unit 1550. For example, the user terminal device 1000 may operate in a motion control mode or a sound control mode. When the user terminal device 1000 operates in the motion control mode, the control unit 1700 may active the photographing unit 1550 to photograph the user and may track the motion change of the user to perform a control operation corresponding to the motion change of the user. When the user terminal device 1000 operates in the sound control mode, the control unit 1700 may analyze the user's voice input through the microphone unit 1500 and may operate in a sound recognition mode that performs a control operation according to the analyzed user's voice.
The motion detection unit 1650 may sense a motion of a body of the user terminal device 1000. The user terminal device 1000 may rotate or may tilt in various directions. Here, the motion detection unit 1650 may detect characteristics of the motion, such as a direction and angle of the rotation, and a tilting degree, by using at least one of various sensors, such as an earth magnetic sensor, a gyro sensor, and an acceleration sensor.
In addition, the user terminal device 1000 may further include a USB port to which a USB connector may be connected, various external input ports for connections with various external terminals, such as a headset, a mouse, and LAN, a DMB chip receiving and processing a digital multimedia broadcasting (DMB) signal, and various sensors.
Names of the above-described components of the user terminal device 1000 may vary. Also, the user terminal device 1000 may be formed by including one of the above-described components, by omitting some of the above-described components, or by further including additional components.
Referring to
The kernel 1210 may include at least one of a device driver 1210-1 for managing the resource and a system resource manager 1210-2. The device driver 1210-1 may access and control hardware of the user terminal device 1000 like the software. To this end, the device driver 1201-1 may divided into an interface and a separate driver module provided by each hardware company. The device driver 1210-1 may include, for example, at least one selected from a display driver, a camera driver, a Bluetooth driver, a shared memory driver, a USB driver, a keypad driver, a Wi-Fi driver, an audio driver, and an inter-process communication (IPC) driver. The system resource manager 1210-2 may include at least one of a process managing unit, a memory managing unit, and a file system managing unit. The system resource manager 1210-2 may control, allocate, and retrieve the system resource.
The middleware 1220 may include a plurality of modules which are realized in advance to provide common features of various applications. The middleware 1220 may provide the function via the API 1230 so that an application 1240 may efficiently use the resource in the user terminal device 1000. The middleware 1220 may include at least one selected from a plurality of modules including, for example, an application manager 1220-1, a windows manager 1220-2, a multimedia manager 1220-3, a resource manager 1220-4, a power manager 1220-5, a database manager 1220-6, a package manager 1220-7, a connection manager 1220-8, a notification manager 1220-9, a location manager 1220-10, a graphic manager 1220-11, and a security manager 1220-12.
The application manager 1220-1 may manage a life cycle of at least one application of the applications 1240. The windows manager 1220-2 may manage a graphic user interface (GUI) resource used in a screen. The multimedia manager 1220-3 may check a format for reproducing various media files, and may encode or decode the media files by using a codec corresponding to a corresponding format. The resource manager 1220-4 may manage a resource of at least one application of the applications 1240, such as a source code, memory, and a storage space. The power manager 1220-5 may manage a battery or power by operating together with BIOS, and provide power information for operation. The database manager 1220-6 may generate, search, and change a database to be used in at least one application of the applications 1240. The package manger 1220-7 may install or update an application distributed in a package file format. The connection manager 1220-8 may manage wireless connection, such as Wifi or Bluetooth. The inform manager 1220-9 may display to the user or inform user of events, such as a message arrival, an appointment, and a proximity inform, by a method which is not disturbing to the user. The location manager 1220-10 may manage location information of the user terminal device 1000. The graphics manager 1220-11 may manage graphics effects which are provided to the user and a user interface related thereto. The security manager 1220-12 may provide various security functions required for a system security or a user authentication. When the user terminal device 1000 includes a call function, the middleware 1220 may further include a call manager for managing a voice or a video call function of the user.
The middleware 1220 may further include a runtime library 1220-13 or other library modules. The runtime library 1220-13 is a library module which is used by a compiler for adding a new function via a programming language while an application is executed. For example, the runtime library 1220-13 may perform a function related to an input and output, a memory management, or an arithmetic function. The middleware 1220 may generate a new middleware module by combining various functions of the above described internal modules. The middleware 1220 may provide a specialized module according to a type of an operating system, to provide differentiated functions. The middleware 1220 may partially omit previous components dynamically or add new components. The middleware 1220 may be formed by partially omitting the components in the present exemplary embodiment, by further adding other components, or by replacing the components with other components performing substantially the same functions with different names.
The API 1230 is a set of API programming functions, and may be formed of different components, according to operating systems. In the case of Android or iOS, for example, one API set may be provided per platform, and in the case of Tizen, for example, two or more API sets may be provided.
The application 1240 may include a preloaded application which is installed as default or a third party application which a user may install and use during a process of using. The application 1240 may include, for example, at least one selected from a home application 1240-1 for going back to a home screen, a dialer application 1240-2 for making a call with a partner, a text message application 1240-3 for receiving a message from a partner identified by a telephone number, an instant message (IM) application 1240-4, a browser application 1240-5, a camera application 1240-6, an alarm application 1240-7, a phone book application 1240-8 for managing a telephone number or an address of a partner, a call log application 1240-9 for managing a call log of a user, a text message receiving or sending log, or an absence call log, an email application 1240-10 for receiving a message from a partner identified by an email, a calendar application 1240-11, a medical player application 1240-12, an album application 1240-13, and a watch application 1240-14. Names of the described components of the software in the present exemplary embodiment may vary according to types of operating systems. Also, the software according to the present exemplary embodiment may include at least one of the above-described components, omit some of the above-described components, or may further include other additional components.
The electronic device 2000 may include a processor 2700, an input interface 2400, and an output interface 2100.
The processor 2700 may include a mobile application processor or a central processing unit. The processor 2700 may be referred to as a controller and a control unit. The term “processor” may be used to denote a core, a display controller, and an image signal processor (ISP). The processor 2700 may include at least one of the components 121-126, 1710, 1720, 1730, and 1740, of the control unit 1700 with reference to
The processor 2700 according to an exemplary embodiment may extract at least one keyword from a message displayed on a screen via a message service. Also, the processor 2700 according to an exemplary embodiment may newly generate a keyword related to the keyword. Also, the processor 2700 according to an exemplary embodiment may obtain content based on the newly generated keyword and location information of the electronic device 2000.
The input interface 2400 may denote a device used by a user to input data to control the electronic device 1000. For example, the input interface 2400 may be a key pad, a dome switch, a touch pad (using a touch-type capacitance method, a pressure-type resistive method, an infrared sensing method, a surface ultrasonic conductive method, an integral tension measuring method, a piezo effect method, etc.), a jog wheel, or a jog switch. Also, the input interface 2400 may include a touch screen, a touch panel, a microphone, and a keyboard.
Also, the input interface 2400 may include at least one module for receiving data from the user. For example, the input interface 2400 may include a motion recognition module, a touch recognition module, a voice recognition module, etc.
The touch recognition module sense a touch gesture on a touch screen of the user and transmit content related to the touch gesture to the processor. The sound recognition module may recognize a voice of the user by using a voice recognition engine and transmit the recognized voice to the processor. The motion recognition module may recognize motion of an object and transmit content related to the motion of the object to the processor.
Throughout the specification, an “input” made by the user via the input interface 2400 of the electronic device 2000 may include at least one selected from a touch input, a bending input, a voice input, a key input, and a multimodal input. However, it is not limited thereto.
A “touch input” may signify a gesture performed by a user on a touch screen to control the electronic device 100. The touch gesture stated in the present specification may include tapping, touching & holding, double tapping, dragging, panning, flicking, dragging & dropping, etc.
“Tapping” is a user's motion of touching a screen by using a finger or a touch tool such as an electronic pen (e.g., stylus) and then instantly lifting the finger or touch tool from the screen without moving.
“Touching & holding” is a user's motion of touching a screen by using a finger or a touch tool such as an electronic pen and then maintaining the above touching motion over a critical time, for example, 2 seconds, after touching the screen. In other words, a time difference between a touch-in time and a touch-out time is greater than or equal to the critical time, for example, 2 seconds. When a touch input lasts over the critical time, to remind the user whether the touch input is tapping or touching & holding, a feedback signal may be provided in a visual, acoustic, or tactile manner. The critical time may vary according to an exemplary embodiment.
“Double tapping” is a user's motion of touching the screen twice by using the finger or touch tool.
“Dragging” is a user's motion of touching the screen by using the finger or touch tool and moving the finger or touch tool to another position on the screen while keeping the touching motion. The dragging motion may enable the moving or panning motion of an object.
“Panning” is a user's motion of performing a dragging motion without selecting an object. Since no object is selected in the panning motion, no object is moved in a page but the page itself is moved on the screen or a group of objects may be moved within a page.
“Flicking” is a user's motion of performing a dragging motion over a critical speed, for example, 100 pixel/s, by using the finger or touch tool. The dragging (panning) motion or the flicking motion may be distinguished based on whether the moving speed of the finger or touch tool is over the critical speed, for example, 100 pixel/s, or not.
“Dragging & Dropping” is a user's motion of dragging an object to a predetermine position on the screen by using the finger or touch tool and then dropping the object at that position.
“Pinching” is a user's motion of moving two fingers touching on the screen in opposite directions. The pinching motion is a gesture to magnify (open pinch) or contract (close pinch) an object or a page. A magnification value or a contraction value is determined according to the distance between the two fingers.
“Swiping” is a user's motion of touching an object on the screen by using the finger or touch tool and simultaneously moving the object horizontally or vertically by a predetermine distance. A swiping motion in a diagonal direction may not be recognized as a swiping event.
“A motion input” refers to motion that a user applies to the electronic device 100 to control the electronic device 100. For example, the motion input may include the user's rotating the electronic device 100, the user's titling the electronic device 100, and the user's moving the electronic device 2000 in up, down, left, and right directions. The electronic device 2000 may detect a motion which is predetermined by the user, by using an acceleration sensor, a tilt sensor, a gyro sensor, and a 3-axis magnetic sensor.
Throughout the specification, the “bending input” refers to a user input of bending the entire electronic device 2000 or a portion of the electronic device 2000 to control the electronic device 2000, when the electronic device 100 is a flexible display device. According to an exemplary embodiment, the electronic device 2000 may sense a bending location (a coordinate value), a bending direction, a bending angle, a bending speed, the number of times of bending, an occurrence point in time of a bending operation, a period of time for which the bending operation retains, etc. by using a bending sensor.
Throughout the specification, the term “key input” refers to a user input of controlling the electronic device 2000 by using a physical key attached to the electronic device 2000 or a virtual key provided by the electronic device 2000.
An output interface is configured to output an audio signal, a video signal, or an alarm signal, and may include a display module, a sound input module, etc. Also, the output interface may include a flat display device which may display a two-dimensional image, and a flat display device which may display a three-dimensional image. The output interface may include a device which may output a three-dimensional hologram.
The electronic device 2000 may exchange information with a search server via communication. For example, the electronic device 2000 may communicate with the search server via at least one protocol. For example, the electronic device 2000 may communicate with the search server via at least one protocol selected from a trivial file transfer protocol (TFTP), a simple network management protocol (SNMP), a simple mail transfer protocol (SMTP), a post office protocol (POP), an internet control message protocol (ICMP), a serial line interface protocol (SLIP), a point to point protocol (PPP), a dynamic host control protocol (DHCP), a network basic input output system (NETBIOS), an internetwork packet excharge (IPX/SPX), an internet control manage protocol (ICMP), an Internet protocol (IP), an address resolution protocol (ARP), a transmission control protocol (TCP), a user datagram protocol (UDP), winsock, a dynamic host configuration protocol (DHCP), and a routing information protocol (RIP). However, it is not limited thereto.
The electronic device 2000 may perform near field communication via a near field communication module. The near field communication technology may include wireless LAN (WiFi), Bluetooth, Zigbee, WiFi Direct (WFD), ultra wideband (UWB), infrared data association (IrDA), etc. However, it is not limited thereto.
While not restricted thereto, an exemplary embodiment can be embodied as computer-readable code on a computer-readable recording medium. The computer-readable recording medium is any data storage device that can store data that can be thereafter read by a computer system. Examples of the computer-readable recording medium include read-only memory (ROM), random-access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, and optical data storage devices. The computer-readable recording medium can also be distributed over network-coupled computer systems so that the computer-readable code is stored and executed in a distributed fashion. Also, an exemplary embodiment may be written as a computer program transmitted over a computer-readable transmission medium, such as a carrier wave, and received and implemented in general-use or special-purpose digital computers that execute the programs. Moreover, it is understood that in exemplary embodiments, one or more units of the above-described apparatuses and devices can include circuitry, a processor, a microprocessor, etc., and may execute a computer program stored in a computer-readable medium.
The foregoing exemplary embodiments are merely exemplary and are not to be construed as limiting. The present teaching can be readily applied to other types of apparatuses. Also, the description of the exemplary embodiments is intended to be illustrative, and not to limit the scope of the claims, and many alternatives, modifications, and variations will be apparent to those skilled in the art.
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
10264113, | Jan 10 2014 | ONEPIN, INC | Automated messaging |
6631183, | Mar 19 1998 | WSOU Investments, LLC | Operating mode dependent greeting message |
7124101, | Nov 22 1999 | Accenture Global Services Limited | Asset tracking in a network-based supply chain environment |
7653573, | Dec 17 2004 | Accenture Global Services Limited | Customer messaging service |
8201139, | Apr 23 2004 | Microsoft Technology Licensing, LLC | Semantic framework for natural language programming |
8249627, | Dec 21 2009 | “I am driving/busy” automatic response system for mobile phones | |
8346563, | Apr 10 2012 | ARTIFICIAL SOLUTIONS IBERIA S L | System and methods for delivering advanced natural language interaction applications |
8560400, | Dec 28 2006 | Sprint Communications Company L.P. | Context-based service delivery |
8775526, | Jan 16 2006 | KNAPP INVESTMENT COMPANY LIMITED | Iconic communication |
8849356, | Jul 05 2011 | LG Electronics Inc. | Mobile device displaying instant message and control method of mobile device |
9053097, | May 05 2011 | YAPPN CANADA INC | Cross-language communication between proximate mobile devices |
9100809, | Dec 21 2009 | Automatic response option mobile system for responding to incoming texts or calls or both | |
9154456, | Apr 17 2012 | TRENDA INNOVATIONS, INC | Messaging system and method |
9159034, | Nov 02 2007 | eBay Inc | Geographically localized recommendations in a computing advice facility |
9171066, | Nov 12 2012 | Nuance Communications, Inc. | Distributed natural language understanding and processing using local data sources |
9420437, | Sep 25 2012 | VIVA CAPITAL LLC ; BUSINESS TEXTER INC | Mobile device communication system |
9502025, | Nov 10 2009 | VB Assets, LLC | System and method for providing a natural language content dedication service |
9646260, | Jun 24 2013 | Evi Technologies Limited | Using existing relationships in a knowledge base to identify types of knowledge for addition to the knowledge base |
9716680, | Apr 25 2014 | Expandable graphical icon for response to electronic text transmission | |
20090164914, | |||
20100241713, | |||
20100332218, | |||
20120094698, | |||
20120095862, | |||
20120260211, | |||
20130185081, | |||
20140068467, | |||
20140074879, | |||
20140207806, | |||
20150113435, | |||
20150127724, | |||
20150211866, | |||
CN102868977, | |||
CN103079008, | |||
CN103546362, | |||
KR101290977, | |||
KR1020120005638, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
May 13 2019 | Samsung Electronics Co., Ltd. | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
May 13 2019 | BIG: Entity status set to Undiscounted (note the period is included in the code). |
Date | Maintenance Schedule |
Jan 10 2026 | 4 years fee payment window open |
Jul 10 2026 | 6 months grace period start (w surcharge) |
Jan 10 2027 | patent expiry (for year 4) |
Jan 10 2029 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jan 10 2030 | 8 years fee payment window open |
Jul 10 2030 | 6 months grace period start (w surcharge) |
Jan 10 2031 | patent expiry (for year 8) |
Jan 10 2033 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jan 10 2034 | 12 years fee payment window open |
Jul 10 2034 | 6 months grace period start (w surcharge) |
Jan 10 2035 | patent expiry (for year 12) |
Jan 10 2037 | 2 years to revive unintentionally abandoned end. (for year 12) |