US20050188046A1 - Method and apparatus for monitoring multiple electronic mail systems - Google Patents

Method and apparatus for monitoring multiple electronic mail systems Download PDF

Info

Publication number
US20050188046A1
US20050188046A1 US11/083,814 US8381405A US2005188046A1 US 20050188046 A1 US20050188046 A1 US 20050188046A1 US 8381405 A US8381405 A US 8381405A US 2005188046 A1 US2005188046 A1 US 2005188046A1
Authority
US
United States
Prior art keywords
mail
data
systems
user
multiple electronic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/083,814
Inventor
Paul Hickman
Lawrence Stephens
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
H&S1
Chartoleaux KG LLC
Original Assignee
ENVISAGE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ENVISAGE Corp filed Critical ENVISAGE Corp
Priority to US11/083,814 priority Critical patent/US20050188046A1/en
Assigned to ENVISAGE CORPORATION reassignment ENVISAGE CORPORATION REASSIGNMENT Assignors: H&S1
Publication of US20050188046A1 publication Critical patent/US20050188046A1/en
Assigned to ENVISAGE CORP. reassignment ENVISAGE CORP. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: Hickman Coleman & Hughes LLP
Assigned to H&S1 reassignment H&S1 ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ESTATE OF LAWRENCE KEITH STEPHENS
Assigned to EVSG TRANSFER GROUP, L.L.C. reassignment EVSG TRANSFER GROUP, L.L.C. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ENVISAGE CORP.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/56Unified messaging, e.g. interactions between e-mail, instant messaging or converged IP messaging [CPM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/06Message adaptation to terminal or network requirements
    • H04L51/066Format adaptation, e.g. format conversion or compression

Definitions

  • This invention relates generally to electronic mail systems, and more particularly to electronic mail systems implemented with personal computers.
  • Personal computers were originally designed as stand-alone, desktop systems. As such, single users used their personal computers to run application programs such as word processors, spreadsheets, database managers, etc. Communications between a personal computer and other computer systems was largely limited to the physical transfer of data stored on a magnetic medium, such as a floppy disk or magnetic tape.
  • e-mail electronic mail
  • a computer user can create a message in the form of electronic “mail” and can send it using another user's electronic “address.”
  • Recipients of e-mail can retrieve their electronic mail from their electronic “mailboxes” and, if desired, respond to or forward the message to other users.
  • E-mail systems tend to work quite smoothly if only a single mail system is used on a particular personal computer. However, things begin to get more complicated if the personal computer system supports a number of e-mail systems. For example, a personal computer can be coupled to a local area network (LAN), a wide area network (WAN), a mainframe computer, and to other computerized systems over telephone lines via modems. In such situations, multiple e-mail systems are likely to be available which requires users to periodically manually check each of their e-mail systems to see if they have any messages.
  • LAN local area network
  • WAN wide area network
  • mainframe computer a mainframe computer
  • users might subscribe to multiple e-mail systems, such as America On Line (AOL), CompuServe, the Internet, on-line banking services, etc. Any one or more of these e-mail systems might be holding mail for a user at a particular time. Therefore, users must remember to check each of these e-mail systems on a periodic basis to determine of they have any mail. This can be a time consuming task if the user is a subscriber to a number of mail systems.
  • AOL America On Line
  • CompuServe CompuServe
  • the Internet such as America On Line (AOL), CompuServe, the Internet, on-line banking services, etc.
  • AOL America On Line
  • CompuServe CompuServe
  • the Internet such as America On Line (AOL), CompuServe, the Internet, on-line banking services, etc.
  • e-mail systems which permit the automatic retrieval of messages or mail.
  • software provided by America On Line can be configured to cause a personal computer system to automatically connect (via modem) with AOL computers on a periodic basis to check for mail.
  • StarNine Technology, Inc. of Berkeley, Calif. provides software called MaiILink RemoteTM for QuickMailTM which works with QuickMail e-mail software made by CE Software of West Des Moines, Iowa to periodically dial-in (via modem) to the Internet to check for Internet e-mail.
  • the Internet e-mail can then be delivered to individual users via the QuickMail e-mail system.
  • the prior art systems for automatically checking for e-mail suffer from a variety of drawbacks.
  • the software referred to herein as “accessor” software
  • accessor software is typically custom-designed for each e-mail system. This tends to be. expensive and inflexible.
  • prior art systems do not provide a method or apparatus for monitoring multiple e-mail systems, and for collecting, storing, and displaying e-mail information concerning the multiple systems in a consolidated and usable fashion. Because of these limitations, users have heretofore been forced to either manually check each E-Mail system on a periodic basis, or been subjected to multiple, independent, inconsistent, and possibly conflicting automated retrieval systems.
  • the present invention provides a method and apparatus for effectively monitoring multiple e-mail systems and for alerting users when they have received e-mail at any one or more of the multiple systems.
  • the invention does not require modification of the accessor software for a particular e-mail system, and can provide either background or manual polling of all or selected subset of e-mail systems that are accessible by a given personal computer system.
  • images, text, and e-mail attachments can be automatically downloaded to a user's personal computer for later use.
  • a method for monitoring multiple e-mail systems in accordance with the present invention begins with configuring an e-mail system polling process on a user's machine, e.g. a personal computer.
  • a number of e-mail systems are polled from the user's machine over appropriate communication channels.
  • These communication channels often include a modem and a telephone line connection (“telephone system”).
  • the polling is accomplished by dialing the access telephone number of the e-mail system using the modem, and then sending inquiries to the e-mail system over the telephone lines.
  • data is retrieved from the e-mail systems concerning the mail intended for the user.
  • This data can include a “null” indicating that there are no messages for the user, or it can include data indicating that there are one or more messages for the user.
  • an image of the e-mail message, the text of the message, or any attachment to the e-mail can be downloaded to the personal computer system as data.
  • the method includes a step of storing the downloaded data on the user's machine in the format that permits the convenient and efficient storage and retrieval of data pertaining to a number of e-mail systems.
  • An apparatus for monitoring multiple electronic mail systems includes a digital processor, read/write memory coupled to the digital processor, and at least one external communication channel coupled to the digital processor to permit the digital processor to communicate with a plurality of e-mail systems.
  • the apparatus further includes a poller which generates inquiries over the communication channel, a data retriever which retrieves data concerning mail intended for a designated user, and a data handler stores and retrieves data concerning mail for the designated user.
  • a number of external communication channels can be used with the present invention, including a local area network (LAN), a modem/telephone line system, and terminal emulators for coupling the digital processor to a larger computer system.
  • An article of manufacture for monitoring multiple electronic mail systems includes a machine-readable storage medium, a poller stored in the storage medium and including program instructions to generate inquiries over at least one communication channel to a number of e-mail systems, a data retriever stored in the storage medium including program instructions to receive data concerning e-mail intended for a designated user from the plurality of e-mail systems, and a data handler stored in the storage medium and including program instructions to store and retrieve the data concerning mail for the designated user from the plurality of electronic mail systems.
  • the article of manufacture further includes a controller stored in the storage medium and including program instructions to control the operation of the poller, the data retriever, and the data handler.
  • the article of manufacture preferably includes an inputter stored in the storage medium including program instructions which allows user inputs to the controller, and a displayer stored in the storage medium including program instructions which allows the selective display data stored by the data handler.
  • the present invention also includes an e-mail database structure stored in machine-readable memory including a plurality of mail headers corresponding to a plurality of e-mail systems that are being monitored for messages for a designated user, and a message block corresponding to each detected message for the designated user from the plurality of e-mail systems, where each message block is linked with an e-mail header.
  • each of the plurality of mail headers include information concerning the number of messages with which it is linked.
  • each of the message blocks includes a message identification code associated with the message block and its mail header.
  • Each of the message blocks can further include information concerning the message and pointers to data reflecting a content of the message.
  • the content can include, for example, images of the message, the text of the message, and attachments to the message.
  • FIG. 1 is a block diagram of a communication system including multiple e-mail systems and an apparatus for monitoring the multiple e-mail systems;
  • FIG. 2 is a block diagram of an apparatus for monitoring multiple e-mail systems
  • FIG. 3 is a flow-diagram of a method for monitoring multiple e-mail systems in accordance with the present invention
  • FIG. 4 a is a view of a computer screen which helps illustrate the “CONFIGURE E-MAIL SYSTEM POLLING PROCESS” step of FIG. 3 ;
  • FIG. 4 b illustrates an interactive dialogue window called from the screen shown in FIG. 4 a;
  • FIG. 5 illustrates a data structure of the present invention
  • FIG. 6 is a flow-diagram illustrating the “POLL AN E-MAIL SYSTEM FROM USER MACHINE” step of FIG. 3 ;
  • FIGS. 7 a and 7 b are examples of connection session display screens for establishing and controlling an Internet connection in accordance with a preferred embodiment
  • FIG. 8 is a flow-diagram of the “RETRIEVE DATA CONCERNING MAIL FROM E-MAIL SYSTEM” step of FIG. 3 ;
  • FIG. 9 is a diagram illustrating the “STORE DATA ON USER MACHINE” step of FIG. 3 ;
  • FIGS. 10 a, 10 b, and 10 c illustrate the “DISPLAY DATA CONCERNING A NUMBER OF E-MAIL SYSTEMS” step of FIG. 3 ;
  • FIG. 11 is a dialog box further illustrating the “DISPLAY DATA” step of FIG. 3 ;
  • FIGS. 12 a, 12 b, and 12 c further illustrate an embodiment of the “DISPLAY DATA” step of FIG. 3 .
  • a communication system 10 in accordance with the present invention includes a “local” or “user” computer system 12 and one or more communication channels such as a local area network (LAN) 14 , a telephone line 16 , and a main-frame computer link 18 .
  • the computer system 12 can communicate by electronic mail (e-mail) with a number of remote systems, including a mail server 20 , one or more “other” computer systems 21 , a remote system 22 , a main-frame 24 , and a file server 38 .
  • the present invention manages and enhances the handling of multiple e-mail sources over one or more communication channels.
  • a computer system 12 of the present invention is preferably a personal computer or workstation available from a variety of vendors. More particularly, computer system 12 is preferably a MacintoshTM computer system available from Apple Computer, Inc. of Cupertino, Calif. However, computer system 12 can also be an IBM/PC-AT compatible personal computer running, for example, DOS or WindowsTM operating systems, such systems being available from Microsoft, Inc., of Redmond, Wash. Still further, computer system 12 can be a custom computer system designed primarily for communication with multiple e-mail servers over one or more communication channels.
  • Computer system 12 includes a digital processor 26 (sometimes called a central processing unit or “CPU”), read-only memory (ROM) 28 , random access memory (RAM) 30 , and input/output (I/O) circuitry 32 .
  • the computer system 12 includes an internal bus 34 including appropriate control (C), data (D), and address (A) busses.
  • the digital processor 26 , ROM 28 , RAM 30 , and I/O 32 are coupled (directly or indirectly) to the internal bus 34 to provide internal communications between the system components.
  • the design and manufacture of computer systems such as computer system 12 is well known to those skilled in the art.
  • the computer system 12 is preferably a MacintoshTM computer system.
  • the digital processor 26 is therefore either preferably a Motorola 68XXX Microprocessor or a Power-PC Microprocessor, also available from Motorola, Inc.
  • ROM 28 includes the basic start-up instructions for the computer system 12 and also includes a substantial portion of the computer operating system.
  • RAM 30 is used as “scratch-pad” memory to temporarily hold data and application programs executing on digital processor 26 .
  • 1 / 0 32 includes latches, buffers, registers, etc. which facilitate the communication of computer system 12 with external devices and systems.
  • peripheral memory will refer to “secondary” or “non-primary” memory.
  • Primary memory such as RAM 30 is used more for the immediate storage needs of the processor 26 , while the peripheral memory is typically used for longer term (and less frequently used) storage. Primary memory tends to be volatile (i.e. the memory is lost when power is removed), while peripheral memory tends to be non-volatile.
  • the peripheral memory can be coupled to the computer system 12 through I/O 32 or, in some instances, is directly coupled to the internal bus 34 . Examples of peripheral memory include hard disk drive units, floppy disk drive units, and PCMCIA memory units.
  • the peripheral memory 36 is therefore generically represented as one or more of these peripheral memory types.
  • peripheral memory types described above include computer-readable media.
  • the hard disk of a hard disk drive peripheral memory 36 can store data and software instructions in a magnetic media.
  • CD-ROM or floppy disk peripheral memory 36 can store data and software instructions in machine-readable form.
  • PCMCIA memory which stores machine-readable data and software instructions in a form of “flash” memory.
  • the communication system 10 can also include an external communication channel such as a local area network (LAN) 14 .
  • the LAN 14 is often (but not necessarily) managed by a file server 38 .
  • a mail server 20 is often provided to manage e-mail communications among a number of computer systems (such as computer systems 12 and 21 ) coupled to the local area network 14 .
  • the mail server 20 is typically a personal computer system is provided with specialized e-mail software. This e-mail software can also be run on file server 38 , or may be distributed throughout the system on user personal computers (such as computer systems 12 and 21 ) in a peer-to-peer system.
  • a mail server 20 is preferably a stand-alone system or is a part of the file server 38 .
  • the computer system 12 also has the capability of sending and receiving e-mail to a number of remote systems 22 .
  • the computer system 12 can communicate with a commercial service such as America On-Line (AOL), communicate through the Internet, or communicate with an On-Line Banking system.
  • AOL America On-Line
  • These communication links are typically accomplished through a modem 40 over a standard analog telephone line 16 .
  • the computer system 12 instructs the modem 40 to dial an access number to the remote system 22 .
  • a telephone connection is then made over telephone line 16 .
  • telephone line includes any transmission media used by a telephone service provider including microwave, fiber optic, wire and satellite links.
  • the computer system 12 and remote system 22 can then communicate e-mail messages over this telephone line connection.
  • Computer system 12 can also communicate with other sources of e-mail.
  • mainframe computer systems 24 are often used as central servers for personal computers and computer terminals.
  • IBM 3090 mainframe is often used for such a purpose.
  • a terminal emulator 42 such as the 3270 emulator
  • interfacer 44 such as a 3274 interfacer
  • the computer system 12 can receive e-mail from a variety of sources.
  • the computer system 12 can receive e-mail from mail server 20 , a number of remote systems 22 , from a mainframe system 24 , from the file server 38 , and from a number of other computer systems (e.g. computer system 21 ) coupled to LAN 14 .
  • the present invention includes specialized software for managing and controlling e-mail from multiple remote sources.
  • some or all of the processes described herein can be implemented in software, firmware, hardware, and any combination of software, firmware, and hardware.
  • FIG. 2 illustrates a communication system 46 in accordance with the present invention.
  • the communication system 46 can be implemented in software in a computer-readable media such as RAM 30 , and can be provided to end users on computer-readable media such as a floppy disk 48 or a CD-ROM (not shown).
  • a communication system 46 is stored on floppy disk 48 , an article of manufacture is created which can be used to configure computer system 12 to perform the communication management processes of the present invention.
  • the communication system 46 includes a controller 50 , a poller 52 , a data retriever 54 , a data manager 56 , an inputter 58 , and a displayer 60 .
  • the controller 50 provides overall control of the process implemented by the communication system 46 .
  • a poller 52 interacts with one or more mail system accessors 62 to communicate over a communication channel 64 with one or more remote e-mail systems.
  • the mail system accessors 62 are typically provided by the e-mail remote service provider. For example, America On-Line (AOL) will provide an AOL mail system accessor, Wells Fargo Bank will provide a Well Fargo On-Line service accessor for on-line banking, etc.
  • America On-Line AOL
  • Wells Fargo Bank will provide a Well Fargo On-Line service accessor for on-line banking, etc.
  • Data retrieved from a remote e-mail system is passed by the mail system accessor 62 to data retriever 54 .
  • This data is passed to data manager 56 for storage in an appropriate data structure to be discussed subsequently.
  • the data manager 56 can interact with a displayer 60 to display information concerning about the received data on a screen 12 .
  • the inputter 58 typically a keyboard or mouse of computer system 12 allows user inputs to controller 50 .
  • the mail system accessors 62 provided by the e-mail system.
  • the functionality of the mail system accessors can be directly integrated into the communication system 46 of the present invention. While this requires the development of accessor drivers for each desired e-mail system, it has the advantage of being more closely integrated with the functionality of the communication system 46 . Therefore, in an embodiment of the present invention, some or all of the functionality of the mail system accessor 62 may be provided with communication system 46 and delivered on a computer-readable medium such as floppy disk 48 . Implementation of such “accessors” or “drivers” is well known to those skilled in the art.
  • a process 66 for monitoring multiple electronic mail systems is illustrated.
  • the process 66 begins at 68 and, in a step 70 , the e-mail system polling process is configured.
  • an e-mail system is “polled” from a user machine.
  • a “poll” refers to the connection to an e-mail system at the initiation of the user's machine and the subsequent inquiry to the remote e-mail system concerning e-mail for the user.
  • the verb “polling” refers to the act of making a “poll.”
  • data concerning e-mail is received from the remote e-mail system.
  • data can be the e-mail itself or it can be the existence or non-existence of the e-mail on the remote e-mail system.
  • data is stored on the user machine in a format which permits the storage of information concerning a number of remote e-mail systems.
  • a step 78 it is determined whether information concerning e-mail is said to be displayed on the screen of the computer system 12 . If not, process control is returned to step 72 . If information, is to be displayed, it is displayed in step 80 in a format which permits information concerning a number of remote e-mail systems to be displayed simultaneously.
  • FIGS. 1 and 4 a a screen 82 of a display 83 coupled to the internal bus 34 of computer system 12 by a video I/O interface 85 is illustrated.
  • the screen 82 includes a “desktop” 84 , a command bar 86 , and a window 88 .
  • Screen similar to the illustrated screen 82 can be provided by MacintoshTM computer systems.
  • FIG. 4 a a pointer 90 is pointing to (“selecting”) an e-mail system “QMREMOTE” as indicated by the selection box 92 .
  • QMREMOTE e-mail system
  • FIG. 4 b a window 94 as illustrated in FIG. 4 b will appear on desktop 84 .
  • the window 94 includes a number of fill-in and check-off boxes.
  • the window 94 includes fill-in boxes 96 , 98 , 100 , 102 , and 104 .
  • Window 94 also includes check-off boxes 106 and 108 .
  • the fill-in box 96 permits a user to enter or “input” the frequency of the polling to be provided by the system of the present invention. In this instance, the frequency is set for 30 minutes. That is, every 30 minutes, the poller 52 will access the e-mail system QM Remote, form a communications link, and poll the e-mail system.
  • Fill-in box 98 indicates whether a priority display is to be provided.
  • the check-off boxes 106 and 108 indicate whether the source icon is to be cycled or a dialogue box is to be displayed, or both.
  • Fill-in box 100 indicates whether an image of an e-mail should be downloaded to the user's computer system 12 .
  • Fill-in box 102 indicates whether text should be downloaded to the user's computer system 12 .
  • fill-in box 104 indicates whether an attachment should be downloaded to the user's e-mail system 12 .
  • FIG. 5 illustrates a data structure 110 in accordance with the present invention.
  • This data structure can be stored in any machine-readable medium such as in RAM 30 or in peripheral memory 36 .
  • the data structure 110 includes a header 112 and a number of message blocks, such as message blocks 114 and 116 .
  • Each of the message blocks (such as message blocks 114 and 116 ) that are associated with the e-mail system of the header 112 are linked to the header 112 .
  • This linking is illustrated graphically by the box 118 .
  • the illustration of FIG. 5 is a logical, and not necessarily physical, construct and the various data can be stored in various locations in memory that are not necessarily contiguous with each other. However, as it is well known to those skilled in the art of data management, pointers and links can be used to provide the functionality described herein even though the data may be distributed in various locations and memory.
  • the header 112 includes the identification of the remote e-mail system, which in this instance, is QMREMOTE.
  • the header 112 may include the total number of messages on that remote e-mail system, and a number of unread messages on that remote e-mail system.
  • Other information may be included in the header 112 to provide data concerning the particular remote service which helps in the management of the message blocks for that remote service.
  • the message blocks 114 and 116 are similar in structure, although they contain different data.
  • a message ID 120 number “0” is provided so that it can be differentiated from other message blocks.
  • the image pointer points to an address A 0 where the image of the e-mail is stored in memory.
  • the text pointer points to an address A 1 where the text of the message is stored.
  • the message block 114 also indicates that an e-mail “attachment” has been downloaded.
  • “attachment” is a file, document, image or other datum that accompanies a given e-mail message. Since in this instance it is indicated that an attachment has been downloaded, an attachment pointer A 2 points to the location in memory where the attachment has been stored. Next, the priority is indicated to be urgent and the sender is indicated to be James Winston. The message regards a deadline and was sent at Jun. 7, 1995 at 13:33 in the afternoon.
  • Message block 116 includes a message ID 120 of “19”, and indicates that the e-mail for message # 19 has not yet been read. Further, it indicates that the attachment has not been downloaded. The priority of the e-mail is “normal” and the sender is “Sunee.” The message regards “Lunch on Friday” and was sent on Jun. 7, 1995 at 15:53 in the afternoon.
  • the data structure 110 is associated with the e-mail system QM Remote.
  • a similar data structure will be provided for each of the other e-mail remote services supported by the system.
  • America On-Line (AOL) will have its own data structure similar to data structure 110 .
  • Such multiple data structures can be managed by a number of data management procedures, as will be appreciated in those skilled in the art.
  • the data structures for the various e-mail remote services can be merged into a single, integrated data structure, as will be appreciated by those skilled in the art of database management.
  • each message block can incorporate some or all of the data of the header, thereby eliminating the need for the header 112 .
  • data blocks would integrate the functionality of the header 112 , rendering such a structure substantially equivalent.
  • FIG. 6 illustrates the “POLL A REMOTE E-MAIL SYSTEM FROM A USER MACHINE” step 72 of FIG. 3 in greater detail.
  • the process of the 72 begins at 124 and, in a step 126 , it is determined whether a poll should be initiated.
  • This determination in step 126 can be manual, e.g. a user indicates that a poll should be initiated or it can be automatic, e.g. the computer initiates the poll at regular time intervals or upon the detection that certain conditions have been met.
  • the frequency of polling indicated in box 96 of FIG. 4 b can be used.
  • certain conditions have been met, such as the power-up of the system, the log-in of a new user, or the exiting from computational or memory intensive user applications, the poll can be automatically initiated.
  • step 128 it is determined whether the connection was successful. If not, data is stored in an error file in a step 132 .
  • step 134 is determined whether there should be an additional poll. Reasons for an additional poll can include an unsuccessful connection, or an additional e-mail system on the same communication link. If no additional polling is to be done, the process 72 is complete as indicated by step 136 .
  • FIGS. 7 a and 7 b An example of the establishment of an e-mail connection to the Internet is illustrated in FIGS. 7 a and 7 b.
  • the Internet has become an increasingly popular vehicle for electronic communication and information transfer.
  • An example of an access method display is presented in FIG. 7 a. This display is entered traditionally by double-clicking on an icon associated with a windows session on a personal computer.
  • the toolbar 700 facilitates rapid access to most important commands.
  • the commands on the toolbar can also be typically accessed with the menus on the menu bar.
  • the address bar 730 displays the Internet address (URL) of the World Wide Web page a user is currently viewing. In this instance, the page has an address (URL) of http://www.hickman.com. If the page is located on a local computer, the full path to the page is displayed.
  • the address bar can also be utilized for navigation by typing the address of a page that is of interest to a user.
  • the globe animation 710 revolves in an animated fashion on the display when information transfer is in process from a remote computer on the Internet.
  • the status bar 740 interactively presents information on what is currently happening.
  • the icon at the far right of the bar shows detailed information when the pointer is positioned over it. As data is being retrieved, the detailed information also appears at the status bar's left end.
  • the document display area 720 displays the World Wide Web page currently active in the display area. Any items that are highlighted are links (e.g. “Information”, “Explore”, “Go To”, and “Search”), and clicking on them transfers control to the page of information associated with the link area.
  • the information associated with the area is placed in a cache, a set of files stored on the user's computer.
  • the cache is initially queried to determine if the page of interest is located in the cache. If it is, then the page is loaded from the cache instead of transferring the information from the Internet. This greatly increases the speed of operation of the browser. If the page is not found in the cache, then a connection is attempted with the Internet utilizing a modem and autodialer software or through a Local Area Network (LAN) access if a link exists on a local network.
  • LAN Local Area Network
  • a preferred embodiment utilizes the Setting Options display shown in FIG. 7 b to customize features to suit a user's particular preferences and access the Internet through a common interface. From the Select Options display, many of the Internet's features can be selected in accordance with a user's preferences. For example, the Appearance tab 760 allows a user to set colors for foreground, background, and links. Control of the appearance of information on a display can also be manipulated utilizing this display.
  • the Start Page tab 762 allows a user to specify what World Wide Web page should be the first presented to a user when the system is started.
  • the Advanced tab 764 allows a user to specify how many items will be kept in a history folder and how large the cache size should be.
  • the File Types tab 766 allows a user to associate a particular program with a particular file type. For example, if a WordPerfect (WP) file is encountered, WordPerfectTM can be started to allow the file to be properly manipulated by a user. All of these tabs are stored in a file with the values associated with each tab. This file can be manipulated by a program to facilitate interfacing with the standard displays already discussed in accordance with a preferred embodiment of the invention.
  • WP WordPerfect
  • the Internet browser is used as the accessor software.
  • the browser is evoked, preferably in the background, to make a connection to the Internet.
  • Macros are then used to poll appropriate web pages (as selected by the user) and/or retrieve e-mail (and any attachments) addressed to the user.
  • commercial services such as UUNET permit users to have a “virtual” domain name on the internet, such as USER@VIRTUALDOMAINNAME.COM.
  • “USER” is the name of the mail recipient
  • VIPRTUALDOMAINNAME is the name of the commercial entity (e.g. the company)
  • COM designates that it is a commercial enterprise.
  • the accessor software then retrieves the pertinent information from the Internet e-mail, or the e-mail itself and/or its attachments, and uses that information as described herein.
  • step 74 “RETRIEVE DATA CONCERNING E-MAIL” of FIG. 3 is illustrated in greater detail.
  • the process 74 begins at 150 and, in a step 152 , the number of messages for a given user on a given e-mail system is retrieved.
  • step 154 the number of unread messages for the given user on the given e-mail system is retrieved.
  • step 156 the priority, sender, Re, date, time for each message is retrieved.
  • steps 152 - 156 can be performed at different orders, or in some instances, essentially simultaneously.
  • an iterative loop 158 is entered.
  • the iterative loop uses a counter “i” and loops for the number of unread messages that were determined in step 154 .
  • the process 74 is completed as indicated in step 160 .
  • a step 162 determines whether the message should be read. This can be determined by the fill-in boxes 100 and 102 of window 94 of FIG. 4 b. If the message is to be read, a decision is made in step 164 whether the image should be captured. If so, the image is captured in a step 166 . In a step 168 , it is determined whether the text should be downloaded.
  • step 170 the text is downloaded in a step 170 .
  • Process control is then directed to step 172 , which determines whether the attachment (if any) for a given message should be downloaded. If “yes”, the attachment is downloaded in a step 174 .
  • Process control is then returned to iterative loop 158 wherein the counter i is incremented by 1. If here are additional unread messages, iterative loop 158 is traversed again, and if not, the process 74 is completed at step 160 as described previously.
  • FIG. 9 is used to illustrate the step 76 “STORE DATA ON USER MACHINE” described with reference to FIG. 3 .
  • the data structure 110 includes a number of pointers A 0 , A 1 , A 2 , . . . AN which points to various data D 0 , D 1 , D 2 . . . . DN.
  • Data D 0 in this instance, is the image of message 0 retrieved from the e-mail system QM Remote.
  • image of a message refers to data with contains little or no content information, i.e. just data pertaining to the image itself.
  • an image of a message might include only a bitmap of the visual image of the message, without having information concerning the content of the message, such as the ASCII text of the message.
  • Data D 1 is the text for the same message.
  • a data structure 110 ′ can be for a different remote e-mail system such as the Internet.
  • pointers A 0 ′ would point to data D 0 ′
  • pointer A 1 ′ points to data D 1 ′
  • pointer AN′ points to pointer DN′.
  • pointers allows large data files (such as images) to be placed in slower mass storage while the searchable data structures 110 and 112 can be placed compactly in a faster storage medium, such as RAM 30 .
  • FIGS. 10 a - 10 c various aspects of steps 80 of FIG. 3 “DISPLAY DATA CONCERNING A NUMBER OF REMOTE E-MAIL SYSTEMS” are illustrated.
  • FIG. 4 a it will be noted that there is an icon 87 in the upper left hand corner of screen 82 .
  • this icon is the Apple logo for Apple Computer, Inc.
  • a method for displaying the receipt of messages as illustrated in FIG. 10 a is to alternatively flash the icon 87 with abbreviations or icons representing a remote e-mail system having unread messages for a designated user.
  • the abbreviations “QMR,” “CC,” and “I” are flashed in succession to indicate that there are messages on Quick Mail Remote, CC mail, and the Internet for the user.
  • the icon 87 can be flashed for one second
  • the abbreviation “QMR” can be flashed in the place of icon 87 for one second
  • the abbreviation “CC” can be flashed in the place of the abbreviations QMR for one second
  • the abbreviation “I” can be flashed in the place of abbreviation CC for one second
  • the icon 87 can replace the abbreviation “I” for one second with the loop repeating until stopped by the user.
  • FIG. 10 b a more simplified designator is illustrated.
  • the icon 87 and the number 5 are alternatively flashed on the “command bar” 86 of the screen 82 .
  • the “command bar” is a visual location on the screen 82 which includes titles of pull-down menus for various system functions.
  • the number “5” indicates that five messages have been received from various e-mail sources. Of course, the number “5” is merely an example, and the actual number of messages received is alternatively flashed with the icon 87 .
  • FIG. 10 c A still simpler mechanism is illustrated in FIG. 10 c.
  • the icon 87 is alternatively flashed with an arbitrary symbol, such as the asterisk symbol “*” shown. This merely indicate to users that there is e-mail in the system that is addressed to them from some remote e-mail source.
  • FIG. 11 illustrates a window 176 that can “pop up” on the screen upon the receipt of data concerning a remote e-mail system.
  • This type of window is typically only used for urgent messages, as indicated by priority display selection 98 of FIG. 4 b.
  • an urgent message is being sent by James Winston concerning a deadline, and the service QM. Remote is indicated as the source of the message. The user can then log-in to QM Remote to receive the message or can retrieve the message or image of the message that had already been downloaded, if the download option had been selected.
  • FIGS. 12 a - 12 c illustrate a hierarchy of menus concerning e-mail from a variety of e-mail sources.
  • a window 178 indicates with selection box 180 that mail has been received through Quick Mail, the Internet, and CC Mail.
  • a pointer 182 can be used to select the Quick Mail source, and the number of read and unread messages on Quick Mail for all senders is displayed in a window 184 in FIG. 12 b.
  • a pointer 186 can then select a given sender (in this case “Sierra”) to create a window 188 which shows all of the Quick Mail messages from Sierra and the status of those messages.
  • message 1 is unread, but the image and attachment for the message is stored in local memory
  • message 2 has been read and the text has been stored in local memory
  • message 3 has been unread and the image, text, and attachment has been stored in local memory.

Abstract

A method for monitoring multiple electronic mail systems includes the steps of: a) configuring an e-mail system polling process on a user's machine; b) polling a number of e-mail systems from the user's machine; c) retrieving data from the e-mail systems concerning mail intended for the user; and d) storing the data on the user's machine in a format that permits the storage and retrieval of data pertaining to the plurality of e-mail systems. The polling can be accomplished in the background while the user is performing other tasks on the computer system. An apparatus for monitoring multiple electronic mail systems includes a digital processor, read/write memory coupled to the digital processor, and at least one external communication channel coupled to the digital processor permitting the digital processor to communicate with a plurality of external electronic mail systems. A poller of the apparatus is operative to generate inquiries over the communication channel to the plurality of electronic mail systems, a data retriever is operative to receive data concerning mail intended for a designated user, and a data handler is operative to store and retrieve data concerning the mail for the designated user. An article of manufacture of the present invention includes the poller, data retriever, and data handler stored in a machine-readable storage medium.

