Patent Publication Number: US-2023153762-A1

Title: Information providing method

Description:
CROSS REFERENCE TO RELATED APPLICATIONS 
     This is a continuation application of PCT International Application No. PCT/JP2019/038856 filed on Oct. 2, 2019, designating the United States of America, which is based on and claims priority of U.S. Provisional Patent Application No. 62/739,921 filed on Oct. 2, 2018, U.S. Provisional Patent Application No. 62/739,928 filed on Oct. 2, 2018, U.S. Provisional Patent Application No. 62/739,935 filed on Oct. 2, 2018, and U.S. Provisional Patent Application No. 62/740,058 filed on Oct. 2, 2018. The entire disclosures of the above-identified applications, including the specifications, drawings, and claims are incorporated herein by reference in their entirety. 
    
    
     FIELD 
     The present disclosure relates to an information providing method. 
     BACKGROUND 
     In recent years it has become possible to collect a large amount of sensor data from sensors placed in various places, and thus there is a demand to effectively use the collected sensor data, For example, if sensor data from various sensors placed in an indoor space such as a house is used, it is possible to provide services suitable to the user&#39;s situation (for example, see Japanese Patent Application Publication No. 2018-32272). 
     SUMMARY 
     Technical Problem 
     However, with the conventional art, there is little information that is related to how to use the sensor data, and it is therefore difficult to effectively use the sensor data for providing services. 
     The present disclosure provides, for example, an information providing method that can effectively use sensor data for providing services. 
     Solutions to Problem 
     An information providing method according to one aspect of the present disclosure is a method that uses a first information processing apparatus which includes a processor and memory. A sensor is disposed in a home. The processor: obtains preference information of a user; obtains a broadcast start time of a program related to the preference information of the user; obtains food preparation information of the user via the sensor; when (i) an amount of time from a current time to the broadcast start time is a threshold amount of time or less and (ii) the food preparation information of the user indicates that the user is about to start preparing food, generates first information indicating that the broadcast start time of the program is approaching but the user is about to start preparing food; obtains, from a second information processing apparatus connected to the first information processing apparatus, information indicating first request content over a network; and when content of the first information is included in the first request content, outputs, to the second information processing apparatus, second information including information for identifying the user or the home, using the first information generated. 
     An information providing method according to one aspect of the present disclosure is a method that uses a first information processing apparatus which includes a processor and memory. A sensor is disposed in a space. The processor: obtains event schedule information for an event in the space; obtains an amount of goods procured for the event in the space; obtains, via the sensor, a number of attendees in the space in a given span of time; when (iii) the event schedule information indicates that a current day is a day the event is to be held and (iv) the amount of goods procured for the number of the attendees in the space is less than a required amount, generates first information indicating that there is a shortage of the goods for the event; obtains, from a second information processing apparatus connected to the first information processing apparatus, information indicating first request content over a network; and when the first information is included in the first request content, outputs, to the second information processing apparatus, second information including information for identifying a user or the space, using the first information. 
     An information providing method according to one aspect of the present disclosure is a method that uses a first information processing apparatus which includes a processor and memory. An electronic device and a sensor are disposed in a space. The processor: obtains, from the memory, presence information indicating whether a user was present in the space in a past given span of time; obtains a status of the electronic device; when (v) the presence information includes an absent period of a threshold length or longer in which the user is not present in the space and (vi) use of the electronic device is started after the absent period, generates first information indicating that the user is present in the space after a long absence; obtains, from a second information processing apparatus connected to the first information processing apparatus, information indicating first request content over a network; and when content of the first information is included in the first request content, outputs, to the second information processing apparatus, second information including information for identifying the user or the space, using the first information generated. 
     An information providing method according to one aspect of the present disclosure is a method that uses a first information processing apparatus which includes a processor and memory. A sensor is disposed in a space including a sleeping space. The processor: obtains, from the memory, statistical information derived from past bedtimes of a user; obtains, from the memory, astronomical information indicating an astronomical event and a period of the astronomical event; obtains movement information of the user via the sensor; obtains, from the memory, weather information corresponding to a location of the space; when (vii) an amount of time from a current time until the bedtime is a threshold amount of time or less, (viii) the movement information of the user indicates that the user has moved to the sleeping space, (ix) a current date and time is included in a period indicated in the astronomical information; and (x) the weather information indicates weather that allows for viewing of the astronomical event, generates first information indicating that the user is capable of viewing the astronomical event before sleeping; obtains, from a second information processing apparatus connected to the first information processing apparatus, information indicating first request content over a network; and when content of the first information is included in the first request content, outputs, to the second information processing apparatus, second information including information for identifying the user or the space, using the first information generated. 
     General and specific aspect(s) disclosed above may be implemented using a system, an apparatus, an integrated circuit, a computer program, or a computer-readable recording medium such as a CD-ROM, or any combination thereof. 
     Additional benefits and advantages of the disclosed embodiments will be apparent from the Specification and Drawings. The benefits and/or advantages may be individually obtained by the various embodiments and features of the Specification and Drawings, which need not all be provided in order to obtain one or more of such benefits and/or advantages. 
     Advantageous Effects 
     The information providing method according to one aspect of the present disclosure can effectively use sensor data for providing services. 
    
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
       These and other advantages and features will become apparent from the following description thereof taken in conjunction with the accompanying Drawings, by way of non-limiting examples of embodiments disclosed herein. 
         FIG.  1    illustrates an overview of the service providing system according to Embodiment 1. 
         FIG.  2    illustrates the configuration of the service providing system according to Embodiment 1. 
         FIG.  3    illustrates the functional configurations of the first information processing apparatus and the second information processing apparatus according to Embodiment 1. 
         FIG.  4    is a sequence diagram for the service providing system according to Embodiment 1. 
         FIG.  5    is a flow chart illustrating processes performed by the first information processing apparatus according to Embodiment 1. 
         FIG.  6    is a flow chart illustrating one example of the determination process for the first condition according to Embodiment 1. 
         FIG.  7    illustrates one example of the history of programs the user has tuned into in the past according to Embodiment 1. 
         FIG.  8    is a flow chart illustrating one example of the determination process for the first condition according to Embodiment 2. 
         FIG.  9    is a flow chart illustrating one example of the determination process for the first condition according to Embodiment 3. 
         FIG.  10    illustrates one example of the presence information for the user according to Embodiment 3. 
         FIG.  11    is a flow chart illustrating one example of the determination process for the first condition according to Embodiment 4. 
         FIG.  12    illustrates one example of daily user bedtimes according to Embodiment 4. 
         FIG.  13    illustrates one example of the astronomical information according to Embodiment 4. 
         FIG.  14    illustrates one example of the astronomical information according to Embodiment 4. 
         FIG.  15    is a sequence diagram for the service providing system according to Variation 1. 
         FIG.  16    is a sequence diagram for the service providing system according to Variation 2. 
         FIG.  17    is a flow chart illustrating one example of the process for generating the second information according to Variation 3. 
         FIG.  18 A  illustrates one example of relationships between services and the five senses according to Variation 3. 
         FIG.  18 B  illustrates one example of relationships between devices and the five senses according to Variation 3. 
         FIG.  19    is a flow chart illustrating one example of the process for generating the second information according to Variation 4. 
         FIG.  20    illustrates one example of the service provision history according to Variation 4. 
         FIG.  21 A  illustrates one example of service provision availability information according to Variation 4. 
         FIG.  21 B  illustrates one example of information indicating services that are prohibited from being provided simultaneously according to Variation 4. 
         FIG.  21 C  illustrates one example of information indicating services that are prohibited from being changed according to Variation 4. 
         FIG.  22    is a flow chart illustrating one example of the process for outputting the second information according to Variation 5. 
         FIG.  23 A  illustrates an overview of the service providing system. 
         FIG.  23 B  illustrates one example of the data center operating company. 
         FIG.  23 C  illustrates one example of the data center operating company. 
         FIG.  24    illustrates service type 1 (in-company data center). 
         FIG.  25    illustrates service type 2 (IaaS). 
         FIG.  26    illustrates service type 3 (PaaS). 
         FIG.  27    illustrates service type 4 (SaaS). 
     
    
    
     DESCRIPTION OF EMBODIMENTS 
     Hereinafter, embodiments are specifically described with reference to the drawings. 
     Each of the following embodiments describes a general or specific example. The numerical values, shapes, materials, elements, the arrangement and connection of the elements, steps, order of the steps, etc., shown in the following embodiments are mere examples, and therefore do not limit the scope of the claims. 
     The figures are not necessarily precise illustrations. In the figures, elements that are essentially the same share like reference signs. Accordingly, duplicate description thereof is omitted or simplified. 
     Embodiment 1 
     Overview of Service Providing System  10   
     First, an overview of service providing system  10  will be described with reference to  FIG.  1   .  FIG.  1    illustrates an overview of service providing system  10  according to Embodiment 1. 
     In service providing system  10  according to the present embodiment, sensor data from a plurality of indoor spaces is collected by a cloud server. Examples of an indoor space include a home, an office, a building, and the inside of a vehicle. Sensor data is data based on usual activity and/or unusual activity of a user in an indoor space. 
     Via an application programming interface (API), each of a plurality of service providers is capable of obtaining various information based on sensor data collected by the cloud server. An API is an information processing function of a cloud server that can be called from a computer and used. 
     Each service provider provides a service to a user based on information obtained via the API. Examples of services include an information providing service, an advertisement delivery service, a service for automated control of devices on a home network, or any combination thereof. Note that the service is not limited to these examples. For example, the service may be a product delivery service. 
     Configuration of Service Providing System  10   
     Next, the configuration of service providing system  10  will be described with reference to  FIG.  2   .  FIG.  2    illustrates a configuration of service providing system  10  according to Embodiment 1. As illustrated in  FIG.  2   , service providing system  10  according to the present embodiment includes first information processing apparatus  100 , second information processing apparatus  200 , sensor group  300 , and device group  400 . 
     Sensor group  300  is disposed in space  20 , and includes at least one sensor. Sensor group  300  is connected to a communications network such as the Internet via gateway  500 . Note that gateway  500  is optional; sensor group  300  may be connected to a communications network without passing through gateway  500 . 
     Sensor group  300  outputs a sensor value indicating, for example, movement information related to a movement of a user or information related to activity/user operation of device group  400 . For example, sensor group  300  can output a sensor value indicating whether a luminaire is emitting light, a sensor value indicating whether an audio device is outputting sound, a sensor value indicating whether a user is present in space  20  or a predefined region of space  20 , or any combination thereof. 
     Sensor group  300  can include, for example, a motion sensor, a door sensor, a sound sensor, or any combination thereof. Such sensors included in sensor group  300  can be realized as, for example, an image sensor, an infrared sensor, an ultrasound sensor, a visible light sensor, a vibration sensor, a touch sensor, a microphone, or any combination thereof. Such sensors can be provided on a wall, floor, or ceiling that defines space  20 , or on an electronic device or furniture disposed in space  20 . Moreover, the sensors may be provided in devices included in device group  400 . For example, one sensor may be a touch sensor provided in the touch screen of a smartphone or the like. Note that the sensors are not limited to the above examples. 
     Device group  400  is disposed in space  20 , and includes at least one electronic device, Device group  400  is connected to a communications network such as the internee via gateway  500 . Note that gateway  500  is optional; device group  400  may be connected to a communications network without passing through gateway  500 . 
     Device group  400  can include, for example, a display panel, a luminaire, an audio device, a refrigerator, a vacuum cleaner, or any combination thereof. Note that the one or more devices included in device group  400  are not limited to these examples. 
     First information processing apparatus  100  is disposed outside of space  20  and includes a processor and memory. For example, first information processing apparatus  100  corresponds to the cloud server illustrated in  FIG.  1   . Note that first information processing apparatus  100  may be an edge server disposed in space  20 . 
     Note that a cloud server refers to a server that is provided over the internet. An edge server refers to a server that is provided over a network in an area closer to the user than the internet is (such as a local area network (LAN)). 
     Second information processing apparatus  200  includes a processor and memory. For example, second information processing apparatus  200  is the service provider illustrated in  FIG.  1   . Second information processing apparatus  200  provides a service to a user via device group  400  in space  20 . 
     This example assumes that service providing system  10  illustrated in  FIG.  2    is provided in each of a plurality of indoor spaces. More specifically, first information processing apparatus  100  is provided for each of a plurality of indoor spaces, and a plurality of second information processing apparatuses  200  are connected to each first information processing apparatus  100  to provide services to each indoor space. Here, the aim is to provide of a variety of information regarding users or spaces  20  from the plurality of first information processing apparatuses  100 , and to provide a variety of services using the plurality of second information processing apparatuses  200 , by providing a plurality of first information processing apparatuses  100  and a plurality of second information processing apparatuses  200  individual of one another. However, new information is exchanged between the plurality of first information processing apparatuses  100  and the plurality of second information processing apparatuses  200 . The present embodiment provides a system which effectively uses sensor data and provides appropriate services, by defining the exchange of such information. 
     Functional Configuration of First Information Processing Apparatus  100   
     Next, the functional configuration of first information processing apparatus  100  will be described with reference to  FIG.  3   .  FIG.  3    illustrates the functional configurations of first information processing apparatus  100  and second information processing apparatus  200  according to Embodiment 1. 
     As illustrated in  FIG.  3   , first information processing apparatus  100  according to the present embodiment includes sensor data obtainer  101 , first memory  103 , determiner  104 , second memory  105 , first information generator  106 , third memory  107 , second information generator  108 , and inputter/outputter  109 . Next, the functional blocks of first information processing apparatus  100  will be described. 
     Sensor data obtainer  101  obtains first sensor data including a first sensor value from sensor group  300 . Part or all of first sensor data is stored in first memory  103 . First sensor data may include data indicating whether a person is present in a given region in space  20 , for example. First sensor data may include data indicating a state of sound output of an audio device, for example. First sensor data may include data indicating an operation state of a device. First sensor data may include data indicating whether a door of a refrigerator is open or closed. 
     First memory  103  stores part or all of the first sensor data obtained by sensor data obtainer  101 . 
     Determiner  104  determines whether a first condition is satisfied or not. The first condition will be described in greater detail later. 
     Second memory  105  stores information for generating the first information, For example, second memory  105  stores a correspondence table in which content of the generated information is associated with mutually different conditions. 
     First information generator  106  generates first information when the first condition is satisfied. In the present embodiment, the first information indicates that the broadcast start time of a program is approaching but the user is about to start preparing food, but the first information is not limited to this example. 
     Third memory  107  stores information for generating second information. In other words, third memory  107  stores information for identifying the user or space  20  corresponding to the first information generated by first information generator  106 . 
     Second information generator  108  determines whether content of the first information is included in first request content included in information obtained from second information processing apparatus  200  via inputter/outputter  109 . When content of the first information is included in the first request content, second information generator  108  generates the second information using the first information. The second information includes information for identifying the user or space  20  (for example, a user ID, a home address, an IP address, device identification information, etc.), For example, second information generator  108  generates the second information by reading, from third memory  107 , information for identifying the user or space  20  corresponding to the first information generated by first information generator  106 . Here, the second information may be information required for providing a service to the user or space  20 . When content of the service to be provided is included in the first request, the second information corresponding to the content of the service may be provided. In a case in which the service is to be provided using a communications environment, one example of the second information is an IP address. In a case in which the service to be provided is for controlling a device, one example of the second information is device identification information. In a case in which the service to be provided is for controlling a device using a communications environment, one example of second information may be a combination of an IP address and device identification information. 
     Inputter/outputter  109  obtains information indicating the first request content (hereinafter “first request information”) from second information processing apparatus  200  connected to first information processing apparatus  100  over a network. Inputter/outputter  109  further outputs the second information generated by second information generator  108  to second information processing apparatus  200 . 
     Note that determiner  104 , first information generator  106 , and second information generator  108  described above are realized as, for example, a processor and memory. When an instruction or a software program that is stored in the memory is executed, the processor functions as determiner  104 , first information generator  106 , and second information generator  108 . Determiner  104 , first information generator  106 , and second information generator  108  may be realized as dedicated electronic circuitry. 
     First memory  103 , second memory  105 , and third memory  107  described above are realized as, for example, semiconductor memory and/or a disk drive or the like. Inputter/outputter  109  is realized as, for example, a network interface controller (NIC) or the like. 
     Functional Configuration of Second Information Processing Apparatus  200   
     Next, the functional configuration of second information processing apparatus  200  will be described with reference to  FIG.  3   . 
     As illustrated in  FIG.  3   , second information processing apparatus  200  according to the present embodiment includes fourth memory  201 , request generator  202 , inputter/outputter  203 , fifth memory  204 , service generator  205 , and outputter  206 . Next, the functional blocks of second information processing apparatus  200  will be described. 
     Fourth memory  201  stores information for generating the first request information. 
     Request generator  202  generates the first request information. More specifically, request generator  202  references information stored in fourth memory  201  to generate the first request information indicating the first request content. 
     The first request content indicates requirements that a user or space to which a given service is provided should meet. In the present embodiment, the first request content indicates a requirement that the broadcast start time of a program is approaching but the user is about to start preparing food, but the first request content is not limited to this example. 
     Inputter/outputter  203  outputs the first request information generated by request generator  202  to first information processing apparatus  100 . Inputter/outputter  203  further obtains the second information from first information processing apparatus  100 . 
     Fifth memory  204  stores information for generating service information. For example, fifth memory  204  stores a correspondence table in which service content is associated with mutually different request content. 
     Service generator  205  generates first service information using the second information. The first service information is information for providing a service to the user in space  20  via device group  400 . 
     In the present embodiment, the first service information is, for example, control information for causing a display panel to display a recipe for a meal that can be prepared by the program broadcast start time. Moreover, for example, when the user is using a portable terminal, information related to the program may be provided to the portable terminal being used by the user as the first service information. Thereafter, a button to start watching the program may be displayed on the portable terminal being used by the user. Note that the first service information is not limited to the above examples. 
     Note that “service information” may also be referred to as “service content”. Service content includes service information such as music or advertisement information, and device control information for providing the service. 
     Outputter  206  references the second information and outputs the service information generated by service generator  205  to device group  400 . Note that second information processing apparatus  200  may include memory for recording the association between information corresponding to the second information and information required for providing the service, obtain information required for providing the service by referencing the second information, and provide the service to the user or space  20 . 
     Request generator  202  and service generator  205  described above are realized as, for example, a processor and memory. When an instruction or a software program that is stored in the memory is executed, the processor functions as request generator  202  and service generator  205 . Request generator  202  and service generator  205  may be realized as dedicated electronic circuitry. 
     Fourth memory  201  and fifth memory  204  described above are realized as, for example, semiconductor memory and/or a disk drive or the like. Inputter/outputter  203  and outputter  206  are realized as, for example, a network interface controller (NIC) or the like. 
     Interaction in Service Providing System  10   
     Next, interaction in service providing system  10  will be described with reference to  FIG.  4   .  FIG.  4    is a sequence diagram for service providing system  10  according to Embodiment 1. 
     As illustrated in  FIG.  4   , first information processing apparatus  100  obtains the first sensor data including the first sensor value from sensor group  300  (S 101 ). First information processing apparatus  100  determines whether the first condition is satisfied based on the first sensor data (S 102 ). Stated differently, the obtainment of the first sensor data can be said to be trigger information for determining whether the first condition is satisfied. If the first condition is satisfied, first information processing apparatus  100  generates the first information (S 103 ). The first sensor data that serves as the trigger information for determining whether the first condition is satisfied is used in the determining of whether the first condition is satisfied. In other words, in addition to being used as trigger information, the first sensor data can be used in the determining of whether the first condition is satisfied, which corresponds to a condition for providing a service. Moreover, first sensor data that served as trigger information for determining whether the first condition is satisfied in the past may be used in the determining whether the first condition is satisfied. 
     Here, if first information processing apparatus  100  obtains the first request information from second information processing apparatus  200  (S 111 ), first information processing apparatus  100  determines whether there is a user or space that satisfies the first request content (S 112 ). If first information processing apparatus  100  determines that there is a user or space that satisfies the first request content, first information processing apparatus  100  generates the second information (S 113 ). First information processing apparatus  100  then outputs the generated second information to second information processing apparatus  200  (S 114 ). 
     Second information processing apparatus  200  generates the first service information based on the second information (S 121 ). The first service information is information for providing a first service to the user in space  20  via device group  400 . Second information processing apparatus  200  then outputs the first service information to device group  400  (S 122 ). 
     Note that the sequence diagram illustrated in  FIG.  4    is a non-limiting example. Moreover, the order of the processes in  FIG.  4    may be changed. 
     Processes Performed by First Information Processing Apparatus  100   
     Next, processes performed by first information processing apparatus  100  (i.e., the information providing method) will be described in greater detail with reference to  FIG.  5   .  FIG.  5    is a flow chart illustrating processes performed by first information processing apparatus  100  according to Embodiment 1. 
     As illustrated in  FIG.  5   , sensor data obtainer  101  obtains the first sensor data including the first sensor value from sensor group  300  disposed in space  20  (S 101 ). Determiner  104  determines whether the first condition is satisfied based on the first sensor data (S 102 ). This determination process will be described in greater detail later with reference to the figures. 
     If the first condition is satisfied (Yes in S 102 ), first information generator  106  generates the first information (S 103 ). If the first condition is not satisfied (No in S 102 ), first information generator  106  skips the process for generating the first information, that is to say, first information generator  106  does not generate the first information. 
     Next, inputter/outputter  109  obtains the first request information indicating the first request content from second information processing apparatus  200  (S 111 ), Second information generator  108  determines whether there is a user or space that matches the first request content (S 112 ). In other words, second information generator  108  determines whether the first request content includes the content of the first information or not. 
     When second information generator  108  determines that there is a user or space that matches the first request content (Yes in S 112 ), second information generator  108  generates the second information using the generated first information (S 113 ). Inputter/outputter  203  then outputs the generated second information to second information processing apparatus  200  (S 114 ). When second information generator  108  determines that there is not a user or space that matches the first request content (No in S 112 ), second information generator  108  skips the processes for generating and outputting the second information. In other words, second information generator  108  does not generate and output the second information. 
     First Condition Determination Process 
     In the present embodiment, the first condition includes (i) and (ii) described below. 
     (i) The amount of time from the current time to the broadcast start time of a program related to the user&#39;s preference information is a threshold amount of time or less.
 
