HK1083374A - Auxiliary content delivery system - Google Patents
Auxiliary content delivery system Download PDFInfo
- Publication number
- HK1083374A HK1083374A HK06104421.5A HK06104421A HK1083374A HK 1083374 A HK1083374 A HK 1083374A HK 06104421 A HK06104421 A HK 06104421A HK 1083374 A HK1083374 A HK 1083374A
- Authority
- HK
- Hong Kong
- Prior art keywords
- content
- broadcast
- network
- auxiliary content
- client terminal
- Prior art date
Links
Description
This application claims the benefit of U.S. provisional patent application No.60/394,044, filed on 7/22/2002.
Technical Field
The present invention relates to a computer-based content delivery system. More particularly, the present invention relates to a client-server model for delivering auxiliary content to network users based on their respective information interests.
Background
The world wide web has evolved into a mechanism that provides computer users with improved access to networked information resources. Today, the world wide web provides consumer and business advantages. Motivated by the development of browser software, end consumers spend several hours a week accessing and downloading information and entertainment content available on the world wide web. With the exponential growth of such terminal consumption activities, services have gone to the world wide web to market their products and services. However, the traditional solution to such marketing is through the publication of web pages that each describe and/or provide one or more vendor products or services for sale, and more recently, businesses have turned to more aggressive approaches to product and service marketing.
The most common approach is banner (banner) advertising embedded in web pages with high traffic. Typically, a banner advertisement is displayed in a portion of a web page and the consumer is enticed to select the banner advertisement, thereby redirecting the end user to the web page describing the seller's product or service. The service may redirect the end user to the number of instances of the vendor's web page or pay the host of the reference web page based on the traffic volume of the reference web page. Unfortunately, given the limited bandwidth available to many computer users, banner advertisements are typically very limited in size and complexity so as not to unduly increase the time required to generate a reference web page. In addition, many consumers find banner advertisements objectionable, as advertisements typically have little or no relevance to the consumer's interests. As a result, attempts have been made to provide an improved mechanism for delivering auxiliary content to end users over a wide area network, such as the world wide web.
For example, Murphy (us 5,305,195) describes an interactive system for providing advertising information to remote terminals, including a plurality of local terminals, a host computer and a local server in communication with the local terminals, and a remote business computer in communication with the local server. The remote commercial computer periodically transmits advertisements in the form of compressed digital video signals to a local server which in turn redirects the video signals to associated local terminals for storage on their respective hard disks.
Each local terminal transmits a request for information to the host computer and displays advertisements to the user of the local terminal during intermittent periods prior to the host computer responding to the request. Since the local terminal reproduces advertisements from compressed video signals stored on the terminal's local hard disk, a rich visual experience is provided to the terminal user. However, since each local terminal is equipped with the same advertisement video, the advertisement is not targeted to the interests of the terminal user.
Judson (US 5,737,619) describes a method of delivering additional content to a client machine over the world Wide Web while each client waits for a requested hypertext document to be downloaded from a target web page. Preferably, the additional content comprises an information object embedded in an HTML annotation tag of the target web page, such that the information object is not visible to the client machine when the target web page is rendered. The target web page includes hypertext links to documents located at a remote server. When the target web page is displayed at the client machine, the information object is stored in the memory of the client machine.
Subsequently, when a hypertext link is selected, the client machine begins downloading the document from the remote server and, at the same time, retrieves an information object from memory that is rendered on the display device of the client machine. With this method, additional content is displayed to the user while the client machine is waiting for the requested document to be downloaded from the remote server. Also, when the information object is embedded in the target web page, the information object has no interest in the client machine.
Rakavy (US 5,913,040) describes a system for delivering advertisements to user computers over the Internet, including an advertisement server and a plurality of local computers in communication with the advertisement server. The advertisement server has an advertisement database for identifying a large number of available advertisements. Each local computer including a local user preference and advertisement database for identifying locally available resources for rendering advertisements; as well as configuration and user preference information. The configuration information identifies platform capabilities of the local computer. Typically, the preference information identifies the category of preferred advertisements and the time period during which the local computer will receive advertisements from the advertisement server.
When the local computer is connected to the advertising server, the local computer uploads configuration and user preference information to the advertising server. The advertisement server compares the uploaded information with category information of available advertisements to identify the next advertisement for download onto the local computer. The ad server then provides a resource list to the local computer identifying the components (e.g., executable code, bitmaps, sound clips) needed to render the identified ad.
Upon receiving the resource list, the local computer queries the local user preferences and advertisement database to identify those components that are lacking in the local computer, and then uses a "polite agent" to request the advertisement server to download onto the local computer when the usage of the communication link to the local computer is below a predetermined threshold. The local computer locally stores the received components and renders the advertisement to the user after the local computer has been idle for a predetermined period of time. With this approach, advertisements are downloaded only during instances of lower usage of communication bandwidth. However, when the topic of the advertisement is selected according to the category of interest specified by the user, the effectiveness of the solution is limited due to the accuracy of the local user preferences and the preference information contained in the advertisement database. Furthermore, this solution suffers from limited scalability, since each service of interest in the solution must have an associated ad server.
Landsman (WO 99/60504) describes a system for downloading advertising content to client computers over the internet comprising at least one web server, an HTTP server ("distribution server"), a third party advertising server for hosting (host) an advertising management system, and a plurality of local computers in communication with the web server and the distribution server. Each client computer is equipped with an internet browser, which preferably supports dynamic writing of Java applet (applet) tags, and includes a Java virtual machine. The advertisement management system includes media and play files required to reproduce advertisements.
Each web server includes a web page with embedded HTML "ad tags". A portion of the ad tag references a JavaScript file stored in the distribution server. When a JavaScript file is downloaded by a client browser executed through a Java virtual machine, a Java applet tag is dynamically written into a reference web page as a substitute for an advertisement tag. In general, these Java applet markup forms a transition sensor Java applet (TransitionSensor applet) that, when executed by a client browser, loads and instantiates an AdController Java applet into the client browser.
Another part of the ad tag includes the URL of the ad management system from which the AdController Java applet will download the ad. The transition sensor applet passes the ULR to the AdController applet, which in turn requests that advertisements be passed from the advertisement management system.
The advertisement management system selects an advertisement for delivery and responds with an AdDescriptor file containing a list of filenames and addresses of all media and play files required to render the associated advertisement. The advertisement may be randomly selected. Alternatively, the advertisements may be selected based on user preferences or user-specified information previously selected from the user and uploaded to the advertising management system.
Upon receiving the AdDescriptor file, the AdController Java applet advertisement management system downloads the specified media and play files from the advertisement management system to the extent that these files are not already resident on the client computer. The request for delivery of the advertisement (and delivery of the advertisement) is routed through a distribution server that acts as a proxy server.
The transition sensor Java applet also monitors the click stream generated by the user. When the conversion sensor applet detects a user initiated page conversion (and thus initiates a gap interval), the AdController applet renders the advertisement on the client browser based on the downloaded media and play file. With this configuration, ad content is separated from web page content, as a reference web page need only include a reference to a particular ad management system, and does not have ads embedded in the web page itself. Further, advertisements rendered by the client computer may be selected based on user preferences or user-specific information. However, this solution suffers from limited scalability, since such information must be uploaded onto the management system before the AdController Java applet is initialized.
Accordingly, there is a need for an improved mechanism for delivering auxiliary content to an end user over a network that takes into account the interests and/or preferences of the recipient.
Disclosure of Invention
According to a first aspect of the present invention, there is provided an auxiliary content selection system comprising a content database and a content selection device in communication with the content database. The content database includes: records, each defining a secondary content item; and a broadcast space in which the associated auxiliary content item is delivered. The broadcast space is separated into time slots. A content selection device in communication with the content database is configured to select one of the items based on an association between the broadcast space and a time of request for the auxiliary content from the client terminal.
According to a second aspect of the present invention, a method of delivering auxiliary content is presented, involving the steps of: (1) receiving a request from a client terminal for auxiliary content over a network, wherein each item of auxiliary content has an associated broadcast space comprising a respective time slot; and (2) selecting one of the items based on an association between the broadcast space and a time at which the auxiliary content is requested from the client terminal.
According to a third aspect of the present invention, there is provided a computer readable medium having computer instructions carried thereon, which when executed on a computer device, cause the computer device to: (1) receiving a request from a client terminal for auxiliary content over a network, each item of auxiliary content having an associated broadcast space comprising a respective time slot; and (2) selecting one of the items based on an association between the broadcast space and a time at which the auxiliary content is requested from the client terminal.
According to a fourth aspect of the present invention, there is provided an auxiliary content delivery server comprising: a receiving device, a content database, a content selection device in communication with the receiving device and the content database, and a delivery device in communication with the content selection device. The receiving means is configured to receive a request for auxiliary content from a client terminal over a communications network. The content database comprises records each defining a secondary content item and a broadcast space for delivering the associated secondary content item. The broadcast space is separated into time slots. The content selection means is arranged for selecting the auxiliary content in dependence on an association between a broadcast space and a time of the request. The delivery means is configured to deliver the selected content to the client terminal over the network.
According to a fifth aspect of the present invention, a method for delivering auxiliary content is presented, involving the steps of: (1) receiving a request from a client terminal for auxiliary content over a network, wherein each item of auxiliary content has an associated broadcast space comprising a respective time slot; and (2) selecting one of the items based on an association between the broadcast space and a time at which the auxiliary content is requested from the client terminal.
In a preferred implementation of the invention the communication network is the internet and the client terminal comprises a computer configured with a web browser for accessing a web server over the internet. The auxiliary content selection system is implemented in the form of computer software installed on a web server accessible by a client terminal over the internet. Preferably, the web server, hereinafter referred to as ad distribution server, includes an auxiliary content selection system and a content database. The present invention also includes a plurality of web servers having at least one web page ("reference page") that includes a reference to an ad distribution server.
Preferably, the auxiliary content stored in the content database includes "rich media" advertising content, such as recurring television commercials stored in the form of media files. The purpose of the advertising content is different target audiences, depending on the URL of the reference web page, the moment the reference web page is accessed by the client terminal, and client-specific parameters such as installed web browser software, browser language, country, and any installed multimedia insertion software.
The content database further comprises an advertisement broadcast schedule with information defining a broadcast space for each advertisement content item. The broadcast space identifies the target audience for the advertising content item, such as the URL of a reference web page, the time frame during which the advertising content item should be provided to the client terminal, and any required relevant client-specific parameters.
Preferably, an advertiser who wants to broadcast its advertisement content when a client terminal accesses a reference web page is able to search an advertisement broadcast schedule and purchase available slots for its advertisement content. In addition, it is preferable that the cost of an advertiser for reproducing the advertisement varies according to the desired time slot, the country and language of the reference web page and the client terminal.
Each reference web page has embedded therein HTML tags (hereinafter referred to as ad control tags) including references to script files stored on the ad distribution server. The ad control mark may also include other commands for referencing media files stored on the ad distribution server and other computer servers. When these commands are interpreted and executed by the client browser, the reference file is downloaded to the client terminal, and its content is assembled into a reproduced page by the browser.
The advertisement control markup then instantiates advertisement viewing objects that when assembled together as a set of HTML objects and markup form an object for rendering advertisement content to an end user. The advertisement viewing objects are not "pop-up," but instead are instantiated within the reference web page as an integral part of the web page itself. With JavaScript integrated within the Flash object, HTML objects and markup including advertisement viewing objects may be provided.
After the advertisement viewing object is instantiated, the advertisement viewing object establishes a connection with the advertisement distribution server, and the browser provides the advertisement distribution server with the URL of the reference web page, the time at which the client terminal accesses the reference web page, and the client-specific parameters. With a part or all of this information, the advertisement distribution server inquires of the next advertisement content in the advertisement broadcast plan for reproduction on the reference web page. In response, the ad distribution server returns appropriate ad content information, such as the URL address of the ad content media file to be rendered, and a "hyperlink" to the advertiser's website in the event that the user on the ad viewing object initiates a "click-through" event.
Just as a television viewer or radio listener may tune to a particular site, at one time of day that may have a different interest than a television viewer or radio listener tuning to the same site at another time of day, a user of a client terminal accessing a reference web page at one time of day may have a different interest than a user of a client terminal accessing the same reference web page at another time of day. Since the advertising content returned by the advertising distribution server is selected according to the URL of one or more reference web pages, the moment at which the client terminal accesses the reference web page, as well as the client-specific parameters provided to the client terminal, the advertising content is associated with or targeted to the current interests or preferences of the user of the client terminal. As a result, the method allows advertisers to customize the subject matter of the advertising content for different interests of their target audience. As a result, advertisers will be more willing to pay for "prime" ad slots (and the administrator of the ad distribution server will be able to charge).
The advertisement viewing object is hidden from the user of the client terminal until the media file is completely downloaded to the end user's browser cache. Upon expiration of the predetermined time out interval, the advertisement viewing object is rendered on the end user's computer screen in a position visible to the end user. The advertisement viewing object then "plays" the downloaded media file (advertisement content) to the user of the client terminal.
During and/or after the playing of the media file, the user of the client terminal has the option of "clicking" on any navigation link (or button) so that he and/or she can visit the advertiser's website, get more information on the product and/or service being advertised, participate in an online "ad rate" survey or send feedback or comments, etc. If, on the other hand, the user chooses not to do anything, the advertisement viewing object is automatically hidden from viewing after a predetermined "no event" timeout interval has expired without user intervention, and then proceeds to "build" the next scheduled advertisement. Preferably, the lag time between successive advertisements allows sufficient time to download the next media file. Otherwise, the download of the media file will terminate, and the next successive media file may begin to be downloaded.
By using the present invention, advertisers can measure the effectiveness and efficiency of these advertising messages based on the total number of times an advertisement is played (either to a unique viewer or to the frequency of play of the same end user), the duration of the playback (i.e., the length of commercial playback before the user initiates a particular event), and the measurable response rate (i.e., the user initiates a "click-through" rate).
Drawings
The invention will now be described, by way of example, with reference to the accompanying drawings, in which:
FIG. 1 is a schematic diagram of an auxiliary content delivery system according to the present invention showing a client terminal, a reference web server, an advertisement server and an auxiliary content delivery server;
FIG. 2 is a schematic diagram of the auxiliary content delivery server shown in FIG. 1;
FIG. 3 is a flow chart providing an overview of the operation of the auxiliary delivery system;
FIG. 4 is a schematic representation of an advertisement viewing object such as provided by an auxiliary content delivery system; and
fig. 5 is a flowchart showing the detailed operation of the auxiliary content delivery system.
Detailed Description
Turning to fig. 1, there is shown an auxiliary content delivery system, generally designated 100, comprising a plurality of client terminals 102; a plurality of reference web servers 104; a plurality of advertisement servers 106; an auxiliary content delivery server 200; and a communication network 108 interconnecting the client terminal 102, the reference web server 104, the advertising web server 106 and the auxiliary content delivery server 200. Preferably, the communication network 108 comprises a wide area network, such as the Internet. However, the communication network 108 may include other network forms, such as a local area network and a wireless network.
Each client terminal 102 comprises a personal communication device such as a personal computer, personal data assistant, or web-enabled wireless telephone. The client terminal 102 includes a memory; a data input device (e.g., a keyboard, tablet, and/or mouse); a data display (e.g., a CRT or LCD); a network interface (e.g., a wired or wireless modem or network interface card) for interfacing the client terminal 102 with the communication network 108; and a central processing unit coupled to the memory, the data input device, the data display, and the network interface. The client terminal 102 is configured with computer software stored in a memory that, when processed by a central processing unit, implements an operating system and an internet browser in the client system 102 through which a user of the client terminal 102 can access web pages hosted by the reference web server 104.
Preferably, the browser establishes a transmission control protocol/internet protocol (TCP/IP) connection with one of the web servers 104 to deliver a request for web page content. The web page is identified by a Uniform Resource Locator (URL). The specified web page may include text, graphics, and other information specified in HTML code. The browser defines a viewing area for the web page and is manipulable by a user at the client terminal 102. Preferably, the Internet browser comprises an HTTP compliant Web browser, such as Microsoft Internet Explorer or Netscape Navigator/Communicator.
Further, the internet browser of the client terminal 102 preferably identifies and interprets JavaScript and/or Jscript code. The latest browsers from Netscape and microsoft support JavaScript, although Internet Explorer only supports a subset of microsoft calls Jscript. JavaScript is a lightweight (lightweight) scripting language that enables web authors to enhance their websites with dynamic content, interacting with HTML source code. JavaScript can also react to events and can be set to execute when a situation occurs when a web page has finished loading or when a user clicks on a particular HTML element. JavaScript can also read and write HTML elements, dynamically change the content of the HTML element, and confirm the validity of the data before submitting it to the server.
For example, assume the following HTML markup elements are inserted into a web page:
<SCRIPT Language=″JavaScript″>
function getDate(){
today=new Date()
document.write(″Today is″+today)
}
window.onload=getDate
</SCRIPT>
when the web page is completely loaded, the internet browser will call the method "getDate ()". The "getDate ()" method determines the current date and instructs the internet browser to insert the current date into the browser document window. As a result, the subsequent HTML tag elements will be dynamically written into the web page, interpreted and rendered by the browser: "Today is Wed Apr 316: 19:02 EST 2002", assuming that "Wed Apr 316: 19:02 EST 2002" is the value returned by the "new Date ()" method.
JavaScript code has the advantage that it does not have to be embedded into the HTML page itself, as it can link to a large number of HTML pages. If an appropriate HTML tag element is added to an HTML page (e.g., < script src ═ http:// service. com/script _ name. js > < script >), the HTML page will use an external JavaScript source file (identified by the "src" attribute) so that the code contained in the external source file is dynamically added to the HTML page and will be executed.
Each reference web server 104 is implemented as a conventional computer server and includes memory; a data input device; a data display; a network interface for interfacing the web server 104 with the communications network 108; and a central processing unit coupled to the memory, the data input device, the data display, and the network interface. The web server 104 is provided with computer software stored in memory and, when processed by a central processing unit, implements an operating system and one or more web pages in the web server 104.
Typically, these web pages are represented using hypertext markup language (HTML), although other languages may be used. At least one web page ("reference web page") has embedded within it an HTML < script > tag (hereinafter referred to as an ad control tag or "ACT"). The ACT represents a JavaScript file, is stored on the auxiliary content delivery server 200, and is downloaded and executed together with a reference web page. The ACT also includes methods, events, functions and other HTML commands that reference other files (either stored locally on the secondary content delivery server 200 or on another remote server located elsewhere on the world wide web). When these commands are interpreted and executed by the client browser, the referenced files are downloaded onto the client terminal 102 and their content is combined into the rendered web page by the client browser. The ACT and the process of accessing the advertising content by its client terminal 102 will be described in more detail below.
Preferably, the computer software installed on the reference web page 104 also includes a dynamic server page (ASP) and/or a Common Gateway Interface (CGI). ASP is a Microsoft version of the CGI server-side scripting language. Both the ASP and CGI programs run on Web servers, typically customizing HTML web pages for end users. However, an ASP document is an HTML page that includes one or more scripts that are processed on the Web server before the page is sent to the user. As will be explained, the script can use input received from the client terminal 102, allowing the user to specify an item in which the application is caused to operate with reference to the web server 104. The reference web server 104 then immediately builds or customizes the response HTML page before sending it to the client terminal 102. Since the server-side script simply builds a regular HTML page, the web page can be delivered to almost any browser.
Each advertisement server 106 is implemented as a conventional computer server and includes memory; a data input device; a data display; a network interface for interfacing the web server 106 with the communications network 108; and a central processing unit coupled to the memory, the data input device, the data display, and the network interface. The web server 106 is equipped with computer software, stored in memory, and when processed by a central processing unit, implements an operating system and one or more web pages in the web server 106. Typically, each of the ad servers 106 is associated with a respective advertiser, and the web pages include additional information or media content related to goods or services that are marketed by the advertisers.
The auxiliary delivery server 200 is implemented as a conventional computer server. As shown in fig. 2, the auxiliary content delivery server 200 includes a data input device 202; a data display 204; a network interface 206 for interfacing the auxiliary content delivery server 200 with the communications network 108; and an auxiliary content selection system 208 coupled to the data input device 202, the data display 204, and the network interface 206. The auxiliary content selection system 208 itself includes non-volatile memory (ROM)210 (e.g., magnetic, optical, or electronic memory), volatile memory (RAM)212, and a Central Processing Unit (CPU)214 connected to the ROM 210 and RAM 212.
The ROM 210 includes a content database 216 and a series of computer processing instructions for the CPU 214. The content database 216 is typically a SQL database and includes a large number of database records, each defining an advertising content item.
The content database 216 also includes an advertisement broadcast schedule defining a broadcast delivery space for each item of advertisement content. Advertisers who respond to scheduling advertisement messages for delivery to users of client terminals 102 are able to purchase the desired broadcast space by providing information about their advertising content by the system administrator of the item assisted content delivery server 200. Upon receipt of the requisite message, the system administrator stores the received information in the appropriate portion of the advertising broadcast schedule.
Alternatively, instead of maintaining the ad broadcast schedule in the secondary content delivery server 200, in one variation, the web server 104 maintains a cached version of the ad broadcast schedule, with the main version of the ad broadcast schedule maintained in the secondary content delivery server 200. Whenever the system administrator updates the primary ad broadcast schedule, the secondary content delivery server 200 preferably notifies each web server 104 that an updated copy of the ad broadcast schedule is available for download from the secondary content delivery server 200. Alternatively, the web server 200 may periodically query the auxiliary content delivery server 200 to determine whether the cached copy of the advertising broadcast schedule is up to date. As is apparent, by maintaining a cached copy of the ad broadcast schedule at web server 104, the load on secondary content delivery server 200 may be reduced, thereby increasing data throughput.
Preferably, the advertising content items are stored in the content database 216 in the form of media files (e.g., QuickTime movie files, Flash files, etc.). Typically, each item of advertising content includes an advertisement targeted to a different targeted audience, and each associated record in the content database 216 identifies the path of the associated media file and the URL of the web page on the ad server 106, which the user of the client terminal 102 has access to when the advertisement is rendered on the client terminal 102.
The computer processing instructions stored in the ROM 210 together comprise computer software for the auxiliary content delivery server 200. When loaded into RAM 212, the computer software defines an operating system and an auxiliary content selector 218. Preferably, the auxiliary content selector 218 is implemented as an ASP file. The auxiliary content selector 218 is configured to communicate with the content database 216 and select one of the items of advertising content for delivery to the client terminal 102.
In one implementation, the target audience for each item of advertising content is based on the time at which the client terminal 102 accesses one of the web servers 104. The broadcast space is separated into time slots and the advertising broadcast schedule defines the times during which the relevant advertising content items should be delivered to the client terminal 102. The auxiliary content selector 218 is configured to select an advertising content item based on an association between a broadcast space specified in an advertising broadcast schedule and a time at which the client terminal 102 accesses one of the web servers 104.
In another implementation, the target audience for each item of advertising content is based on the time at which the client terminal 102 accessed one of the reference web pages and the URL of the reference web page. The broadcast space is separated into time slots and network addresses. The advertisement broadcast schedule defines the times during which the relevant advertising content items should be delivered to the client terminal 102, and the URLs of web pages that must be accessed before the relevant advertising content items are delivered to the client terminal 102. The auxiliary content selector 218 is configured to select an advertising content item based on an association between a broadcast space specified in an advertising broadcast schedule and a time at which the client terminal 102 accessed the reference web page.
In another implementation, the target audience for each item of advertising content is based on the time at which the client terminal 102 accessed one of the reference web pages, the URL of the reference web page, the language of the advertisement, and the desired rights to the advertisement. The broadcast space is separated into time slots, network addresses, advertising languages and advertising rights. The advertisement broadcast schedule defines the times during which the relevant advertising content items should be delivered to the client terminal 102, the URLs of web pages that must be visited before delivering the relevant advertising content items to the client terminal 102, and the preferred language and country of residence for the client terminal 102. The auxiliary content selector 218 is configured to select an advertising content item based on an association between a broadcast space specified in the advertising broadcast schedule and a time at which the client terminal 102 accessed the reference web page, a preferred language of the client browser for the client terminal 102, and a country in which the client terminal 102 resides.
In another implementation, the targeted audience for each item of advertising content is based on the time of day that the client terminal 102 accessed one of the reference web pages, the URL of the reference web page, the language of the advertisement, the desired permissions for the advertisement, and client-specific parameters (e.g., installed web browser software, browser language, country, and any multimedia insertion software installed). The broadcast space is separated into a time slot, a network address, an advertisement language, an advertisement authority, and a client type. The advertisement broadcast schedule defines the times during which the relevant advertising content items should be delivered to the client terminal 102, the URLs of web pages that must be visited before delivering the relevant advertising content items to the client terminal 102, and the preferred language and country of residence and client type for the client terminal 102. The auxiliary content selector 218 is configured to select an advertising content item based on an association between a broadcast space specified in the advertising broadcast schedule and a time at which the client terminal 102 accessed the reference web page, a preferred language of a client browser for the client terminal 102, a country in which the client terminal 102 resides, and client-specific parameters.
While the foregoing description so far provides four different definitions for the target audience, it should be understood that the present invention is not so limited. Rather, the advertising broadcast schedule may include any set of parameters to achieve the desired target audience. As such, the advertising broadcast schedule may define a desired target audience based on any one or more of the foregoing parameters and/or any other desired parameters.
The operation of the auxiliary content delivery system 100 will now be described with reference to fig. 3, and subsequently will be described in more detail with reference to fig. 5. As shown in FIG. 3, the user of the client terminal 102 uses the Internet browser to access a reference web page hosted on the web server 104 at step 300. The reference web page has an ACT (e.g., < script src > < http:// www.mediaonenetwork.net/code/loadact. js > </script >) embedded therein, which references a JavaScript file stored in the auxiliary content delivery server 200.
In step 302, the internet browser executes ACT, thereby downloading and requesting JavaScript file "loadacthttp://www.mediaonenetwork.net/code). Js is hidden from view, and the user should then display the source code for the reference page using an internet browser. This prevents, to some extent, the user from easily confirming the contents of the JavaScript file.
Js is interpreted and executed using an internet browser, thereby dynamically creating and embedding an Advertisement Viewing Object (AVO) into a reference web page at step 304. The AVO creates built-in frames (inline frames), commonly referred to as "floating frames" or "mini browsers".
Js instructs the client terminal 102 to perform a client side test for the current date and time and client specific data (e.g., internet browser type, language and country code [ or IP address assigned to ISP used by the web client 102 ]) and whether the client terminal 102 is configured with a media player, QuickTime player or Flash plug-in) at step 306. Js, the JavaScript file "load. js" transfers the URL of the reference web server 104, the URL of the auxiliary content delivery server 200, and the client-specific parameters to the auxiliary content delivery server 200 at step 308. This step has the following effects: the request for advertising content is delivered from the client terminal 102 to the auxiliary content selector 218 (via the network interface 206 of the auxiliary content delivery server 200) along with any parameter values required to complete the content request.
The auxiliary content selector 218 receives the content request and then attempts to select one of the items of advertising content referenced in the content database 216 based on the association between the broadcast space defined in the advertising broadcast schedule and the parameter values received from the AVO. To do so, the auxiliary content selector 218 executes server-side script code that queries the advertisement broadcast schedule at step 310 to determine whether the advertisement broadcast schedule includes an entry associated with the reference document URL. If the advertising broadcast schedule does not include a corresponding entry, the process terminates at step 312.
However, if the advertisement broadcast schedule includes a corresponding entry, at step 314, the auxiliary content selector 218 edits the query string based on the received date and time value, the reference document URL, and the client-specific data. Using the compiled query string, the auxiliary content selector 218 retrieves a path from the content database 216 for the media file associated with the selected advertisement. The media files may be stored either on the secondary client delivery server 200 or on a "third party" web server (not shown). The auxiliary content selector 218 may also retrieve any relevant information from the content database 216, such as the URL of the ad server 106 associated with the selected advertisement. The URL may be linked to a user-initiated click event (during rendering of the advertisement) so that the user may transmit it to the relevant website of the ad server 106 by initiating a "mouse click" on a particular "hot link" or "button" interface.
Once the appropriate data and media file addresses for the advertisement have been identified, content delivery server 200 dynamically creates an HTML page 400 including the selected data and media file addresses at step 316. The HTML page 400 dynamically writes and embeds predetermined HRML object elements (required for downloading and rendering appropriate advertisements) therein when interpreted by the internet browser of the client terminal 102. When interpreted by an internet browser, the modified HTML page 400 causes the selected advertisement to be rendered in the document window of the AVO at step 318.
Fig. 4 shows the object elements included in the HTML page 400 created by the content delivery server 200 at step 316, which are associated with the document window (represented by reference numeral 402) of the AVO (represented by reference numeral 404). Reference numeral 406 denotes a series of HTML elements that are combined together to create a predetermined "advertisement viewing surface" (skin). The advertisement viewing surface 406 is a collection of constituent images, links, and text that together create a client-side graphical interface for displaying advertisements to a user of the client terminal 102. In addition, the advertisement viewing surface 406 displays a series of buttons ("links") that provide added functionality (e.g., a hyperlink link to an advertising website, a "close" button to terminate playback of a media file, etc.).
The advertisement viewing surface 406 also contains an "advertisement object window" 408, which is a predetermined window area in which media files are dynamically embedded and rendered to the user. Reference numeral 410 denotes a menu bar as an area where user options (i.e., menu items) are displayed.
HTML page 400 also contains a series of hidden HTML elements, one of which includes element 412, which is an < iframe > element (referred to herein as an "ad preload box"). Reference numerals 414 to 418 denote < input > tag elements for storing data and information required for assembling, downloading and displaying an advertisement to an end user in the advertisement object window 408, and in addition, storing user 'click events' triggered by the user in response to the advertisement.
For example, if the AVO 404 includes a "replay" or "save" button and the user clicks on the button to replay the advertisement or save the advertisement on the hard drive of the client terminal 102, the click event causes the AVO 404 to display or save the advertisement as appropriate and the click event is transmitted back to the client delivery server 200. The click events are then recorded into the content database 216, allowing the system administrator to generate a report for each advertiser identifying the number of times the advertisement was viewed, the number of users visiting the advertisement, the time slots during which the advertisement was visited, and the reference web site for the advertisement. Alternatively, this information can be accessed by advertisers via the internet through accounts created for each advertiser. In addition, the system administrator can review the information in the content database 216 identifying the number of hits for each reference web site at each time slot, thereby varying the cost charged to each advertiser according to the popularity and time slot of the web site.
In the discussion so far, JavaScript is the only mechanism disclosed to implement AVO 404. However, the present invention is not limited thereto. Rather, in one variation, the objects of the AVO 404 are contained in Flash objects, which may be implemented using Flash player technology for macro media. Flash player technology is an ideal platform on which to deliver advertising content, as it allows advertising to be employed consistently across a wide array of platforms. In addition, the platform can support motion graphics, video, two-way communication, and complex animation forms, providing an opportunity for creating a significantly more robust environment for media-rich advertisements. Furthermore, such edited client-side applications can be easily delivered as files via HTTP.
Additional details regarding rendering advertisements at the AVO 404 will now be described with reference to fig. 5. As shown, when the JavaScript file "load. js" is first executed by the internet browser (step 304), the JavaScript file calls "initAdViewer" in step 500, wherein the internet browser of the client terminal 102 is instructed to dynamically create and embed the AVO 404 into the reference web page. AVO 404 is an HTML < iframe > tag element used to create built-in boxes and can act as a "target" for other URL links. The SRC attribute of < iframe > provides the location of the box contents. The < iframe > is rendered as a "hidden" object and is therefore not visible to the user of the client terminal 102. The < iframe > can work in a variety of computing environments without requiring changes to the JavaScript file 901 itself. This is achieved by requesting and downloading an external HTML document (proxy file) from the content delivery server 200. Changing the parameter values in the proxy file runs changes to the display and/or behavior of the AVO 404 without using different versions of JavaScript files for each different environment.
At step 502, the JavaScript file invokes an "onload" event, causing execution of the JavaScript file to pause until the reference web page has completed downloading and rendering to the user of the client terminal 102. Once the reference web page has been rendered and displayed, the JavaScript file determines whether the AVO 404 is properly instantiated within the "document body" of the reference web page at step 504. If the AVO 404 fails to instantiate, the JavaScript file terminates at step 506. Otherwise, the JavaScript file invokes a "buildRequest" event at step 508.
The "buildRequest" event causes the AVO 404 to request the URL of the appropriate media file for the next advertisement from the content delivery server 200. To initiate the request, the JavaScript file dynamically assembles a URL including a merge of the URL of the content delivery server 200, the URL of the reference web server 104, the current date and event, and the client-specific data (step 306). The JavaScript file then writes the assembled URL (e.g., http:// www.ads.com/address. aspdatetime:wedapr 316: 19:02 EST2002& docURL:// www.some _ domain. com/somepage. htm) to the SRC attribute of the < iframe > markup element. This step has the effect of communicating a request for advertising content from the client terminal 102 to the auxiliary content selector 218. The AVO 404 is the target window for the server response resulting from the request.
The following shows the tag element of the sample < iframe > resulting from step 508:
<iframe id=’adViewer’
style=’position:absolute;
visibility:visible;
width:Opx;height∷Opx;’
frameborder=’0’
scrolling=’no’
allowtransparency=’true’
src=http://www.ads.com/adquery.aspdatetime Wed Apr 316:19:02 EST
2002&docURL=http://www.some_domain.com/some_page.htm>
</iframe>
the assembled URL (identified by the SRC attribute) is a request to the auxiliary content selector 218 on the content delivery server. The auxiliary content selector 218 uses the parameter values (passed to the auxiliary content selector 218 as part of the SRC attributes) to select the appropriate auxiliary content for the client terminal 102.
The JavaScript file then pauses at step 510 until the auxiliary content selector 218 responds with an HTML page 500 (created "on the fly" through steps 310 through 316) that includes the URL of the appropriate media file for the next advertisement and successfully downloads into the "document window" of the AVO 404. If the auxiliary content selector 218 fails to return the HTML page 500, the JavaScript file terminates at step 512.
On the other hand, if the auxiliary content selector 218 returns the HTML page 500, then at step 514, the JavaScript file invokes a "preLoadAd" event that initiates the ad preload box 412. The ad preload box 412 is a hidden HTML < iframe > element that requests the download of the media file specified by the SRC attribute. The "preLoadAd" event dynamically assembles an HTTP request for a media file related to the next advertisement, and then dynamically formats the SRC attribute of the advertisement preloading box 412 using the URL of the requested media file.
The JavaScript file then pauses at step 516 until the media file has been completely downloaded to the ad preload block 412, which in turn, stores the media file in a cache associated with the user's internet browser by the ad preload block 412. If ad preload block 412 fails to receive the requested media file, the JavaScript file terminates at step 518.
On the other hand, if the requested media file has been completely downloaded (and stored in the browser cache), then at step 520, the JavaScript file invokes the event "loadAd 2 viewscreen ()", which dynamically assembles the HTML "< object >" element and embeds the downloaded media file in the SRC value of the object. The downloaded media file is then immediately loaded into the < object > element, ready for playback to the user of the client terminal 102.
At step 522, the JavaScript file determines whether the media file is loaded and ready for playback. If so, then at step 524, the JavaScript file causes the AVO 404 to render (display) the commercial to the user. Once the AVO 404 becomes visible at the internet browser, the JavaScript file instructs the AVO 404 to begin the broadcast session by playing back the media file.
After the broadcast session is completed (either due to the expiration of a predetermined "invalid" timeout event or due to the user initiating a "click" event), the JavaScript file invokes a "buildrequest ()" event at step 508, thereby initiating the download and playback of the next advertisement. Since the "time" of the request is different (e.g., after 5 minutes), the query of the advertising broadcast schedule (at step 310) will result in the return and rendering of different media files.
The invention is defined by the appended claims and the foregoing description is only illustrative of the preferred embodiments of the invention. Particular modifications to the described embodiments may be envisaged by those skilled in the art, although not explicitly disclosed herein, without departing from the scope of the invention as defined by the appended claims.
Claims (17)
1. An auxiliary content selection system comprising:
a database of recorded content, each defining a secondary content item and a broadcast space for delivering the associated secondary content item, the broadcast space being separated into time slots; and
content selection means in communication with the content database for selecting one of the items based on an association between the broadcast space and a time of request for auxiliary content from the client terminal.
2. The auxiliary content selection system according to claim 1, wherein: the client terminal is configured to communicate with at least one network resource accessible on the network, the broadcast space is separated into time slots and network addresses, and the content selection means is configured to select the auxiliary content in dependence on an association between the time of broadcast space and the at least one network resource and the network addresses.
3. The auxiliary content selection system according to claim 1 or 2, wherein: the client terminal has a configuration including at least one of a preferred language and a client right, the broadcast space is further separated into an advertising language and an advertising right, and the content selection means is configured to select the auxiliary content according to an association between the broadcast space and the client configuration.
4. A computer-based method of delivering auxiliary content, comprising the steps of:
receiving a request from a client terminal for auxiliary content over a network, each item of auxiliary content having an associated broadcast space comprising a respective time slot; and
one of the items is selected based on an association between the broadcast space and a time at which the secondary content is requested from the client terminal.
5. The method of claim 4, wherein: the client terminal is configured to communicate with at least one network resource accessible on the network, the broadcast space is separated into time slots and network addresses, and the content selection step comprises selecting the auxiliary content in dependence on an association between the time of day and the network address of the broadcast space and the at least one network resource.
6. Auxiliary content selection system according to claim 4 or 5, characterized in that: the client terminal has a configuration including at least one of a preferred language and a client right, the broadcast space is further separated into an advertising language and an advertising right, and the selecting step includes selecting the auxiliary content according to an association between the broadcast space and the client configuration.
7. The method according to claim 4 or 5, further comprising the step of: an ad broadcast schedule defining a broadcast space is maintained and a copy of the ad broadcast schedule is transmitted over a network to a web server.
8. A computer-readable medium having computer instructions embodied thereon, which when executed on a computer device, cause the computer device to:
receiving a request from a client terminal for auxiliary content over a network, each item of auxiliary content having an associated broadcast space comprising a respective time slot; and
one of the items is selected based on an association between the broadcast space and a time at which the secondary content is requested from the client terminal.
9. The computer-readable medium of claim 8, wherein: the client terminal is configured to communicate with at least one network resource accessible on the network, the broadcast space is separated into time slots and network addresses, and the content selection step comprises selecting the auxiliary content in dependence on an association between the time of day and the network address of the broadcast space and the at least one network resource.
10. The computer-readable medium of claim 8 or 9, wherein: the client terminal has a configuration including at least one of a preferred language and a client right, the broadcast space is further separated into an advertising language and an advertising right, and the content selection step includes selecting the auxiliary content according to an association between the broadcast space and the client configuration.
11. The method according to claim 8 or 9, further comprising the step of: an ad broadcast schedule defining a broadcast space is maintained and a copy of the ad broadcast schedule is transmitted over a network to a web server.
12. An auxiliary content delivery server comprising:
receiving means for receiving a request for auxiliary content from a client terminal through a communication network;
a content database each defining a record of a secondary content item and a broadcast space delivering the associated secondary content item, the broadcast space being separated into time slots;
content selection means, in communication with the receiving means and the content database, for selecting the auxiliary content based on an association between the broadcast space and the time of the request; and
delivery means in communication with the content selection means for initiating delivery of the selected content to the client terminal over the network.
13. An auxiliary content delivery server according to claim 12, wherein the client terminal is configured to communicate with at least one network resource accessible on the network, the broadcast space is separated into time slots and network addresses, and the content selection means is configured to select the auxiliary content in dependence on an association between the time of day and the network address of the broadcast space and the at least one network resource.
14. An auxiliary content delivery server as claimed in claim 12 or 13, wherein: the client terminal has a configuration including at least one of a preferred language and a client right, the broadcast space is further separated into an advertising language and an advertising right, and the content selection means is configured to select the auxiliary content according to an association between the broadcast space and the client configuration.
15. An auxiliary content delivery server as claimed in claim 12 or 13, further configured to maintain statistics of content delivery.
16. An auxiliary content delivery server as claimed in claim 12 or 13, further configured to maintain an advertisement broadcast schedule defining the broadcast space, and to transmit a copy of the advertisement broadcast schedule to a web server over a network.
17. A computer-based method for delivering auxiliary content, comprising the steps of:
defining a plurality of broadcast spaces, each of said broadcast spaces comprising a respective time slot for delivery of auxiliary content over a communications network and being payable for said delivery during an associated time slot;
receiving a request from a client terminal for auxiliary content over a network, each item of auxiliary content having an associated broadcast space comprising a respective time slot; and
one of the items is selected based on an association between the broadcast space and a time at which the secondary content is requested from the client terminal.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US60/397,044 | 2002-07-22 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| HK1083374A true HK1083374A (en) | 2006-06-30 |
Family
ID=
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN1682212A (en) | Auxiliary content delivery system | |
| US7028072B1 (en) | Method and apparatus for dynamically constructing customized advertisements | |
| US8219642B2 (en) | System and method for adding targeted content in a web page | |
| CN1204725C (en) | Information transfer system and information transfer method | |
| US7152203B2 (en) | Independent update and assembly of web page elements | |
| US8402157B2 (en) | Internet-based system and method for distributing interstitial advertisements | |
| US8069414B2 (en) | Embedded video player | |
| US20030061305A1 (en) | System and method for enhancing streaming media delivery and reporting | |
| CN1251669A (en) | Method and apparatus for traking client interaction with network resource and creating client profiles and resource database | |
| CN1305615A (en) | Internet advertising system | |
| CN1559040A (en) | Content selection responsive to communication environment | |
| CN1575470A (en) | Anonymous network-access method and client | |
| CN1273655A (en) | Automatic Content Scheduler and Displayer | |
| US20090049122A1 (en) | System and method for providing a video media toolbar | |
| EP1230611A2 (en) | Dynamically constructing customized advertisements | |
| CN1439140A (en) | Internet advertise ment system and method in connection with voice humor services | |
| JP5144009B2 (en) | Content viewing system and content viewing method | |
| HK1083374A (en) | Auxiliary content delivery system | |
| WO2007130116A1 (en) | System and method for assembling data |