Description

    BACKGROUND OF THE INVENTION
  • This invention relates generally to electronic mail systems, and more particularly to electronic mail systems implemented with personal computers.
  • Personal computers were originally designed as stand-alone, desktop systems. As such, single users used their personal computers to run application programs such as word processors, spreadsheets, database managers, etc. Communications between a personal computer and other computer systems was largely limited to the physical transfer of data stored on a magnetic medium, such as a floppy disk or magnetic tape.
  • As personal computers became more widespread, there was an increasing demand for direct data communication between two or more computers. The use of modems to allow inter-computer communications became common. In addition, there was a rapid development of personal computer network technology during the 1980's.
  • As the number of direct communication channels between personal computers increased, electronic mail systems proliferated. With an electronic mail (“e-mail”) system, a computer user can create a message in the form of electronic “mail” and can send it using another user's electronic “address.” Recipients of e-mail can retrieve their electronic mail from their electronic “mailboxes” and, if desired, respond to or forward the message to other users.
  • E-mail systems tend to work quite smoothly if only a single mail system is used on a particular personal computer. However, things begin to get more complicated if the personal computer system supports a number of e-mail systems. For example, a personal computer can be coupled to a local area network (LAN), a wide area network (WAN), a mainframe computer, and to other computerized systems over telephone lines via modems. In such situations, multiple e-mail systems are likely to be available which requires users to periodically manually check each of their e-mail systems to see if they have any messages.
  • As an example, users might subscribe to multiple e-mail systems, such as America On Line (AOL), CompuServe, the Internet, on-line banking services, etc. Any one or more of these e-mail systems might be holding mail for a user at a particular time. Therefore, users must remember to check each of these e-mail systems on a periodic basis to determine of they have any mail. This can be a time consuming task if the user is a subscriber to a number of mail systems.
  • Furthermore, if users forget to periodically check for mail with each of their services, it is possible that important mail may remain unread for a long period of time. This can be especially problematical if the sender of the e-mail erroneously assumes that the user frequently checks their mail box and, therefore, has received and acted on the e-mail.
  • There are some e-mail systems which permit the automatic retrieval of messages or mail. For example, software provided by America On Line can be configured to cause a personal computer system to automatically connect (via modem) with AOL computers on a periodic basis to check for mail. Also, StarNine Technology, Inc. of Berkeley, Calif. provides software called MaiILink Remote™ for QuickMail™ which works with QuickMail e-mail software made by CE Software of West Des Moines, Iowa to periodically dial-in (via modem) to the Internet to check for Internet e-mail. The Internet e-mail can then be delivered to individual users via the QuickMail e-mail system.
  • The prior art systems for automatically checking for e-mail suffer from a variety of drawbacks. For one, the software (referred to herein as “accessor” software) is typically custom-designed for each e-mail system. This tends to be. expensive and inflexible. Also, prior art systems do not provide a method or apparatus for monitoring multiple e-mail systems, and for collecting, storing, and displaying e-mail information concerning the multiple systems in a consolidated and usable fashion. Because of these limitations, users have heretofore been forced to either manually check each E-Mail system on a periodic basis, or been subjected to multiple, independent, inconsistent, and possibly conflicting automated retrieval systems.
  • SUMMARY OF THE INVENTION
  • The present invention provides a method and apparatus for effectively monitoring multiple e-mail systems and for alerting users when they have received e-mail at any one or more of the multiple systems. The invention does not require modification of the accessor software for a particular e-mail system, and can provide either background or manual polling of all or selected subset of e-mail systems that are accessible by a given personal computer system. In addition, images, text, and e-mail attachments can be automatically downloaded to a user's personal computer for later use.
  • A method for monitoring multiple e-mail systems in accordance with the present invention begins with configuring an e-mail system polling process on a user's machine, e.g. a personal computer. Next, a number of e-mail systems are polled from the user's machine over appropriate communication channels. These communication channels often include a modem and a telephone line connection (“telephone system”). With a telephone system communication channel, the polling is accomplished by dialing the access telephone number of the e-mail system using the modem, and then sending inquiries to the e-mail system over the telephone lines. Next, data is retrieved from the e-mail systems concerning the mail intended for the user. This data can include a “null” indicating that there are no messages for the user, or it can include data indicating that there are one or more messages for the user. Further, an image of the e-mail message, the text of the message, or any attachment to the e-mail can be downloaded to the personal computer system as data. Finally, the method includes a step of storing the downloaded data on the user's machine in the format that permits the convenient and efficient storage and retrieval of data pertaining to a number of e-mail systems.
  • An apparatus for monitoring multiple electronic mail systems includes a digital processor, read/write memory coupled to the digital processor, and at least one external communication channel coupled to the digital processor to permit the digital processor to communicate with a plurality of e-mail systems. The apparatus further includes a poller which generates inquiries over the communication channel, a data retriever which retrieves data concerning mail intended for a designated user, and a data handler stores and retrieves data concerning mail for the designated user. A number of external communication channels can be used with the present invention, including a local area network (LAN), a modem/telephone line system, and terminal emulators for coupling the digital processor to a larger computer system.
  • An article of manufacture for monitoring multiple electronic mail systems includes a machine-readable storage medium, a poller stored in the storage medium and including program instructions to generate inquiries over at least one communication channel to a number of e-mail systems, a data retriever stored in the storage medium including program instructions to receive data concerning e-mail intended for a designated user from the plurality of e-mail systems, and a data handler stored in the storage medium and including program instructions to store and retrieve the data concerning mail for the designated user from the plurality of electronic mail systems. The article of manufacture further includes a controller stored in the storage medium and including program instructions to control the operation of the poller, the data retriever, and the data handler. In addition, the article of manufacture preferably includes an inputter stored in the storage medium including program instructions which allows user inputs to the controller, and a displayer stored in the storage medium including program instructions which allows the selective display data stored by the data handler.
  • The present invention also includes an e-mail database structure stored in machine-readable memory including a plurality of mail headers corresponding to a plurality of e-mail systems that are being monitored for messages for a designated user, and a message block corresponding to each detected message for the designated user from the plurality of e-mail systems, where each message block is linked with an e-mail header. Preferably, each of the plurality of mail headers include information concerning the number of messages with which it is linked. Also preferably, each of the message blocks includes a message identification code associated with the message block and its mail header. Each of the message blocks can further include information concerning the message and pointers to data reflecting a content of the message. The content can include, for example, images of the message, the text of the message, and attachments to the message.
  • These and other advantages of the present invention will become apparent to those skilled in the art upon a reading of the following descriptions of the invention and a study of the several figures of the drawing.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram of a communication system including multiple e-mail systems and an apparatus for monitoring the multiple e-mail systems;
  • FIG. 2 is a block diagram of an apparatus for monitoring multiple e-mail systems;
  • FIG. 3 is a flow-diagram of a method for monitoring multiple e-mail systems in accordance with the present invention;
  • FIG. 4 a is a view of a computer screen which helps illustrate the “CONFIGURE E-MAIL SYSTEM POLLING PROCESS” step of FIG. 3;
  • FIG. 4 b illustrates an interactive dialogue window called from the screen shown in FIG. 4 a;
  • FIG. 5 illustrates a data structure of the present invention;
  • FIG. 6 is a flow-diagram illustrating the “POLL AN E-MAIL SYSTEM FROM USER MACHINE” step of FIG. 3;
  • FIGS. 7 a and 7 b are examples of connection session display screens for establishing and controlling an Internet connection in accordance with a preferred embodiment;
  • FIG. 8 is a flow-diagram of the “RETRIEVE DATA CONCERNING MAIL FROM E-MAIL SYSTEM” step of FIG. 3;
  • FIG. 9 is a diagram illustrating the “STORE DATA ON USER MACHINE” step of FIG. 3;
  • FIGS. 10 a, 10 b, and 10 c illustrate the “DISPLAY DATA CONCERNING A NUMBER OF E-MAIL SYSTEMS” step of FIG. 3;
  • FIG. 11 is a dialog box further illustrating the “DISPLAY DATA” step of FIG. 3; and
  • FIGS. 12 a, 12 b, and 12 c further illustrate an embodiment of the “DISPLAY DATA” step of FIG. 3.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • In FIG. 1, a communication system 10 in accordance with the present invention includes a “local” or “user” computer system 12 and one or more communication channels such as a local area network (LAN) 14, a telephone line 16, and a main-frame computer link 18. The computer system 12 can communicate by electronic mail (e-mail) with a number of remote systems, including a mail server 20, one or more “other” computer systems 21, a remote system 22, a main-frame 24, and a file server 38. The present invention manages and enhances the handling of multiple e-mail sources over one or more communication channels.
  • A computer system 12 of the present invention is preferably a personal computer or workstation available from a variety of vendors. More particularly, computer system 12 is preferably a Macintosh™ computer system available from Apple Computer, Inc. of Cupertino, Calif. However, computer system 12 can also be an IBM/PC-AT compatible personal computer running, for example, DOS or Windows™ operating systems, such systems being available from Microsoft, Inc., of Redmond, Wash. Still further, computer system 12 can be a custom computer system designed primarily for communication with multiple e-mail servers over one or more communication channels.
  • Computer system 12 includes a digital processor 26 (sometimes called a central processing unit or “CPU”), read-only memory (ROM) 28, random access memory (RAM) 30, and input/output (I/O) circuitry 32. The computer system 12 includes an internal bus 34 including appropriate control (C), data (D), and address (A) busses. The digital processor 26, ROM 28, RAM 30, and I/O 32 are coupled (directly or indirectly) to the internal bus 34 to provide internal communications between the system components. The design and manufacture of computer systems such as computer system 12 is well known to those skilled in the art.
  • As indicated previously, the computer system 12 is preferably a Macintosh™ computer system. The digital processor 26 is therefore either preferably a Motorola 68XXX Microprocessor or a Power-PC Microprocessor, also available from Motorola, Inc. ROM 28 includes the basic start-up instructions for the computer system 12 and also includes a substantial portion of the computer operating system. RAM 30 is used as “scratch-pad” memory to temporarily hold data and application programs executing on digital processor 26. 1/0 32 includes latches, buffers, registers, etc. which facilitate the communication of computer system 12 with external devices and systems.
  • Computer system 12 is preferably associated with peripheral memory 36. As used herein, “peripheral memory” will refer to “secondary” or “non-primary” memory. Primary memory such as RAM 30 is used more for the immediate storage needs of the processor 26, while the peripheral memory is typically used for longer term (and less frequently used) storage. Primary memory tends to be volatile (i.e. the memory is lost when power is removed), while peripheral memory tends to be non-volatile. The peripheral memory can be coupled to the computer system 12 through I/O 32 or, in some instances, is directly coupled to the internal bus 34. Examples of peripheral memory include hard disk drive units, floppy disk drive units, and PCMCIA memory units. The peripheral memory 36 is therefore generically represented as one or more of these peripheral memory types.
  • Each of the peripheral memory types described above include computer-readable media. For example, the hard disk of a hard disk drive peripheral memory 36 can store data and software instructions in a magnetic media. Likewise, CD-ROM or floppy disk peripheral memory 36 can store data and software instructions in machine-readable form. The same is true for PCMCIA memory which stores machine-readable data and software instructions in a form of “flash” memory.
  • The communication system 10 can also include an external communication channel such as a local area network (LAN) 14. The LAN 14 is often (but not necessarily) managed by a file server 38. A mail server 20 is often provided to manage e-mail communications among a number of computer systems (such as computer systems 12 and 21) coupled to the local area network 14. The mail server 20 is typically a personal computer system is provided with specialized e-mail software. This e-mail software can also be run on file server 38, or may be distributed throughout the system on user personal computers (such as computer systems 12 and 21) in a peer-to-peer system. However, as it is presently implemented, a mail server 20 is preferably a stand-alone system or is a part of the file server 38.
  • The computer system 12 also has the capability of sending and receiving e-mail to a number of remote systems 22. For example, the computer system 12 can communicate with a commercial service such as America On-Line (AOL), communicate through the Internet, or communicate with an On-Line Banking system. These communication links are typically accomplished through a modem 40 over a standard analog telephone line 16. However, it is also possible to communicate directly digitally with a number of systems, such as over a digital ISDN line. In such an instance, a modem 40 will not be required but, rather, and ISDN bridge or the like would likely be required.
  • To communicate with a remote system 22, the computer system 12 instructs the modem 40 to dial an access number to the remote system 22. A telephone connection is then made over telephone line 16. Of course, as used herein, “telephone line” includes any transmission media used by a telephone service provider including microwave, fiber optic, wire and satellite links. The computer system 12 and remote system 22 can then communicate e-mail messages over this telephone line connection.
  • Computer system 12 can also communicate with other sources of e-mail. For example, mainframe computer systems 24 are often used as central servers for personal computers and computer terminals. For example, the IBM 3090 mainframe is often used for such a purpose. In order to connect the computer system 12 to a mainframe 24, a terminal emulator 42 (such as the 3270 emulator) and interfacer 44 (such as a 3274 interfacer) can be used, as it is well known to those skilled in the art.
  • As will be appreciated from a study of FIG. 1, the computer system 12 can receive e-mail from a variety of sources. For example, the computer system 12 can receive e-mail from mail server 20, a number of remote systems 22, from a mainframe system 24, from the file server 38, and from a number of other computer systems (e.g. computer system 21) coupled to LAN 14. As will be described subsequently, the present invention includes specialized software for managing and controlling e-mail from multiple remote sources. However, it should be noted that some or all of the processes described herein can be implemented in software, firmware, hardware, and any combination of software, firmware, and hardware.
  • FIG. 2 illustrates a communication system 46 in accordance with the present invention. As noted above, the communication system 46 can be implemented in software in a computer-readable media such as RAM 30, and can be provided to end users on computer-readable media such as a floppy disk 48 or a CD-ROM (not shown). When a communication system 46 is stored on floppy disk 48, an article of manufacture is created which can be used to configure computer system 12 to perform the communication management processes of the present invention.
  • The communication system 46 includes a controller 50, a poller 52, a data retriever 54, a data manager 56, an inputter 58, and a displayer 60. The controller 50 provides overall control of the process implemented by the communication system 46. A poller 52 interacts with one or more mail system accessors 62 to communicate over a communication channel 64 with one or more remote e-mail systems. The mail system accessors 62 are typically provided by the e-mail remote service provider. For example, America On-Line (AOL) will provide an AOL mail system accessor, Wells Fargo Bank will provide a Well Fargo On-Line service accessor for on-line banking, etc. Data retrieved from a remote e-mail system is passed by the mail system accessor 62 to data retriever 54. This data is passed to data manager 56 for storage in an appropriate data structure to be discussed subsequently. The data manager 56 can interact with a displayer 60 to display information concerning about the received data on a screen 12. The inputter 58 (typically a keyboard or mouse) of computer system 12 allows user inputs to controller 50.
  • As noted above, in the present invention it is preferred to use the mail system accessors 62 provided by the e-mail system. However, the functionality of the mail system accessors can be directly integrated into the communication system 46 of the present invention. While this requires the development of accessor drivers for each desired e-mail system, it has the advantage of being more closely integrated with the functionality of the communication system 46. Therefore, in an embodiment of the present invention, some or all of the functionality of the mail system accessor 62 may be provided with communication system 46 and delivered on a computer-readable medium such as floppy disk 48. Implementation of such “accessors” or “drivers” is well known to those skilled in the art.
  • In FIG. 3, a process 66 for monitoring multiple electronic mail systems is illustrated. The process 66 begins at 68 and, in a step 70, the e-mail system polling process is configured. Next, in a step 72, an e-mail system is “polled” from a user machine. As used herein, a “poll” refers to the connection to an e-mail system at the initiation of the user's machine and the subsequent inquiry to the remote e-mail system concerning e-mail for the user. The verb “polling” refers to the act of making a “poll.” Next, in a step 74, data concerning e-mail is received from the remote e-mail system. This, data can be the e-mail itself or it can be the existence or non-existence of the e-mail on the remote e-mail system. Next, in a step 76, data is stored on the user machine in a format which permits the storage of information concerning a number of remote e-mail systems. In a step 78, it is determined whether information concerning e-mail is said to be displayed on the screen of the computer system 12. If not, process control is returned to step 72. If information, is to be displayed, it is displayed in step 80 in a format which permits information concerning a number of remote e-mail systems to be displayed simultaneously.
  • In FIGS. 1 and 4 a, a screen 82 of a display 83 coupled to the internal bus 34 of computer system 12 by a video I/O interface 85 is illustrated. The screen 82 includes a “desktop” 84, a command bar 86, and a window 88. Screen similar to the illustrated screen 82 can be provided by Macintosh™ computer systems.
  • The “CONFIGURE E-MAIL SYSTEM POLLING PROCESS” step 70 of FIG. 3 will be described with reference to both FIGS. 4 a and 4 b. In FIG. 4 a, a pointer 90 is pointing to (“selecting”) an e-mail system “QMREMOTE” as indicated by the selection box 92. After the service QMREMOTE has been selected (such as by “double clicking” the button of a mouse 93 coupled to internal bus 34 via a keyboard 95 and a keyboard I/O interface 97 in FIG. 1) a window 94 as illustrated in FIG. 4 b will appear on desktop 84. The window 94 includes a number of fill-in and check-off boxes. For example, the window 94 includes fill-in boxes 96, 98, 100, 102, and 104. Window 94 also includes check-off boxes 106 and 108. The fill-in box 96 permits a user to enter or “input” the frequency of the polling to be provided by the system of the present invention. In this instance, the frequency is set for 30 minutes. That is, every 30 minutes, the poller 52 will access the e-mail system QM Remote, form a communications link, and poll the e-mail system. Fill-in box 98 indicates whether a priority display is to be provided. For non-priority displays, the check-off boxes 106 and 108 indicate whether the source icon is to be cycled or a dialogue box is to be displayed, or both. Fill-in box 100 indicates whether an image of an e-mail should be downloaded to the user's computer system 12. Fill-in box 102 indicates whether text should be downloaded to the user's computer system 12. Finally, fill-in box 104 indicates whether an attachment should be downloaded to the user's e-mail system 12.
  • FIG. 5 illustrates a data structure 110 in accordance with the present invention. This data structure can be stored in any machine-readable medium such as in RAM 30 or in peripheral memory 36. The data structure 110 includes a header 112 and a number of message blocks, such as message blocks 114 and 116. Each of the message blocks (such as message blocks 114 and 116) that are associated with the e-mail system of the header 112 are linked to the header 112. This linking is illustrated graphically by the box 118. As it should be noted that the illustration of FIG. 5 is a logical, and not necessarily physical, construct and the various data can be stored in various locations in memory that are not necessarily contiguous with each other. However, as it is well known to those skilled in the art of data management, pointers and links can be used to provide the functionality described herein even though the data may be distributed in various locations and memory.
  • The header 112 includes the identification of the remote e-mail system, which in this instance, is QMREMOTE. In addition, the header 112 may include the total number of messages on that remote e-mail system, and a number of unread messages on that remote e-mail system. Other information may be included in the header 112 to provide data concerning the particular remote service which helps in the management of the message blocks for that remote service.
  • The message blocks 114 and 116 are similar in structure, although they contain different data. In message block 114, a message ID 120 number “0” is provided so that it can be differentiated from other message blocks. Next, it is indicated whether the message “0” has been read. Since it has, in this instance, an image pointer and a text pointer are provided. The image pointer points to an address A0 where the image of the e-mail is stored in memory. The text pointer points to an address A1 where the text of the message is stored.
  • The message block 114 also indicates that an e-mail “attachment” has been downloaded. As it is well known in the art of providing e-mail systems, and “attachment” is a file, document, image or other datum that accompanies a given e-mail message. Since in this instance it is indicated that an attachment has been downloaded, an attachment pointer A2 points to the location in memory where the attachment has been stored. Next, the priority is indicated to be urgent and the sender is indicated to be James Winston. The message regards a deadline and was sent at Jun. 7, 1995 at 13:33 in the afternoon.
  • Message block 116 includes a message ID 120 of “19”, and indicates that the e-mail for message # 19 has not yet been read. Further, it indicates that the attachment has not been downloaded. The priority of the e-mail is “normal” and the sender is “Sunee.” The message regards “Lunch on Friday” and was sent on Jun. 7, 1995 at 15:53 in the afternoon.
  • It should be noted that the data structure 110 is associated with the e-mail system QM Remote. A similar data structure will be provided for each of the other e-mail remote services supported by the system. For example, America On-Line (AOL) will have its own data structure similar to data structure 110. Such multiple data structures can be managed by a number of data management procedures, as will be appreciated in those skilled in the art. Alternatively, the data structures for the various e-mail remote services can be merged into a single, integrated data structure, as will be appreciated by those skilled in the art of database management.
  • It will also be appreciated that other data structures can be utilized in the present invention. For example, each message block can incorporate some or all of the data of the header, thereby eliminating the need for the header 112. However, such data blocks would integrate the functionality of the header 112, rendering such a structure substantially equivalent.
  • FIG. 6 illustrates the “POLL A REMOTE E-MAIL SYSTEM FROM A USER MACHINE” step 72 of FIG. 3 in greater detail. The process of the 72 begins at 124 and, in a step 126, it is determined whether a poll should be initiated. This determination in step 126 can be manual, e.g. a user indicates that a poll should be initiated or it can be automatic, e.g. the computer initiates the poll at regular time intervals or upon the detection that certain conditions have been met. In the case of automatic polling, the frequency of polling indicated in box 96 of FIG. 4 b can be used. Alternatively, if certain conditions have been met, such as the power-up of the system, the log-in of a new user, or the exiting from computational or memory intensive user applications, the poll can be automatically initiated.
  • If a poll is not to be initiated, the process 72 goes into an idle loop. Of course, other processes may be occurring concurrently. If a poll is to be initiated, the mail connection is established in step 128. As described previously, this is preferably accomplished through a mail system accessor such as a mail system accessor 62 of FIG. 2. Next, in a step 130, it is determined whether the connection was successful. If not, data is stored in an error file in a step 132. Next, in a step 134, is determined whether there should be an additional poll. Reasons for an additional poll can include an unsuccessful connection, or an additional e-mail system on the same communication link. If no additional polling is to be done, the process 72 is complete as indicated by step 136.
  • An example of the establishment of an e-mail connection to the Internet is illustrated in FIGS. 7 a and 7 b. The Internet has become an increasingly popular vehicle for electronic communication and information transfer. An example of an access method display is presented in FIG. 7 a. This display is entered traditionally by double-clicking on an icon associated with a windows session on a personal computer. The toolbar 700 facilitates rapid access to most important commands. The commands on the toolbar can also be typically accessed with the menus on the menu bar. The address bar 730 displays the Internet address (URL) of the World Wide Web page a user is currently viewing. In this instance, the page has an address (URL) of http://www.hickman.com. If the page is located on a local computer, the full path to the page is displayed. The address bar can also be utilized for navigation by typing the address of a page that is of interest to a user. The globe animation 710 revolves in an animated fashion on the display when information transfer is in process from a remote computer on the Internet. The status bar 740 interactively presents information on what is currently happening. The icon at the far right of the bar shows detailed information when the pointer is positioned over it. As data is being retrieved, the detailed information also appears at the status bar's left end. The document display area 720 displays the World Wide Web page currently active in the display area. Any items that are highlighted are links (e.g. “Information”, “Explore”, “Go To”, and “Search”), and clicking on them transfers control to the page of information associated with the link area.
  • When a particular World Wide Web site is accessed, the information associated with the area is placed in a cache, a set of files stored on the user's computer. When a link is selected, the cache is initially queried to determine if the page of interest is located in the cache. If it is, then the page is loaded from the cache instead of transferring the information from the Internet. This greatly increases the speed of operation of the browser. If the page is not found in the cache, then a connection is attempted with the Internet utilizing a modem and autodialer software or through a Local Area Network (LAN) access if a link exists on a local network.
  • A preferred embodiment utilizes the Setting Options display shown in FIG. 7 b to customize features to suit a user's particular preferences and access the Internet through a common interface. From the Select Options display, many of the Internet's features can be selected in accordance with a user's preferences. For example, the Appearance tab 760 allows a user to set colors for foreground, background, and links. Control of the appearance of information on a display can also be manipulated utilizing this display. The Start Page tab 762 allows a user to specify what World Wide Web page should be the first presented to a user when the system is started. The Advanced tab 764 allows a user to specify how many items will be kept in a history folder and how large the cache size should be. The File Types tab 766 allows a user to associate a particular program with a particular file type. For example, if a WordPerfect (WP) file is encountered, WordPerfect™ can be started to allow the file to be properly manipulated by a user. All of these tabs are stored in a file with the values associated with each tab. This file can be manipulated by a program to facilitate interfacing with the standard displays already discussed in accordance with a preferred embodiment of the invention.
  • Therefore, in the present embodiment, the Internet browser is used as the accessor software. The browser is evoked, preferably in the background, to make a connection to the Internet. Macros are then used to poll appropriate web pages (as selected by the user) and/or retrieve e-mail (and any attachments) addressed to the user. For example, commercial services such as UUNET permit users to have a “virtual” domain name on the internet, such as USER@VIRTUALDOMAINNAME.COM. In this instance, “USER” is the name of the mail recipient, “VIRTUALDOMAINNAME” is the name of the commercial entity (e.g. the company), and “COM” designates that it is a commercial enterprise. Other common suffixes are “EDU” for educational entities, “GOV” for government entities, and “NET” for network entities. The accessor software then retrieves the pertinent information from the Internet e-mail, or the e-mail itself and/or its attachments, and uses that information as described herein.
  • In FIG. 8, the step 74 “RETRIEVE DATA CONCERNING E-MAIL” of FIG. 3 is illustrated in greater detail. The process 74 begins at 150 and, in a step 152, the number of messages for a given user on a given e-mail system is retrieved. Next, in a step 154, the number of unread messages for the given user on the given e-mail system is retrieved. Next, in a step 156, the priority, sender, Re, date, time for each message is retrieved. However, it should be noted that steps 152-156 can be performed at different orders, or in some instances, essentially simultaneously.
  • After retrieving information concerning the messages, an iterative loop 158 is entered. The iterative loop uses a counter “i” and loops for the number of unread messages that were determined in step 154. Upon the completion of the iterative loop 158, the process 74 is completed as indicated in step 160. However, if there are still unread messages, a step 162 determines whether the message should be read. This can be determined by the fill-in boxes 100 and 102 of window 94 of FIG. 4 b. If the message is to be read, a decision is made in step 164 whether the image should be captured. If so, the image is captured in a step 166. In a step 168, it is determined whether the text should be downloaded. If so, the text is downloaded in a step 170. Process control is then directed to step 172, which determines whether the attachment (if any) for a given message should be downloaded. If “yes”, the attachment is downloaded in a step 174. Process control is then returned to iterative loop 158 wherein the counter i is incremented by 1. If here are additional unread messages, iterative loop 158 is traversed again, and if not, the process 74 is completed at step 160 as described previously.
  • FIG. 9 is used to illustrate the step 76 “STORE DATA ON USER MACHINE” described with reference to FIG. 3. A preferred data structure has already been described with reference to FIG. 5. As previously described, the data structure 110 includes a number of pointers A0, A1, A2, . . . AN which points to various data D0, D1, D2. . . . DN. Data D0, in this instance, is the image of message 0 retrieved from the e-mail system QM Remote. As used herein and “image” of a message refers to data with contains little or no content information, i.e. just data pertaining to the image itself. For example, an image of a message might include only a bitmap of the visual image of the message, without having information concerning the content of the message, such as the ASCII text of the message. Data D1 is the text for the same message. Likewise, a data structure 110′ can be for a different remote e-mail system such as the Internet. In this instance, pointers A0′ would point to data D0′, pointer A1′ points to data D1′, and pointer AN′ points to pointer DN′. The use of pointers allows large data files (such as images) to be placed in slower mass storage while the searchable data structures 110 and 112 can be placed compactly in a faster storage medium, such as RAM 30.
  • In FIGS. 10 a-10 c, various aspects of steps 80 of FIG. 3 “DISPLAY DATA CONCERNING A NUMBER OF REMOTE E-MAIL SYSTEMS” are illustrated. With brief reference to FIG. 4 a, it will be noted that there is an icon 87 in the upper left hand corner of screen 82. In the case of the Macintosh™ computer system, this icon is the Apple logo for Apple Computer, Inc. A method for displaying the receipt of messages as illustrated in FIG. 10 a is to alternatively flash the icon 87 with abbreviations or icons representing a remote e-mail system having unread messages for a designated user. In is instance, the abbreviations “QMR,” “CC,” and “I” are flashed in succession to indicate that there are messages on Quick Mail Remote, CC mail, and the Internet for the user. For example, the icon 87 can be flashed for one second, the abbreviation “QMR” can be flashed in the place of icon 87 for one second, the abbreviation “CC” can be flashed in the place of the abbreviations QMR for one second, the abbreviation “I” can be flashed in the place of abbreviation CC for one second, and then the icon 87 can replace the abbreviation “I” for one second with the loop repeating until stopped by the user.
  • In FIG. 10 b, a more simplified designator is illustrated. In this instance, the icon 87 and the number 5 are alternatively flashed on the “command bar” 86 of the screen 82. The “command bar” is a visual location on the screen 82 which includes titles of pull-down menus for various system functions. The number “5” indicates that five messages have been received from various e-mail sources. Of course, the number “5” is merely an example, and the actual number of messages received is alternatively flashed with the icon 87.
  • A still simpler mechanism is illustrated in FIG. 10 c. In this instance, the icon 87 is alternatively flashed with an arbitrary symbol, such as the asterisk symbol “*” shown. This merely indicate to users that there is e-mail in the system that is addressed to them from some remote e-mail source.
  • FIG. 11 illustrates a window 176 that can “pop up” on the screen upon the receipt of data concerning a remote e-mail system. This type of window is typically only used for urgent messages, as indicated by priority display selection 98 of FIG. 4 b. In this example, an urgent message is being sent by James Winston concerning a deadline, and the service QM. Remote is indicated as the source of the message. The user can then log-in to QM Remote to receive the message or can retrieve the message or image of the message that had already been downloaded, if the download option had been selected.
  • FIGS. 12 a-12 c illustrate a hierarchy of menus concerning e-mail from a variety of e-mail sources. In FIG. 12 a, a window 178 indicates with selection box 180 that mail has been received through Quick Mail, the Internet, and CC Mail. A pointer 182 can be used to select the Quick Mail source, and the number of read and unread messages on Quick Mail for all senders is displayed in a window 184 in FIG. 12 b. A pointer 186 can then select a given sender (in this case “Sierra”) to create a window 188 which shows all of the Quick Mail messages from Sierra and the status of those messages. In this instance, message 1 is unread, but the image and attachment for the message is stored in local memory, message 2 has been read and the text has been stored in local memory, and message 3 has been unread and the image, text, and attachment has been stored in local memory.
  • While this invention has been described in terms of several preferred embodiments, it is contemplated that alternatives, modifications, permutations and equivalents thereof will become apparent to those skilled in the art upon a reading of the specification and study of the drawings. It is therefore intended that the following appended claims include all such alternatives, modifications, permutations and equivalents as fall within the true spirit and scope of the present invention.

