Abstract:
A method of notifying a user of an electronic communication system is disclosed. The method comprises the steps of: providing an electronic message including address data to an electronic communication process in execution within a computer system; identifying the address data within the provided electronic message; comparing address data within the provided electronic message with further address data stored on the computer within an address list; providing a notification to the user associated with the electronic message when a result of the comparison indicates that at least some of the identified address data is other than within the further address data, the notification other than a prompt to add the identified address data to the further address data.

Description:
FIELD OF THE INVENTION 
   The present invention relates to electronic communication systems and more particularly to contact list management for use with electronic mail and messaging systems. 
   BACKGROUND OF THE INVENTION 
   In the past, people have maintained contact lists on paper. The proverbial “black book” is a good example of a list of individuals and their contact information. Unfortunately, the task of maintaining a large contact list current is often too onerous for the few times one needs to contact each individual. 
   A service offering automated updating of electronic contact information and ensuring most current contact information is offered by GoodContacts® through their World Wide Web site. GoodContacts® addresses the difficult task of enabling people to stay connected to their many circles of contacts. The service provided by GoodContacts® allows for updating and management of personal information relating to contacts and provides a dynamic link to all personal and professional relationships. This is performed by providing a method for each user to transmit to other users requests for information updates, thereby allowing for automatic updating of the user contacts within their address book. 
   Although the service that GoodContacts® provides does automate this tedious process, it only provides benefits once an individual is within a contact list. Thus, until the individual is within the contact list, the service cannot maintain contact with that person. Of course, though this seems make sense, there are times when one does not even realise that an individual is not within their contact list. For example, one may correspond with another party cc&#39;ing a third party in all correspondence back and forth without ever realising the cc&#39;ed individual is not within their contact list. Later, when it becomes important to contact that cc&#39;ed individual directly, the contact information may already have been lost. 
   Yahoo.com provides also an opportunity to update a contact list when a reply option is chosen for sending a message to the contact person who has sent a message. Inconveniently, there is no discrimination between the addresses already saved in the address book. The service always offers the option of saving an address regardless of its existence in the address book. 
   Similarly, Hotmail.com offers the possibility to update the contact list of a sending party when a message is newly sent or when a message in sent in reply to an address that is not part of the existing contact list. 
   Inconveniently, email programs provide a method for inserting a party into an email address book only when a sending party is about to send an email message. Of course, many people merely reply to add the contact to their address book thereby causing inconvenience to both parties. Unfortunately, it is not always evident that a new contact is present within a message. For example, a committee membership may change slightly and go unnoticed by many of the individuals within the committee. 
   Therefore, it would be advantageous to provide a system for notifying a user that an email includes address information not existing in the address book. 
   OBJECT OF THE INVENTION 
   It is an object of this invention to provide a method for automatically notifying a party that a message contains therein data relating to an address, which is not part of the address book of the party. 
   SUMMARY OF THE INVENTION 
   In accordance with an embodiment of the present invention, there is provided a method of notifying a user of an electronic communication system comprising the steps of: providing an electronic message including address data to an electronic communication process in execution within a computer system; identifying the address data within the provided electronic message; comparing address data within the provided electronic message with further address data stored on the computer; providing a notification to the user associated with the electronic message when a result of the comparison indicates that at least some of the identified address data is other than stored within the further address data, the notification other than a prompt to add the identified address data to the further address data. 
   According to another embodiment of the invention there is provided a method of notifying a user of an electronic communication system comprising the steps of: receiving an electronic message including address data to an electronic communication process in execution within a first computer system, the electronic message having been received from another computer and being destined for a user of the first computer; identifying the address data within the received electronic message; comparing address data within the received electronic message with further address data stored on the computer; providing a notification to the user associated with the received electronic message when a result of the comparison indicates that at least some of the identified address data is other than within the further address data. 
   According to another aspect of the invention there is provided a storage medium having data stored therein, the data relating to instructions for performing the steps of: providing an electronic message including address data to an electronic communication process in execution within a computer system; identifying the address data within the provided electronic message; comparing address data within the provided electronic message with further address data stored on the computer; providing a notification to the user associated with the electronic message when a result of the comparison indicates that at least some of the identified address data is other than stored within the further address data, the notification other than a prompt to add the identified address data to the further address data. 
   According to another embodiment of the invention there is provided a storage medium having data stored therein, the data relating to instructions for performing the steps of: receiving an electronic message including address data to an electronic communication process in execution within a first computer system, the electronic message having been received from another computer and being destined for a user of the first computer; identifying the address data within the received electronic message; comparing address data within the received electronic message with further address data stored on the computer; providing a notification to the user associated with the received electronic message when a result of the comparison indicates that at least some of the identified address data is other than within the further address data. 
   According to another aspect of the invention there is provided an electronic communication system comprising: a memory for storing an address book for storing address data of a plurality of contacts of a receiving party; and, a processor for extracting address data contained within a received electronic mail message, the process for comparing the extracted address data with electronic mail message addresses with the stored addresses within the address book, and for notifying the receiving party when a result of the comparison indicates that at least one electronic mail message address contained within a received electronic mail message is not found in the address book. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     Exemplary embodiments of the invention will now be described in conjunction with the following drawings, in which: 
       FIG. 1  is a prior art method of updating address book upon sending an email message; 
       FIG. 2  shows an email messaging interface for identifying email addresses in a received email message according to the invention; 
       FIG. 3  shows the email-messaging process for comparing email addresses detected within a received email message with email addresses stored in an address book; 
       FIG. 4  shows an email messaging interface for identifying email addresses in a sent email message according to the invention; 
       FIG. 5  shows the email-messaging process for comparing email addresses detected within a sent email message with email addresses stored in an address book; 
       FIG. 6  shows a flow chart diagram of a method of automatically adding an address to the address book; and, 
       FIG. 7  shows the email-messaging process for comparing address data to stored address data. 
   

   DETAILED DESCRIPTION OF THE INVENTION 
   Referring to  FIG. 1 , a prior art method of updating address book data upon sending an email message is shown. Upon transmitting a message to a recipient address, the recipient address is compared to a plurality of addresses stored in the address book. When there is no entry within the address book for the recipient address, the sending party is notified of such, and is provided the opportunity to save the unknown contact address within the existing address book. The example of  FIG. 1  indicates three email addresses that the email program has not found in the address book. 
   Of course, there is no obligation for the user to save the email addresses into their address book. Also, though the email address is saved at the click of a “button,” the remainder of the recipient personal information must be manually entered. 
   Referring to  FIG. 2 , an email-messaging interface for identifying email addresses in received email messages according to the invention is shown. The email program of the receiving party includes a feature in the form of a process  21 , which upon receipt of an email message  20  scans the different address fields of the received email message. Typically, the different address fields are in the form of a “from” field  22 , and a “Cc” field  23 . These different fields usually precede the message field  25  though this need not be the case. While scanning the different contact fields  22  and  23 , the process identifies any contact addresses contained therein. 
   Discriminating between the different addresses when a plurality of addresses is contained within one field is well known in the art. It is even known, in the art of data mining to extract electronic address information from message bodies within electronic mail messages such that URL&#39;s or email addresses therein are identifiable. This is properly achieved because non-address characters as for example commas or semi-colons generally separate electronic addresses one from another. When the addresses are from different contact fields, there is no difficulty in discriminating different addresses because each field is treated as a separate entity by the process. Alternatively, the entire electronic message is treated as a single entity and discrimination between addresses therein is performed according to known methods. 
   Methods of address extraction are common in data mining applications and in applications for generating address lists for bulk email messaging—SPAMing. 
   Referring to  FIG. 3  the email-messaging process for comparing email addresses detected within a received email message with email addresses stored in an address book is shown. Electronic address data is extracted from the “from” field  22  at step  301 . Each of the extracted one or more addresses is compared to addresses within the address book at step  302 . When all of the addresses are located within the address book, the process moves on to step  320 . If an address of the extracted addresses is not found within the address book, then that address is highlighted. For example, a red flag is displayed adjacent the electronic message in a list of electronic messages. Optionally, the highlighting is only performed for the INBOX of the individual, and further optionally only for a message until it is first viewed. Of course, it is possible to permanently perform the comparison and highlighting for every message within an email database. 
   Electronic address data is extracted from the “cc” field  23  at step  321 . Each of the extracted one or more addresses is compared to addresses within the address book at step  322 . When all of the addresses are located within the address book, the process moves on to step  330 . If an address of the extracted addresses is not found within the address book, then that address is highlighted. For example, a yellow flag is displayed adjacent the electronic message in a list of electronic messages to indicate that the unknown address was extracted from the “Cc” field  23 . Optionally, the highlighting is only performed for the INBOX of the individual, and further optionally only for a message until it is first viewed. Of course, it is possible to permanently perform the comparison and highlighting for every message within an email database. 
   Electronic address data is extracted from the message field  25  at step  331 . Each of the extracted one or more addresses is compared to addresses within the address book at step  332 . When all of the addresses are located within the address book, the process moves on to step  350 . If an address of the extracted addresses is not found within the address book, then that address is highlighted. For example, a green flag is displayed adjacent the electronic message in a list of electronic messages to indicate that the unknown address was extracted from the message field  25 . Optionally, the highlighting is only performed for the INBOX of the individual, and further optionally only for a message until it is first viewed. Of course, it is possible to permanently perform the comparison and highlighting for every message within an email database. 
   At step  350  the process ends and normal operation of the electronic messaging system continues. 
   Of course, the order in which the steps are performed is not essential to the invention. Further, one or more of steps  300 ,  320 , and  330  may be omitted. Advantageously, the flag is displayable with the message regardless of where it is stored such that when a message is moved into a mailbox such as a work mailbox, it retains the notification of an address other than present within the address list. 
   Referring to  FIG. 4 , an email-messaging interface for identifying email addresses in sent email messages and messages prepared for being sent according to the invention is shown. The email program of the receiving party includes a feature in the form of a process  41 , which upon receipt of an email message  40  scans the different address fields of the email message before or during sending thereof. Typically, the different address fields are in the form of a “to” field  42 , a “Cc” field  43 , and a “Bcc” field  44 . These different fields usually precede the message field  45  though this need not be the case. While scanning the different contact fields  42 ,  43  and  44 , the process identifies any contact addresses contained therein. 
   Discriminating between the different addresses when a plurality of addresses is contained within one field is well known in the art. It is even known, in the art of data mining to extract electronic address information from message bodies within electronic mail messages such that URL&#39;s or email addresses therein are identifiable. This is properly achieved because in header fields non-address characters as for example commas or semi-colons generally separate electronic addresses one from another; in message fields, address formats are identifiable as characters of the form xxx@xxx.com or another known Top Level Domain (TLD) extension. When the addresses are from different contact fields, there is no difficulty in discriminating different addresses because each field is treated as a separate entity by the process. Alternatively, the entire electronic message is treated as a single entity and discrimination between addresses therein is performed according to known methods. 
   Methods of address extraction are common in data mining applications and in applications for generating address lists for bulk email messaging—SPAMing. 
   Referring to  FIG. 5  the email-messaging process for comparing email addresses detected within an email message that is to be sent or in a process of being sent with email addresses stored in an address book is shown. Electronic address data is extracted from the “to” field  42  at step  501 . Each of the extracted one or more addresses is compared to addresses within the address book at step  502 . When all of the addresses are located within the address book, the process moves on to step  520 . If an address of the extracted addresses is not found within the address book, then that address is highlighted. For example, a red flag is displayed adjacent the electronic message in a list of electronic messages. Optionally, the highlighting is only performed for the INBOX of the individual, and further optionally only for a message until it is first viewed. Of course, it is possible to permanently perform the comparison and highlighting for every message within an email database. 
   Electronic address data is extracted from the “cc” field  43  at step  521 . Each of the extracted one or more addresses is compared to addresses within the address book at step  522 . When all of the addresses are located within the address book, the process moves on to step  530 . If an address of the extracted addresses is not found within the address book, then that address is highlighted. For example, a yellow flag is displayed adjacent the electronic message in a list of electronic messages to indicate that the unknown address was extracted from the “Cc” field  43 . Optionally, the highlighting is only performed for the INBOX of the individual and further optionally only for a message until it is first viewed. Of course, it is possible to permanently perform the comparison and highlighting for every message within an email database. 
   Electronic address data is extracted from the “Bcc” field  44  at step  531 . Each of the extracted one or more addresses is compared to addresses within the address book at step  532 . When all of the addresses are located within the address book, the process moves on to step  540 . If an address of the extracted addresses is not found within the address book, then that address is highlighted. For example, a yellow flag is displayed adjacent the electronic message in a list of electronic messages to indicate that the unknown address was extracted from the “Bcc” field  44 . Optionally, the highlighting is only performed for the INBOX of the individual and further optionally only for a message until it is first viewed. Of course, it is possible to permanently perform the comparison and highlighting for every message within an email database. 
   Electronic address data is extracted from the message field  45  at step  541 . Each of the extracted one or more addresses is compared to addresses within the address book at step  542 . When all of the addresses are located within the address book, the process moves on to step  550 . If an address of the extracted addresses is not found within the address book, then that address is highlighted. For example, a green flag is displayed adjacent the electronic message in a list of electronic messages to indicate that the unknown address was extracted from the message field  45 . Optionally, the highlighting is only performed for the INBOX of the individual, and further optionally only for a message until it is first viewed. Of course, it is possible to permanently perform the comparison and highlighting for every message within an email database. 
   At step  550  the process ends and normal operation of the electronic messaging system continues. 
   Of course, the order in which the steps are performed is not essential to the invention. Further, one or more of steps  500 ,  520 ,  530  and  540  may be omitted. Advantageously, the flag is displayable with the message regardless of where it is stored such that when a message is moved into a mailbox such as Joe&#39;s mailbox, it retains the notification of an address other than present within the address list. 
   Referring to  FIG. 6 , a method of automatically adding an address to the address book is shown. Here, when a user selects an active option for a message—for example in Windows® operating systems by clicking on the right mouse button while pointing to an email message, an option is displayed to allow automatic addition of the individual to the address book. Optionally, the user is provided with a list of unknown addresses to select, which from the list is to be added. Alternatively, all unknown addresses are added. Optionally, the user is prompted to provide additional information relating to each address to be added. Alternatively, a message is sent to each new contact requesting information for inclusion within the contact list. Alternatively, there is an option provided to add all unknown addresses to the address book or to add them based on the field in which they are located. 
   Referring to  FIG. 7 , an embodiment of the invention is shown wherein address data is compared to stored address data to determine different or missing portions. As such, upon receipt of a message, it is scanned for extracting address data located at the end of the message with the signature for example. The address data correspond to contact information related to the sending part as for example, phone and fax number, at home and or at work and so forth. When the address data or a portion of the address data is new, the message is highlighted with a further colour, blue for example. When the address data or a portion of the address data are new and originating from a known electronic address already stored within the address book of the receiving party, the receiving party is prompted to associate the new information with the known address. Optionally, the addition of the new information is automatically performed absent a notification to the receiving party. Alternatively, when the address data are coming from an unknown address, the address data are provided to the user if the user decides to add the new address in the address book and select an option of adding additional information related to the new added address. 
   Of course, the selection of colours indicated in the above embodiments is arbitrary for exemplary purposes. Of course, though coloured flags are disclosed in the above noted embodiment, the highlighting of messages could be performed in any of a number of ways. For example, a sound is played when the message is selected indicative of unknown addresses or more specifically of which fields include unknown address data. Alternatively, all detected unknown addresses are individually highlighted in colour or in text format—i.e. bold, underline, blinking, inverse, or italics. Of course, those of skill in the art know many methods of highlighting messages or text, and messages and text according to the invention may be highlighted in any suitable fashion including those, which may come to light after the filing of this application. 
   Numerous other embodiments may be envisaged without departing from the spirit or scope of the invention.