A METHOD OF ADDING CONTENT TO WEB-BASED INFORMATION FOR DISPLAY AT A WEB-BROWSER IN REAL TIME
FIELD OF THE INVENTION
The present invention relates to a method and apparatus for adding content to web-based information for display at a web-browser in real time. The invention is particularly related to, but in no way limited to adding advertising content to web-pages.
BACKGROUND TO THE INVENTION
As is well known, end users are able to operate web-browsers to access web- based information. For example, this can be any suitable type of web-based information provided over a company intranet, the public internet or other network. Web-servers are used to hold the web-based information and this is accessed by end users who operate a web-browser on their personal computer, mobile telephone, or other terminal. The end-user typically gains access to the internet or other network by using the services of an internet service provider (ISP) as known in the art. Some ISPs provide this service free of charge, whilst others require payment and different levels of service are available from different ISPs. For example, the quality of service and other factors varies between differ- ent ISPs.
There is an increasing need from the ISPs point of view to provide enhanced services to the end users, rather than simply providing basic access to the internet or other data network. For example, ISPs desire means to provide different levels of service to different types of end user and to create new services that will enable them to receive revenue. From the end user's point of view there is also a desire to obtain different types of service from an ISP in order that more choice is available and ISP services can be more specifically tailored to the needs of particular end users.
One particular aspect of services provided by ISPs relates to the web-based information or content provided to the end users from the data network. There is an increasing desire to enable this content to be managed, both from the ISPs
and the end user's point of view. For example, to enable different types of user to receive content tailored for their needs.
SUMMARY OF THE INVENTION
An object of the present invention is to provide an improved method and apparatus for adding content to web-based information for display at a web-browser in real time which overcomes or at least mitigates one or more of the problems mentioned above.
According to an aspect of the present invention there is provided a method of adding content to web-based information for display at a web-browser in real time. The method comprises the steps of:
- at a network node, intercepting requests for web-based information and forwarding those intercepted requests to a processor;
for at least one of the intercepted requests, dynamically creating a web-page at the processor comprising information about the intercepted request together with additional information; and
sending the dynamically created web-page to a web-browser from which the intercepted request was received.
For example, the network node is a Shasta 5000 BSN (trade mark) (Broadband Services Node) as currently commercially available from Nortel Networks (trade mark). However, it is not essential to use that equipment. Rather any suitable network node may be used which is capable of intercepting requests for web- based information. Those requests are preferably hyper-text transfer protocol (HTTP) requests although any other suitable type of request may be used. A detailed description of the HTTP may be found in "Hypertext Transfer Protocol — HTTP/ 1.0", RFC 1945, published by the Internet Engineering Task Force (IETF), May 1996.
The network node is preferably a traffic concentrator. That is, the network node is connected between a plurality of subscriber terminals at a network such as an enterprise network, access network, or other network and a data network
such as the Internet or Intranet.
At the subscriber terminals web-browsers are provided as known in the art to enable end users to access web-pages provided using web-servers in the data network. Any suitable type of subscriber terminal may be used such as mobile telephones, personal computers, laptop computers, personal digital assistants etc.
The intercepted requests are forwarded to a processor which dynamically creates a web-page. That web-page comprises the originally requested web-based information together with additional information, such as advertisements. The additional information is provided in any suitable manner. For example, it can be stored on a web-server that is in communication with the processor, or it may be stored at the processor itself.
The dynamically created web-page is then forwarded to the subscriber terminal. Thus the end user views the requested web-page together with the additional information. The additional information can be presented in any suitable manner, for example, in a pop-up window, in a frame such as a banner or in any other suitable way.
This provides the advantage that the end user receives the additional information automatically. No additional software is required at the subscriber terminal; that is no modifications are required to a standard web-browser at the sub- scriber terminal.
In this way an internet service provider (ISP) who operates the network node is able to automatically add content to web-pages requested by subscribers to its service. This enables the ISP to receive new revenue streams from advertisers or other web-content providers. The ISP may have different groups of customers, some of whom pay a premium rate in order to receive particular types of additional information, or indeed, in order not to receive advertisements. This enables the ISP to provide different types of service and to tailor those services to the needs of different customer groups.
The invention also encompasses an apparatus for implementing the method described above as well as a computer program for implementing the method and
controlling the apparatus.
The preferred features may be combined as appropriate, as would be apparent to a skilled person, and may be combined with any of the aspects of the invention.
Further benefits and advantages of the invention will become apparent from a consideration of the following detailed description given with reference to the accompanying drawings, which specify and show preferred embodiments of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
In order to show how the invention may be carried into effect, embodiments of the invention are now described below by way of example only and with refer- ence to the accompanying figures in which:
Figure 1 is a schematic diagram of a communications network incorporating apparatus for adding content to web-based information for display at a web- browser in real time;
Figure 2 is a flow diagram of a method according to an embodiment of the present invention.
Figure 3 is a schematic diagram of another embodiment of the invention.
DETAILED DESCRIPTION OF INVENTION
Embodiments of the present invention are described below by way of example only. These examples represent the best ways of putting the invention into prac- tice that are currently known to the Applicant although they are not the only ways in which this could be achieved.
Figure 1 shows a network 11 to which a plurality of subscriber terminals are connected, one of which is shown 10. Each subscriber terminal 10 has a web- browser as known in the art.
The subscribers are able to access the internet or other data network 15 via a
network node 12. The network node 12 has the ability to intercept requests for web-based information made by the subscriber terminals. For example, those are preferably HTTP requests. A processor 13 is associated with the network node 12. The processor receives intercepted requests, forwarded from the net- work node 12. In addition, the network node can forward other information together with the intercepted requests. For example, control values, details of the originally intended web site and an address, such as the Uniform Resource Locator (URL) for the originally intended web site.
The processor uses this information to dynamically create a web-page. This comprises an address, for instance a URL for the originally intended web site and an address, for instance a URL for an additional information store 14 which holds advertising content or other information.
The dynamically created web-page is forwarded to the subscriber's terminal which is then forced to reload that web-page. In doing so, the web-based information from the originally intended web site and the information from the store 14 is accessed and presented to the user. In this way the subscriber's web browser effectively "believes" that the processor 13 is the originally intended web-site. In order to ensure that this mechanism operates successfully any contradictory mechanisms, such as the HTTP connections so-called "Keep Alive" mechanism, are turned off at the processor. This is described in more detail below.
Figure 2 is a flow diagram which schematically illustrates the method steps of the invention.
Figure 3 shows a particular embodiment of the invention in which the network node 12 is a Shasta 5000 BSN as available from Nortel Networks and the proc- essor 13 is a PCP (Personal Content Portal) server.
More detail about the invention is now provided with reference to the particular example illustrated in Figure 3. It should be recognised that this detail is however applicable to other embodiments as' is apparent to a skilled reader.
The invention provides an ISP with the ability to present its subscribers with targeted advertising at any time during their Web-surfing session. The subscriber
doesn't necessarily need to be browsing the ISP's website or portal in order to receive the advertisement; by using the Shasta PCP feature, the subscriber's browser is forced to connect to an Advertising Server and download an Hyper- Text Mark-up Language (HTML) page or a picture whenever required. During this process, the subscriber still has access to his/her intended website.
The solution offers at least two alternatives for integrating the advertising content within the subscriber's session:
- By using a pop-up window
By using frames
Each method has it own advantages which are discussed in more detail below.
Solution architecture
As illustrated in Figure 3, in one embodiment of the invention the major components required for deploying the Shasta PCP Advertisement Insertion solution are the following:
Shasta 5000 BSN
PCP Server (SUN Solaris Server)
Advertising Server
Role of the network node, which can be a Shasta 5000 BSN in one example
The Shasta 5000 BSN sits at the network edge and serves as a traffic concentrator for subscribers connecting via the access network (Dial up, DSL; ... ). When a subscriber dials-in and connects to the network, it has a Captive Portal policy applied by default on the Shasta 5000 BSN. Immediately after connection, the policy is set to 'captive' mode, which means that the HTTP request interception mechanism is active.
As soon as the subscriber starts a web browser and requests a website on the
Internet or anywhere else, the HTTP requests generated by his browser are intercepted and replaced by a request to pre-defined URL on the PCP server.
Role of the processor or PCP server in one example
The PCP server is the execution environment for processing captured HTTP requests received from the Shasta 5000 BSN. It is comprised e.g. of:
Apache Web Server
Perl scripting engine
PCP scripts
(Note: It's also possible to use a combination of an Apache Web Server with a Web Application Server, Servlets and Java Server Pages - JSPs.)
When the Shasta 5000 BSN captures a request and replaces it by a request to the PCP server, it also copies information related to the original HTTP request to the new request. By using this information, the PCP server can send back to the browser, the required information for both displaying the intended web site and the advertising server page. This is implemented by dynamically building a new page containing the advertising information (as a frame or by opening a window) and the original page.
Role of the additional information store or advertising server in one example
The advertising server 14 is described here as a functional block although it can be integrated with the processor 13. Its purpose is to deliver information for add- ing to a web-page. That information can be in any suitable form for example, pictures or HTML documents that contain e.g. required adverts. It can also provide such features as the ability to define in what sequence the adverts are retrieved, how to manage advertising campaigns and so on.
From a Shasta PCP Advertising Insertion solution point of view, the advertising server's URL is used in the dynamically generated page to display the required
advertisement on the subscriber's PC.
Description of advertising insertion mechanism
The advertising insertion mechanism is triggered by the Shasta 5000 BSN Captive Portal feature. Two operational modes are possible: captive mode or allowed mode. When in captive mode, all HTTP requests are intercepted and replaced by requests to the PCP server. When in allowed mode, the Shasta 5000 BSN does not make any changes to the original requests and simply sends outgoing traffic to the Internet.
After the initial network connection, the default mode is captive. The sequence of events is as follows:
- Connection to the Network (Dial-in) - The subscriber connects to the network (e.g. via a phone line).
Start Web browser - The subscriber launches a web browser application and types in an URL on the internet (e.g: http://www.nortel.com)
HTTP interception - The Shasta BSN intercepts the HTTP request to www.nortel.com and replaces it by a request to the PCP server. Since the Web browser thinks that the PCP server really is the intended site, some re-configuration needs to be done in order to prevent the client browser to re-load the same page when later allowed to go to the original site. For this purpose, the HTTP "Keep Alive" mechanism must be turned off on the PCP web server so as to force the generation of a new TCP connection.
PCP processing - The PCP Scripts receive a request from the subscriber's browser with additional information attached by the Shasta BSN for its usage like: intended Website, intended URL and other PCP control values.
Page creation (Pop-up window version) - A new web page is created by the script containing JavaScript code for opening an additional small window on the subscriber's desktop.
The original window contains a redirection directive to the intended web site
fhttp: / /www. nort.el.com). The tip here is to use the HTTP_HOST value from the HTTP request header instead of using the IP address. In the case of multiple virtual web sites behind one IP address, the mechanism would fail.
- The additional window is linked to the Advertisement Server's URL (as configured on the PCP server)
Page creation (Frame version) - A new web page is created by the script that contains two frames 16, 17, as is shown in Figure 3.
Top frame 16 is linked to the Advertisement Server's URL (configured on the PCP server).
Bottom frame 17 contains a redirection directive to the intended web site (http://www.nortel.com)
PCP post-processing - The PCP script sends a message to the Shasta BSN in order to change the subscriber to 'allowed' mode. This disables the HTTP request interception mechanism.
Advertisement display - Subscriber's web browser processes the PCP generated web page and displays both the original site and the page retrieved from the Advertisement server (as shown in Figure 3). The subscriber can now freely browse the Internet.
Timer expiration - After a pre-defined time, the Shasta 5000 BSN Captive Portal policy timer expires and the subscriber is automatically placed in 'captive' mode. As soon as his/her browser will make an HTTP request, the whole process starts again.
The PCP scripts and Captive Portal policies are fully configurable and allow the modification of the following parameters:
Advertising capture interval (1 - 65535 minutes)
Advertising server URL
Type of insertion (Frame or Pop-up window)
Logging of activity (Captures, re-directions)
The invention exploits the advanced features of the Shasta BSN by allowing the ISP to better communicate with its subscriber base. By providing the ability to interact directly and transparently while the subscriber is surfing the World Wide Web, this solution offers unique capabilities to the ISP for enhancing customer loyalty.
Any range or device value given herein may be extended or altered without losing the effect sought, as will be apparent to the skilled person for an understanding of the teachings herein.