WO2001020847A2 - High volume e-mail assembly and delivery - Google Patents
High volume e-mail assembly and delivery Download PDFInfo
- Publication number
- WO2001020847A2 WO2001020847A2 PCT/US2000/025188 US0025188W WO0120847A2 WO 2001020847 A2 WO2001020847 A2 WO 2001020847A2 US 0025188 W US0025188 W US 0025188W WO 0120847 A2 WO0120847 A2 WO 0120847A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- delivery
- processor
- processors
- database
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/107—Computer-aided management of electronic mailing [e-mailing]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/23—Reliability checks, e.g. acknowledgments or fault reporting
Definitions
- This present invention relates to electronic mail, and more particularly, to high volume electronic mail delivery systems and methods.
- E-mail Electronic mail
- E-mail transmission has been handled by a single sending program operating on a single queue of messages. That is, personalized E-mails are assembled and then lined up in a first-in-first-out (FIFO) queue, and the queue is processed by a transmitting program.
- FIFO first-in-first-out
- One system consistent with the present invention includes a database, a template processor, and at least one build processor.
- the template processor generates E-mail templates based on customer profile information stored in the database, the E-mail templates including data corresponding to information contained in the E-mail, and fields referencing content data to be inserted in the E-mail.
- the build processor includes computer instructions which, when executed by the build processor, perform the steps of: receiving the templates generated by the template processor, retrieving content information referenced by the fields in the templates from
- a method of assembling an E-mail message consistent with the present invention includes retrieving a template generated based on a customer profile, the template including data for the assembled version of the E-mail and fields referencing variable content data, retrieving the content information referenced by the fields, and completing the assembly of the E-mail message by replacing the fields with the referenced content data
- Another system consistent with the present invention comprises a database storing content information, a first group of processors for inserting content information from the database into pre-generated E-mail templates to obtain complete E-mail messages, the first group of processors retrieving the content information from the database based on fields in the E-mail templates, and a second group of processors for receiving the complete E-mail messages from the first group of processors and transmitting the complete E-mail messages to their recipients using a plurality of mailing programs
- Yet another system consistent with the present invention comprises a computer network for assembling and delivering E-mail
- the computer network includes means for storing content data to be included in the delivered E-mail, means for generating E- mail templates, each template including data corresponding to the assembled version of the E-mail and fields referencing the stored content data, means for retrieving the content data referenced by the fields and completing the assembly of the E-mail message by replacing the fields with the referenced content data; and means for delivering the assembled E-mail over a network.
- Fig. 1 is an exemplary diagram of an E-mail assembly and delivery system consistent with the present invention
- Fig. 2 is a diagram illustrating an exemplary customer E-mail profile
- Fig. 3 is a diagram illustrating an E-mail template
- Fig. 4 is a diagram illustrating an assembled E-mail
- Fig. 5 is a functional diagram of a simplified version of the E-mail system.
- Fig. 1 is a diagram illustrating high-volume E-mail delivery system 100.
- the system includes a database 10, build processors 30, QMUX delivery processors 40, mail delivery programs 50-51 , and a network 60.
- Personalized E-mails are derived from database 10, which stores E-mail content information (e.g., news, weather, financial information) and customer profile information.
- the profile information is preferably information relating to the individual preferences of each customer.
- the customer's personalized E-mails are derived from the profile information.
- database 10 is illustrated as a single database, database 10 is not necessarily implemented as a single "physical" database, but may be a group of multiple databases and related hardware and software.
- Fig. 2 is a diagram illustrating an exemplary profile 200 for the user "John Doe.”
- profile 200 includes the E-mail address 201 of John Doe and information fields, labeled as fields 202-204, representing the information services selected by the user.
- fields 202-204 representing the information services selected by the user.
- field 202 indicates that John Doe would like to receive a daily weather report at 9pm for the area code 22304.
- Profile 200 also indicates that John Doe would like to receive finance related new alerts (field 203) and closing prices for selected securities (field 204).
- customer profile information 200 is known well in advance of when the E-mail is scheduled to be sent. What is not known in advance is the content information to include in the E-mail. In fact, it is desirable to wait as long as possible until the scheduled E-mail delivery time before finalizing the content information. This gives the content editors as long as possible to create the content. In the case of news, for example, the news stories can be as fresh as possible when they are sent.
- Fig. 3 illustrates an exemplary E-mail template 300.
- Different templates exist for whether the E-mail to be sent is text-only or includes both graphics and text.
- a format such as html can be used for E-mails that are to contain both graphics and text.
- templates permit the use of a technique known as co-branding whereby E-mails can originate from the same source, and include the same content information, but be in a different format.
- E-mails can all originate from the same source, but with different formats according to which company is sponsoring the E-mail.
- E-mails sponsored by Company A will be in a format specific to Company A, while E-mails sponsored by Company B will be in a different format.
- a template can be created for E-mails that are sponsored by Company A, and a different template for E- mails sponsored by Company B.
- Template 300 includes E-mail header fields 301-303, advertisement field 304, and E-mail body 305.
- Field 301 is the address of the intended recipient
- field 302 is the address of the sender (i.e., the address of the entity associated with system 100)
- field 303 is the subject.
- Field 304 contains advertising information, such as a specific advertisement for a company sponsoring the E-mail.
- Body 305 contains the information requested by the user. Depending on whether the format of the E-mail is text or html, the body field can include text-only or both graphics and text.
- the pre-built templates, such as template 300 are stored on processors 30. Processors 30 are arranged in a network and act in parallel to finish assembling the E- mail. When the content information is finalized in database 10, processors 30 access content and profile information, based on fields 310-305, and integrate the content and profile information with the templates 300, by inserting the respective information into fields 301-305.
- a processor 30 accesses the database to determine the E-mail addresses to insert into fields 301 and 302.
- the processor further accesses the database to determine the Subject to insert into field 303, which in this case is "Finance-early closing bell.”
- the processor 30 also accesses the database for the Advertisement to insert in field 304.
- This advertisement may include both graphics and text if the template is an html template.
- the processor 30 determines the closing security prices for IBM and MSFT, and then places them in a table, which is a text table for a text template, or an HTML table if the E-mail uses an html template.
- Processors 30 may cache the content information accessed from database 10 to reduce the need to access database 10 multiple times for the same content.
- Fig. 4 is an illustration of template 300 after the fields have been replaced by the content information from database 10.
- template 300 is a fully assembled E-mail, labeled as E-mail 400.
- Build processors 30 each continually integrate the pre-stored template information with the new content information (i.e., the variable portion of template 300 referenced by fields 305) to form assembled E-mails.
- build processors 30 forward the E-mails to one of Qmux processors 40 via a TCP/IP connection.
- Qmux processors 40 like processors 30, are a network of computers.
- Qmux processors 40 transmit the completed E-mails to an outside network 60, such as the Internet, using a plurality of mail delivery programs 50 running on the Qmux processors.
- Mail delivery programs 50 run in parallel on the Qmux processors, allowing the E-mails to be transmitted in parallel to network 60. This allows for high total E-mail output.
- mail delivery programs 50 are each a program such as "Sendmail,” which is well known in the art and is widely used for sending E-mail.
- Standard "Sendmail" programs when receiving E-maii messages to send, initially queue the E-mail messages to disk in a first-in-first-out (FIFO) queue.
- mail delivery programs 50 may be a modified version of "Sendmail" so that E-mail messages, when initially received, instead of being queued to disk, are immediately processed by mail delivery programs 50.
- mail delivery programs 50 save time and increase system performance because they eliminate the need to access relatively slow disk drives.
- Build processors 30 and delivery processors 40 may similarly save time by keeping all processes in random access memory (i.e., solid state memory) to avoid hard disk access.
- one of mail delivery programs 50 may have difficulty delivering its E-mail to its destination For example, the destination host may be temporarily non- responsive When this happens, the mail delivery program terminates transmission of the E-mail and forwards it to a "slow" mail delivery program 51 , which acts as a secondary queue for transmitting troublesome E-mail In this manner, slow E-mails do not unnecessarily bog down the system
- build processors 30 and Qmux processors 40 are coupled together through a TCP/IP connection Through this connection, build processors 30 transmit E-mail messages to Qmux processors 40 Additionally, Qmux processors 40 provide feedback to build processors 30 so that if Qmux processors 40 begin to fall behind in handling E-mails from processors 30, Qmux processors 40 instruct processors 30 to throttle back the rate at which E-mails are assembled and forwarded to Qmux processors 40 Similarly, Qmux processors 40 monitor the status of E-mail delivery at each of mail delivery programs 50 and distribute the assembled E-mails to mail delivery programs 50 as each becomes ready to receive a new E-mail message
- processors 30 and Qmux processors 40 may be implemented in a UNIX based environment, although many other types of computer operating systems or hardware configurations may be used
- Fig. 5 is a diagram of a simplified version of E-mail system 100 illustrating operation of certain functional elements of the system.
- Database 10 build processors
- MTA message transfer agents
- Each MTA 70 corresponds to a particular delivery
- MTA's 70 may correspond to the domain for "aol.com.”
- MTAs 70 accept and process E-mails transmitted from mail delivery programs 50.
- MTAs 70 and Sendmail programs 50 preferably communicate with one another using the Simple Mail Transmission Protocol ("SMTP").
- SMTP provides for a status signal, called an acknowledgment "dot," transmitted from MTAs 70 back to mail delivery programs 50.
- an acknowledgment dot reaches its mail delivery
- the mail delivery program forwards the acknowledgment dot back to Qmux processors 40.
- Qmux processors 40 similarly transmit the acknowledgment dot upstream to build processors 30 and finally to database 10. If the E-mail was successfully transmitted, it is registered as such in database 10. Other status messages such as a message delivery failure may also be carried by the acknowledgment dot.
- the path of the acknowledgment dot is illustrated in Fig. 5 by transmission path 502.
- undeliverable E-mail messages may be transferred to slow mail delivery program 51. However, if the E-mail message fails delivery too
- system 100 may either cancel delivery altogether, or attempt to deliver the message with an alternate mechanism. For example, if the message is important, the message may then be delivered via facsimile transmission.
- the status information stored in database 10 from the acknowledgment dots may be used for a number of reasons.
- Each E-mail working its way through system 100 is preferably run in a separate program thread, such as one of threads 506-508.
- Threads 506-508 run independently of one another in E-mail system 100.
- threads are opened when the build of an E-mail is started, and closed when the E-mail has been transmitted and a successful acknowledgment dot returned to database 10. Too many active threads destined for a single destination MTA may overcome that MTA. Accordingly, system 100 can limit the number of active threads to any particular MTA. Further, a destination that has multiple MTAs may request that all messages are transmitted to a specified one of the multiple MTAs. In this situation, system 100 may instruct all threads to transmit to the specified MTA.
- E-mail delivery is not always time critical. It may be important that the E-mails be delivered, but not that they be delivered immediately. By keying the E-mail build process to system load, system 100 may efficiently transmit non time-sensitive E- mails. Thus, messages from a low priority batch can be built and delivered only when
- system load (as measured, for example, by the number of active E-mail threads) is below a certain threshold.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Signal Processing (AREA)
- Economics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Operations Research (AREA)
- Data Mining & Analysis (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| AU74863/00A AU7486300A (en) | 1999-09-15 | 2000-09-15 | High volume e-mail assembly and delivery |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US39685499A | 1999-09-15 | 1999-09-15 | |
| US09/396,854 | 1999-09-15 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2001020847A2 true WO2001020847A2 (en) | 2001-03-22 |
| WO2001020847A3 WO2001020847A3 (en) | 2001-09-27 |
Family
ID=23568891
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2000/025188 WO2001020847A2 (en) | 1999-09-15 | 2000-09-15 | High volume e-mail assembly and delivery |
Country Status (2)
| Country | Link |
|---|---|
| AU (1) | AU7486300A (en) |
| WO (1) | WO2001020847A2 (en) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE10318373A1 (en) * | 2003-04-14 | 2004-12-16 | Deutsche Telekom Ag | Personalized e-mail sending method in which different user-marked e-mail sections are selected for sending to different groups of recipients using a selection tool |
| EP1646001A1 (en) * | 2004-09-24 | 2006-04-12 | Hewlett-Packard Development Company, L.P. | Email customization techniques and systems |
| US7493359B2 (en) | 2004-12-17 | 2009-02-17 | International Business Machines Corporation | E-mail role templates for classifying e-mail |
| US8185585B2 (en) * | 2001-08-28 | 2012-05-22 | Nvidia International, Inc. | Method for sending an electronic message utilizing connection information and recipient information |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5513126A (en) * | 1993-10-04 | 1996-04-30 | Xerox Corporation | Network having selectively accessible recipient prioritized communication channel profiles |
| US5819284A (en) * | 1995-03-24 | 1998-10-06 | At&T Corp. | Personalized real time information display as a portion of a screen saver |
| WO1997010558A1 (en) * | 1995-09-14 | 1997-03-20 | Bell Communications Research, Inc. | Method and system for providing continually updated personalized information |
-
2000
- 2000-09-15 WO PCT/US2000/025188 patent/WO2001020847A2/en active Application Filing
- 2000-09-15 AU AU74863/00A patent/AU7486300A/en not_active Abandoned
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8185585B2 (en) * | 2001-08-28 | 2012-05-22 | Nvidia International, Inc. | Method for sending an electronic message utilizing connection information and recipient information |
| US8306998B2 (en) | 2001-08-28 | 2012-11-06 | Nvidia International, Inc. | Method for sending an electronic message utilizing connection information and recipient information |
| US8375306B2 (en) | 2001-08-28 | 2013-02-12 | Nvidia International, Inc. | Method for sending an electronic message utilizing connection information and recipient information |
| DE10318373A1 (en) * | 2003-04-14 | 2004-12-16 | Deutsche Telekom Ag | Personalized e-mail sending method in which different user-marked e-mail sections are selected for sending to different groups of recipients using a selection tool |
| EP1646001A1 (en) * | 2004-09-24 | 2006-04-12 | Hewlett-Packard Development Company, L.P. | Email customization techniques and systems |
| US7493359B2 (en) | 2004-12-17 | 2009-02-17 | International Business Machines Corporation | E-mail role templates for classifying e-mail |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2001020847A3 (en) | 2001-09-27 |
| AU7486300A (en) | 2001-04-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5937162A (en) | Method and apparatus for high volume e-mail delivery | |
| US7490131B2 (en) | Email filtering methods and systems | |
| US7461129B2 (en) | Methods and systems for end-user extensible electronic mail | |
| US7058687B2 (en) | E-mail system with methodology for accelerating mass mailings | |
| US6044395A (en) | Method and apparatus for distributing personalized e-mail | |
| US6334140B1 (en) | Electronic mail server in which electronic mail is processed | |
| US7412490B2 (en) | Routing instant messages using configurable, pluggable delivery managers | |
| US6785712B1 (en) | Airborne e-mail data transfer protocol | |
| US6363415B1 (en) | System and method for distributing electronic messages in accordance with rules | |
| EP1405182B1 (en) | Methods and apparatus for asynchronous messaging | |
| US9166940B2 (en) | E-mail forwarding tunnel capturing or tagging | |
| US7296057B2 (en) | Method for user-specified error correction in an instant messaging system | |
| US9584665B2 (en) | System and method for optimizing timing of responses to customer communications | |
| US6965917B1 (en) | System and method for notification of an event | |
| EP0974917B1 (en) | Method and system for management of message attachments | |
| US7076241B1 (en) | System and method for selectively transmitting electronic messages | |
| US20030115270A1 (en) | High performance email relay system technical field | |
| US8266230B2 (en) | Active removal of e-mail recipient from replies and subsequent threads | |
| EP1715641B1 (en) | Email using queues in non-persistent memory | |
| JP2005524254A (en) | Apparatus and method for distributing electronic messages to wireless data processing equipment | |
| GB2428828A (en) | Publish/subscribe messaging system | |
| US7054907B1 (en) | Systems and methods for blocking delivery of an electronic communication | |
| US7383306B2 (en) | System and method for selectively increasing message transaction costs | |
| US20060101123A1 (en) | Methods and systems for selecting criteria for a successful acknowledgement message in instant messaging | |
| US20040044583A1 (en) | Email reminder apparatus and method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
| AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
| AK | Designated states |
Kind code of ref document: A3 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
| AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
| REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
| 122 | Ep: pct application non-entry in european phase | ||
| NENP | Non-entry into the national phase |
Ref country code: JP |