User device estimating activity state of user in home network and control method thereof

A user device is provided to estimate an activity state in a home network. A user device may include a memory configured to store instructions and a processor configured to execute the stored instructions. The processor is configured to obtain context information and control information of at least one external electronic device from the at least one external electronic device; estimate a first activity state of a user using the context information and the control information; and transmit the first activity state to the at least one external electronic device.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This application is based on and claims priority under 35 U.S.C. § 119 to Korean Patent Application No. 10-2019-0000463, filed on Jan. 2, 2019, in the Korean Intellectual Property Office, the disclosure of which is incorporated by reference herein in its entirety.

BACKGROUND

The disclosure relates to a user device estimating activity state of a user in a home network and a control method thereof.

2. Description of Related Art

An increasing number and variety of services with additional functions are being provided through user devices, for example, portable electronic devices including smartphones. To increase the practical value of such electronic devices and to satisfy various user needs, communication service providers and electronic device manufacturers are providing a variety of functions and are competitively developing electronic devices in order to differentiate their services and products from those of other companies. Accordingly, various functions provided through electronic devices are also becoming sophisticated.

SUMMARY

Recently, with the development of home network technology, it is possible to provide a user with various services through a home network. For example, a user may control various electronic devices included in a home network using a user device (e.g., a smartphone). With the development of home network technology, the users of a home network want to receive a greater variety of services through the home network. Accordingly, there is a demand to develop a technology for controlling devices included in a home network in view of a user's utilization of the home network.

According to an embodiment, there is provided a user device including a memory configured to store instructions and a processor configured to execute the stored instructions. The processor is configured to obtain context information and control information of at least one external electronic device from the at least one external electronic device; estimate a first activity state of a user using the context information and the control information; and transmit the first activity state to the at least one external electronic device.

The processor is further configured to, based on power status information of the at least one electronic device, determine the first activity state of the user.

The processor is further configured to estimate preference information using the control information.

The processor is further configured to transmit the preference information to the at least one electronic device.

The processor is further configured to obtain a second activity state from a server, and the second activity state is an activity state estimated based on a family cluster to which the user device belongs.

The processor is further configured to transmit the second activity state to the at least one external electronic device.

The context information may include time information.

According to another embodiment, there is provided a control method of a user device, the control method including: obtaining context information and control information of at least one external electronic device from the at least one external electronic device; estimating a first activity state of a user using the context information and the control information; and transmitting the first activity state to the at least one external electronic device.

The first activity state of the user is determined based on power status information of the at least one external electronic device.

The control method further includes estimating preference information based on the control information.

The control method further includes transmitting the preference information to the at least one external electronic device.

The control method further includes obtaining a second activity state from a server, and the second activity state is an activity state estimated for a family cluster to which the user device belongs.

The control method further includes transmitting the second activity state to the at least one of external electronic device.

The context information may include time information.

According to another embodiment, there is provided a non-transitory computer-readable recording medium storing executable instructions, the executable instructions capable of causing a processor to: obtain context information and control information of at least one external electronic device from the at least one external electronic device; estimate a first activity state of a user using the context information and the control information; and transmit the first activity state to the at least one external electronic device.

The first activity state of the user is determined based on power status information of the at least one external electronic device.

The executable instructions are further capable of causing the processor to estimate preference information using the control information.

The executable instructions are further capable of causing the processor to transmit the preference information to the at least one external electronic device.

The executable instructions are further capable of causing the processor to obtain a second activity state from a server, and the second activity state is an activity state estimated for a family cluster to which the user device belongs.

The executable instructions are further capable of causing the processor to transmit the second activity state to the at least one external electronic device.

Accordingly, it is possible to provide a home network service according to the intent of a user by estimating the current activity of a user using control information of devices forming the home network and by providing a user-preferred function on the basis of the estimated activity of the user.

Furthermore, it is possible to estimate an activity state of a user even in the absence of a particular device (e.g., an oven) in a home network by estimating the activity state on the basis of the activity state of other members similar to the user of the user device.

DETAILED DESCRIPTION

FIGS. 1A to 1Cillustrate block diagrams of an external electronic device, a user device, and a server according to various embodiments.

Referring toFIG. 1A, a home network system10may include at least one of a user device100, an external electronic device110, and a server120. The user device100may include a display102, a memory104, a processor106, and a communication circuit108.

