Patent ID: 11868969
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
Field: Computer technology (Electrical engineering)
Classification: CPC G  H | IPC G  H

Claim 14:
15. A system, comprising:
a memory for storing a computer program for managing a calendar application; and
a processor connected to the memory, wherein the processor is configured to execute program instructions of the computer program comprising:
identifying a need to optimize a calendar by a calendar client agent of the system by obtaining calendar information from a user's calendar application via an application programming interface of the user's calendar application, wherein the need to optimize the calendar is identified from the obtained calendar information based on detecting a number of scheduled events exceeding a threshold number over a period of time, detecting an overlap of scheduled events over a period of time, detecting a vacation, or detecting a duplicate scheduled event;
receiving or identifying a period of time to optimize the calendar, wherein the period of time is determined based on a period of time the calendar client agent determined that a need existed to optimize the calendar;
selecting all scheduled events in the calendar during the period of time to optimize the calendar;
extracting attendees, topics and flags for each selected scheduled event during the period of time, wherein the attendees for each selected scheduled event are extracted from the calendar information obtained from the user's calendar application via the application programming interface of the user's calendar application, wherein the topics are extracted for each selected scheduled event using natural language processing utilized by the calendar client agent, wherein the flags are extracted for each selected scheduled event from the calendar information obtained from the user's calendar application via the application programming interface of the user's calendar application, wherein action is taken by the client calendar agent in response to identifying particular flags that indicate special user action;
identifying prior collaborations with a user of the calendar involving the extracted attendees and topics of the selected scheduled events;
extracting collaboration data from the identified prior collaborations, wherein the collaboration data comprises data concerning an interaction between the user and others involving an activity;
generating a list of actions to be performed on a scheduled event of the selected scheduled events based on the extracted collaboration data;
presenting the generated list of actions to the user of the calendar to be performed on the scheduled event to the user;
determining whether the user selected an action from the list of actions; and
performing an action on the scheduled event in response to the user selecting the action from the list of actions thereby improving a functionality of calendaring systems by allowing the user to better manage the user's scheduled events in the user's calendar.