Claims (21)

1. A method for monitoring multiple electronic mail systems over a TCP/IP protocol network comprising the steps of:
configuring an e-mail system polling process on a user machine;
polling a plurality of e-mail systems over a TCP/IP protocol network from said user machine;
retrieving data from said Plurality of e-mail systems concerning mail intended for said user; and
storing said data on said user machine in a format that permits the display of data pertaining to said plurality of e-mail systems.
2. A method for monitoring multiple electronic mail systems as recited in claim 1 wherein said step of configuring an e-mail system polling process includes the steps of:
designating a plurality of e-mail system accessors; and
designating an activation schedule for each of said plurality of e-mail system accessors.
3. A method for monitoring multiple electronic mail systems as recited in claim 2 wherein said step of configuring an e-mail system polling process further includes the step of:
for each of said plurality of e-mail system accessors, designating at least one of a plurality of parameters selected from a message retrieval group consisting essentially of downloading an image, downloading text, and downloading an attachment from an e-mail system accessed by a respective e-mail system accessor.
4. A method for monitoring multiple electronic mail systems as recited in claim 3 wherein said step of configuring an e-mail system polling process further includes the step of:
designating at least one message display parameter for each of said plurality of e-mail system accessors.
5. A method for monitoring multiple electronic mail systems as recited in claim 1 wherein said step of polling a plurality of e-mail systems from said user machine includes the steps of:
detecting a time to initiate a poll for a given e-mail system;
establishing a mail connection to said e-mail system; and
providing an inquiry to said e-mail system to determine the existence of messages for said user.
6. A method for monitoring multiple electronic mail systems as recited in claim 5 wherein said step of establishing a mail mechanism includes the step of activating of an e-mail system accessor.
7. A method for monitoring multiple electronic mail systems as recited in claim 6 wherein said step of retrieving data includes the step of retrieving data from said e-mail system accessor.
8. A method for monitoring multiple electronic mail systems as recited in claim 5 wherein said step of storing data includes the step of storing an e-mail database structure in a machine-readable memory, where said e-mail database structure includes a plurality of mail headers and a message block for each retrieved messages, where each message block is linked to a mail header corresponding to the origin of the data stored in said message block.
9. A method for monitoring multiple electronic mail systems as recited in claim 1 wherein said plurality of e-mail systems are Internet-based e-mail systems.
10. A method for monitoring multiple electronic mail systems as recited in claim 1 further comprising the steps of:
visually displaying an indication that there is at least one message from at least one e-mail system for said user.
11. A method for monitoring multiple electronic mail systems as recited in claim 10 further comprising visually displaying information concerning at least one message detected at an e-mail system for said user.
12-24. (canceled)
25. A method for monitoring multiple electronic mail accounts comprising:
obtaining access information for a plurality of e-mail accounts, where at least two of said plurality of e-mail accounts are hosted by different e-mail systems;
retrieving mail data from said plurality of e-mail accounts; and
consolidating said mail data from said plurality of e-mail accounts.
26. A method for monitoring multiple electronic mail accounts as recited in claim 25 wherein obtaining access information includes:
receiving a designation of a plurality of e-mail accounts; and
receiving a designation of access protocols concerning said plurality of e-mail accounts.
27. A method for monitoring multiple electronic mail accounts as recited in claim 25 further comprising:
visually displaying an indication on said user's system that there is at least one message from at least one e-mail account.
28. A method for monitoring multiple electronic mail accounts as recited in claim 25 further comprising visually displaying information concerning at least one message for said user.
29. A method for monitoring multiple electronic mail accounts as recited in claim 25 wherein said different e-mail systems are Internet-based e-mail systems.
30. An apparatus for monitoring multiple electronic mail accounts comprising:
a digital processor;
read/write memory coupled to said digital processor;
at least one external communications channel coupled to said digital processor permitting said digital processor to communicate with a plurality of external electronic mail accounts, where at least two of said plurality of external electronic mail accounts are hosted by different e-mail systems;
a poller at least partially stored in said read/write memory and executable on said digital processor, said poller being operative to generate inquiries over said at least one communications channel to said plurality of electronic mail accounts;
a data retriever at least partially stored in said read/write memory and executable on said digital processor, said data retriever being operative to receive data concerning mail intended for a designated user from said plurality of electronic mail accounts; and
a consolidator developing data concerning mail for said designated user from said plurality of electronic mail accounts.
31. An apparatus for monitoring multiple electronic mail accounts as recited in claim 30 wherein said at least one external communications channel includes a Local Area Network (LAN).
32. An apparatus for monitoring multiple electronic mail accounts as recited in claim 30 wherein said at least one external communications channel includes a Wide Area Network (WAN).
33. An apparatus for monitoring multiple electronic mail accounts as recited in claim 32 wherein said WAN includes the Internet.
US11/083,814 1995-12-20 2005-03-16 Method and apparatus for monitoring multiple electronic mail systems Abandoned US20050188046A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/083,814 US20050188046A1 (en) 1995-12-20 2005-03-16 Method and apparatus for monitoring multiple electronic mail systems

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/575,918 US5956486A (en) 1995-12-20 1995-12-20 Method and apparatus for monitoring multiple electronic mail systems
US29476099A 1999-04-19 1999-04-19
US11/083,814 US20050188046A1 (en) 1995-12-20 2005-03-16 Method and apparatus for monitoring multiple electronic mail systems

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US29476099A Continuation 1995-12-20 1999-04-19