The display102may visually provide information to a user of the user device100. The display102may include touch circuitry configured to detect a touch or sensor circuitry (e.g., a pressure sensor) configured to measure the strength of force generated by the touch.

The memory104may store various data used by at least one component (e.g., the processor106) of the user device100. The data according to various embodiments of the disclosure may include, for example, software (e.g., a program), and input and output data of commands relating to the software. The memory104may include volatile memory or nonvolatile memory.

The processor106may execute, for example, software (e.g., a program) to control at least one other component (e.g., a hardware or software component) of the user device100connected to the processor106, and may perform various types of data processing or arithmetic operations. According to various embodiments of the disclosure, as at least part of the data processing or operations, the processor106may load a command or data received from another component (e.g., the communication circuit108) into the volatile memory, may process the command or data stored in the volatile memory, and may store the resulting data in the nonvolatile memory. The processor106may include a main processor (e.g., a central processing unit or an application processor) and a coprocessor (e.g., a graphics processing unit, an image signal processor, a sensor hub processor, or a communications processor) that is operable independently of or together with the main processor. Additionally or alternatively, the coprocessor may be configured to use lower power than the main processor or to specialize in a designated function. The coprocessor may operate separately from the main processor or as a part thereof. The coprocessor may control at least some of the functions or states associated with at least one component (e.g., the display102) among the components of the user device100. For example, the coprocessor may control some of the functions instead of the main processor when the main processor is in an inactive state (e.g., sleep), or along with the main processor when the main processor is in an active state (e.g., application-running). The coprocessor (e.g., an image signal processor or a communications processor) may be configured as a part of another functionally related component (e.g., the communication circuit108).

The communication circuit108may support establishing a direct (e.g., wired) communication channel or a wireless communication channel between the user device100and the external electronic device110and perform communication through the established communication channel. The communication circuit108may include one or more communication processors that operate independently of the processor106(e.g., an application processor) and support direct (e.g., wired) communication or wireless communication. The communication circuit108may include a wireless communication module (e.g., a cellular communication module, a short-range wireless communication module, or a Global Navigation Satellite System (GNSS) communication module) or a wired communication module (e.g., a Local Area Network (LAN) communication module or a power-line communication module). A communication module may communicate with the external electronic device110or the server120via a first network (e.g., a short-range communication network including a Bluetooth, Wi-Fi direct, or Infrared Data Association (IrDA) network) or a second network (e.g., a long-range communication network including a cellular network, the Internet, or a computer network (e.g., a LAN or WAN)). These various types of communication modules may be integrated into one component (e.g., a single chip) or may be configured as a plurality of separate components (e.g., a plurality of chips).

The external electronic device110may include various home network devices, for example, a TV, a stereo system, a washing machine, an air conditioner, an oven, or the like. The external electronic device110may be connected to the user device100through wired communication or wireless communication.

The server120may be connected to the user device100using wired communication or wireless communication. The server120may store various family profiles and other information associated with family profiles.

Referring toFIG. 1B, the user device100may include an activity state estimation module100aand a preference information estimation module100b. The activity state estimation module100aand the preference information estimation module100bmay be implemented as at least some components of a processor. The activity state estimation module100amay estimate activity state of a user (e.g., waking up or meal preparation) on the basis of context information (e.g., time and place) and control information of the external electronic device110(e.g., on/off information of the external electronic device110). The preference information estimation module100bmay estimate a function or content (e.g., a sport channel) preferred by the user at a particular time (e.g., during a meal time) with respect to the external electronic device110(e.g., TV) using control information of the external electronic device110(e.g., a function being output from the external electronic device110).

The server120may include an absent activity estimation module122. The absent activity estimation module122may form a cluster of family members having similar characteristics and may apply the same estimation model to family members included in the same cluster.

According to another embodiment, referring toFIG. 1C, a preference information estimation module100bmay be included in the external electronic device110. That is, an operation or function of estimating preference information may also be performed by the external electronic device110.

FIG. 2illustrates a schematic diagram of a home network according to an embodiment.

Referring toFIG. 2, a first user device101a(e.g., the user device100ofFIG. 1A) may be connected with a second user device101bthrough wired communication or wireless communication. A plurality of external electronic devices110a-110d(e.g., a first external electronic device110a, a second external electronic device110b, a third external electronic device110c, and a fourth external electronic device110d) may be connected to each of the user devices101aand101bthrough wired communication or wireless communication. Each of the user devices101aand101bmay be connected to a server120through wired communication or wireless communication.

