`Hammond
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 6,854,007 B1
`Feb. 8, 2005
`
`U5006854007Bl
`
`(54)
`
`METHOD AND SYSTEM FOR ENHANCING
`RELIABILITY OF COMMUNICATION WITH
`ELECTRONIC MESSAGES
`
`(75)
`
`Inventor: Nancey J. Hammond, Eagle, ID (US)
`
`(73) Assignee: Micron Technology, Inc., Boise, ID
`(US)
`
`( * ) Notice:
`
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`(21) Appl. N0.: 09/153,994
`
`(22)
`
`Filed:
`
`Sep. 17, 1998
`
`(51)
`
`Int. Cl.7 ................................................ G06F 15/16
`
`(52) US. Cl.
`
`........................ 709/206; 709/207; 719/313
`
`(58) Field of Search .......................... 719/313; 709/206,
`709/207, 200, 313, 310, 204
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`.............. 713/166
`4,962,532 A * [0/1990 Kasit'aj etal.
`358/402
`5,057,935. A " 10/1991 Williams
`709/206
`5,325,310 A *
`6/1904 Johnson et al.
`
`34017.23
`5,396,537 A *
`3/1995 Schwendeman
`5,487,100 A * moon Kane ......................... 340/723
`
`.....
`
`(List continued on next page.)
`FOREIGN PATENT DOCUMENTS
`
`JP
`JP
`JP
`
`04282934 A * 10/1992
`08130554 A “
`5/1996
`11252164 A *
`0/1999
`
`........... H04L/12/‘S4
`........... H04L/12/54
`........... H04L/12/‘S4
`
`OTHER PUBLICATIONS
`
`Fulton, Jennifer et a1. "Netscape Navigator 6 in 1”. Que
`Corporation. 1996. p. 177—188.*
`Cox, Nancy. “Messaging’s next blockbuster hit”. Computer
`Select,Apr. 15, 1997.*
`Microsoft. “Messaging Client API". MAP] Version 1.0. Apr.
`15, 1992.‘
`
`Drummond, Rik. “Save and secure electronic commerce."
`Computer Select. Dec. 1, 1996*
`Moore, K. “An Extensible Message Format for Delivery
`Status Notification.” RFC 1894. Jan. 1996.*
`
`Fleming, S.T. “Electronic mail: case study in task—oriented
`restructuring of application domain.” IEEE, Mar. 1994.‘
`
`(List continued on next page.)
`
`Primary Examiner—Lewis A. Bullock, Jr.
`(74) Attorney, Agent, or Firm—Dorsey & Whitney LLP
`
`(57)
`
`ABSTRACT
`
`A system for enhancing the reliability of communicating
`with electronic messages. The system sends an electronic
`message to designated recipients, and then automatically
`helps ensure that each message has been successfully deliv-
`ered within a specified period of time and that each message
`has been reviewed within a specified period of time. In
`addition, the system automatically performs specified activi-
`ties after review of a message takes place. The sender of an
`electronic message initiates reliability-enhanced messaging
`by specifying message delivery information and message
`review information. The sender can specify that if delivery
`or review notifications are not received within specified
`periods of time, the message will be resent to the recipient
`or a reminder message will be sent to the recipient or to
`another user. The message information can include various
`frequency and duration options, such as resending a message
`only once or resending it every 2 hours for a week. Message
`information can also specify to resend the message with a
`higher transmission priority or review urgency so that its
`delivery and review is more likely, or could specify to use
`a different recipient system for the recipient (e.g., to a second
`email address if a first address fails, or to a pager if a cellular
`phone is not available). Each recipient of a message can
`have individualized message delivery information. The sys-
`tem tracks whether each message has been delivered to each
`recipient, and uses the message delivery information to
`resend the messages whose delivery and review was not
`continued.
`
`96 Claims, 7 Drawing Sheets
`
`mv
`
`f m
`
`i
`
`)WMW/flfi
`MW imam,
`was rimm-
`
`”7
`
`'
`
`
`
`
`H mm m
`m... ...
`Rllrflcwfl
`.26 I
`hur-
`tminfiiauk I ,7
`_3’
`
`
`
`"2
`um.“
`menu
`Winn/[.11
`
`L_—i
`
`
`
`
`
`Page 1 of 21
`
`AT&T EXHIBIT 1041
`
`
`
`US 6,854,007 B1
`Page 2
`
`“What is HyperNews?,”http://WWW.cer.ch/WebOfficialD0c/
`HyperNews/WhatIsHNhtml, pp. 1—4 [Accessed Jan. 22,
`1998].
`“The Right Work Environment for Network—Centric Com-
`puting,”
`http://esuite.lotus.com/eSuite/eSuiteiSite.nsf/
`b9160abf61cf14e38525653b006a4e99/
`2d227cfb1f91d8dc85256541002254, p. 1 [Accessed Jan. 22,
`1998].
`“Project Cyrus: Overview of Technologies Chosen,” http://
`andreW2.andreW.cmu.edu/cyrus/cyrustech0verview.fm.
`html, pp. 1—2 [Accessed Jan. 22, 1998].
`“Multiple—reply
`‘SPAR’ Service,” DataBack Systems,
`http://WWW2.databack.com/mailback/multisparhtm, pp. 1—2
`[Accessed Jan. 28, 1998].
`“Conferencing Systems,” Collaborative Conferencing,
`http://WWW.hypernews.org/HyperNews/get/WWW.collab/
`c0nferencing.html, pp. 1—4 [Accessed Jan. 22, 1998].
`“AutoResponder/AutoMailer/Autobot Comparisons,” http://
`WWW.makura.c0m/aut0/autoc0mp.html, pp. 1—18 [Accessed
`Jan. 28, 1998].
`“Lotus cczMail Release 8.1,” http://WWW.ccmail.c0m/0ver-
`view/r81specsheet.htm, pp. 1—3 [Accessed Jan. 22, 1998].
`“Lotus cczMail Technical Overview,” http://WWW.ccmail.
`com/overvieW/overview.htm, pp. 1—43 [Accessed Jan. 22,
`1998].
`“GroupWise 5: Detailed Information,” Novell GroupWise 5
`Product Details, http://WWW.sisnema.com.br/n0vell/ngw5/
`ngW5.1/inf0rmativ0/inf0ing.htm, pp. 1—9 [Accessed Jan. 28,
`1998].
`
`* cited by examiner
`
`U.S. PATENT DOCUMENTS
`
`..
`
`
`
`5,740,231 A *
`................. 370/401
`4/1998 Cohn et al.
`5,742,668 A *
`4/1998 Pepe et al. ............... 455/415
`
`5,764,899 A *
`..... 709/203
`6/1998 Eggleston et al.
`..
`5,790,639 A *
`........... 358/407
`8/1998 Ranalli et al.
`
`5,793,973 A *
`..... 709/223
`8/1998 Birdwell et al.
`
`5,819,110 A * 10/1998 Motoyama ............. 710/15
`5,842,195 A * 11/1998 Peters et al.
`........
`707/1
`5,893,099 A *
`4/1999 Schreiber et al.
`707/10
`5,923,848 A *
`7/1999 Goodhand et al.
`..... 709/219
`
`..... 709/204
`5,930,471 A *
`7/1999 Milewski et al.
`
`..... 707/200
`5,940,823 A *
`8/1999 Schreiber et al.
`
`..................... 709/203
`5,978,836 A * 11/1999 Ouchi
`..... 709/203
`6,002,852 A * 12/1999 Birdwell et al.
`
`..... 709/226
`6,038,601 A *
`3/2000 Lambert et al.
`
`8/2000 Nielsen ................... 709/206
`6,108,688 A *
`
`..... 709/228
`6,108,709 A *
`8/2000 Shinomura et al.
`.
`
`............ 709/206
`6,157,945 A * 12/2000 Balma et al.
`
`1/2001 Mohler .................... 709/206
`6,175,859 B1 *
`......... 709/206
`6,185,603 B1 *
`2/2001 Henderson et al.
`6,208,996 B1 *
`3/2001 Ben—Shachar et al.
`...... 345/963
`6,272,532 B1 *
`8/2001 Feinleib ...................... 709/206
`
`6,314,454 B1 * 11/2001 Wang et al.
` ............. 709/206
`6,327,046 B1 * 12/2001 Miyamoto et al.
`......... 358/1.15
`........................ 709/206
`6,370,567 B1 *
`4/2002 Ouchi
`
`7/2002 Reilly .............. 709/206
`6,427,164 B1 *
`..... 709/206
`6,453,341 B1 *
`9/2002 Miloslavsky .
`
`
`8/2003 Murray ................. 340/7.2
`6,603,389 B1 *
`................ 709/206
`6,618,747 B1 *
`9/2003 Flynn et al.
`2002/0055898 A1 *
`5/2002 Burakoff et al.
`.............. 705/35
`2002/0144154 A1 * 10/2002 Tomkow ..................... 713/201
`
`OTHER PUBLICATIONS
`
`http://WWW.ci0.com/WebMaster/
`“Conferencing Tools,”
`wmiconferencinghtml, p. 1 [Accessed Jan. 22, 1998].
`
`Page 2 of 21
`
`Page 2 of 21
`
`
`
`US. Patent
`
`Feb. 8, 2005
`
`Sheet 1 0f 7
`
`US 6,854,007 B1
`
`cm“
`
`x555:
`
`Q:
`
`93
`
`OE\
`
`Q:N!
`
`
`
`
`
`
`
`Non“385859:
`
`mm5@205
`
`muwmmmoa
`
`32>qu
`
`meBm
`
`00?wa
`
`owmmmuE
`
`«>630..
`
`
`W293%$5988EMEBE
`
`
`
`
`
`
`
`
`NEm
`
`
`
`
`
`QNN\$253H:
`
`owsmmuE
`
`o?
`
`FEES:
`
`€950:
`
`docuwczoo
`
`:
`
`P
`
`LBEESQ
`
`£89.32
`
`
`
`EMT—Ufiwdmiu
`
`
`
`v.2
`
`buEmummmmu;
`
`
`
`mg“Begumommmmflz
`
`392%
`
`
`a:33%$203
`93$wcfiumfik
`925:9:Q:\SAC
`
` SEnmm.»32.5%ommmmu;
`
`
`5380.5233‘
`
`
`
`Km“953mgvwnmmuz
`
` QS\
`
`
`
`
`
`E25;859:35Com
`
`
`
`
`
`
`
`
`
`Page 3 of 21
`
`Page 3 of 21
`
`
`
`
`
`
`
`
`
`US. Patent
`
`Feb. 8, 2005
`
`Sheet 2 0f 7
`
`US 6,854,007 B1
`
`
`
`
`
`
`Message Trucking Table
`
`4
`
`s
`
`6
`
`7
`
`a
`
`Delivery
`Time
`
`Review
`Time
`
`Resend
`Time
`Period
`
`Review
`Reminde
`r Time
`Period
`
`Post-
`Review
`Time
`Period
`
`1 hour
`
`1 day
`
`1
`
`ATS-C
`
`1
`2
`
`
`
`
`Message Reeipien
`Send
`Time
`TD
`tlD
`
`
`
`07/26/XX 07/26/XX 07/28/"XX
`
`
`18:26:33
`10:12:33
`18:28:15
`
`
`07/2 6/XX 07/27/XX 07/27/XX
`2
`1
`18 hours
`
`
`
`00:15:12
`18:26:33
`J—
`11:33:37
`
`
`3
`2
`CDE
`owe/xx
`07/30/XX [—
`2 days
`1 day
`—
`
`10:05:10
`09:08:13
`
`4
`3
`ABC
`osmoxxx
`T
`09:10:13 l 09:10:17
`minute
`
`Row/2
`Colum
`
`r1
`
`1
`
`_
`
`'
`
`!
`
`7
`
`l
`
`08/10/XX
`
`1
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`_l
`l
`,
`
`Message Tracking Table (continued)
`
`
`
`/ 127
`
`/
`
`Row/
`Column
`
`9 T 10
`
`11
`
`12
`
`l
`1
`
`13
`
`14
`
`
`
`
`Resend
`Record
`
`Resend
`Options
`
`Postv
`P'ost—
`Review
`Review
`Review
`Review
`Reminder
`Reminder
`
`Options
`Record
`Record
`Options
`
`Me'sgigc
`1
`07/27/XX 07/128/XX
`High
`High
`
`
`Prior-11y
`Y
`18:30:10
`11:13:00
`Urgency
`
`Max
`Template
`3 times
`X
`
`2
`
`07/26/XX
`
`20:26:45
`
`07/26/XX
`
`22:28:13
`
`07/31/XX
`Supervisor [ Template
`3
`l—
`
`09:10:00
`R
`
`‘
`
`4
`
`E70 1 /XX
`Template
`
`09:10:10
`S
`—l
`
`r——
`
`Flg. 2
`
`Page 4 of 21
`
`Page 4 of 21
`
`
`
`US. Patent
`
`Feb. 8, 2005
`
`Sheet 3 0f 7
`
`US 6,854,007 B1
`
`
`Fig. 3A
`30“
`Message Sender
`Routine
`
`
`
`
`
`
`Receive Electronic
`
`305
`
`Message
`
`
`
`
`
`
`
`325
`
`327
`
`
`
`R:
`
`
`V
`
`Recew‘e designation of L/ 370
`recipient
`
`__w.T__i
`
`Add entry to Mcssge L/ 373
`
`'l'rucking Table
`
`Receive designation of
`message tracking
`options for recipient
`
`315
`
`320
`
`Yes
`
`Delivery
`
`resending
`
`\\rcquested?
`
`N0
`
`
`
`
`
`
`Update Message
`
`Tracking Table with
`Message Resend Time
`
`
`and Resend Options
`
`
`
`
`
`
`
`I
`
`|___
`
`Sei’ Resend timer
`
`Page 5 of 21
`
`Page 5 of 21
`
`
`
`US. Patent
`
`Feb. 8, 2005
`
`Sheet 4 0f 7
`
`US 6,854,007 B1
`
`
`
`
` R evi ew
`
`Reminding
`Requested?
`
`
`C 335
`Update Message
`Tracking Table with
`Message Review
`Reminder Time and
`Review Reminder
`
`’ostheView
`
`
`
`Messages
`Requested?
`
`
`
`
`1
`
`Options
`
`1
`
`2 337
`
`Set Review
`Reminder timer
`
`
`
`Q
`
`
`
`Update Message
`
`
`Tracking Table with
`Post—Review Time and
`
`
`Post—Review Options
`
`
`
`
`
` More
`
`recipients?
`
`
`
`
`Send Message to
`recipients and update
`Message Tracking Table
`with Send Time
`
`
`
`
`
`
`More Messages
`to Send?
`
`
`
`'No
`
`
`Yes
`
`,,
`End
`
`395
`
`Fig. 3B
`
`Page 6 of 21
`
`Page 6 of 21
`
`
`
`US. Patent
`
`Feb. 8, 2005
`
`Sheet 5 0f 7
`
`US 6,854,007 B1
`
`
`
`. \
`Message Receipt
`Tracker Routine
`
`400
`
`
`
`
`
`Receive receipt for sent / 405
`electronic message
`
`
`
`'
`
`Add deliverytimeto
`Mesgage Tracking Table
`420
`
`Reset any existing
`Resend timers
`
`
`
`
`
`Delive\< ’
`reeeipt?/
`1N0
`430 K 425
`
`
`Add review time to
`Revie
`receipt?
`
`
`
`
`Message Tracking Table
`
`
`Reset any existing
`Review Reminder timers
`
`Process receipt in
`appropriate manner
`
`1
`
`440 —-——‘
`
`
`
`Set Post-Review timer if
`
`
`indicated by Post-
`Review Options
`
`
`
`YCS
`
`
`t0recfi::?/>
`
`' 450
`
`Mme rceeipts
`
`C—mr‘y 495
`
`
`
`Fig. 4
`
`Page 7 of 21
`
`Page 7 of 21
`
`
`
`US. Patent
`
`Feb. 8, 2005
`
`Sheet 6 0f 7
`
`US 6,854,007 B1
`
`Message Tracking
`
`500
`
`W V
`
`Fig. 5A
`
`
`Select First Entry in
`Message Tracking
`Table
`
`/ 505
`
`510
`
` Yes>___._ Resend
`
`timer expired?
`
`
`
`1
`
`515
`
`Resend message to
`
`
`recepiem as indicated by
`Resend options, and
`update Resend Records
`in Message Tracking
`Table
`
`Processor Routine
`
`
`Reminder Records in
`
`520
`
`
`
`eview Reminder
`
`timer expired?
`
`Send reminder message
`as indicated by Review
`Reminder Options, and
`update Review
`
`Message Tracking Table
`
`Page 8 of 21
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 8 of 21
`
`
`
`US. Patent
`
`Feb. 8, 2005
`
`Sheet 7 0f 7
`
`US 6,854,007 B1
`
`530
`
`Post-Review
`
`timer expired?
`
`
`
`
`
`Send 1m
`
`
`message as indicated
`‘ 535
`by Post-Review
`Options, and update
`
`Post-Review records
`in Message Tracking
`
`Table
`
`538
`
`
`
`Set new timers
`if needed
`
`539
`
`
`
`545
`
`555
`
`595
`
`
`
`
`
`
`
`
`
`—>
`
`/
`
`— 537
`
`lure messages >Yes
`to send?
`
`
`
`Remove entry from
`Message Tracking
`Table
`
`
`'C
`
`550
`
`
`
`Sclccl next entry in
`
`Message Tracking
`
`Table
`
`
`
`
`Fig. SB
`
`Page 9 of 21
`
`Page 9 of 21
`
`
`
`US 6,854,007 B1
`
`1
`METHOD AND SYSTEM FOR ENHANCING
`RELIABILITY OF COMMUNICATION WITH
`ELECTRONIC MESSAGES
`
`TECHNICAL FIELD
`
`The present invention relates generally to communicating
`via electronic messages, and more particularly to enhancing
`the reliability of the communication.
`
`BACKGROUND OF THE INVENTION
`
`Electronically-communicated messages (“electronic
`messages”) such as email, paging messages, and voice mail
`have become increasingly popular and pervasive in recent
`years. For the creator of an electronic-message, the ability to
`send the message to one or more recipients provides for
`quick and efficient communication. Such communication via
`electronic messages has become common in both business
`and personal settings.
`While the initial distribution of electronic messages by a
`sender is quick and convenient, ensuring that an electronic
`message is delivered (i.e., received by the recipient) and
`reviewed (e.g., reading an email or paging text, viewing an
`email image, listening to a voice mail message, etc.) within
`a certain time frame is not convenient. Due to the asynchro-
`nous nature of most electronic message transmission
`systems, immediate feedback is not provided as to whether
`the electronic message has been reliably received by each of
`the recipients. Some transmission systems provide a facility
`such that if an error is detected by a sending system (e.g., a
`recipient system is currently unavailable at
`the time of
`sending,
`the sending system may attempt
`to resend the
`electronic message. In such systems, if the error reoccurs,
`the transmission system typically notifies the sender that
`delivery failed. Thus, the sender receives no indication that
`message delivery problems exist until after an amount of
`time, which can be lengthy, has elapsed. In other transmis-
`sion systems, the sender will receive no notification even if
`the delivery of the electronic message fails.
`Moreover, even if the delivery of an electronic message to
`a recipient
`is successful,
`it
`if often important
`that
`the
`recipient review the electronic message within a certain
`amount of time. Transmission systems typically do not
`provide a mechanism to reliably ensure that a recipient has
`reviewed a successfully delivered message. Afew transmis-
`sion systems allow the sender to request notification when
`an electronic message is received by a recipient and when it
`is accessed (e.g., opened by an application program with
`which the recipient can review the message) by the recipient.
`In some such systems, the recipient’s system will provide to
`the sender’s system a delivery receipt or a review receipt to
`provide notification when delivery or review of an electronic
`message has occurred. Thus, if a review receipt has not yet
`been received, then the recipient may not have reviewed the
`electronic message. However, the sender has no automatic
`means of prompting or convincing the recipient to review
`the electronic message. Finally, if it desirable that some
`action be automatically performed after a recipient has
`reviewed an electronic message (e.g., sending a follow-up
`message), there is no automatic means of providing this
`functionality.
`
`SUMMARY OF THE INVENTION
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`nicating with electronic messages. In particular, the system
`sends an electronic message to designated recipients, and
`then automatically helps ensure that each message has been
`successfully delivered and that each message has been
`reviewed. If the delivery or review of the electronic message
`has not been confirmed after a certain time period,
`the
`system can automatically resend the electronic message or
`take some other appropriate action. In addition, even if
`delivery or review has been confirmed,
`the system can
`automatically perform additional specified activities.
`The system allows a sender of an electronic message to
`specify message tracking information, such as message
`delivery information and message review information, that
`specifies actions to take when a message is not delivered or
`not reviewed within a specified period of time. For example,
`the sender can specify that if a delivery notification is not
`received within a specified period of time, the message will
`be resent to the recipient. Alternately, if a review notification
`is not received within a specified period of time, the sender
`can specify that a reminder message be sent to the recipient
`or
`to another user (e.g.,
`the recipient’s supervisor or
`assistant). The message tracking information can include
`various frequency and duration options, such as resending a
`message only once or instead resending it every 2 hours for
`a week.
`In addition, message tracking information can
`specify to resend the message with a higher transmission
`priority or review urgency so that its delivery and review is
`more likely, or could specify to resend the message or send
`a reminder message to a different recipient system for the
`recipient (e.g., to a second email address if a first address
`fails, or to a pager if a cellular phone is not available).
`The system also allows a sender of an electronic message
`to specify message tracking information that specifies
`actions to take after a message is successfully delivered or
`reviewed. For example, the sender can specify that a super-
`visor receive a confirmation when a recipient receives an
`electronic message and when the recipient reviews the
`message. Alternately, a recipient can be sent a follow-up
`message after review of a first electronic message. The
`message tracking information can include various frequency
`and duration options, such as sending confirmation mes-
`sages immediately and sending follow-up messages after a
`specified period of time has elapsed since review of the
`original message.
`the sender can individualize the
`In one embodiment,
`message delivery information for each recipient of a
`message, while in another embodiment the sender can use
`the same message delivery information for all recipients.
`The system tracks whether each message has been delivered
`and reviewed by to each recipient, and uses the message
`information to resend the messages whose delivery or
`review is not confirmed.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a block diagram illustrating an embodiment of
`the Message Review Server system of the present invention.
`FIG. 2 is an example of a Message Tracking Table.
`FIGS. 3A and 3B are an exemplary flow diagram of an
`embodiment of the Message Sender routine.
`FIG. 4 is an exemplary flow diagram of an embodiment
`of the Message Receipt Tracker routine.
`FIGS. 5A and 5B are an exemplary flow diagram of an
`embodiment of the Message Tracking Table Processor rou-
`tine.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`Some embodiments of the present invention provide a
`method and system for enhancing the reliability of commu-
`
`invention provides a
`An embodiment of the present
`method and system for enhancing the reliability of commu-
`
`Page10 of21
`
`Page 10 of 21
`
`
`
`US 6,854,007 B1
`
`3
`nicating with electronic messages. In particular, the Message
`Review Server (MRS) system sends an electronic message
`to designated recipients, and then automatically helps ensure
`that each message has been successfully delivered and that
`each message has been reviewed. If the delivery or review
`of the electronic message has not been confirmed after a
`certain time period, the system can automatically resend the
`electronic message or take some other appropriate action. In
`addition, even if delivery or review has been confirmed, the
`MRS system can automatically perform additional specified
`activities.
`
`The MRS system allows the sender of an electronic
`message to specify message delivery information that speci-
`fies actions to take when a message is not delivered within
`a specified period of time. For example,
`the sender can
`specify that if a delivery notification is not received within
`a specified period of time, the message will be resent to the
`recipient. The message delivery information can also
`include various frequency and duration options, such as
`resending the message only once or instead resending it
`every 2 hours for a week in addition, message delivery
`information could indicate to resend the message with a
`higher transmission priority so that successful delivery is
`more likely, or could indicate to resend the message to a
`different recipient system for the recipient (e.g., to a second
`email address if a first address fails, or to a pager if a cellular
`phone is not available). The MRS system tracks whether
`each message has been delivered to each recipient, and uses
`the message delivery information to resend the messages
`whose delivery was not verified to be successful.
`The message delivery information can be specified at the
`time of sending the original message, or
`in some
`embodiments, even after the message has been sent. In one
`embodiment, each recipient of a message can have individu-
`alized message delivery information, while in another
`embodiment all recipients of a message will share the same
`message delivery information. In addition, the MRS system
`can store such message delivery information in a variety of
`ways. For example, such information could be stored with
`the message (e.g., as a header or as attributes of a message
`object). Alternately, message delivery information can be
`stored in a Message Tracking Table accessible by the MRS
`system.
`The MRS system also allows a sender of a message to
`specify message review information that specifies actions to
`take when a message is not reviewed within a specified
`period of time. As with the message delivery information,
`this information can be specified in some embodiments at
`the time of sending the message and in other embodiments
`at later times, and in some embodiments message review
`information is specified individually for each recipient while
`in other embodiments the information is specified uniformly
`for all recipients of a message. To enhance the likelihood
`that the message is timely reviewed by a recipient,
`the
`sender can specify a time period after which a reminder
`message will be sent if the sender has not been notified
`within that time period that the recipient has reviewed the
`message. This reminder message can have a variety of
`formats. For example, in one embodiment, the same mes-
`sage is resent to the recipient, but it is marked as being
`urgent and for
`immediate attention.
`In an alternate
`embodiment, a different message is sent to the recipient
`(e.g., a reminder to read the original message). In another
`embodiment, a message can be sent to an alternate recipient
`who can assist in ensuring that the original recipient review
`the original message (e.g., a supervisor of or an assistant to
`the original recipient). As with the original message, this
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`reminder message can be reliably sent with the MRS system
`so as to enhance the reliability of its delivery and review.
`After an electronic message has been delivered to or
`reviewed by a recipient, it may be desirable to have the MRS
`system automatically take various actions. For example, it
`may be desirable to automatically send one or more addi-
`tional messages at specified periods after the message was
`delivered or reviewed. If the original message was to pro-
`vide product
`information to a customer, an automatic
`follow-up message to the customer offering additional help
`or soliciting comments may be beneficial. Alternately, the
`original message may have been the first part in a multi-part
`series of messages (e.g., a serial novel), with later messages
`sent only after earlier messages have been reviewed. Thus,
`the sender can also specify message post-delivery and
`post-review information, including a time period after the
`delivery or review of the original message at the end of
`which a specified action is to be taken. For the specified
`action to be taken immediately, the time period can be set to
`zero.
`
`the MRS system can automatically locate and
`Thus,
`resend an original message when delivery has not been
`confirmed, can automatically send one or more reminder
`messages to the recipient or to others to prompt the recipient
`to review the original message when review of the electronic
`message has not been confirmed; and can automatically
`perform additional activity when delivery or review of the
`original message has been confirmed.
`FIG. 1 illustrates a server computer system 100 suitable
`for executing an embodiment of the Message Review Server
`(MRS) system, as well as recipient computer systems 150,
`160, 170, and 180 suitable for receiving electronic messages
`transmitted by the MRS system.
`In the illustrated
`embodiment, the server computer system and recipient com-
`puter systems are connected via network 140, although any
`transmission medium (e.g., circuit-based telephone lines,
`packet-based computer lines, wireless RF, etc.) can be used
`for the transmission of the electronic messages. The server
`computer system includes a CPU 110, input/output devices
`120, and a memory 130. The input/output devices include a
`storage device 126, a network connection 122, a computer-
`readable media drive 123, and a display 124, with a Message
`Tracking Table 127 stored on the storage device. The
`Message Review Server system 132 is executing in memory,
`and is composed of the Message Sender 134, Message
`Receipt Tracker 136, and Message Tracking Table Processor
`137 components.
`Use of the MRS system begins when a sender of an
`electronic message, such as a user of the server computer
`system or another computer attached to the network 140,
`supplies a message to the Message Sender component. In
`addition to supplying the message, the sender identifies one
`or more recipients for the electronic message, and can
`specify various optional message tracking information (i.e.,
`message delivery information, message review information,
`and message post-review information). If the reliability of
`the delivery of the message to a recipient is to be enhanced,
`a sender will supply delivery information including a resend
`period of time and can optionally supply other resend
`options. If the reliability of the review of the message by a
`recipient is to be enhanced, the sender will supply review
`reminder information including a review reminder period of
`time and can optionally supply other review reminder
`options. Finally, if actions are to be taken after a recipient
`has reviewed the message, post-review information includ-
`ing a post-review period of time and post-review options can
`be supplied.
`
`Page 11 of21
`
`Page 11 of 21
`
`
`
`US 6,854,007 B1
`
`5
`The Message Sender component collects the supplied
`message tracking information, sends the message to the
`specified recipients, and stores the message tracking infor-
`mation and the message send time in the Message Tracking
`Table. The Message Sender component also sets appropriate
`Resend timers (based on the delivery resend time period)
`and Review Reminder Timers (based on the Review
`Reminder Time period) for the recipients as indicated in the
`message tracking information supplied by the sender. Use of
`various timers will be explained in greater detail below. If
`different recipients of a message are to have different mes-
`sage tracking options, a separate entry in the Message
`Tracking Table will be created for each recipient of each
`message. Alternately, if all recipients of a message have the
`same message tracking options, a single entry in the Mes-
`sage Tracking Table can be created for the message.
`The Message Receipt Tracker component attempts to
`identify when sent messages have been delivered to recipi-
`ents and when sent messages have been reviewed by recipi-
`ents. In one embodiment, the recipient computer systems
`provide receipts when messages are received and when
`messages are reviewed, and in this embodiment the Message
`Receipt Tracker is notified of these receipts. Alternately, the
`Message Receipt Tracker can periodically query a recipient
`to determine if the recipient has received and reviewed a
`message, or can monitor a recipient’s activities to determine
`when the recipient accesses and reviews a message. After a
`message has been accessed, activities such as scrolling a text
`window or selecting text may indicate that the message is
`being reviewed, or movement of the recipient’s eyes could
`indicate where attention is focused. After receiving notifi-
`cation of message delivery or review, the Message Receipt
`Tracker stores appropriate information from the notification
`in the Message Tracking Table (e.g., the time of delivery for
`a notification indicating that a message was delivered to a
`recipient and the time of review for a message that was
`reviewed by a recipient). After receiving a notification, the
`Message Receipt Tracker also resets any existing timers
`related to the notification (e.g., a Resend timer for a delivery
`notification or a Review Reminder Timer for a review
`
`notification). If a review notification is received, the Mes-
`sage Receipt Tracker also determines if the corresponding
`message and recipient have post-review activities specified,
`and if so sets an appropriate Post-Review timer.
`The Message Tracking Table Processor component peri-
`odically reviews the information in the Message Tracking
`Table as well as the current timers to determine whether a
`
`specified tracking time period has expired, thus indicating a
`corresponding action needs to be taken. When a Resend
`timer has expired, the Message Tracking Table Processor
`uses the resend options specified for the one or more
`recipients (or uses default options if none have been
`specified) and resends the message to the one or more
`recipients. If a Review Reminder Timer has expired, the
`Message Tracking Table Processor uses the review reminder
`options to create a reminder electronic message to be sent,
`and then sends the message to one or more recipients as
`indicated by the options. Similarly, if a Post-Review timer
`has expired, the Message Tracking Table Processor performs
`the activities specified in the Post-Review options, such as
`sending a follow-up message to one or more recipients.
`After sending a message in response to expiration of a
`time period, the Message Tracking Table Processor records
`the time of sending the message in an appropriate portion of
`the Message Tracking Table for the message and the one or
`more recipients. In addition, if it is appropriate to set another
`timer (e.g., if a message will continue to be resent until the
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`MRS system is notified that it has been delivered to the
`recipients), a new timer with the appropriate time period is
`set. Alternately, if all required actions have been taken for a
`message and one or more recipients (e.g., notification has
`been received that the message has been reviewed and no
`Post-Review actions have been specified), the entry in the
`Message Tracking Table corresponding to the message and
`the one or more recipients is modified so that it is no longer
`checked by the Message Tracking Table Processor. In one
`embodiment, a flag is set in the entry, while in another
`embodiment the entry is removed from the Message Track-
`ing Table. Those skilled in the art will appreciate that rather
`than using timers, an alternate embodiment can have the
`Message Tracking Table Processor calculate directly from
`information in the Message Tracking Table whether any
`action currently needs to be taken, such as by reviewing the
`specified time periods and the specified records (i.e., the
`send times for messages as well as the delivery and read
`times for the original message).
`The recipient computer system 150 includes a CPU 151,
`a memory 152, and input/output devices 156, including a
`storage device 158. One or more stored messages 159 can be
`stored on the storage device, with the stored messages
`accessible corresponding to one or more users of the recipi-
`ent computer system. A message reviewer 154 is executing
`in memory 152 to allow a user of the recipient computer
`system to review messages that have been received by the
`recipient computer system and stored in the stored mes-
`sages. In an alternate embodiment, messages can be stored
`on the server computer system, and the message reviewer on
`a recipient computer system (e.g., a thin client) can retrieve
`the appropriate messages from the server computer system.
`In an embodiment in which notification of message delivery
`and message review is provided by recipient computer
`systems, the message reviewer or some other component on
`the recipient computer system can communicate this infor-
`mation to the server computer system.
`Those skilled in the art will appreciate that computer
`systems 100 and 150 are merely illustrative and are not
`intended to limit
`the scope of the present invention. In
`particular, a recipient computer system can take on a variety
`of forms depending on the type of electronic message (e.g.,
`a pager to receive paging messages, a personal computer
`system to receive email or voice mail messages, a telephone
`console to review voice mail messages, etc.). The computer
`systems may contain additional components or may lack
`some illustrated components, such as the server computer
`system including an appropriate transmission connection for
`the tr