Publications (1)

Publication Number Publication Date
US20050188046A1 true US20050188046A1 (en) 2005-08-25

Family

ID=24302226

Family Applications (2)

Application Number Title Priority Date Filing Date
US08/575,918 Expired - Lifetime US5956486A (en) 1995-12-20 1995-12-20 Method and apparatus for monitoring multiple electronic mail systems
US11/083,814 Abandoned US20050188046A1 (en) 1995-12-20 2005-03-16 Method and apparatus for monitoring multiple electronic mail systems

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US08/575,918 Expired - Lifetime US5956486A (en) 1995-12-20 1995-12-20 Method and apparatus for monitoring multiple electronic mail systems

Country Status (1)

Country Link
US (2) US5956486A (en)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070088786A1 (en) * 2005-10-14 2007-04-19 Research In Motion Limited Using separate icons for invoking a computer program for presenting distinct sets of service-specific electronic mail messages stored at a wireless communication device
US20080222153A1 (en) * 2007-03-09 2008-09-11 Microsoft Corporation Administrator Level Access To Backend Stores
US7644124B1 (en) * 2000-02-15 2010-01-05 Porter Swain W Privacy enhanced methods and apparatuses for conducting electronic communications
US20100205243A1 (en) * 2008-09-12 2010-08-12 salesforce.com,inc. Methods and systems for polling an on demand service
US20150026338A1 (en) * 2011-01-04 2015-01-22 Calgary Scientific Inc. Method and system for providing remote access to data for display on a mobile device
US9367365B2 (en) 2008-11-26 2016-06-14 Calgary Scientific, Inc. Method and system for providing remote access to a state of an application program
US9602581B2 (en) 2012-03-02 2017-03-21 Calgary Scientific Inc. Remote control of an application using dynamic-linked library (DLL) injection
US9686205B2 (en) 2013-11-29 2017-06-20 Calgary Scientific Inc. Method for providing a connection of a client to an unmanaged service in a client-server remote access system
US9720747B2 (en) 2011-08-15 2017-08-01 Calgary Scientific Inc. Method for flow control and reliable communication in a collaborative environment
US9729673B2 (en) 2012-06-21 2017-08-08 Calgary Scientific Inc. Method and system for providing synchronized views of multiple applications for display on a remote computing device
US9986012B2 (en) 2011-08-15 2018-05-29 Calgary Scientific Inc. Remote access to an application program
US20180167265A1 (en) * 2013-06-26 2018-06-14 Pecan Technologies Inc. E-mail status notification system and method
US10015264B2 (en) 2015-01-30 2018-07-03 Calgary Scientific Inc. Generalized proxy architecture to provide remote access to an application framework
US10055105B2 (en) 2009-02-03 2018-08-21 Calgary Scientific Inc. Method and system for enabling interaction with a plurality of applications using a single user interface
US10158701B2 (en) 2011-03-21 2018-12-18 Calgary Scientific Inc.. Method and system for providing a state model of an application program
US10284688B2 (en) 2011-09-30 2019-05-07 Calgary Scientific Inc. Tiered framework for proving remote access to an application accessible at a uniform resource locator (URL)
US10404641B2 (en) * 2002-03-14 2019-09-03 Microsoft Technology Licensing, Llc Internet e-mail bridge
US10454979B2 (en) 2011-11-23 2019-10-22 Calgary Scientific Inc. Methods and systems for collaborative remote application sharing and conferencing
US11310348B2 (en) 2015-01-30 2022-04-19 Calgary Scientific Inc. Highly scalable, fault tolerant remote access architecture and method of connecting thereto

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035914B1 (en) 1996-01-26 2006-04-25 Simpleair Holdings, Inc. System and method for transmission of data
US5896444A (en) * 1996-06-03 1999-04-20 Webtv Networks, Inc. Method and apparatus for managing communications between a client and a server in a network
JPH09331352A (en) * 1996-06-12 1997-12-22 Matsushita Electric Ind Co Ltd Electronic mail system
JP3790602B2 (en) * 1997-04-25 2006-06-28 富士ゼロックス株式会社 Information sharing device
KR100280045B1 (en) * 1997-05-02 2001-02-01 윤종용 Pigtailing method between optical waveguide device and optical fiber module
US6701376B1 (en) * 1997-06-19 2004-03-02 International Business Machines Corporation Web server enabling browser access to HTML and Non-HTML documents
US6434607B1 (en) 1997-06-19 2002-08-13 International Business Machines Corporation Web server providing role-based multi-level security
US6449640B1 (en) 1997-06-19 2002-09-10 International Business Machines Corporation Web server with unique identification of linked objects
US6401131B1 (en) * 1997-06-19 2002-06-04 International Business Machines Corporation Web server enabling attachment of HTML and non-HTML files to web pages
IL121427A0 (en) * 1997-07-30 1998-01-04 S H F Computers Software Servi System and method for off-line notifying a network user
JP3752799B2 (en) * 1997-09-29 2006-03-08 村田機械株式会社 Communications system
US6195417B1 (en) * 1997-11-18 2001-02-27 Telecheck International, Inc. Automated system for accessing speech-based information
JPH11212884A (en) * 1998-01-22 1999-08-06 Internatl Business Mach Corp <Ibm> Electronic mail transmission device and method
US6272531B1 (en) * 1998-03-31 2001-08-07 International Business Machines Corporation Method and system for recognizing and acting upon dynamic data on the internet
US6219694B1 (en) 1998-05-29 2001-04-17 Research In Motion Limited System and method for pushing information from a host system to a mobile data communication device having a shared electronic address
US6175858B1 (en) * 1998-07-13 2001-01-16 At&T Corp. Intelligent network messaging agent and method
US7076730B1 (en) 1998-12-10 2006-07-11 Intellinet, Inc. Electronic mail software with modular integrated authoring/reading software components
US7444374B1 (en) 1998-12-10 2008-10-28 Michelle Baker Electronic mail software with modular integrated authoring/reading software components including methods and apparatus for controlling the interactivity between mail authors and recipients
US6546417B1 (en) 1998-12-10 2003-04-08 Intellinet, Inc. Enhanced electronic mail system including methods and apparatus for identifying mime types and for displaying different icons
US6628194B1 (en) * 1999-08-31 2003-09-30 At&T Wireless Services, Inc. Filtered in-box for voice mail, e-mail, pages, web-based information, and faxes
US9092535B1 (en) 1999-09-21 2015-07-28 Google Inc. E-mail embedded textual hyperlink object
US6704771B1 (en) 1999-09-21 2004-03-09 Neostar, Inc. Electronic message payload for interfacing with text contained in the message
US6687740B1 (en) 1999-09-21 2004-02-03 Neostar, Inc. System, method and article of manufacture for preventing the proliferation of unwanted electronic messages
US6360221B1 (en) 1999-09-21 2002-03-19 Neostar, Inc. Method and apparatus for the production, delivery, and receipt of enhanced e-mail
US7840639B1 (en) 1999-09-21 2010-11-23 G&H Nevada-Tek Method and article of manufacture for an automatically executed application program associated with an electronic message
US6260041B1 (en) 1999-09-30 2001-07-10 Netcurrents, Inc. Apparatus and method of implementing fast internet real-time search technology (first)
US7421472B1 (en) * 1999-11-19 2008-09-02 Ross Jr Robert C System, method, and computer program product for providing a multi-user e-mail system
US20020046299A1 (en) * 2000-02-09 2002-04-18 Internet2Anywhere, Ltd. Method and system for location independent and platform independent network signaling and action initiating
JP2001265674A (en) * 2000-03-22 2001-09-28 Nec Corp Electronic mail transfer device and electronic mail transfer system
IL135670A0 (en) 2000-04-16 2001-05-20 Netgong Ltd Telephone tuning and signaling system
US7663652B1 (en) 2000-05-03 2010-02-16 Morris Reese Enhanced electronic mail delivery system
US7428576B2 (en) * 2000-05-16 2008-09-23 Hoshiko Llc Addressee-defined mail addressing system and method
FI110400B (en) * 2000-07-03 2003-01-15 Nokia Corp A method, terminal, and system for managing multiple mailboxes
US6839737B1 (en) * 2000-07-19 2005-01-04 Neoplanet, Inc. Messaging system for indicating status of a sender of electronic mail and method and computer program product therefor
AUPQ915600A0 (en) * 2000-08-03 2000-08-24 Ltdnetwork Pty Ltd Online network and associated methods
US6621827B1 (en) * 2000-09-06 2003-09-16 Xanboo, Inc. Adaptive method for polling
US7016853B1 (en) * 2000-09-20 2006-03-21 Openhike, Inc. Method and system for resume storage and retrieval
EP1348166A2 (en) * 2000-10-10 2003-10-01 Upoc, Inc. A personal message delivery system
AU729911B3 (en) * 2000-10-20 2001-02-15 Zhaohui Dong Multi-attachment/email computer related program
US20020111887A1 (en) * 2000-11-07 2002-08-15 Mcfarlane Richard Employee online activity monitoring system
WO2002042860A2 (en) * 2000-11-20 2002-05-30 Xante Corporation System, method, and computer program product for providing a multi-user e-mail system
WO2002046934A1 (en) * 2000-12-06 2002-06-13 Ntt Docomo, Inc. Apparatus and method for distributing content
US7269624B1 (en) * 2000-12-20 2007-09-11 At&T Bls Intellectual Property, Inc. Method and apparatus for dynamically managing electronic mail messages on a remote electronic mail messaging system
US7743112B2 (en) * 2001-01-11 2010-06-22 The Marlin Company Secure electronic media distribution and presentation system
JP2002230250A (en) * 2001-02-02 2002-08-16 Seiko Epson Corp Work flow cooperative processing device, work flow cooperative processing system, work flow system cooperative method, and program and recording medium therefor
US20030208544A1 (en) * 2001-10-30 2003-11-06 Oki Data Americas, Inc. Multifunction e-mail server
US7167910B2 (en) * 2002-02-20 2007-01-23 Microsoft Corporation Social mapping of contacts from computer communication information
US7343365B2 (en) * 2002-02-20 2008-03-11 Microsoft Corporation Computer system architecture for automatic context associations
US7730136B2 (en) * 2002-08-16 2010-06-01 Research In Motion Limited System and method for integrating electronic mail accounts
US7792121B2 (en) * 2003-01-03 2010-09-07 Microsoft Corporation Frame protocol and scheduling system
US7181701B2 (en) * 2003-01-03 2007-02-20 Microsoft Corporation Glanceable information system and method
US7433920B2 (en) * 2003-10-10 2008-10-07 Microsoft Corporation Contact sidebar tile
EP1690176A1 (en) 2003-12-01 2006-08-16 Research In Motion Limited Previewing a new event on a small screen device
US7603420B2 (en) 2004-03-31 2009-10-13 International Business Machines Corporation Method and apparatus for automatic e-mail response interruption based on user activity
US7437169B2 (en) 2004-06-07 2008-10-14 Microsoft Corporation System and method for optimizing network communication in response to network conditions
US7694232B2 (en) * 2004-08-03 2010-04-06 Research In Motion Limited Method and apparatus for providing minimal status display
US20060064462A1 (en) * 2004-09-17 2006-03-23 Shoei-Lai Chen Method and apparatus for fast delivery of mail by message transceiver
US8316315B2 (en) 2005-02-28 2012-11-20 Microsoft Corporation Automatically generated highlight view of electronic interactions
US7831676B1 (en) * 2007-02-21 2010-11-09 Nagar Ajay R Method and system for handling email
CN101521633A (en) * 2008-02-28 2009-09-02 阿里巴巴集团控股有限公司 Method and device for delivering message in instant communication
US9483755B2 (en) 2008-03-04 2016-11-01 Apple Inc. Portable multifunction device, method, and graphical user interface for an email client
US9898162B2 (en) 2014-05-30 2018-02-20 Apple Inc. Swiping functions for messaging applications
WO2016036509A1 (en) 2014-09-02 2016-03-10 Apple Inc. Electronic mail user interface

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4935954A (en) * 1988-12-28 1990-06-19 At&T Company Automated message retrieval system
US5333266A (en) * 1992-03-27 1994-07-26 International Business Machines Corporation Method and apparatus for message handling in computer systems
US5341293A (en) * 1991-05-15 1994-08-23 Apple Computer, Inc. User interface system having programmable user interface elements
US5379340A (en) * 1991-08-02 1995-01-03 Betterprize Limited Text communication system
US5390281A (en) * 1992-05-27 1995-02-14 Apple Computer, Inc. Method and apparatus for deducing user intent and providing computer implemented services
US5396546A (en) * 1991-10-03 1995-03-07 Viscorp Apparatus and method for automatic and user configurable information appliance
US5406557A (en) * 1993-02-01 1995-04-11 National Semiconductor Corporation Interenterprise electronic mail hub
US5426594A (en) * 1993-04-02 1995-06-20 Motorola, Inc. Electronic greeting card store and communication system
US5434910A (en) * 1992-10-22 1995-07-18 International Business Machines Corporation Method and system for providing multimedia substitution in messaging systems
US5448698A (en) * 1993-04-05 1995-09-05 Hewlett-Packard Company Inter-processor communication system in which messages are stored at locations specified by the sender
US5487100A (en) * 1992-09-30 1996-01-23 Motorola, Inc. Electronic mail message delivery system
US5513126A (en) * 1993-10-04 1996-04-30 Xerox Corporation Network having selectively accessible recipient prioritized communication channel profiles
US5524201A (en) * 1993-11-03 1996-06-04 Apple Computer, Inc. Method of preparing an electronic book for a computer system
US5544295A (en) * 1992-05-27 1996-08-06 Apple Computer, Inc. Method and apparatus for indicating a change in status of an object and its disposition using animation
US5555369A (en) * 1994-02-14 1996-09-10 Apple Computer, Inc. Method of creating packages for a pointer-based computer system
US5557736A (en) * 1992-03-19 1996-09-17 Hitachi Electronics Services Co., Ltd. Computer system and job transfer method using electronic mail system
US5579472A (en) * 1994-11-09 1996-11-26 Novalink Technologies, Inc. Group-oriented communications user interface
US6052442A (en) * 1995-11-07 2000-04-18 Internet Magic, Inc. Internet answering machine
US6195686B1 (en) * 1997-09-29 2001-02-27 Ericsson Inc. Messaging application having a plurality of interfacing capabilities

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4935954A (en) * 1988-12-28 1990-06-19 At&T Company Automated message retrieval system
US5341293A (en) * 1991-05-15 1994-08-23 Apple Computer, Inc. User interface system having programmable user interface elements
US5379340A (en) * 1991-08-02 1995-01-03 Betterprize Limited Text communication system
US5396546A (en) * 1991-10-03 1995-03-07 Viscorp Apparatus and method for automatic and user configurable information appliance
US5557736A (en) * 1992-03-19 1996-09-17 Hitachi Electronics Services Co., Ltd. Computer system and job transfer method using electronic mail system
US5333266A (en) * 1992-03-27 1994-07-26 International Business Machines Corporation Method and apparatus for message handling in computer systems
US5390281A (en) * 1992-05-27 1995-02-14 Apple Computer, Inc. Method and apparatus for deducing user intent and providing computer implemented services
US5544295A (en) * 1992-05-27 1996-08-06 Apple Computer, Inc. Method and apparatus for indicating a change in status of an object and its disposition using animation
US5487100A (en) * 1992-09-30 1996-01-23 Motorola, Inc. Electronic mail message delivery system
US5434910A (en) * 1992-10-22 1995-07-18 International Business Machines Corporation Method and system for providing multimedia substitution in messaging systems
US5406557A (en) * 1993-02-01 1995-04-11 National Semiconductor Corporation Interenterprise electronic mail hub
US5426594A (en) * 1993-04-02 1995-06-20 Motorola, Inc. Electronic greeting card store and communication system
US5448698A (en) * 1993-04-05 1995-09-05 Hewlett-Packard Company Inter-processor communication system in which messages are stored at locations specified by the sender
US5513126A (en) * 1993-10-04 1996-04-30 Xerox Corporation Network having selectively accessible recipient prioritized communication channel profiles
US5524201A (en) * 1993-11-03 1996-06-04 Apple Computer, Inc. Method of preparing an electronic book for a computer system
US5555369A (en) * 1994-02-14 1996-09-10 Apple Computer, Inc. Method of creating packages for a pointer-based computer system
US5579472A (en) * 1994-11-09 1996-11-26 Novalink Technologies, Inc. Group-oriented communications user interface
US6052442A (en) * 1995-11-07 2000-04-18 Internet Magic, Inc. Internet answering machine
US6195686B1 (en) * 1997-09-29 2001-02-27 Ericsson Inc. Messaging application having a plurality of interfacing capabilities

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7644124B1 (en) * 2000-02-15 2010-01-05 Porter Swain W Privacy enhanced methods and apparatuses for conducting electronic communications
US10404641B2 (en) * 2002-03-14 2019-09-03 Microsoft Technology Licensing, Llc Internet e-mail bridge
US20070088786A1 (en) * 2005-10-14 2007-04-19 Research In Motion Limited Using separate icons for invoking a computer program for presenting distinct sets of service-specific electronic mail messages stored at a wireless communication device
US20080222153A1 (en) * 2007-03-09 2008-09-11 Microsoft Corporation Administrator Level Access To Backend Stores
US8499312B2 (en) * 2007-03-09 2013-07-30 Microsoft Corporation Administrator level access to backend stores
US20100205243A1 (en) * 2008-09-12 2010-08-12 salesforce.com,inc. Methods and systems for polling an on demand service
US8407338B2 (en) * 2008-09-12 2013-03-26 Salesforce.Com Methods and systems for polling an on demand service
US10965745B2 (en) 2008-11-26 2021-03-30 Calgary Scientific Inc. Method and system for providing remote access to a state of an application program
US9367365B2 (en) 2008-11-26 2016-06-14 Calgary Scientific, Inc. Method and system for providing remote access to a state of an application program
US10334042B2 (en) 2008-11-26 2019-06-25 Calgary Scientific Inc. Method and system for providing remote access to a state of an application program
US9871860B2 (en) 2008-11-26 2018-01-16 Calgary Scientific Inc. Method and system for providing remote access to a state of an application program
US10055105B2 (en) 2009-02-03 2018-08-21 Calgary Scientific Inc. Method and system for enabling interaction with a plurality of applications using a single user interface
US10410306B1 (en) 2011-01-04 2019-09-10 Calgary Scientific Inc. Method and system for providing remote access to data for display on a mobile device
US20150026338A1 (en) * 2011-01-04 2015-01-22 Calgary Scientific Inc. Method and system for providing remote access to data for display on a mobile device
US9741084B2 (en) * 2011-01-04 2017-08-22 Calgary Scientific Inc. Method and system for providing remote access to data for display on a mobile device
US10158701B2 (en) 2011-03-21 2018-12-18 Calgary Scientific Inc.. Method and system for providing a state model of an application program
US9992253B2 (en) 2011-08-15 2018-06-05 Calgary Scientific Inc. Non-invasive remote access to an application program
US9720747B2 (en) 2011-08-15 2017-08-01 Calgary Scientific Inc. Method for flow control and reliable communication in a collaborative environment
US9986012B2 (en) 2011-08-15 2018-05-29 Calgary Scientific Inc. Remote access to an application program
US10693940B2 (en) 2011-08-15 2020-06-23 Calgary Scientific Inc. Remote access to an application program
US10474514B2 (en) 2011-08-15 2019-11-12 Calgary Scientific Inc. Method for flow control and for reliable communication in a collaborative environment
US10904363B2 (en) 2011-09-30 2021-01-26 Calgary Scientific Inc. Tiered framework for proving remote access to an application accessible at a uniform resource locator (URL)
US10284688B2 (en) 2011-09-30 2019-05-07 Calgary Scientific Inc. Tiered framework for proving remote access to an application accessible at a uniform resource locator (URL)
US10454979B2 (en) 2011-11-23 2019-10-22 Calgary Scientific Inc. Methods and systems for collaborative remote application sharing and conferencing
US9602581B2 (en) 2012-03-02 2017-03-21 Calgary Scientific Inc. Remote control of an application using dynamic-linked library (DLL) injection
US9729673B2 (en) 2012-06-21 2017-08-08 Calgary Scientific Inc. Method and system for providing synchronized views of multiple applications for display on a remote computing device
US20180167265A1 (en) * 2013-06-26 2018-06-14 Pecan Technologies Inc. E-mail status notification system and method
US10880156B2 (en) * 2013-06-26 2020-12-29 Pecan Technologies Inc E-mail status notification system and method
US11695622B2 (en) 2013-06-26 2023-07-04 Blix Inc. E-mail status notification system and method
US9686205B2 (en) 2013-11-29 2017-06-20 Calgary Scientific Inc. Method for providing a connection of a client to an unmanaged service in a client-server remote access system
US9979670B2 (en) 2013-11-29 2018-05-22 Calgary Scientific Inc. Method for providing a connection of a client to an unmanaged service in a client-server remote access system
US10728168B2 (en) 2013-11-29 2020-07-28 Calgary Scientific Inc. Method for providing a connection of a client to an unmanaged service in a client-server remote access system
US10015264B2 (en) 2015-01-30 2018-07-03 Calgary Scientific Inc. Generalized proxy architecture to provide remote access to an application framework
US11310348B2 (en) 2015-01-30 2022-04-19 Calgary Scientific Inc. Highly scalable, fault tolerant remote access architecture and method of connecting thereto