FIGS. 3A and 3Billustrate a method for estimating activity state and preference information of a user according to various embodiments.

Referring toFIG. 3A, in operation302, a first external electronic device110a(e.g., an oven) may receive first control input from a user. The first control input may include input to control a function of the first external electronic device110a. The first control input may include, for example, at least some of input to turn on/off the first external electronic device110a, input to switch a channel output by the first external electronic device110a(e.g., a TV) to a particular channel, or input to change a particular temperature set in the first external electronic device110a(e.g., an air conditioner). The first control input may include information about the time for which a particular function is maintained. For example, the first control input may be configured to control the time for which a particular channel on a TV or a particular temperature of an air conditioner is maintained. In operation304, the first external electronic device110amay transmit first control information to a user device100.

In operation306, a second external electronic device110b(e.g., a TV) may receive second control input from the user. Similar to the first control input, the second control input may include at least some of input to turn on/off the second external electronic device110b, input to switch to a particular channel or input to set a particular temperature, and information about the time for which a particular channel or a particular temperature may be maintained. However, the embodiments described above with respect to the first control input and the second control input are merely examples and are not limited thereto. In operation308, the second external electronic device110bmay transmit second control information to the user device100. Operations302to308may be repeatedly performed over a specified period (e.g., one week or one month) from a particular start time.

In operation310, the user device100may estimate activity state of the user and preference information of the user using the first control information.FIG. 3Aillustrates an embodiment of estimating the activity state and preference information of the user using control information received preferentially in time among pieces of control information transmitted from a plurality of external electronic devices. For example, when it is identified that the on/off state of an external electronic device (e.g., an oven or a refrigerator) is changed, the user device100may identify that the current activity state of the user is a state of “preparing a meal”. As another example, when it is identified that the on/off state of an external electronic device (e.g., a TV) is changed, the user device100may identify that the current activity state of the user is a state of “taking a rest”. In addition, when it is identified that the on/off state of an external electronic device (e.g., a dishwasher) is changed, the user device100may identify that the current activity state of the user is a state of “cleaning”. According to an embodiment, after a predetermined time (e.g., 30 minutes) from the time at which “preparing a meal” is estimated (e.g., when the first control information is received), the user device100may identify that the activity state of the user is a state of “having a meal”. Also, the user device100may determine that a specified time determined by the user has lapsed, and may use an alarm application installed in the user device100to notify the user. Furthermore, when the use of an application installed in the user device100by the user, or the movement of the user device100after a specified time (e.g., three hours) is detected, the user device100may identify that the activity state of the user is a state of “waking up”. When an application is executed by the user, the user device100may identify a current location using a geofence value (e.g., a geofence area) and may identify whether the user (or user device) is located at home or outside using the identified geofence value. The user device100may detect the movement of the user device100or the use of an application, and may identify that the activity state of the user is the state of “taking a rest” when an idle time is a specified time (e.g., 3 hours) or longer. In this case, the user device100may further estimate that the user has been in a resting state for about three hours prior to the current time. The user device100may estimate the activity state and preference information of the user according to the frequency of a particular action of the user or the frequency of a function output from the external electronic device110. In other words, if the frequency of a particular action of the user or the frequency of a function output from the external electronic device110is higher than a specified threshold rate, the activity state and preference information of the user may be identified accordingly. In addition, the user device100may estimate a time at which a particular action of the user (e.g., the state of “preparing a meal”) occurs. For example, the user device100may analyze the first control information collected for a specified period (e.g., one month), and may predict a particular action of the user, for example “preparing a meal” occurs at 7 a.m., based on the rate or frequency at which the state of “preparing a meal” occurs in the collected first control information. More specifically, if the user device100determines that the first control information collected for one month identifies that the frequency at which the user starts preparing a meal at 7 a.m. (including a predetermined error range (e.g., 6:58 a.m.)) is, for example, 80% or higher, then the user device100may predict that the user will start preparing a meal at 7 a.m. on a certain day. The user device100may determine whether the particular action of the user, “preparing a meal”, occurs on the basis of a change in the on/off state of an external electronic device (e.g., an oven or a refrigerator). The user device100may also estimate the time for which the particular action of the user is maintained. For example, when the particular action of the user “preparing a meal” is estimated to have occurred at 7 a.m., the user device100may estimate that the particular action of “preparing a meal” may be maintained for a predetermined time (e.g., 30 minutes). The predetermined time according to various embodiments may vary according to different action taken by the user. For example, the predetermined time may be designated to be 2 hours for the activity state of “taking a rest” and 1 hour for the activity state of “having a meal”. Alternatively, when a different activity state (e.g., an activity state of “going out”) is estimated to start after a particular activity state (e.g., the activity state of “having a meal”) is finished, the user device100may estimate that the start time of the different activity state is the termination time of the particular activity state (i.e., the retention time of the particular activity state).