(ii) The user is about to start preparing food.
 
     If (i) and (ii) described above are satisfied, it is estimated that the broadcast start time of the program is approaching but the user is about to start preparing food. 
     Next, the determination process for such a first condition (S 102  in  FIG.  5   ) will be described in greater detail with reference to  FIG.  6   .  FIG.  6    is a flow chart illustrating one example of the determination process for the first condition according to Embodiment 1. 
     First, determiner  104  determines whether the amount of time from the current time to the broadcast start time of a program related to the user&#39;s preference information is a threshold amount of time or less (S 1021 ). In other words, determiner  104  determines whether (i) described above is satisfied or not. 
     For example, the user&#39;s preference information is registered in advance by the user and stored in first memory  103 . The user&#39;s preference information includes, for example, information related to television programs and/or sports (for example, baseball and soccer) that the user likes. The user&#39;s preference information may also include information indicating a personality trait of the user. 
     The program is a program that is broadcast over radio waves or the internet or the like. The program is broadcast from the broadcast start time to a broadcast end time. The broadcast start time of the program can be obtained from an electronic program schedule, for example. 
     The program related to the user&#39;s preference information is a program that the user is likely to prefer and likely to be interested in. For example, the user&#39;s level of interest in a future program can be estimated based on a history of programs the user has tuned into in the past. More specifically, the user&#39;s level of interest in a future program can be estimated based on the station, the genre, the cast, or any combination thereof of programs the user has tuned into within a given span of time in the past. 
       FIG.  7    illustrates one example of the history of programs the user has tuned into in the past according to Embodiment 1. In  FIG.  7   , the history of programs includes the date and time, station, and genre of programs the user has tuned into in a given span of time in the past. In  FIG.  7   , since the user frequently views the news on station A, the user&#39;s level of interest in future news programs on station A is estimated to be high. Programs estimated in this way to be of a high level of interest to the user are determined to be programs related to the user&#39;s preference information. 
     Moreover, for example, the user&#39;s level of interest in future programs may be estimated based on information related to internet searches by the user or web pages about programs browsed by the user. Moreover, the user&#39;s level of interest in future programs may be estimated based on a number of posts by the user or another party on a social networking service (SNS). 
     The threshold amount of time is a time for discerning that the broadcast start tame of the program is approaching. An empirically or experimentally predefined time may be used as the threshold amount of time, and, alternatively, a time registered in advance by the user, for example, may be used as the threshold amount of time. 
     When the amount of time from the current time to the broadcast start time of the program related to the user&#39;s preference information is the threshold amount of time or less (Yes in S 1021 ), determiner  104  determines whether the user is about to start preparing food based on the user&#39;s food preparation information (S 1022 ). The food preparation information is information indicating whether the user is about to start preparing food, and is obtained from sensor group  300 . The food preparation information includes, for example, presence information indicating whether the user is present in the kitchen space. Moreover, for example, the food preparation information may include information indicating the activity status of a cooking appliance. In such cases, determiner  104  may determine that the user is about to start preparing food when the food preparation information indicates at least one of the user being present in the kitchen space or a cooking appliance in the kitchen space being active. 
     When determiner  104  determines that the user is about to start preparing food (Yes in S 1022 ), determiner  104  determines that the first condition is satisfied (S 1026 ). On the other hand, when the amount of time from the current time to the broadcast start time of the program related to the user&#39;s preference information is not the threshold amount of time or less (No in S 1021 ) or determiner  104  determines that the user is not about to start preparing food (No in S 1022 ), determiner  104  determines that the first condition is not satisfied (S 1027 ). 
     Note that the order of the steps illustrated in  FIG.  6    is not limited to the illustrated order. For example, steps S 1021  and S 1022  may be performed in the reverse order, and, alternatively, may be performed in parallel. 
     Note that some given information on the user other than the user&#39;s food preparation information may be used. For example, the given information on the user is information related to an activity of the user in space  20  including information indicating whether the user is about to start cleaning or information indicating whether the user is about to leave the home. The information indicating whether the user is about to start cleaning includes information indicating the usage status of a cleaning tool. The information indicating whether the user is about to leave the home includes information about a given activity performed before leaving the home. Examples of the given activity performed before leaving the home include presence information for a clothing storage location, and a given activity performed in the lavatory. 
     Advantageous Effects, etc. 
     As described above, the information providing method according to the present embodiment is a method that uses first information processing apparatus  100  which includes a processor and memory. A first information device and a sensor are disposed in a home. The processor can: obtain preference information of a user; obtain a broadcast start time of a program related to the preference information of the user; obtain food preparation information of the user via the sensor; when (i) an amount of time from a current time to the broadcast start time is a threshold amount of time or less and (ii) the food preparation information of the user indicates that the user is about to start preparing food, generate first information indicating that the broadcast start time of the program is approaching but the user is about to start preparing food; obtain, from second information processing apparatus  200  connected to first information processing apparatus  100 , information indicating first request content over a network; and when content of the first information is included in the first request content, outputs, to second information processing apparatus  200 , second information including information for identifying the user or the home, using the first information generated. 
     This makes it possible to determine that the broadcast start time of the program is approaching but the user is about to start preparing food, using the user&#39;s food preparation information obtained by a sensor. Accordingly, it is possible to output information for identifying a user or home that is in such a situation to, for example, the service provider. As a result, it is possible for a service provider or the like to provide services appropriate for the situation of the user or home. It is therefore possible to effectively use sensor data to provide services. 
     Although “tuning into a program” is used as an example of an event in the present embodiment, the event is not limited to this example. For example, a sporting event, a sales promotion event at a store, a festival, a fireworks event, a world&#39;s fair, a vacation, a home party, or a nature event may be used as the event to be participated in by the user. Although preparing food is used as an example of an activity performed by the user in the present embodiment, the activity is not limited to this example. Reading, bathing, going out, or tuning into another program may be used as the activity performed by the user. 
     Embodiment 2 
     Next, Embodiment 2 will be described. The present embodiment mainly varies from Embodiment 1 in that the first information indicates that there is a shortage of goods for an event, and that a different first condition is used to generate such first information. The present embodiment will be described with focus on the differences from Embodiment 1. 
     Note that the configuration of service providing system  10 , the interactions in service providing system  10 , and the processes performed by first information processing apparatus  100  according to the present embodiment are the same as in Embodiment 1, and will therefore be simplified or omitted in the illustrations and description. 
     First Condition Determination Process 
     In the present embodiment, the first condition includes (iii) and (iv) described below. 
     (iii) The current day is a day an event is to be held in space  20 .
 
