Intelligent free-time search
First Claim
1. A method of programmatically scheduling a meeting, comprising steps of:
- evaluating, for each invitee of the meeting, calendar data of an electronic calendar to determine each invitee'"'"'s availability for attending the meeting in one or more allowable participation types; and
scheduling the meeting at a time and location where the invitees are determined to be available for the allowable participation types.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are disclosed for performing free-time searches that exploit information of the type used with electronic calendars. By leveraging advanced calendaring system information and using location, other context information such as corporate policy, legal constraints, and technology constraints, and user-specific preferences to provide a complete picture of a person'"'"'s availability, the functionality (and therefore the value) of scheduling systems in increased, resulting in an ability to schedule meetings with more accuracy and less rework. Various allowable participation types for meeting invitees may be specified, and each invitee'"'"'s availability is determined accordingly. Location-sensitive travel times (including optional user-specific travel time adjustments) are used in preferred embodiments when in-person participation is required.
-
Citations
39 Claims
-
1. A method of programmatically scheduling a meeting, comprising steps of:
-
evaluating, for each invitee of the meeting, calendar data of an electronic calendar to determine each invitee'"'"'s availability for attending the meeting in one or more allowable participation types; and
scheduling the meeting at a time and location where the invitees are determined to be available for the allowable participation types. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method of performing a free-time search of calendar data, comprising steps of:
-
retrieving availability information for a plurality of users;
locating free-time segments which are available in the retrieved availability information;
adjusting the located free-time segments based on one or more context-sensitive criteria which are applicable to this free-time search;
determining one or more free-time segments when each of the plurality of users is available, according to the adjusted free-time segments for each of the users; and
providing the determined free-time segments as a result of the free-time search. - View Dependent Claims (7)
-
-
8. A method of programmatically scheduling an event for a plurality of users, comprising steps of:
-
retrieving availability information for a plurality of users;
locating free-time segments which are available in the retrieved availability information;
adjusting the located free-time segments based on one or more context-sensitive criteria which are applicable to the event being scheduled;
determining one or more free-time segments when each of the plurality of users is available, according to the adjusted free-time segments for each of the users; and
providing the determined free-time segments as candidate times for scheduling the event. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A computer-implemented method of scheduling a meeting, further comprising steps of:
-
selecting one or more meeting invitees;
selecting, for each invitee, an allowable participation level;
evaluating availability information for each invitee, with reference to the allowable participation level; and
using results of the evaluating step for all invitees to determine when the meeting can be scheduled. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A system for performing a free-time search of calendar data, comprising:
-
means for retrieving availability information for a plurality of users;
means for locating free-time segments which are available in the retrieved availability information;
means for adjusting the located free-time segments based on one or more context-sensitive criteria which are applicable to this free-time search;
means for determining one or more free-time segments when each of the plurality of users is available, according to the adjusted free-time segments for each of the users; and
means for providing the determined free-time segments as a result of the free-time search. - View Dependent Claims (33)
-
-
34. A system for programmatically scheduling an event for a plurality of users, comprising:
-
means for retrieving availability information for a plurality of users;
means for locating free-time segments which are available in the retrieved availability information;
means for adjusting the located free-time segments based on one or more context-sensitive criteria which are applicable to the event being scheduled;
means for determining one or more free-time segments when each of the plurality of users is available, according to the adjusted free-time segments for each of the users; and
means for providing the determined time segments as candidate times for scheduling the event. - View Dependent Claims (35)
-
-
36. A computer program product for scheduling a meeting, the computer program product embodied on one or more computer-readable media and comprising:
-
computer-readable program code means for selecting one or more meeting invitees;
computer-readable program code means for selecting, for each invitee, an allowable participation level;
computer-readable program code means for evaluating availability information for each invitee, with reference to the allowable participation level; and
computer-readable program code means for using results of the evaluation for all invitees to determine when the meeting can be scheduled. - View Dependent Claims (37, 38)
-
-
39. A computer program product for performing a free-time search of calendar data, the computer program product embodied on one or more computer-readable media and comprising:
-
computer-readable program code means for retrieving availability information for a plurality of users;
computer-readable program code means for determining one or more free-time segments when each of the plurality of users is available, according to free-time segments represented in the retrieved availability information and one or more context-sensitive criteria which are applicable to this free-time search; and
computer-readable program code means for providing the determined free-time segments as a result of the free-time search.
-
Specification