The disclosed embodiments relate to an electronic device, and in particular to a portable electronic device having email and calendar applications.
It is common for users of electronic devices to communicate with one another in group email exchanges. A common occurrence in the exchange of these emails is an attempt to set up a meeting, a conference call, lunch, or some other group event. It is often difficult to find a suitable time where all of the participants in the email are available, leading to lengthy exchanges that can become frustrating and time consuming. The complexities also scale with the number of individuals in the group. In addition, users often find it difficult to memorise information while they move between an email application and a calendar application.
Examples of the present invention will now be described in detail with reference to the accompanying drawings, in which:
In accordance with an aspect of the present invention there is provided a method of selecting a time slot in an electronic calendar, the method comprising the steps of: identifying a plurality of email users in an email message that is provided in an email application; providing a selectable calendar look-up button for the email message provided in the email application; in response to selection of the calendar look-up button, retrieving a plurality of electronic calendars respectively associated with the plurality of email users; calculating a score for a plurality of time slots in the retrieved plurality of electronic calendars; displaying at least one of the plurality of time slots based on the calculated score; receiving a selection of the at least one displayed time slot; and sending an indication of the selected time slot to the plurality of email users.
In this way, a calendar application may be launched directly from an email thread or email message in order to establish the availability of participants in the email exchange.
According to another aspect of the invention there is provided an electronic device comprising: a display; one or more processors; and memory comprising instructions which when executed by one or more of the processors cause the electronic device to: identify a plurality of email users in an email message that is provided in an email application; provide a selectable calendar look-up button for the email message provided in the email application; in response to selection of the calendar look-up button, retrieve a plurality of electronic calendars respectively associated with the plurality of email users; calculate a score for a plurality of time slots in the retrieved plurality of electronic calendars; display at least one of the plurality of time slots based on the calculated score; receive a selection of the at least one displayed time slot; and send an indication of the selected time slot to the plurality of email users.
According to yet another aspect of the invention there is provided a computer program product comprising memory comprising instructions which when executed by one or more of the processors of an electronic device cause the electronic device to: identify a plurality of email users in an email message that is provided in an email application; provide a selectable calendar look-up button for the email message provided in the email application; in response to selection of the calendar look-up button, retrieve a plurality of electronic calendars respectively associated with the plurality of email users; calculate a score for a plurality of time slots in the retrieved plurality of electronic calendars; display at least one of the plurality of time slots based on the calculated score; receive a selection of the at least one displayed time slot; and send an indication of the selected time slot to the plurality of email users.
Reference will now be made to
The user electronic device 2 is embodied as a cellular smartphone which can connect wirelessly with a network 6. Connected to the network 6 is also a server 8, and other user electronic devices 10, 12, 14. In this example the other user electronic devices include smartphones 10, 12 and a personal computer 14. By way of example, the user electronic devices 2, 10, 12, 14 may alternatively be embodied as tablets, PDAs or laptops. User data may be stored locally at the user electronic device 2 or at the server 8. Equally, computer readable instructions for the user electronic device 2 may be stored at the server 8 and downloaded as required.
In this example the thread 22 includes seven email messages. The sender, and the first few words of textual content are shown for the first and last messages 34, 36 in the thread 22. The email thread 22 also includes a banner 38 which can be selected to reveal five additional messages, which are initially hidden from view.
Each email message 34, 36 in the user interface 20 can be individually opened. Once opened, normal email information is visible including message content, a subject, a sender, a recipient, and any ‘cc′d’ addresses. Each email message 34, 36, when individually displayed, can also include the calendar look-up banner 32. Further information fields and attachments may be included in an individually displayed email in a manner that would be understood by a person skilled in the art.
Upon selection of the ‘calendar look-up’ button 32 a calendar look-up application is launched out of the email application. The calendar look-up application may be executed at the user electronic device 2 or at the server 8, or a combination of the two, as appropriate. At step 102 the calendar look-up application identifies email addresses and users in the relevant email thread 22. This is typically achieved by identifying email addresses in the “from”, “to” and “cc” fields. At step 104 the calendar look-up application retrieves electronic calendars associated with each of the identified email addresses. The electronic calendars may be retrieved directly from relevant user devices or from servers 8 where the data are stored. Retrieval of calendars may be performed using an API from Microsoft Exchange Server, or any similar protocol, as would be understood by a person skilled in the art. In this method it is presumed that retrieval of the relevant electronic calendars is both possible and permitted for the email accounts associated with the relevant users. If retrieval of a specific calendar is not permitted then an error message may be displayed on the screen 4 of the user electronic device 2. In another embodiment display of the calendar look-up button 32 may be inhibited if it is determined that retrieval of the relevant electronic calendars is not possible.
In the currently preferred embodiment the user of the electronic device 2 can enter preferred criteria for the calendar event, such as a preferred day and duration. For each calendar associate with an email address the calendar look-up application returns forty-eight time slots per day, where each time slot represents a thirty minute unit.
At step 106 the calendar look-up application is configured to calculate a score for the retrieved time slots that satisfy the user's preferred criteria. In the scoring algorithm a score of zero is provided for each time slot where an individual's calendar suggests that they are available and a score of one is provided if the individual's calendar suggests that they are busy. The data are then added together across all of the time slots. In the cumulated data set, a slot with a value of zero represents a thirty-minute interval during which every participant is free. If the user indicated a preferred duration of, say, one-hour then the scoring algorithm calculates a combined score for each combination of adjacent time slots.
At step 108 the calendar look-up application is configured to display time slot options to the user, or the calendar event organiser. The three lowest scoring options are displayed on the display 4, with the lowest scoring option at the top. If one of the displayed options has a score that is greater than zero then this indicates that at least one participant is unavailable; the identity of any unavailable individuals is displayed alongside the relevant option. The user can review the available options and can make a selection at step 110. The user's selection at step 110 is received at the electronic user device 2 or the server 8, as appropriate.
At step 112 the calendar look-up application can determine a proposed venue for the calendar event. Where the calendar event relates to a meeting the calendar look-up application is arranged to determine the location of each of the email users, as well as the location of the calendar event organiser. The calendar look-up application can then identify a meeting room or venue that is also free at the selected time slot or slots, and which is also available based on its associated electronic calendar. The meeting room may be selected based on its location relative to the email users.
At step 114 the calendar look-up application can populate a calendar event based on the content of the relevant email thread 22. The subject 40 of the email thread 22 or individual email is imported as the title of the calendar event. The text content of the email thread 22 is imported into the notes field of the calendar event, and the user of the electronic device 2 is identified as the organiser.
At step 116 the calendar event is sent, by email, to all of the relevant participants of the original email thread 22. The calendar event is also added to the electronic calendar associated with the event organiser, or user of the electronic device 2.
While the present disclosure is primarily described in terms of methods, a person of ordinary skill in the art will understand that the present disclosure is also directed to various apparatus such as a handheld electronic device including components for performing at least some of the aspects and features of the described methods, be it by way of hardware components, software or any combination of the two, or in any other manner. Moreover, an article of manufacture for use with the apparatus, such as a pre-recorded storage device or other similar computer readable medium including program instructions recorded thereon, or a computer data signal carrying computer readable program instructions may direct an apparatus to facilitate the practice of the described methods. It is understood that such apparatus, articles of manufacture, and computer data signals also come within the scope of the present disclosure.
The term “computer readable medium” as used herein means any medium which can store instructions for use by or execution by a computer or other computing device including, but not limited to, a portable computer diskette, a hard disk drive (HDD), a random access memory (RAM), a read-only memory (ROM), an erasable programmable-read-only memory (EPROM) or flash memory, an optical disc such as a Compact Disc (CD), Digital Versatile Disc (DVD) or Blu-Ray™ Disc, and a solid state storage device (e.g., NAND flash or synchronous dynamic RAM (SDRAM)).
Example embodiments of the present disclosure are not limited to any particular operating system, system architecture, mobile device architecture, server architecture, or computer programming language.
The various embodiments presented above are merely examples and variations of the innovations described herein will be apparent to persons of ordinary skill in the art. As embodiments may be implemented in several forms without departing from the characteristics thereof, it should also be understood that the above-described embodiments are not limited by any of the details of the foregoing description, unless otherwise specified, but rather should be construed broadly within its scope as defined in the appended claims. Therefore, various changes and modifications that fall within the scope of the claims, or equivalents of such scope are therefore intended to be embraced by the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
7343312 | Capek | Mar 2008 | B2 |
7679518 | Pabla et al. | Mar 2010 | B1 |
8073725 | Loring et al. | Dec 2011 | B2 |
8578301 | Klausmeier | Nov 2013 | B2 |
8905315 | Qureshi | Dec 2014 | B1 |
20030154116 | Lofton | Aug 2003 | A1 |
20050165831 | Solomon | Jul 2005 | A1 |
20060200374 | Nelken | Sep 2006 | A1 |
20070250370 | Partridge et al. | Oct 2007 | A1 |
20080005680 | Greenlee | Jan 2008 | A1 |
20090157466 | Bank et al. | Jun 2009 | A1 |
20100088144 | Collet et al. | Apr 2010 | A1 |
20120296982 | Heyman et al. | Nov 2012 | A1 |
20130060592 | Motoyama | Mar 2013 | A1 |
20130232213 | Bustamante | Sep 2013 | A1 |
20130283211 | Malkin | Oct 2013 | A1 |
20140244332 | Mermelstein | Aug 2014 | A1 |
20150006217 | Buehl et al. | Jan 2015 | A1 |
20150112749 | Erdal | Apr 2015 | A1 |
20150356516 | Kagan | Dec 2015 | A1 |
Entry |
---|
Negritoiu, S., “Freebusy”, https://freebusy.io/chrome, last visited on Aug. 1, 2016, pp. 1-5. |
Extended European Search Report issued for European Patent Application No. 17180361.2, dated Aug. 28, 2017. |
Communication pursuant to Article 94(3) EPC dated Sep. 9, 2018 for European Patent Application No. 17180361.2. |
Number | Date | Country | |
---|---|---|---|
20180032968 A1 | Feb 2018 | US |