(iv) The amount of goods procured for the number of attendees in space  20  is less than the required amount.
 
     If (iii) and (iv) described above are satisfied, it as estimated that there is a shortage of goods for the event. 
     Next, the determination process for such a first condition (S 102  in  FIG.  5   ) will be described in greater detail with reference to  FIG.  8   .  FIG.  8    is a flow chart illustrating one example of the determination process for the first condition (S 102 ) according to Embodiment 2. 
     First, determiner  104  determines whether the current day is a day an event is to be held in space  20  (S 2021 ). In other words, determiner  104  determines whether (iii) described above is satisfied or not. 
     More specifically, determiner  104  obtains, for example, event schedule information from first memory  103 . Determiner  104  then determines whether the obtained event schedule information includes a schedule entry for an event to be held in space  20  on the current day. Moreover, for example, determiner  104  may receive an input of event schedule information from the user. 
     The event is an event that a plurality of people participate in, and is, for example, a home party. Goods are consumed by participants at the event. Examples of goods include food, beverages, disposable cups, etc. 
     When the current day is a day an event is to be held in space  20  (Yes in S 2021 ), determiner  104  determines whether the amount of goods procured for the number of attendees in space  20  in a given span of time is less than the required amount (S 2022 ). 
     For example, the number of attendees in space  20  can be obtained from sensor group  300 . In such cases, sensor group  300  counts the attendees in space  20  in a given span of time, For example, determiner  104  obtains the number of people that entered space  20  in a given span of time counted by a sensor disposed at the entrance of space  20 . A span of time from a given amount of time before the event start time to the event end time can be used as the given span of time. A motion sensor, an image sensor, a door sensor, or any combination thereof can be used as the sensor. 
     The required amount of goods is determined based on the number of attendees obtained as described above. For example, the required amount of goods is determined from the number of attendees, based on a predefined relationship between number of attendees and required amount of goods. More specifically, for example, when the relationship between number of attendees and required amount of goods is a ratio of 1:1, the required amount of goods is determined to be equal to the number of attendees. 
     The amount of goods procured for the event can be, for example, an amount of goods procured through e-commerce in a certain period before the event, which is obtained from an e-commerce server. Alternatively, the amount of goods procured may be input by the user. 
     When determiner  104  determines that the amount of goods procured is less than the required amount (Yes in S 2022 ), determiner  104  determines that the first condition is satisfied (S 1026 ). Consequently, processing from step S 103  in  FIG.  5    is performed. Here, the first information generated in step S 103  indicates that there is a shortage of goods for the event. 
     However, when there is no event scheduled for the current day in space  20  (No in S 2021 ) or when the amount of goods procured is not less than the required amount (No in S 2022 ), determiner  104  determines that the first condition is not satisfied (S 1027 ). As a result, step S 103  in  FIG.  5    is skipped and step S 111  and subsequent processes are executed. 
     Note that the order of the steps illustrated in  FIG.  8    is not limited to the illustrated order. For example, steps S 2021  and S 2022  may be performed in the reverse order, and, alternatively, may be performed in parallel. 
     Service Information 
     For example, the first information is generated (S 103 ), whether the first request is satisfied is determined (S 112 ), and the second information is generated (S 113 ), based on the result of determining whether the first condition is satisfied or not as described above, just like in Embodiment 1. Then, based on the second information, second information processing apparatus  200  generates and outputs the first service information for providing the first service to the user in space  20  via device group  400  (S 121  and S 122 ). 
     In the present embodiment, second information processing apparatus  200  can, as the first service, suggest the user to book a catering service. 
     Advantageous Effects, etc. 
     As described above, the information providing method according to the present embodiment is a method that uses first information processing apparatus  100  which includes a processor and memory. A sensor is disposed in space  20 . The processor can: obtain event schedule information for an event in space  20 ; obtain an amount of goods procured for the event in space  20 ; obtain, via the sensor, a number of attendees in space  20  in a given span of time; when (iii) the event schedule information indicates that a current day is a day the event is to be held and (iv) the amount of goods procured for the number of the attendees in space  20  is less than a required amount, generate first information indicating that there is a shortage of the goods for the event; obtain, from second information processing apparatus  200  connected to first information processing apparatus  100 , information indicating first request content over a network; and when the first information is included in the first request content, output, to second information processing apparatus  200 , second information including information for identifying a user or space  20 , using the first information. 
     This makes it possible to determine that there is a shortage of goods for an event by using the number of attendees in space  20  obtained by a sensor. Accordingly, it is possible to output information for identifying a user or space  20  that is in such a situation to, for example, the service provider. As a result, it is possible for a service provider or the like to provide services appropriate for the situation of the user or space  20 . It is therefore possible to effectively use sensor data to provide services. 
     Embodiment 3 
     Next, Embodiment 3 will be described. The present embodiment mainly varies from Embodiment 1 in that the first information indicates that the user is present in space  20  after a long absence, and that a different first condition is used to generate such first information. The present embodiment will be described with focus on the differences from Embodiment 1. 
     Note that the configuration of service providing system  10 , the interactions in service providing system  10 , and the processes performed by first information processing apparatus  100  according to the present embodiment are the same as in Embodiment 1, and will therefore be simplified or omitted in the illustrations and description. 
     First Condition Determination Process 
     In the present embodiment, the first condition includes (v) and (vi) described below. 
     (v) Presence information from a given span of time in the past indicating whether the user is present in space  20  includes an absent period of a threshold length of time or longer in which the user is not present in space  20 .
 
