Proactively displaying event-related information on search page
By automatically obtaining and displaying event information related to users in the personal information manager, the problem of users' difficulty in concentrating when information is overloaded is solved, and more efficient event preparation and participation is achieved.
Patent Information
- Application Number
- CN202411642419.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2019-04-25
- Filing Date
- 2020-03-30
- Publication Date
- 2025-03-11
AI Technical Summary
Existing personal information managers find it difficult to actively provide user-related event information when handling information overload, making it difficult for users to concentrate when facing multitasking or meetings.
By receiving user input requests, event information related to users is automatically obtained and displayed on the search page, including event participants, related files and dialogue information. Users can further obtain detailed information by selecting relevant UI elements.
It realizes that the user-related event information is automatically provided without additional user input, helping users better prepare and participate in events and reducing the distraction caused by information overload.
Smart Images

Figure CN119597983A_ABST
Abstract
Description
[0001] This application is a divisional application of the invention patent application "Actively display relevant information related to the event on the search page" with an application date of March 30, 2020 and application number 202080031039.3. Technical Field
[0002] The present invention generally relates to providing information to users. Background Art
[0003] Computing technology has changed and will continue to change our world in many important ways. Modern computing technology has significantly increased the amount of information available to many people, among other things. This has brought tremendous benefits to society. For example, learning new topics has become greatly simplified due to the vast amount of educational and reference material available via the Internet. In addition, people have more choices than ever before about news sources. Communication technology has also increased the speed with which information can be exchanged with others. People around the world can now exchange files via the Internet in seconds, rather than waiting days for a distant colleague to receive the file.
[0004] Despite these benefits, the explosion in available information also has downsides. The term “information overload” is often used to describe what happens when people are faced with more information than they can effectively process. Many people experience information overload when they consider how many messages they receive each day (e.g., emails, text messages, voice messages) and how many additional sources of information related to work or other interests are available (e.g., websites, blog posts, books). Social media can also contribute to information overload, as many people feel pressured to read and comment on social media posts from friends, family, and coworkers. Current research suggests that information overload can have adverse effects not only on personal well-being, but also on decision-making, innovation, and productivity.
[0005] Some people use software to manage information related to their work and other aspects of their lives. One type of software application that is widely used today is generally referred to as a personal information manager. A personal information manager helps to record, track, and manage certain types of information about a person's life. A personal information manager may include one or more of an email client, a calendar, a contact manager, a task manager, and a note-taking function.
[0006] However, the use of personal information managers does not necessarily solve the problem of information overload. Consider a simple example in which a worker is invited to a meeting. The organizer of the meeting may send the worker an email that includes a calendar invitation for the meeting, and when the worker accepts the calendar invitation, the meeting may be automatically scheduled as an event on the calendar within the worker's personal information manager. However, after the worker accepts the calendar invitation, a stream of additional information (including emails, text messages, phone calls, and social media notifications) may distract the worker. This may cause the worker to forget about the meeting altogether, or at least prevent the worker from preparing for the meeting (e.g., by reviewing related documents or emails). Even if the calendar event includes a reminder, such a reminder is typically provided only a few minutes before the meeting starts. By then, it may be too late for the worker to fully prepare for the meeting. Summary of the invention
[0007] According to one aspect of the present disclosure, a method for proactively providing information about an event involving the user to a user is disclosed. The method includes receiving a user input indicating a request for displaying a search page and displaying the search page in response to the user input. The method also includes automatically acquiring event information about the event involving the user in response to the user input and automatically displaying the event information on the search page.
[0008] The event information may include at least one of participant information of a participant of the event other than the user, file information of a file related to the event, or conversation information of a conversation related to the event.
[0009] The method may also include displaying a user interface element associated with the event information, receiving additional user input selecting the user interface element, and displaying additional event information in response to the additional user input selecting the user interface element.
[0010] In some embodiments, the event information may include a message notifying the user that there will be at least one potential new contact at the event. The additional event information may include at least one of the names of the participants of the event, the positions of the participants, the departments where the participants work, or the contact information of the participants.
[0011] In some embodiments, the event information may include a message about a file that the user should view before the event. The additional event information may include at least one of a file name corresponding to the file or a preview of the file.
[0012] In some embodiments, the event information may include information about an email conversation that the user should review before the event. The additional event information may include at least one of a subject line associated with the email conversation or at least some portion of a message body of an email message belonging to the email conversation.
[0013] The event may be an upcoming event or a past event. If the event is an upcoming event, the method further includes displaying a quick action associated with the event. If the event is a past event, the method further includes displaying a summary of the event.
[0014] This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
[0015] Additional features and advantages will be set forth in the following description. The features and advantages of the present disclosure may be realized and obtained by the systems and methods particularly pointed out in the appended claims. The features of the present disclosure may become more apparent from the following description and the appended claims, or may be learned by the practice of the disclosed subject matter as set forth below. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] In order to describe the manner in which the above and other features of the present disclosure can be obtained, a more specific description will be given by reference to the specific embodiments thereof shown in the accompanying drawings. It will be understood by those skilled in the art that the accompanying drawings represent only examples of specific embodiments, including examples of user interface pages that can be used to implement the inventive systems and methods disclosed herein. However, the disclosed systems and methods can be implemented in other specific forms without departing from the scope of the present disclosure.
[0017] For better understanding, the same elements are indicated by the same reference numerals in the various drawings. It is to be understood that the drawings depict some example embodiments, which will be described and explained with additional specificity and detail through the use of the drawings, in which:
[0018] Figure 1A An example of a page that may be displayed by a personal information manager is illustrated, the page including a search icon.
[0019] Figure 1B Illustrated is an example of a search page that may be displayed in response to a user selection of a search icon and event information that may be automatically displayed on the search page.
[0020] Figure 1C An example is shown, which combines Figure 1B The search page shown in shows additional information that may be displayed in response to a user selection of a user interface element related to event attendee information.
[0021] Figure 1D Illustrated is additional information about a particular event attendee that may be displayed in response to a user selection of a user interface element associated with the event attendee.
[0022] Figure 1E An example is shown, which combines Figure 1B The illustrated search page shows additional information that may be displayed in response to a user selection of a user interface element related to file information.
[0023] Figure 1F Illustrated are examples of previews of files that may be displayed in response to a user selection of a user interface element associated with the file.
[0024] Figure 1G An example is shown, which combines Figure 1B The illustrated search page shows additional information that may be displayed in response to a user selection of a user interface element related to email conversation information.
[0025] Figure 1H Illustrated is additional information about the particular email conversation that may be displayed in response to a user selection of a user interface element associated with the email conversation.
[0026] Figure 2 Illustrated is an example of event information that may be automatically displayed on a search page in conjunction with past events.
[0027] Figure 3 illustrates examples of components that may be used to implement some aspects of the disclosure.
[0028] Figure 4 An example of a method for proactively providing information about events involving the user to a user according to the present disclosure is illustrated.
[0029] Figure 5 An example of a system including a personal information manager on a computing device in electronic communication with a server is illustrated.
[0030] Figure 6 Some components that may be included within a computing system are illustrated. DETAILED DESCRIPTION
[0031] The present disclosure generally relates to proactively providing information to a user about events involving the user. For the purposes of the technology disclosed herein, it will be assumed that a software application such as a personal information manager is used to manage information related to various aspects of a user's life. The software application includes a search function that enables a user to search for information (e.g., emails, calendar events, tasks, contact information, notes) stored in conjunction with a user account (e.g., information stored in a user's mailbox). According to the present disclosure, when a user takes some action that causes the software application to display a search page (e.g., clicking a search icon on the application's home page), the software application automatically determines relevant information related to events involving the user and displays the event information on the search page. In other words, upon receiving user input indicating a request to display a search page, the software application automatically displays the event information on the search page without any additional user input.
[0032] The event for which event information is displayed may be an upcoming event (i.e., an event scheduled to occur at some point in the future) or a past event (i.e., an event that has already occurred). In this context, the term "event information" includes any relevant information related to the event. Many different types of event information may be displayed. Some examples include information about one or more participants (other than the user) in the event, information about one or more files related to the event, and information about one or more conversations related to the event (e.g., email conversations, instant messaging conversations, chat application conversations).
[0033] Event information may include information that helps make the event more efficient for the user. For example, the software application may scan a list of people scheduled to attend the event (e.g., included in a calendar invitation to the event) and determine whether the event attendee is included in the user's contact list or recent contact history. If a person scheduled to attend the event is determined, and the person is not included in the user's contact list or recent contact history, the software application may infer that the user has not met the person before and display a message indicating that there will be a potential new contact at the event (e.g., "You will meet 1 new person...").
[0034] Event information can be structured and presented in a way that a user can "drill down" into event information that the user is particularly interested in. In some embodiments, event information can be displayed in conjunction with one or more user interface (UI) elements (e.g., buttons). If a user wants to learn more about a certain type of event information, the user can simply select the UI element (e.g., by tapping or clicking the UI element) to call up additional event information including more details.
[0035] Consider the example mentioned above, where the event information includes a message indicating that there will be a potential new contact at the event. The message can be displayed in conjunction with a UI element such as a button. The name of the potential new contact can also be displayed. If the user wants to know more about this potential new contact, the user can select the corresponding UI element. This will result in the display of additional information about the potential new contact (e.g., the position of the new contact, the department where the new contact works). The additional information can also be displayed in conjunction with a UI element, and the user can select the UI element to display more information about the potential new contact (e.g., the email address and phone number of the new contact, a link to establish contact with the new contact on social media).
[0036] As another example, assume that the event information includes information about one or more files related to the event. Initially, a message about the files can be displayed (e.g., "You have 3 files to view..."). The user can select a UI element associated with the message to find out additional information about the files, such as the file names. The user can select a UI element associated with a particular file name to cause a preview of the corresponding file to be displayed.
[0037] As yet another example, assume that the event information includes information about one or more conversations related to the event. In this case, the term "conversation" refers to any type of message exchange between multiple people. Some examples of conversations include email conversations, instant messaging conversations, and conversations in chat applications.
[0038] Initially, a message about the conversations may be displayed (e.g., "You have 2 email conversations to review..."). The user may select a UI element associated with the message to find out additional information about those conversations, such as subject lines associated with the email conversations. The user may select a UI element associated with a particular conversation to cause at least some portion of the message body of the messages belonging to that conversation to be displayed.
[0039] The event information may include quick actions associated with the event. For example, if the event is an online meeting scheduled to occur at some point in the future, the event information may include a link to join the online meeting. When the meeting ends, another quick action may be displayed that prompts the user to take notes about the meeting. If the event is a past event, the event information may include an event summary. Some examples of information that may be included in the event summary include notes that event participants have taken and any action items decided during the event.
[0040] Figures 1A-1H Illustrated are examples of various aspects of a user interface of a software application that may be configured to proactively provide information about events to a user in accordance with the present disclosure. Figures 1A-1FIn the examples shown, it will be assumed that the software application is a personal information manager (PIM) that includes (at least) an email client, a calendar, a task manager, a contact manager, and a note-taking function. It will also be assumed that the user interface of the PIM is displayed on a mobile computing device, such as a smartphone. However, the techniques disclosed herein can be used in conjunction with other types of software applications and other types of computing devices, and the scope of the present disclosure should not be limited to PIMs or mobile computing devices.
[0041] Figure 1A Illustrated is a page 102a of a PIM displaying email messages currently in a user's inbox. This page 102a may be referred to herein as an email page 102a. The PIM includes a search function that enables a user to search for information stored by the PIM (e.g., email messages, calendar events, tasks, contact information, notes). Page 102a includes a search icon 104. A user of the PIM may select the search icon 104 by, for example, tapping on the search icon 104. User selection of the search icon 104 causes a search page 102b to be displayed, as shown in FIG. Figure 1B as shown in .
[0042] In response to a user selection of the search icon 104, the PIM automatically determines information about an event involving the user and displays the event information on the search page 102b. In this context, the term "automatically" means that no additional user input is required. Thus, in response to a user selection of the search icon 104, the PIM determines event information and displays the event information without any additional user input. In other words, the user does not need to search for information about the event in order for the event information to be displayed. Instead, in response to a user selection of the search icon 104, the event information is automatically displayed to the user.
[0043] exist Figure 1B In the example shown, the event is a meeting scheduled to occur in the future, and the event information is included in a window 106 displayed on the search page 102b. The window 106 includes a plurality of UI elements, which in the depicted example are buttons 108a-d. Each of the buttons 108a-dz includes some information about the event.
[0044] The first button 108a includes information about the participants of the event (other than the user). In particular, the first button 108a includes a message indicating that the user will meet new people at the event. There are several different ways to make this determination. As an example, the PIM can scan a list of people scheduled to attend the event (e.g., included in a calendar invitation to the event) and determine whether the event attendee is included in the user's contact list. As another example, the PIM can determine whether the user knows his or her contacts based on the user's recent interactions with the person scheduled to attend the event. Information about the user's recent interactions with his or her contacts can be obtained from various sources, such as the user's contact history cache, connection map, etc. In the depicted example, the PIM has identified two people who are scheduled to attend the event and are not included in the user's contact list or recent contact history. The message on the first button 108a includes the name of one of these people.
[0045] The second button 108b includes information about files related to the event, and the third button 108c includes information about email conversations related to the event. In particular, the second button 108b includes a message indicating that there are files that the user should view before the event, and the third button 108c includes a message indicating that there are email conversations that the user should view before the event. There are many different ways to identify these files and conversations. For example, the PIM can scan calendar invitations for the event and infer that any files and / or conversations attached to the calendar invitations are relevant and should be viewed before the event. As another example, machine learning and artificial intelligence techniques can be used to identify relevant files and conversations. The PIM itself can be configured to utilize such techniques, and / or the PIM can coordinate with one or more other applications that are configured to utilize such techniques. In the depicted example, two relevant files and three relevant email conversations have been identified.
[0046] The fourth button 108d includes a quick action associated with the event. In the depicted example, the event is an online meeting and the quick action includes a link to join the online meeting. In other words, the user can join the online meeting by selecting the fourth button 108d. The PIM itself may include a function that enables the user to join the online meeting, or the user selection of the fourth button 108d may cause the PIM to launch another application that includes such a function. In an alternative embodiment, other types of quick actions may be displayed. For example, if the event is a telephone conference, the quick action may include a link to join the call. As another example, the quick action may include one or more links to social media pages associated with other event participants.
[0047] Window 106 also includes a UI element in the form of a bar 110 that enables the user to dismiss window 106. If the user wants to search for other information rather than prepare for an event, the user can dismiss window 106 by sliding bar 110 upwards.
[0048] However, if the user does want to prepare for the event, the user can select one or more of the buttons 108a-d to find out more information about any type of event information displayed in the window 106. For example, if the user wants to learn more about the people the user will meet at the event, the user can select the first button 108a. This can cause the window 106 with all of the buttons 108a-d to be replaced by a window 112 that includes additional information about the people the user will meet at the event, such as Figure 1C shown.
[0049] As described above, in the depicted example, the PIM has identified two people who are scheduled to attend the event and who are not included in the user's contact list or recent contact history. Window 112 includes two additional buttons 114a-b, each corresponding to one of the potential new contacts. Window 112 includes more information about these new contacts than was displayed in previous window 106. In particular, while previous window 106 included a message indicating that the user will meet two new people at the event and providing the name of one of these individuals, Figure 1C The window 112 shown in FIG. 1 includes additional information about the two individuals (e.g., name, title, and department). The window 112 also includes a bar 116 that enables the user to close the window 112, and another UI element in the form of a navigation arrow 126 that enables the user to return to the previously displayed window 106.
[0050] The user may also be allowed to find out more information about one or both of the individuals whose names are displayed on buttons 114a-b. For example, if the user selects Figure 1C The second button 114b shown in FIG. Figure 1C The search page 102b and window 112 shown in FIG. 1 may be replaced by another page 102c including additional information about the individual, such as Figure 1D as shown in . Figure 1D The page 102c shown in the window 112 may be referred to herein as a contact page 102c. The contact page 102c may include more information about the individual than is displayed in the previously shown window 112. For example, the contact page 102c may include contact information 118 (e.g., email address, phone number, instant messaging address), information 120 about social media pages corresponding to the individual, information 122 about the individual's supervisor within the organization, and email messages 124 that one or more users have previously received from the individual.
[0051] The contact page 102c may also include additional UI elements that the user may select to display more information about the individual. In the depicted example, these additional UI elements take the form of navigation arrows 128a-d. For example, a user may select navigation arrow 128a to find additional contact information about the individual. Another navigation arrow 128b may be selected to navigate to a social media site that is related (or at least potentially related) to the individual. Other navigation arrows 128c-d may be selected to find out more information about the individual's supervisor and / or the department where the individual works.
[0052] Thus, event attendee information may be presented in a manner that enables a user to "drill down" to specific individuals who are of particular interest to the user. Figure 1B The window 106 shown in FIG. 1 includes a button 108 a with high-level information about the event participants (e.g., a message indicating that the user will meet new people at the event). By selecting the button 108 a, the user can Figure 1C Additional information about at least some of the event participants (e.g., name, title, department) is shown in the window 112. By selecting one of the buttons 114a-b corresponding to a particular individual in the window 112, more information about that individual can be displayed in the Figure 1D The contact page 102c is shown.
[0053] Other types of event information can be constructed in a similar manner. Again, briefly refer to Figure 1B , assuming the user selects the second button 108b, which includes information about files related to the event. This may make Figure 1B The window 106 shown in FIG. 1 is replaced by a window 130 including additional information about those files, such as Figure 1E Window 112 includes more information about the related files than previously displayed in window 106. In particular, although previously window 106 included a message indicating that there were three files that the user should review before the event, Figure 1E The window 130 shown in FIG. 1 contains the specific file name. The window 112 includes three additional buttons 132a-c, each button including a file name corresponding to one of the associated files.
[0054] You can also allow users to see previews of related files. For example, Figure 1E The first button 132a shown in FIG. 1 corresponds to a file named "Meeting Agenda". If the user selects the first button 132a, then Figure 1E The search page 102b and window 130 shown may be replaced by another page 102d including a preview of the "Meeting Agenda" document, such as Figure 1F shown.
[0055] If the user selects Figure 1B The third button 108c shown in FIG. 1 includes information about an email conversation related to the event, which can cause Figure 1B The window 106 shown in FIG. 1 is replaced by a window 134 including additional information about those email conversations, such as Figure 1G Window 134 includes more information about the related email conversations than was displayed in previous window 106. In particular, although previous window 106 includes a message indicating that there are three email conversations that the user should review before the event, Figure 1G The window 134 shown in FIG. 1 includes subject lines associated with these email conversations. The window 112 includes three additional buttons 136a-c, each button including a subject line corresponding to one of the related email conversations.
[0056] If the user is interested in finding out more information about any of these email conversations, the user can select one or more of the buttons 136a-c. Figure 1G The first button 136a shown in FIG. 1 corresponds to an email conversation titled "Meeting on Friday?" If the user selects the first button 136a, then Figure 1G The search page 102b and window 134 shown in FIG. 1 may be replaced by another page 102e that includes at least some portion of the message body of the email message, such as Figure 1H as shown in .
[0057] exist Figures 1A-1H In the example shown, the event is an upcoming event. However, information about past events can also be displayed according to the present disclosure. Figure 2 An example is illustrated in which information about past events involving a user is automatically displayed on a search page 202 b. As previously described, event information can be automatically determined and displayed in response to a user selection of a search icon 204 on the search page 202 b. The event information is included in a window 206 displayed on the search page 202 b. The window 206 includes a plurality of UI elements, such as buttons 208 a-b, both of which include some information about the event.
[0058] In the depicted example, the first button 208a includes a link to the event summary. The user can select the first button 208a to view the event summary. When the user selects the first button 208a, the event summary can be displayed in a separate window (not shown). Some examples of information that can be included in the event summary include notes that event participants (including participants other than the user) have made and any action items decided during the event. The second button 208b includes a link to the note feature of the PIM (or a separate note application) that allows the user to write additional notes about the event.
[0059] Figure 3 340. The present invention provides an example of a component that can be used to implement some aspects of the present disclosure. As described above, the technology disclosed herein can be implemented by a software application such as a personal information manager (PIM) 340. The PIM 340 can include a user interface component 342 that is configured to create and manage a user interface through which a user interacts with the PIM 340. The user interface component can be configured to create and display pages (such as the pages 102a-e, 202b described above) with various UI elements (such as the search icons 104, 204, windows 106, 112, 130, and buttons 108a-d, 114a-b, 132a-c described above).
[0060] The PIM 340 may also include a component configured to determine information about an event involving a user. This component may be referred to herein as an event identification component 344. As described above, event information 348 may be automatically determined and displayed in response to receiving a user input 346 indicating a request for displaying the search page 102b. The user interface component 342 may include a component that detects user input. This component may be referred to herein as a user input detector 350. The user input detector 350 may be configured to detect a user input 346 indicating a request for displaying the search page 102b. For example, the user input detector 350 may be configured to detect a user selection of a search icon 104 on another page 102a displayed by the PIM 340. If this type of user input 346 is detected, a notification 352 about the user input 346 may be provided to the event identification component 344. In response, the event identification component 344 may return event information 348 that should be displayed to the user on the search page 102b. The user interface component 342 is shown having a message generator 374 for providing functionality for displaying event information 348 on the search page 102b.
[0061] Event identification component 344 can obtain event information 348 from various sources. For example, PIM 340 can include calendar 354, and event identification component 344 can obtain calendar data 356 from calendar 354. Alternatively or additionally, event identification component 344 can obtain calendar data 356 from one or more other applications or services outside PIM 340. Event identification component 344 can analyze calendar data 356 to identify information about events involving users. Some examples of the types of information about future events that calendar data 356 can provide include the time when the event will occur, the place where the event will occur, and the people scheduled to attend the event. Similar information about past events can also be provided. In addition, other information, such as event summaries (e.g., decisions made, action items assigned), can also be provided. In some cases, calendar data 356 about an event can include files and / or conversations related to the event. Such files and / or conversations can be included as attachments to calendar invitations sent to users to schedule events.
[0062] The PIM 340 may also include a contact manager 358, and the event identification component 344 may obtain contact data 360 from the contact manager 358. Alternatively or additionally, the event identification component 344 may obtain the contact data 360 from one or more other applications or services external to the PIM 340. The contact data 360 may include information about individuals included in one or more contact lists maintained by the user. Some examples of the kinds of information that the contact data 360 may provide about a particular person include the person's name, the person's contact information (e.g., email address, phone number, instant messaging number), the name of the organization that the person works for, the person's job title within the organization, and the department that the person works for within the organization. The event identification component 344 may analyze the contact data 360 to determine various aspects of the event information displayed to the user, such as whether the user may have previously met a person who is scheduled to attend a particular event.
[0063] The PIM 340 may also include a task manager 362, and the event recognition component 344 may obtain task data 364 from the task manager 362. Alternatively or additionally, the event recognition component 344 may obtain task data 364 from one or more other applications or services external to the PIM 340. The task data 364 may include information about tasks included in one or more task lists maintained by the user. The event recognition component 344 may analyze the task data 364 to determine additional information about events included in the calendar data 356, such as files and / or conversations related to the event. The task data 364 may also include information about additional events not included in the calendar data 356.
[0064] The PIM 340 may also include a note manager 366, and the event recognition component 344 may obtain note data 368 from the note manager 366. Alternatively or additionally, the event recognition component 344 may obtain the note data 368 from one or more other applications or services external to the PIM 340. The note data 368 may include information about notes that the user has created. The event recognition component 344 may analyze the note data 368 to determine additional information about events included in the calendar data 356. The note data 368 may also include information about additional events that are not included in the calendar data 356.
[0065] Event identification component 344 may also search stored files 370 and stored conversations 372 for files and conversations related to events involving the user. As described above, machine learning and artificial intelligence techniques may be utilized to identify relevant files and conversations. In some embodiments, event identification component 344 (or another component within PIM 340) may be configured to utilize such techniques. Alternatively or additionally, PIM 340 may coordinate with one or more other applications configured to utilize such techniques.
[0066] Figure 4 An example of a method 400 for proactively providing information to a user about events involving the user according to the present disclosure is shown. The method 400 may be implemented by a software application such as a personal information manager that facilitates recording, tracking, and managing certain types of information about a person's life.
[0067] Step 402 of method 400 includes receiving user input 346 indicating a request to display a search page 102b. In some embodiments, this may include detecting a user selection of a search icon 104 on another page 102a of the user interface (i.e., a page 102a other than the search page 102b). Step 404 of method 400 includes displaying the search page 102b in response to the user input 346.
[0068] Step 406 of method 400 includes automatically obtaining event information 348 about an event involving the user in response to user input 346. In some embodiments, the personal information manager may determine event information 348 (e.g., as described above in conjunction with Figure 3 Alternatively, the personal information manager may obtain the event information 348 by sending a request for the event information 348 to the server. This will be described below in conjunction with Figure 5 Describe in more detail.
[0069] Step 408 of method 400 includes automatically displaying event information 348 on search page 102b. As described above, in this context, the term "automatically" means that no additional user input is required. Thus, in response to receiving user input 346 indicating a request to display search page 102b (in step 402), the software application obtains event information 348 (in step 406) and displays the event information on search page 102b (in step 408) without any additional user input.
[0070] Many different types of event information 348 may be displayed. Some examples of event information 348 include participant information (information about one or more participants in the event other than the user), file information (information about one or more files related to the event), and conversation information (information about one or more conversations related to the event).
[0071] Step 410 of method 400 includes displaying one or more UI elements associated with event information 348, such as Figure 1B . Buttons 108a-d each include some event information 348. Step 412 includes receiving additional user input selecting one or more of the UI elements. Step 414 includes displaying additional event information in response to the additional user input selecting the UI element.
[0072] For example, assume that step 410 includes displaying a UI element (e.g., button 108a, such as Figure 1B ), the element includes a message indicating that the user will meet new people at the event, and step 412 includes receiving additional user input selecting the UI element. In this example, step 414 may include displaying additional event information, such as the name of the new person the user will meet, their position, the department they work in, their contact information, etc. In some embodiments, the additional event information may be displayed in successive stages, as described above in conjunction with Figure 1C and 1D described.
[0073] As another example, assume that step 410 includes displaying a UI element (e.g., button 108b, such as Figure 1B ), which includes information about one or more files that the user should view before the event, and step 412 includes receiving additional user input selecting the UI element. In this example, step 414 may include displaying additional event information, such as the file name and / or preview of the file that should be viewed. In some embodiments, the additional event information may be displayed in successive stages, as described above in conjunction with Figure 1E and Figure 1F described.
[0074] As another example, assume that step 410 includes displaying a UI element (e.g., button 108c, such as Figure 1B ), the UI element includes messages about one or more conversations that the user should view before the event, and step 412 includes receiving additional user input selecting the UI element. In this example, step 414 may include displaying additional information about the conversation (e.g., a subject line associated with an email conversation). If the user selects a particular conversation, certain portions of the message body of the messages belonging to that conversation may be displayed. In some embodiments, as described above in conjunction with Figure 1G and Figure 1H As described above, the additional event information may be displayed in successive stages.
[0075] Step 416 of method 400 includes displaying shortcut actions associated with the event. If the event is a future event, step 416 may be performed. For example, if the event is an online meeting scheduled to occur at a certain point in the future, step 416 may include displaying a link to join the online meeting.
[0076] Step 418 of method 400 includes displaying a summary of the event. This step 418 may be performed with respect to past events, i.e., events that have already occurred. Some examples of information that may be included in the event summary include notes that event participants have taken and any action items decided during the event.
[0077] Figure 5 An example of a system 500 is illustrated that includes a personal information manager (PIM) 540 on a computing device 576. The PIM 540 is in electronic communication with a server 578. Communications between the PIM 540 and the server 578 may occur via one or more computer networks, which may include the Internet.
[0078] As described above, PIM 540 can be configured to receive user input 546 indicating a request to display a search page, and display the search page in response to the user input. PIM 540 can also be configured to obtain event information 548 about an event involving the user in response to user input 546. To obtain event information 548, PIM 540 can send request 580 to server 578.
[0079] Server 578 may receive request 580 from PIM 540. In response to receiving request 580, server 578 may determine event information 548. Server 578 is shown as having event identification component 544. Event identification component 544 may be similar to the above in conjunction with Figure 3540. For example, event recognition component 544 can analyze data from various sources to determine event information 548. These sources can include, for example, calendar data 556 from calendar 554, contact data 560 from contact manager 558, task data 564 from task manager 562, and note data 568 from note manager 566. Event recognition component 544 can also analyze stored files 570 and stored conversations 572 to determine event information 548. Calendar data 556, contact data 560, task data 564, note data 568, files 570, and conversations 572 can be associated with a user of PIM 540.
[0080] Once the event information 548 has been determined, the server 578 may send the event information 548 to the PIM 540. The PIM 540 may receive the event information 548 from the server 578 and display the event information 548 on a search page.
[0081] PIM 540 may automatically obtain event information 548 from server 578 and automatically display event information 548 in response to user input 546. In other words, once user input 546 has been received, PIM 540 may send request 580 to server 578 and receive event information 548 from server 578 without any additional user input.
[0082] The computing device 576 can be any electronic device including a memory and a processor configured to follow instructions stored in the memory to perform a sequence of mathematical and logical operations. Some examples of computing devices that can be used in conjunction with the disclosed embodiments include desktop computers, laptop computers, smart phones, tablet computers, smart watches, virtual reality headsets, and fitness trackers.
[0083] The server 578 can be implemented using a single computing device or multiple computing devices. In some embodiments, the server 578 can be implemented as a distributed computing system (e.g., a cloud computing system) whose components are located on multiple computing devices. For example, a distributed computing system may include multiple different processing, memory, storage, and communication components connected through one or more communication networks. The various components of the distributed computing system can communicate with each other to coordinate their actions.
[0084] As mentioned above, the techniques disclosed herein may be implemented by a software application such as a personal information manager. Figure 6 Illustrated are certain components that may be included within computing system 600 upon which such software applications may run.
[0085] The computing system 600 includes a processor 601. The processor 601 may be a general-purpose single-chip or multi-chip microprocessor (e.g., an Advanced RISC (Reduced Instruction Set Computer) Machine (ARM)), a special-purpose microprocessor (e.g., a digital signal processor (DSP)), a microcontroller, a programmable gate array, etc. The processor 601 may be referred to as a central processing unit (CPU). Figure 6 Only a single processor 601 is shown in the computing system 600 , but in an alternative configuration, a combination of processors (eg, an ARM and DSP) could be used.
[0086] The computing system 600 also includes a memory 603 in electronic communication with the processor 601. The memory 603 may be any electronic component capable of storing electronic information. For example, the memory 603 may be embodied as a random access memory (RAM), a read-only memory (ROM), a magnetic disk storage medium, an optical storage medium, a flash memory device in a RAM, an onboard memory included in the processor 601, an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM) memory, a register, etc., including combinations thereof.
[0087] Instructions 605 and data 607 may be stored in memory 603. Instructions 605 may be executed by processor 601 to implement some or all of the methods, steps, operations, actions, or other functions disclosed herein. For example, instructions 605 may be executed by processor 601 to implement Figure 4 Execution of the instructions 605 may involve the use of data 607 stored in the memory 603. Unless otherwise specified, any of the various examples of modules and components described herein may be implemented in part or in whole as instructions 605 stored in the memory 603 and executed by the processor 601. Any of the various examples of data described herein may be in the data 607 stored in the memory 603 and used during execution of the instructions 605 by the processor 601.
[0088] The computing system 600 may also include one or more communication interfaces 609 for communicating with other electronic devices. The communication interface 609 may be based on wired communication technology, wireless communication technology, or both. Some examples of the communication interface 609 include a universal serial bus (USB), an Ethernet adapter, a wireless adapter operating according to the Institute of Electrical and Electronics Engineers (IEEE) 802.11 wireless communication protocol, Wireless communication adapter and infrared (IR) communication port.
[0089] The computing system 600 may also include one or more input devices 611 and one or more output devices 613. Some examples of input devices 611 include keyboards, mice, microphones, remote control devices, buttons, joysticks, trackballs, touchpads, and light pens. One specific type of output device 613 that is typically included in the computing system 600 is a display device 615. The display device 615 used with the embodiments disclosed herein may utilize any suitable image projection technology, such as a liquid crystal display (LCD), a light emitting diode (LED), gas plasma, electroluminescence, and the like. A display controller 617 may also be provided for converting data 607 stored in the memory 603 into text, graphics, and / or moving images (as appropriate) shown on the display device 615. The computing system 600 may also include other types of output devices 613, such as speakers, printers, and the like.
[0090] The various components of the computing system 600 may be coupled together via one or more buses, which may include a power bus, a control signal bus, a status signal bus, a data bus, etc. For clarity, the various buses are described in Figure 6 This is shown as bus system 619 .
[0091] The techniques described herein may be implemented in hardware, software, firmware, or any combination thereof, unless specifically described as being implemented in a particular manner. Any features described as modules, components, etc. may also be implemented together in an integrated logic device or separately as discrete but interoperable logic devices. If implemented in software, these techniques may be implemented at least in part by a non-transitory computer-readable medium having computer-executable instructions stored thereon, which, when executed by at least one processor, perform some or all of the steps, operations, actions, or other functions disclosed herein. Instructions may be organized into routines, programs, objects, components, data structures, etc., which may perform specific tasks and / or implement specific data types, and may be combined or distributed as desired in various embodiments.
[0092] Without departing from the scope of the claims, the steps, operations and / or actions of the methods described herein may be interchangeable with each other. In other words, unless the normal operation of the described method requires a specific order of steps, operations and / or actions, the order and / or use of specific steps, operations and / or actions may be modified without departing from the scope of the claims.
[0093] In one example, the term "determining" (and its grammatical variations) encompasses a variety of actions, and thus, "determining" may include calculating, computing, processing, deriving, investigating, searching (e.g., searching in a table, database, or other data structure), ascertaining, etc. Furthermore, "determining" may include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory), etc. Furthermore, "determining" may include resolving, selecting, choosing, establishing, etc.
[0094] The terms "comprising," "including," and "having" are intended to be inclusive, and mean that additional elements may be present in addition to the listed elements. Furthermore, it should be understood that reference to "one embodiment" or "an embodiment" of the present disclosure is not intended to be interpreted as excluding the existence of additional embodiments that also incorporate the described features. For example, any element or feature described with respect to an embodiment herein may be combined with any element or feature of any other embodiment described herein, where compatible.
[0095] The present disclosure may be implemented in other specific forms without departing from its spirit or features. The described embodiments are considered to be illustrative rather than restrictive. Therefore, the scope of the present disclosure is indicated by the appended claims rather than by the foregoing description. Changes within the equivalent meaning and scope of the claims should be included within their scope.
Claims
1. A method for proactively presenting information associated with an event involving a user, the method comprising: receiving, at a client device of the user, a selection of a search icon associated with presenting event information for an event associated with the user; Obtaining event information about an upcoming event associated with the user, wherein obtaining the event information comprises: in response to receiving the selection of the search icon and without receiving additional input other than the selection of the search icon: identifying a calendar invitation for the upcoming event; identifying at least one email conversation associated with the calendar invitation; identifying at least one file associated with the calendar invitation; and identifying at least one contact from the contacts database included in the calendar invitation based on the at least one contact in the contacts database not being included in a contacts list of the user of the client device; and An event icon is generated and presented within a graphical user interface of a search page displayed on the client device, the event icon comprising a plurality of selectable icons, each selectable icon being associated with one of the at least one email conversation associated with the calendar invitation and the at least one file associated with the calendar invitation.
2. The method according to claim 1, further comprising: detecting a selection of a selectable icon from the plurality of selectable icons associated with the identified at least one email conversation; as well as The at least one email conversation is caused to be displayed on the client device.
3. The method according to claim 1, further comprising: detecting a selection of a selectable icon from the plurality of selectable icons associated with the identified at least one file associated with the calendar invitation; as well as The at least one file is caused to be displayed on the client device.
4. The method according to claim 1, wherein: identifying the at least one email conversation associated with the calendar invitation is based on the at least one email conversation being attached to the calendar invitation, and Wherein identifying the at least one file associated with the calendar invitation is based on the at least one file being attached to the calendar invitation.
5. The method according to claim 1, further comprising: detecting a selection of a selectable icon from the plurality of selectable icons associated with the at least one file associated with the calendar invitation; as well as Based on the detected selection of the selectable icon, providing for display of a preview of the at least one file associated with the calendar invitation, the display of the preview being presented within the graphical user interface of the displayed search page.
6. The method according to claim 1, further comprising: detecting a selection of a selectable icon from the plurality of selectable icons associated with the at least one file associated with the calendar invitation; as well as Based on the detected selection of the selectable icon, a file name is provided that indicates a location of a file source of the at least one file associated with the calendar invitation.
7. The method according to claim 1, further comprising: detecting a selection of a selectable icon associated with the at least one email conversation from the plurality of selectable icons; as well as Based on the detected selection of the selectable icon, providing for display of a preview of the at least one email conversation, the display of the preview being presented within the graphical user interface of the displayed search page.
8. The method according to claim 1, wherein: The search icon is presented on a home page of the electronic communication application.
9. The method according to claim 1, further comprising: detecting a selection of a selectable icon associated with the at least one contact from the plurality of selectable icons, the selectable icon comprising a link to a social media page associated with the at least one contact; as well as In response to detecting a selection of the selectable icon associated with the at least one contact, providing for display of the social media page.
10. The method of claim 1, wherein: The operations of identifying the calendar invitation for the upcoming event, identifying at least one email conversation associated with the calendar invitation, and identifying at least one file associated with the calendar invitation are performed after receiving the selection of the search icon associated with presenting event information for an event associated with the user.
11. A system comprising: at least one processor; a memory in electronic communication with the at least one processor; as well as Instructions stored in the memory, the instructions being executable by the at least one processor to perform the following operations: receiving, at a client device of a user, a selection of a search icon associated with presenting event information for an event associated with the user; Obtaining event information about an upcoming event associated with the user, wherein obtaining the event information comprises: in response to the selection of the search icon and without receiving additional input other than the selection of the search icon: identifying a calendar invitation for the upcoming event; identifying at least one email conversation associated with the calendar invitation; identifying at least one file associated with the calendar invitation; and identifying at least one contact from the contacts database included in the calendar invitation based on the at least one contact in the contacts database not being included in a contacts list of the user of the client device; and An event icon is generated and presented within a graphical user interface of a search page displayed on the client device, the event icon comprising a plurality of selectable icons, each selectable icon being associated with one of the at least one email conversation associated with the calendar invitation and the at least one file associated with the calendar invitation.
12. The system of claim 11, further comprising instructions executable by the at least one processor to: detecting a selection of a selectable icon from the plurality of selectable icons associated with the identified at least one email conversation; and The at least one email conversation is caused to be displayed on the client device.
13. The system of claim 11, further comprising instructions executable by the at least one processor to: detecting a selection of a selectable icon from the plurality of selectable icons associated with the identified at least one file associated with the calendar invitation; and The at least one file is caused to be displayed on the client device.
14. The system of claim 11, wherein: identifying the at least one email conversation associated with the calendar invitation is based on the at least one email conversation being attached to the calendar invitation, and Wherein identifying the at least one file associated with the calendar invitation is based on the at least one file being attached to the calendar invitation.
15. The system according to claim 11, wherein: The search icon is presented on a home page of the electronic communication application.
16. A non-transitory computer readable medium having stored thereon instructions, which when executed by at least one processor, cause a client device to: receiving a selection of a search icon associated with presenting event information for events associated with a user of the client device; Obtaining event information about an upcoming event associated with the user, wherein: Obtaining the event information includes: in response to the selection of the search icon and without receiving an additional input other than the selection of the search icon: identifying a calendar invitation for the upcoming event; identifying at least one email conversation associated with the calendar invitation; identifying at least one file associated with the calendar invitation; and identifying at least one contact from the contacts database included in the calendar invitation based on the at least one contact in the contacts database not being included in a contacts list of the user of the client device; and An event icon is generated and presented within a graphical user interface of a search page displayed on the client device, the event icon comprising a plurality of selectable icons, each selectable icon being associated with one of the at least one email conversation associated with the calendar invitation and the at least one file associated with the calendar invitation.
17. The non-transitory computer-readable medium of claim 16, further comprising instructions that, when executed by the at least one processor, cause the client device to: detecting a selection of a selectable icon from the plurality of selectable icons associated with the identified at least one email conversation; and The at least one email conversation is caused to be displayed on the client device.
18. The non-transitory computer-readable medium of claim 16, further comprising instructions that, when executed by the at least one processor, cause the client device to: detecting a selection of a selectable icon from the plurality of selectable icons associated with the identified at least one file associated with the calendar invitation; and The at least one file is caused to be displayed on the client device.
19. The non-transitory computer readable medium of claim 16, wherein: identifying the at least one email conversation associated with the calendar invitation is based on the at least one email conversation being attached to the calendar invitation, and Wherein identifying the at least one file associated with the calendar invitation is based on the at least one file being attached to the calendar invitation.
20. The non-transitory computer readable medium of claim 16, wherein: The search icon is presented on a home page of the electronic communication application.