In operation312, the user device100may estimate activity state of the user and preference information of the user using the second control information. According to various embodiments, when the activity state of the user is currently estimated to be “cooking”, the user device100may identify a function or content executed in the second external electronic device110bduring a time estimated for “cooking”. For example, the user device100may estimate, using the received second information, content (e.g., a sports channel) executed in the second external electronic device110b(e.g., a TV) during the time estimated for “cooking” as the preference information of the user. As another example, the user device100may estimate a function (e.g., a setting temperature of 24 degrees) executed in the second external electronic device110b(e.g., an air conditioner) during the time estimated for “cooking” as the preference information of the user.

In operation314, the user device100may transmit the estimated activity state and the estimated preference information to the first external electronic device110a. In operation316, the user device100may transmit the estimated activity state and the estimated preference information to the second external electronic device110b.

In operation318, the first external electronic device110aand the second external electronic device110bmay store the activity state and the preference information received from the user device100. According to an embodiment, the activity state and the preference information received from the user device100may be stored in a mapping table, as illustrated below, in the first external electronic device110aand the second external electronic device110b. Referring to Table 1 below, context information is described, for example, as time. However, the context information is not limited thereto. The context information may include various pieces of information, such as season information, day information, and date information.

FIG. 3Billustrates an embodiment in which user preference information is estimated by an external electronic device110. In operation320, the external electronic device110may receive first control input. The first control input in operation320may include at least some of input to turn on/off the external electronic device110, input to switch to a particular channel, input to set a particular temperature, and information about the time for which a particular channel or a particular temperature is maintained. In operation322, the external electronic device110may transmit the first control information to a user device100. In operation324, the user device100may estimate the activity state of the user. In operation326, the user device100may transmit the estimated activity state to the external electronic device110. In operation328, the external electronic device110may store the estimated activity state received from the user device100.

In operation330, the external electronic device110according to an embodiment may receive second control input. According to various embodiments of the disclosure, the second control input in operation330may refer to input that the external electronic device receives after receiving the first control input or simultaneously with the first control input. According to various embodiments of the disclosure, the second control information in operation330, like the first control information, may include at least some of input to turn on/off the external electronic device110, input to switch to a particular channel, input to set a particular temperature, and information about the time for which a particular channel or a particular temperature is maintained. According to an embodiment, operation330may be performed for a specified period (e.g., one week or one month).

In operation332, the external electronic device110according to an embodiment may estimate preference information of a user according to the received estimated activity state of the user and the second control input. For a method for estimating the preference information, the method as described above in operation312may be applied. In operation334, the external electronic device110may store the estimated preference information.

FIG. 3Cshows a schematic diagram illustrating a method for estimating the activity state of a user from control information of an external electronic device according to an embodiment.

Referring toFIG. 3C, a user device100may obtain or collect control information340from at least one external electronic device110(e.g., a TV, an air purifier, or an air conditioner) for a predetermined period (e.g., one week). The user device100may estimate the activity state of a user using the control information obtained from the at least one external electronic device. The estimated activity state350may include at least one activity state of the user (e.g., a wake-up state, a resting state, a state of preparing a meal, or a state of having a meal). Here, for example, an activity model of the user may include a list of activity states in which the activity states regularly occur during a certain time period. The activity models, derived based on past information on various activity states of the user, make it possible to predict the next activity state of the user.

FIGS. 3D and 3Eshow flowcharts illustrating a method for estimating the activity state of a user when control information is received from a plurality of external electronic devices according to various embodiments.