(vi) Use of an electronic device is started after the absent period.
 
     If (v) and (vi) described above are satisfied, it is estimated that the user is present in space  20  after a long absence. 
     Next, the determination process for such a first condition (S 102  in  FIG.  5   ) will be described in greater detail with reference to  FIG.  9   .  FIG.  9    is a flow chart illustrating one example of the determination process for the first condition (S 102 ) according to Embodiment 3. 
     First, determiner  104  determines whether presence information from a given span of time in the past indicating whether the user is present in space  20  includes an absent period of a threshold length of time or longer in which the user is not present in space  20  (S 3021 ). In other words, determiner  104  determines whether (v) described above is satisfied or not. 
     The presence information from a given span of time in the past indicating whether the user is present in space  20  is obtained from first memory  103 .  FIG.  10    illustrates one example of the presence information for the user according to Embodiment 3. In  FIG.  10   , time is represented on the horizontal axis, and days are represented on the vertical axis. The solid arrows indicate that the user is present in space  20 , and the dashed arrows indicate that the user is not present in space  20 . When the threshold length of time is 48 hours, in  FIG.  10   , the period between the triangle markers is the absent period. 
     Such presence information for the user is, for example, generated based on sensor data from a sensor disposed in space  20 . For example, when at least one sensor disposed in space  20  detects the user, the presence of the user in space  20  is recorded, However, when the user is not detected by any sensor disposed in space  20 , the absence of the user in space  20  is recorded. 
     For example, a motion sensor and/or an image sensor can be used as the sensor. Moreover, a sensor provided in an electronic device disposed in space  20  (for example, a touch sensor) can be used as the sensor. In such cases, the presence or absence of the user can be determined based on operation or lack of operation of the electronic device by the user. 
     We will now return to the description of the flowchart illustrated in  FIG.  9   . When the presence information for the user includes an absent period of a threshold length or longer (Yes in S 3021 ), determiner  104  determines whether use of an electronic device is started after the absent period (S 3022 ). In other words, determiner  104  determines whether (vi) described above is satisfied or not. 
     When determiner  304  determines that use of an electronic device is started after the absent period (Yes in S 3022 ), determiner  104  determines that the first condition is satisfied (S 1026 ). Consequently, processing from step S 103  in  FIG.  5    is performed. Here, the first information generated in step S 103  indicates that the user is present in space  20  after a long absence. 
     However, when the presence information for the user does not include an absent period of a threshold length or longer (No in S 3021 ) or use of an electronic device is not started after the absent period (No in S 3022 ), determiner  104  determines that the first condition is not satisfied (S 1027 ). As a result, step S 103  in  FIG.  5    is skipped and step S 111  and subsequent processes are executed. 
     Note that the order of the steps illustrated in  FIG.  9    is not limited to the illustrated order. For example, steps S 3021  and S 3022  may be performed in the reverse order, and, alternatively, may be performed in parallel. 
     Service Information 
     For example, the first information is generated (S 103 ), whether the first request is satisfied is determined (S 112 ), and the second information is generated (S 113 ), based on the result of determining whether the first condition is satisfied or not as described above, just like in Embodiment 1. Then, based on the second information, second information processing apparatus  200  generates and outputs the first service information for providing the first service to the user in space  20  via device group  400  (S 121  and S 122 ). 
     In the present embodiment, second information processing apparatus  200  can, as the first service, send a notification of “welcome home” to the user. Second information processing apparatus  200  can further suggest the user to wash a load of laundry that has amassed or suggest an optimal order for preparing a meal or the like. 
     Advantageous Effects, etc. 
     As described above, the information providing method according to the present embodiment is a method that uses first information processing apparatus  100  which includes a processor and memory. An electronic device and a sensor are disposed in space  20 . The processor can: obtain, from the memory, presence information indicating whether a user was present in space  20  in a past given span of time; obtain a status of the electronic device; when (v) the presence information includes an absent period of a threshold length or longer in which the user is not present in space  20  and (vi) use of the electronic device is started after the absent period, generate first information indicating that the user is present in space  20  after a long absence; obtain, from second information processing apparatus  200  connected to first information processing apparatus  100 , information indicating first request content over a network; and when content of the first information is included in the first request content, output, to second information processing apparatus  200 , second information including information for identifying the user or space  20 , using the first information generated. 
     This makes it possible to determine that the user is present in space  20  after a long absence by using the presence information indicating whether the user is present in space  20  and the status of an electronic device disposed in space  20 . Accordingly, it is possible to output information for identifying the user or space  20  that is in such a situation to, for example, the service provider. As a result, it is possible for a service provider or the like to provide services appropriate for the situation of the user or space  20 . It is therefore possible to effectively use sensor data to provide services. 
     Although the start time of the use of an electronic device is determined in the present embodiment, this determination need not be performed. In such cases, second information processing apparatus  200  may, as the first service, notify a family member of the user that lives separately from the user that the user has been absent for a long period of time. 
     Embodiment 4 
     Next, Embodiment 4 will be described. The present embodiment mainly varies from Embodiment 1 in that the first information indicates that the user can see an astronomical event before bedtime, and that a different first condition is used to generate such first information. The present embodiment will be described with focus on the differences from Embodiment 1. 
     Note that the configuration of service providing system  10 , the interactions in service providing system  10 , and the processes performed by first information processing apparatus  100  according to the present embodiment are the same as in Embodiment 1, and will therefore be simplified or omitted in the illustrations and description. 
     First Condition Determination Process 
     In the present embodiment, the first condition includes (vii) through (x) described below. 
     (vii) An amount of time from the current time until a time the user goes to bed (bedtime) is a threshold amount of time or less.
 
