Patent application number | Description | Published |
20100169331 | ONLINE RELEVANCE ENGINE - Information is automatically located which is relevant to source content that a user is viewing on a user interface without requiring the user to perform an additional search or navigate links of the source content. The source content can be, e.g., a web page or a document from a word processing or email application. The relevant information can include images, videos, web pages, maps or other location-based information, people-based information and special services which aggregate different types of information. Related content is located by analyzing textual content, user behavior and connectivity relative to the source. The related content is scored for similarity to the source. Content which is sufficiently similar but not too similar is selected. Similar related content is grouped to select representative results. The selected content is filtering in multiple stages based on attribute priorities to avoid unnecessary processing of content which is filtered out an early stage. | 07-01-2010 |
20100223498 | OPERATING SYSTEM-BASED APPLICATION RECOVERY - Methods, systems, and computer-readable media are disclosed for operating system-based application recovery. A particular method saves an application state of an application executing at a computer. When a failure of the application is detected, the operating system provides an option to initiate recovery of the application by reverting to the saved application state. When the option to initiate recovery is selected by a user of the computer, the operating system recovers the application by reverting to the saved application state. | 09-02-2010 |
20120295639 | DISCOVERING NEARBY PLACES BASED ON AUTOMATIC QUERY - Architecture that enables a user to define areas of interest in advance, and while in motion (e.g., driving, walking, riding, etc.), the architecture automatically notifies the user and/or user device based on notification criteria such as when the user (user device) is near a specific point of interest which matches a category of points of interest (e.g., museum, restaurants, concerts, police radar, etc.), is heading in the direction of the point of interest, anticipates time of arrival to the point of interest, etc. The architecture enables the discovery of points of interest that did not exist when the user defined the location query for the category of points of interest. Moreover, points of interest that change in location and/or time can also be discovered. Implicit location queries can be processed based on a product of interest or service of interest as well. | 11-22-2012 |
20120299724 | LOCATION DETERMINATION - An embodiment of the invention provides a method of determining a location of a mobile target, that use data characterizing features of the target, data characterizing an environment in which the target is located, and a region of uncertainty for a location of the target provided by a wireless location technology tracker to provide a location for the target having a region of uncertainty that is smaller than that provided by the wireless technology. | 11-29-2012 |
20120306699 | LOW ACCURACY POSITIONAL DATA BY DETECTING IMPROBABLE SAMPLES - An embodiment of the invention provides a method of determining a location of a mobile target that processes locations for the target provided by a wireless location technology tracker system to determine if the locations are outliers, discards locations that are determined to be outliers, and uses locations determined not to be outliers as locations for the target. | 12-06-2012 |
20130031047 | EFFICIENCY AND ACCURACY OF GEO-FENCING BASED ON USER HISTORY - Architecture that identifies and learns repeated user behavior (habits) related to routes of travel and points of interest. Once learned, the habits of an individual can be used to make an algorithm more efficient, and hence, the user experience of an application more effective and enjoyable. The capability to more accurately infer user behavior based on user history can be employed to operate (e.g., power down or place in components standby to conserve power) user device resources in a more efficient manner. It can be identified that a user has deviated from a routine route that has associated points of interest to a new route that has associated new points of interest. Once identified, the original set of points of interest for the routine route is then updated with new points of interest. The identification of fixed routes can be determined dynamically as well as deviation from a fixed route. | 01-31-2013 |
20130203383 | VERIFIED CHECK-IN - An embodiment of the invention provides a check-in verification system (VCS) that verifies a check-in by a user using a smartphone to check-in at a venue, by verifying that a geolocation provided by the smartphone agrees with a location of the venue and that a password used by the user and the venue are the same. | 08-08-2013 |
20130263127 | PERSISTENT AND RESILIENT WORKER PROCESSES - In the field of computing, many scenarios involve the execution of an application within a virtual environment (e.g., web applications executing within a web browser). In order to perform background processing, such applications may invoke worker processes within the virtual environment; however, this configuration couples the life cycle of worker processes to the life cycle of the application and/or virtual environment. Presented herein are techniques for executing worker processes outside of the virtual environment and independently of the life cycle of the application, such that background computation may persist after the application and/or virtual environment are terminated and even after a computing environment restart, and for notifying the application upon the worker process achieving an execution event (e.g., detecting device events even while the application is not executing). Such techniques may heighten the resiliency and persistence of worker processes and expand the capabilities of applications executing within virtual environments. | 10-03-2013 |
20130332067 | REALTIME SOCIALLY-DERIVED AND SHARED TIME-OF-ARRIVAL ESTIMATION TO A DESTINATION - Architecture that enables shared social selection by multiple participants of a route (or routes) to a physical destination based at least in part on estimated time-of-arrival (ETA) of the participants to the destination as a group, and joint selection of the destination as a group. The individuals of the group may travel from different locations and along same or different routes to the destination. The architecture assists in planning shared (and/or separate) routes to the destination and estimating the time the group as a whole will be together at the destination. The ETA for the group can be based on the person of the group estimated to arrive at the destination last in time. Interaction capabilities (e.g., texting) are facilitated between group members as part of the navigation system, and dynamic destination decisions can be based on user locations, calculated routes, and/or the type of destination. | 12-12-2013 |
20140173592 | INVERSION-OF-CONTROL COMPONENT SERVICE MODELS FOR VIRTUAL ENVIRONMENTS - In the field of computing, many scenarios involve the execution of an application within a virtual environment of a device (e.g., web applications executing within a web browser). Interactions between applications and device components are often enabled through hardware abstractions or component application programming interfaces (API), but such interactions may provide more limited and/or inconsistent access to component capabilities for virtually executing applications than for native applications. Instead, the device may provide hardware interaction as a service to the virtual environment utilizing a callback model, wherein applications within the virtual environment initiate component request specifying a callback, and the device initiates the component requests with the components and invokes associated callbacks upon completion of a component request. This model may enable the applications to interact with the full capability set of the components, and may reduce blocked execution of the application within the virtual application in furtherance of application performance. | 06-19-2014 |
20140282984 | SERVICE RELATIONSHIP AND COMMUNICATION MANAGEMENT - Communication between a user and various services (e.g., websites) often involves creating a user profile comprising contact information (e.g., a personal email address) that the service uses to contact the user. However, managing communication may be burdensome and ineffective; the user's privacy may be diminished; and revocation of previously issued permission may be unachievable. Presented herein are techniques for providing a communication manager that establishes relationships with services on behalf of users, and that issues tokens to the services representing such relationships. In order to communicate with the user, the service presents the token to the communication manager, which conditions the authorization of the communication on verification of the current permission of user in the relationship represented by the token, optionally including the communication channel of the user requested by the service. This architecture enables more consistent, convenient, privacy-preserving, and revocable user control of communication permissions with the services. | 09-18-2014 |
20140324856 | APPLICATION DISCOVERABILITY - Architecture that enables the discovery of relevant applications, where the relevance is personalized to the user and user interests. New, relevant, and interesting applications are personalized to the user based on friends and/or people with whom the user shares common interests (e.g., social networks), based on queries for a popular application within a geographical area, and/or collaborative filtering. Moreover, users who employ the disclosed architecture can maintain anonymity to prevent the exposure of personal identifying details. Social-based application discovery, location-based application discovery, anonymous-profile-based application discovery, and collaborative-filtering-based application discovery, are provided. Application installs, uninstalls, and frequency of user interaction are also available, as well as privacy modes for privacy protection. | 10-30-2014 |
20140379521 | ACTIVITY-BASED PERSONAL PROFILE INFERENCE - The aggregation of facts from various sources about an individual may produce an individual profile that may inform personalized services. However, a compilation of facts may be supplemented by monitoring activities of the individual and formulating inferences regarding the individual's individual details, and the confidence of such inferences. Accordingly, a device may compare the detected activities with a behavioral rule set indicating correlations between activities and inferred individual details (e.g., frequently spent weekday evenings and morning departures from a residence imply that the residence is the individual's home; frequent bicycling to work, chosen over other available modes of transportation, implies that the individual is a bicycling enthusiast) to add inferred individual details to the individual profile. Continued monitoring may enable updating based on changes to the individual details. Multiple profiles may be synchronized while respecting the individual's privacy, obtaining the individual's consent to share information, and automatically resolving information conflicts. | 12-25-2014 |
20150018008 | LOW ACCURACY POSITIONAL DATA BY DETECTING IMPROBABLE SAMPLES - An embodiment of the invention provides a method of determining a location of a mobile target that processes locations for the target provided by a wireless location technology tracker system to determine moving averages of velocity of the target, determines if the locations are outliers responsive to the moving averages, discards locations that are determined to be outliers, and uses locations determined not to be outliers as locations for the target. | 01-15-2015 |
20150106430 | CLOUD SERVICE HOSTING ON CLIENT DEVICE - One or more techniques and/or systems are provided for cloud service hosting on a client device. For example, a cloud service may comprise data and/or functionality that may be consumed by apps on client devices. The cloud service may be hosted within a cloud computing environment because a client device may not comprise processing resources capable of hosting the entire cloud service. Accordingly, a local service may be deployed on a client device as a local instantiation of the cloud service. For example, the local service may be a local instantiation of at least a portion of the data and/or functionality of the cloud service. In this way, the local service may utilize fewer resources than the cloud service, and may locally process requests from apps on the client device. For example, a map local service may process requests using map data locally cached from a map cloud service. | 04-16-2015 |
20150242496 | LOCAL CONTENT FILTERING - One or more techniques and/or systems are provided for locally filtering content on a device, which preserves privacy of a user (e.g., user specific data is not sent from the device to obtain content tailored to the user). A set of content candidates may be retrieved from a remote source (e.g., a restaurant app may retrieve menu items from a restaurant server). A user personalization profile may be used to locally filter the set of content candidates to generate a filtered set of content. For example, the user personalization profile may indicate that the user maintains a low-carb diet and that the user prefers expensive Asian restaurants (e.g., based upon a low-carb diet document saved on the user's device and/or device locational information indicating the user frequents expensive Asian restaurants). In this way, the restaurant app may display the filtered set of content (e.g., expensive Asian restaurants serving low-carb food). | 08-27-2015 |
20150331726 | PERSISTENT AND RESILIENT WORKER PROCESSES - In the field of computing, many scenarios involve the execution of an application within a virtual environment (e.g., web applications executing within a web browser). In order to perform background processing, such applications may invoke worker processes within the virtual environment; however, this configuration couples the life cycle of worker processes to the life cycle of the application and/or virtual environment. Presented herein are techniques for executing worker processes outside of the virtual environment and independently of the life cycle of the application, such that background computation may persist after the application and/or virtual environment are terminated and even after a computing environment restart, and for notifying the application upon the worker process achieving an execution event (e.g., detecting device events even while the application is not executing). Such techniques may heighten the resiliency and persistence of worker processes and expand the capabilities of applications executing within virtual environments. | 11-19-2015 |
20150332564 | NOISE-SENSITIVE ALERT PRESENTATION - Many devices are configured to present alerts notifying a user of device events, but the user may not notice the alert due to a noisy environment. A user may mitigate missed alerts by increasing the alert volume or choosing a vibration mode, but such techniques depend upon the knowledge, attention, and memory of the user to adjust the device before the alert. Instead, a device may compare the noise level of the environment with a noise level threshold. If the noise level is below the threshold, the device presents the alert; but if the noise level is above the threshold, the device defers the presentation of the alert until the noise level diminishes below the threshold, and then presents the alert. The device may also send an automated response to the message, notifying a sender that the user may return the message upon leaving the noisy environment. | 11-19-2015 |
20150334071 | PEER-BASED DEVICE SET ACTIONS - A device set may interoperate to perform an action, such as providing a message to a user or storing photos taken by a user. Performing the action on all available devices may cause redundancy (e.g., presenting the same message to the user on each device), and depending on user selection (e.g., the user requesting to play music and specifically designating a device) may become onerous. A centralized, server-driven selection of the device to perform the action may be problematic if the server is inaccessible and/or inaccurate if not currently informed of the current state of each device. In accordance with the techniques presented herein, a requesting device broadcasts an action invitation to the device set. Each device provides a suitability report indicating its suitability to perform the action. The requesting device identifies one or more suitable devices, and sends an action request to identified devices to perform the action. | 11-19-2015 |
20150356836 | CONVERSATION CUES WITHIN AUDIO CONVERSATIONS - In many scenarios, a device may detect one or more audio conversations, and may be capable of evaluating such audio conversations, e.g., in order to present a text transcript to a user. However, the user's attention to such audio conversations may waver, and the user may miss the audio conversation and/or an opportunity to participate in the audio conversation. Presented herein are techniques for enabling devices to assist users in such scenarios by monitoring audio conversations to detect conversation cues that pertain to the user (e.g., the user's name, names of the user's friends, and/or topics of interest to the user). Upon detecting a conversation cue within an audio conversation that pertains to the user, the device notifies the user (e.g., alerting the user that the audio conversation may be of interest, and/or presenting a text transcript of the portion of the audio conversation containing the conversation cue). | 12-10-2015 |