Referring toFIG. 3D, in operation362, a user device (e.g., the user device100ofFIG. 1A) may obtain first control information from a first external electronic device. According to various embodiments of the disclosure, the first control information in operation362may include one or more inputs to turn on/off an external electronic device (e.g., the external electronic device110ofFIG. 1A), switch to a particular channel, set a particular temperature, and information about a period for which a particular channel or a particular temperature is maintained. According to various embodiments of the disclosure, operation362may be repeatedly performed for a specified period (e.g., one week or one month).

In operation364, the user device (e.g., the user device100ofFIG. 1A) may obtain second control information from a second external electronic device. According to various embodiments of the disclosure, second control information in operation364may include one or more inputs to turn on/off an external electronic device (e.g., the external electronic device110ofFIG. 1A), switch to a particular channel, set a particular temperature, and information about a period for which a particular channel or a particular temperature is maintained. According to various embodiments of the disclosure, operation364may be repeatedly performed for a specified period (e.g., one week or one month).

In operation366, the user device may identify whether the first control information is obtained prior to the second control information in terms of time.

When the first control information is obtained prior to the second control information in terms of time (“Yes” in operation366), the user device may estimate the activity state of the user using the first control information in operation368. For example, when the first control information is an oven power state change (e.g., from off to on) and the second control information is a TV power state change (e.g., from off to on), the user device100may estimate that the activity state of the user is a state of “cooking”. When the second control information is obtained prior to the first control information in terms of time (“No” in operation366), the user device may estimate the activity state of the user using the second control information in operation370. For example, when the first control information is an oven power state change (e.g., from off to on) and the second control information is a TV power state change (e.g., from off to on), the user device100may estimate that the activity state of the user is a state of “taking a rest”.

Referring toFIG. 3E, in operation372, a user device (e.g., the user device100ofFIG. 1A) according to an embodiment may obtain first control information from a first external electronic device. According to various embodiments, the first control information in operation372may include at least one or more inputs to turn on/off an external electronic device (e.g., the external electronic device110ofFIG. 1A), switch to a particular channel, set a particular temperature, and information about a period for which a particular channel or a particular temperature is maintained. According to various embodiments of the disclosure, operation372may be repeatedly performed for a specified period (e.g., one week or one month).

In operation374, the user device may obtain second control information from a second external electronic device. According to various embodiments of the disclosure, the second control information in operation374may include at least one or more inputs to turn on/off an external electronic device, switch to a particular channel, set a particular temperature, and information about a period for which a particular channel or a particular temperature is maintained. According to various embodiments of the disclosure, operation374may be repeatedly performed for a specified period (e.g., one week or one month).

In operation376, the user device may identify whether the first control information has a higher priority than the second control information.

When the first control information has a higher priority than the second control information in terms of time (“Yes” in operation376), the user device may estimate the activity state of a user using the first control information in operation378. A priority according to the various embodiments of the disclosure may be predetermined based on the type of an external electronic device. For example, an oven may have a higher priority than a TV, and the TV may have a higher priority than an air conditioner. Here, the priority may be determined based on the user's input, the user's historical usage of external electronic devices or activities carried by the user in each external electronic device. Specifically, when the first control information is an oven power state change (e.g., from off to on) and the second control information is a TV power state change (e.g., from off to on), even though the first control information is obtained prior to the second control information in terms of time, the user device100may estimate that the activity state of the user is a state of “cooking” according to the priorities of the external electronic devices. Alternatively, when the second control information has a higher priority than the first control information (“No” in operation376), the user device may estimate the activity state of the user using the second control information in operation380. According to the various embodiments of the disclosure, when the first control information is an oven power state change (e.g., from off to on) and the second control information is a TV power state change (e.g., from off to on), the user device100may estimate that the activity state of the user is a state of “taking a rest” according to the priorities of the external electronic devices.

FIGS. 3F and 3Gillustrate a user interface that is displayed while a user device100obtains control information from various electronic devices forming a home network according to an embodiment.

Referring toFIG. 3F, a user device100may display an interface392for receiving user input to obtain control information of an external electronic device (e.g., the external electronic device110ofFIG. 1) for a specified period on a display102. Referring toFIG. 3G, when receiving user input to obtain control information of an external electronic device (e.g., the external electronic device110ofFIG. 1) for a specified period, a user device100may display a notification message394indicating that information about a device connected to the user device is collected for a specified period on the display102.

