Abstract:
Disclosed is a method, system, and program for providing a connection to a merchant server implementing a merchant electronic commerce (e-commerce) web site at a customer computer. A request is received from the customer computer, through a third party internet service provider (ISP), for a web page from the merchant server made from a link within a web page from a third party server. An installation program is transmitted to the customer computer in response to the request from the customer computer. The installation program executes on the customer computer to install an access program on the customer computer that when executed by the customer computer opens a direct connection from the customer computer to the merchant server without going through the third party ISP.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a method, system, and program for providing a connection from a customer computer to a merchant server implementing a merchant electronic commerce (e-commerce) web site. 
     2. Description of the Related Art 
     Many retail merchants utilize an electronic commerce (“e-commerce”) web site accessible through the Internet or World Wide Web through which customers can gather information and purchase products. One concern with customers using an e-commerce web site is that the customer&#39;s Internet service provider (ISP) may be gathering information on customer “surfing” activities at the merchant e-commerce web site. The ISP could then target Internet banner ads from competitors to customers that accessed the merchant e-commerce web site or obtain information on customer spending habits that could be used to develop a computing business. For instance, certain ISPS, such as Netzero, AltaVista Company, and Yahoo! Inc., monitor the activities of Internet users accessing their site. Netzero and AltaVista offer free Internet access in exchange for the opportunity to display banner Internet ads targeted to the Internet users based on their “surfing” habits, including their activities at e-commerce web sites. Moreover, the ISP can sell anonymous information on web pages the customer visited at the merchant e-commerce web site that could be useful to competitors of the merchant. 
     For these reasons, there is a need in the art to provide a technique that allows merchants to offer on-line e-commerce and prevent the customers&#39; ISP from using information on the customers&#39; “surfing” activity at the merchant e-commerce site in a manner that adversely affects the merchants&#39; commercial interests. 
     SUMMARY OF THE PREFERRED EMBODIMENTS 
     To overcome the limitations in the prior art described above, preferred embodiments disclose a method, system, and program for providing a connection to a merchant server implementing a merchant electronic commerce (e-commerce) web site at a customer computer. A request is received from the customer computer, through a third party internet service provider (ISP), for a web page from the merchant server made from a link within a web page from a third party server. An installation program is transmitted to the customer computer in response to the request from the customer computer. The installation program executes on the customer computer to install an access program on the customer computer that when executed by the customer computer opens a direct connection from the customer computer to the merchant server without going through the third party ISP. 
     In further embodiments, the access program when executed on the client computer opens a connection to a merchant ISP provided by the merchant through which the client computer accesses the merchant server. 
     Preferred embodiments provide a technique for setting-up an alternative connection on a customer computer when the customer computer attempts to access the merchant e-commerce web site from an external or third party server. This alternative connection allows the customer computer to connect to the merchant server directly or through a merchant operated ISP and completely bypass the third party ISP the customer normally uses. In this way, the third party ISP cannot monitor and gather information on the customer “surfing” at the merchant e-commerce web site, nor display Internet banner ads to the customer that could distract the consumer from the presentation at the merchant e-commerce web site. Preferred embodiments thus prevent third parties from tracking merchant customer Internet activities at the merchant e-commerce server and using such information against the merchant&#39;s commercial interests. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     Referring now to the drawings in which like reference numbers represent corresponding parts throughout: 
     FIG. 1 illustrates a network computing environment in which preferred embodiments are implemented; 
     FIGS. 2 and 3 illustrate software components at the merchant server and computer in accordance with preferred embodiments of the present invention; 
     FIG. 4 illustrates logic implemented in the merchant server to provide the customer computer programs to install a direct connection to the merchant server in accordance with preferred embodiments of the present invention; 
     FIG. 5 illustrates logic implemented in the setup routine to install the direct connection to the merchant server in accordance with preferred embodiments of the present invention; and 
     FIG. 6 illustrates logic implemented in an access routine to open the direct connection to the merchant server in accordance with preferred embodiments of the present invention; and 
     FIG. 7 illustrates logic to terminate the direct connection to the merchant server in accordance with preferred embodiments of the present invention. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     In the following description, reference is made to the accompanying drawings which form a part hereof, and which illustrate several embodiments of the present invention. It is understood that other embodiments may be utilized and structural and operational changes may be made without departing from the scope of the present invention. 
     FIG. 1 illustrates a network computing environment in which preferred embodiments are implemented. The network computing environment includes at least one customer computer  2  including a browser program  4 , which includes the functionality of browser programs known in the art, such as the Microsoft Explorer, Netscape Navigator, etc., to retrieve files from a merchant server  6  or other servers  8  over the Internet  10 . The customer computer  2  further includes at least one communication port  12 , such as a telephone modem, cable modem, digital subscriber lines (DSL), T1 line, etc., that is capable of connecting to a customer ISP  14  and a merchant ISP  16 . A customer is any person interested in obtaining information or purchasing products from the merchant server  6 . 
     The customer computer  2  may comprise any computer system known in the art capable of executing a browser program, such as a desktop, laptop, mainframe, hand held computer, palm device, telephony device, cellular phone with display and user interface, etc. The merchant server  6  and servers  8  may comprise any computer system known in the art capable of maintaining files and making such files accessible to remote computers. In preferred embodiments, the merchant server  6  implements an e-commerce web site where customers can obtain information on the merchant&#39;s products and purchase products on-line using a secure connection in a manner known in the art. The browser  4  and servers  6  and  8  communicate using a document transfer protocol such as the Hypertext Transfer Protocol (HTTP), or any other document transfer protocol known in the art, such FTP, Gopher, WAIS, etc. In preferred embodiments, the client computer  2  can access the servers  6  and  8  over the Internet, i.e., World Wide Web, or any other network system known in the art, e.g., LAN, Ethernet, WAN, System Area Network (SAN), Token Ring, etc. 
     The customer computer  2  includes an input device (now shown) through which the user may enter input data to control the operation of the browser program  6 , such as a keyboard, mouse, pen-stylus, touch sensitive pad, touch sensitive screen, voice decoder for decoding voice commands, etc., through which a user may enter commands to control the operation of the browser program  4 . 
     If the customer computer  2  includes only one communication port  12 , then the customer computer  2  must disconnect from the customer ISP  14  in order to connect to the merchant ISP  16 . However, if the customer computer  2  maintains multiple communication ports, which it may use to independently connect to an external device, than the customer computer  2  may remain connected to both the customer  14  and merchant  16  ISPs simultaneously. In preferred embodiments, the customer computer  2  uses the customer ISP  14  to access the Internet  10  for general Internet “surfing”, and uses the merchant ISP  16  to connect to the merchant server  6 . The merchant server  6  or merchant ISP  16  may prevent the customer computer  2  from accessing network addresses, e.g., Universal Resource Locators (URLs), external to the merchant server  6 . In other words, in preferred embodiments, the merchant ISP  16  allows a direct connection to the merchant server  6 . In alternative embodiments, the merchant ISP  16  may allow the customer computer  2  to access servers  8  external and unrelated to the merchant server  6 . 
     The customer ISP  14  may comprise a fee based ISP service or a free Internet service, such as Netzero and AltaVista, that provides free access to the Internet in exchange for the opportunity to gather customer “surfing” habits and display target banner ads based on the gathered information. In preferred embodiments, the merchant ISP  16  is available at no cost to customers to encourage customers to use the merchant ISP  16  to connect to the merchant server  6  when browsing and purchasing products from the merchant server  6  e-commerce web site. In embodiments where the ISP  16  is a phone dial-up connection, the customer may use a toll free number to connect to the merchant ISP  16  to further encourage customers to use the merchant ISP  16  for direct connection to the merchant e-commerce web site. In alternative embodiments, customers may have to become merchant members or pay a membership or user fee to access the merchant ISP  16 . In still further embodiments, the customer computer  2  may access the merchant e-commerce web site via both the customer  14  and merchant  16  ISPs. 
     FIG. 2 illustrates further details of the software components installed in the merchant server  6  in which preferred embodiments are implemented. The merchant server  6  maintains a direct access applet  20 , which includes a setup routine  22  and an access routine  24 . In preferred embodiments, the direct access applet  20 , which may be written as a Java** applet or any in other computer programming language, is capable of being executed by the browser  4  on the customer computer  2 . Alternatively, the direct access applet  20  may comprise a separate, standalone computer program that executes outside of the browser  4 . 
     **Windows is a registered trademarks of Microsoft Corporation; Netscape is a registered trademark and Netscape Communicator is a trademark of Netscape Communications Corporation; and Java is a trademark of Sun Microsystems Corporation.  
     The customer computer  2  may download the direct access applet  20  from the merchant server  6  over the Internet  10  while the customer computer  2  is connected to the Internet  10  through the customer ISP  14 . The merchant server  6  further includes web pages  26  which browsers may download over the Internet  10  or through the merchant ISP  16 . The web pages  26  implement the merchant e-commerce web site, and may be comprised of any multimedia content known in the art, such as hypertext markup language (HTML) pages, extensible markup language (XML) pages, video, image, text file, sound file, or HTML or XML pages including embedded multimedia files. 
     FIG. 3 illustrates software components implemented in the customer computer  2  in accordance with the preferred embodiments. The customer computer  2  downloads the direct access applet  20  using the browser  4 . The setup routine  22  when executed would setup a merchant connection  28  program on the customer computer  2  that the customer computer  2  executes to access the merchant ISP  16 , such as the Dial-Up network connection script program the Microsoft Corporation Windows** operating system platform creates to provide a connection to an ISP or network service. The setup routine  22  would generate merchant access settings  30  that the merchant connection  28  accesses when establishing a connection to the merchant ISP  16 . The access settings  30  may be stored in the operating system registry file or in a file in non-volatile storage at the customer computer  2 . The downloaded direct access applet  20  may include both the setup routine  22  and access routine  24 , or only the access routine  24  if the merchant server  6  detects that the customer computer  2  already has installed the merchant connection  28 , which may be detected by placing a cookie on the customer computer  2 . 
     **Windows is a registered trademarks of Microsoft Corporation; Netscape is a registered trademark and Netscape Communicator is a trademark of Netscape Communications Corporation; and Java is a trademark of Sun Microsystems Corporation.  
     FIG. 4 illustrates logic implemented in one or more computer programs in the merchant server  6  to return the direct access applet  20  to customer computers  2 . Control begins at block  100  with the merchant server  6  receiving a customer computer  2  request for the merchant web home page on the merchant e-commerce site from a link in a non-merchant web page at servers  8 . For instance, the merchant may display a link to the home web page as an icon advertisement on another web site. When the customer selects the icon advertisement for the merchant they are directed, through an HTTP GET request, to the home page at the merchant server  6 . The merchant server  6  may determine that the request for the merchant web home page came from a server  8  external to the merchant server  6  by examining information indicating the origin of the request or in the HTTP request. Upon receiving a request for the merchant home page, which is one of the web pages  26 , from an external server  8 , the merchant server  6  determines (at block  102 ) whether a merchant connection  28  is installed on the customer computer  2 . This may be determined by checking for a cookie left on the customer computer  2  or checking elsewhere on the customer computer  2 . If the merchant connection  28  is installed, then the merchant server  6  transmits to the client computer  2  (at block  104 ) a direct access applet  20  including only the access routine  24 . Otherwise, if a merchant connection  28  is not installed, then the direct access applet  20  returned to the customer computer  2  includes the setup routine  22  and access routine  24 . 
     FIGS. 5 and 6 illustrate the program logic implemented in the direct access applet  20  program components  22  and  24  when executed by the customer computer  2 . As discussed, the direct access applet  20  may be executed from within the browser program  4  at the customer computer  2  or as a separate standalone program on the customer computer  2 . Control begins at block  130  with the direct access applet  20  executing at the client computer  2 . If the applet  20  includes the setup routine  22 , then the setup routine is called (at block  132 ) at block  150 . Otherwise, if the applet  20  only include the access routine  24  or after the setup routine  22  completes (from block  134 ), then control proceeds to block  200  in FIG.  6 . 
     When the setup routine  22  is called (at block  150  in FIG.  5 ), then the user at the customer computer  2  is prompted (at block  152 ) to enter information on the communication port  12  at the client computer  2 , or the setup routine  22  may automatically detect the communication port  12 . The setup routine  22  then stores (at block  154 ) information on the user specified connection and the phone number or network address to connect to the merchant ISP  16  in the merchant access settings  30 . The setup routine  22  then generates a merchant connection  28  program, such as a script program, that the customer computer  2  executes to directly connect to the merchant ISP  16  using the merchant access settings  30 . Control then returns to block  132  from where the setup routine  22  was called. 
     FIG. 6 illustrates the program logic implemented in the access routine  24  that is executed by the customer computer  2  when the access routine  24  is called at block  134  in FIG.  5 . Control begins at block  200  with a call to the access routine  22 . If (at block  202 ) the connection specified in the merchant access settings  30  is already open and connected to another device, such as the customer ISP  14 , then the access routine  24  saves information on the current connection and third part web page from which the merchant home web page was accessed and disconnects. The access routine  24  then terminates the current use of the connection specified in the merchant access settings  30 . Once the connection specified in the merchant access settings  30  for use with the merchant ISP  16  is available for use (from block  206  or the no branch of block  208 ), then the access routine  24  calls (at block  208 ) the merchant connection program  28  to open a connection to the merchant ISP  16 . The access routine  24  further calls (at block  210 ) the browser  4  to open an instance of a browser window. The merchant Web home page is retrieved from the merchant server  6  and then displayed in the opened browser window. Once the home page is retrieved, the user of the customer computer  2  may then “surf” the web pages  26  on the merchant server  6  directly through the merchant ISP  16 . In this way, no third party can monitor and direct advertisements toward the customer based on their activity at the merchant web site accessed through the merchant ISP  16 . 
     FIG. 7 illustrates logic implemented in the access routine  24  when the customer wants to log-off or leave the merchant web site. Control begins at block  250  with the access routine  24  determining that the customer wants to log-off or leave the merchant web site. The access routine  24  terminates (at block  252 ) the merchant connection  28  to the merchant ISP  16 . The access routine  24  then uses (at block  254 ) the saved information on the previous connection and web page from where the merchant server  6  and direct access applet  20  were accessed to restore the customer to the connection and previous web page. Those skilled in the art will appreciate that there are many ways to terminate the merchant ISP  16  access. The access routine  24  may have opened a separate browser window, leaving the browser window displaying the web page from which the merchant server  6  was accessed. In such case, once the access routine  24  closes the connection to the merchant ISP  16 , the access routine  24  could reestablish the connection to the customer ISP  14  which may then be used by the browser window that is displaying the last accessed web page from which the merchant home web page was accessed. 
     Following are some alternative implementations of the above described embodiments. 
     The preferred embodiments may be implemented as a method, apparatus or program using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof. The programs defining the functions of the preferred embodiment can be delivered to a computer via a variety of information bearing media, which include, but are not limited to, computer-readable devices, carriers, or media, such as a magnetic storage media, “floppy disk,” CD-ROM, a file server providing access to the programs via a network transmission line, wireless transmission media, signals propagating through space, radio waves, infrared signals, etc. Of course, those skilled in the art will recognize that many modifications may be made to this configuration without departing from the scope of the present invention. Such information bearing media, when carrying computer-readable instructions that direct the functions of the present invention, represent alternative embodiments of the present invention. 
     In the above described embodiments, the merchant connection  28  is used by the access routine  24  when downloaded through a direct access applet  20 . However, in further embodiments, the merchant connection  28  may be represented by a displayed graphical icon on the customer computer  2  desktop. The customer may then select the displayed icon to execute the merchant connection  28  routine to directly access the merchant web site through the merchant ISP  16 . In this way, the customer may directly access the merchant ISP  16  and web site from the customer computer  2  desktop. 
     In preferred embodiments, the merchant connection  28  provides a connection to a merchant ISP  16 , which in turn provides a connection to a merchant server  6 . In further embodiments, the merchant connection  28  may connect the customer computer  2  directly to the merchant server  6  without going through a merchant ISP  16 . 
     Preferred embodiments were described with respect to the HTTP protocol for transmitting documents between computers within a network. However, those skilled in the art will appreciate that the preferred embodiments may apply to any communication protocol for allowing a client to request and access files in a network environment. 
     In preferred embodiments, the web pages  26  being accessed are identified by a URL address and may be located on different servers connected over a common network such as the Internet. In alternative embodiments, any file addressing scheme may be used, including a file pathname indicating the location of a file in local storage. In such case, the preferred embodiments may be used to search for files located in local storage that are not dispersed throughout a network. 
     Preferred embodiments were described with respect to a browser program for displaying files downloaded from over a network, such as the Internet. However, in alternative embodiments, the browser program may be any viewer program, not just Internet web browsers, that are capable of accessing and displaying locally files retrieved from a server over a network. 
     The foregoing description of the preferred embodiments of the invention has been presented for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. It is intended that the scope of the invention be limited not by this detailed description, but rather by the claims appended hereto. The above specification, examples and data provide a complete description of the manufacture and use of the composition of the invention. Since many embodiments of the invention can be made without departing from the spirit and scope of the invention, the invention resides in the claims hereinafter appended.