(viii) The user&#39;s movement information indicates that the user has moved to the sleeping space.
 
(ix) The current time is included in an astronomical event period.
 
(x) The weather at the location of space  20  allows for viewing of the astronomical event.
 
     If (vii) through (x) described above are satisfied, it is estimated that the user can view the astronomical event before bedtime. 
     Next, the determination process for such a first condition (S 102  in  FIG.  5   ) will be described in greater detail with reference to  FIG.  11   .  FIG.  11    is a flow chart illustrating one example of the determination process for the first condition (S 102 ) according to Embodiment 4. 
     First, determiner  104  determines whether the amount of time from the current time until the bedtime is a threshold amount of time or less (S 4021 ). In other words, determiner  104  determines whether (vii) described above is satisfied or not. 
     The bedtime is a statistical bedtime based on the user&#39;s past bedtime data. Next, the statistical bedtime will be described in greater detail with reference to  FIG.  12   . 
       FIG.  12    illustrates one example of daily user bedtimes according to Embodiment 4.  FIG.  12    illustrates the bedtime for each day from Jun. 1, 2018 to Jun. 7, 2018. Note that the bedtime need not be the exact bedtime; the bedtime may be a time rounded to a given unit of time (for example, 10 minutes, 30 minutes, or one hour). 
     The bedtimes illustrated in  FIG.  12    can be obtained based on, for example, sensor data from a motion sensor disposed in the bedroom, a wearable sensor worn by the user, and a door sensor on the door of the bedroom. For example, based on the sensor data, it is possible to determine that the user has gone to bed when it is detected that the user has not moved in the bedroom for a given length of time (for example, 30 minutes) or longer and the lights in the bedroom are off. 
     Using the above-described daily bedtimes, a statistical value (for example, the average value or the mean value) of bedtimes over a given span of time in the past (for example, a week, a month, or three months back from the current day, or the same month from last year) is calculated as the statistical bedtime. 
     The given span of time for determining the bedtime statistical value need not be limited in particular, and may be a period of an empirically or experimentally predefined length. Statistical bedtimes calculated as described above are stored in first memory  103 . 
     Outlier values may be removed from the population when the statistical bedtimes are calculated. An outlier value can be calculated using, for example, a known statistics method. Furthermore, bedtimes corresponding to weekdays or holidays may be removed from the population when the statistical bedtimes are calculated. 
     As used herein, the term “current” is not limited to the precise current time, but includes times that would usually be considered to be essentially the current time. For example, the current time as defined by a system (commonly referred to as the system time) may be used as the “current time”. 
     The threshold amount of time is for discerning that it is almost the user&#39;s bedtime. An amount of time registered by the user may be used as the threshold amount of time. Moreover, an amount of time based on a statistical value of past bedtimes (for example, a dispersion or standard deviation or the like) may be used as the threshold amount of time. 
     We will now return to the description of the flowchart illustrated in  FIG.  11   . When the amount of time from the current time until the bedtime is the threshold amount of time or less (Yes in S 4021 ), determiner  104  determines whether the user has moved to the sleeping space (i.e., the bedroom), based on the user&#39;s movement information obtained by a sensor (S 4022 ). In other words, determiner  104  determines whether (viii) described above is satisfied or not. 
     For example, a motion sensor or image sensor disposed in the bedroom, a door sensor on the bedroom door, a sensor provided in an electronic device disposed in the bedroom, or any combination thereof can be used as the sensor. 
     When the user has moved to the sleeping space (Yes in S 4022 ), determiner  104  determines whether the current date and time is included in an astronomical event period indicated in astronomical information (S 4023 ). In other words, determiner  104  determines whether (ix) described above is satisfied or not. 
     The astronomical information is obtained from first memory  103 . Each of  FIG.  13    and  FIG.  14    illustrates one example of the astronomical information according to Embodiment 4. 
     The astronomical information illustrated in  FIG.  13    includes, as one example of the astronomical event information indicating days on which there is a full moon. The astronomical information illustrated in  FIG.  14    includes information indicating astronomical events and astronomical event periods. For example,  FIG.  14    shows that the moon and Jupiter will be close to Earth in the period of 0:00 to 6:00 on Feb. 8, 2018. 
     When the current date and time is included in an astronomical event period (Yes in S 4023 ), determiner  104  determines whether the weather at the location of space  20  allows for viewing of the astronomical event, based on the weather information (S 4024 ). In other words, determiner  104  determines whether (x) described above is satisfied or not. 
     The weather information is stored in first memory  103  from, for example, an external server. The weather information indicates at least the current weather at the location of space  20 . 
     When the weather at the location of space  20  allows for viewing of the astronomical event (Yes in S 4024 ), determiner  104  determines that the first condition is satisfied (S 1026 ). Consequently, processing from step S 103  in  FIG.  5    is performed. Here, the first information generated in step S 103  indicates that the user can see an astronomical event before bedtime. 
     However, when the amount of time from the current time until the bedtime is not the threshold amount of time or less (No in S 4021 ), the user has not moved to the sleeping space (No in S 4022 ), the current date and time is not included in an astronomical event period (No in S 4023 ), or the weather at the location of space  20  does not allow for viewing of an astronomical event (No in S 4024 ), determiner  104  determines that the first condition is not satisfied (S 1027 ). As a result, step S 103  in  FIG.  5    is skipped and step S 111  and subsequent processes are executed. 
     Note that the order of the steps illustrated in  FIG.  11    is not limited to the illustrated order. For example, steps S 4021  through S 4024  may be performed in the reverse order, and, alternatively, may be performed in parallel. 
     Service Information 
     For example, the first information is generated (S 103 ), whether the first request is satisfied is determined (S 112 ), and the second information is generated (S 113 ), based on the result of determining whether the first condition is satisfied or not as described above, just like in Embodiment 1. Then, based on the second information, second information processing apparatus  200  generates and outputs the first service information for providing the first service to the user in space  20  via device group  400  (S 121  and S 122 ). 
     In the present embodiment, second information processing apparatus  200  can, as the first service, notify the user of information related to the astronomical event, for example. 
     Advantageous Effects, etc. 
     As described above, the information providing method according to the present embodiment is a method that uses first information processing apparatus  100  which includes a processor and memory. A sensor is disposed in space  20  including a sleeping space. The processor can: obtain, from the memory, statistical information derived from past bedtimes of a user; obtain, from the memory, astronomical information indicating an astronomical event and a period of the astronomical event; obtain movement information of the user via the sensor; obtain, from the memory, weather information corresponding to a location of space  20 ; when (vii) an amount of time from a current time until the bedtime is a threshold amount of time or less, (viii) the movement information of the user indicates that the user has moved to the sleeping space, (ix) a current date and time is included in a period indicated in the astronomical information; and (x) the weather information indicates weather that allows for viewing of the astronomical event, generate first information indicating that the user is capable of viewing the astronomical event before sleeping; obtain, from second information processing apparatus  200  connected to first information processing apparatus  100 , information indicating first request content over a network; and when content of the first information is included in the first request content, output, to second information processing apparatus  200 , second information including information for identifying the user or space  20 , using the first information generated. 
     This makes it possible to determine that the user can see an astronomical event before bedtime, by using the user&#39;s movement information obtained by a sensor. Accordingly, it is possible to output information for identifying a user or space  20  that is in such a situation to, for example, the service provider. As a result, it is possible for a service provider or the like to provide services appropriate for the situation of the user or space  20 . It is therefore possible to effectively use sensor data to provide services. 
     Although the first information is generated before the user goes to bed in the bedroom in the present embodiment, the generation of the first information is not limited to this example. For example, the first information may be generated when the user is out of the home at night or when the user returns home. In such cases, the determination process for the first condition illustrated in  FIG.  11    may include, instead of steps S 4021  and S 4022  described above, a step that determines whether the user is out of the home at night or a step that determines whether the user has returned home. 
     Variation 1 
     Next, Variation 1 of the above embodiments will be described, The present variation mainly varies from the embodiments in that services are provided via first information processing apparatus  100 , The present variation will be described with reference to the figures, with focus on the differences from the embodiments. 
     Note that since the configurations of service providing system  10  according to the present variation are the same as in the above embodiments, repeated illustration and description will be omitted, 
     Interaction in Service Providing System  10   
       FIG.  15    is a sequence diagram for service providing system  10  according to Variation 1. As illustrated in  FIG.  15   , after generating the first service information (S 121 ), second information processing apparatus  200  according to the present variation outputs the first service information to first information processing apparatus  100  (S 122 A). First information processing apparatus  100  transfers the first service information obtained from first information processing apparatus  100  to device group  400  (S 122 B), First information processing apparatus  100  may transmit record information on the provision of the first service information to second information processing apparatus  200 . Examples of the record information include the number of times that the first service information has been provided, and attribute information related to a user or space  20 . Attribute information is information that cannot identify a user or space  20 . Examples of attribute information include geographical information on the user and demographics of the user. Note that the record information may be limited to information that has been permitted to be transmitted by the user in advance. 
     Advantageous Effects, etc. 
     As described above, with service providing system  10  according to the present variation, second information processing apparatus  200  can restrict disclosure of information related to space  20  to second information processing apparatus  200  since it is not necessary to directly communicate with device group  400  disposed in space  20 . Accordingly, the privacy of users in space  20  can be protected. 
     Variation 2 
     Next, Variation 2 of the above embodiments will be described, The present variation mainly varies from the above embodiments in that the transmission of the first request information from second information processing apparatus  200  to first information processing apparatus  100  is performed before, rather than after, the generation of the first information (S 103 ). The present variation will be described with reference to the figures, with focus on the differences from the embodiments. 
     Note that since the configurations of service providing system  10  according to the present variation are the same as in the above embodiments, repeated illustration and description will be omitted. 
     Interaction in Service Providing System  10   
       FIG.  16    is a sequence diagram for service providing system  10  according to Variation 2. As illustrated in  FIG.  16   , first information processing apparatus  100  according to the present variation obtains the first request information (S 111 ) before obtaining the first sensor data (S 101 ). 
     It is sufficient so long as the obtainment of the first request information (S 111 ) is performed before the determining of whether the first request is satisfied (S 112 ); the obtainment of the first request information (S 111 ) is not limited to being performed before the obtainment of the first sensor data (S 101 ). Moreover, since the first request has already been transmitted, second information processing apparatus  200  may request to obtain information regarding when to determine whether the first condition is satisfied (S 102 ). If the first sensor data is consecutively received in a time series and whether the first condition is satisfied or not (S 102 ) is determined upon each instance of reception of the first sensor data, it may be possible to obtain information at the point in time that the situation changes in a way to satisfy the first condition, by obtaining first sensor data information that does not meet the first condition immediately before first data that does satisfy the first condition is received. For example, the second information may be first sensor data information that (i) is obtained immediately before the first condition is satisfied and (ii) does not satisfy the first condition, Moreover, first information processing apparatus  100  may suggest to second information processing apparatus  200  to change the first condition, depending on the result of an analysis of statistical information on the first sensor data information that (i) is obtained immediately before the first condition is satisfied and (ii) does not satisfy the first condition. 
     Advantageous Effects, etc. 
     As described above, with service providing system  10  according to the present variation, it is possible to output the second information regardless of the timing of the obtainment of the first request information, and possible to provide second information that is timely. 
     Variation 3 
     Next, Variation 3 of the above embodiments will be described. The present variation mainly varies from the above embodiments in that the second information includes, in addition to information for identifying a user or space, device activity information for a device related to a service. The present variation will be described with reference to the figures, with focus on the differences from the embodiments. 
     Note that since the configurations of service providing system  10  according to the present variation are the same as in the above embodiments, repeated illustration and description will be omitted. The interaction in service providing systems  10  and  10 A and the processes performed by first information processing apparatus  100  are as illustrated in  FIG.  6    through  FIG.  9   . Accordingly, repeated illustration and description will be simplified or omitted. 
     Process for Generating Second Information 
     Next, the process for generating the second information (S 113  in  FIG.  5   ) according to the present variation will be described in greater detail with reference to  FIG.  17   .  FIG.  17    is a flow chart illustrating one example of the process for generating the second information (S 113 ) according to Variation 3. Note that in the present variation, the first request information includes information for identifying the service provided by second information processing apparatus  200 . 
     First information processing apparatus  100  selects a device related to the service identified by the first request information from among device group  400  disposed in space  20  in which the first information was generated (S 1131 ). For example, first information processing apparatus  100  selects a device from among device group  400  based on the effect the service has on the user&#39;s five senses (sight, hearing, smell, touch, and taste) and the effect the device has on the user&#39;s five senses. 
       FIG.  18 A  illustrates one example of information indicating relationships between services and the five senses.  FIG.  18 B  illustrates one example of information indicating relationships between devices and the five senses. In  FIG.  18 A  and  FIG.  18 B , a check indicates that the service or device affects the corresponding sense, and a dash indicates that the service or device does not affect the corresponding sense. 
     For example,  FIG.  18 A  shows that service 1 affects the senses of sight and hearing and does not affect the senses of smell or touch (back, waist, and eyes). For example,  FIG.  18 B  shows that the television affects the senses of sight and hearing and does not affect the senses of smell or touch (back, waist, and eyes). 
     When, for example, service 1 is identified by the first request information, first information processing apparatus  100  selects, from among the devices illustrated in  FIG.  18 B , the television and the speaker which are associated with the sense of sight or the sense of hearing that are affected by service 1 as illustrated in  FIG.  18 A . 
     Next, first information processing apparatus  100  obtains device activity information for the selected device(s) (S 1132 ). The device activity information is information indicating whether the device is active. For example, the device activity information may be obtained directly from the device(s), or may be obtained via a sensor or sensors. 
     First information processing apparatus  100  then generates the second information including the device activity information (S 1133 ). 
     Advantageous Effects, etc. 
     As described above, according to the present variation, it is possible for the second information to include the device activity information for a device. Accordingly, second information processing apparatus  200  can provide a service that activates a device in an inactive state, and can avoid competition with services for devices that are operating. For example, when there are many devices that are in an active state, second information processing apparatus  200  can avoid causing multiple devices to confuse the senses of the user. 
     Although the second information includes the device activity information for selected devices in the present variation, this example is non-limiting. For example, the second information may include the device activity information for all devices. Moreover, the device activity information may be output separately from the second information. 
     The second information may moreover include only device activity information for devices that have been permitted to provide the device activity information by the user. Moreover, when there is a device that has been denied permission to provide the device activity information by the user, the second information may include information indicating that the device has been denied permission to provide the device activity information by the user. For example, when second information processing apparatus  200  provides a service using a device that has been denied permission to provide the operation information by the user, second information processing apparatus  200  may request permission from the user to provide the service. 
     Variation 4 
     Next, Variation 4 of the above embodiments will be described. The present variation mainly varies from the above embodiments in that the second information includes, in addition to information for identifying a user or space, suitability information indicating service provision suitability. The present variation will be described with reference to the figures, with focus on the differences from the embodiments. 
     Note that since the configurations of service providing system  10  according to the present variation are the same as in the above embodiments, repeated illustration and description will be omitted. The interaction in service providing systems  10  and  10 A and the processes performed by first information processing apparatus  100  are as illustrated in  FIG.  6    through  FIG.  9   . Accordingly, repeated illustration and description will be simplified or omitted. 
     Process for Generating Second Information 
     Next, the process for generating the second information (S 113  in  FIG.  5   ) according to the present variation will be described in greater detail with reference to  FIG.  19   .  FIG.  19    is a flow chart illustrating one example of the process for generating the second information (S 113 ) according to Variation 4. Note that in the present variation, the first request information includes information for identifying the service provided by second information processing apparatus  200 . 
     First information processing apparatus  100  obtains a service provision history for space  20  or the user (S 1134 ). Service provision history is information associating services provided in the past to space  20  or the user with the date and time that those services were provided. 
       FIG.  20    illustrates one example of the service provision history according to Variation 4. In  FIG.  20   , time is represented on the horizontal axis, and days are represented on the vertical axis. The double-headed arrows indicate the time that a service was or will be provided to space  20  or the user, For example, service 1 was provided twice between 18:00 and 24:00 on Jun. 2, 2018. Note that the service provision history can include a plurality of different services provided by a plurality of different second information processing apparatuses  200  (in other words, a plurality of different service providers). 
     Next, first information processing apparatus  100  evaluates the suitability of the provision of the service identified by the first request information for space  20  or the user, based on the obtained service provision history (S 1135 ). More specifically, for example, first information processing apparatus  100  evaluates the suitability of the provision of the service identified by the first request information based on the number of times the service was provided in a given span of time. As another example, first information processing apparatus  100  may evaluate the suitability of the provision of the service identified by the first request information based on another service that is currently being provided. 
     Next, specific examples of the evaluation of the suitability of the service provision will be given with reference to  FIG.  21 A  through  FIG.  21 C .  FIG.  21 A  illustrates one example of service provision availability information according to Variation 4. For example, service provision availability information may be stored in advance in third memory  107 , and, alternatively, may be obtained from an external server (not illustrated in the figures). 
     The service provision availability information indicates, for each service, the number of times per day that service can be provided, as well as situations in which that service cannot be provided. For example, the service provision availability information illustrated in  FIG.  21 A  indicates that service 1 and service 3 both have no restrictions for how many times they can be provided per day, and that service 2 can only be provided once a day. 
     According to the service provision history illustrated in  FIG.  20   , on the current day (Jun. 7, 2018), service 1 and service 2 have already been provided. Accordingly, based on the service provision availability information illustrated in  FIG.  21 A , the suitability of the provision of services 1 and 3 is evaluated high, and the suitability of the provision of service 2 is evaluated low. 
     Moreover, the service provision availability information illustrated in  FIG.  21 A  indicates that services 1 and 2 cannot be provided in user situations A and B, respectively. For example, a situation in which the user&#39;s activity is more delayed than usual may be used as user situations A and B. In such cases, by prohibiting the provision of less urgent services (for example, music playback or providing horoscope information), it is possible to provide services suitable to the user&#39;s situation. Moreover, for example, a situation in which the program broadcast start time is approaching but the user is about to start preparing food, a situation in which there is a shortage of goods for an event, a situation in which the user is present in space  20  after a long absence, a situation in which the user can see an astronomical event before bedtime, or any combination thereof may be used as the user situations A and B. 
       FIG.  21 B  illustrates one example of information indicating services that are prohibited from being provided simultaneously according to Variation 4. For example, the information indicating services that are prohibited from being provided simultaneously may be stored in advance in third memory  107 , and, alternatively, may be obtained from an external server (not illustrated in the figures). 
     The information indicating services that are prohibited from being provided simultaneously indicates, more specifically, pairs of services that are prohibited from being or allowed to be provided simultaneously. A check indicates the two services are prohibited from being provided simultaneously, while a dash indicates the two services are allowed to be provided simultaneously. 
     For example, the information illustrated in  FIG.  21 B  indicates that service 1 is allowed to be provided simultaneously with services 2 and 3. In other words, service 1 can be provided along with each of service 2 and service 3. For example, the information illustrated in  FIG.  21 B  also indicates that service 2 is prohibited from being provided simultaneously with service 3. In other words, the information indicates that service 2 cannot be provided along with service 3. 
       FIG.  21 C  illustrates one example of information indicating services that are prohibited from being changed according to Variation 4. For example, the information indicating services that are prohibited from being changed may be stored in advance in third memory  107 , and, alternatively, may be obtained from an external server (not illustrated in the figures). 
     The information indicating services that are prohibited from being changed indicates, more specifically, services prohibited from being or allowed to be provided in place of a service that is already being provided. A check indicates that changing from the service on the left column to the service on the top row is prohibited, and a dash indicates that changing from the service on the left column to the service on the top row is allowed. 
     For example, in  FIG.  21 C , when service 1 is currently being provided, changing from service 1 to service 2 is prohibited, On the other hand, when service 2 is currently being provided, changing from service 2 to service 1 is allowed. Moreover, when service 2 is currently being provided, changing from service 2 to service 3 is also prohibited. 
     In the service provision history illustrated in  FIG.  20   , service 2 is being provided at the current time. However, based on the information indicating services that are prohibited from being provided simultaneously that is illustrated in  FIG.  21 B  and the information indicating services that are prohibited from being changed that is illustrated in  FIG.  21 C , the suitability of the provision of service 1 is evaluated high and the suitability of the provision of service 3 is evaluated low. 
     Such an evaluation result is expressed as two or more levels. For example, two levels, namely “suitable” and “unsuitable”, can be used as the evaluation result. As another example, a number score from 0 to 10 or 0 to 100 can be used as the evaluation result. 
     Lastly, first information processing apparatus  100  generates the second information including suitability evaluation information indicating the evaluation result (S 1136 ). 
     Advantageous Effects, etc. 
     As described above, according to the present variation, it is possible for the second information to include suitability evaluation information. Accordingly, second information processing apparatus  200  can, for example, skip the provision of a service when the service&#39;s suitability evaluation is low, and can thus inhibit the provision of services at inappropriate times. As a result, service providing systems  10  and  10 A can reduce excessive provision of services and inhibit interference between services. 
     Although the second information includes the suitability evaluation information in the present variation, this example is non-limiting. For example, in addition to or instead of the suitability evaluation information, the second information may include the service provision history information. Moreover, the service suitability information may be output separately from the second information. 
     Variation 5 
     Next, Variation 5 of the above embodiments will be described. The present variation mainly varies from the above embodiments in that, when first requests having the same request content have already been received from a plurality of second information processing apparatuses  200  (see Variation 2 above), the second information is output to a second information processing apparatus  200  selected based on priority level. The present variation will be described with reference to the figures, with focus on the differences from the embodiments. 
     Note that since the configurations of service providing system  10  according to the present variation are the same as in the above embodiments, repeated illustration and description will be omitted. The interaction in service providing systems  10  and  10 A and the processes performed by first information processing apparatus  100  are as illustrated in  FIG.  6    through  FIG.  9   . Accordingly, repeated illustration and description will be simplified or omitted. 
     Process for Outputting Second Information 
     Next, the process for outputting the second information (S 114  in  FIG.  5   ) according to the present variation will be described in greater detail with reference to  FIG.  22   .  FIG.  22    is a flow chart illustrating one example of the process for outputting the second information (S 114 ) according to Variation 5. 
     First information processing apparatus  100  sets the priority level of each of a plurality of second information processing apparatuses  200  (S 1141 ). In other words, first information processing apparatus  100  sets the priority level for each of a plurality of second information processing apparatuses  200  that correspond to a plurality of first requests having the same request content. For example, the priority levels may be included in the first request information, and in such cases, the priority levels are set according to the priority levels included in the first request information. The priority levels may be set according to the situation of space  20  or the user that is obtained from sensor group  300  and device group  400 . Moreover, the priority levels of the plurality of second information processing apparatuses  200  may be set based on bid amounts by the service providers for the provision of the second information. 
     Next, first information processing apparatus  100  selects one or more second information processing apparatuses  200  based on the set priority level (S 1142 ). For example, first information processing apparatus  100  selects, from among a plurality of second information processing apparatuses  200  that correspond to a plurality of first requests having the same request content, the second information processing apparatus  200  having the highest priority level. Note that the number of second information processing apparatuses  200  selected is not limited to one. 
     First information processing apparatus  100  then outputs the second information to the selected second information processing apparatus  200  (S 1143 ). Thereafter, first information processing apparatus  100  determines whether the service has been provided by the selected second information processing apparatus  200  within a given period (S 1144 ). In other words, whether or not the selected second information processing apparatus  200  has provided the service within a given period starting when the second information is output is determined. An empirically or experimentally predefined period can be used as the given period. For example, the same period may be used across a plurality of services. Alternatively, individually set times for the plurality of services may be used as the given period. 
     When the service is provided within the given period (Yes in S 1144 ), processing ends. However, when the service is not provided within the given period (No in S 1144 ), processing proceeds to step S 1141 . This time in step S 1141 , the priority levels of the plurality of second information processing apparatuses  200  are updated such that the priority level of the second information processing apparatus  200  that did not provide the service is reduced. First information processing apparatus  100  then selects one or more second information processing apparatuses  200  based on the updated priority levels (S 1142 ). Here, the system may be configured so that the service can only be provided to the user or space  20  when the priority level is set to the highest level. For example, if the second information is sent to both the second information processing apparatus  200  set to the highest priority level before the update and the second information processing apparatus  200  set to the highest priority level after the update, there is a chance that the service may be redundantly provided when, after a given period, the service is attempted to be provided by the second information processing apparatus  200  set to the highest priority level before the update. Accordingly, the system may be set so that only the second information processing apparatus  200  set to the highest priority level can use the second information. For example, this may be achieved by setting the system so that the second information may only be used at the time the service is executed, so that the encryption is changed after each update, and providing an encryption key corresponding to the second information processing apparatus  200  set to the highest priority level. 
     Advantageous Effects, etc. 
     As described above, according to the present variation, first information processing apparatus  100  can select a second information processing apparatus  200  based on priority level. Accordingly, service providing systems  10  and  10 A can select a second information processing apparatus  200  that is appropriate for the provision of the service from among a plurality of second information processing apparatuses  200  corresponding to a plurality of first requests having the same request content. 
     Types of Services 
     Next, the types of services in the service providing system according to the above embodiments will be described. 
     Overview of Provided Services 
       FIG.  23 A  illustrates an overview of the service providing system. 
     Group  1000  is, for example, a business, an organization, or a household or the like, The scale of group  1000  may be any scale. Group  1000  includes devices A and B included in plural devices  1010 , and home gateway  1020 . For example, plural devices  1010  are devices included in device group  400  according to the above embodiments. For example, home gateway  1020  is gateway  500  according to the above embodiments. Plural devices  1010  include devices that can connect to the internet (for example, smartphones, PCs, televisions, etc.) as well as devices that cannot connect to the internet themselves (for example, lights, washing machines, etc.), Even devices that cannot connect to the internet themselves but can connect to the internet via home gateway  1020  may be included, Moreover, user(s)  990 A that use plural devices  1010  are in group  1000 . 
     Data center operating company  1100  includes cloud server  1110 . Cloud server  1110  is a virtual server that links with various devices over the internet. For example, cloud server  1110  is first information processing apparatus  100  according to the above embodiments. For example, cloud server  1110  manages big data which is difficult to manage with typical database management tools. Data center operating company  1100  performs operations of a data center, such as data management and management of cloud server  1110 . Services performed by data center operating company  1100  will be described in greater detail later. Here, data center operating company  1100  is not limited to a company that only performs operations such as data management and operation of cloud server  1110 . For example, when a device manufacturer that develops and produces one device among plural devices  1010  also performs data management and management of cloud server  1110 , that device manufacturer corresponds to data center operating company  1100  ( FIG.  23 B ). Moreover, data center operating company  1100  is not limited to a single company. For example, when a device manufacturer and another management company work in consort or through shared contribution to carry out the data management and operation of cloud server  1110 , both or one of the device manufacturer and the management company corresponds to data center operating company  1100  ( FIG.  23 C ). 
     Service provider  1200  has server  1210 . As used herein, the scale of server  1210  may be any scale, For example, server  1210  may be memory included in a personal computer. Moreover, there are cases in which service provider  1200  does not have server  1210 . For example, server  1210  is second information processing apparatus  200  according to the above embodiments. 
     Note that home gateway  1020  is not required in the service described above. For example, when cloud server  1110  does all of the data management, home gateway  1020  is not necessary. Furthermore, there are cases in which there are no devices that cannot connect to the internet themselves, such as when all household devices are connected to the internet. 
     Next, the flow of information in the above service will be described. 
     First, device A and device B in group  1000  transmit information they obtained to cloud server  1110  in data center operating company  1100 . Cloud server  1110  accumulates the information from device A or device B ((a) in  FIG.  23 A ). The accumulated information is information indicating, for example, the operation status, operating date and time, operation mode, position, etc., of plural devices  1010 . Examples include, but are not limited to, television viewing history, television video recorder scheduled recordings, washing machine operating date and time, washing machine laundry amount, date and time that the door of a refrigerator opened or closed, number of times that the door of a refrigerator opened or closed, and amount of food in a refrigerator; the accumulated information includes any information that can be obtained from any kind of device. There are cases in which the information is provided directly to cloud server  1110  from plural devices  1010  themselves via the internet. The information may be obtained from plural devices  1010  and intermediately accumulated by home gateway  1020 , from where it is provided to cloud server  1110 . 
     Next, cloud server  1110  in data center operating company  1100  provides the accumulated information to service provider  1200  in fixed units. Here, fixed units may be units in which the data center operating company can organize the collected information and provide the collected information to service provider  1200 , and may be units requested by service provider  1200 . Although the term “fixed units” is used herein, the units need not be fixed; the amount of information provided may be variable according to the situation. The information is stored in server  1210  of service provider  1200  ((b) in  FIG.  23 A ). Service provider  1200  then organizes the information to suit the service to be provided to the user, and then provides it to the user. The user on the receiving end may be user  990 A that uses plural devices  1010 , and may be external user(s)  990 B. The method of providing the service to the user may be a method whereby the service is provided directly from the service provider, for example ((e), (f) in  FIG.  23 A ). Alternatively, the method of providing the service to the user may be a method whereby the service is provided to the user via cloud server  1110  in data center operating company  1100  ((c), (d) in  FIG.  23 A ). Moreover, cloud server  1110  in data center operating company  1100  may organize the information to suit the service to be provided to the user, and then provide the information to service provider  1200 . 
     Note that user  990 A and user  990 B may be the same or different users. 
     For example, the techniques described above can be realized in the following types of cloud services. However, the techniques described above are not limited to being realized in the following examples. 
     Service Type 1: In-Company Data Center 
       FIG.  24    illustrates service type 1 (in-company data center). In this type, service provider  1200  obtains information from group  1000  and provides a service to a user. In this type, service provider  1200  functions as a data center operating company. In other words, the service provider has cloud server  1110  that manages big data. Accordingly, there is no data center operating company. 
     In this type, service provider  1200  operates and manages data center  903  (cloud server  1110 ). Service provider  1200  also manages OS  902  and application  901 . Service provider  1200  provides service  904  using OS  902  and application  901  that it manages. 
     Service Type 2: IaaS 
       FIG.  25    illustrates service type 2 (IaaS). As used herein, “IaaS” stands for infrastructure as a service, and refers to a cloud service provision model that provides an infrastructure for constructing and operating a computer system, as a service via the internet. 
     In this type, data center operating company  1100  operates and manages data center  903  (cloud server  1110 ). Service provider  1200  also manages OS  902  and application  901 . Service provider  1200  provides service  904  using OS  902  and application  901  that it manages. 
     Service Type 3: PaaS 
       FIG.  26    illustrates service type 3 (PaaS). As used herein, “PaaS” stands for platform as a service, and refers to a cloud service provision model that provides a platform for constructing and operating software, as a service via the internet. 
     In this type, data center operating company  1100  manages OS  902  and operates and manages data center  903  (cloud server  1110 ). Service provider  1200  also manages application  901 . Service provider  1200  provides service  904  using OS  902  managed by the data center operating company and application  901  that itself manages. 
     Service Type 4: SaaS 
       FIG.  27    illustrates service type 4 (SaaS). As used herein, “SaaS” stands for software as a service. For example, SaaS refers to a cloud service provision model that, for example, has a function that allows a company or individual (user) that does not have a data center (cloud server) to use, over a network such as the internet, an application provided by a platform provider that has a data center (cloud server). 
     In this type, data center operating company  1100  manages application  901 , manages OS  902 , and operates and manages data center  903  (cloud server  1110 ). Service provider  1200  provides service  904  using OS  902  and application  901  that data center operating company  1100  manages. 
     In any of the above types, the service provision is performed by service provider  1200 . Moreover, for example, the service provider or the data center operating company may develop, for example, the OS, application, or database of big data themselves, or may outsource the OS, application, or database of big data from a third party. 
     Other Embodiments 
     Although the service providing system according to one or more aspects of the present disclosure has been described based on embodiments, the present disclosure is not limited to these embodiments. Those skilled in the art will readily appreciate that various modifications may be made in these exemplary embodiments and that other embodiments may be obtained by arbitrarily combining the elements of the embodiments without materially departing from the novel teachings and advantages of the subject matter of the present disclosure. Accordingly, all such modifications and other embodiments are included in one or more aspects of the present disclosure. 
     For example, in the embodiments above, first information processing apparatus  100  that processes the sensor data and second information processing apparatus  200  that generates the service information are provided as separate apparatuses, but first information processing apparatus  100  and second information processing apparatus  200  may be configured as a single information processing apparatus. In such cases, since there is no need for interaction between first information processing apparatus  100  and second information processing apparatus  200 , when the first condition is satisfied, processes from the generation of the first information to the output of the second information may be skipped. 
     INDUSTRIAL APPLICABILITY 
     The techniques of the present disclosure can be used as an information processing apparatus that provides information for providing a service to a user.