IP Library › Granted Patent US 12,598,240
Granted Patent B2
US 12,598,240 · App. 18/392,741 · Granted Apr 7, 2026

User interaction and task management using multiple devices

Inventors: Robert A. Sim (Bellevue, WA); Adam Fourney (Bothell, WA); Russell Allen Herring, Jr. (Sammamish, WA); Ryen William White (Woodinville, WA); Elnaz Nouri (Redmond, WA)
Assignee: Microsoft Technology Licensing, LLC
H04L67/60H04L67/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,598,240
App. No.
18/392,741
Filed
Dec 21, 2023
Granted
Apr 7, 2026
Kind
B2
Art Unit
2441
USPC
709/201
Abstract

The present disclosure provides systems and methods for user interaction and task completion using multiple devices. A set of devices may be used to perform a task, such that different devices may perform different steps of the task. A device management service may update state information at each device of the set, thereby enabling a user to interact with any of the computing devices to perform the task. A device management service may also automatically determine which device should be used by the user, based on task or step requirements, device characteristics, and device capabilities, among other examples. Thus, rather than being required to continue a task on the same device (even when the device is not well-suited for the current step or task), the user is provided with the option to use and, in some instances, is automatically transitioned to use, different devices within the set.

Claims (48)

1 . A system comprising:

at least one processor; and

memory storing instructions that, when executed by the at least one processor, causes the system to perform a set of operations, the set of operations comprising:

generating a set of task requirements, wherein the set of task requirements is generated from user input at a first computing device;

evaluating a device profile, wherein the device profile is for a device of a set of computing devices associated with a task session, and comprises device hardware characteristics and device capabilities;

generating a rank for the set of computing devices using a weighted set of evaluated factors, wherein generating the rank comprises evaluating a first device characteristic of a second computing device and a second device characteristic of a third computing device based on the set of task requirements, wherein the first device characteristic and the second device characteristic are different; and

assigning, based on the ranking, one or more computing devices to process the user input, wherein the one or more devices are different from the first computing device.

2 . The system of claim 1 , wherein the set of operations further comprises:

receiving, from the first computing device, a session state indication comprising session state information; and

providing a state update indication to the second computing device of the set of computing devices based on the session state information from the first computing device.

3 . The system of claim 1 , wherein generating a rank comprises evaluating at least one device characteristic of the first computing device and at least one device characteristic of another computing device based on a requirement associated with the first computing device.

4 . The system of claim 3 , wherein generating the rank further comprises evaluating at least one device capability of the first computing device and at least one device capability of the second computing device based on a requirement associated with the first computing device.

5 . The system of claim 1 , wherein assigning further comprises providing an indication to a third computing device that the second computing device is processing the user input.

6 . The system of claim 1 , wherein the assigning thereby causes user interaction with the one or more computing devices.

7 . The system of claim 6 , wherein the set of computing devices further comprises the third computing device, and the assigning thereby causes user interaction with both the second computing device and the third computing device.

8 . A method for initializing a task session associated with a set of computing devices, comprising:

generating a set of task requirements, wherein the set of task requirements is generated from input associated with a step of a task;

identifying, based on an identifier, a first computing device and a second computing device associated with a user;

generating a set of task requirements, wherein the set of task requirements is generated from user input at the first computing device;

generating a rank for the set of computing devices using a weighted set of evaluated factors, wherein generating the rank comprises evaluating device hardware characteristics based on the set of task requirements, device capabilities relating to functionality of the first computing device and the second computing device, and historical device information indicating previous device usage; and

assigning, based on the ranking, one or more computing devices to process the user input, wherein the one or more devices are different from the first computing device.

9 . The method of claim 8 , further comprising:

receiving, from the first computing device, a session state indication comprising session state information; and

providing a state update indication to the second computing device of the set of computing devices based on the session state information from the first computing device.

10 . The method of claim 8 , further comprising:

receiving, from the second computing device, pre-session contextual information, wherein the pre-session contextual information comprises an identifier; and

storing the pre-session contextual information.

11 . The method of claim 10 , wherein the second computing device is identified based on the stored pre-session contextual information, and wherein generating the task session further comprises analyzing the pre-session contextual information.

12 . The method of claim 8 , wherein the second computing device is identified by receiving an input comprising the identifier of the second computing device after receiving the indication from the first computing device.