Also Published As

Publication number Publication date
US5956486A (en) 1999-09-21

Similar Documents

Publication Publication Date Title
US5956486A (en) Method and apparatus for monitoring multiple electronic mail systems
US10528917B2 (en) Automated electronic message filing system
AU2005202447B2 (en) Hierarchical projects in a computer-enabled project management method and system
US6708202B1 (en) Method for highlighting information contained in an electronic message
US7562116B2 (en) Apparatus for determining availability of a user of an instant messaging application
JP4871113B2 (en) Method and system for providing version control of email attachments
US7370290B2 (en) Contact card
US7509386B2 (en) Chat system displaying a link arrow directed from a hyperlink to content of an associated attachment file
US7912913B2 (en) Facilitating presentation and monitoring of electronic mail messages with reply by constraints
US7970834B2 (en) Method and program product for tracking a file attachment in an e-mail
US7818674B2 (en) Method, system, apparatus, and computer-readable medium for interactive notification of events
US8677275B2 (en) Illustrating a menu of insights associated with visualizations
US5802299A (en) Interactive system for authoring hypertext document collections
US7447712B2 (en) Structured workfolder
US7603420B2 (en) Method and apparatus for automatic e-mail response interruption based on user activity
US8032553B2 (en) Email integrated task processor
US7596603B2 (en) Automatic email consolidation for multiple participants
US20030097361A1 (en) Message center based desktop systems
US20010016845A1 (en) Method and apparatus for receiving information in response to a request from an email client
US20070101284A1 (en) Unified tracking of time dependent events
US7266584B2 (en) Electronic mail distribution via a network of computer controlled display terminals with interactive display interfaces enabling senders/receivers to view sequences of only text from sequences of E-Mail having same headers
US7844961B2 (en) Automatic field linking
JP2000200225A (en) Electronic mail device and recording medium where program for electronic mail process is recorded

Legal Events

Date Code Title Description
AS Assignment

Owner name: ENVISAGE CORPORATION, CALIFORNIA

Free format text: REASSIGNMENT;ASSIGNOR:H&S1;REEL/FRAME:016460/0834

Effective date: 20050705

AS Assignment

Owner name: ENVISAGE CORP., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HICKMAN COLEMAN & HUGHES LLP;REEL/FRAME:019699/0159

Effective date: 20070808

AS Assignment

Owner name: H&S1, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ESTATE OF LAWRENCE KEITH STEPHENS;REEL/FRAME:019767/0286

Effective date: 20060719

AS Assignment

Owner name: EVSG TRANSFER GROUP, L.L.C., DELAWARE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ENVISAGE CORP.;REEL/FRAME:019930/0927

Effective date: 20070906

STCB Information on status: application discontinuation

Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION