IP Library Granted Patent US 11,961,023
Granted Patent B2
US 11,961,023 · App. 17/881,529 · Granted Apr 16, 2024

Relationship-based search

Inventors: Anirban Kundu (Redwood City, CA); Andrew Henderson Malcolm (Redwood City, CA); Amir Doron (Redwood City, CA)
Assignee: Bending Spoons S.p.A.
G06Q10/063114G06F3/0484G06F16/90335G06F16/9035G06F16/9535G06F16/9538G06Q10/103G06Q10/1095
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 11,961,023
App. No.
17/881,529
Granted
Apr 16, 2024
Kind
B2
Abstract

A computer system receives a definition of a group that includes an indication of a hierarchal rank of group members, a plurality of content items that correspond to the group, and identifying information indicating at least one group member that corresponds to a content item. A search input by a first user is detected and an indication of a hierarchal rank for the first user is stored. Determining a weight to assign to a search result includes comparing a hierarchal rank of at least one group member that corresponds to the first content item with the hierarchal rank of the first user.

Claims (66)

1. An information processing method, comprising, at a computing device:

receiving a definition of a group that includes information for a plurality of group members, an indication of a hierarchical rank of at least a subset of the group members, and a plurality of content items corresponding to the group, wherein the plurality of content items, the plurality of group members, and a plurality of tasks have many-to-many relationships;

storing, by a storage device, the definition of the group in a database in accordance with predefined database schema;

receiving a search input associated with a first task from a first user;

in response to the search input, searching the database to identify in the group a plurality of candidate members having one of a plurality of predefined relationships with the first task based on the many-to-many relationship of the content items, group members, and tasks;

assigning a first weight to a first candidate member of the plurality of candidate members, wherein the first weight is determined based on the hierarchal rank of the first candidate member;

determining a status of the first task; and

based on the status, displaying, on a user interface, information of the first task and information of the plurality of candidate members in accordance with respective weights assigned to the plurality of candidate members.

2. The method of claim 1 , wherein the first weight has an initial value, the method further comprising:

prior to assigning the first weight to the first candidate member, adjusting the initial value of the first weight in accordance with a determination of one of the following conditions:

(1) the first candidate member has a direct relationship with the first user;

(2) the hierarchal rank of the first candidate member differs from the hierarchal rank of the first user by more than a threshold amount; and

(3) the hierarchal rank of the first candidate member is the same as the hierarchal rank of the first user.

3. The method of claim 1 , wherein a subgroup of the group that includes the first user, and the first weight is determined further based on a determination whether the subgroup corresponds to a subgroup association of the first candidate member.

4. The method of claim 1 , further comprising:

receiving the information of the first task, wherein the first task corresponds to the group; and

storing, by the storage device, the information of the first task in the database in accordance with the predefined database schema.

5. The method of claim 1 , further comprising:

receiving, on the user interface, a selection of one or more members from the plurality of candidate members; and

transmitting, to the selected one or more members, a confirmation message confirming the selection of the one or more members from the plurality of candidate members based on the status.

6. The method of claim 1 , wherein the information of the first task identifies at least one group member associated with the first task, and the plurality of candidate members include the at least one group member.

7. The method of claim 1 , wherein the plurality of candidate members include at least a group member who participated in meetings that are relevant to the first task or the group or performed a search relevant to the first task or the group.

8. The method of claim 1 , further comprising:

identifying a subset of content items related to the first task; and

automatically transmitting the information of the first task and information of the subset of content items to the plurality of candidate members, wherein information of the subset of content items is displayed on the user interface.

9. The method of claim 1 , wherein the first task is updated based on a detected change of a status of one or more of the plurality of candidate members, and information of the updated first task is displayed on the user interface in response to detection of the change of the status.

10. The method of claim 1 , further comprising:

updating the user interface including the information of the first task based on a detected change of the status.

11. A computing device, comprising:

one or more processors; and

memory storing one or more programs for execution by the one or more processors, the one or more programs including instructions for:

receiving a definition of a group that includes information for a plurality of group members, an indication of a hierarchical rank of at least a subset of the group members, and a plurality of content items corresponding to the group, wherein the plurality of content items, the plurality of group members, and a plurality of tasks have many-to-many relationships;

storing, by a storage device, the definition of the group in a database in accordance with predefined database schema;

receiving a search input associated with a first task from a first user;

in response to the search input, searching the database to identify in the group a plurality of candidate members having one of a plurality of predefined relationships with the first task based on the many-to-many relationship of the content items, group members, and tasks;

assigning a first weight to a first candidate member of the plurality of candidate members, wherein the first weight is determined based on the hierarchal rank of the first candidate member;

determining a status of the first task; and

based on the status, displaying, on a user interface, information of the first task and information of the plurality of candidate members in accordance with respective weights assigned to the plurality of candidate members.

12. The computing device of claim 11 , wherein the first task was generated during a prior task, and the information of the first task includes an agenda item that is automatically generated based on the first task.

13. The computing device of claim 11 , the one or more programs further comprising instructions for automatically generating an agenda item for the plurality of candidate members, including:

determining at least one task dependency associated with the first task;

identifying a second task based on the at least one task dependency associated with the first task; and

including, in the agenda item, the information of the first task and information of the second tasks.

14. The computing device of claim 11 , the one or more programs further comprising instructions for:

obtaining task summary data of the first task; and

updating task preference data based on the task summary data; and

determining the information of the first task based on the task preference data.

15. The computing device of claim 11 , wherein determining the status includes determining at least one of a rate of execution of the first task, an amount of time remaining before an end date, a completion status, a percentage completion or an amount of time that has passed since the end date.

16. A non-transitory computer-readable storage medium, storing one or more programs configured for execution by one or more processors of a computing device, the one or more programs comprising instructions for:

receiving a definition of a group that includes information for a plurality of group members, an indication of a hierarchical rank of at least a subset of the group members, and a plurality of content items corresponding to the group, wherein the plurality of content items, the plurality of group members, and a plurality of tasks have many-to-many relationships;

storing, by a storage device, the definition of the group in a database in accordance with predefined database schema;

receiving a search input associated with a first task from a first user;

in response to the search input, searching the database to identify in the group a plurality of candidate members having one of a plurality of predefined relationships with the first task based on the many-to-many relationship of the content items, group members, and tasks;

assigning a first weight to a first candidate member of the plurality of candidate members, wherein the first weight is determined based on the hierarchal rank of the first candidate member;

determining a status of first task; and

based on the status, displaying, on a user interface, information of the first task and information of the plurality of candidate members in accordance with respective weights assigned to the plurality of candidate members.

17. The non-transitory computer-readable storage medium of claim 16 , wherein:

the first task includes a set of subtasks; and

determining the status includes determining a completion status of at least one subtask in the set of subtasks.

18. The non-transitory computer-readable storage medium of claim 16 , wherein the computing device uses machine learning to store or adjust task preference data, wherein the task preference data is based on at least one of learned user preferences and user behavior regarding generation of tasks.

19. The non-transitory computer-readable storage medium of claim 16 , wherein the computing device uses machine learning to iteratively update a task template, wherein the task template is based on task action summary data.

20. The non-transitory computer-readable storage medium of claim 16 , wherein the first weight has an initial value, the one or more programs further comprising instructions for:

prior to assigning the first weight to the first candidate member, adjusting the initial value of the first weight in accordance with a determination of one of the following conditions:

(1) the first candidate member has a direct relationship with the first user;

(2) the hierarchal rank of the first candidate member differs from the hierarchal rank of the first user by more than a threshold amount; and

(3) the hierarchal rank of the first candidate member is the same as the hierarchal rank of the first user.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2024
From: EVERNOTE CORPORATION
To: BENDING SPOONS S.P.A.
Reel/Frame 066288/0195 →
Continuity (4)
Continuation 17164673 · Feb 1, 2021
Continuation 16162150 · Oct 16, 2018
Provisional Application 62739099 · Sep 28, 2018
Related Publication 20220374817A1 · Nov 24, 2022