FIGS. 4A and 4Billustrate a method in which a user device100estimates preference information of a user and transmits the estimated preference information to an external electronic device to output a function preferred by the user according to various embodiments.

Referring toFIG. 4A, in operation400, a first external electronic device110aaccording to various embodiments may receive control input to control the first external electronic device110a(e.g., an oven) from a user. The control input in operation400may include at least one or more inputs to turn on/off the external electronic device110a, switch to a particular channel, set a particular temperature, as well as information about a period for which a particular channel or a particular temperature is maintained.

In operation405, the first external electronic device110amay transmit information about the state in which the first external electronic device110ais controlled (e.g., information about a change in the on/off state of the first external electronic device110a, information about currently output content, information about a currently set temperature, and/or information about currently output music) to a user device100according to the control input in operation400.

In operation410, the user device100may identify context information. The context information according to various embodiments may include time information, weather information, season information, and day information at the time of estimating the activity state of the user.

In operation415, the user device100may estimate the activity state of the user on the basis of control information (e.g., on/off information) and the context information (e.g., time information). For example, when the time at which the activity state of the user is estimated (e.g., when the control information is received in operation405) is 7 a.m. (e.g., learned time) and the control information is an oven power state change (e.g., from off to on), the user device100may identify that the activity state of the user is a state of preparing a meal. When the control information is an oven power state change (e.g., from off to on) but the time at which the activity state of the user is estimated (e.g., when the control information is received in operation405) is, for example, 3 a.m., the user device100may identify that the activity state of the user is not a state of preparing a meal.

In operation420, the user device100may transmit information about the estimated activity state to a second external electronic device110b(e.g., a TV). The second external electronic device110bmay store the information about the activity state received in operation420. According to various embodiments, the information about the activity state may be stored in a mapping table, as illustrated in Table 1 above.

In operation425, the second external electronic device110bmay receive control input to control the second external electronic device110b(e.g., to turn on the second electronic device110b) from the user. Upon receiving the control input to control the second external electronic device110b(e.g., to turn on the second electronic device110b) from the user, the second external electronic device110bmay output a preferred function (e.g., output a sports channel) at the time at which the control input is received, the information about the activity state received from the user device100, and information (e.g., a mapping table) about a relationship between an activity state and preference information pre-stored in the second external electronic device110bin operation430.

Referring toFIG. 4B, in operation435, a first external electronic device110amay receive control input to control the first external electronic device110a(e.g., an oven) from a user. For example, the control input in operation435may include one of more inputs to turn on/off the external electronic device110a, switch to a particular channel, set a particular temperature, and information about a period for which a particular channel or a particular temperature is maintained.

In operation440, the first external electronic device110amay transmit information about the state in which the first external electronic device110ais controlled (e.g., information about a change in the on/off state of the first external electronic device110a, information about currently output content, information about a currently set temperature, and/or information about currently output music) to a user device100according to the control input in operation435.

In operation445, the user device100may identify context information. The context information may include time information, weather information, season information, and day information at the time of estimating the activity state of the user. However, the context information is not limited hereto, and may include other information related to estimating the activity state of the user.

In operation450, the user device100may estimate the activity state of the user on the basis of control information (e.g., on/off information) and the context information (e.g., time information). For example, when the time at which the activity state of the user is estimated (e.g., when the control information is received in operation440) is 7 a.m. (e.g., learned time) and the control information is an oven power state change (e.g., from off to on), the user device100may identify that the activity state of the user is a state of preparing a meal. When the control information is an oven power state change (e.g., from off to on) but the time at which the activity state of the user is estimated (e.g., when the control information is received in operation440) is 3 a.m., the user device100may identify that the activity state of the user is not a state of preparing a meal.

In operation455, the user device100may transmit information about the estimated activity state to a second external electronic device110b(e.g., a TV). The second external electronic device110bmay store the information about the activity state received in operation455. According to various embodiments, the information about the activity state may be stored in a mapping table, as illustrated in Table 1 above.

In operation460, the second external electronic device110bmay output a preferred function (e.g., output a sports channel) using the information about the activity state received from the user device100and information (e.g., a mapping table) about a relationship between an activity state and preference information pre-stored in the second external electronic device110b.