13 . The method of claim 8 , wherein determining the processing computing device comprises evaluating a set of factors for each computing device based on a requirement, wherein the set of factors are selected from the group consisting of:

a computing device characteristic;

a computing device capability;

proximity of the computing device to the user;

user preference information; and

historical device usage information.

14 . A method for determining a computing device to perform a step of a task session, comprising:

generating a set of task requirements, wherein the set of task requirements are generated from user input at a first computing device;

evaluating a device profile, wherein the device profile is for a device of a set of computing devices associated with the task session, and comprises device hardware characters and device capabilities;

generating a rank for the set of computing devices using a weighted set of evaluated factors, wherein generating the rank comprises evaluating a first device characteristic of a second computing device and a second device characteristic of a third computing device based on the set of task requirements, wherein the first device characteristic and the second device characteristic are different; and

assigning, based on the ranking, one or more computing devices to process the user input, wherein the one or more devices are different from the first computing device.

15 . The method of claim 14 , further comprising:

receiving, from the first computing device, a session state indication comprising session state information; and

providing a state update indication to a second computing device of the set of computing devices based on the session state information from the first computing device.

16 . The method of claim 14 , wherein generating the rank further comprises evaluating at least one device characteristic of the first computing device and at least one device characteristic of the second computing device based on a requirement associated with the first computing device.

17 . The method of claim 14 , evaluating further comprising evaluation of at least one device capability of the first computing device and at least one device capability of the second computing device based on a requirement associated with the first computing device.

18 . The method of claim 14 , wherein assigning further comprises providing an indication to the third computing device that the processing computing device is processing the user input.

19 . The method of claim 14 , wherein the assigning thereby causing the user to interact with the one or more computing devices.

20 . The method of claim 14 , wherein the first device is determined based on at least one of historical device usage information and user preference information.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2023
From: SIM, ROBERT A.; FOURNEY, ADAM; HERRING, RUSSELL ALLEN, JR.; WHITE, RYEN WILLIAM; NOURI, ELNAZ
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 065934/0786 →
Continuity (3)
Continuation 17880290 · Aug 3, 2022
Continuation 16290445 · Mar 1, 2019
Related Publication 20240171656A1 · May 23, 2024
References Cited (22)
US 8924547B1 · Belk · 2014 [cited by examiner]
US 10055681B2 · Brown · 2018 [cited by examiner]
US 10134070B2 · Wadley · 2018 [cited by examiner]
US 10313404B2 · Ein-Gil · 2019 [cited by examiner]
US 11245609B2 · Coupal · 2022 [cited by examiner]
US 11381984B2 · Raghuramu · 2022 [cited by examiner]
US 12348568B1 · Cheng · 2025 [cited by examiner]
US 20160155077A1 · Lin · 2016 [cited by examiner]
US 20160255139A1 · Rathod · 2016 [cited by examiner]
US 20170195891A1 · Smith · 2017 [cited by examiner]
US 20210350799A1 · Hansen · 2021 [cited by examiner]
US 20240283700A1 · Liu · 2024 [cited by examiner]
CN 104823189A · 2015 [cited by applicant]
CN 105324754A · 2016 [cited by applicant]
First Office Action Received for Chinese Application No. 202080017369.7, mailed on Jan. 18, 2024, 24 pages. [cited by applicant]
Nouri, et al.,“Supporting Complex Tasks Using Multiple Devices,” Proceedings of WSDM'19 Task Intelligence Workshop, Feb. 15, 2019, pp. 1-6. [cited by applicant]
Summons to attend oral proceedings pursuant to Rule 115(1) Received for European Patent Application No. 20711679.9, mailed on Mar. 14, 2024, 13 pages. [cited by applicant]
Second Office Action Received for Chinese Application No. 202080017369.7, mailed on May 25, 2024, 7 pages (English Translation Provided). [cited by applicant]
Notice of Allowance Received for Chinese Application No. 202080017369.7, mailed on Dec. 17, 2024, 04 pages (English Translation Provided). [cited by applicant]
Brief Communication about oral proceedings Received for European Patent Application No. 20711679.9, mailed on Oct. 16, 2024, 5 pages. [cited by applicant]
Decision to refuse Received for European Patent Application No. 20711679.9, mailed on Dec. 16, 2024, 25 pages. [cited by applicant]
Intimation of Grant Received for Indian Application No. 202117038725, mailed on Jul. 23, 2024, 1 page. [cited by applicant]