Abstract:
A device in an automated environment can detect patterns in the user's interactions with accessories in the automated environment and can provide feedback to the user based on the patterns. Examples include: suggesting automation of particular actions based on the patterns; suggesting actions that conform to the pattern when the user performs part of the pattern; or suggesting changes to a pattern to conform to a preferred pattern.
Abstract:
In general, in one aspect, a method includes receiving, on a mobile device, an indication that an application executing on the mobile device has entered a background state, determining, based on data received from a location system of the mobile device, that the mobile device has remained within a geographic area during a time interval, the geographic area being defined by a radius determined according to an application type of the application, and disabling at least a portion of the location system of the mobile device.
Abstract:
Systems, methods and computer program products are disclosed for machine learning to determine preferential device behavior. In some implementations, a server receives inputs, including attributes from a client device, crowd-sourced data from a number of other devices and a priori knowledge. The server includes a concept engine that applies machine-learning process to the inputs. The output of the machine learning process is transported to the client device. At the client device, a client engine associates attributes observed at the device to the machine learning output to determine a user profile. Applications may access the user profile to determine preferential device behavior, such as provide targeted information to the user or take action on the device that is personalized to the user of the device.
Abstract:
Techniques for modeling significant locations are described. A significant location can be a location that is significant to a user of a mobile device for a variety of reasons. The mobile device can determine that a place or region is a significant location upon determining that, with sufficient certainty, the mobile device has stayed at the place or region for a sufficient amount of time. The mobile device can construct a state model that is an abstraction of one or more significant locations. The state model can include states representing the significant locations, and transitions representing movement of the mobile device between the locations. The mobile device can use the state model to provide predictive user assistance.
Abstract:
Methods and apparatus to provide assistance data for satellite navigation in a wireless communication device are disclosed. Processing circuitry in the wireless communication device determines whether to obtain assistance data for navigation based on a set of criteria. The set of criteria include one or more of a property of a geographic region in which the wireless communication device operates, a satellite signal quality estimate measured by the wireless communication device, and a user setting of the wireless communication device. When the set of criteria indicates that assistance data for navigation is beneficial for satellite navigation in the wireless communication device, the processing circuitry obtains one or more sets of assistance data. The processing circuitry configures operation of the wireless communication device for navigation based at least in part on the one or more sets of assistance data obtained.
Abstract:
Behavior information can be aggregated across multiple automated environments (e.g., across homes in a neighborhood). The automated environments can provide information about detected environment-level behavior patterns to a server. The server can aggregate the patterns across environments in a defined neighborhood and can provide neighborhood-level information back to the participating automated environments. The neighborhood-level information can be used to drive decisions and behavioral changes in individual automated environments.
Abstract:
A device in an automated environment can detect patterns in the user's interactions with accessories in the automated environment and can provide feedback to the user based on the patterns. Examples include: suggesting automation of particular actions based on the patterns; suggesting actions that conform to the pattern when the user performs part of the pattern; or suggesting changes to a pattern to conform to a preferred pattern.
Abstract:
Methods and apparatus to provide assistance data for satellite navigation in a wireless communication device are disclosed. Processing circuitry in the wireless communication device determines whether to obtain assistance data for navigation based on a set of criteria. The set of criteria include one or more of a property of a geographic region in which the wireless communication device operates, a satellite signal quality estimate measured by the wireless communication device, and a user setting of the wireless communication device. When the set of criteria indicates that assistance data for navigation is beneficial for satellite navigation in the wireless communication device, the processing circuitry obtains one or more sets of assistance data. The processing circuitry configures operation of the wireless communication device for navigation based at least in part on the one or more sets of assistance data obtained.
Abstract:
A number of devices co-located at a geographic location can broadcast and receive tokens. Tokens can be exchanged using a communication link having limited communication range. Tokens that are received by a device can be stored locally on the device and/or transmitted to a trusted service operating remotely on a network. In some implementations, the tokens can be stored with corresponding timestamps to assist a trusted service in matching or otherwise correlating the tokens with other tokens provided by other devices. The trusted service can perform an analysis on the tokens and timestamps to identify devices that were co-located at the geographic location at or around a contact time which can be defined by the timestamps. A group can be created based on results of the analysis. Users can be identified as members of the group and invited to join the group.
Abstract:
Embodiments of the present disclosure are directed to, among other things, monitoring a user device to determine whether a user associated with the device is safe. In some examples, a user (which may be referred to herein as an “initiator” establishes a device monitoring session (which may be referred to herein as “session”) with a user, or a group of users, so that the user(s) are notified either when the initiator has safely ended the device monitoring session or receives access to session data that was collected during the session. In some configurations, the session can be handed off from a first user device that is currently active to a different user device. Instead of the first user device always being the device that interacts with the server, a different first user device may be selected as the active device to interact with the server.