FIG. 5Aillustrates a flowchart of an operation in which a user device estimates the activity state of a user on the basis of current time information according to an embodiment.FIG. 5Billustrates a user interface displaying an error message according to an embodiment.

Referring toFIG. 5A, in operation500, a user device (e.g., the user device100ofFIG. 1A) according to various embodiments may obtain control information. The control information may include information about input to turn on/off an external electronic device (e.g., the external electronic device110ofFIG. 1A), information about input to switch to a particular channel, information about input to set a particular temperature, as well as information about a period for which a particular channel or a particular temperature is maintained.

In operation505, the user device may identify information about the time at which the control information is obtained.

In operation510, the user device may identify whether the time information about the time at which the control information is obtained corresponds to a learned time (e.g., 7 a.m.).

When the time information about the time at which the control information is obtained is the learned time (e.g., 7 a.m.) (“Yes” in operation510), the user device may estimate the activity state of a user in operation515. When the time information about the time at which the control information is obtained is not the learned time (e.g., 7 a.m.) (“No” in operation510), the user device may display an estimation error message530on a display102of the user device100in operation520, as illustrated inFIG. 5B.

FIG. 6illustrates a flowchart of an operation in which a server120identifies a family among a plurality of user devices according to an embodiment.

Referring toFIG. 6, in operation600, a server (e.g., the server120ofFIG. 1A) according to various embodiments may obtain registration information about an external electronic device from a plurality of user devices. Here, “registration” according to various embodiments may mean that, for example, a particular external electronic device (e.g., a TV) is stored in a user device100as a device forming a home network. That is, a registered device may mean a device registered to a home network. The registration information may be stored in the server120.

In operation610, the server (e.g., the server120ofFIG. 1A) may identify whether a plurality of user devices (e.g., a first user device and a second user device) are registered to an external electronic device.

In operation620, the server may identify that users of the plurality of user devices are family members on the basis of the result of the identification in operation610. According to an embodiment, when the plurality of user devices are registered to one external electronic device, the first user device and the second user device may be identified as family devices.

FIGS. 7A and 7Billustrate schematic diagrams of a family profile used to identify similar family characteristics according to various embodiments.

Referring toFIG. 7A, a family profile730may include a family identification (ID) field731, a device field732, a member field733, a country field734, and a city field735.

The family identification (ID) field731may store a specific value assigned by a server (e.g., the server120ofFIG. 1A).

The device field732may include a device identification field732a, a type field732b, and a model field732c. The device identification field732amay store a unique value assigned by a device (e.g., the user device100). The type field732bmay store information about a device type (e.g., a TV, an oven, or an air conditioner). The model field732cmay store information about the model number of a device.

The member field733may include a member identification field733a, a gender field733b, a birthday field733c, an age field733d, a children number field733e, a leave time field733f, a return time field733g, a wake-up time field733h, a rest time field733i, and a role field733j. The member identification field733amay store a unique value assigned by the user device100or the server120. The gender field733bmay store information about the gender of a user. The birthday field733cmay store information about the birthday of the user. The age field733dmay store information about the age of the user. The children number field733emay store information about the number of children of the user. The leave time field733fmay store information about the estimated leave time of the user. The return time field733gmay store information about the estimated return time of the user. The wake-up time field733hmay store information about the estimated wake-up time of the user. The rest time field733imay store information about the estimated rest time of the user. The role field733jmay store information about the role (e.g., an office worker or a housewife) of the user determined on the basis of the estimated leave time and the estimated return time of the user. The pieces of information respectively stored in the gender field733b, the birthday field733c, the age field733d, and the children number field733emay be obtained from account information (e.g., login information or information input to join a home network service) of the user stored in the server120or the user device100. The pieces of information respectively stored in the leave time field733f, the return time field733g, the wake-up time field733h, the rest time field733i, and the role field733jmay be values estimated by an estimation method according to various embodiments. According to various embodiments, a field for storing information about the number of family members (e.g., two-person family) may be further included.

