Retaining mail for availability after relay
First Claim
Patent Images
1. A system for handling the relay of messages by a message transport agent comprising:
- a processor configured to execute computer-executable instructions for;
receiving messages and sending messages at the message transport agent for relay;
after receiving messages, storing the received messages in a foreground memory at the message transport agent;
after storing the received messages in the foreground memory, processing the stored received messages;
after processing the stored received messages, sending the processed received messages to at least one mailbox and holding the processed sent messages at the message transport agent by moving the processed sent messages to a holding status, wherein the instructions to move the processed sent messages to a holding status comprise instructions to;
redirect the processed sent messages to a background memory;
while continuing to store the received messages which have not been sent in the foreground memory which is different with respect to the background memory in which the processed sent messages are stored;
monitoring the at least one mailbox for failure and resending sent messages in the holding status to a failed mailbox and resending sent messages in the holding status to all mailboxes upon failure of all the monitored mailboxes;
evaluating the held sent messages in the background memory in the holding status at the message transport agent with respect to a parameter; and
deleting selected held sent messages in the background memory in the holding status at the message transport agent as a function of the evaluating while continuing to store the received messages which have not been sent in the foreground memory,wherein the parameter comprises a maximum amount of memory, wherein the instructions to evaluate the moved messages in the holding status comprise determining an amount of holding memory storing the messages in the holding status, and wherein the instructions to delete comprise instructions to delete at least some of the messages in the holding status when the determined amount of holding memory exceeds the maximum amount of memory; and
wherein the parameter further comprises a minimum message priority, wherein the instructions to evaluate the moved messages in the holding status comprise determining a priority of each message and wherein the instructions to delete comprise instructions to delete each message in the holding status when the determined priority of the message is less than the minimum message priority.
2 Assignments
0 Petitions
Accused Products
Abstract
A processor 104 executes computer-executable instructions to receive messages 302; store 304 the received messages in a foreground memory 108; process 306 the stored messages in the foreground memory 108; send 306 the processed messages; move 308 the sent messages to a background memory 110; evaluate 310, 312 the messages in the background memory with respect to a parameter; and delete 314 selected messages in the background memory as a function of the evaluating. Alternatively, a message queue may be used to track lost messages.
88 Citations
17 Claims
-
1. A system for handling the relay of messages by a message transport agent comprising:
a processor configured to execute computer-executable instructions for; receiving messages and sending messages at the message transport agent for relay; after receiving messages, storing the received messages in a foreground memory at the message transport agent; after storing the received messages in the foreground memory, processing the stored received messages; after processing the stored received messages, sending the processed received messages to at least one mailbox and holding the processed sent messages at the message transport agent by moving the processed sent messages to a holding status, wherein the instructions to move the processed sent messages to a holding status comprise instructions to; redirect the processed sent messages to a background memory; while continuing to store the received messages which have not been sent in the foreground memory which is different with respect to the background memory in which the processed sent messages are stored; monitoring the at least one mailbox for failure and resending sent messages in the holding status to a failed mailbox and resending sent messages in the holding status to all mailboxes upon failure of all the monitored mailboxes; evaluating the held sent messages in the background memory in the holding status at the message transport agent with respect to a parameter; and deleting selected held sent messages in the background memory in the holding status at the message transport agent as a function of the evaluating while continuing to store the received messages which have not been sent in the foreground memory, wherein the parameter comprises a maximum amount of memory, wherein the instructions to evaluate the moved messages in the holding status comprise determining an amount of holding memory storing the messages in the holding status, and wherein the instructions to delete comprise instructions to delete at least some of the messages in the holding status when the determined amount of holding memory exceeds the maximum amount of memory; and wherein the parameter further comprises a minimum message priority, wherein the instructions to evaluate the moved messages in the holding status comprise determining a priority of each message and wherein the instructions to delete comprise instructions to delete each message in the holding status when the determined priority of the message is less than the minimum message priority. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
8. A computerized method for handling the relay of messages by a message transport agent comprising:
-
receiving messages and sending messages at the message transport agent for relay; after receiving messages, storing the received messages at the message transport agent in a foreground memory at the message transport agent; after storing the received messages in a foreground memory, processing the stored received messages; after processing the stored received messages, sending the processed received messages to at least one mailbox and holding the processed sent messages at the message transport agent while continuing to store the received messages which have not been sent in the foreground memory, said holding comprising moving the processed sent messages at the message transport agent to a holding status by either marking the processed sent messages as background or by redirecting the processed sent messages to a background memory, which is different with respect to the foreground memory in which the received messages are stored; monitoring the at least one mailbox for failure and resending sent messages in the holding status to a failed mailbox and resending sent messages in the holding status to all mailboxes upon failure of all the monitored mailboxes; evaluating the processed sent messages in the holding status at the message transport agent with respect to a parameter; deleting selected processed sent messages in the holding status at the message transport agent as a function of the evaluating while continuing to store the received messages which have not been sent in the foreground memory, wherein the parameter comprises a maximum amount of memory, wherein evaluating the processed sent messages in the holding status comprises determining an amount of holding memory storing the processed sent messages in the holding status, wherein deleting comprises deleting at least some of the processed sent messages in the holding status when the determined amount of holding memory exceeds the maximum amount of memory, and wherein the processed sent messages are deleted as a function of at least one of a message age, a message size, a message date, and a message priority. - View Dependent Claims (9, 10, 11, 12, 13, 15, 16, 17)
-
-
14. A system for handling messages for relay by a message transport agent comprising:
-
a processor configured to execute computer-executable instructions for; receiving messages at the message transport agent from at least one relay server; sending the received messages at the message transport agent; after receiving the messages, storing a listing of the received messages in a recovery queue at the message transport agent; after sending messages, storing a listing of the sent messages in the recovery queue at the message transport agent; after storing the listing of received messages, processing and sending the received messages; maintaining a copy of the recovery queue at a computer remote from the message transport agent; and in the event that messages listed in the queue are lost at the message transport agent due to a failure of the message transport agent, recovering the lost messages listed in the copy of the recovery queue in the remote computer to the message transport agent by contacting each relay server to resend to the message transport agent the lost messages listed in the recovery queue.
-
Specification