WO2001080031A1 - Method and apparatus for dissemination of rich media - Google Patents

Method and apparatus for dissemination of rich media Download PDF

Info

Publication number
WO2001080031A1
WO2001080031A1 PCT/US2001/011247 US0111247W WO0180031A1 WO 2001080031 A1 WO2001080031 A1 WO 2001080031A1 US 0111247 W US0111247 W US 0111247W WO 0180031 A1 WO0180031 A1 WO 0180031A1
Authority
WO
WIPO (PCT)
Prior art keywords
computer
recipient
electronic mail
content
graphical presentation
Prior art date
Application number
PCT/US2001/011247
Other languages
French (fr)
Inventor
David G. Mcmillan
Original Assignee
Tmx Interactive
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 Tmx Interactive filed Critical Tmx Interactive
Priority to EP01928374A priority Critical patent/EP1295211A4/en
Priority to AU2001255238A priority patent/AU2001255238A1/en
Publication of WO2001080031A1 publication Critical patent/WO2001080031A1/en

Links

Classifications

    • 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/063Content adaptation, e.g. replacement of unsuitable content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/564Enhancement of application control based on intercepted application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • 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/21Monitoring or handling of messages
    • H04L51/234Monitoring or handling of messages for tracking messages

Definitions

  • the present invention relates to a system and method for preparing, disseminating and tracking rich media, and in particular a method and apparatus for preparing, disseminating and tracking electronic mail and graphical presentation content.
  • the Internet serves as an example of a type of computer network, and indeed, is a large network of networks, all inter-connected, wherein the processing activity takes place in real time.
  • the Internet offers mail, file transfer, remote log-in and other services.
  • the World Wide Web (WWW) is the fastest growing part of the Internet.
  • WWW World Wide Web
  • a technology called hypertext allows Internet addressable resources to be connected, or linked, to one another.
  • the advertising value of the Internet has been well recognized. For example, many websites on the Internet utilize "banner" advertisements which allow a user to link directly to the advertiser's website.
  • full-motion video components also referred to as "rich media”
  • FLASHTM Micromedia, Inc.
  • related technologies e.g., QuickTime (Apple Computer, Inc.), Shockwave (Macromedia, Inc.), Windows Media (Microsoft, Inc.), Real Player (Real Networks, Inc.), etc.
  • E-mail has also been utilized as an advertising tool. Advertisers may send e- mails including textual advertising information, or even hyperlinks to websites which provide advertising information. Sometimes, advertisers will attach textual or visual information to a e-mail directed towards a certain consumer or group of consumers. However, due to the multitude of different e-mail programs on the market today, often times users cannot open or "see" the attachments which contain the advertising information. Thus, although an advertiser may have sent an advertisement e-mail to 100,000 users, it is possible that less than ten percent (10%), i.e., less than 10,000, users actually saw the advertisement.
  • the present invention is a computer-implemented method for disseminating information, including the steps of: sending an electronic mail message to at least one recipient, said electronic mail being linked to a graphical presentation file, sensing the capabilities of the at least one recipient's computer and, supplying only the elements of the graphical presentation file which may be viewed on the at least one recipient's computer.
  • Figure 1 is flow diagram showing a process according to an exemplary embodiment of the present invention.
  • Figure 2 is flow diagram showing an overall content preparation process according to an exemplary embodiment of the present invention.
  • Figure 3 is flow diagram showing an overall content distribution process according to an exemplary embodiment of the present invention.
  • Figure 4 is flow diagram showing an overall content tracking process according to an exemplary embodiment of the present invention.
  • Figure 5 is flow diagram showing a first step in the content preparation process of Figure 2.
  • Figure 6 is flow diagram showing a second step in the content preparation process of Figure 2.
  • Figure 7 is flow diagram showing a third step in the content preparation process of Figure 2.
  • Figure 8 is flow diagram showing a fourth step in the content preparation process of Figure 2.
  • Figure 9 is flow diagram showing a first step in the content distribution process of Figure 3.
  • Figure 10 is flow diagram showing a second step in the content distribution process of Figure 3.
  • Figure 11 is flow diagram showing a third step in the content distribution process of Figure 3.
  • Figure 12 is flow diagram showing a fourth step in the content distribution process of Figure 3.
  • Figure 13 is flow diagram showing a first step in the content tracking process of Figure 4.
  • Figure 14 is flow diagram showing a second step in the content tracking process of Figure 4.
  • Figure 15 is flow diagram showing a third step in the content tracking process of Figure 4.
  • Figure 16 is flow diagram showing a fourth step in the content tracking process of Figure 4.
  • Figure 17 is a block diagram showing a system according to an exemplary embodiment of the present invention.
  • the system 10 includes a plurality of server computers 12-15 and a plurality of users' computers 25 (clients).
  • the server computers 12-15 and the user computers 25 may be connected by a network 16, such as for example, an Intranet or the Internet.
  • the user computers 25 may be connected to the Intranet or Internet by a modem connection, a Local Area Network (LAN), cable modem, digital subscriber line (DSL), or other equivalent connection means.
  • Each user computer 25 preferably includes a video monitor 18 for displaying information.
  • each user computer 25 preferably includes an electronic mail (e-mail) program 19 (e.g., Microsoft Outlook®) and a browser program 20 (e.g. Microsoft Internet Explorer®, Netscape Navigator®, etc.), as is well known in the art.
  • e-mail electronic mail
  • Microsoft Outlook® Microsoft Outlook®
  • a browser program 20 e.g. Microsoft Internet Explorer®, Netscape Navigator®, etc.
  • Server computer 12 preferably comprises an "e-mail server” which includes at least one program module or 'engine' 30 (explained in detail below) which operates to send e-mails to the user computers 25.
  • Server computer 13 preferably comprises a "content server” which includes at least one program module or 'engine' 31 (explained in detail below) which operates to distribute content (e.g., video, audio, text, etc.) to the user computers 25 and preferably to assist in tracking of such content.
  • content server which includes at least one program module or 'engine' 31 (explained in detail below) which operates to distribute content (e.g., video, audio, text, etc.) to the user computers 25 and preferably to assist in tracking of such content.
  • Server computer 14 preferably comprises a "reporting server” which includes at least one program module or 'engine' 32 (explained in detail below) which operates to provide reporting information (e.g., click-throughs, forwarding, etc.) on the e-mail and content (video and audio) distributed by the servers 12-13.
  • Server computer 15 preferably comprises a "database server” which includes at least one program module or 'engine' 33, and which stores information regarding, for example, customer requirements and specifications.
  • Each of the program modules 30-33 includes program code, preferably written in Hypertext Mark-up Language (HTML), JAVATM (Sun Microsystems, Inc.), Active Server Pages (ASP) and Extensible Markup Language (XML).
  • HTML Hypertext Mark-up Language
  • JAVATM Java Microsystems, Inc.
  • ASP Active Server Pages
  • XML Extensible Markup Language
  • the system 10 operates by the process 100 (described below) to distribute e- mail and content (e.g., video, audio, text, etc.) from the servers 12-15 to the users of the system via user computers 25, and to track the subsequent use and forwarding of the content.
  • the content comprises "rich media content, such as a FLASHTM-generated program file (e.g., electronic commercial) which is embedded in an e-mail, so that when a user 'opens' the e-mail, the FLASHTM program file begins to play automatically (if the user computer 25 includes software permitting instantaneous play).
  • a FLASHTM-generated program file e.g., electronic commercial
  • the system 10 senses this and displays the content in a form which is permitted by the user computer (as explained in more detail below).
  • the content may include other elements such as, text, graphics, audio, and user queries (referred to herein as "special conditions").
  • customers refers to a customer of an operator of the system 10 (and performer of process 100, described below). Such a customer may be a corporation or individual who wishes to send content (e.g., FLASHTM-produced commercials) over the network 16 to the user computers 25.
  • content e.g., FLASHTM-produced commercials
  • user or “client” refers to the receivers of the content (e.g., individuals who have been targeted by the "customer” to receive the FLASHTM commercials).
  • the process 100 preferably includes three major steps, preparation of content (step 200), distribution of content (step 300), and tracking of content (step 400).
  • the content may be any type of data or information, but in the preferred embodiment comprises FLASHTM program files (or other files created using related technologies such as QuickTime (Apple Computer, Inc.), Shockwave (Macromedia, Inc.), Windows Media (Microsoft, Inc.), Real Player (Real Networks, Inc.), etc.) in the form of electronic commercials and advertising information displayed on the video screens 18 of the user computers 25 of the system 10.
  • FIG. 2 shows the details of the content preparation step 200.
  • the content preparation step 200 includes a content development step 210, an encoded element preparation step 220, a job property development step 230, and a special conditions preparation step 240. Each of these steps will be explained in detail below with reference to Figures 5-8.
  • Figure 5 shows a content development step 210.
  • the content may comprise any type of information, but preferably comprises FLASHTM program files in the form of electronic commercials and advertising information.
  • the content Prior to the content development step 210, the content has preferably been created and refined by web-artists and programmers.
  • the content may be in the form of a computer program file in the FLASHTM format (".swf" file), or other related video display technologies (e.g., HTML file(s), streaming video).
  • FLASHTM program files are particularly advantageous for advertising purposes, in that during playback (utilizing a browser or otherwise) FLASHTM files appear as full-motion videos to the viewer.
  • the job sheet is a paper or electronic form which is filled out based on a customer's particular requirements.
  • the term "job” as used herein refers to the processing, sending and tracking of e-mail and content.
  • the job sheet may be filled out by an employee of the content creator, or may be filled out directly by the customer on-line.
  • the requirements may include customer contact information, time length of the content, quality of the content, color standards of the content, job duration (e.g., number of e-mails sent or length of time over which e-mails are sent), maximum plays (e.g., the number of times an electronic commercial may be replayed by users) and custom actions (e.g., queries placed in the content).
  • Steps 212-215 are steps which are preferably performed concurrently.
  • the video content e.g., FLASHTM program file
  • "Encapsulated” content is processed at step 213.
  • Encapsulated content comprises the content (video and audio) which is bundled into discrete file packages for transmission. Since all computers do not operate with the same hardware and software, the content must be packaged so that all computers may easily view the content.
  • the different encapsulations (or packages) include an HTML package, an American Online (AOL) package, and a Text-only package. Of course, the above- described packages are the preferred packages known at the time of invention, it should be noted that other packages may be used.
  • Information is entered in a database (stored on database server 15) at step 214.
  • the information may comprises the customer data obtained from the job sheet at step 211, and other relevant information.
  • a text file which corresponds to the content is created at step 215.
  • the text file may include, for example, a message regarding the content, or identifying a related website to the user. Depending on the specifications of the user computer 25, the text file may appear in an e-mail program display screen, or may appear in a browser program display screen.
  • the content is reviewed against the requirements of the job sheet at step 216.
  • the refined content is placed on a server (e.g., an internal content server, explained below), and is accessed internally by the content creator to ensure that it can be viewed. If any refinements to the content are required, they are accomplished at step 217.
  • FIG. 6 shows an encoded element preparation step 220.
  • the content prepared and processed in step 210 is sent to an internal content server (not shown) at step 221 (if not already there).
  • the internal content server preferably comprises a server internal to the content creator which is used to refine the content before distribution.
  • steps 222-227 are performed (preferably concurrently).
  • Step 222 involves preparation of an encoded HTML servlet.
  • Step 223 involves preparation of a Java script servlet.
  • Step 224 involves preparation of a text e-mail sending servlet.
  • Step 225 involves preparation of an enriched e-mail sending servlet.
  • Step 226 involves preparation of a self-launching e-mail sending servlet.
  • Step 227 involves preparation of an open HTML file.
  • the open HTML file is used to generate the encoded HTML servlet at step 222, and is then installed on the internal content server and the test beds as a backup for the servlet.
  • the self-launching e-mail servlet prepared at step 226 is a separate servlet which operates to combine the servlets 222-225 and 227 into a master servlet. It will be understood by those skilled in the art, that the above-described "servlets" comprise mini-programs which are utilized selectively based on certain parameters of each user computer 25, such as bandwidth, e-mail program type and browser type, as explained below.
  • step 228 it must be decided whether the job is a "partner" job or an "internal” job at step 228. If the job is a "partner” job, the process proceeds to step 229 where a "partner template” is prepared.
  • the "partner template” essentially comprises a file containing information on the partner's responsibilities (e.g., names and e-mail addresses of targeted persons, if the partner will take on e-mailing responsibilities)
  • the "partner template” is saved as a ".zip” file at the content server 14 and sent to the partner in compressed format.
  • step 250 from step 228), where the job is designated as internal.
  • a e-mail engine i.e., a computer program preferably disposed on the e-mail server 12
  • a job property development step 230 as explained below.
  • FIG. 7 shows a job property development step 230.
  • job refers to the processing, sending and tracking of e-mail and content.
  • job information obtained from the job sheet at step 214 is entered into the database server 15 at step 231.
  • each job has a particular job identification number ("job number") associated therewith for tracking purposes (explained below with reference to Fig. 11).
  • job number may comprise any number of characters (letters, numbers, etc.) arranged in any order, and is preferably used to identify separate jobs from one another.
  • it is again decided whether the job is an "internal" job or a "partner" job.
  • one entity may not have the resources to provide both e-mailing functions and provision of content (e.g., FLASHTM files), sometimes it may be necessary to partner with another entity.
  • content e.g., FLASHTM files
  • one entity may store the content on their server, and another entity may store e-mail information on their server, and provide for the mailing of the e-mails to the intended recipients through a program (engine) stored on the server.
  • step 233 the process proceeds to step 233 where partners are designated.
  • the contact information for the partners is entered into a database server (e.g., database server 15; Fig. 17).
  • Job managers from each partner are also selected and set at this point, the job managers overseeing the respective functions of their partner.
  • step 235 a Web Identification (Web ID) and Login Password (Password) are set for each partner, so that all the partners can share in reporting information posted to a specified website which may be stored on the reporting server 14 (explained in detail below).
  • Web ID Web ID
  • Password Login Password
  • step 236 From step 232, the job is designated as internal.
  • step 237 an internal job manager is assigned to oversee the job.
  • the internal job manager has access to all reporting information for all jobs, and therefore, there is no need to set Web IDs and Passwords.
  • Figure 8 shows a special conditions preparation step 240.
  • any special requirements of the customer are added to the content (e.g., FLASHTM file, e- mail, etc.).
  • content e.g., FLASHTM file, e- mail, etc.
  • any supporting text supplied by the customer is processed to ensure it can be displayed (in either an e-mail program or a browser) and included in the content by placing it on the content server 13.
  • any supporting graphics supplied by the customer are processed and included in the content (step 242) by placing them on the content server 13.
  • any special logic conditions specified by the customer are entered into the database server 15.
  • Special logic conditions may include such things as queries to a user (e.g., "would you consider buying this product, yes or no?"), or automatic substitutions of data on a daily or weekly basis. For instance, a customer may want to change the supporting text every week (in order to keep the content current), or may want to poll users with questions to determine particular content needs. If the customer has not supplied any special conditions, the process proceeds directly
  • Special conditions may be utilized in a variety of ways to customize a particular campaign towards a certain set of users.
  • the customization of the content (and the campaign) towards a particular set of users increases the effectiveness of the campaign, and makes the content more interesting.
  • a first set of e-mails with associated content files (first campaign) may be sent to a group of 50,000 people.
  • the campaign may be refined to target only those users who are interested. This can be easily accomplished through the automatic substitution of data and content (which may be stored on the content server 13 as described above), and the transmission of a second set of e-mails with associated content files (second campaign).
  • the e-mails may be addressed to the users directly (e.g., "Dear Dave!”), and the content may be altered to provide more or additional information from the first campaign.
  • Such campaigns may continue on, thereby further refining the user group.
  • the present process 100 can sense the desires of each user and supply additional data and content to customize the e-mail and content to the particular user's desires.
  • the content preparation step 200 is complete.
  • the content may now include a main content file (e.g., FLASHTM file), supporting text, supporting graphics, and special conditions.
  • a main content file e.g., FLASHTM file
  • supporting text e.g., text, supporting graphics, and special conditions.
  • special conditions e.g., text, supporting graphics, and special conditions.
  • Figure 3 shows the details of the content distribution step 300.
  • the content distribution step 300 includes an encoded element packaging step 310, a content release step 320, a release e-mail step 330, and a content engine notify step 340. Each of these steps will be explained in detail below with reference to Figures 9-12.
  • Figure 9 shows an encoded element packaging step 310.
  • the internal content server preferably comprises a server internal to the content creator which is used to refine the content before distribution. Then, the content is reviewed to determine that content parameters meet the required specifications at step 312.
  • the content is then packaged for sending at steps 313-318 (preferably performed concurrently).
  • different packages are required depending on the capabilities of the user computer 25. Therefore, some of the packages described below may not be required on some user computers 25 which have more advanced software.
  • a text-only e-mail sending element (packaged at step 313) may not be required for newer systems which have advanced browsers (with plug-ins and links to other programs) and advanced e- mail programs, but would be required on older systems where an e-mail program may not necessarily be linked to a browser or other programs.
  • a Text-only e-mail sending element is packaged at step 313, which corresponds to a Text-only package (e.g., low quality grade).
  • An AOL e-mail enriched text sending element is packaged at step 314, which corresponds to an AOL package (e.g., medium quality grade).
  • An HTML e-mail sending element is packaged at step 315, which corresponds to a HTML package (e.g., high quality grade).
  • An enriched e-mail sending element, a Java script encoding element, and a supporting web content element are packaged at steps 316-318, respectively (e.g., high quality grade).
  • Each of the packages prepared at steps 313-318 correspond to servlets which were previous prepared in steps 222-227 (See Fig. 6).
  • the encoded HTML servlet prepared at step 222 corresponds to the HTML package 315
  • the Java servlet prepared at step 223 corresponds to the Java package 317
  • the Text email servlet prepared at step 224 corresponds to the Text email package 31
  • the Enriched email servlet prepared at step 225 corresponds to the Enriched text package 314 and the Enriched email package 316
  • the open HTML servlet prepared at step 227 corresponds to the web content package 318.
  • the self-launching e-mail servlet prepared at step 226 in Figure 6 serves to assemble the servlets 222-225 and 227 into a master servlet which may also be packaged.
  • the fully packaged content is then tested at step 319 (e.g., by sending the packaged content from the internal content server to the test beds).
  • the Text-only e-mail sending, the AOL e-mail sending element, and the HTML e-mail sending elements packaged at steps 223-225 may be combined into a single file (e.g., ".zip” file) for ease of distribution.
  • Each of the above “elements” comprise separate program modules which are either utilized or not utilized depending on the capabilities of user computer 25 receiving the e-mail and content.
  • a user computer 25 will receive and display (on video monitor 18) a standard e-mail message, and at the very most a e-mail message linked to a content file (e.g., FLASHTM file) which begins to play as soon as the user opens the e-mail.
  • a content file e.g., FLASHTM file
  • the e-mail might also include banners, hyperlinks, graphics files (e.g., ".gif ', "jpg”), and queries with icons which may be clicked to respond disposed therein.
  • Figure 10 shows a content release step 320.
  • content is released to an external production server (not shown) from the internal content server at step 321.
  • the servlets (packaged at steps 313-317, described above) are released to the production server at step 322.
  • the e-mails (linked to content) are ready to be released to the actual users (i.e, user computers 25).
  • a test run e-mail is sent internally to ensure that everything is working properly at step 323. This process may be as simple as an individual of the content creator or e-mailer sending an e-mail to himself or some other employee of the content creator or e-mailer.
  • the content is released to the next step, namely, a release e-mail step 330.
  • FIG 11 shows a release e-mail step 330. This is the step where e-mails are actually sent to users.
  • a "job number” is obtained for the job, for tracking purposes.
  • a "job number” database is maintained on the database server 15, containing assigned and available job numbers, which is updated each time a new "job number” is assigned.
  • database information e.g., job name, etc.
  • a decision is made again whether the job is a "partner" or "internal” job (see steps 232 (Fig. 7) and 318 (Fig. 9) above).
  • step 334 a starting point for an "identification number” (used for tracking purposes) which is different than the "job number” for the job is determined.
  • an identification number used for tracking purposes
  • a database is maintained on the database server 15, containing assigned and available identification numbers, which is updated each time an identification number is assigned. Accordingly, each e-mail has an associated identification number, so that the progress of that e-mail (e.g., forwards, etc.) can be tracked for reporting purposes.
  • the e-mail address of each user to which the message is originally sent e.g., JoeSmith@aol.com
  • a release schedule is determined at step 335.
  • the e-mail engine of the partner is set to coincide with the predetermined release schedule, and the e-mails are released to the users.
  • a starting point for an identification number (used for tracking purposes) for the job is determined, and the e-mails are released to the users at step 337 (through an e-mail engine preferably resident on e-mail server 12).
  • Figure 12 shows a content engine notify step 340.
  • the content server 13 should be notified that it can expect requests to view the content imminently.
  • the job is an "internal" job or a "partner" job at step 341. If the job is a "partner" job, it is designated as such at step 346, and a counter is started at step 347.
  • the counter functions as an indicator of how many times a particular "stream” is played (e.g., how many times a FLASFfTM file associated with a particular e-mail is played).
  • the streams should be discontinued (See discussion below with reference to Fig. 13 and the "tracking" system). If the job is a "internal" job, it is designated as such at step 342, and the database server is updated that the job has been sent at step 343. Then, a counter is started at step 344, for "stream" tracking. Finally, an e-mail is sent from the e-mail server 12 to the database server 15, notifying the database server of which e- mails were delivered to the intended recipients (user computers 25). For example, if any e-mails were undeliverable due to incorrect e-mail addresses, the e-mail sent to the database server 15 will so indicate.
  • FIG. 4 shows the details of the content tracking step 400.
  • the process according to the present invention tracks the subsequent course of the e-mails and the accessing of the content.
  • the content tracking step 400 includes a tracking activation step 410, a caching step 420, a real-time reporting activation step 430, and a session manager activation step 440. Each of these steps will be explained in detail below with reference to Figures 13-16.
  • FIG. 13 shows a tracking activation step 410.
  • the tracking activation begins with the activation of the reporting server 14 at step 411.
  • a program engine
  • a program preferably resident on the reporting server 14
  • Some of the functions logged include the: (a) IP address of the user (recipient), (b) domain of user, ⁇ method(s) of access (e.g, HTTP Web access, User Login access), (d) bytes in, (e) bytes out, (f) processing time of user requests, (g) parameters passed (e.g., the actual command string used for calling a program), (h) HTML service level, (i) password used, and (j) login account.
  • the functions are logged to files stored on the content server 13 at step 412 (and subsequently onto a primary server), and logged to a database stored on the database server 15 at step 413.
  • the reporting server 14 recognizes the starting of the servlet engine (step 414).
  • the servlet engine is the program (engine), preferably stored on the content server 13, which serves the content to the user computers 25.
  • the content is prepared (Fig. 6, steps 222-227) and packaged (Fig. 9, steps 313-318) as several different servlets, each servlet being used selectively based on the capabilities of the user computer 25 viewing the content.
  • the content serving and e-mailing processes are then continually monitored at step 415 a "watch" program module.
  • the "watch" program via e-mail, paging, etc.
  • the number of requests for content (“stream requests") are monitored at step 417 (by the counter described above) and sent to a session manager at step 418.
  • the session manager is another program module which retains and controls the online session status, including current request count, machine identification, and total use time. This information is stored in transaction log databases stored on the database server 15. If a maximum number of stream requests has been specified by the customer or the content provider, stream requests above that maximum will be denied.
  • Figure 14 shows a caching step 420. So that content stored on the content server 13 can be more easily accessed, the content is loaded into a cache of the content server upon the first stream request at step 421. Then, a timer is started at step 422 to provide time tracking of stream requests and other elements of the process. Then, the content in the cache is served to the user computer 25 (requestor). It is important to note that the serving of the cache contents is based on the bandwidth capabilities of the user computer 25. As stated above, different quality levels of content (e.g., low through high) are processed and are available to be served. The "bytes in" and "bytes out” information logged at steps 412 and 413 is used to determine the bandwidth capabilities of the user computer 25.
  • a timer is started at step 422 to provide time tracking of stream requests and other elements of the process.
  • the content in the cache is served to the user computer 25 (requestor). It is important to note that the serving of the cache contents is based on the bandwidth capabilities of the user computer 25.
  • the servlet engine on the content server 13 may include a master servlet (prepared at step 226; Fig. 6) and five sub-servlets (prepared at steps 222-225 and 227; Fig. 6).
  • the sub-servlets are used selectively based on, for example, the bandwidth capabilities of the user computer 25 and the particular e-mail and browser programs resident on the user computer 25.
  • the five sub-servlets define a range of qualities which range from "low" to "high” (the "high" quality servlet specifying the servlet with most capabilities). For example, a user computer 25 which is running the most recent versions of Microsoft Internet ExplorerTM and Microsoft OutlookTM will likely receive the "high" quality servlet.
  • each user computer 25 which is running an older or less sophisticated browser such as MosaicTM and an older or less sophisticated e-mail program such as Eudora E-mailTM will likely receive the "low" quality servlet.
  • the e-mail and the associated content are crafted to meet the particular needs of each user computer 25. Accordingly, each user computer 25 sees the highest possible grade message that her computer will let her see.
  • five servlets are described above, that number of servlets is only exemplary, and accordingly, any number of servlets may be used in connection with the present invention.
  • additional servlets or the use of a lesser number of servlets merely requires adding (or removing) steps in the process 100 (which would preferably occur concurrently with steps 222-227 and steps 313-318 in Figures 6 and 9) for respectively generating and packaging the servlets.
  • An additional number of servlets may be used to provide more quality options, whereas a lesser number of servlets may be used to simplify the process if the capabilities of the user computers 25 are known, and not alterable.
  • FIG. 15 shows a real-time reporting activation step 430.
  • a real time reporting process begins. The process is begun by initializing a reporting engine which is preferably resident on the content server 13. The reporting engine takes information obtained from the tracking steps described above and reports them based on requests (typically by the customer or the content provider).
  • the reporting engine supplies web forms which may be accessed over the Internet (or an Intranet) by customers or managers.
  • a security measure e.g., password, etc.
  • the system updates the reporting information based on the request at step 435.
  • an entry is made in a security log identifying the requestor, date/time of access, etc. at step 436.
  • FIG 16 shows a session manager activation step 440.
  • the session manager is a separate program module (engine) within the reporting server 14 which monitors the overall system for user activity and connection.
  • a "session” comprises each time a user computer accesses the content from the content server 13. The session ends when the users closes the e-mail and/or browser program, or after a specified time (controlled by the session timer, explained below).
  • the session manager is started at step 441, when the session manager engine receives a notification from the e-mail server 12 that job has started.
  • the engine then waits for content requests at step 442, and processes the requests at step 443. Before serving the content, the engine checks the job counter to ensure that a maximum number of stream requests have not been exceeded (step 444).
  • the content is served to the user at step 445, and all log files stored on the content server 13 (e.g., bytes in, bytes out, etc.; see step 412) are updated (step 446).
  • a session timer is also checked to determine how long each session lasts (step 447). The session timer is restarted each time a new session begins. If there is no activity after a specified time, the session manager may end the session automatically.
  • all "forward" requests and all “repeat” requests are logged to files on the content server (steps 448, 449).
  • the transactional databases on the database server 15 are updated with any new information (e.g., "forward" requests, etc.) at step 450.
  • the process 100 described above references a content server 13 which performs both content serving and tracking functions, it is within the scope of the present invention to have separate servers for performing the content serving and tracking functions, respectively. Additionally, it should be noted that the different servers described above (e.g., e-mail server 12, content server 13, reporting server 14, and database server) may be operated by different entities, and it is not required that the servers all be operated by one entity.

Abstract

A computer-implemented method for disseminating information, comprising the steps of: sending an electronic mail message to at least one recipient (25), said electronic mail (19) being linked to a graphical presentation file, sensing the capabilities of the at least one recipient's computer and, supplying only the elements of the graphical presentation file which may be viewed on the at least one recipient's computer.

Description

METHOD AND APPARATUS FOR DISSEMINATION OF RICH MEDIA
FIELD OF THE INVENTION
The present invention relates to a system and method for preparing, disseminating and tracking rich media, and in particular a method and apparatus for preparing, disseminating and tracking electronic mail and graphical presentation content.
DESCRIPTION OFTHE RELATEDART
Widespread use of personal computers, modems and data connections has allowed the growth of computer networks. The Internet serves as an example of a type of computer network, and indeed, is a large network of networks, all inter-connected, wherein the processing activity takes place in real time. The Internet offers mail, file transfer, remote log-in and other services. The World Wide Web (WWW) is the fastest growing part of the Internet. On the World Wide Web (WWW), a technology called hypertext allows Internet addressable resources to be connected, or linked, to one another. The advertising value of the Internet has been well recognized. For example, many websites on the Internet utilize "banner" advertisements which allow a user to link directly to the advertiser's website. Additionally, many websites include full-motion video components (also referred to as "rich media") created using FLASH™ (Macromedia, Inc.) or related technologies (e.g., QuickTime (Apple Computer, Inc.), Shockwave (Macromedia, Inc.), Windows Media (Microsoft, Inc.), Real Player (Real Networks, Inc.), etc.).
E-mail has also been utilized as an advertising tool. Advertisers may send e- mails including textual advertising information, or even hyperlinks to websites which provide advertising information. Sometimes, advertisers will attach textual or visual information to a e-mail directed towards a certain consumer or group of consumers. However, due to the multitude of different e-mail programs on the market today, often times users cannot open or "see" the attachments which contain the advertising information. Thus, although an advertiser may have sent an advertisement e-mail to 100,000 users, it is possible that less than ten percent (10%), i.e., less than 10,000, users actually saw the advertisement.
Therefore, there is currently a need for a method and apparatus for disseminating advertising information through e-mails so that the information reaches all its intended recipients.
SUMMARY OF THE INVENTION
The present invention is a computer-implemented method for disseminating information, including the steps of: sending an electronic mail message to at least one recipient, said electronic mail being linked to a graphical presentation file, sensing the capabilities of the at least one recipient's computer and, supplying only the elements of the graphical presentation file which may be viewed on the at least one recipient's computer.
The above and other advantages and features of the present invention will be better understood from the following detailed description of the preferred embodiments of the invention which is provided in connection with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 is flow diagram showing a process according to an exemplary embodiment of the present invention.
Figure 2 is flow diagram showing an overall content preparation process according to an exemplary embodiment of the present invention. Figure 3 is flow diagram showing an overall content distribution process according to an exemplary embodiment of the present invention.
Figure 4 is flow diagram showing an overall content tracking process according to an exemplary embodiment of the present invention.
Figure 5 is flow diagram showing a first step in the content preparation process of Figure 2.
Figure 6 is flow diagram showing a second step in the content preparation process of Figure 2.
Figure 7 is flow diagram showing a third step in the content preparation process of Figure 2.
Figure 8 is flow diagram showing a fourth step in the content preparation process of Figure 2.
Figure 9 is flow diagram showing a first step in the content distribution process of Figure 3.
Figure 10 is flow diagram showing a second step in the content distribution process of Figure 3.
Figure 11 is flow diagram showing a third step in the content distribution process of Figure 3.
Figure 12 is flow diagram showing a fourth step in the content distribution process of Figure 3.
Figure 13 is flow diagram showing a first step in the content tracking process of Figure 4.
Figure 14 is flow diagram showing a second step in the content tracking process of Figure 4. Figure 15 is flow diagram showing a third step in the content tracking process of Figure 4.
Figure 16 is flow diagram showing a fourth step in the content tracking process of Figure 4.
Figure 17 is a block diagram showing a system according to an exemplary embodiment of the present invention.
DETAILED DESCRIPTION
Referring to Figure 17, there is shown a system 10 according to an exemplary embodiment of the present invention. The system 10 includes a plurality of server computers 12-15 and a plurality of users' computers 25 (clients). The server computers 12-15 and the user computers 25 may be connected by a network 16, such as for example, an Intranet or the Internet. The user computers 25 may be connected to the Intranet or Internet by a modem connection, a Local Area Network (LAN), cable modem, digital subscriber line (DSL), or other equivalent connection means. Each user computer 25 preferably includes a video monitor 18 for displaying information. Additionally, each user computer 25 preferably includes an electronic mail (e-mail) program 19 (e.g., Microsoft Outlook®) and a browser program 20 (e.g. Microsoft Internet Explorer®, Netscape Navigator®, etc.), as is well known in the art.
• Server computer 12 preferably comprises an "e-mail server" which includes at least one program module or 'engine' 30 (explained in detail below) which operates to send e-mails to the user computers 25. Server computer 13 preferably comprises a "content server" which includes at least one program module or 'engine' 31 (explained in detail below) which operates to distribute content (e.g., video, audio, text, etc.) to the user computers 25 and preferably to assist in tracking of such content. Server computer 14 preferably comprises a "reporting server" which includes at least one program module or 'engine' 32 (explained in detail below) which operates to provide reporting information (e.g., click-throughs, forwarding, etc.) on the e-mail and content (video and audio) distributed by the servers 12-13. Finally, Server computer 15 preferably comprises a "database server" which includes at least one program module or 'engine' 33, and which stores information regarding, for example, customer requirements and specifications. Each of the program modules 30-33 includes program code, preferably written in Hypertext Mark-up Language (HTML), JAVA™ (Sun Microsystems, Inc.), Active Server Pages (ASP) and Extensible Markup Language (XML).
The system 10 operates by the process 100 (described below) to distribute e- mail and content (e.g., video, audio, text, etc.) from the servers 12-15 to the users of the system via user computers 25, and to track the subsequent use and forwarding of the content. In the preferred embodiment, the content comprises "rich media content, such as a FLASH™-generated program file (e.g., electronic commercial) which is embedded in an e-mail, so that when a user 'opens' the e-mail, the FLASH™ program file begins to play automatically (if the user computer 25 includes software permitting instantaneous play). If the user computer 25 does not permit instantaneous play of the content, the system 10 senses this and displays the content in a form which is permitted by the user computer (as explained in more detail below). In addition to a FLASH™ program file, the content may include other elements such as, text, graphics, audio, and user queries (referred to herein as "special conditions").
The following description will refer to both customers and users (or clients). It should be noted that the term "customer" refers to a customer of an operator of the system 10 (and performer of process 100, described below). Such a customer may be a corporation or individual who wishes to send content (e.g., FLASH™-produced commercials) over the network 16 to the user computers 25. The term "user" or "client" refers to the receivers of the content (e.g., individuals who have been targeted by the "customer" to receive the FLASH™ commercials).
Referring to Figure 1, there is shown a flow chart describing a process 100 for creating, distributing, and tracking information according to an exemplary embodiment of the present invention. The process 100 preferably includes three major steps, preparation of content (step 200), distribution of content (step 300), and tracking of content (step 400). As noted above, the content may be any type of data or information, but in the preferred embodiment comprises FLASH™ program files (or other files created using related technologies such as QuickTime (Apple Computer, Inc.), Shockwave (Macromedia, Inc.), Windows Media (Microsoft, Inc.), Real Player (Real Networks, Inc.), etc.) in the form of electronic commercials and advertising information displayed on the video screens 18 of the user computers 25 of the system 10.
Figure 2 shows the details of the content preparation step 200. As can be seen, the content preparation step 200 includes a content development step 210, an encoded element preparation step 220, a job property development step 230, and a special conditions preparation step 240. Each of these steps will be explained in detail below with reference to Figures 5-8.
Figure 5 shows a content development step 210. As stated above, the content may comprise any type of information, but preferably comprises FLASH™ program files in the form of electronic commercials and advertising information. Prior to the content development step 210, the content has preferably been created and refined by web-artists and programmers. The content may be in the form of a computer program file in the FLASH™ format (".swf" file), or other related video display technologies (e.g., HTML file(s), streaming video). FLASH™ program files are particularly advantageous for advertising purposes, in that during playback (utilizing a browser or otherwise) FLASH™ files appear as full-motion videos to the viewer. Once the content has been created by the programmers and web-artists, the content development step 210 may begin.
First, a "job sheet" is reviewed for the particular requirements of the content. The job sheet is a paper or electronic form which is filled out based on a customer's particular requirements. The term "job" as used herein refers to the processing, sending and tracking of e-mail and content. The job sheet may be filled out by an employee of the content creator, or may be filled out directly by the customer on-line. The requirements may include customer contact information, time length of the content, quality of the content, color standards of the content, job duration (e.g., number of e-mails sent or length of time over which e-mails are sent), maximum plays (e.g., the number of times an electronic commercial may be replayed by users) and custom actions (e.g., queries placed in the content). Once, the job sheet has been reviewed by the content creator, the content is ready to be processed.
Steps 212-215 are steps which are preferably performed concurrently. The video content (e.g., FLASH™ program file) is processed at step 212. This involves matching audio content (soundtrack) with the video content, and modifications to the video presentation for optimum transmission to the user computers 25. "Encapsulated" content is processed at step 213. Encapsulated content comprises the content (video and audio) which is bundled into discrete file packages for transmission. Since all computers do not operate with the same hardware and software, the content must be packaged so that all computers may easily view the content. The different encapsulations (or packages) include an HTML package, an American Online (AOL) package, and a Text-only package. Of course, the above- described packages are the preferred packages known at the time of invention, it should be noted that other packages may be used.
Information is entered in a database (stored on database server 15) at step 214. The information may comprises the customer data obtained from the job sheet at step 211, and other relevant information. A text file which corresponds to the content is created at step 215. The text file may include, for example, a message regarding the content, or identifying a related website to the user. Depending on the specifications of the user computer 25, the text file may appear in an e-mail program display screen, or may appear in a browser program display screen.
After the content has been processed, and the database information has been entered, the content is reviewed against the requirements of the job sheet at step 216. This involves viewing the content via a system of internal computers (referred to herein as "test beds") of the content creator. For example, the refined content is placed on a server (e.g., an internal content server, explained below), and is accessed internally by the content creator to ensure that it can be viewed. If any refinements to the content are required, they are accomplished at step 217.
Figure 6 shows an encoded element preparation step 220. To begin this process, the content prepared and processed in step 210 is sent to an internal content server (not shown) at step 221 (if not already there). The internal content server preferably comprises a server internal to the content creator which is used to refine the content before distribution. Once the content is received at the internal content server, steps 222-227 are performed (preferably concurrently). Step 222 involves preparation of an encoded HTML servlet. Step 223 involves preparation of a Java script servlet. Step 224 involves preparation of a text e-mail sending servlet. Step 225 involves preparation of an enriched e-mail sending servlet. Step 226 involves preparation of a self-launching e-mail sending servlet. Finally, Step 227 involves preparation of an open HTML file. The open HTML file is used to generate the encoded HTML servlet at step 222, and is then installed on the internal content server and the test beds as a backup for the servlet. The self-launching e-mail servlet prepared at step 226 is a separate servlet which operates to combine the servlets 222-225 and 227 into a master servlet. It will be understood by those skilled in the art, that the above-described "servlets" comprise mini-programs which are utilized selectively based on certain parameters of each user computer 25, such as bandwidth, e-mail program type and browser type, as explained below.
At this point, it must be decided whether the job is a "partner" job or an "internal" job at step 228. If the job is a "partner" job, the process proceeds to step 229 where a "partner template" is prepared. The "partner template" essentially comprises a file containing information on the partner's responsibilities (e.g., names and e-mail addresses of targeted persons, if the partner will take on e-mailing responsibilities) Typically, the "partner template" is saved as a ".zip" file at the content server 14 and sent to the partner in compressed format. For an "internal" job, the process proceeds to step 250 (from step 228), where the job is designated as internal. Then, at step 251, a e-mail engine (i.e., a computer program preferably disposed on the e-mail server 12) is chosen for the dissemination of e-mails to user computers 25. The process 100 then proceeds to a job property development step 230, as explained below.
Figure 7 shows a job property development step 230. In this step, the different requirements of the "job" are logged. The term "job" as used herein refers to the processing, sending and tracking of e-mail and content. First, job information obtained from the job sheet at step 214 is entered into the database server 15 at step 231. Preferably, each job has a particular job identification number ("job number") associated therewith for tracking purposes (explained below with reference to Fig. 11). The job number may comprise any number of characters (letters, numbers, etc.) arranged in any order, and is preferably used to identify separate jobs from one another. At step 232, it is again decided whether the job is an "internal" job or a "partner" job. Since one entity may not have the resources to provide both e-mailing functions and provision of content (e.g., FLASH™ files), sometimes it may be necessary to partner with another entity. For example, one entity may store the content on their server, and another entity may store e-mail information on their server, and provide for the mailing of the e-mails to the intended recipients through a program (engine) stored on the server.
If the job is a "partner" job, the process proceeds to step 233 where partners are designated. Next, at step 234, the contact information for the partners is entered into a database server (e.g., database server 15; Fig. 17). Job managers from each partner are also selected and set at this point, the job managers overseeing the respective functions of their partner. Finally, at step 235, a Web Identification (Web ID) and Login Password (Password) are set for each partner, so that all the partners can share in reporting information posted to a specified website which may be stored on the reporting server 14 (explained in detail below).
For an "internal" job, the process proceeds to step 236 (from step 232), where the job is designated as internal. Then, at step 237, an internal job manager is assigned to oversee the job. The internal job manager has access to all reporting information for all jobs, and therefore, there is no need to set Web IDs and Passwords.
Figure 8 shows a special conditions preparation step 240. In this step, any special requirements of the customer are added to the content (e.g., FLASH™ file, e- mail, etc.). First, at step 241, any supporting text supplied by the customer is processed to ensure it can be displayed (in either an e-mail program or a browser) and included in the content by placing it on the content server 13. Next, any supporting graphics supplied by the customer are processed and included in the content (step 242) by placing them on the content server 13. Finally, any special logic conditions specified by the customer are entered into the database server 15. Special logic conditions may include such things as queries to a user (e.g., "would you consider buying this product, yes or no?"), or automatic substitutions of data on a daily or weekly basis. For instance, a customer may want to change the supporting text every week (in order to keep the content current), or may want to poll users with questions to determine particular content needs. If the customer has not supplied any special conditions, the process proceeds directly to the content distribution step 300.
Special conditions may be utilized in a variety of ways to customize a particular campaign towards a certain set of users. The customization of the content (and the campaign) towards a particular set of users increases the effectiveness of the campaign, and makes the content more interesting. For example, a first set of e-mails with associated content files (first campaign) may be sent to a group of 50,000 people. Based on the user responses to special conditions, the campaign may be refined to target only those users who are interested. This can be easily accomplished through the automatic substitution of data and content (which may be stored on the content server 13 as described above), and the transmission of a second set of e-mails with associated content files (second campaign). In the second campaign, the e-mails may be addressed to the users directly (e.g., "Dear Dave..."), and the content may be altered to provide more or additional information from the first campaign. Such campaigns may continue on, thereby further refining the user group. Thus, through the use of special conditions, the present process 100, can sense the desires of each user and supply additional data and content to customize the e-mail and content to the particular user's desires.
Once the special conditions have been entered in the database, the content preparation step 200 is complete. The content may now include a main content file (e.g., FLASH™ file), supporting text, supporting graphics, and special conditions. Next, the process 100 proceeds to the content distribution step 300.
Figure 3 shows the details of the content distribution step 300. As can be seen, the content distribution step 300 includes an encoded element packaging step 310, a content release step 320, a release e-mail step 330, and a content engine notify step 340. Each of these steps will be explained in detail below with reference to Figures 9-12. Figure 9 shows an encoded element packaging step 310. Once the content has been created and refined, the content is transmitted to an internal content server (not shown) at step 311 (if not already present thereon). As explained above, the internal content server preferably comprises a server internal to the content creator which is used to refine the content before distribution. Then, the content is reviewed to determine that content parameters meet the required specifications at step 312. This may be accomplished by either a physical inspection performed by a computer operator or by an automated inspection program (preferably resident on the internal content server). The content is then packaged for sending at steps 313-318 (preferably performed concurrently). As stated above with reference to Figure 6, different packages are required depending on the capabilities of the user computer 25. Therefore, some of the packages described below may not be required on some user computers 25 which have more advanced software. For example, a text-only e-mail sending element (packaged at step 313) may not be required for newer systems which have advanced browsers (with plug-ins and links to other programs) and advanced e- mail programs, but would be required on older systems where an e-mail program may not necessarily be linked to a browser or other programs.
A Text-only e-mail sending element is packaged at step 313, which corresponds to a Text-only package (e.g., low quality grade). An AOL e-mail enriched text sending element is packaged at step 314, which corresponds to an AOL package (e.g., medium quality grade). An HTML e-mail sending element is packaged at step 315, which corresponds to a HTML package (e.g., high quality grade). An enriched e-mail sending element, a Java script encoding element, and a supporting web content element are packaged at steps 316-318, respectively (e.g., high quality grade). Each of the packages prepared at steps 313-318 correspond to servlets which were previous prepared in steps 222-227 (See Fig. 6). For instance, the encoded HTML servlet prepared at step 222 corresponds to the HTML package 315, the Java servlet prepared at step 223 corresponds to the Java package 317, the Text email servlet prepared at step 224 corresponds to the Text email package 313, the Enriched email servlet prepared at step 225 corresponds to the Enriched text package 314 and the Enriched email package 316, and the open HTML servlet prepared at step 227 corresponds to the web content package 318. The self-launching e-mail servlet prepared at step 226 in Figure 6 serves to assemble the servlets 222-225 and 227 into a master servlet which may also be packaged.
The fully packaged content is then tested at step 319 (e.g., by sending the packaged content from the internal content server to the test beds). It should also be noted that the Text-only e-mail sending, the AOL e-mail sending element, and the HTML e-mail sending elements packaged at steps 223-225 may be combined into a single file (e.g., ".zip" file) for ease of distribution.
Each of the above "elements" comprise separate program modules which are either utilized or not utilized depending on the capabilities of user computer 25 receiving the e-mail and content. For example, at the very least a user computer 25 will receive and display (on video monitor 18) a standard e-mail message, and at the very most a e-mail message linked to a content file (e.g., FLASH™ file) which begins to play as soon as the user opens the e-mail. Also on the higher end, the e-mail might also include banners, hyperlinks, graphics files (e.g., ".gif ', "jpg"), and queries with icons which may be clicked to respond disposed therein.
Figure 10 shows a content release step 320. First, content is released to an external production server (not shown) from the internal content server at step 321. Then, the servlets (packaged at steps 313-317, described above) are released to the production server at step 322. At this point, the e-mails (linked to content) are ready to be released to the actual users (i.e, user computers 25). However, before that is done, a test run e-mail is sent internally to ensure that everything is working properly at step 323. This process may be as simple as an individual of the content creator or e-mailer sending an e-mail to himself or some other employee of the content creator or e-mailer. Once the e-mail has been test checked, the content is released to the next step, namely, a release e-mail step 330.
Figure 11 shows a release e-mail step 330. This is the step where e-mails are actually sent to users. First, at step 331, a "job number" is obtained for the job, for tracking purposes. To that end, a "job number" database is maintained on the database server 15, containing assigned and available job numbers, which is updated each time a new "job number" is assigned. Next, database information (e.g., job name, etc.) on the job is retrieved from the database server 15 at step 332. Then, at step 333, a decision is made again whether the job is a "partner" or "internal" job (see steps 232 (Fig. 7) and 318 (Fig. 9) above). If the job is a "partner" job, the process proceeds to step 334, where a starting point for an "identification number" (used for tracking purposes) which is different than the "job number" for the job is determined. As with the "job number", a database is maintained on the database server 15, containing assigned and available identification numbers, which is updated each time an identification number is assigned. Accordingly, each e-mail has an associated identification number, so that the progress of that e-mail (e.g., forwards, etc.) can be tracked for reporting purposes. Alternatively to an identification number, the e-mail address of each user to which the message is originally sent (e.g., JoeSmith@aol.com) may also be used to track the progress of the e-mail. Then, a release schedule is determined at step 335. Finally, the e-mail engine of the partner is set to coincide with the predetermined release schedule, and the e-mails are released to the users. Alternatively, if the job is a "internal" job, a starting point for an identification number (used for tracking purposes) for the job is determined, and the e-mails are released to the users at step 337 (through an e-mail engine preferably resident on e-mail server 12).
Figure 12 shows a content engine notify step 340. Once the e-mails have been sent to the user computers 25 (recipients), the content server 13 should be notified that it can expect requests to view the content imminently. First, it is determined whether the job is an "internal" job or a "partner" job at step 341. If the job is a "partner" job, it is designated as such at step 346, and a counter is started at step 347. The counter functions as an indicator of how many times a particular "stream" is played (e.g., how many times a FLASFf™ file associated with a particular e-mail is played). It is important to log this information, as a customer may have requested only a certain number of "streams", and therefore, once the playback limit is reached, the streams should be discontinued (See discussion below with reference to Fig. 13 and the "tracking" system). If the job is a "internal" job, it is designated as such at step 342, and the database server is updated that the job has been sent at step 343. Then, a counter is started at step 344, for "stream" tracking. Finally, an e-mail is sent from the e-mail server 12 to the database server 15, notifying the database server of which e- mails were delivered to the intended recipients (user computers 25). For example, if any e-mails were undeliverable due to incorrect e-mail addresses, the e-mail sent to the database server 15 will so indicate.
Figure 4 shows the details of the content tracking step 400. Once e-mails have been created and sent, the process according to the present invention tracks the subsequent course of the e-mails and the accessing of the content. As can be seen, the content tracking step 400 includes a tracking activation step 410, a caching step 420, a real-time reporting activation step 430, and a session manager activation step 440. Each of these steps will be explained in detail below with reference to Figures 13-16.
Figure 13 shows a tracking activation step 410. The tracking activation begins with the activation of the reporting server 14 at step 411. Next, a program (engine), preferably resident on the reporting server 14, is started which logs all functions of the content server and e-mail server. Some of the functions logged include the: (a) IP address of the user (recipient), (b) domain of user, © method(s) of access (e.g, HTTP Web access, User Login access), (d) bytes in, (e) bytes out, (f) processing time of user requests, (g) parameters passed (e.g., the actual command string used for calling a program), (h) HTML service level, (i) password used, and (j) login account. The functions are logged to files stored on the content server 13 at step 412 (and subsequently onto a primary server), and logged to a database stored on the database server 15 at step 413. Next, the reporting server 14 recognizes the starting of the servlet engine (step 414). The servlet engine is the program (engine), preferably stored on the content server 13, which serves the content to the user computers 25. As explained above with reference to Figures 6 and 9, the content is prepared (Fig. 6, steps 222-227) and packaged (Fig. 9, steps 313-318) as several different servlets, each servlet being used selectively based on the capabilities of the user computer 25 viewing the content. The content serving and e-mailing processes are then continually monitored at step 415 a "watch" program module. If there are any anomalies in service, they are reported by the "watch" program (via e-mail, paging, etc.) to a service manager at step 416. Also, the number of requests for content ("stream requests") are monitored at step 417 (by the counter described above) and sent to a session manager at step 418. The session manager is another program module which retains and controls the online session status, including current request count, machine identification, and total use time. This information is stored in transaction log databases stored on the database server 15. If a maximum number of stream requests has been specified by the customer or the content provider, stream requests above that maximum will be denied.
Figure 14 shows a caching step 420. So that content stored on the content server 13 can be more easily accessed, the content is loaded into a cache of the content server upon the first stream request at step 421. Then, a timer is started at step 422 to provide time tracking of stream requests and other elements of the process. Then, the content in the cache is served to the user computer 25 (requestor). It is important to note that the serving of the cache contents is based on the bandwidth capabilities of the user computer 25. As stated above, different quality levels of content (e.g., low through high) are processed and are available to be served. The "bytes in" and "bytes out" information logged at steps 412 and 413 is used to determine the bandwidth capabilities of the user computer 25. For example, the servlet engine on the content server 13 may include a master servlet (prepared at step 226; Fig. 6) and five sub-servlets (prepared at steps 222-225 and 227; Fig. 6). The sub-servlets are used selectively based on, for example, the bandwidth capabilities of the user computer 25 and the particular e-mail and browser programs resident on the user computer 25. The five sub-servlets define a range of qualities which range from "low" to "high" (the "high" quality servlet specifying the servlet with most capabilities). For example, a user computer 25 which is running the most recent versions of Microsoft Internet Explorer™ and Microsoft Outlook™ will likely receive the "high" quality servlet. However, a user computer 25 which is running an older or less sophisticated browser such as Mosaic™ and an older or less sophisticated e-mail program such as Eudora E-mail™ will likely receive the "low" quality servlet. Thus, by the selection of the proper servlet, the e-mail and the associated content are crafted to meet the particular needs of each user computer 25. Accordingly, each user computer 25 sees the highest possible grade message that her computer will let her see. It should be noted that although five servlets are described above, that number of servlets is only exemplary, and accordingly, any number of servlets may be used in connection with the present invention. Those of ordinary skill in the art will recognize that the use of additional servlets (or the use of a lesser number of servlets) merely requires adding (or removing) steps in the process 100 (which would preferably occur concurrently with steps 222-227 and steps 313-318 in Figures 6 and 9) for respectively generating and packaging the servlets. An additional number of servlets may be used to provide more quality options, whereas a lesser number of servlets may be used to simplify the process if the capabilities of the user computers 25 are known, and not alterable.
When a maximum stream request is reached, or time runs out on the job (as measured by the timer), it is determined that the content requests have been completed at step 424. Then, the content is removed from the cache at step 425.
Figure 15 shows a real-time reporting activation step 430. Once the e-mails have been sent to recipients and the content has been accessed, a real time reporting process begins. The process is begun by initializing a reporting engine which is preferably resident on the content server 13. The reporting engine takes information obtained from the tracking steps described above and reports them based on requests (typically by the customer or the content provider). At step 432, the reporting engine supplies web forms which may be accessed over the Internet (or an Intranet) by customers or managers. Once a request is made using the web forms (step 433), the system validates the requestor and request using a security measure (e.g., password, etc.) at step 434. Then, the system updates the reporting information based on the request at step 435. Finally, an entry is made in a security log identifying the requestor, date/time of access, etc. at step 436.
Figure 16 shows a session manager activation step 440. The session manager is a separate program module (engine) within the reporting server 14 which monitors the overall system for user activity and connection. A "session" comprises each time a user computer accesses the content from the content server 13. The session ends when the users closes the e-mail and/or browser program, or after a specified time (controlled by the session timer, explained below). The session manager is started at step 441, when the session manager engine receives a notification from the e-mail server 12 that job has started. The engine then waits for content requests at step 442, and processes the requests at step 443. Before serving the content, the engine checks the job counter to ensure that a maximum number of stream requests have not been exceeded (step 444). If the maximum number of stream requests have not been exceeded, the content is served to the user at step 445, and all log files stored on the content server 13 (e.g., bytes in, bytes out, etc.; see step 412) are updated (step 446). A session timer is also checked to determine how long each session lasts (step 447). The session timer is restarted each time a new session begins. If there is no activity after a specified time, the session manager may end the session automatically. Finally, all "forward" requests and all "repeat" requests are logged to files on the content server (steps 448, 449). As a final step in the process, the transactional databases on the database server 15 are updated with any new information (e.g., "forward" requests, etc.) at step 450.
Although the process 100 described above references a content server 13 which performs both content serving and tracking functions, it is within the scope of the present invention to have separate servers for performing the content serving and tracking functions, respectively. Additionally, it should be noted that the different servers described above (e.g., e-mail server 12, content server 13, reporting server 14, and database server) may be operated by different entities, and it is not required that the servers all be operated by one entity.
Although the invention has been described in terms of exemplary embodiments, it is not limited thereto. Rather, the appended claims should be construed broadly, to include other variants and embodiments of the invention which may be made by those skilled in the art without departing from the scope and range of equivalents of the invention.

Claims

What is claimed is:
1. A computer-implemented method for disseminating information, comprising the steps of:
sending an electronic mail message to at least one recipient, said electronic mail being linked to a graphical presentation file;
sensing the capabilities of the at least one recipient's computer; and,
supplying only the elements of the graphical presentation file which may be viewed on the at least one recipient's computer.
2. The computer-implemented method of claim 1, comprising the further step of:
supplying only the elements of the electronic mail message which may be viewed on the at least one recipient's computer.
3. The computer-implemented method of claim 1, wherein the step of sensing the capabilities of the at least one recipient's computer comprises sensing the bandwidth capabilities of the at least one recipient's computer.
4. The computer-implemented method of claim 1, wherein the step of sensing the capabilities of the at least one recipient's computer comprises sensing the type of e- mail program stored on the at least one recipient's computer.
5. The computer-implemented method of claim 1, wherein the step of sensing the capabilities of the at least one recipient's computer comprises sensing the type of browser program stored on the at least one recipient's computer.
6. The computer-implemented method of claim 1, comprising the further step of:
assigning an identification number to the electronic mail message.
7. The computer-implemented method of claim 6, comprising the further step of:
storing the identification number for the electronic mail message in a database, so that the progress of the electronic mail message can be tracked.
8. The computer-implemented method of claim 1, wherein the graphical presentation file is a rich media file.
9. The computer-implemented method of claim 1, wherein the step of supplying only the elements of the graphical presentation file which may be viewed on the at least one recipient's computer comprises:
preparing a plurality of graphical presentation programs, each program corresponding to an element of the graphical presentation file.
10. The computer-implemented method of claim 9, wherein the step of supplying only the elements of the graphical presentation file which may be viewed on the at least one recipient's computer further comprises: packaging the plurality of graphical presentation programs.
11. The computer-implemented method of claim 9, wherein the step of supplying only the elements of the graphical presentation file which may be viewed on the at least one recipient's computer further comprises:
utilizing the plurality of graphical presentation programs to selectively provide different elements of the graphical presentation file to the at least one recipient.
12. The computer-implemented method of claim 1, comprising the further step of:
tracking the progress of the electronic mail message.
13. The computer-implemented method of claim 12, comprising the further step of:
providing information about the progress of the electronic mail message to at least one computer.
14. The computer-implemented method of claim 1, comprising the further step of:
tracking the progress of the graphical presentation file.
15. The computer-implemented method of claim 14, comprising the further step of:
providing information about the progress of the graphical presentation file to at least one computer.
16. The computer-implemented method of claim 1, comprising the further step of:
sensing the interests of the at least one recipient; and,
altering the content of the electronic mail message based on the sensed interests of the at least one recipient.
17. The computer-implemented method of claim 1, comprising the further step of:
sensing the interests of the at least one recipient; and,
altering the content of the graphical presentation file based on the sensed interests of the at least one recipient.
18. A computer system comprising:
at least one server computer; and,
at least one user computer coupled to the at least one server through a network,
wherein the at least one server computer includes at least one program stored therein, said program performing the following steps:
sending an electronic mail message to at least one recipient, said electronic mail being linked to a graphical presentation file;
sensing the capabilities of the at least one recipient's computer; and,
supplying only the elements of the graphical presentation file which may be viewed on the at least one recipient's computer.
19. The computer system of claim 18, wherein said program performs the further step of:
supplying only the elements of the electronic mail message which may be viewed on the at least one recipient's computer.
20. The computer system of claim 18, wherein the step of sensing the capabilities of the at least one recipient's computer comprises sensing the bandwidth capabilities of the at least one recipient's computer.
21. The computer system of claim 18, wherein the step of sensing the capabilities of the at least one recipient's computer comprises sensing the type of e-mail program stored on the at least one recipient's computer.
22. The computer system of claim 18, wherein the step of sensing the capabilities of the at least one recipient's computer comprises sensing the type of browser program stored on the at least one recipient's computer.
23. The computer system of claim 18, wherein said program performs the further step of:
assigning an identification number to the electronic mail message.
24. The computer system of claim 23, wherein said program performs the further step of: storing the identification number for the electronic mail message in a database, so that the progress of the electronic mail message can be tracked.
25. A computer readable medium having embodied thereon a computer program for processing by a machine, the computer program comprising:
a first code segment for sending an electronic mail message to at least one recipient, said electronic mail being linked to a graphical presentation file;
a second code segment for sensing the capabilities of the at least one recipient's computer; and,
a third code segment for supplying only the elements of the graphical presentation file which may be viewed on the at least one recipient's computer.
26. A computer data signal embodied in a carrier wave comprising:
a first code segment for sending an electronic mail message to at least one recipient, said electronic mail being linked to a graphical presentation file;
a second code segment for sensing the capabilities of the at least one recipient's computer; and,
a third code segment for supplying only the elements of the graphical presentation file which may be viewed on the at least one recipient's computer.
27. A computer-implemented method for disseminating information, comprising the steps of: sending an electronic mail message to at least one recipient, said electronic mail being linked to a graphical presentation file;
sensing the interests of the at least one recipient; and,
altering the content of the electronic mail message based on the sensed interests of the at least one recipient.
28. The computer-implemented method of claim 27, comprising the further step of:
altering the content of the graphical presentation file based on the sensed interests of the at least one recipient.
29. The computer-implemented method of claim 27, wherein the step of sensing the interests of the at least one recipient comprises:
providing a query to the at least one recipient; and,
utilizing a response to the query to sense the interests of the at least one recipient.
30. The computer-implemented method of claim 27, wherein the step of sensing the interests of the at least one recipient comprises:
determining if the at least one recipient has accessed the electronic mail message to sense the interests of the at least one recipient.
31. The computer-implemented method of claim 27, wherein the step of sensing the interests of the at least one recipient comprises: determining if the at least one recipient has accessed the graphical presentation file to sense the interests of the at least one recipient.
32. A computer readable medium having embodied thereon a computer program for processing by a machine, the computer program comprising:
a first code segment for sending an electronic mail message to at least one recipient, said electronic mail being linked to a graphical presentation file;
a second code segment for sensing the interests of at least one recipient; and,
a third code segment for altering the content of the electronic mail message based on the sensed interests of the at least one recipient.
33. The computer readable medium of claim 32, the computer program further comprising:
a fourth code segment for altering the content of the graphical presentation file based on the sensed interests of the at least one recipient.
34. A computer data signal embodied in a carrier wave comprising:
a first code segment for sending an electronic mail message to at least one recipient, said electronic mail being linked to a graphical presentation file;
a second code segment for sensing the interests of at least one recipient; and,
a third code segment for altering the content of the electronic mail message based on the sensed interests of the at least one recipient.
35. The computer readable medium of claim 34, the computer program further comprising:
a fourth code segment for altering the content of the graphical presentation file based on the sensed interests of the at least one recipient.
PCT/US2001/011247 2000-04-14 2001-04-06 Method and apparatus for dissemination of rich media WO2001080031A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP01928374A EP1295211A4 (en) 2000-04-14 2001-04-06 Method and apparatus for dissemination of rich media
AU2001255238A AU2001255238A1 (en) 2000-04-14 2001-04-06 Method and apparatus for dissemination of rich media

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US19736600P 2000-04-14 2000-04-14
US60/197,366 2000-04-14

Publications (1)

Publication Number Publication Date
WO2001080031A1 true WO2001080031A1 (en) 2001-10-25

Family

ID=22729099

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/011247 WO2001080031A1 (en) 2000-04-14 2001-04-06 Method and apparatus for dissemination of rich media

Country Status (3)

Country Link
EP (1) EP1295211A4 (en)
AU (1) AU2001255238A1 (en)
WO (1) WO2001080031A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009077621A1 (en) * 2007-12-19 2009-06-25 Cvon Innovations Ltd System and method for processing messages
US8966001B2 (en) 2008-09-02 2015-02-24 Qualcomm Incorporated Deployment and distribution model for improved content delivery system
US9178632B2 (en) 2008-09-02 2015-11-03 Qualcomm Incorporated Methods and apparatus for an enhanced media content rating system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805811A (en) * 1994-04-13 1998-09-08 Wang Laboratories, Inc. Dynamic electronic mail facility for applications executing in an integrated operating environment
US6167441A (en) * 1997-11-21 2000-12-26 International Business Machines Corporation Customization of web pages based on requester type
US6189027B1 (en) * 1997-09-24 2001-02-13 Sharp Kabushiki Kaisha E-mail sending/receiving system, e-mail sending /receiving method and recording medium having recorded the method
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
US6240460B1 (en) * 1996-02-02 2001-05-29 Fuji Xerox, Ltd. Method and system for data transmission accordance with the form of the data transmission based on control information exchanged between applications of a data transmitter and a data receiver before data transmission is started

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6076109A (en) * 1996-04-10 2000-06-13 Lextron, Systems, Inc. Simplified-file hyper text protocol
JPH09331352A (en) * 1996-06-12 1997-12-22 Matsushita Electric Ind Co Ltd Electronic mail system
TW396308B (en) * 1997-04-01 2000-07-01 Tumbleweed Software Corp Document delivery system
US6092114A (en) * 1998-04-17 2000-07-18 Siemens Information And Communication Networks, Inc. Method and system for determining the location for performing file-format conversions of electronics message attachments
AU5465099A (en) * 1998-08-04 2000-02-28 Rulespace, Inc. Method and system for deriving computer users' personal interests

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805811A (en) * 1994-04-13 1998-09-08 Wang Laboratories, Inc. Dynamic electronic mail facility for applications executing in an integrated operating environment
US6240460B1 (en) * 1996-02-02 2001-05-29 Fuji Xerox, Ltd. Method and system for data transmission accordance with the form of the data transmission based on control information exchanged between applications of a data transmitter and a data receiver before data transmission is started
US6189027B1 (en) * 1997-09-24 2001-02-13 Sharp Kabushiki Kaisha E-mail sending/receiving system, e-mail sending /receiving method and recording medium having recorded the method
US6167441A (en) * 1997-11-21 2000-12-26 International Business Machines Corporation Customization of web pages based on requester type
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

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1295211A4 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009077621A1 (en) * 2007-12-19 2009-06-25 Cvon Innovations Ltd System and method for processing messages
US8966001B2 (en) 2008-09-02 2015-02-24 Qualcomm Incorporated Deployment and distribution model for improved content delivery system
US9178632B2 (en) 2008-09-02 2015-11-03 Qualcomm Incorporated Methods and apparatus for an enhanced media content rating system

Also Published As

Publication number Publication date
EP1295211A4 (en) 2005-10-19
AU2001255238A1 (en) 2001-10-30
EP1295211A1 (en) 2003-03-26

Similar Documents

Publication Publication Date Title
US6789108B1 (en) Method and apparatus for dissemination of rich media
US6212554B1 (en) Advertising banners for destination web sites
US10296521B2 (en) Method and system for providing content to users based on frequency of interaction
US7475404B2 (en) System and method for implementing click-through for browser executed software including ad proxy and proxy cookie caching
US8171077B2 (en) Adaptive media messaging, such as for rich media messages incorporating digital content
US7028072B1 (en) Method and apparatus for dynamically constructing customized advertisements
CA2307051C (en) Method and apparatus to determine user identity and limit access to a communications network
US6701315B1 (en) Systems, methods, and computer program products for delivering information in a preferred medium
US6594691B1 (en) Method and system for adding function to a web page
US7219139B2 (en) System and method for using continuous messaging units in a network architecture
US20030061305A1 (en) System and method for enhancing streaming media delivery and reporting
US6859910B2 (en) Methods and systems for transactional tunneling
US20050267798A1 (en) Auxiliary content delivery system
US20040098449A1 (en) System and method for disseminating information over a communication network according to predefined consumer profiles
US8468049B2 (en) Systems and methods for providing direct communication from personalized targeted advertisements
US20020178232A1 (en) Method of background downloading of information from a computer network
JP2002236789A (en) Scheduling system and scheduling method
WO2001095586A2 (en) System and method for disseminating information over a communication network according to predefined consumer profiles
WO2002065359A1 (en) Electronic information management system
US7028268B1 (en) Multiple destination banners
EP1295211A1 (en) Method and apparatus for dissemination of rich media
US20030018752A1 (en) System and method for embedding a message in a uniform resource locator
EP1230611A2 (en) Dynamically constructing customized advertisements
WO2001023976A2 (en) Self-propagating network content distribution
EP1128286A2 (en) Active content delivery system

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO 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: A1

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 TR 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)
WWE Wipo information: entry into national phase

Ref document number: 2001928374

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2001928374

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: JP