Referring toFIG. 7B, a server (e.g., the server120ofFIG. 1A) according to various embodiments may categorize at least one device according to family. The server120may categorize a plurality of devices (i.e., a plurality of users) into one family (e.g., family A712or family B714) according to the method described with reference toFIG. 6. The server120may group (or cluster) similar families using information stored in family profiles. The server120may group similar families using at least some information included in the family profiles. For example, families having the same number of family members and the leave time and the return time of each member within a predetermined error range may be grouped as similar families.FIG. 7Billustrates an example in which the server120groups family A712and family B714having the same number of members, which is 2, and having the estimated leave time and the estimated return time of a particular user within a predetermined error range as a similar family group (e.g., cluster X710). Further,FIG. 7Balso illustrates an example in which family C722is different from the families included in cluster X719in terms of the number of family members, the estimated leave time, and the estimated return time, and is thus grouped as a family group (e.g., cluster Y720) different from cluster X719.

FIG. 7Cillustrates a flowchart showing an example of applying same activity model to families included in same family cluster according to an embodiment.FIG. 7Dillustrates a schematic diagram identifying family clusters and applying same activity model based on family characteristics according to an embodiment.

Referring toFIG. 7C, in operation740, a server (e.g., the server120ofFIG. 1A) according to various embodiments may identify a characteristic of family. The characteristic of the family may be identified by the family profile illustrated inFIG. 7AandFIG. 7B.

In operation745, the server may cluster (e.g., group) families having similar family characteristics.

In operation750, the server may apply the same activity model to families included in the same cluster. The activity model may include a list of estimated activity states (e.g., waking up, preparing a meal, having a meal, going to work) according to various embodiments.

In operation755, the server may transmit information about the applied activity model to a user device (e.g., a user device of a member of family B).

Referring toFIG. 7D, a server may include the absent activity estimation module122. The server may identify cluster X710and cluster Y720stored in the server (e.g., the server120ofFIG. 1A). Cluster X710may include family A712and family B714. Cluster Y720may include family C722. An activity model760of family A may include a model, for example, in the order of waking up, preparing a meal, having a meal, and then going to work. The absent activity estimation module122may apply the activity model760of family A to family B714, belonging to the same cluster. Accordingly, even in family B, having no specific external electronic device (e.g., oven), an activity state of “preparing a meal” may be inferred.

FIG. 8illustrates an example method according to an embodiment.

Referring toFIG. 8, a user device100may obtain context information and control information of an external electronic device. The user device100may receive an assumed activity model (e.g., waking up, preparing a meal, having a meal, going to work) from a server120. The user device100may transmit, on the basis of the assumed activity model, information about an inferred different activity state (e.g., preparing a meal) to a plurality of external electronic devices (e.g., external electronic devices110aand110b) after a particular activity state (e.g., waking up) is finished. When receiving control input (e.g., to change the state of an external electronic device to be turned on) from a user, the plurality of external electronic devices may output a preferred function or preferred content (e.g., a sports channel) using an activity state and information about a preferred function (e.g., turning on a TV).

It should be appreciated that various embodiments and the terms used herein are not intended to limit the features set forth herein to particular embodiments. The various embodiments described herein may include various changes, equivalents, or replacements that may be rendered by those ordinary skilled in the art. In the drawings, similar reference numerals may be used to refer to similar or related elements. It is to be understood that a singular form corresponding to an item may also include a plural form, unless the relevant context clearly indicates otherwise. As used herein, phrases such as “A or B,” “at least one of A and B,” “at least one of A or B,” “A, B, or C,” “at least one of A, B, and C,” and “at least one of A, B, or C,” may include all possible combinations of the items enumerated together in a corresponding one of the phrases. As used herein, terms such as “1st” and “2nd,” or “first” and “second” may be used to simply distinguish a corresponding component from another, and does not limit the components in other aspect (e.g., importance or order). It is to be understood that if an element (e.g., a first element) is referred to, with or without the term “operatively” or “communicatively”, as “coupled with,” or “connected with,”, it means that the element may be coupled with the other element directly (e.g., wiredly), wirelessly, or via a third element.

Various embodiments may be implemented as software including one or more instructions stored on a storage medium readable by a machine (e.g., the user device100). For example, a processor of the machine may invoke and execute at least one of the one or more stored instructions from the storage medium. This may allow the machine to be operated to perform at least one function according to the invoked at least one instruction. The one or more instructions may include a code generated by a compiler or a code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Wherein, the term “non-transitory” simply means that the storage medium is a tangible device, and does not include a signal (e.g., an electromagnetic wave), but this term does not differentiate between where data is semi-permanently stored in the storage medium and where the data is temporarily stored in the storage medium.