[go: up one dir, main page]

WO1999009486A1 - Network communications managing and messaging system - Google Patents

Network communications managing and messaging system Download PDF

Info

Publication number
WO1999009486A1
WO1999009486A1 PCT/US1998/017245 US9817245W WO9909486A1 WO 1999009486 A1 WO1999009486 A1 WO 1999009486A1 US 9817245 W US9817245 W US 9817245W WO 9909486 A1 WO9909486 A1 WO 9909486A1
Authority
WO
WIPO (PCT)
Prior art keywords
client
client station
client system
software
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/US1998/017245
Other languages
French (fr)
Inventor
Robert E. Martini
Geoffrey E. Minte
Dhag Raju
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CARTESIAN BROADCASTING NETWORK Inc
Original Assignee
CARTESIAN BROADCASTING NETWORK Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CARTESIAN BROADCASTING NETWORK Inc filed Critical CARTESIAN BROADCASTING NETWORK Inc
Priority to AU90265/98A priority Critical patent/AU9026598A/en
Publication of WO1999009486A1 publication Critical patent/WO1999009486A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/226Delivery according to priorities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Definitions

  • the present invention relates to a network managing and messaging system and method for transmitting messages over a communications system during relatively idle times during ongoing communications.
  • communications networks such as local area computer networks, wide area computer networks, telephone networks, the world wide web and other aspects of the Internet.
  • Client stations of various types can be linked to such networks, such as computers or personal computers, work stations, Internet terminals, smart telephones or conventional telephones.
  • a waiting period may occur while a connection to a web site has been requested but not yet accomplished.
  • Other waiting periods may occur between packet transmissions over such networks.
  • a client station computer connected to a web site may have waiting periods during transmission of information from the web site over the Internet communications network to the client station computer.
  • Another example of waiting periods occurs when a connection between a client station and a video server, network service provider or other remote server device, there are periods during which one of the connected devices needs to process information or a request — leading to no transmission activity.
  • Various browser software packages are known, such as the Netscape Navigator from Netscape Communications and the Internet Explorer from Microsoft Corporation.
  • SUBST ⁇ UTE SHEET (RULE 26) Such software packages may be loaded onto client station computers for use in accessing the Internet.
  • Other specialized computer communications network access software is also available.
  • various on-line service providers supply software for accessing their communications networks.
  • Such specialized computer communications network access software is available from the America Online, Prodigy and CompuServe on-line service providers. In some embodiments of such specialized software, access is provided both to the proprietary communications network of the online service provider as well as the Internet.
  • Some communications client devices provide status messages to client stations during waiting periods. Such messages also may be transmitted by remote communications devices. For example, a "processing”, “loading” , “waiting for connection” or “downloading” message can be transmitted.
  • waiting periods are a disadvantage of communications networks. Users of such networks my become dissatisfied with waiting periods. Likewise, waiting periods are an inefficiency leading to unused network resources, increased access times, increased costs of access and other economic and productivity inefficiencies. There is a need to productively occupy time of client stations and other communications network devices during waiting periods.
  • advertising may is transmitted in series or parallel fashion during transmission of a web page to a user.
  • Advertising also may be displayed in "frames" which enclose or partially enclose or are adjacent to the web page display.
  • Such advertising display techniques are unsatisfactory in that they are downloaded along with the web page, extending the download time for the web page, taking up screen space and perhaps frustrating the user.
  • client software works in conjunction with network communications software.
  • the client software may be installed on a client station processing system.
  • a portion of the client software preferably resides in memory, such as a TSR or memory resident program.
  • the memory resident portion monitors the client station to determine if a communications link is opened with the communications network. When such a link is established, the client software loads in the client station to become active in background operation.
  • the client software establishes a link with a separate messaging, or "Cartesian" brand server - creating a link that is separately maintained from the browser or network access software link to the network service provider.
  • a link is established, the client software requests and receives over the communication link transmission of a first message or set of messages.
  • These messages preferably are stored in memory within the client station, rather than immediately displayed, after they are received. This creates an inventory of messages for display at desired times.
  • the messages may be transmitted over the communications link during waiting or idle periods.
  • the client software monitors operations over the communications link, and if specified operations are conducted, such as a request for a URL link, various steps are taken to display messages and receive additional messages.
  • the client software in one embodiment opens a back channel within the client station and monitors the TCP/IP stack to determine when the system is not actively downloading.
  • data may be transmitted from the network server (also running specialized network server software for operation in conjunction with the client software).
  • the data may be transferred from the messaging or "Cartesian" brand server.
  • a stored message (such as a news item or advertisement) is displayed on the client station.
  • the message may be displayed in a specified portion of a monitor associated with the client station or it may be made to move about the monitor screen.
  • the message may include a sound file (such as for example an "WAV" file) which causes
  • additional messages may be downloaded to the client station over the communications network. These additional messages also may be stored in memory for later display. Preferably an inventory of messages is maintained in the client station memory so there is no transmission time perceived by a user.
  • a client station generally includes a computing device having a CPU, memory storage medium, and some form of output device or output devices, such as a video display, audio speaker, or printer.
  • the waiting period data is displayed on the output device.
  • the waiting period data is displayed as it is received, even if the entire waiting period data transmission is not completed.
  • the waiting period data is stored in memory at the client station. Once the transmission of the waiting period data is completed, it is displayed on the display device.
  • an object of the present invention is that waiting or idle times as perceived by users of client station devices is minimized. Instead of waiting idle time during waiting periods, the client station receives substantive transmissions.
  • Another object of the present invention is to provide an economical usage of network resources, in providing productive use of network resources.
  • Yet another object of the present invention is providing a means of transmitting advertising copy to client stations, without interrupting other data transmissions by taking advantage of hitherto unused, or inefficiently used, waiting periods.
  • a further object of the present invention is to provide client station software that operates in conjunction with browser or network access software.
  • Another object of the present invention is to provide client station software that maintains an inventory of messages.
  • a further object of the present invention is achieving increased efficiency in transmitting messages to client stations by using waiting periods for transmission, instead of other times which could otherwise be used for client communications.
  • An additional object of the present invention is to provide a pleasing and flexible display of advertising or other information in a client station.
  • FIG. IA is a block diagram illustrating an embodiment of a client station in accordance with the present invention.
  • FIG. IB is a block diagram of a non-volatile storage medium in accordance with the present invention as illustrated in FIG. 1;
  • FIG. 1C is a block diagram of an embodiment of the client station and communications network in accordance with the present invention.
  • FIG. 2 is a block diagram of an announcement server in accordance with the present invention.
  • FIGS. 3A-3F are a flow diagram of an embodiment of the operation of a network communications system in illustrating an aspect of the present invention
  • FIGS. 4A-4E are a flow diagram of another embodiment of the operation of a network communications system in illustrating an aspect of the present invention.
  • FIGS. 5A-5E are a flow diagram of another embodiment of the operation of a network communications system in illustrating an aspect of the present invention
  • FIGS. 6A-6E are a flow diagram of another embodiment of the operation of a network communications system illustrating an aspect of the present invention
  • FIG. 7 is a flow diagram of one embodiment of an initial operation of the network communications system illustrating an aspect of the present invention.
  • FIGS. 8A-8D are plan views of a browser client display window
  • FIG. 9 is a diagram illustrating a plurality of client stations and the communications network in accordance with the present invention.
  • FIG. 10 is a flow diagram of an installation sequence for client software in accordance with the present invention.
  • FIG. 11 is a flow diagram of steps for new user registration sequence for client software, in accordance with the present invention.
  • FIG. 12 is a flow diagram illustrating representative operations of client software in accordance with the present invention.
  • FIG. 13 is a flow diagram illustrating process steps in the operation of client software in a client station in accordance with the present invention.
  • FIG. 14 is a flow diagram illustrating operations of client software during an Internet session in accordance with the present invention. Detailed Description Of The Invention
  • client software is executed on a client station 10 (alternatively referred to as "DTE").
  • a client station 10 may be a data processing system. Typical data processing systems which may be used include mainframe computers, work stations, smart telephones, network terminals or personal computers such as desktop, notebook, laptop or palm computers. In the preferred embodiment, the data processing system used is a type of personal computer.
  • the client station 10 may employ the present invention when utilizing a variety of operating systems and programming languages.
  • a typical data processing system used for the client station 10 includes a central processing unit 21 ("CPU"), connected through a bus 30 to a variety of system components, including by way of example, volatile memory 41 (which also is called RAM or memory), no n- volatile memory 51, such as disk drives, CD-ROMs or magnetic tapes, and input device 61 , such as a keyboard, mouse, touch screen or touch pad.
  • volatile memory 41 which also is called RAM or memory
  • input device 61 such as a keyboard, mouse, touch screen or touch pad.
  • the system also includes a display device 71.
  • the display device 71 includes a video display, but may also include a printing device or audio output device.
  • a communications link 91 is provided for connecting the client station 10 with a communications network 95.
  • the client station 10 of the present invention includes a non- volatile memory 51 storing data.
  • the non- volatile memory stores the client software 53, network commumcations software 55 and any other software required for proper operation of the client station.
  • Such other software may optionally be stored in memory 51 in the locations illustrated as space 58 in FIG. IB.
  • the network communications software 55 may include specialized network access software and/or browser software, such as Internet Explorer, from Microsoft Corporation or Netscape, from Netscape Communications, Inc.
  • the client station can communicate with communications network 95.
  • communications network 95 Certain terminology may be used in the following description for convenience only and should not be taken to be limiting.
  • the word "idle" may be used in the following description for convenience only and should not be taken to be limiting.
  • -6- SUBSTTTUTE SHEET (RULE 26) or "waiting" means that a device connected to a computer or other network device by a transmission or communications medium is not presently sending or receiving any information over the transmission medium (e.g. no data packet is presently being transmitted over the communication medium to/from the device) and thus, the transmission or communications medium is idle.
  • the term "connected” or “linked” means that communication has been established between a device and a network service provider, thereby allowing the device access to other resources accessible by way of the network, but not necessarily that a line or path has been dedicated for the exclusive use of the device to communicate with the other devices accessible by way of the network.
  • the client station 10 is connected to the communications network 95 via communications link 20.
  • Such a link typically may include a telephonic link via a telephone network (not shown), an ISDN link, or a direct link, such as a Tl connection.
  • the communications network 95 generally includes various computers 120 which may communicate with each other over communications paths, as is known to those of ordinary skill in the art.
  • An example of such a communications is the Internet, which is a group of computer systems that communicate with each other by way of the communications paths.
  • the communications Network 95 may also be other forms of communications networks as discussed herein and by way of examples, a private local area network or wide area network.
  • the computers 120 may comprise any type of computer or network server, such as a mainframe computer, a midframe computer, a minicomputer, a network server, router, switch, a personal computer, a laptop computer, telephone, fax machine, or any other computing or communications device.
  • the computers 120 may act as a host or node to which other computers may connect, or as a router for forwarding data packets between networks or computers.
  • the communication paths may comprise any type of communication path capable of transmitting packets of information, such as voice, data, video, multimedia, realtime, store and forward, interactive, or hybrid types of information, in either analog or digital format in symmetrical or asymmetrical format, in packets, frames, cells, or in a
  • the communications paths may be provided by private or publicly owned local, local exchange, inter-exchange, long distance, international, telecommunications, cable television, broadcast, switched, dedicated or hybrid types of network providers utilizing wireless, facilities-based, satellite-based, or hybrid types of transmission schemes and/or mechanisms, including copper wire, coaxial cable, fiber-optic cables, microwave and radio towers or satellite dishes.
  • a client station 10 may be connected to one of the computers 120, by way of a service provider (NSP) 16 or, in the case of the Internet, by an Internet Service Provider (ISP).
  • the NSP 16 is may include a computer including one or more means for communicating 18 to computer network 110 including computers 120 and one or more communication paths 20 for allowing users to connect to the NSP 16.
  • the means for communicating 18 may comprise any variety of communications means, such as an analog or digital telephone line, a coaxial cable, wireless communications means, or hybrid communications means. Such means are known to those of ordinary skill in the art and further description of such means is not required for a complete understanding of the present invention.
  • the connection path 20 comprise any type of communications medium for connecting to the NSP 16 which allows data to be passed therebetween, in either analog or digital form.
  • the client station 10 may communicate with the NSP 16 using a data communications equipment (DCE), such as a modem 122, as is known to those of ordinary skill in the art.
  • DCE data communications equipment
  • the client station 10 can be connected to the NSP 16 using a dedicated communications line or a digital communications line, such as an ISDN, HFC, DSL, or other type of access line provided by a local communications provider.
  • the client station 10 may comprise a wide variety of devices for allowing a user to connect to the NSP 16.
  • the client station 10 comprises a personal computer.
  • the present invention is not limited to such standard network terminating devices and that the client station 10, also referred to herein with the term "station”, should be read to include but not be limited to devices such as televisions, video monitors, video telephones, telephones, computers, television set-top converters, video servers, front end processors, Internet appliances, fax machines, or other communications devices, and combinations or hybrids thereof connected via the computer Network 95.
  • the client station 10 may communicate with a computer 12 on the communications Network 95 by way of the NSP
  • the server software executes user requests to the computers 12 on the computer n network 95 made by the client station 10, while the browser client software comprises a user-interface, receiving input and displaying information at the client station 10.
  • the NSP 16 routes communications between the computers 12 on the computer network 95 and the client station 10, and performs any associated administrative functions, by using standard network server equipment and software.
  • the NSP 16 executes a network server software program 124 and the client station 10 executes a browser client software program 126, as described in more detail below.
  • the network server software 124 and the browser client software 126 allow announcements or messages, such as advertising messages, collectively "messages" to be transmitted from the NSP 16 to the client station 10 and stored and/or displayed on the client station 10.
  • announcements or messages such as advertising messages
  • client station 10 stores the announcements for delayed display.
  • Messages are transmitted to the client station 10 during waiting periods, such as when connection path 102 is idle.
  • a number of methods are described below for transmitting messages to the client station 10 during waiting periods.
  • the client station 10 executes the browser client software 126 and the messages are transmitted to the client station 10 whenever the connection path 20 is idle, with the client station 10 displaying the advertisements in a fixed window of the browser display area.
  • the client station 10 does not have the modified browser client software 126 and the NSP 16 includes a modified home page which allows the client station 10 to communicate with other devices/computers on the computer network 95 through the modified home page of the NSP 16.
  • the advertisements are displayed in a fixed window of the modified home page of the NSP 16, with the modified home page (including advertisements) being displayed on the client station 10.
  • a code module is downloaded from the client station 10
  • the advertisements are transmitted to the client station 10 and displayed in a transient display window.
  • the transient window is opened on the client station 10 allowing the advertisements to be played/displayed while the connection path 20 is idle.
  • the transient window is either closed or made a background window. If the transient window is made a background window, the transient window is movable to the foreground upon entry of a predetermined command at the network terminating device.
  • the modified network server software 124 includes means for monitoring traffic destined for the client station 10 or being generated by or transmitted from the client station 10.
  • the NSP 16 includes a separate processor or front end processor (FEP) 128 for monitoring the traffic directed to the client station 10 or generated by the client station 10.
  • the FEP 28 may comprise any type of processor or computer suitable for monitoring the ,traffic to/from the client station 10 and communicating with the modified network server software 124, such as an IBM compatible personal computer or a more specialized device.
  • the FEP 28 thus monitors data traffic to determine when such traffic is being received by the NSP 16 on behalf of the client station 10 or when traffic is being generated by the client station 10, determines when to initiate, interrupt, reestablish or terminate playing or transmitting messages to the client station 10, and generates a corresponding signal to trigger such action.
  • the present invention further comprises an advertising or announcement server 13 connected to or in communication with the NSP 16.
  • the announcement server 13 stores and retrieves advertising messages.
  • the advertising messages transmitted to the client station 10 may comprise text, graphics, audio, video, combinations thereof, and the like, as is known to those of ordinary skill in the art.
  • a user at the client station 10 establishes communication with the NSP 16 (i.e.
  • the NSP 16 initiates a task on the announcement server 13 which determines whether the user subscribes to available advertising services, for instance by checking the user or the user's identification against a list of known subscribers stored in a database 32 of the announcement server 13.
  • the NSP 16 could check if the user is a subscriber a-id the database 32 could be stored in a memory of the NSP 16.
  • the announcement, server 13 is connected to the subscriber's local NSP 16, and not to a remote host or computer 12. Each NSP 16 can have its own announcement server 13 coupled thereto for transmitting messages to individual NSP subscribers. However, the NSP 16 could be served by an announcement server 13 which is not collocated with the NSP 16.
  • the announcement server 13 comprises a processor and associated memory separate from the NSP 16, such as a personal computer or workstation.
  • the functions of the announcement server 13 could be performed by the NSP 16, for instance, by executing a software program, such as a terminate and stay resident program, on the NSP 16, which fetches advertisements and transmits the advertisements to the client station 10.
  • a software program such as a terminate and stay resident program
  • announcements are enabled by inserting a software subroutine into the network server software program 124 operating on the NSP 16. It is well known to those in the art the various ways the software can be inco ⁇ orated into the network server software 124 and, therefore, such ways are not discussed. Suffice it to say, the modified network server software 124 and the modified browser client software 126 cause data transmission procedures to be modified such that messages or announcements generated by the announcement server 13 and provided to the NSP 16 are transmitted to the client station 10 when the client station 10 is idle (i.e. not sending or receiving other data to/from the NSP 16 or another computer 120), so that the announcements are played on the client station 10, as discussed in more detail below.
  • selected announcements are retrieved and downloaded to a local storage device of the client station 10 from the announcement server 13 by way of the NSP 16 when a connection is established between the client station 10 and the NSP 16. Such downloaded announcements are then played/displayed on the client station 10 as specified by the modified browser client software 126.
  • the announcement server 13 selects the type of announcements which are transmitted to the client station 10.
  • the announcement server 13 can also determine the time when a particular announcement is to be played based upon a number of criteria or factors, such as but not limited to, the time of day, the day of the week, the month of the year, the Internet Protocol (IP) address of the client station 10 or the IP or universal resource locator (URL) of a computer 120, etc. If the announcement server 13 is set to determine which announcements are to be played based upon the IP address of the
  • the announcement server 13 reads the IP address as provided by the NSP 16 and determines the identity of the user by matching the IP address with a data record stored in the database 32 or other storage structure of the announcement server 30, such as by executing a table look up.
  • the announcement server 13 determines which announcements are designated for the particular IP address and transmits the prestored announcements in a predetermined manner, as described in more de,— ail below.
  • the announcement server 13 can access the time from a clock (not shown) located within the announcement server 30, which maintains the time of day, day of week, day of month, month of year and year.
  • a clock not shown located within the announcement server 30, which maintains the time of day, day of week, day of month, month of year and year.
  • the information from the clock is read by the announcement server 13 and compared to information located in a look-up table in the memory of the announcement server 13 to determine which messages are to be played.
  • the announcement server 13 retrieves the designated messages while the connection path 20 is idle until the client station 10 to NSP 16 connection is terminated. It should be appreciated that, if desired, live announcements may be provided under control of the announcement server 30.
  • the type of announcements transmitted by the announcement server 13 to the NSP 16 may comprise a type of announcement selected by the user at the client station 10.
  • the announcements transmitted to the client station 10 could be selected from different predetermined categories, such as finance related announcements, automobile related announcements, sports —elated announcements, etc.
  • the subscriber/user can select— a category of interest and then the announcement server 13 transmits advertisements applicable to the user selected category to the client station 10. It is to be understood by those skilled in the art, that the advertisements can be of any particular subject matter and are not restricted to those mentioned above.
  • the announcement server 13 includes software which is capable of providing a custom menu and custom announcements to subscribers.
  • the announcement server 13 provides customized menus for selected subscribers based upon previous menu selections made by the subscribers.
  • -@hat is, the software contains software filters and agents which allow the software to learn (i.e., remember and act upon) a subscriber's previous menu selections and customize an individual subscriber menu based upon the previous selections
  • the announcement server 13 is programmed to retrieve and transmit certain types of real-time information, such as current financial information, current sports related information, etc That is, the announcement server 13 is connected to a plurality of remote processors 12 by way of the NSP 16 which have available such real-time information and continually updates a local database or storage structure 34 Then, for example, in the case of a user that subscribes to a real-time information service which provides up to the minute sports information, such sports information is retrieved from the local database 34 and transmitted to the subscriber, along with or in place of advertising messages Alternatively, a separate real-time information server 36 is provided which is continually retrieving predetermined categories or types of information so
  • Each announcement server 13 comprises a processor or microprocessor 41, such as a microprocessor available from Intel Co ⁇ oration, for processing stored announcements and transmitting the announcements to the client station 10 of a subscriber through the NSP 16 or Network 95, although it is to be understood by those skilled in the art that any other type of computer, processor or microprocessor can be used in conjunction with the announcement server 30
  • a storage or memory device 42 is connected to the microprocessor 40 and acts as a mass storage device for storing the pre-recorded announcements, associated data, as well as the software necessary for control of the announcement server 13 and for associated processing.
  • -13- SUBSTTTUTE SHEET (RULE 26) storage device 42 preferably comprises a random access memory (RAM) and a magnetic hard disk or an optical storage device, such as, but not limited to, a CD-ROM, CD-I, or optical disk.
  • RAM random access memory
  • CD-ROM compact disc-read only memory
  • CD-I compact disc-read only memory
  • optical storage device such as, but not limited to, a CD-ROM, CD-I, or optical disk.
  • other means for storing the software and the pre-recorded announcements can also be used, such as a programmable ROM or embedded memory means.
  • Data relating to a specific pre-recorded announcement is transmitted from the storage device 42 to the microprocessor 40 to enable processing of the announcements.
  • the announcement server 13 includes a direct memory access, the announcement can be transmitted directly from the storage device 42 to the NSP 16 and then to the client station 10.
  • the announcement server 13 also comprises a digital audio converter or card 44 and/or a video card 46 for receiving audio or visual data and processing such data so that it can be stored in the storage device 42 and played/displayed at the appropriate time.
  • An interface jack 48 is connected to the digital audio converter 44 to permit audio announcements to be converted to digital format for storage within the storage device 42.
  • the interface jack 48 allows the announcement server 13 to-be updated with new announcements by uploading the announcements to the announcement server 13 from a remote location using a telephone system (not shown).
  • the announcement server 13 can also be updated remotely through the computer network 95 in a conventional manner (e.g. new advertisements can be uploaded to the announcement server 13 from a remote processor using the computer network 95).
  • a clock 50 is located within or associated with the microprocessor 40 and can be used to monitor a predetermined period of time for each announcement to be displayed, if such a predetermined period of time has been specified. That is, a timing option allows a predetermined minimum display time to be specified for each advertisement. If such a predetermined minimum time is not specified, the advertisement is played/displayed until either another advertisement is ready to be played/displayed or until the user at the client station 10 aborts or terminates the session. In order to collect statistical information on the announcements displayed on the client station 10, time based data, such as the time an announcement was played, is recorded and stored within the storage device 42.
  • the clock 50 is also capable of recording the period of time necessary for a sequence of messages or announcements to be transmitted and displayed on the client station 10. Such clocks are well known to those of ordinary skill in the art.
  • the NSP 16 is connected to the microprocessor 40 via a communication interface device 52, which allows for the transfer of information to and from the announcement server 30.
  • the communication, interface device 52 is a digital data communications port (DDCP).
  • DDCP digital data communications port
  • the microprocessor 40 receives a signal from the NSP 16
  • an announcement is retrieved from the storage device 42 and transmitted to the NSP 16.
  • the NSP 16 then transmits the announcement to the client station 10.
  • the modified network server program 124 on the NSP 16 sends such a signal to the microprocessor 40 of the announcement server 13 when the communication path 20 is idle, as previously discussed.
  • the microprocessor 40 is also connected to a main controller 54 via a communication interface 56, such as a modem.
  • the main controller 54 acts as a main processing system for all of the advertising servers 30 connected to the NSP 16.
  • the main controller 54 could also function as the main processing system for other advertising servers 30 connected to other NSPs connected to the network 95, although it is foreseen that each NSP 16 will have its own main controller 54.
  • Internal software in the announcement server 13 cross-references the number of announcements played to the user at the client station 10 to the person or entity which is sponsoring each of the announcements and transmits this information to the main controller 54.
  • the sponsoring person or entity can be an advertiser or some other type of a billable or non-billable client.
  • the main controller 54 generates a billing schedule for determining the amount which the sponsoring person or entity should be charged.
  • the main controller 54 maintains data files and logs into its data files each announcement which is played to a particular client station 10.
  • the controller 54 records other information about the advertisements, such as statistical information, including the advertisement's file name, play time, geographical area in which the advertisement has been played, IP address-of the subscriber and/or URL of the computer 120 accessed, and any billing charge associated with the playing of the announcement.
  • the main controller 54 and the announcement server 13 are accessible by dialing to or being dialed by remote computing equipment, such as a DTE connected to a computer 120 of the computer network 95, in order to transfer billing records so that the appropriate sponsoring person or entity can be billed.
  • regional computing equipment which receives billing records from remote advertising servers 30 can connect with central computing equipment for central billing and processing.
  • billing may also be done using the resources of the computer network 95 (e._q., via e-mail).
  • the main controller 54 can store any other information which is considered to be pertinent to the system's billing and processing requirements.
  • the main controller 54 acts as the central record keeping and billing location.
  • the main controller 54 can also remotely deliver and update all audio and/or video advertising and other announcements contained at each announcement server 30.
  • advertisements and announcements stored in the storage device 42 of the announcement server 13 are also updated by remote computing equipment which dials to (or is dialed from) the announcement server 30, as previously discussed, in order to transfer audio and video advertisements and/or messages or to delete or modify previously stored announcements or messages using the interface 48.
  • the advertisements stored in the storage device 42 are also accessible and updatable by an authorized user or supervisor communicating with the announcement server 13 from a remote device or computer (not shown) which communicates with the announcement server 13 by way of the computer network 95.
  • the main controller 54 may comprise either a separate computer system, such as a personal computer, or the main controller 54 may be implemented in software, such as with a terminate and stay resident (TSR) software program executing on the microprocessor 40, as will be apparent to those of ordinary skill in the art.
  • TSR terminate and stay resident
  • the announcement server 13 transmits at least one pre-recorded announcement to the client station 10 whenever the connection path 20 is idle.
  • the prerecorded announcements are played/displayed in a display window of the client station 10 for either a variable or predetermined amount of time whenever the connection path 20 to the client station 10 is idle.
  • an announcement comprises one or more advertisements which are digitally stored within the announcement server 30.
  • the announcement server 13 determines the type of advertisements and the duration for which the advertisements are played/displayed on the client station 10.
  • the advertisements may be played/displayed for either a fixed or variable amount of time. For instance, one advertiser may contract to display an advertisement for five seconds and a second advertiser may contract to display an advertisement for thirty seconds or until the client station 10 is disconnected.
  • the type of announcements to be played are determined by comparing information, such as the network address of the client station 10 or the time of day, to a look up table located within the database 32 of the announcement server 30.
  • SUBST ⁇ JTE SHEET (RULE 26) A playing format is determined from information stored in the database 32 about each subscriber's client station 10 or by information determined by the NSP 16.
  • the NSP 16 determines the speed of the client station 10 access connection and relays this information to the announcement server 30.
  • the announcement server 13 uses the connection speed to select the appropriate types of announcements or advertisements to play. That is, if the client station 10 is connected to the NSP 16 via a low speed connection or the client station 10 is not capable of handling advanced video graphics or audio messages, then only graphics and text based advertisements are selected for displaying at the client station 10.
  • the client station 10 has a high speed connection to the NSP 16 and the client station 10 is capable of playing video and/or audio messages, then advertisements including more sophisticated video and audio data are played on the client station 10. It is to be understood by those skilled in the art that any type of advertisement and or message can be generated by the announcement server 30.
  • the digitally stored announcements are retrieved from the storage device 132 of the announcement server 13 by the modified network server software 124 operating on the NSP 16 and transmitted to the client station 10.
  • the modified network server software 124 processes the request in a conventional manner. If the NSP 16 includes the FEP 28, the FEP 28 monitors the traffic destined for the client station 10 or generated by the client station 10 and determines when the connection path 20 is idle. When there is no traffic destined for the client station 10 or traffic generated by the client station 10, such that the connection path 20 is idle, the FEP 28 signals the announcement server 13 to originate, suspend, reinitiate or terminate the transmission of announcements to the client station 10.
  • the announcement server 13 then preferably transmits digitally stored advertisements, messages or announcements to the user at the client station 10 for as long as the connection path 20 is idle.
  • the FEP 28 also continually monitors the transmission of information between the NSP 16 and the computer network 95 (i.e. the communication paths 18) and interacts with the modified network server software 124 to determine if the user's service request has been processed and/or completed, in order to determine-if the transmission of the advertisements to the client station 10 should be suspended or terminated.
  • the FEP 128 signals the announcement server 13 to suspend transmission of advertisements to the client station 10 when the modified network server software 124 has
  • the announcement server 13 then suspends transmission of the advertisements to the client station 10 to allow the modified network server software 124 to transmit the data to the client station 10 over the connection path 20.
  • the announcement server 13 will reinitiate sending advertisements to the DTE 10 when the modified network server software 124 has finished transmitting its data to the client station 10 and if the connection path 20 is idle, as determined by the FEP 28.
  • the modified network server software 124 could perform this function and initiate, suspend, terminate, or reestablish the transmission of an announcement sequence to the client station 10.
  • a user's search results usually comprises a plurality of data packets (hereinafter “response packets").
  • response packets e.g., connection to remote host established or search results received
  • the network server software 124 signals to the announcement server 13 to interrupt or terminate the announcement sequence (i.e. the transmission of announcements to the client station 10).
  • the network server software 124 will buffer a predetermined small amount of the response packets in a buffer prior to notifying the announcement server 13 to suspend or terminate the transmission of advertisements to the client station 10.
  • the network server software 124 will notify the announcement server 13 to suspend transmission of the advertisements and transmits the buffered data to the client station 10. In this manner, the announcement server 13 is able to extend by a small amount of time, such as a few seconds, the transmission of advertisements to the client station 10.
  • the announcement server 13 is capable of interacting with the user so that, for example, the user can obtain additional information relating to a particular announcement or select different types of advertising.
  • a user at the client station 10 could respond by clicking on an icon or hypertext field, by pressing a key on a keyboard, touch screen or by otherwise entering and transmitting a command to the NSP 16.
  • the modified network server software 124 detects the assertion of a given prompt from the client station 10, the modified network server software 124 connects the client station 10 to the remote computer 120 of the
  • SUBST ⁇ UTE SHEET (RULE 26) advertiser as specified by an URL embedded in the hypertext field.
  • the client station 10 can be connected to the retail store or a home page of the retail store automatically to obtain additional information or purchase the advertised product on-line.
  • the announcement server 13 can provide, upon a given prompt by the user, the network address (or other contact information) of the advertiser to the user so that the user may later access the home page of the advertiser, telephone the advertiser, or otherwise contact or obtain the desired further information.
  • the announcement server 13 is also capable of inquiring if the user wishes to be sent follow up information. If the user answers in the affirmative, the announcement server 13 can record the name and address or fax number or e-mail address of the user and establish a customer mailing list therefrom. The user responds to the announcement server 13 by either clicking on a predetermined icon or field of the display or a using a keyboard to enter a command, or a voice activated response which is transmitted to the announcement server 30, which records the user's response. In addition, the announcement server 13 can provide a recorded customer list which can become a permanent part of the sponsoring person or entity's records and be included along in billing invoices.
  • the announcement server 13 can also provide users with a directory type service whereby a user can browse through an advertiser's product listings. Such a service would be advantageous if a sponsoring person or entity produced or manufactured a large number of products.
  • a user has the capability of requesting additional information, such as, but not limited to prices and quantity.
  • the user can assert a given prompt to cause the announcement server 13 to connect the user to the advertiser (e.g., a remote computer 120).
  • FIGs. 3-6 there are shown flow diagrams depicting the various methods of providing advertisements to the client station 10 while the connection path 20 is idle. While each of the methods is different, each method is part of an overall system for providing the advertisements to the client station 10, as will become apparent when reviewing Fig. 7.
  • the flow diagrams often show duplicative steps, it will be understood by those skilled in the art that such steps could comprise a single software procedure or subroutine.
  • Figs. 3A-3F the first method of transmitting advertising messages to the client station 10 is shown.
  • the browser client program operating on the client station 10 is modified to operate with two or more simultaneously active display windows, using the modified browser client software program 26. That is, the modified browser client program 26 allows a second, fixed announcement window to be displayed, in addition to the standard browser display window.
  • Fig. 8 A shows a monitor viewing area 60 of the client station 10 in which the modified browser client program 26 user interface 62 is displayed.
  • the user interface 62 includes the standard browser display area 64 and the fixed announcement window 66.
  • the standard browser display area 64 is conventional and the fixed announcement window 66 displays the advertisements which are transmitted to the client station 10 when the connection path 20 is idle.
  • the modified browser 62 also includes such conventional items as a status bar 68 and an URL entry area 70.
  • the fixed announcement window 66 is smaller in size than the standard browser display area 64.
  • one or more advertisements are continually displayed in the fixed announcement window 66. Although the advertisements are transmitted to the client station 10 when the connection path 20 is idle, the last advertisement to be displayed prior to the connection path 20 becoming busy will continue to be displayed while the connection path 20 is busy. The advertisement will thus remain displayed until such time as the connection path 20 is no longer busy and another advertisement is transmitted to the client station 10 or until the user aborts or terminates the session.
  • a user at a first station or the client station 10 executes the modified browser client software program 26.
  • the browser client software program 26 initially determines the NSP connection type at step 102, as either a dial-up connection or a dedicated line connection. If the NSP connection type is a dial-up connection, then the browser client software program 26 interacts with the modem 20 to establish a dial- up connection with the NSP 16 at step 104 in a conventional manner.
  • the modified network server software 24 executing at the NSP 16 then answers the call, authenticates the user and assigns the user an IP address. The method then proceeds to step 106.
  • the method skips step 104 and proceeds with step 106.
  • the modified network server software 24 determines whether the user is a subscriber to the information service of the present invention.
  • step 108 if the user is a subscriber to the information service of the present invention.
  • step 106 the method proceeds with step 110 and if the user is a subscriber, the method proceeds with step 120.
  • the modified network server software 24 queries the user to determine if the user desires to become a subscriber to the information service.
  • the modified network server software 24 may query the user by transmitting a query to the client station 10, the query includes a response field for allowing the user to easily respond to the query, by either entering a response using a keyboard, clicking on an icon, clicking on a highlighted field, or otherwise responding to the query in a manner known to those of skill in the art.
  • the user's response is determined and if the user answers the query in the negative, the method proceeds with step 114, in which case standard Internet message handling occurs such that the announcement server 30 does not interact with the client station 10, as noted at step 116.
  • step 118 the modified network server software 24 negotiates a type of information service to be provided to the user, such as real-time information services or advertising services, described in more detail below.
  • a type of information service such as real-time information services or advertising services, described in more detail below.
  • advertising services have been selected, execution proceeds with step 122 (Fig. B)
  • the user requests a network or Internet service, as is known by those of ordinary skill in the art, by typing in a URL and entering return or clicking on an icon, or clicking on a highlighted keyword, etc. , which causes the client station 10 to transmit a command to the NSP 16.
  • the modified network server software 24 reads the user's service request packets (data packets are formed by the browser client software program 26 and transmitted to the network server software program 24 as is known by those of ordinary skill in the art).
  • the service request packets include an IP address and/or an URL.
  • the modified network server software 24 routes the service request packet over the computer network 101 for execution by a remote host computer 12, as specified in the request packet.
  • either the modified network server software 24 or the FEP 28 is monitoring the traffic destined for or generated by the client station 10.
  • the modified network server software 24 or the FEP 28 sets a flag signaling that the connection path 20 is idle.
  • the announcement server 30 learns that the connection path 20 is idle (for example, by checking the status flag), the announcement server 30 begins executing an advertising sequence.
  • An advertising sequence comprises the generation (e.g. fetch from storage) and transmission of at least one generally continuous
  • the announcement server 30 checks the database 32 to determine appropriate advertising messages to be transmitted to the user at the client station 10 and begins transmitting messages to the user by way of the NSP 16 and the modified network server software 24 for display in the announcement window 66 of the modified browser client program 26.
  • the advertising messages transmitted to the client station 10 include an interaction means for permitting the user at the client station 10 to respond to the advertising messages and interact with the announcement server 30.
  • the user could initiate a predetermined response by entering a command in the fixed announcement window 66 in which the advertising messages are being displayed, such as by clicking on an icon or clicking on a highlighted field (i.e. hypertext, or text with a hyperlink).
  • a response packet is transmitted from the remote computer 12 to the NSP 16 where it is received by the modified network server software 24, which in turn notifies the announcement server 30 to discontinue transmitting the announcement sequence to the client station 10.
  • the FEP 28 detects that the response packet is for the client station 10 and informs the announcement server 30 (either directly or indirectly through the modified network software 24) that a response packet for the client station 10 has been received and to discontinue transmitting advertising messages to the client station 10. For instance, the FEP 28 sets a flag or status bit which is periodically checked by the modified network server software 24.
  • the modified network server software 24 checks to determine if such a response packet has been received (i.e. that the flag has been set). If a response packet has been received, the modified network server software 24 branches to step 134 and if a response packet has not been received, execution proceeds with step 136.
  • the announcement server 30 checks to determine if the transmission of advertising messages to the client station 10 is complete. If there are messages remaining to be transmitted to the DTE, at step 138, the announcement server 30 queries the modified network server software 24 to determine if the user has aborted the session, such as by disconnecting from the ⁇ SP 16. If the user has not aborted the session, and the advertising transmission is not yet complete, the announcement server 30 continues to
  • -22- SUBSTTTUTE SHEET (RULE 26) transmit messages to the client station 10 at step 140.
  • the announcement server 30 can also optionally transmit network status messages to the client station 10.
  • the announcement server 30 executes a logout procedure, which logs or records all relevant information about the advertising messages that were transmitted to the client station 10, and stores such information in a database in its storage device
  • the modified network server software 24 determines if the response packet transmission from the client station 10 is complete at step 144. If the transmission is not complete, the modified network server software 24 waits (i.e. loops) until the response packet transmission is complete before executing step 146. Step 146 determines if a final response packet has been received from the remote computer 12 (for example, indicating that a search has been completed, along with the results of the search).
  • the modified network server software 24 notifies the announcement server 30 to resume execution (step 136), as previously described. However, if a final response packet has been received, as determined at step 146, then at step 148, the announcement server 30 determines if the advertising transmission is complete. If the advertising transmission is complete as determined at either step 148 or step 136, then the announcement server 30 checks to determine if an advertising timing option is enabled, at step 150.
  • the advertising timing option is an option which allows a time limit to be set for displaying advertising messages. The timing option is enabled (turned on) by setting a gate or flip-flop in the announcement server 30, or by setting a bit in a register associated with a particular subscriber or with a particular advertisement.
  • advertisements may be set to be displayed for 5 seconds and other advertisements may be set to be displayed for 30 seconds, of course, it will be apparent to those of ordinary skill in the art that advertisements can be set to be displayed for any length of time.
  • Execution proceeds to step 152 if the timing option is not enabled, in which case the last advertisement is displayed in the fixed
  • step 150 if at step 150, the advertising timing option is enabled, then execution proceeds to step 158.
  • the announcement server 30 determines if the display time (i.e. , the time spent displaying a particular advertisements on the client station 10) exceeds a predetermined time limit. If the predetermined time limit has not been exceeded, the announcement server 30 continues to display the current advertisement and continues to check the display time against the predetermined time limit. If the predetermined time limit has been exceeded, as determined at step 158, then at step 160, the announcement server 30 checks (via the modified network server software 24) if the user has aborted the session.
  • the announcement server 30 executes the logout procedure at step 142. If the user has not aborted the session, as determined at step 160, then the announcement server 30 returns to step 130, and checks its database for further appropriate advertising messages to be transmitted to the client station 10.
  • the announcement server 30 queries the modified network program 24 if the user has aborted the session. If the user has aborted the session, then the announcement server 30 branches to the logout procedure at step 142. If the user has not aborted the session, then the announcement server 30 continues to transmit advertising messages, as indicated at step 156 and continues transmitting messages until either the transmission of messages is complete, as determined at step 148, or until the user has aborted the session, as determined at step 154. Referring now to Fig.
  • the modified network server software 24 transmits IP address information to the real-time information server 36 and signals the real-time information server 36 to begin executing an information sequence.
  • the real-time information service provides up to date (real-time) information to the user in the fixed announcement window 66 at the client station 10 whenever the connection path 20 is idle.
  • the information server 36 checks a database to determine which real-time information service to provide to the user (i.e. what type if information to send, such as sporting event scores or financial information).
  • the information server 36 begins
  • SUBST ⁇ TUTE SHEET (RULE 26) transmitting real-time information to the client station 10 for display in the fixed announcement window 66.
  • the modified network server program 24 checks to determine if a request or a response packet has been transmitted from the remote computer 12 to the NSP 16. If a request or response packet has not been transmitted from the remote computer 12, then the modified network server software 24 checks to determine if the user has aborted the present session at step 170. If the user has not aborted the session, then the information server 36 continues to transmit real-time information to the client station 10 at step 172.
  • the modified network server software 24 notifies the information server 36 and the information server 36 logs or records all relevant information pertaining to the current session and terminates processing at step 176.
  • step 178 the modified network server software 24 notifies the information server 36 to suspend transmission of real-time information to the client station 10 so that the response packets may be transmitted to the client station 10.
  • the response packets are transmitted to the client station 10 by way of the connection path 20 until there are no more response packets present (step 180).
  • step 170 is executed. Step 170 checks if the user has aborted the session. If the user has not aborted the session, the real-time information server 36 reinitiates the transmission of real-time information, as indicated at step 172.
  • the information server 36 logs or records all relevant information pertaining to the current session and terminates processing at step 176.
  • the second method the user at the client station 10 communicates with the computer network 101 using an "access" page of the NSP 16 as the user's window to the computer network 10.
  • the home page of the NSP 16 is modified and this modified home page is viewed by the user at the client station 10.
  • the advertisements are displayed in a fixed area of the NSP modified home page.
  • the client station 10 operates under the control of a conventional browser client program and not the modified browser client program 26.
  • FIG. 8B shows the monitor viewing area 60 of the client station 10.
  • a standard browser client program executes on the client station 10 and includes a conventional user interface 72 displayed on the monitor viewing area 60.
  • the user interface 72 includes a conventional status bar 73 and URL display area 74. Since the user at the client station 10 is accessing the computer network 101 by way of the modified home page or access page of the NSP 16, the URL of the ⁇ SP access page is displayed in the URL display area 74.
  • the modified network software 24 displays a modified browser client window 75, which is displayed in the display area of the user interface 72 of the standard browser client program at the client station 10.
  • the modified browser client window 75 includes a fixed announcement window 76, a browser display area 77 and an URL entry area 78, similar those of the modified browser 62.
  • the browser display area 77 has a greater display area than the fixed announcement window 76.
  • the fixed announcement window 76 is used to display advertisements. According to the present invention, preferably one or more advertisements are continually displayed in the fixed announcement window 76.
  • a user at a first station or client station 10 executes a conventional browser client software program.
  • the browser client software program determines the ⁇ SP connection type at step 202, as either a dial-up connection or a dedicated line connection. If the ⁇ SP connection type is a dial-up connection, then the browser client software program interacts with the modem 20 in a conventional manner to establish a dial-up connection with the ⁇ SP 16 at step 204.
  • the modified network server software 24 answers the call, authenticates the user and assigns the user an IP address. The method then proceeds to step 206.
  • the method skips step 204 and proceeds with step 206.
  • the user reaches the access page of the ⁇ SP 16 to access the advertising service by entering an URL, clicking on an icon, or as a result of a browser default setting.
  • the modified network server software 24 interacts with the user and determines whether the user is a subscriber to the information service of the present invention at step 210. If the user is not a subscriber, then the method proceeds with step 212 and if the user is a subscriber, the method proceeds with step 222.
  • the modified network server software 24 queries the user to determine if the user desires to become a subscriber to the information service.
  • the modified network server software 24 queries the user by displaying a query on the NSP access page being displayed on the client station 10.
  • the query preferably includes a response field for allowing the user to easily respond to the query, by either entering a response using a keyboard, clicking on an icon, clicking on a highlighted 'field, or otherwise responding to the query in a manner known to those of skill in the art.
  • step 214 the user's response is determined and if the user answers the query in the negative, the method proceeds with step 216, in which case standard Internet message handling occurs such that the announcement server 30 does not interact with the client station 10, as noted at step 218. If the user responds affirmatively to the query for information service, then at step 220, the modified network server software 24 negotiates a type of information service to be provided to the user, such as real-time information services or advertising services, described in more detail below.
  • step 222 if advertising services have been selected, execution proceeds with step 224 (Fig. 4B) and if real-time information services have been selected, then the method proceeds with step 262 (Fig. 4E).
  • the user requests an Internet service from within the access page or modified browser client window 75 of the modified network server software 24 displayed on the client station 10, as is known by those of ordinary skill in the art, by typing in a URL and entering return or clicking on an icon or a highlighted keyword, etc., which causes the client station 10 to transmit a command to the NSP 16.
  • the modified network server software 24 receives the user's service request.
  • the service request includes an IP address and/or an URL.
  • the modified network server software 24 routes the service request over the computer network 101 for execution by a remote host computer 12, as specified by the request.
  • the modified network server software 24 notifies the announcement server 30 to begin executing an advertising sequence.
  • an advertising sequence is at least one generally continuous advertising message or preferably, a sequence of announcements which are repeatedly generated by the announcement server 30.
  • the announcement server 30 checks its database 32 to determine appropriate advertising messages to be played/displayed to the user a, -the client station
  • SUBST ⁇ JTE SHEET (RULE 26) 10 begins transmitting messages to the modified network server software 24 for display in the fixed announcement window 76.
  • the advertising messages displayed in the fixed announcement window 76 include an interaction means for permitting the user at the client station 10 to respond to the advertising messages and interact with the announcement server 30.
  • the user could initiate a predetermined response by entering a command in the fixed announcement window 76 in which the advertising messages are being displayed, such as by clicking on an icon or clicking on a highlighted field (i.e. hypertext, or text with a hyperlink).
  • the user may execute a standard network request from the modified browser display area 77 in a conventional manner.
  • the remote host 12 Upon processing of the user's network service request, such as a connection made to a remote host 12, then the remote host 12 sends a response packet to the NSP 16, as is known by those of ordinary skill in the art.
  • either the modified network server software 24 or the FEP 26 in conjunction with the modified network server software 24 checks to determine if a response packet for the client station 10 has been received. If a response packet has been received, the modified network server software 24 informs the announcement server 30 that such a response packet has been received and to suspend the transmission of the advertisements (step 236). If a response packet has not been received, the announcement server 30 checks to determine if the transmission of advertising messages to the modified network server software 24 is complete (step 238). If there are messages remaining to be transmitted to the modified network server software 24, at step 240, the announcement server 30 checks to determine if the user has aborted the session, such as by disconnecting from the NSP 16. If the user has not aborted the session, and the advertising transmission is not yet complete, the announcement server 30 continues to transmit messages to the modified network server software 24 at step 242.
  • the advertising server executes the logout procedure at step 142 (Fig. 3D), which logs or records all relevant information about the advertising messages that were played/displayed, stores such information in its database 32, and then finishes processing at step 116.
  • the modified network server software 24 notifies the announcement server 30 to suspend transmission of the advertising
  • the modified network server software 24 determines if the response packet transmission from the remote computer 12 is complete at step 244. If the transmission is not complete, the modified network server software 24 waits until the response packet transmission is complete, and then proceeds to step 246. At step 246, the modified network server software 24 determines if a final response packet has been received from the remote computer 12. If a final response packet has not been received, previously described step 238 is executed. However, if a final response packet has been received, then at step 248 the announcement server 30 determines if the advertising transmission is complete, if the advertising transmission is complete as determined at either step 248 or step 238, then the announcement server 30 checks to determine if an advertising timing option is enabled, at step 250. As previously discussed, the advertising timing option allows the announcement server 30 to play /display advertising messages for a predetermined time period.
  • the announcement server 30 determines if the display time (i.e., the time an advertisements is played/displayed) exceeds a predetermined time limit, if the predetermined time limit has not been exceeded, then the announcement server 30 continues playing/displaying of the current advertisements until the time limit has been reached or exceeded.
  • the announcement server 30 checks to determine if the user has aborted the session, if the user has aborted the session, the announcement server 30 executes the logout procedure at step 142 (Fig. 3D). If the user has not aborted the session, as determined at step 260, then the announcement server 30 returns to ster 232 (Fig. 4B), and checks its database for further appropriate advertising messages to be transmitted to the client station 10.
  • the announcement server 30 determines if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout procedure at step 142 (Fig. 3D), and if the user has not aborted the session, the announcement server 30 returns to step 224 to begin executing a new advertising sequence.
  • the announcement server 30 determines if the user has
  • SUBST ⁇ UTE SHEET (RULE 26) aborted the session. If the user has aborted the session, then the announcement server 30 executes the logout procedure at step 142. If the user has not aborted the session, then the announcement server 30 continues to transmit advertising messages, as indicated at step 256 and continues transmitting messages until either the transmission of messages is complete, as determined at step 248, or until the user has aborted the session, as determined at step 254.
  • the modified network server software 24 transmits IP address information to the real-time information server 36 and signals the real-time information server 36 to begin executing an information sequence.
  • the information server 36 checks the database 38 to determine which real-time information service to provide to the user.
  • the information server 36 begins transmitting real-time information to the modified network server software 24 for display in the fixed announcement window 76.
  • the modified network server software 24 checks to determine if the user has aborted the present session at stem 270. if the user has not aborted the session, then the information server 36 continues to transmit real-time information to the modified network server software 24 at step 272. However, if the user has aborted the session, then at step 274, the information server 36 logs or records all relevant information pertaining to the current session and terminates processing at step 276.
  • step 2708 the modified network server software 24 notifies the information server 36 to suspend transmission of real-time information to the client station 10 so that the response packets may be transmitted to the client station 10.
  • the response packets are transmitted to the client station 10 by way of the connection path 20 until there are no more response packets present (step 280).
  • step 270 is executed. Step 270 checks to determine if the user has aborted the session. If the user has not aborted the session, the real-time information server 36 continues the transmission of real-time information, as indicated at step 272. otherwise, if the user has aborted the session, then at step 274, the information server 36 logs or records all
  • SUBST ⁇ UTE SHEET (RULE 26) relevant information pertaining to the current session and terminates processing at step 276.
  • the third method of displaying advertisements on the client station 10 while the connection path 20 is idle is shown.
  • the user at the client station 10 is executing a conventional browser client software program.
  • a software executable module is downloaded from the NSP 16 to the client station 10 when the client station 10 connects to the NSP 16.
  • the downloaded module, executing on the client station 10 works in conjunction with the conventional browser client software program, to provide a fixed display window in which the advertisements may be displayed, which is in addition to the conventional browser display window.
  • Fig. 8C shows the monitor viewing area 60 of the client station 10.
  • a standard browser client program executes on the client station 10 and includes a conventional browser user interface 72 displayed on the monitor viewing area 60.
  • the user interface 72 includes a conventional status bar 73, URL display area 74, and display window 79.
  • the downloaded coded module provides a modified browser display 80 which is displayed within the conventional display window 79.
  • the modified browser display 80 includes an URL entry area 81, a fixed announcement window 82 and a browser display area 83.
  • the user at the client station 10 accesses the computer network 101 by way of the NSP 16.
  • the NSP 16 is able to transmit advertisements to the client station 10 which are displayed in the fixed announcement window 82.
  • the browser display area 83 has a greater display area than the fixed announcement window 82.
  • one or more advertisements are continually displayed in the fixed announcement window 82.
  • a user at a first station or client station 10 executes a conventional browser client software program.
  • the conventional browser client software program initially determines the NSP connection type at step 302, as either a dial-up connection or a dedicated line connection. If the NSP connection type is a dial-up connection, then the browser client software program interacts with the modem 20 to establish a dial-up connection with the modified network server software 24 at step 304. The modified network server software 24 then answers
  • SUBST ⁇ JTE SHEET (RULE 26) the call, authenticates the user and assigns the user an IP address.
  • the method then proceeds to step 306.
  • the NSP connection type is a dedicated line, as opposed to a dial-up connection, as determined at step 302, then the method skips step 304 and proceeds with step 306.
  • the user reaches the home page of the NSP 16 by entering a URL, clicking on an icon, or as a result of a browser default setting.
  • the home page of the NSP 16, according to the third method includes a means for selecting an information access window. It is preferred that the means for selecting comprises an icon, however, it will be apparent to those of ordinary skill in the art that other means may be used, such as a hypertext link.
  • the modified browser display 80 is displayed on the client station 10.
  • step 312 the type of service desired, such as advertising service or real-time information service, is selected by the user at the client station 10 by responding to a prompt or clicking on an icon, if real-time information service is requested, then the method proceeds to step 354 (Fig. SE) and if advertising services are selected, then the method proceeds to step 314 (Fig. SB).
  • step 354 Fig. SE
  • advertising services are selected, then the method proceeds to step 314 (Fig. SB).
  • the user requests an Internet service from within the browser display area 83 in a conventional manner, such as by typing in a URL and entering return or clicking on an icon or a highlighted keyword, etc. , which causes the client station 10 to transmit a command to the modified network server software 24.
  • the modified network server software 24 reads the user's service request data packets.
  • the service request packets include an IP address and/or an URL.
  • the modified network server software 24 routes the service request packets over the computer network 101 for execution by a remote host computer 12, as specified in the request packet.
  • the modified network server software 24 notifies the announcement server 30 to begin executing an advertising sequence.
  • the advertising sequence comprises playing/displaying at least one generally continuous advertising message or preferably, a sequence of advertisements which are repeatedly generated by the announcement server 30.
  • the announcement server 30 comprises playing/displaying at least one generally continuous advertising message or preferably, a sequence of advertisements which are repeatedly generated by the announcement server 30.
  • the advertising messages transmitted to the client station 10 include an interaction means for permitting the user at the client station 10 to respond to the advertising messages and interact with the announcement server 30.
  • the user could initiate a predetermined response by entering a command in the fixed announcement window 82, such as by clicking on an icon or clicking on a highlighted field (i.e. hypertext, or text with a hyperlink).
  • the user may also initiate an activity by way of the browser display area 83.
  • a response packet is transmitted to the modified network server software 24 by the remote computer 12, as is known by those of ordinary skill in the art.
  • the FEP 28 in conjunction with the modified network server software 24, signals the announcement server 30 that the connection path 20 is no longer idle, since the response packets need to be transmitted over the connection path 20 to the client station 10.
  • the announcement server 30 checks to determine if such a response packet has been received. If a response packet has been received, the announcement server 30 branches to step 328 and if a response packet has not been received, execution proceeds with step 330.
  • Step 330 is reached if the connection path 20 is still idle.
  • the announcement server 30 checks to determine if the transmission of advertising messages to the client station 10 is complete. If there are messages remaining to be transmitted to the client station 10, at step 332, the announcement server 30 checks to determine if the user has aborted the session, such as by disconnecting from the NSP 16. If the user has not aborted the session, and the advertising transmission is not yet complete, the announcement server 30 continues to transmit messages to the modified network server software 24, which in turn passes the messages over the connection path 20 to the client station 10 (step 334).
  • the announcement server 30 executes the logout procedure at step 142 (Fig. 3D), which logs or records all relevant information about the advertising messages that were transmitted to the client
  • SUBST ⁇ UTE SHEET (RULE 26) station 10 stores such information in a database, and then finishes processing at step 116.
  • the modified network server software 24 determines if the response packet transmission is complete at step 336. If the transmission is not complete, the modified network server software 24 waits until the response packet transmission is complete (loop on step 336)' before executing step 338, which determines if a final response packet has been received. If a final response packet has not been received, the announcement server 30 executes step 330, as previously described. However, if a final response packet has been received, then at step 340, the announcement server 30 determines if the advertising transmission is complete.
  • the announcement server 30 checks to determine if an advertising timing option is enabled, at step 342. As previously discussed, the advertising timing option allows advertisements to be played/displayed for a predetermined time period.
  • the announcement server 30 determines if the display time (i.e. , the time spent displaying messages on the client station 10) exceeds a predetermined time limit (step 350). If the predetermined time limit has not been exceeded, the announcement server 30 continues to display the advertisement until the predetermined time limit is reached or exceeded. Once the predetermined time limit has been exceeded, then at step 352, the announcement server 30 checks to determine if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout procedure at step 142 (Fig. 3D). If the user has not aborted the session, then the announcement server 30 returns to step 324 (Fig.
  • the announcement server 30 determines if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout procedure at step
  • the announcement server 30 branches to step 314 to begin executing a new advertising sequence.
  • the announcement server 30 determines if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout procedure at step 142. If the user has not aborted the session, then the announcement server 30 continues to transmit advertising messages (step 348) until either the transmission of messages is complete or until the user has aborted the session. Referring now to Fig. 5E, if at step 312, the user selected real-time information service, then at step 354, the modified network server software 24 transmits IP address information to the real-time information server 36 and signals the real-time information server 36 to begin executing an information sequence.
  • the information server 36 checks the database 38 to determine which real-time information service to provide to the user (e.g. sports, finance, etc.) or the user may select a particular type of information.
  • the information server 36 begins transmitting real-time information to the modified network server software 24, which in turns transmits the information to the client station 10 for display in the fixed announcement window 82.
  • the modified network server software 24 or alternatively, the FEP 28 monitors the traffic destined for or generated by the DTE 10 to determine when the connection path 20 is idle.
  • the modified network server software 24 checks if there is any data to be transmitted to the client station 10.
  • the information server 36 checks to determine if the user has aborted the present session at step 362. If the user has not aborted the session, then the information server 36 continues to transmit real-time information to the client station 10 by way of the modified network software 24 (step 364). However, if the user has aborted the session, then at step 366, the information server 36 logs or records all relevant information pertaining to the current session and terminates processing at step 368.
  • the modified network server software 24 notifies the information server 36 to suspend transmission of real-time information to the client station 10 so that the response packets may be transmitted to the client station 10.
  • the response packets are transmitted to the client station 10 by way of the connection path 20 until there are no more response
  • step 362 checks if the user has aborted the session. If the user has not aborted the session, the real-time information server 36 reinitiates the transmission of real-time information (step 364). Otherwise, if the user has aborted the session, then at step 366, the information server 36 logs or records all relevant information pertaining to the current session and terminates processing at-step 368.
  • the fourth method of playing/displaying advertisements on the client station 10 while the connection path 20 is idle is shown.
  • the user at the client station 10 accesses the NSP 16 using a conventional browser client software program.
  • the NSP 16 executes the modified network server software 24, which transmits advertisements to the client station 10 when the connection path 20 is idle, with the advertisements being displayed in a transient display window on the client station 10. That is, the transient window pops up on the display area of the client station 10 whenever the advertisements are being transmitted to the client station 10 and disappears whenever the connection path 20 is otherwise busy. By disappearing, the transient window is either no longer displayed on the client station 10 or alternatively, the transient window is moved to or made a background window. If the transient window is made a background window, then the transient window is movable to the foreground upon entry of a predetermined command at the client station 10, as is known by those of ordinary skill in the art.
  • Fig. 8D shows the monitor viewing area 60 of the client station 10.
  • a standard browser client program executes on the client station 10 and includes a conventional browser user interface 72 displayed on the monitor viewing area 60.
  • the user interface 72 includes a conventional status bar 73, URL display area 74, and display window 79.
  • a transient window 84 is preferably displayed in the display window 79 when the connection path 20 is idle and advertisements are being transmitted to the client station 10. The advertisements are displayed in the transient window 84.
  • the transient window 84 may be placed anywhere within the user interface 72. For instance, an alternate location for displaying the transient window 84 appears in dashed lines at an upper right hand portion of the user interface 72 and is indicated at 85.
  • the alternate transient window 85 covers a lesser portion of the display window 79 than the transient window 84. Locating the transient window 85 away from the display window 79 allows the user at the client station 10 to
  • SUBST ⁇ UTE SHEET (RULE 26) view activity results or other data, without such information being blocked by the transient window 84. For instance, upon completion of a network search and after the search results have been downloaded to the client station 10, the connection path 20 becomes idle. However, the user may be interested in viewing the search results prior to initiating another network activity. Accordingly, it may be advantageous to display the transient window 84 in a more obscure area of the user interface 72. Preferably one or more advertisements are continually displayed in the transient window 84.
  • a user at a first station or client station 10 executes a conventional browser client software program.
  • the browser client software program initially determines the NSP connection type at step 402, as either a dial-up connection or a dedicated line connection. If the NSP connection type is a dial- up connection, then the browser client software program interacts with the modem 20 to establish a dial-up connection with the NSP 16 at step 404.
  • the modified network server software 24 answers the call, authenticates the user and assigns the user an IP address.
  • the method then proceeds to step 406.
  • the NSP connection type is a dedicated line, as opposed to the dial-up connection, then the method skips step 404 and proceeds with step 406.
  • the modified network server software 24 determines whether the user is a subscriber to the information service of the present invention. At step 408, if the user is not a subscriber, then the method proceeds with step 410 and if the user is a subscriber, the method proceeds with step 420.
  • the modified network server software 24 queries the user to determine if the user desires to become a subscriber to the information service.
  • the modified network server software 24 may query the user by transmitting a query to the client station 10, the query preferably includes a response field for allowing the user to easily respond to the query, by either entering a response using a keyboard, clicking on an icon, clicking on a highlighted field, or otherwise responding to the query in a manner known to those of skill in the art.
  • the user's response is determined and if the user answers the query in the negative, the method proceeds with step 414, in which case standard Internet message handling occurs such that the announcement server 30 does not interact with the client station 10, as noted at step 416. If the user responds affirmatively to the query for information service, then at step 418, the modified network server software 24 negotiates a type of information service to be
  • the user requests an Internet service, as is known by those of ordinary skill in the art, by typing in a URL and entering return or clicking on an icon, or clicking on a highlighted keyword, etc., from within the display window 79, which causes the client station 10 to transmit a command to the modified network server software 24.
  • the modified network server software 24 reads the user's service request packets (data packets are formed by the browser client software program and transmitted to the network server software program as is known by those of ordinary skill in the art).
  • the service request packets include an IP address and/ or an URL.
  • the modified network server software 24 routes the service request packet over the computer network 101 for execution by a remote host computer 12, as specified in the request packet.
  • an FEP 28 if an FEP 28 is connected for monitoring the traffic to/from the client station 10, the FEP 28 informs the modified network server software 24 that the connection path 20 is idle, and the modified network server software 24 notifies the announcement server 30 to begin executing an advertising sequence.
  • the modified network server software 24 monitors the traffic destined for or generated by the client station 10.
  • An advertising sequence is at least one generally continuous advertising message or preferably, a sequence of announcements which are repeatedly generated by the announcement server 30.
  • the announcement server 30 opens the transient information window 84 in the browser display window 79 on the client station 10 and at step 430, the announcement server 30 checks its database 32 to determine appropriate advertising messages to be transmitted to the client station 10. The announcement server 30 begins transmitting messages to the user by way of the modified network server software 24, for display in the transient window 84 on the client station 10.
  • the advertising messages transmitted to the client station 10 include an interaction means for permitting the user at the client station 10 to respond to the advertising messages and interact with the announcement server 30, as previously discussed in relation to the other methods of the present invention.
  • a response packet with the results of the user request is transmitted to the NSP 16.
  • Either the modified network server software 24 of the FEP 28 monitors the traffic
  • step 436 the announcement server 30 checks to determine if the transmission of advertising messages to the client station 10 is complete. If there are messages remaining to be transmitted to the client station 10, at step 438, the announcement server 30 checks to determine if the user has aborted the session, such as by disconnecting from the NSP 16. If the user has not aborted the session, and the advertising transmission is not yet complete, the announcement server 30 continues to transmit messages to the client station 10 at step 440.
  • the announcement server 30 executes the logout procedure, which logs or records all relevant information about the advertising messages that were transmitted to the client station 10 and stores such information its database 32 or passes such information to the main controller 54, and then finishes processing at step 116.
  • the modified network server software 24 receives the response packets and buffers or temporarily stores the response packets in a buffer.
  • a buffer parameter limit is checked at step 446 (e.g. the buffer is too small to store further packets without overwriting a prior packet). Buffering the response packets prior to transmitting the response packets to the client station 10 allows the transient window 84 to remain open in the display area 79 for a longer period of time. However, once the buffer limit has been reached, the transient window 84 is closed and the buffered response packets are transmitted to the client station 10.
  • T he response packet buffer is preferably limited in size so that the transmission of response packets to the client station 10 is only suspended a very short period of time, for instance from between two to five seconds. However, it will be apparent to those of ordinary skill in the art that the size of the buffer could be made larger or smaller, or that the transmission of the response packets to the client station 10 could be delayed/ suspended for a predetermined period of time. If the buffer parameter limit has not been reached, then at step 448 the announcement server 30 checks to determine if the user has aborted the session.
  • the announcement server 30 continues to transmit advertising messages to the client station 10. However, if the
  • the announcement server 30 executes the logout procedure beginning with step 142 (Fig. 3D).
  • the logout routine is also executed if the buffer parameter limit was reached, as determined in step 446 and the user aborted the session, as determined in step 452. If the buffer parameter limit was reached (step 446) and the user has not aborted the session, then at step 454, the modified network server software 24 terminates transmission of the advertising messages to the client station 10 and closes the transient window 84 on the client station 10.
  • the transient window 84 is made a background window, in which case the transient window 84 is movable to the foreground upon entry of a predetermined command at the client station 10.
  • the modified network server software 24 transmits the response packets stored in the buffer to the user and the remaining response packets are transmitted without being buffered by the modified network server software 24.
  • the method then repeats beginning with step 420 (Fig. 6B) . If the advertising transmission is complete as determined at step 436, then the announcement server 30 checks to determine if an advertising timing option is enabled, at step 442. As previously discussed, the advertising timing option allows a time limit to be set for displaying advertising messages.
  • the announcement server 30 determines if the display time (i.e., the time spent displaying a particular advertisement) exceeds a predetermined time limit. If the predetermined time limit has not been exceeded, the announcement server 30 continues to have the particular advertisements displayed on the client station 10. If the predetermined time limit has been exceeded, then at step 460, the announcement server 30 checks to determine if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout procedure at step 142. If the user has not aborted the session, then the announcement server 30 returns to step 430 (Fig. 6B), and checks its database for further appropriate advertising messages to be transmitted to the client station 10 and displayed in the transient window 84.
  • the display time i.e., the time spent displaying a particular advertisement
  • the announcement server 30 checks if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout
  • step 142 -40- SUBSTTTUTE SHEET (RULE 26) procedure at step 142, and if the user has not aborted the session, the announcement server 30 proceeds with step 462 (Fig. 6E).
  • either the modified network server software 24 or alternatively the FEP 28, checks to determine if a request or a response packet for the client station 10 has been received. If a request or response packet has not been received, then the announcement server 30 checks to determine if the user has aborted the present session at step 464. If the user has not aborted the session, then the announcement server 30 continues to effect the display of the advertisements on the client station 10 until a response packet has been received. However, if the user has aborted the session, then step 464 branches to the logout procedure at step 142, and the announcement server 30 records all relevant information pertaining to the current session and terminates processing at step 116.
  • the modified network server software 24 receives the response packets and buffers or temporarily stores the response packets.
  • a buffer parameter limit is checked at step 468. If the buffer parameter limit has not been reached, then at step 470 the announcement server 30 checks to determine if the user has aborted the session. If the user has not aborted the session, then the modified network server software 24 continues to transmit and display advertisements in the transient window 84. However, if the user has aborted the session, then the announcement server 30 executes the logout procedure beginning with step 142 (Fig. 3D). The logout routine is also executed if the buffer parameter limit was reached, as determined in step 446 and the user aborted the session, as determined in step 472.
  • the modified network server software 24 terminates transmission of the advertising messages to the client station 10 and closes the transient information window on the client station 10.
  • the modified network server software 24 transmits the response packets stored in the buffer to the client station 10 and the remaining response packets are transmitted to the client station 10 without being buffered by the modified network server software 24. The method then repeats beginning with step 4.20 (Fig. 6B).
  • Fig. 7 a flow diagram of the communications marketing system of the present invention is shown.
  • the system allows advertisements to be displayed on
  • SUBST ⁇ UTE SHEET (RULE 26) the client station 10 whenever the connection path 20 between the client station 10 and the NSP 16 is idle, according to any one of the previously described methods.
  • steps 100-104 communications between a user at the client station 10 and the modified network server software 24 at the NSP 16 are established.
  • the modified network server software 24 performs a series of tests to determine the particular method by which advertisements will be displayed at the client station 10.
  • the modified network server software 24 probes or queries the browser client software program operating on the client station 10 to determine if the client station 10 is executing the modified browser client software program 26.
  • the system displays advertisements on the client station 10 according to the first method by branching to step 106 (Fig. 3A). If the client station 10 is not executing the modified browser client software program 26 then at step 504, the modified network server software 24 checks to determine whether the downloadable browser client code module is available and can operate on the client station 10 in conjunction with the browser client software program on the client station 10. If the downloadable code module is available and operable on the client station 10 in conjunction with the browser client software, then the code module is downloaded to the client station 10 by the modified network server software 24, and the modified network software 24 branches to step 306 (Fig. BA). It is understood that not all DTEs are capable of having code downloaded and locally executed.
  • the modified network server software 24 checks if the access page method of displaying advertisements is available. If the NSP 16 is configured to provide access to the computer network 101 using an access page, the modified network server software 24 branches to step 206 (Fig. 4A). If the NSP 16 is not configured to communicate with the computer network 101 with an access page, then the modified network server software 24 branches to step 406 (Fig. 6 A) and provides advertisements via the transient window method.
  • the system of the present invention may thus include one or more of the alternative methods of providing advertising messages to a user at the client station 10.
  • client software 53 works in conjunction with network communications software 55, such as specialized communication software or a browser, such as those typically used for accessing the Internet.
  • network communications software 55 such as specialized communication software or a browser, such as those typically used for accessing the Internet.
  • client software 53 works in conjunction with network communications software 55, such as specialized communication software or a browser, such as those typically used for accessing the Internet.
  • network communications software 55 such as specialized communication software or a browser, such as those typically used for accessing the Internet.
  • the server portions discussed above, including FEP 28, Announcement server 30, real-time information server 36 and associated databases 32, 34 and 38 will collectively be referred to as a "messaging server” or "Cartesian brand server” or “Cartesian brand data server” .
  • “Cartesian” is a trademark of Cartesian Broadcasting Networks, Inc.
  • the messaging or Cartesian brand server is illustrated as element 1010 in FIG. 9 and is also referred to in FIG. 11, 12 and 14. It serves to
  • the client software 53 opens a separate communications channel from that opened by the browser or network communications software 55.
  • the client software communicates over this channel only with the a messaging or "Cartesian" brand server 1010, and preferably not with the NSP 16.
  • the NSP 16 will alternatively be referred to as the ISP 16, i.e. Internet service provider, although it should be understood that the preferred embodiment now described may be used in conjunction with any network service provider (NSP).
  • NSP network service provider
  • the client software 53 will alternatively be referred to as "Cartesian brand software”.
  • the client software or "Cartesian brand software" and its operations are illustrated in FIGS. 10, 11, 12, 13 and 14.
  • the client station 10 is alternatively referred to as "user” in this description.
  • the text portions appearing in FIGS. 9 through and including 14 are hereby referred to and inco ⁇ orated in there entirety in this description of the invention.
  • the browser or network communications software 55 is not modified to include the client software 53, although in an alternative embodiment all or a portion of the client software 53 may be included.
  • the client software 53 can establish a communication channel separate from that established by the browser or network communications software 55.
  • the client software (Cartesian software) 53 establishes a communication channel with the messaging server 1010 rather than the NSP 16 or ISP.
  • the client software 53 is installed in a client station 10, residing in a memory.
  • An embodiment of the installation sequence is illustrated in FIG. 10. The text portions of that figure describe the sequence and are inco ⁇ orated herein by this reference.
  • the client software 53 creates a "Cartesian" work directory in the client station's non- volatile memory 51, such as a hard disk.
  • non- volatile memory 51 such as a hard disk.
  • Various required files associated with the client software 53 are loaded onto the non- volatile memory, including a control file and a data file.
  • the network communications software 55 is supplied to the user only with a portion of the client software 53. The remaining portions are downloaded from the messaging or Cartesian brand server 1010 on a first long in session.
  • FIGS. 10 and 11 Such a session is illustrated in FIGS. 10 and 11, where the client station 10 connects to the messaging or Cartesian brand server 1010 via communications path 102, as illustrated in FIG. 9.
  • a registration process preferably takes place, as illustrated in FIGS. 10 and 11.
  • other portions of the client software 53 also may be downloaded, preferably during waiting periods, or otherwise as required.
  • the entire client software package 53 and optionally registration materials may be supplied with the network communications software 55 or with browser software. In such cases, registration may alternatively be done on-line, as illustrated in FIGS. 10 and 11 or offline.
  • the user can install the client software 53 files, such as from a floppy disk, CD-ROM, Internet connection and so on.
  • a set-up procedure begins.
  • the client software determines a nonvolatile storage device 51 , such as a hard drive to install the program files on, as illustrated in step 1320. It then determines whether sufficient disk space is available, such as 10 MB, as illustrated in step 1330. If there is not sufficient space on the disk, an error message is displayed, as in step 1340. The software can either engage in an error recovery sequence or can abort the installation, as in step 1350. If there is sufficient disk space, processing continues, such as with step 1360 where a work directory is created on the client computer hard disk. Various data files can then be set up, as illustrated in steps 1370- 1410.
  • a control file is copied to the work directory
  • a data file can be copied
  • a run timer routine can be copied
  • a start program can be copied to a start directory, for example, as used in the WINDOWS 95 operating system.
  • Various settings can be set up after the software has been installed. For example, hide and
  • SUBST ⁇ JTE SHEET (RULE 26) protection attributes can be set for various program files, as illustrated in step 1420.
  • the client software 53 then initiates a connection sequences, as illustrated in step 1430.
  • the client software can initiate a dial-up connection, or Internet connection with a messaging or Cartesian server 1010. If a connection is not achieved, the client software 53 can try again, or proceed with a routine to encourage the user to sign up with the messaging service or service provider at a later time, as illustrated in step 1450. If a connection is achieved, the system can enter into any type of recognition sequence. In the illustrated sequence, a form is displayed for registering, an input is received from the user as illustrated in step 1450.
  • the server system 1010 determines that the registration process is complete, as illustrated in step 1460, the registration is completed. Alternatively, other registration sequences can be undertaken, such as illustrated in steps 1470 through 1490.
  • the client's software 53 can also undertake a connection check at any time to determine if the connection with the server system 1010 is active, or adequate. These steps are illustrated with respect to the registration procedure in steps 1500 through 1540.
  • FIG. 11 Another aspect of the registration process is illustrated in FIG. 11.
  • a new user can register with an NSP and with the messaging or Cartesian server 1010 with a software package supplied by the NSP.
  • the user can install the client software 53 as part of a software package received from the NSP.
  • This software can be supplied by any means such as a portable media, for example a CD-ROM or floppy disk, or alternatively, directly via a dial-up or Internet connection, as illustrated with step 1620.
  • the user can then supply information for registration for the messaging, or NSP, service as illustrated in step 1630.
  • the NSP receives the registration information as illustrated in step 1640.
  • the information can be supplied to the messaging or Cartesian server 1010, as illustrated with step 1650.
  • the messaging server preferably stores this user information in an internal data base for later use if necessary, as illustrated in step 1660.
  • the portion of the client software 53 required to be stored on the user's computer preferably is stored in a memory on that computer such as non- volatile memory 51, as illustrated in step 1670.
  • the user is now a registered user, as illustrated by step 1680.
  • FIG. 12 Operation of the client software 53 (or Cartesian brand software) and client station 10 is illustrated in FIG. 12.
  • the client station 10 is referred to in the text in FIG. 12 as "computer” in step 1100.
  • the user starts the computer, as
  • a portion of the client software preferably resides in memory, such as a TSR or memory resident program, and operates in background, as illustrated by step 1690.
  • the memory resident portion of the client software 53 monitors the client station 10 to determine if a first URL request is sent via the user's network commumcations software 55. When that first URL request is made, as illustrated in step 1700, the client software 53 opens a communications channel with the messaging or Cartesian brand server 1010, as illustrated in step 1710. Alternatively, the client software may be activated and operated in background when any link is established to the communications network 95, as illustrated with box 1720.
  • FIGS. 12 and 13 In FIG. 12, these steps are illustrated beginning with step 1710.
  • step 1730 a sign-on sequence is illustrated in which the server 1010 requests the user to enter validation information. This can either be done by requesting the user to manually input this information, or alternatively the validation information is stored on the client's system 10 and is automatically transmitted by the client software 53 to the server system 1010. The server system 1010 then determines if the validation information indicates that this is a registered or valid user, as illustrated in step 1740. If not, the sign-on sequence system may be tried again, such as by asking the user to enter the information again, or alternatively, a not- valid user ID can be sent to or stored in the server system 1010 as illustrated with step 1750.
  • the server system can then add to, or prepare a list, of not-valid user profiles, as illustrated with box 1760, or alternatively can register the user as a new user.
  • the client software can simply resume and display a first ad, as illustrated with step 1780. In this embodiment, registration is not actually required in order to display ads.
  • the handshake sequence is not required. If a handshake is completed in step 1740, processing can continue in step 1770 in which the client software 53 can send various data to the server system 1010. In order to customize the data displayed or received in the client system, the messaging or Cartesian server 1010 can prepare customized lists for each user.
  • the user ID sent out in step 1770 can be used for this pu ⁇ ose by identifying the user in any particular fashion.
  • a customization step is illustrated with box 1790.
  • the client software 53 can send a request for a list of customized information, such as an ad list to the messaging or
  • SUBST ⁇ JTE SHEET (RULE 26) Cartesian server 1010 as illustrated in step 1800.
  • the messaging or Cartesian server 1010 receives this request as illustrated in step 1810 and responds by sending a customized list, as illustrated in step 1820.
  • the server 1010 also updates its local audit file and any other tracking files, such as an ad summary file.
  • the server 1010 can update other user information characteristics, such as the last time the user requested an ad list, as illustrated in step 1830.
  • the client software 53 receives the customized list, as illustrated in step 1840 and then can begin a normal dialog session with the Internet, as well as with the messaging or Cartesian server, as illustrated in step 1850.
  • the client software 53 can then wait for a next URL request, as illustrated in steps 1860 and 1870.
  • the client software 53 starts as the operating system boots up, as illustrated with step 1880.
  • the client software 53 is loaded to operate in background and waits for a browser or other NSP communication software to be launched.
  • the various initialization or log in steps can be undertaken by the client software 53, as illustrated with steps 1890 and 1900. It should be understood that any initialization or log in sequence of steps can be used, including those as illustrated in FIG. 12.
  • an ad can be displayed between the URL request and any replay sequence, as illustrated in step 1910. This can continue as long as the browser is running, as illustrated in the loop between steps 1910 and 1920.
  • the ad transfer routine transferring new information between the messaging or Cartesian server 1010 and the client software 53 can be stopped, as illustrated in step 1930.
  • an ad transfer routine can be run in the client software 53 so as to receive information from the messaging or Cartesian server 1010 as illustrated in step 1940.
  • FIG. 13 also depicts termination of a communications session in which the communications link between the messaging or Cartesian brand server 1010 and client station 10 is ended.
  • the link may be ended by the client software 53 sending a message to the messaging or Cartesian brand server 1010 to stop sending ads or other information to the server.
  • FIG. 14 Another illustration of an Internet session enhanced with messaging or advertising material is provided in FIG. 14.
  • the messages displayed in the client station 10 contain advertising material.
  • an "ad” is shown, information is written into a file in the client station 10 and the next incoming ad is cached.
  • a link is initially established, as shown with step 1950. Any procedure for initiating the Internet session may be used, such as illustrated in FIGS. 11 - 13.
  • the client software enters into such a validation sequence, as illustrated with box 1960.
  • the server 1010 can make a list of ads, or other information, as illustrated in box 1970.
  • the messaging or Cartesian server system 1010 can compile this list based on information about the user, or can prepare a list that is uniform for all users. This list is transmitted to the client system 10. In the interim, the user can undertake a communication session, such as over the Internet, as illustrated in step 1980.
  • the down time while a URL request is being filled can be used by the client software 53 to receive the list compiled in step 1970, or to receive information or advertising information from the messaging or Cartesian server 1010, or can display previously stored information or advertising material, as illustrated in step 1990.
  • This down time between a URL request and connection with the desired website can be used throughout the Internet session to send and receive information between the client system 10 and the messaging or Cartesian server 1010, as illustrated with box 2000.
  • ads can be displayed whenever a reply to a URL request is pending. There also may be a plurality of ads displayed in this time.
  • the amount of time the information or advertising is displayed is noted and stored in a file, such as a database file, on the client system 10, as illustrated in step 2010. Also illustrated in that step, the next information or advertising material to be displayed on the client system 10 is preferably cached into a memory. If the client software 53 requests an ad or other information because it is on the list, but not stored in memory on the client system 10, the messaging or Cartesian server 1010 can send the requested information or ad, as illustrated in step 2020.
  • the client software 53 requests and receives over the communication link transmission of a first message or set of messages from the or Cartesian brand server 1010.
  • a first message or set of messages from the or Cartesian brand server 1010.
  • an initial set of three or more messages is received at that time, or are previously stored in the client station memory, preferably non-volatile memory 51. This creates an inventory of messages for display at desired times.
  • the messages may be transmitted over the communications link during waiting or idle periods.
  • the client software monitors operations over the communications link, and if specified operations are conducted, such as a request for a URL link, various steps are taken to display messages and receive additional messages.
  • the client software in one embodiment opens a back channel within the client station and monitors the TCP/IP stack to determine when the system is not actively downloading.
  • data may be transmitted from the network server (also running specialized network server software for operation in conjunction with the client software).
  • a stored message (such as a news item or advertisement) is displayed on the client station.
  • the client software preferably is written in a computer language other than HTML so that it can operate with greater level of independence from the network connection.
  • the client software is written in Virtual Basic (such as available from the Microsoft Co ⁇ oration) and compiled to create the client software.
  • the message may be displayed in a specified portion of a monitor associated with the client station or it may be made to move about the monitor screen.
  • the message may include a sound file (such as for example an "WAV" file) or have an associated sound file, which causes sounds to be played on the client station, either alone or in conjunction with the message.
  • a sound file such as for example an "WAV" file
  • additional messages may be downloaded to the client station over the communications networks. These additional messages also may be stored in memory 41 or 51, for later display. Preferably an inventory of messages is maintained in the client station memory 41 or 51, so there is no transmission time perceived by a user.
  • a user of the client station 10 may use an input device 61 such as for example a mouse, touchpad, touch screen, to click on or otherwise activate a location on the display screen 71 to cause the message to disappear.
  • an input device 61 such as for example a mouse, touchpad, touch screen
  • SUBST ⁇ UTE SHEET (RULE 26) example, the user may click on a portion of the screen not occupied by the message and the message is removed by the client software 53 from the display screen.
  • the user of the client station 10 may use the input device 61 to click on or otherwise activate the message. This may cause the client software 53 to move to a predetermined location on the display 71, such as the center of the display screen. In addition, such clicking or activation of the message may cause other operations to be performed by the client software. For example, the message may be moved to such predetermined location and then ringed with previous messages. In one example, the previous twenty-four displayed messages are displayed around the current message. In another example, compressed versions of such previously displayed messages are displayed around the current message. In another embodiment buttons corresponding to such previously displayed messages are displayed. Alternatively, any number of previously displayed messages may be displayed in any arrangement on the display 71. Such previously displayed messages are stored in memory 41 or 51 of the client station.
  • a toolbar or other selection display also may appear on the display 71 providing choices of other options.
  • the user may designate a previously displayed message, such as by clicking on it with input device 61, or otherwise activating it. The complete designated message may then be displayed, optionally with playing of associated sounds.
  • a toolbar or other selection display may also appear on the display 71, providing various options.
  • the user of the client station 10 may be given an option of accessing a web site associated with the message.
  • the message is an advertisement
  • the user may be directed to the advertiser's web site or other related area on the Internet.
  • the user may be directed to a news server or other related area on the Internet.
  • the toolbar may provide a menu of links, coupons or any service desired to be associated with the message.
  • This procedure is illustrated in steps 2030 of FIG. 14.
  • the waiting period data (i.e. messages) is preferably inventoried in memory associated with the client station 10.
  • messages received in the client station 10 are stored in a memory device in the station 10.
  • the messages may be stored in volatile memory 41 or non-volatile memory 51. Alternatively they may be cached, placed in a queue or spooled. The messages are then displayed during use of the client
  • SUBST ⁇ UTE SHEET (RULE 26) station 10 preferably while connected to the communications network 95.
  • a series of messages is received in the client station from NSP 16 and is stored.
  • the messages are displayed on the output device 71. The messages may be displayed in the order received in client station 10.
  • a timing code is placed in a header or in a designated location within the message.
  • the client software 53 searches messages, either after fully received or in a streaming fashion during message receipt, for such a timing code.
  • the client software then displays the message in accordance with the timing code, in this embodiment.
  • the messages Prior to being sent via communications path 20, the messages may be combined with other materials to be transmitted (such as sound data or associated message data) or may be modified for security pu ⁇ oses.
  • the messages may be encrypted, or compressed prior to transmission via link 20 in the encrypted or compressed form.
  • the messages are then restored to the original form in the client station using a feature of the client software 53, such as by decryption or expansion.
  • the decryption or expansion may be performed on the fly prior to as the message is being displayed on display 71, or shortly prior to display.
  • the message may be combined with other materials, such as data packets or segments prior to transmission via link 20.
  • the message is an advertisement and related news items are combined with the advertisement.
  • the message may also be divided into segments or packets prior to transmission. This may be done in the announcement server 13 or in the NSP 16.
  • One advantage of dividing the message is that smaller increments can be transmitted during shorter waiting periods.
  • the message segments or packets are reassembled in client software 53 after receipt.
  • system of the present invention performs actions within the client station 10 by using or activating program elements or machine functions already residing on the station 10, such as in volatile memory 41 or non- volatile memory 51.
  • program elements may be inco ⁇ orated in the client software 53 and/or in the network access software 55, or may be supplied via the communications network
  • SUBST ⁇ UTE SHEET (RULE 26) separately.
  • JAVA scripts, JAVA applets or other form of segmented code system may be used.
  • the messages may optionally be displayed only while a user of the client station 10 is waiting for an information request (or URL request) to be fulfilled, rather than during all waiting periods.
  • the NSP software does not need to be modified to run the announcement and database system of the present invention.
  • the systems of the present invention in this embodiment operate in conjunction with the NSP software.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

A network management and messaging system is provided whereby messages are transmitted from a remote location (16) to a client station (10) via a communications network (102). The messages are transmitted during waiting periods in the communications process. Preferably the messages are stored in the client stations (10) for display at designated times.

Description

NETWORK COMMUNICATIONS MANAGING AND MESSAGING SYSTEM
Priority is claimed from Provision Application Ser. No. 60/056,745, filed August 20, 1997, entitled, "Network Communications Managing and Messaging System. "
Field Of The Invention The present invention relates to a network managing and messaging system and method for transmitting messages over a communications system during relatively idle times during ongoing communications.
Background Of The Invention
Various forms of communications networks are known, such as local area computer networks, wide area computer networks, telephone networks, the world wide web and other aspects of the Internet. Client stations of various types can be linked to such networks, such as computers or personal computers, work stations, Internet terminals, smart telephones or conventional telephones.
In such networks, it is known that there are times when a client station is waiting for an event to occur. For example, for client station computers connected to the world wide web of the Internet a waiting period may occur while a connection to a web site has been requested but not yet accomplished. Other waiting periods may occur between packet transmissions over such networks. For example, a client station computer connected to a web site may have waiting periods during transmission of information from the web site over the Internet communications network to the client station computer. Another example of waiting periods occurs when a connection between a client station and a video server, network service provider or other remote server device, there are periods during which one of the connected devices needs to process information or a request — leading to no transmission activity. Various browser software packages are known, such as the Netscape Navigator from Netscape Communications and the Internet Explorer from Microsoft Corporation.
-1-
SUBSTΓΓUTE SHEET (RULE 26) Such software packages may be loaded onto client station computers for use in accessing the Internet. Other specialized computer communications network access software is also available. For example, various on-line service providers supply software for accessing their communications networks. Such specialized computer communications network access software is available from the America Online, Prodigy and CompuServe on-line service providers. In some embodiments of such specialized software, access is provided both to the proprietary communications network of the online service provider as well as the Internet.
Some communications client devices provide status messages to client stations during waiting periods. Such messages also may be transmitted by remote communications devices. For example, a "processing", "loading" , "waiting for connection" or "downloading" message can be transmitted.
Such waiting periods are a disadvantage of communications networks. Users of such networks my become dissatisfied with waiting periods. Likewise, waiting periods are an inefficiency leading to unused network resources, increased access times, increased costs of access and other economic and productivity inefficiencies. There is a need to productively occupy time of client stations and other communications network devices during waiting periods.
Yet another disadvantage of known systems is that they do not maintain an inventory of messages in the local user's station, leading to the possibility of idle times in message or content delivery.
There also are various techniques for providing advertising or other messaging copy to users of communications networks. For example, in typical Internet browsers, advertising may is transmitted in series or parallel fashion during transmission of a web page to a user. Advertising also may be displayed in "frames" which enclose or partially enclose or are adjacent to the web page display. Such advertising display techniques are unsatisfactory in that they are downloaded along with the web page, extending the download time for the web page, taking up screen space and perhaps frustrating the user. Summary Of The Invention
The present invention alleviates to a great extent the disadvantages of the known systems and methods for remotely connecting to communication networks by providing a system and method for detecting network waiting periods and the transmission of a
-2- SUBSTTTUTE SHEET (RULE 26) substantive message or advertising copy at a client station during the waiting period and the display of that message either during the waiting period or as soon as possible after it. Such substantive messages or advertising copy will be referred to as "waiting period data" or "messages" in this application. In a preferred embodiment of the present invention, as described more fully below, client software works in conjunction with network communications software. The client software may be installed on a client station processing system. In operation, a portion of the client software preferably resides in memory, such as a TSR or memory resident program. The memory resident portion monitors the client station to determine if a communications link is opened with the communications network. When such a link is established, the client software loads in the client station to become active in background operation. Preferably, the client software establishes a link with a separate messaging, or "Cartesian" brand server - creating a link that is separately maintained from the browser or network access software link to the network service provider. Initially after a link is established, the client software requests and receives over the communication link transmission of a first message or set of messages. These messages preferably are stored in memory within the client station, rather than immediately displayed, after they are received. This creates an inventory of messages for display at desired times. The messages may be transmitted over the communications link during waiting or idle periods. The client software monitors operations over the communications link, and if specified operations are conducted, such as a request for a URL link, various steps are taken to display messages and receive additional messages. For example, the client software in one embodiment opens a back channel within the client station and monitors the TCP/IP stack to determine when the system is not actively downloading. When it is not actively receiving data, data may be transmitted from the network server (also running specialized network server software for operation in conjunction with the client software). Alternatively, and preferably, the data may be transferred from the messaging or "Cartesian" brand server. Preferably when a URL request is made, a stored message (such as a news item or advertisement) is displayed on the client station.
The message may be displayed in a specified portion of a monitor associated with the client station or it may be made to move about the monitor screen. Likewise, the message may include a sound file (such as for example an "WAV" file) which causes
-3- SUBSTTΠJTE SHEET (RULE 26) sounds to be played on the client station, either alone or in conjunction with the message.
In addition, during waiting or idle periods, additional messages may be downloaded to the client station over the communications network. These additional messages also may be stored in memory for later display. Preferably an inventory of messages is maintained in the client station memory so there is no transmission time perceived by a user.
In the present invention, a client station generally includes a computing device having a CPU, memory storage medium, and some form of output device or output devices, such as a video display, audio speaker, or printer. The waiting period data is displayed on the output device. In one embodiment, the waiting period data is displayed as it is received, even if the entire waiting period data transmission is not completed. In another embodiment, the waiting period data is stored in memory at the client station. Once the transmission of the waiting period data is completed, it is displayed on the display device.
It is accordingly an object of the present invention is that waiting or idle times as perceived by users of client station devices is minimized. Instead of waiting idle time during waiting periods, the client station receives substantive transmissions.
Another object of the present invention is to provide an economical usage of network resources, in providing productive use of network resources.
Yet another object of the present invention is providing a means of transmitting advertising copy to client stations, without interrupting other data transmissions by taking advantage of hitherto unused, or inefficiently used, waiting periods.
A further object of the present invention is to provide client station software that operates in conjunction with browser or network access software.
Another object of the present invention is to provide client station software that maintains an inventory of messages.
A further object of the present invention is achieving increased efficiency in transmitting messages to client stations by using waiting periods for transmission, instead of other times which could otherwise be used for client communications.
An additional object of the present invention is to provide a pleasing and flexible display of advertising or other information in a client station.
-4-
SUBSTΓΓUTE SHEET (RULE 26) Brief Description Of The Drawings
The above and other objects and advantages of the invention will be apparent upon consideration of the following detailed description taken in conjunction with the accompanying drawings in which like reference characters refer to like parts throughout and in which:
FIG. IA is a block diagram illustrating an embodiment of a client station in accordance with the present invention;
FIG. IB is a block diagram of a non-volatile storage medium in accordance with the present invention as illustrated in FIG. 1; FIG. 1C is a block diagram of an embodiment of the client station and communications network in accordance with the present invention.
FIG. 2 is a block diagram of an announcement server in accordance with the present invention;
FIGS. 3A-3F are a flow diagram of an embodiment of the operation of a network communications system in illustrating an aspect of the present invention;
FIGS. 4A-4E are a flow diagram of another embodiment of the operation of a network communications system in illustrating an aspect of the present invention;
FIGS. 5A-5E are a flow diagram of another embodiment of the operation of a network communications system in illustrating an aspect of the present invention; FIGS. 6A-6E are a flow diagram of another embodiment of the operation of a network communications system illustrating an aspect of the present invention;
FIG. 7 is a flow diagram of one embodiment of an initial operation of the network communications system illustrating an aspect of the present invention;
FIGS. 8A-8D are plan views of a browser client display window; FIG. 9 is a diagram illustrating a plurality of client stations and the communications network in accordance with the present invention;
FIG. 10 is a flow diagram of an installation sequence for client software in accordance with the present invention;
FIG. 11 is a flow diagram of steps for new user registration sequence for client software, in accordance with the present invention;
FIG. 12 is a flow diagram illustrating representative operations of client software in accordance with the present invention;
-5-
SUBSTΓΠJTE SHEET (RULE 26) FIG. 13 is a flow diagram illustrating process steps in the operation of client software in a client station in accordance with the present invention; and
FIG. 14 is a flow diagram illustrating operations of client software during an Internet session in accordance with the present invention. Detailed Description Of The Invention
In accordance with the present invention, client software is executed on a client station 10 (alternatively referred to as "DTE"). As illustrated in FIG. IA, a client station 10 may be a data processing system. Typical data processing systems which may be used include mainframe computers, work stations, smart telephones, network terminals or personal computers such as desktop, notebook, laptop or palm computers. In the preferred embodiment, the data processing system used is a type of personal computer. The client station 10 may employ the present invention when utilizing a variety of operating systems and programming languages.
As illustrated in FIG. IA, a typical data processing system used for the client station 10 includes a central processing unit 21 ("CPU"), connected through a bus 30 to a variety of system components, including by way of example, volatile memory 41 (which also is called RAM or memory), no n- volatile memory 51, such as disk drives, CD-ROMs or magnetic tapes, and input device 61 , such as a keyboard, mouse, touch screen or touch pad. The system also includes a display device 71. Preferably the display device 71 includes a video display, but may also include a printing device or audio output device. A communications link 91 is provided for connecting the client station 10 with a communications network 95.
As illustrated in FIG. IB, the client station 10 of the present invention includes a non- volatile memory 51 storing data. Preferably, the non- volatile memory stores the client software 53, network commumcations software 55 and any other software required for proper operation of the client station. Such other software may optionally be stored in memory 51 in the locations illustrated as space 58 in FIG. IB. The network communications software 55 may include specialized network access software and/or browser software, such as Internet Explorer, from Microsoft Corporation or Netscape, from Netscape Communications, Inc.
As illustrated in FIG. 1C, the client station can communicate with communications network 95. Certain terminology may be used in the following description for convenience only and should not be taken to be limiting. The word "idle"
-6- SUBSTTTUTE SHEET (RULE 26) or "waiting" means that a device connected to a computer or other network device by a transmission or communications medium is not presently sending or receiving any information over the transmission medium (e.g. no data packet is presently being transmitted over the communication medium to/from the device) and thus, the transmission or communications medium is idle. The term "connected" or "linked" means that communication has been established between a device and a network service provider, thereby allowing the device access to other resources accessible by way of the network, but not necessarily that a line or path has been dedicated for the exclusive use of the device to communicate with the other devices accessible by way of the network. For instance, two devices which are connected by way of a communications network can pass data packets back and forth to each other with no two packets taking the same route or path over the network. Thus the devices are in communication, even though the two devices are not "connected" in the traditional sense by a single line or path. The terminology includes the words specifically mentioned, derivatives thereof and words of similar import. The client station 10 is connected to the communications network 95 via communications link 20. Such a link typically may include a telephonic link via a telephone network (not shown), an ISDN link, or a direct link, such as a Tl connection.
In the illustrated embodiment, the communications network 95 generally includes various computers 120 which may communicate with each other over communications paths, as is known to those of ordinary skill in the art. An example of such a communications is the Internet, which is a group of computer systems that communicate with each other by way of the communications paths. However, the communications Network 95 may also be other forms of communications networks as discussed herein and by way of examples, a private local area network or wide area network. The computers 120 may comprise any type of computer or network server, such as a mainframe computer, a midframe computer, a minicomputer, a network server, router, switch, a personal computer, a laptop computer, telephone, fax machine, or any other computing or communications device. As is known to those of ordinary skill in the art, the computers 120 may act as a host or node to which other computers may connect, or as a router for forwarding data packets between networks or computers. The communication paths may comprise any type of communication path capable of transmitting packets of information, such as voice, data, video, multimedia, realtime, store and forward, interactive, or hybrid types of information, in either analog or digital format in symmetrical or asymmetrical format, in packets, frames, cells, or in a
-7- SUBSTTTUTE SHEET (RULE 26) continuous stream or in a virtual or dedicated connection, or in any hybrid arrangement. The communications paths may be provided by private or publicly owned local, local exchange, inter-exchange, long distance, international, telecommunications, cable television, broadcast, switched, dedicated or hybrid types of network providers utilizing wireless, facilities-based, satellite-based, or hybrid types of transmission schemes and/or mechanisms, including copper wire, coaxial cable, fiber-optic cables, microwave and radio towers or satellite dishes.
A client station 10 may be connected to one of the computers 120, by way of a service provider (NSP) 16 or, in the case of the Internet, by an Internet Service Provider (ISP). The NSP 16 is may include a computer including one or more means for communicating 18 to computer network 110 including computers 120 and one or more communication paths 20 for allowing users to connect to the NSP 16. The means for communicating 18 may comprise any variety of communications means, such as an analog or digital telephone line, a coaxial cable, wireless communications means, or hybrid communications means. Such means are known to those of ordinary skill in the art and further description of such means is not required for a complete understanding of the present invention. Similarly, the connection path 20 comprise any type of communications medium for connecting to the NSP 16 which allows data to be passed therebetween, in either analog or digital form. The client station 10 may communicate with the NSP 16 using a data communications equipment (DCE), such as a modem 122, as is known to those of ordinary skill in the art. Alternatively, the client station 10 can be connected to the NSP 16 using a dedicated communications line or a digital communications line, such as an ISDN, HFC, DSL, or other type of access line provided by a local communications provider.
The client station 10 may comprise a wide variety of devices for allowing a user to connect to the NSP 16. A preferred embodiment, the client station 10 comprises a personal computer. However, it should be clearly understood by those skilled in the art from this disclosure that the present invention is not limited to such standard network terminating devices and that the client station 10, also referred to herein with the term "station", should be read to include but not be limited to devices such as televisions, video monitors, video telephones, telephones, computers, television set-top converters, video servers, front end processors, Internet appliances, fax machines, or other communications devices, and combinations or hybrids thereof connected via the computer Network 95.
-8-
SUBSTΓΓUTE SHEET (RULE 26) As is known to those of ordinary skill in the art, the client station 10 may communicate with a computer 12 on the communications Network 95 by way of the NSP
16 using browser client-server software, in which server software executes on the computer
12 and browser client software resides on the client station 10. Generally, the server software executes user requests to the computers 12 on the computer n network 95 made by the client station 10, while the browser client software comprises a user-interface, receiving input and displaying information at the client station 10. The NSP 16 routes communications between the computers 12 on the computer network 95 and the client station 10, and performs any associated administrative functions, by using standard network server equipment and software. According to a first method of 'the present invention, the NSP 16 executes a network server software program 124 and the client station 10 executes a browser client software program 126, as described in more detail below. The network server software 124 and the browser client software 126 allow announcements or messages, such as advertising messages, collectively "messages" to be transmitted from the NSP 16 to the client station 10 and stored and/or displayed on the client station 10. Preferably, to client station 10 stores the announcements for delayed display. The remainder of this description, until the section entitled "Description of A Preferred Embodiment" pertains to related material for understanding the present invention. The preferred embodiment is described in the section entitled "Description Of A Preferred Embodiment", starting below.
Messages are transmitted to the client station 10 during waiting periods, such as when connection path 102 is idle. A number of methods are described below for transmitting messages to the client station 10 during waiting periods. In a first method, the client station 10 executes the browser client software 126 and the messages are transmitted to the client station 10 whenever the connection path 20 is idle, with the client station 10 displaying the advertisements in a fixed window of the browser display area. In a second method, the client station 10 does not have the modified browser client software 126 and the NSP 16 includes a modified home page which allows the client station 10 to communicate with other devices/computers on the computer network 95 through the modified home page of the NSP 16. The advertisements are displayed in a fixed window of the modified home page of the NSP 16, with the modified home page (including advertisements) being displayed on the client station 10. In a third method, in which the client station 10 is not executing the modified browser client software 126, a code module is downloaded from the
-9-
SUBSTΓΠJTE SHEET (RULE 26) NSP 16 to the client station 10 which allows the browser to include a window for displaying the advertisements. In a fourth method, when the connection path 20 is idle, the advertisements are transmitted to the client station 10 and displayed in a transient display window. The transient window is opened on the client station 10 allowing the advertisements to be played/displayed while the connection path 20 is idle. When there are data packets to be transmitted to/from the client station 10 such that the connection path 20 is no longer idle, the transient window is either closed or made a background window. If the transient window is made a background window, the transient window is movable to the foreground upon entry of a predetermined command at the network terminating device. Traffic to and from the client station 10 is monitored to determine when the connection path 20 is idle so that announcements may be transmitted to the client station 10. Preferably, the modified network server software 124 includes means for monitoring traffic destined for the client station 10 or being generated by or transmitted from the client station 10. In an alternative embodiment, in order to prevent adversely impacting performance of the NSP 16, the NSP 16 includes a separate processor or front end processor (FEP) 128 for monitoring the traffic directed to the client station 10 or generated by the client station 10. The FEP 28 may comprise any type of processor or computer suitable for monitoring the ,traffic to/from the client station 10 and communicating with the modified network server software 124, such as an IBM compatible personal computer or a more specialized device. The FEP 28 thus monitors data traffic to determine when such traffic is being received by the NSP 16 on behalf of the client station 10 or when traffic is being generated by the client station 10, determines when to initiate, interrupt, reestablish or terminate playing or transmitting messages to the client station 10, and generates a corresponding signal to trigger such action. The present invention further comprises an advertising or announcement server 13 connected to or in communication with the NSP 16. The announcement server 13 stores and retrieves advertising messages. The advertising messages transmitted to the client station 10 may comprise text, graphics, audio, video, combinations thereof, and the like, as is known to those of ordinary skill in the art. Preferably, when a user at the client station 10 establishes communication with the NSP 16 (i.e. connects or logs on), the NSP 16 initiates a task on the announcement server 13 which determines whether the user subscribes to available advertising services, for instance by checking the user or the user's identification against a list of known subscribers stored in a database 32 of the announcement server 13.
-10-
SUBSTΓΠJTE SHEET (RULE 26) Alternatively, the NSP 16 could check if the user is a subscriber a-id the database 32 could be stored in a memory of the NSP 16. Note also that in an embodiment, the announcement, server 13 is connected to the subscriber's local NSP 16, and not to a remote host or computer 12. Each NSP 16 can have its own announcement server 13 coupled thereto for transmitting messages to individual NSP subscribers. However, the NSP 16 could be served by an announcement server 13 which is not collocated with the NSP 16. The announcement server 13 comprises a processor and associated memory separate from the NSP 16, such as a personal computer or workstation. However, it will be apparent to those of ordinary skill in the art that the functions of the announcement server 13 could be performed by the NSP 16, for instance, by executing a software program, such as a terminate and stay resident program, on the NSP 16, which fetches advertisements and transmits the advertisements to the client station 10.
Preferably, announcements are enabled by inserting a software subroutine into the network server software program 124 operating on the NSP 16. It is well known to those in the art the various ways the software can be incoφorated into the network server software 124 and, therefore, such ways are not discussed. Suffice it to say, the modified network server software 124 and the modified browser client software 126 cause data transmission procedures to be modified such that messages or announcements generated by the announcement server 13 and provided to the NSP 16 are transmitted to the client station 10 when the client station 10 is idle (i.e. not sending or receiving other data to/from the NSP 16 or another computer 120), so that the announcements are played on the client station 10, as discussed in more detail below. Alternatively, selected announcements are retrieved and downloaded to a local storage device of the client station 10 from the announcement server 13 by way of the NSP 16 when a connection is established between the client station 10 and the NSP 16. Such downloaded announcements are then played/displayed on the client station 10 as specified by the modified browser client software 126.
In the an embodiment, the announcement server 13 selects the type of announcements which are transmitted to the client station 10. The announcement server 13 can also determine the time when a particular announcement is to be played based upon a number of criteria or factors, such as but not limited to, the time of day, the day of the week, the month of the year, the Internet Protocol (IP) address of the client station 10 or the IP or universal resource locator (URL) of a computer 120, etc. If the announcement server 13 is set to determine which announcements are to be played based upon the IP address of the
-11-
SUBSTΓΠJTE SHEET (RULE 26) client station 10, the announcement server 13 reads the IP address as provided by the NSP 16 and determines the identity of the user by matching the IP address with a data record stored in the database 32 or other storage structure of the announcement server 30, such as by executing a table look up. The announcement server 13 determines which announcements are designated for the particular IP address and transmits the prestored announcements in a predetermined manner, as described in more de,— ail below. If the announcement server 13 is set to determine which announcements are to be played based upon the time of day, day of week, month of year or any other time frame reference, the announcement server 13 can access the time from a clock (not shown) located within the announcement server 30, which maintains the time of day, day of week, day of month, month of year and year. When a connection is made to the NSP 16 from the client station 10, and the announcement server 13 has been signaled to initiate a message sequence, the information from the clock is read by the announcement server 13 and compared to information located in a look-up table in the memory of the announcement server 13 to determine which messages are to be played. The announcement server 13 retrieves the designated messages while the connection path 20 is idle until the client station 10 to NSP 16 connection is terminated. It should be appreciated that, if desired, live announcements may be provided under control of the announcement server 30.
Alternatively, the type of announcements transmitted by the announcement server 13 to the NSP 16 may comprise a type of announcement selected by the user at the client station 10. For instance, the announcements transmitted to the client station 10 could be selected from different predetermined categories, such as finance related announcements, automobile related announcements, sports —elated announcements, etc. The subscriber/user can select— a category of interest and then the announcement server 13 transmits advertisements applicable to the user selected category to the client station 10. It is to be understood by those skilled in the art, that the advertisements can be of any particular subject matter and are not restricted to those mentioned above.
The announcement server 13 includes software which is capable of providing a custom menu and custom announcements to subscribers. The announcement server 13 provides customized menus for selected subscribers based upon previous menu selections made by the subscribers. -@hat is, the software contains software filters and agents which allow the software to learn (i.e., remember and act upon) a subscriber's previous menu selections and customize an individual subscriber menu based upon the previous selections
-12-
SUBSTΓΠJTE SHEET (RULE 26) or other subscriber input It is understood by those of ordinary skill in the art how to provide software including software filters and agents to provide a system which self-learns based upon previous subscriber menu selections or other subscriber input and accordingly, such software is not further discussed herein In addition to storing, retrieving and transmitting advertising messages to the client station 10, the announcement server 13 is programmed to retrieve and transmit certain types of real-time information, such as current financial information, current sports related information, etc That is, the announcement server 13 is connected to a plurality of remote processors 12 by way of the NSP 16 which have available such real-time information and continually updates a local database or storage structure 34 Then, for example, in the case of a user that subscribes to a real-time information service which provides up to the minute sports information, such sports information is retrieved from the local database 34 and transmitted to the subscriber, along with or in place of advertising messages Alternatively, a separate real-time information server 36 is provided which is continually retrieving predetermined categories or types of information so that such information is available to subscribers of real-time information service The realtime information server 36 operates preferably in an identical manner to the announcement server 13 except for the inclusion of a plurality of databases 38 for storing predetermined types of real-time information The realtime information server 36 continually updates the plurality of databases 38 by retrieving information from a variety of sources, networks or computers 12 The means and methods of retrieving and storing such information is known by those of ordinary skill in the art Preferably, the real-time information server 36 composes the same hardware as the announcement server 30
Referring specifically to Fig 2, there is shown a block diagram depicting the internal components of an embodiment of the announcement server 30 Each announcement server 13 comprises a processor or microprocessor 41, such as a microprocessor available from Intel Coφoration, for processing stored announcements and transmitting the announcements to the client station 10 of a subscriber through the NSP 16 or Network 95, although it is to be understood by those skilled in the art that any other type of computer, processor or microprocessor can be used in conjunction with the announcement server 30 A storage or memory device 42 is connected to the microprocessor 40 and acts as a mass storage device for storing the pre-recorded announcements, associated data, as well as the software necessary for control of the announcement server 13 and for associated processing The
-13- SUBSTTTUTE SHEET (RULE 26) storage device 42 preferably comprises a random access memory (RAM) and a magnetic hard disk or an optical storage device, such as, but not limited to, a CD-ROM, CD-I, or optical disk. However, it is understood by those skilled in the art that other means for storing the software and the pre-recorded announcements can also be used, such as a programmable ROM or embedded memory means.
Data relating to a specific pre-recorded announcement is transmitted from the storage device 42 to the microprocessor 40 to enable processing of the announcements. Alternatively, if the announcement server 13 includes a direct memory access, the announcement can be transmitted directly from the storage device 42 to the NSP 16 and then to the client station 10. In an embodiment, the announcement server 13 also comprises a digital audio converter or card 44 and/or a video card 46 for receiving audio or visual data and processing such data so that it can be stored in the storage device 42 and played/displayed at the appropriate time. An interface jack 48 is connected to the digital audio converter 44 to permit audio announcements to be converted to digital format for storage within the storage device 42. The interface jack 48 allows the announcement server 13 to-be updated with new announcements by uploading the announcements to the announcement server 13 from a remote location using a telephone system (not shown). The announcement server 13 can also be updated remotely through the computer network 95 in a conventional manner (e.g. new advertisements can be uploaded to the announcement server 13 from a remote processor using the computer network 95).
A clock 50 is located within or associated with the microprocessor 40 and can be used to monitor a predetermined period of time for each announcement to be displayed, if such a predetermined period of time has been specified. That is, a timing option allows a predetermined minimum display time to be specified for each advertisement. If such a predetermined minimum time is not specified, the advertisement is played/displayed until either another advertisement is ready to be played/displayed or until the user at the client station 10 aborts or terminates the session. In order to collect statistical information on the announcements displayed on the client station 10, time based data, such as the time an announcement was played, is recorded and stored within the storage device 42. The clock 50 is also capable of recording the period of time necessary for a sequence of messages or announcements to be transmitted and displayed on the client station 10. Such clocks are well known to those of ordinary skill in the art.
-14-
SUBSTΓΠJTE SHEET (RULE 26) The NSP 16 is connected to the microprocessor 40 via a communication interface device 52, which allows for the transfer of information to and from the announcement server 30. In an embodiment, the communication, interface device 52 is a digital data communications port (DDCP). Once the microprocessor 40 receives a signal from the NSP 16, an announcement is retrieved from the storage device 42 and transmitted to the NSP 16. The NSP 16 then transmits the announcement to the client station 10. The modified network server program 124 on the NSP 16 sends such a signal to the microprocessor 40 of the announcement server 13 when the communication path 20 is idle, as previously discussed. The microprocessor 40 is also connected to a main controller 54 via a communication interface 56, such as a modem. The main controller 54 acts as a main processing system for all of the advertising servers 30 connected to the NSP 16. The main controller 54 could also function as the main processing system for other advertising servers 30 connected to other NSPs connected to the network 95, although it is foreseen that each NSP 16 will have its own main controller 54. Internal software in the announcement server 13 cross-references the number of announcements played to the user at the client station 10 to the person or entity which is sponsoring each of the announcements and transmits this information to the main controller 54. In an embodiment, the sponsoring person or entity can be an advertiser or some other type of a billable or non-billable client. The main controller 54 generates a billing schedule for determining the amount which the sponsoring person or entity should be charged. Thus, the main controller 54 maintains data files and logs into its data files each announcement which is played to a particular client station 10. in an embodiment, the controller 54 records other information about the advertisements, such as statistical information, including the advertisement's file name, play time, geographical area in which the advertisement has been played, IP address-of the subscriber and/or URL of the computer 120 accessed, and any billing charge associated with the playing of the announcement. In an embodiment, the main controller 54 and the announcement server 13 are accessible by dialing to or being dialed by remote computing equipment, such as a DTE connected to a computer 120 of the computer network 95, in order to transfer billing records so that the appropriate sponsoring person or entity can be billed. In an alternative embodiment, regional computing equipment which receives billing records from remote advertising servers 30 can connect with central computing equipment for central billing and processing. Of course, such billing may also be done using the resources of the computer network 95 (e._q., via e-mail). It is to be understood by those skilled in the art, that the main controller 54 can store any other information which is considered to be pertinent to the system's billing and processing requirements.
The main controller 54 acts as the central record keeping and billing location. The main controller 54 can also remotely deliver and update all audio and/or video advertising and other announcements contained at each announcement server 30. In an embodiment, advertisements and announcements stored in the storage device 42 of the announcement server 13 are also updated by remote computing equipment which dials to (or is dialed from) the announcement server 30, as previously discussed, in order to transfer audio and video advertisements and/or messages or to delete or modify previously stored announcements or messages using the interface 48. The advertisements stored in the storage device 42 are also accessible and updatable by an authorized user or supervisor communicating with the announcement server 13 from a remote device or computer (not shown) which communicates with the announcement server 13 by way of the computer network 95. The main controller 54 may comprise either a separate computer system, such as a personal computer, or the main controller 54 may be implemented in software, such as with a terminate and stay resident (TSR) software program executing on the microprocessor 40, as will be apparent to those of ordinary skill in the art.
The announcement server 13 transmits at least one pre-recorded announcement to the client station 10 whenever the connection path 20 is idle. In an embodiment, the prerecorded announcements are played/displayed in a display window of the client station 10 for either a variable or predetermined amount of time whenever the connection path 20 to the client station 10 is idle. Generally, an announcement comprises one or more advertisements which are digitally stored within the announcement server 30. The announcement server 13 determines the type of advertisements and the duration for which the advertisements are played/displayed on the client station 10. The advertisements may be played/displayed for either a fixed or variable amount of time. For instance, one advertiser may contract to display an advertisement for five seconds and a second advertiser may contract to display an advertisement for thirty seconds or until the client station 10 is disconnected. The type of announcements to be played are determined by comparing information, such as the network address of the client station 10 or the time of day, to a look up table located within the database 32 of the announcement server 30.
-16-
SUBSTΓΠJTE SHEET (RULE 26) A playing format is determined from information stored in the database 32 about each subscriber's client station 10 or by information determined by the NSP 16. The NSP 16 determines the speed of the client station 10 access connection and relays this information to the announcement server 30. The announcement server 13 uses the connection speed to select the appropriate types of announcements or advertisements to play. That is, if the client station 10 is connected to the NSP 16 via a low speed connection or the client station 10 is not capable of handling advanced video graphics or audio messages, then only graphics and text based advertisements are selected for displaying at the client station 10. However, if the client station 10 has a high speed connection to the NSP 16 and the client station 10 is capable of playing video and/or audio messages, then advertisements including more sophisticated video and audio data are played on the client station 10. It is to be understood by those skilled in the art that any type of advertisement and or message can be generated by the announcement server 30. Once the playing format is determined, the digitally stored announcements are retrieved from the storage device 132 of the announcement server 13 by the modified network server software 124 operating on the NSP 16 and transmitted to the client station 10.
In operation, upon initiation of a service request from the client station 10, such as a search request or a request to connect to a remote computer 120, etc., the modified network server software 124 processes the request in a conventional manner. If the NSP 16 includes the FEP 28, the FEP 28 monitors the traffic destined for the client station 10 or generated by the client station 10 and determines when the connection path 20 is idle. When there is no traffic destined for the client station 10 or traffic generated by the client station 10, such that the connection path 20 is idle, the FEP 28 signals the announcement server 13 to originate, suspend, reinitiate or terminate the transmission of announcements to the client station 10. The announcement server 13 then preferably transmits digitally stored advertisements, messages or announcements to the user at the client station 10 for as long as the connection path 20 is idle. The FEP 28 also continually monitors the transmission of information between the NSP 16 and the computer network 95 (i.e. the communication paths 18) and interacts with the modified network server software 124 to determine if the user's service request has been processed and/or completed, in order to determine-if the transmission of the advertisements to the client station 10 should be suspended or terminated. The FEP 128 signals the announcement server 13 to suspend transmission of advertisements to the client station 10 when the modified network server software 124 has
-17- SUBSTTTUTE SHEET (RULE 26) data to transmit to the client station 10. The announcement server 13 then suspends transmission of the advertisements to the client station 10 to allow the modified network server software 124 to transmit the data to the client station 10 over the connection path 20. The announcement server 13 will reinitiate sending advertisements to the DTE 10 when the modified network server software 124 has finished transmitting its data to the client station 10 and if the connection path 20 is idle, as determined by the FEP 28.
Alternatively, in lieu of the FEP 28 monitoring the traffic destined for or generated by the client station 10, the modified network server software 124 could perform this function and initiate, suspend, terminate, or reestablish the transmission of an announcement sequence to the client station 10.
As is understood by those of ordinary skill in the art, a user's search results (or other activity response) usually comprises a plurality of data packets (hereinafter "response packets"). Accordingly, in an embodiment, if the network server software 124 has received one or more response packets (e._q., connection to remote host established or search results received) , the network server software 124 signals to the announcement server 13 to interrupt or terminate the announcement sequence (i.e. the transmission of announcements to the client station 10). In an alternative embodiment, described in more detail below, the network server software 124 will buffer a predetermined small amount of the response packets in a buffer prior to notifying the announcement server 13 to suspend or terminate the transmission of advertisements to the client station 10. Then, when the response packet buffer is filled or when a last response packet has been received, the network server software 124 will notify the announcement server 13 to suspend transmission of the advertisements and transmits the buffered data to the client station 10. In this manner, the announcement server 13 is able to extend by a small amount of time, such as a few seconds, the transmission of advertisements to the client station 10.
The announcement server 13 is capable of interacting with the user so that, for example, the user can obtain additional information relating to a particular announcement or select different types of advertising. At the appropriate prompt provided by the announcement server 30, a user at the client station 10 could respond by clicking on an icon or hypertext field, by pressing a key on a keyboard, touch screen or by otherwise entering and transmitting a command to the NSP 16. once the modified network server software 124 detects the assertion of a given prompt from the client station 10, the modified network server software 124 connects the client station 10 to the remote computer 120 of the
-18-
SUBSTΓΓUTE SHEET (RULE 26) advertiser, as specified by an URL embedded in the hypertext field. For example, if the announcement relates to a sale at a particular re„-ail store, the client station 10 can be connected to the retail store or a home page of the retail store automatically to obtain additional information or purchase the advertised product on-line. Alternatively, the announcement server 13 can provide, upon a given prompt by the user, the network address (or other contact information) of the advertiser to the user so that the user may later access the home page of the advertiser, telephone the advertiser, or otherwise contact or obtain the desired further information.
The announcement server 13 is also capable of inquiring if the user wishes to be sent follow up information. If the user answers in the affirmative, the announcement server 13 can record the name and address or fax number or e-mail address of the user and establish a customer mailing list therefrom. The user responds to the announcement server 13 by either clicking on a predetermined icon or field of the display or a using a keyboard to enter a command, or a voice activated response which is transmitted to the announcement server 30, which records the user's response. In addition, the announcement server 13 can provide a recorded customer list which can become a permanent part of the sponsoring person or entity's records and be included along in billing invoices. It is to be noted that at the completion of any option of the system, the system can determine billing and record relevant data about the advertisements which were played. The announcement server 13 can also provide users with a directory type service whereby a user can browse through an advertiser's product listings. Such a service would be advantageous if a sponsoring person or entity produced or manufactured a large number of products. Along with the listing, a user has the capability of requesting additional information, such as, but not limited to prices and quantity. As discussed above, if the user wishes to obtain additional information, the user can assert a given prompt to cause the announcement server 13 to connect the user to the advertiser (e.g., a remote computer 120).
Referring specifically to Figs. 3-6, there are shown flow diagrams depicting the various methods of providing advertisements to the client station 10 while the connection path 20 is idle. While each of the methods is different, each method is part of an overall system for providing the advertisements to the client station 10, as will become apparent when reviewing Fig. 7. In addition, although the flow diagrams often show duplicative steps, it will be understood by those skilled in the art that such steps could comprise a single software procedure or subroutine.
-19- SUBSTTTUTE SHEET (RULE 26) Referring now to Figs. 3A-3F, the first method of transmitting advertising messages to the client station 10 is shown. According to the first method, the browser client program operating on the client station 10 is modified to operate with two or more simultaneously active display windows, using the modified browser client software program 26. That is, the modified browser client program 26 allows a second, fixed announcement window to be displayed, in addition to the standard browser display window. Fig. 8 A shows a monitor viewing area 60 of the client station 10 in which the modified browser client program 26 user interface 62 is displayed. The user interface 62 includes the standard browser display area 64 and the fixed announcement window 66. The standard browser display area 64 is conventional and the fixed announcement window 66 displays the advertisements which are transmitted to the client station 10 when the connection path 20 is idle. The modified browser 62 also includes such conventional items as a status bar 68 and an URL entry area 70. Preferably ' the fixed announcement window 66 is smaller in size than the standard browser display area 64. According to the invention, one or more advertisements are continually displayed in the fixed announcement window 66. Although the advertisements are transmitted to the client station 10 when the connection path 20 is idle, the last advertisement to be displayed prior to the connection path 20 becoming busy will continue to be displayed while the connection path 20 is busy. The advertisement will thus remain displayed until such time as the connection path 20 is no longer busy and another advertisement is transmitted to the client station 10 or until the user aborts or terminates the session.
Beginning at step 100, a user at a first station or the client station 10 executes the modified browser client software program 26. The browser client software program 26 initially determines the NSP connection type at step 102, as either a dial-up connection or a dedicated line connection. If the NSP connection type is a dial-up connection, then the browser client software program 26 interacts with the modem 20 to establish a dial- up connection with the NSP 16 at step 104 in a conventional manner. The modified network server software 24 executing at the NSP 16 then answers the call, authenticates the user and assigns the user an IP address. The method then proceeds to step 106. Alternatively, if the NSP connection type is a dedicated line, as opposed to a dewlap connection, as determined at step 102, then the method skips step 104 and proceeds with step 106. At step 106, the modified network server software 24 determines whether the user is a subscriber to the information service of the present invention. At step 108, if
-20-
SUBSTΠΌTE SHEET (RULE 26) the user is not a subscriber, as determined in step 106, then the method proceeds with step 110 and if the user is a subscriber, the method proceeds with step 120.
At step 110, the modified network server software 24 queries the user to determine if the user desires to become a subscriber to the information service. The modified network server software 24 may query the user by transmitting a query to the client station 10, the query includes a response field for allowing the user to easily respond to the query, by either entering a response using a keyboard, clicking on an icon, clicking on a highlighted field, or otherwise responding to the query in a manner known to those of skill in the art. At step 112, the user's response is determined and if the user answers the query in the negative, the method proceeds with step 114, in which case standard Internet message handling occurs such that the announcement server 30 does not interact with the client station 10, as noted at step 116. If the user responds affirmatively to the query for information service, then at step 118, the modified network server software 24 negotiates a type of information service to be provided to the user, such as real-time information services or advertising services, described in more detail below. At step 120, if advertising services have been selected, execution proceeds with step 122 (Fig. B) At step 122, the user requests a network or Internet service, as is known by those of ordinary skill in the art, by typing in a URL and entering return or clicking on an icon, or clicking on a highlighted keyword, etc. , which causes the client station 10 to transmit a command to the NSP 16. At step 124, the modified network server software 24 reads the user's service request packets (data packets are formed by the browser client software program 26 and transmitted to the network server software program 24 as is known by those of ordinary skill in the art). The service request packets include an IP address and/or an URL. At step 126, the modified network server software 24 routes the service request packet over the computer network 101 for execution by a remote host computer 12, as specified in the request packet. During this sequence of events, either the modified network server software 24 or the FEP 28 is monitoring the traffic destined for or generated by the client station 10. At step 128, the modified network server software 24 or the FEP 28 sets a flag signaling that the connection path 20 is idle. When the announcement server 30 learns that the connection path 20 is idle (for example, by checking the status flag), the announcement server 30 begins executing an advertising sequence. An advertising sequence comprises the generation (e.g. fetch from storage) and transmission of at least one generally continuous
-21- SUBSTTTUTE SHEET (RULE 26) advertising message or preferably, a sequence of advertisements to the client station 10 while the connection path 20 is idle. At step 130, the announcement server 30 checks the database 32 to determine appropriate advertising messages to be transmitted to the user at the client station 10 and begins transmitting messages to the user by way of the NSP 16 and the modified network server software 24 for display in the announcement window 66 of the modified browser client program 26.
Proceeding now to Fig. 3C, preferably the advertising messages transmitted to the client station 10 include an interaction means for permitting the user at the client station 10 to respond to the advertising messages and interact with the announcement server 30. For instance, the user could initiate a predetermined response by entering a command in the fixed announcement window 66 in which the advertising messages are being displayed, such as by clicking on an icon or clicking on a highlighted field (i.e. hypertext, or text with a hyperlink).
When the user's service request, initiated at step 122, is completed or being serviced, a response packet is transmitted from the remote computer 12 to the NSP 16 where it is received by the modified network server software 24, which in turn notifies the announcement server 30 to discontinue transmitting the announcement sequence to the client station 10. In an alternative embodiment, the FEP 28 detects that the response packet is for the client station 10 and informs the announcement server 30 (either directly or indirectly through the modified network software 24) that a response packet for the client station 10 has been received and to discontinue transmitting advertising messages to the client station 10. For instance, the FEP 28 sets a flag or status bit which is periodically checked by the modified network server software 24. Thus, at step 132, the modified network server software 24 checks to determine if such a response packet has been received (i.e. that the flag has been set). If a response packet has been received, the modified network server software 24 branches to step 134 and if a response packet has not been received, execution proceeds with step 136. At step 136, the announcement server 30 checks to determine if the transmission of advertising messages to the client station 10 is complete. If there are messages remaining to be transmitted to the DTE, at step 138, the announcement server 30 queries the modified network server software 24 to determine if the user has aborted the session, such as by disconnecting from the ΝSP 16. If the user has not aborted the session, and the advertising transmission is not yet complete, the announcement server 30 continues to
-22- SUBSTTTUTE SHEET (RULE 26) transmit messages to the client station 10 at step 140. In addition to transmitting advertisements to the client station 10, the announcement server 30 can also optionally transmit network status messages to the client station 10.
Referring to Fig. 3D, if the user aborted the session, as determined at step 138, then at step 142, the announcement server 30 executes a logout procedure, which logs or records all relevant information about the advertising messages that were transmitted to the client station 10, and stores such information in a database in its storage device
32, and then finishes processing at step 116.
Referring back to Fig. 3C, if the remote computer 12 has transmitted a response packet back to the modified network server software 24, as determined at step 132, then at step 134, the modified network server software 24 notifies the announcement server 30 to suspend transmission of the advertising messages to the client station 10. The modified network server software 24 then determines if the response packet transmission from the client station 10 is complete at step 144. If the transmission is not complete, the modified network server software 24 waits (i.e. loops) until the response packet transmission is complete before executing step 146. Step 146 determines if a final response packet has been received from the remote computer 12 (for example, indicating that a search has been completed, along with the results of the search). If a final response packet has not been received, the modified network server software 24 notifies the announcement server 30 to resume execution (step 136), as previously described. However, if a final response packet has been received, as determined at step 146, then at step 148, the announcement server 30 determines if the advertising transmission is complete. If the advertising transmission is complete as determined at either step 148 or step 136, then the announcement server 30 checks to determine if an advertising timing option is enabled, at step 150. The advertising timing option is an option which allows a time limit to be set for displaying advertising messages. The timing option is enabled (turned on) by setting a gate or flip-flop in the announcement server 30, or by setting a bit in a register associated with a particular subscriber or with a particular advertisement. For instance, some advertisements may be set to be displayed for 5 seconds and other advertisements may be set to be displayed for 30 seconds, of course, it will be apparent to those of ordinary skill in the art that advertisements can be set to be displayed for any length of time. Execution proceeds to step 152 if the timing option is not enabled, in which case the last advertisement is displayed in the fixed
-23-
SUBSTΓΠJTE SHEET (RULE 26) announcement window 66 until the connection path 20 is idle again and a new advertisement is transmitted to the client station 10 (step 122), or until the user aborts the session (step 142).
Referring now to Fig. 3E, if at step 150, the advertising timing option is enabled, then execution proceeds to step 158. At step 158, according to the advertising timing option, the announcement server 30 determines if the display time (i.e. , the time spent displaying a particular advertisements on the client station 10) exceeds a predetermined time limit. If the predetermined time limit has not been exceeded, the announcement server 30 continues to display the current advertisement and continues to check the display time against the predetermined time limit. If the predetermined time limit has been exceeded, as determined at step 158,, then at step 160, the announcement server 30 checks (via the modified network server software 24) if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout procedure at step 142. If the user has not aborted the session, as determined at step 160, then the announcement server 30 returns to step 130, and checks its database for further appropriate advertising messages to be transmitted to the client station 10.
If at step 148, it was determined that the advertising transmission was not yet complete, then at step 154, the announcement server 30 queries the modified network program 24 if the user has aborted the session. If the user has aborted the session, then the announcement server 30 branches to the logout procedure at step 142. If the user has not aborted the session, then the announcement server 30 continues to transmit advertising messages, as indicated at step 156 and continues transmitting messages until either the transmission of messages is complete, as determined at step 148, or until the user has aborted the session, as determined at step 154. Referring now to Fig. 3F, if at step 120, the user selected real-time information service, then at step 162, the modified network server software 24 transmits IP address information to the real-time information server 36 and signals the real-time information server 36 to begin executing an information sequence. The real-time information service provides up to date (real-time) information to the user in the fixed announcement window 66 at the client station 10 whenever the connection path 20 is idle. At step 164, the information server 36 checks a database to determine which real-time information service to provide to the user (i.e. what type if information to send, such as sporting event scores or financial information). At step 166, the information server 36 begins
-24-
SUBSTΓTUTE SHEET (RULE 26) transmitting real-time information to the client station 10 for display in the fixed announcement window 66. At step 168, the modified network server program 24 checks to determine if a request or a response packet has been transmitted from the remote computer 12 to the NSP 16. If a request or response packet has not been transmitted from the remote computer 12, then the modified network server software 24 checks to determine if the user has aborted the present session at step 170. If the user has not aborted the session, then the information server 36 continues to transmit real-time information to the client station 10 at step 172.
If the user has aborted the session, then at step 174, the modified network server software 24 notifies the information server 36 and the information server 36 logs or records all relevant information pertaining to the current session and terminates processing at step 176.
If at step 166, a request or response packet is present, then at step 178, the modified network server software 24 notifies the information server 36 to suspend transmission of real-time information to the client station 10 so that the response packets may be transmitted to the client station 10. The response packets are transmitted to the client station 10 by way of the connection path 20 until there are no more response packets present (step 180). When there are no more request or response packets present, step 170 is executed. Step 170 checks if the user has aborted the session. If the user has not aborted the session, the real-time information server 36 reinitiates the transmission of real-time information, as indicated at step 172. Otherwise, if the user has aborted the session at step 170, then at step 174, the information server 36 logs or records all relevant information pertaining to the current session and terminates processing at step 176. Referring now to Figs. 4A-4E, the second method of playing/displaying advertisements at the client station 10 while the connection path 20 is idle is shown. According to the second method, the user at the client station 10 communicates with the computer network 101 using an "access" page of the NSP 16 as the user's window to the computer network 10. The home page of the NSP 16 is modified and this modified home page is viewed by the user at the client station 10. The advertisements are displayed in a fixed area of the NSP modified home page. According to this second method, the client station 10 operates under the control of a conventional browser client program and not the modified browser client program 26.
-25- SUBSTTTUTE SHEET (RULE 26) Fig. 8B shows the monitor viewing area 60 of the client station 10. A standard browser client program executes on the client station 10 and includes a conventional user interface 72 displayed on the monitor viewing area 60. The user interface 72 includes a conventional status bar 73 and URL display area 74. Since the user at the client station 10 is accessing the computer network 101 by way of the modified home page or access page of the NSP 16, the URL of the ΝSP access page is displayed in the URL display area 74. The modified network software 24 displays a modified browser client window 75, which is displayed in the display area of the user interface 72 of the standard browser client program at the client station 10. The modified browser client window 75 includes a fixed announcement window 76, a browser display area 77 and an URL entry area 78, similar those of the modified browser 62. Preferably, the browser display area 77 has a greater display area than the fixed announcement window 76. The fixed announcement window 76 is used to display advertisements. According to the present invention, preferably one or more advertisements are continually displayed in the fixed announcement window 76.
Referring now to Fig. 4A, beginning at step 200, a user at a first station or client station 10 executes a conventional browser client software program. The browser client software program determines the ΝSP connection type at step 202, as either a dial-up connection or a dedicated line connection. If the ΝSP connection type is a dial-up connection, then the browser client software program interacts with the modem 20 in a conventional manner to establish a dial-up connection with the ΝSP 16 at step 204. The modified network server software 24 answers the call, authenticates the user and assigns the user an IP address. The method then proceeds to step 206.
Alternatively, if the ΝSP connection type is a dedicated line, as opposed to a dial- up connection, as determined at step 202, then the method skips step 204 and proceeds with step 206. At step 206, the user reaches the access page of the ΝSP 16 to access the advertising service by entering an URL, clicking on an icon, or as a result of a browser default setting. At step 208, the modified network server software 24 interacts with the user and determines whether the user is a subscriber to the information service of the present invention at step 210. If the user is not a subscriber, then the method proceeds with step 212 and if the user is a subscriber, the method proceeds with step 222.
-26- SUBSTTTUTE SHEET (RULE 26) At step 212, the modified network server software 24 queries the user to determine if the user desires to become a subscriber to the information service. Preferably, the modified network server software 24 queries the user by displaying a query on the NSP access page being displayed on the client station 10. The query preferably includes a response field for allowing the user to easily respond to the query, by either entering a response using a keyboard, clicking on an icon, clicking on a highlighted 'field, or otherwise responding to the query in a manner known to those of skill in the art. At step 214, the user's response is determined and if the user answers the query in the negative, the method proceeds with step 216, in which case standard Internet message handling occurs such that the announcement server 30 does not interact with the client station 10, as noted at step 218. If the user responds affirmatively to the query for information service, then at step 220, the modified network server software 24 negotiates a type of information service to be provided to the user, such as real-time information services or advertising services, described in more detail below. At step 222, if advertising services have been selected, execution proceeds with step 224 (Fig. 4B) and if real-time information services have been selected, then the method proceeds with step 262 (Fig. 4E).
At step 224, the user requests an Internet service from within the access page or modified browser client window 75 of the modified network server software 24 displayed on the client station 10, as is known by those of ordinary skill in the art, by typing in a URL and entering return or clicking on an icon or a highlighted keyword, etc., which causes the client station 10 to transmit a command to the NSP 16. At step 226, the modified network server software 24 receives the user's service request. The service request includes an IP address and/or an URL. At step 228, the modified network server software 24 routes the service request over the computer network 101 for execution by a remote host computer 12, as specified by the request. At step 230, the modified network server software 24 notifies the announcement server 30 to begin executing an advertising sequence. As with the first embodiment, an advertising sequence is at least one generally continuous advertising message or preferably, a sequence of announcements which are repeatedly generated by the announcement server 30. At step 232, the announcement server 30 checks its database 32 to determine appropriate advertising messages to be played/displayed to the user a, -the client station
-27-
SUBSTΓΠJTE SHEET (RULE 26) 10 and begins transmitting messages to the modified network server software 24 for display in the fixed announcement window 76.
Proceeding now to Fig. 4C, preferably the advertising messages displayed in the fixed announcement window 76 include an interaction means for permitting the user at the client station 10 to respond to the advertising messages and interact with the announcement server 30. For instance, the user could initiate a predetermined response by entering a command in the fixed announcement window 76 in which the advertising messages are being displayed, such as by clicking on an icon or clicking on a highlighted field (i.e. hypertext, or text with a hyperlink). In addition, the user may execute a standard network request from the modified browser display area 77 in a conventional manner. Upon processing of the user's network service request, such as a connection made to a remote host 12, then the remote host 12 sends a response packet to the NSP 16, as is known by those of ordinary skill in the art. At step 234, either the modified network server software 24 or the FEP 26 in conjunction with the modified network server software 24 checks to determine if a response packet for the client station 10 has been received. If a response packet has been received, the modified network server software 24 informs the announcement server 30 that such a response packet has been received and to suspend the transmission of the advertisements (step 236). If a response packet has not been received, the announcement server 30 checks to determine if the transmission of advertising messages to the modified network server software 24 is complete (step 238). If there are messages remaining to be transmitted to the modified network server software 24, at step 240, the announcement server 30 checks to determine if the user has aborted the session, such as by disconnecting from the NSP 16. If the user has not aborted the session, and the advertising transmission is not yet complete, the announcement server 30 continues to transmit messages to the modified network server software 24 at step 242.
If the user aborted the session, as determined at step 240, then the advertising server executes the logout procedure at step 142 (Fig. 3D), which logs or records all relevant information about the advertising messages that were played/displayed, stores such information in its database 32, and then finishes processing at step 116.
If a response packet has been received by the modified network server soft-ware 24, as determined at step 234, then at step 236, the modified network server software 24 notifies the announcement server 30 to suspend transmission of the advertising
-28-
SUBSTΓΓUTE SHEET (RULE 26) messages. The modified network server software 24 then determines if the response packet transmission from the remote computer 12 is complete at step 244. If the transmission is not complete, the modified network server software 24 waits until the response packet transmission is complete, and then proceeds to step 246. At step 246, the modified network server software 24 determines if a final response packet has been received from the remote computer 12. If a final response packet has not been received, previously described step 238 is executed. However, if a final response packet has been received, then at step 248 the announcement server 30 determines if the advertising transmission is complete, if the advertising transmission is complete as determined at either step 248 or step 238, then the announcement server 30 checks to determine if an advertising timing option is enabled, at step 250. As previously discussed, the advertising timing option allows the announcement server 30 to play /display advertising messages for a predetermined time period.
Referring now to Fig. 4D, if at step 250, the advertising timing option is enabled, then execution proceeds to step 258. At step 258, according to the advertising timing option, the announcement server 30 determines if the display time (i.e., the time an advertisements is played/displayed) exceeds a predetermined time limit, if the predetermined time limit has not been exceeded, then the announcement server 30 continues playing/displaying of the current advertisements until the time limit has been reached or exceeded. Once the predetermined time limit has been exceeded, as determined at step 258, then at step 260, the announcement server 30 checks to determine if the user has aborted the session, if the user has aborted the session, the announcement server 30 executes the logout procedure at step 142 (Fig. 3D). If the user has not aborted the session, as determined at step 260, then the announcement server 30 returns to ster 232 (Fig. 4B), and checks its database for further appropriate advertising messages to be transmitted to the client station 10.
If the advertising timing option is not enabled, then at step 252, the announcement server 30 determines if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout procedure at step 142 (Fig. 3D), and if the user has not aborted the session, the announcement server 30 returns to step 224 to begin executing a new advertising sequence.
If at step 248, it was determined that the advertising transmission was not yet complete, then at step 254, the announcement server 30 determines if the user has
-29-
SUBSTΓΓUTE SHEET (RULE 26) aborted the session. If the user has aborted the session, then the announcement server 30 executes the logout procedure at step 142. If the user has not aborted the session, then the announcement server 30 continues to transmit advertising messages, as indicated at step 256 and continues transmitting messages until either the transmission of messages is complete, as determined at step 248, or until the user has aborted the session, as determined at step 254.
Referring now to Fig. 4E, if at step 222, the user selected real-time information service, then at step 262, the modified network server software 24 transmits IP address information to the real-time information server 36 and signals the real-time information server 36 to begin executing an information sequence. At step 264, the information server 36 checks the database 38 to determine which real-time information service to provide to the user. At step 266, the information server 36 begins transmitting real-time information to the modified network server software 24 for display in the fixed announcement window 76. At step 268, either the modified network server software 24 or alternatively the modified network server software 24 in conjunction with the FEP 28, checks to determine if a request or a response packet has been transmitted from the host computer 12. If a request or response packet has not been transmitted from the host computer 12, then the modified network server software 24 checks to determine if the user has aborted the present session at stem 270. if the user has not aborted the session, then the information server 36 continues to transmit real-time information to the modified network server software 24 at step 272. However, if the user has aborted the session, then at step 274, the information server 36 logs or records all relevant information pertaining to the current session and terminates processing at step 276.
If at stem 268, a request or response packet is present, then at step 278, the modified network server software 24 notifies the information server 36 to suspend transmission of real-time information to the client station 10 so that the response packets may be transmitted to the client station 10. The response packets are transmitted to the client station 10 by way of the connection path 20 until there are no more response packets present (step 280). When there are no more request or response packets present, step 270 is executed. Step 270 checks to determine if the user has aborted the session. If the user has not aborted the session, the real-time information server 36 continues the transmission of real-time information, as indicated at step 272. otherwise, if the user has aborted the session, then at step 274, the information server 36 logs or records all
-30-
SUBSTΓΓUTE SHEET (RULE 26) relevant information pertaining to the current session and terminates processing at step 276.
Referring now to Figs. 5A-5E, the third method of displaying advertisements on the client station 10 while the connection path 20 is idle is shown. According to the third embodiment, the user at the client station 10 is executing a conventional browser client software program. Thus, in order to play /display advertisements on the client station 10, a software executable module is downloaded from the NSP 16 to the client station 10 when the client station 10 connects to the NSP 16. The downloaded module, executing on the client station 10, works in conjunction with the conventional browser client software program, to provide a fixed display window in which the advertisements may be displayed, which is in addition to the conventional browser display window.
Fig. 8C shows the monitor viewing area 60 of the client station 10. A standard browser client program executes on the client station 10 and includes a conventional browser user interface 72 displayed on the monitor viewing area 60. The user interface 72 includes a conventional status bar 73, URL display area 74, and display window 79. The downloaded coded module provides a modified browser display 80 which is displayed within the conventional display window 79.
The modified browser display 80 includes an URL entry area 81, a fixed announcement window 82 and a browser display area 83. The user at the client station 10 accesses the computer network 101 by way of the NSP 16. However, with the downloaded code module executing on the client station 10, the NSP 16 is able to transmit advertisements to the client station 10 which are displayed in the fixed announcement window 82. Preferably, the browser display area 83 has a greater display area than the fixed announcement window 82. According to the present invention, preferably one or more advertisements are continually displayed in the fixed announcement window 82.
Referring to now to Fig. SA, beginning at step 300, a user at a first station or client station 10 executes a conventional browser client software program. The conventional browser client software program initially determines the NSP connection type at step 302, as either a dial-up connection or a dedicated line connection. If the NSP connection type is a dial-up connection, then the browser client software program interacts with the modem 20 to establish a dial-up connection with the modified network server software 24 at step 304. The modified network server software 24 then answers
-31-
SUBSTΓΠJTE SHEET (RULE 26) the call, authenticates the user and assigns the user an IP address. The method then proceeds to step 306. Alternatively, if the NSP connection type is a dedicated line, as opposed to a dial-up connection, as determined at step 302, then the method skips step 304 and proceeds with step 306. At step 306, the user reaches the home page of the NSP 16 by entering a URL, clicking on an icon, or as a result of a browser default setting. The home page of the NSP 16, according to the third method includes a means for selecting an information access window. It is preferred that the means for selecting comprises an icon, however, it will be apparent to those of ordinary skill in the art that other means may be used, such as a hypertext link. At step 308, the user clicks on the icon, which instructs the modified network server software 24 to download an information access window code module to the client station 10, and at step 310, the modified network server software 24 downloads the information access window code module to the client station 10. With the information access window code module now operating on the client station 10, the modified browser display 80 is displayed on the client station 10.
At step 312, the type of service desired, such as advertising service or real-time information service, is selected by the user at the client station 10 by responding to a prompt or clicking on an icon, if real-time information service is requested, then the method proceeds to step 354 (Fig. SE) and if advertising services are selected, then the method proceeds to step 314 (Fig. SB).
At step 314, the user requests an Internet service from within the browser display area 83 in a conventional manner, such as by typing in a URL and entering return or clicking on an icon or a highlighted keyword, etc. , which causes the client station 10 to transmit a command to the modified network server software 24. At step 316, the modified network server software 24 reads the user's service request data packets. The service request packets include an IP address and/or an URL. At step 318, the modified network server software 24 routes the service request packets over the computer network 101 for execution by a remote host computer 12, as specified in the request packet. At step 320, the modified network server software 24 notifies the announcement server 30 to begin executing an advertising sequence. As with the first embodiment, the advertising sequence comprises playing/displaying at least one generally continuous advertising message or preferably, a sequence of advertisements which are repeatedly generated by the announcement server 30. At step 324, the announcement server 30
-32- SUBSTTTUTE SHEET (RULE 26) checks its database 32 to determine appropriate advertising messages to be transmitted to the user at the client station 10 and begins transmitting messages to the user by way of the modified network server software 24, for display in the fixed announcement window 82 at the client station 10. Proceeding now to Fig. SC, preferably the advertising messages transmitted to the client station 10 include an interaction means for permitting the user at the client station 10 to respond to the advertising messages and interact with the announcement server 30. For instance, the user could initiate a predetermined response by entering a command in the fixed announcement window 82, such as by clicking on an icon or clicking on a highlighted field (i.e. hypertext, or text with a hyperlink). The user may also initiate an activity by way of the browser display area 83. When the user's network service request is completed, a response packet is transmitted to the modified network server software 24 by the remote computer 12, as is known by those of ordinary skill in the art. Either the modified network server software 24 or alternatively, the FEP 28 in conjunction with the modified network server software 24, signals the announcement server 30 that the connection path 20 is no longer idle, since the response packets need to be transmitted over the connection path 20 to the client station 10. At step 326, the announcement server 30 checks to determine if such a response packet has been received. If a response packet has been received, the announcement server 30 branches to step 328 and if a response packet has not been received, execution proceeds with step 330.
Step 330 is reached if the connection path 20 is still idle. At step 330, the announcement server 30 checks to determine if the transmission of advertising messages to the client station 10 is complete. If there are messages remaining to be transmitted to the client station 10, at step 332, the announcement server 30 checks to determine if the user has aborted the session, such as by disconnecting from the NSP 16. If the user has not aborted the session, and the advertising transmission is not yet complete, the announcement server 30 continues to transmit messages to the modified network server software 24, which in turn passes the messages over the connection path 20 to the client station 10 (step 334).
If the user aborted the session, as determined at step 332, then the announcement server 30 executes the logout procedure at step 142 (Fig. 3D), which logs or records all relevant information about the advertising messages that were transmitted to the client
-33-
SUBSTΓΓUTE SHEET (RULE 26) station 10, stores such information in a database, and then finishes processing at step 116.
If at step 326 a response packet for the client station 10 was detected, then at step 328, the modified network server software 24 notifies the announcement server 30 to suspend transmission of the advertising messages to the client station 10. The modified network server software 24 then determines if the response packet transmission is complete at step 336. If the transmission is not complete, the modified network server software 24 waits until the response packet transmission is complete (loop on step 336)' before executing step 338, which determines if a final response packet has been received. If a final response packet has not been received, the announcement server 30 executes step 330, as previously described. However, if a final response packet has been received, then at step 340, the announcement server 30 determines if the advertising transmission is complete.
If the transmission of advertising messages to the client station 10 is complete as determined at either step 340 or step 330, then the announcement server 30 checks to determine if an advertising timing option is enabled, at step 342. As previously discussed, the advertising timing option allows advertisements to be played/displayed for a predetermined time period.
Referring now to Fig. 5D, if the advertising timing option is enabled, then the announcement server 30 determines if the display time (i.e. , the time spent displaying messages on the client station 10) exceeds a predetermined time limit (step 350). If the predetermined time limit has not been exceeded, the announcement server 30 continues to display the advertisement until the predetermined time limit is reached or exceeded. Once the predetermined time limit has been exceeded, then at step 352, the announcement server 30 checks to determine if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout procedure at step 142 (Fig. 3D). If the user has not aborted the session, then the announcement server 30 returns to step 324 (Fig. 5B), and checks its database for further appropriate advertising messages to be transmitted to the client station 10. If the advertising timing option is not enabled, then at step 344, the announcement server 30 determines if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout procedure at step
-34- SUBSTTTUTE SHEET (RULE 26) 142, and if the user has not aborted the session, the announcement server 30 branches to step 314 to begin executing a new advertising sequence.
If at step 340, it was determined that the advertising transmission was not yet complete, then at step 346, the announcement server 30 determines if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout procedure at step 142. If the user has not aborted the session, then the announcement server 30 continues to transmit advertising messages (step 348) until either the transmission of messages is complete or until the user has aborted the session. Referring now to Fig. 5E, if at step 312, the user selected real-time information service, then at step 354, the modified network server software 24 transmits IP address information to the real-time information server 36 and signals the real-time information server 36 to begin executing an information sequence. At step 356, the information server 36 checks the database 38 to determine which real-time information service to provide to the user (e.g. sports, finance, etc.) or the user may select a particular type of information. At step 358, the information server 36 begins transmitting real-time information to the modified network server software 24, which in turns transmits the information to the client station 10 for display in the fixed announcement window 82. The modified network server software 24 or alternatively, the FEP 28 monitors the traffic destined for or generated by the DTE 10 to determine when the connection path 20 is idle. At step 360, the modified network server software 24 checks if there is any data to be transmitted to the client station 10. If a request or response packet has not been transmitted from the computer 12, then the information server 36 checks to determine if the user has aborted the present session at step 362. If the user has not aborted the session, then the information server 36 continues to transmit real-time information to the client station 10 by way of the modified network software 24 (step 364). However, if the user has aborted the session, then at step 366, the information server 36 logs or records all relevant information pertaining to the current session and terminates processing at step 368.
If at step 360, a request or response packet is detected, then at step 370, the modified network server software 24 notifies the information server 36 to suspend transmission of real-time information to the client station 10 so that the response packets may be transmitted to the client station 10. The response packets are transmitted to the client station 10 by way of the connection path 20 until there are no more response
-35-
SUBSTΓΓUTE SHEET (RULE 26) packets present (step 372). When there are no more request or response packets present, step 362 is executed. Step 362 checks if the user has aborted the session. If the user has not aborted the session, the real-time information server 36 reinitiates the transmission of real-time information (step 364). Otherwise, if the user has aborted the session, then at step 366, the information server 36 logs or records all relevant information pertaining to the current session and terminates processing at-step 368.
Referring now to Figs. 6A-6E, the fourth method of playing/displaying advertisements on the client station 10 while the connection path 20 is idle is shown. In the fourth embodiment, the user at the client station 10 accesses the NSP 16 using a conventional browser client software program. The NSP 16 executes the modified network server software 24, which transmits advertisements to the client station 10 when the connection path 20 is idle, with the advertisements being displayed in a transient display window on the client station 10. That is, the transient window pops up on the display area of the client station 10 whenever the advertisements are being transmitted to the client station 10 and disappears whenever the connection path 20 is otherwise busy. By disappearing, the transient window is either no longer displayed on the client station 10 or alternatively, the transient window is moved to or made a background window. If the transient window is made a background window, then the transient window is movable to the foreground upon entry of a predetermined command at the client station 10, as is known by those of ordinary skill in the art.
Fig. 8D shows the monitor viewing area 60 of the client station 10. A standard browser client program executes on the client station 10 and includes a conventional browser user interface 72 displayed on the monitor viewing area 60. The user interface 72 includes a conventional status bar 73, URL display area 74, and display window 79. A transient window 84 is preferably displayed in the display window 79 when the connection path 20 is idle and advertisements are being transmitted to the client station 10. The advertisements are displayed in the transient window 84. As will be apparent to those of ordinary skill in the art, the transient window 84 may be placed anywhere within the user interface 72. For instance, an alternate location for displaying the transient window 84 appears in dashed lines at an upper right hand portion of the user interface 72 and is indicated at 85. The alternate transient window 85 covers a lesser portion of the display window 79 than the transient window 84. Locating the transient window 85 away from the display window 79 allows the user at the client station 10 to
-36-
SUBSTΓΓUTE SHEET (RULE 26) view activity results or other data, without such information being blocked by the transient window 84. For instance, , upon completion of a network search and after the search results have been downloaded to the client station 10, the connection path 20 becomes idle. However, the user may be interested in viewing the search results prior to initiating another network activity. Accordingly, it may be advantageous to display the transient window 84 in a more obscure area of the user interface 72. Preferably one or more advertisements are continually displayed in the transient window 84.
Referring now to Fig. 6A, at step 400, a user at a first station or client station 10 executes a conventional browser client software program. The browser client software program initially determines the NSP connection type at step 402, as either a dial-up connection or a dedicated line connection. If the NSP connection type is a dial- up connection, then the browser client software program interacts with the modem 20 to establish a dial-up connection with the NSP 16 at step 404. The modified network server software 24 answers the call, authenticates the user and assigns the user an IP address. The method then proceeds to step 406. Alternatively, if the NSP connection type is a dedicated line, as opposed to the dial-up connection, then the method skips step 404 and proceeds with step 406. At step 406, the modified network server software 24 determines whether the user is a subscriber to the information service of the present invention. At step 408, if the user is not a subscriber, then the method proceeds with step 410 and if the user is a subscriber, the method proceeds with step 420.
At step 410, the modified network server software 24 queries the user to determine if the user desires to become a subscriber to the information service. The modified network server software 24 may query the user by transmitting a query to the client station 10, the query preferably includes a response field for allowing the user to easily respond to the query, by either entering a response using a keyboard, clicking on an icon, clicking on a highlighted field, or otherwise responding to the query in a manner known to those of skill in the art. At step 412, the user's response is determined and if the user answers the query in the negative, the method proceeds with step 414, in which case standard Internet message handling occurs such that the announcement server 30 does not interact with the client station 10, as noted at step 416. If the user responds affirmatively to the query for information service, then at step 418, the modified network server software 24 negotiates a type of information service to be
-37- SUBSTTTUTE SHEET (RULE 26) provided to the user, such as real-time information services or advertising services, described in more detail below.
At step 420, the user requests an Internet service, as is known by those of ordinary skill in the art, by typing in a URL and entering return or clicking on an icon, or clicking on a highlighted keyword, etc., from within the display window 79, which causes the client station 10 to transmit a command to the modified network server software 24. At step 422, the modified network server software 24 reads the user's service request packets (data packets are formed by the browser client software program and transmitted to the network server software program as is known by those of ordinary skill in the art). The service request packets include an IP address and/ or an URL. At step 424, the modified network server software 24 routes the service request packet over the computer network 101 for execution by a remote host computer 12, as specified in the request packet. At step 426, if an FEP 28 is connected for monitoring the traffic to/from the client station 10, the FEP 28 informs the modified network server software 24 that the connection path 20 is idle, and the modified network server software 24 notifies the announcement server 30 to begin executing an advertising sequence. Alternatively, the modified network server software 24 monitors the traffic destined for or generated by the client station 10. An advertising sequence is at least one generally continuous advertising message or preferably, a sequence of announcements which are repeatedly generated by the announcement server 30. At step 428, the announcement server 30 opens the transient information window 84 in the browser display window 79 on the client station 10 and at step 430, the announcement server 30 checks its database 32 to determine appropriate advertising messages to be transmitted to the client station 10. The announcement server 30 begins transmitting messages to the user by way of the modified network server software 24, for display in the transient window 84 on the client station 10.
Proceeding now to Fig. 6C, preferably the advertising messages transmitted to the client station 10 include an interaction means for permitting the user at the client station 10 to respond to the advertising messages and interact with the announcement server 30, as previously discussed in relation to the other methods of the present invention. During processing or upon completion of the user's network service request, a response packet with the results of the user request is transmitted to the NSP 16. Either the modified network server software 24 of the FEP 28 monitors the traffic
-38-
SUBSTΓΓUTE SHEET (RULE 26) destined for the client station 10 or generated by the client station 10. If a response packet for the client station 10 has been received, the modified network server software 24 branches to step 434 and if a response packet for the client station 10 has not been received, execution proceeds with step 436. At step 436, the announcement server 30 checks to determine if the transmission of advertising messages to the client station 10 is complete. If there are messages remaining to be transmitted to the client station 10, at step 438, the announcement server 30 checks to determine if the user has aborted the session, such as by disconnecting from the NSP 16. If the user has not aborted the session, and the advertising transmission is not yet complete, the announcement server 30 continues to transmit messages to the client station 10 at step 440.
If the user aborted the session, as determined at step 438, then at step 142 (Fig. 3D), the announcement server 30 executes the logout procedure, which logs or records all relevant information about the advertising messages that were transmitted to the client station 10 and stores such information its database 32 or passes such information to the main controller 54, and then finishes processing at step 116.
If a response packet has been received by the NSP 16, as determined at step 432, then at step 434, the modified network server software 24 receives the response packets and buffers or temporarily stores the response packets in a buffer. A buffer parameter limit is checked at step 446 (e.g. the buffer is too small to store further packets without overwriting a prior packet). Buffering the response packets prior to transmitting the response packets to the client station 10 allows the transient window 84 to remain open in the display area 79 for a longer period of time. However, once the buffer limit has been reached, the transient window 84 is closed and the buffered response packets are transmitted to the client station 10. T he response packet buffer is preferably limited in size so that the transmission of response packets to the client station 10 is only suspended a very short period of time, for instance from between two to five seconds. However, it will be apparent to those of ordinary skill in the art that the size of the buffer could be made larger or smaller, or that the transmission of the response packets to the client station 10 could be delayed/ suspended for a predetermined period of time. If the buffer parameter limit has not been reached, then at step 448 the announcement server 30 checks to determine if the user has aborted the session.
If the user has not aborted the session, then at step 436, the announcement server 30 continues to transmit advertising messages to the client station 10. However, if the
-39-
SUBSTΓΠJTE SHEET (RULE 26) user has aborted the session, then the announcement server 30 executes the logout procedure beginning with step 142 (Fig. 3D). The logout routine is also executed if the buffer parameter limit was reached, as determined in step 446 and the user aborted the session, as determined in step 452. If the buffer parameter limit was reached (step 446) and the user has not aborted the session, then at step 454, the modified network server software 24 terminates transmission of the advertising messages to the client station 10 and closes the transient window 84 on the client station 10. Alternatively, the transient window 84 is made a background window, in which case the transient window 84 is movable to the foreground upon entry of a predetermined command at the client station 10. Then, at step 456, the modified network server software 24 transmits the response packets stored in the buffer to the user and the remaining response packets are transmitted without being buffered by the modified network server software 24. The method then repeats beginning with step 420 (Fig. 6B) . If the advertising transmission is complete as determined at step 436, then the announcement server 30 checks to determine if an advertising timing option is enabled, at step 442. As previously discussed, the advertising timing option allows a time limit to be set for displaying advertising messages.
Referring now to Fig. 6D, if the advertising timing option is enabled, then execution proceeds to step 458. At step 458, the announcement server 30 determines if the display time (i.e., the time spent displaying a particular advertisement) exceeds a predetermined time limit. If the predetermined time limit has not been exceeded, the announcement server 30 continues to have the particular advertisements displayed on the client station 10. If the predetermined time limit has been exceeded, then at step 460, the announcement server 30 checks to determine if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout procedure at step 142. If the user has not aborted the session, then the announcement server 30 returns to step 430 (Fig. 6B), and checks its database for further appropriate advertising messages to be transmitted to the client station 10 and displayed in the transient window 84.
Referring again to Fig. 6C, if the advertising timing option is not enabled, then at step 444, the announcement server 30 checks if the user has aborted the session. If the user has aborted the session, the announcement server 30 executes the logout
-40- SUBSTTTUTE SHEET (RULE 26) procedure at step 142, and if the user has not aborted the session, the announcement server 30 proceeds with step 462 (Fig. 6E).
Referring now to Fig. 6E, at step 462, either the modified network server software 24 or alternatively the FEP 28, checks to determine if a request or a response packet for the client station 10 has been received. If a request or response packet has not been received, then the announcement server 30 checks to determine if the user has aborted the present session at step 464. If the user has not aborted the session, then the announcement server 30 continues to effect the display of the advertisements on the client station 10 until a response packet has been received. However, if the user has aborted the session, then step 464 branches to the logout procedure at step 142, and the announcement server 30 records all relevant information pertaining to the current session and terminates processing at step 116.
Alternatively, if at step 462 a request or response packet is present, then at step 466, the modified network server software 24 receives the response packets and buffers or temporarily stores the response packets. A buffer parameter limit is checked at step 468. If the buffer parameter limit has not been reached, then at step 470 the announcement server 30 checks to determine if the user has aborted the session. If the user has not aborted the session, then the modified network server software 24 continues to transmit and display advertisements in the transient window 84. However, if the user has aborted the session, then the announcement server 30 executes the logout procedure beginning with step 142 (Fig. 3D). The logout routine is also executed if the buffer parameter limit was reached, as determined in step 446 and the user aborted the session, as determined in step 472.
If the buffer parameter limit was reached, as determined in step 446, and the user has not aborted the session (step 472), then at step 474, the modified network server software 24 terminates transmission of the advertising messages to the client station 10 and closes the transient information window on the client station 10. At step 476, the modified network server software 24 transmits the response packets stored in the buffer to the client station 10 and the remaining response packets are transmitted to the client station 10 without being buffered by the modified network server software 24. The method then repeats beginning with step 4.20 (Fig. 6B).
Referring now to Fig. 7, a flow diagram of the communications marketing system of the present invention is shown. The system allows advertisements to be displayed on
-41-
SUBSTΓΓUTE SHEET (RULE 26) the client station 10 whenever the connection path 20 between the client station 10 and the NSP 16 is idle, according to any one of the previously described methods. Beginning with steps 100-104, communications between a user at the client station 10 and the modified network server software 24 at the NSP 16 are established. After communications have been established, at step 500-the modified network server software 24 performs a series of tests to determine the particular method by which advertisements will be displayed at the client station 10. At step 502, the modified network server software 24 probes or queries the browser client software program operating on the client station 10 to determine if the client station 10 is executing the modified browser client software program 26. If the modified browser client software program 26 is executing on the client station 10, then the system displays advertisements on the client station 10 according to the first method by branching to step 106 (Fig. 3A). If the client station 10 is not executing the modified browser client software program 26 then at step 504, the modified network server software 24 checks to determine whether the downloadable browser client code module is available and can operate on the client station 10 in conjunction with the browser client software program on the client station 10. If the downloadable code module is available and operable on the client station 10 in conjunction with the browser client software, then the code module is downloaded to the client station 10 by the modified network server software 24, and the modified network software 24 branches to step 306 (Fig. BA). It is understood that not all DTEs are capable of having code downloaded and locally executed. For instance, certain DTEs may not include any or enough program memory space to accommodate the downloadable code module. In addition, the downloadable code module may not be compatible with a particular browser client program. Thus, if the downloadable code module is not available, at step 506, the modified network server software 24 checks if the access page method of displaying advertisements is available. If the NSP 16 is configured to provide access to the computer network 101 using an access page, the modified network server software 24 branches to step 206 (Fig. 4A). If the NSP 16 is not configured to communicate with the computer network 101 with an access page, then the modified network server software 24 branches to step 406 (Fig. 6 A) and provides advertisements via the transient window method. The system of the present invention may thus include one or more of the alternative methods of providing advertising messages to a user at the client station 10.
-42- SUBSTTTUTE SHEET (RULE 26) Description Of A Preferred Embodiment
In a preferred embodiment of the present invention, client software 53 works in conjunction with network communications software 55, such as specialized communication software or a browser, such as those typically used for accessing the Internet. In the description of this preferred embodiment, the some or all of the server portions discussed above, including FEP 28, Announcement server 30, real-time information server 36 and associated databases 32, 34 and 38 will collectively be referred to as a "messaging server" or "Cartesian brand server" or "Cartesian brand data server" . "Cartesian" is a trademark of Cartesian Broadcasting Networks, Inc. The messaging or Cartesian brand server is illustrated as element 1010 in FIG. 9 and is also referred to in FIG. 11, 12 and 14. It serves to provide the messages and message transmissions associated with the present invention. In the preferred embodiment, the client software 53 opens a separate communications channel from that opened by the browser or network communications software 55. The client software communicates over this channel only with the a messaging or "Cartesian" brand server 1010, and preferably not with the NSP 16. Also in the description of the preferred embodiment, the NSP 16 will alternatively be referred to as the ISP 16, i.e. Internet service provider, although it should be understood that the preferred embodiment now described may be used in conjunction with any network service provider (NSP). In addition, in the description of this preferred embodiment, the client software 53 will alternatively be referred to as "Cartesian brand software". The client software or "Cartesian brand software" and its operations are illustrated in FIGS. 10, 11, 12, 13 and 14. In addition, the client station 10 is alternatively referred to as "user" in this description. The text portions appearing in FIGS. 9 through and including 14 are hereby referred to and incoφorated in there entirety in this description of the invention.
In this preferred embodiment, the browser or network communications software 55 is not modified to include the client software 53, although in an alternative embodiment all or a portion of the client software 53 may be included. Preferably, the client software 53, can establish a communication channel separate from that established by the browser or network communications software 55. In this embodiment, as described above, the client software (Cartesian software) 53 establishes a communication channel with the messaging server 1010 rather than the NSP 16 or ISP.
-43- SUBSTTTUTE SHEET (RULE 26) The client software 53 is installed in a client station 10, residing in a memory. An embodiment of the installation sequence is illustrated in FIG. 10. The text portions of that figure describe the sequence and are incoφorated herein by this reference. In FIG. 10, the client software 53 creates a "Cartesian" work directory in the client station's non- volatile memory 51, such as a hard disk. Various required files associated with the client software 53 are loaded onto the non- volatile memory, including a control file and a data file. In a preferred embodiment, the network communications software 55 is supplied to the user only with a portion of the client software 53. The remaining portions are downloaded from the messaging or Cartesian brand server 1010 on a first long in session. Such a session is illustrated in FIGS. 10 and 11, where the client station 10 connects to the messaging or Cartesian brand server 1010 via communications path 102, as illustrated in FIG. 9. Once a proper connection is established, a registration process preferably takes place, as illustrated in FIGS. 10 and 11. During that registration process, other portions of the client software 53 also may be downloaded, preferably during waiting periods, or otherwise as required. Alternatively, the entire client software package 53 and optionally registration materials may be supplied with the network communications software 55 or with browser software. In such cases, registration may alternatively be done on-line, as illustrated in FIGS. 10 and 11 or offline. As illustrated in FIG. 10, the user can install the client software 53 files, such as from a floppy disk, CD-ROM, Internet connection and so on. Once the software is installed on the disk, as illustrated with step 1310, a set-up procedure begins. The client software determines a nonvolatile storage device 51 , such as a hard drive to install the program files on, as illustrated in step 1320. It then determines whether sufficient disk space is available, such as 10 MB, as illustrated in step 1330. If there is not sufficient space on the disk, an error message is displayed, as in step 1340. The software can either engage in an error recovery sequence or can abort the installation, as in step 1350. If there is sufficient disk space, processing continues, such as with step 1360 where a work directory is created on the client computer hard disk. Various data files can then be set up, as illustrated in steps 1370- 1410. In step 1370 a control file is copied to the work directory, in step 1380 a data file can be copied, in step 1390 a run timer routine can be copied, in step 1400 a start program can be copied to a start directory, for example, as used in the WINDOWS 95 operating system. Various settings can be set up after the software has been installed. For example, hide and
-44-
SUBSTΓΠJTE SHEET (RULE 26) protection attributes can be set for various program files, as illustrated in step 1420. In the illustrated embodiment, the client software 53 then initiates a connection sequences, as illustrated in step 1430. In such a connection sequence, the client software can initiate a dial-up connection, or Internet connection with a messaging or Cartesian server 1010. If a connection is not achieved, the client software 53 can try again, or proceed with a routine to encourage the user to sign up with the messaging service or service provider at a later time, as illustrated in step 1450. If a connection is achieved, the system can enter into any type of recognition sequence. In the illustrated sequence, a form is displayed for registering, an input is received from the user as illustrated in step 1450. Once the server system 1010 determines that the registration process is complete, as illustrated in step 1460, the registration is completed. Alternatively, other registration sequences can be undertaken, such as illustrated in steps 1470 through 1490. The client's software 53 can also undertake a connection check at any time to determine if the connection with the server system 1010 is active, or adequate. These steps are illustrated with respect to the registration procedure in steps 1500 through 1540.
Another aspect of the registration process is illustrated in FIG. 11. As illustrated in FIG. 11, a new user can register with an NSP and with the messaging or Cartesian server 1010 with a software package supplied by the NSP. In such an embodiment, the user can install the client software 53 as part of a software package received from the NSP. This is illustrated in step 1610. This software can be supplied by any means such as a portable media, for example a CD-ROM or floppy disk, or alternatively, directly via a dial-up or Internet connection, as illustrated with step 1620. The user can then supply information for registration for the messaging, or NSP, service as illustrated in step 1630. In this process, the NSP receives the registration information as illustrated in step 1640. In addition, the information can be supplied to the messaging or Cartesian server 1010, as illustrated with step 1650. The messaging server preferably stores this user information in an internal data base for later use if necessary, as illustrated in step 1660. The portion of the client software 53 required to be stored on the user's computer preferably is stored in a memory on that computer such as non- volatile memory 51, as illustrated in step 1670. The user is now a registered user, as illustrated by step 1680.
Operation of the client software 53 (or Cartesian brand software) and client station 10 is illustrated in FIG. 12. The client station 10 is referred to in the text in FIG. 12 as "computer" in step 1100. In operation, the user starts the computer, as
-45- SUBSTrrUTE SHEET (RULE 26) illustrated in step 1100. A portion of the client software preferably resides in memory, such as a TSR or memory resident program, and operates in background, as illustrated by step 1690. The memory resident portion of the client software 53 monitors the client station 10 to determine if a first URL request is sent via the user's network commumcations software 55. When that first URL request is made, as illustrated in step 1700, the client software 53 opens a communications channel with the messaging or Cartesian brand server 1010, as illustrated in step 1710. Alternatively, the client software may be activated and operated in background when any link is established to the communications network 95, as illustrated with box 1720. Various illustrative operation steps for communicating with the messaging or Cartesian brand server 1010 are illustrated in FIGS. 12 and 13. In FIG. 12, these steps are illustrated beginning with step 1710.
In step 1730, a sign-on sequence is illustrated in which the server 1010 requests the user to enter validation information. This can either be done by requesting the user to manually input this information, or alternatively the validation information is stored on the client's system 10 and is automatically transmitted by the client software 53 to the server system 1010. The server system 1010 then determines if the validation information indicates that this is a registered or valid user, as illustrated in step 1740. If not, the sign-on sequence system may be tried again, such as by asking the user to enter the information again, or alternatively, a not- valid user ID can be sent to or stored in the server system 1010 as illustrated with step 1750. The server system can then add to, or prepare a list, of not-valid user profiles, as illustrated with box 1760, or alternatively can register the user as a new user. In another alternative, as illustrated in FIG. 12, the client software can simply resume and display a first ad, as illustrated with step 1780. In this embodiment, registration is not actually required in order to display ads. Likewise, the handshake sequence is not required. If a handshake is completed in step 1740, processing can continue in step 1770 in which the client software 53 can send various data to the server system 1010. In order to customize the data displayed or received in the client system, the messaging or Cartesian server 1010 can prepare customized lists for each user. The user ID sent out in step 1770 can be used for this puφose by identifying the user in any particular fashion. A customization step is illustrated with box 1790. In this embodiment, the client software 53 can send a request for a list of customized information, such as an ad list to the messaging or
-46-
SUBSTΓΠJTE SHEET (RULE 26) Cartesian server 1010, as illustrated in step 1800. The messaging or Cartesian server 1010 receives this request as illustrated in step 1810 and responds by sending a customized list, as illustrated in step 1820. Preferably, the server 1010 also updates its local audit file and any other tracking files, such as an ad summary file. Likewise, the server 1010 can update other user information characteristics, such as the last time the user requested an ad list, as illustrated in step 1830. The client software 53 receives the customized list, as illustrated in step 1840 and then can begin a normal dialog session with the Internet, as well as with the messaging or Cartesian server, as illustrated in step 1850. After the first piece of customized information, such as a first advertisement, is displayed on the client system 10, as illustrated in step 1780, the client software 53, or the browser software operating in conjunction with it, can then wait for a next URL request, as illustrated in steps 1860 and 1870.
As illustrated in FIG. 13, in one embodiment the client software 53 starts as the operating system boots up, as illustrated with step 1880. In this step, the client software 53 is loaded to operate in background and waits for a browser or other NSP communication software to be launched. Once the browser is launched, the various initialization or log in steps can be undertaken by the client software 53, as illustrated with steps 1890 and 1900. It should be understood that any initialization or log in sequence of steps can be used, including those as illustrated in FIG. 12. When a user makes a routine URL request, an ad can be displayed between the URL request and any replay sequence, as illustrated in step 1910. This can continue as long as the browser is running, as illustrated in the loop between steps 1910 and 1920. Once the browser is no longer active, the ad transfer routine transferring new information between the messaging or Cartesian server 1010 and the client software 53 can be stopped, as illustrated in step 1930. During the on-line session illustrated in steps 1910 and 1920, an ad transfer routine can be run in the client software 53 so as to receive information from the messaging or Cartesian server 1010 as illustrated in step 1940.
FIG. 13 also depicts termination of a communications session in which the communications link between the messaging or Cartesian brand server 1010 and client station 10 is ended. For example, the link may be ended by the client software 53 sending a message to the messaging or Cartesian brand server 1010 to stop sending ads or other information to the server. In one embodiment, the an messaging or Cartesian
-47- SUBSTTΠJTE SHEET (RULE 26) brand server 1010 can send terminating or accounting messages to the client station 10 prior to the termination of the link.
Another illustration of an Internet session enhanced with messaging or advertising material is provided in FIG. 14. In FIG. 14, it is seen that the messages displayed in the client station 10 contain advertising material. When an "ad" is shown, information is written into a file in the client station 10 and the next incoming ad is cached.
As illustrated in FIG. 14, a link is initially established, as shown with step 1950. Any procedure for initiating the Internet session may be used, such as illustrated in FIGS. 11 - 13. The client software enters into such a validation sequence, as illustrated with box 1960. Once communication is established with the messaging or Cartesian server 1010, the server 1010 can make a list of ads, or other information, as illustrated in box 1970. The messaging or Cartesian server system 1010 can compile this list based on information about the user, or can prepare a list that is uniform for all users. This list is transmitted to the client system 10. In the interim, the user can undertake a communication session, such as over the Internet, as illustrated in step 1980. The down time while a URL request is being filled, can be used by the client software 53 to receive the list compiled in step 1970, or to receive information or advertising information from the messaging or Cartesian server 1010, or can display previously stored information or advertising material, as illustrated in step 1990. This down time between a URL request and connection with the desired website can be used throughout the Internet session to send and receive information between the client system 10 and the messaging or Cartesian server 1010, as illustrated with box 2000. In other words, until the browser connection is terminated, ads can be displayed whenever a reply to a URL request is pending. There also may be a plurality of ads displayed in this time. Whenever such information or advertising is shown, it is preferred that the amount of time the information or advertising is displayed is noted and stored in a file, such as a database file, on the client system 10, as illustrated in step 2010. Also illustrated in that step, the next information or advertising material to be displayed on the client system 10 is preferably cached into a memory. If the client software 53 requests an ad or other information because it is on the list, but not stored in memory on the client system 10, the messaging or Cartesian server 1010 can send the requested information or ad, as illustrated in step 2020.
-48- SUBSTTTUTE SHEET (RULE 26) In one embodiment, initially after a link is established, the client software 53 requests and receives over the communication link transmission of a first message or set of messages from the or Cartesian brand server 1010. In the preferred embodiment an initial set of three or more messages is received at that time, or are previously stored in the client station memory, preferably non-volatile memory 51. This creates an inventory of messages for display at desired times. The messages may be transmitted over the communications link during waiting or idle periods.
The client software monitors operations over the communications link, and if specified operations are conducted, such as a request for a URL link, various steps are taken to display messages and receive additional messages. For example, the client software in one embodiment opens a back channel within the client station and monitors the TCP/IP stack to determine when the system is not actively downloading. When it is not actively receiving data, data may be transmitted from the network server (also running specialized network server software for operation in conjunction with the client software). Preferably when a URL request is made, a stored message (such as a news item or advertisement) is displayed on the client station.
The client software preferably is written in a computer language other than HTML so that it can operate with greater level of independence from the network connection. In one embodiment the client software is written in Virtual Basic (such as available from the Microsoft Coφoration) and compiled to create the client software.
The message may be displayed in a specified portion of a monitor associated with the client station or it may be made to move about the monitor screen. Likewise, the message may include a sound file (such as for example an "WAV" file) or have an associated sound file, which causes sounds to be played on the client station, either alone or in conjunction with the message.
In addition, during waiting or idle periods, additional messages may be downloaded to the client station over the communications networks. These additional messages also may be stored in memory 41 or 51, for later display. Preferably an inventory of messages is maintained in the client station memory 41 or 51, so there is no transmission time perceived by a user.
In operation of one embodiment, a user of the client station 10 may use an input device 61 such as for example a mouse, touchpad, touch screen, to click on or otherwise activate a location on the display screen 71 to cause the message to disappear. For
-49-
SUBSTΓΓUTE SHEET (RULE 26) example, the user may click on a portion of the screen not occupied by the message and the message is removed by the client software 53 from the display screen.
In another embodiment, the user of the client station 10 may use the input device 61 to click on or otherwise activate the message. This may cause the client software 53 to move to a predetermined location on the display 71, such as the center of the display screen. In addition, such clicking or activation of the message may cause other operations to be performed by the client software. For example, the message may be moved to such predetermined location and then ringed with previous messages. In one example, the previous twenty-four displayed messages are displayed around the current message. In another example, compressed versions of such previously displayed messages are displayed around the current message. In another embodiment buttons corresponding to such previously displayed messages are displayed. Alternatively, any number of previously displayed messages may be displayed in any arrangement on the display 71. Such previously displayed messages are stored in memory 41 or 51 of the client station. A toolbar or other selection display also may appear on the display 71 providing choices of other options. The user may designate a previously displayed message, such as by clicking on it with input device 61, or otherwise activating it. The complete designated message may then be displayed, optionally with playing of associated sounds. A toolbar or other selection display may also appear on the display 71, providing various options. For example, the user of the client station 10 may be given an option of accessing a web site associated with the message. For example if the message is an advertisement, the user may be directed to the advertiser's web site or other related area on the Internet. Alternatively, if the message is news, the user may be directed to a news server or other related area on the Internet. In another embodiment, the toolbar may provide a menu of links, coupons or any service desired to be associated with the message. One embodiment of this procedure is illustrated in steps 2030 of FIG. 14.
It is thus seen that the waiting period data (i.e. messages) is preferably inventoried in memory associated with the client station 10. In a preferred embodiment, messages received in the client station 10 are stored in a memory device in the station 10. For example, the messages may be stored in volatile memory 41 or non-volatile memory 51. Alternatively they may be cached, placed in a queue or spooled. The messages are then displayed during use of the client
-50-
SUBSTΓΓUTE SHEET (RULE 26) station 10, preferably while connected to the communications network 95. In one embodiment a series of messages is received in the client station from NSP 16 and is stored. At times designated by the client station software 53, the messages are displayed on the output device 71. The messages may be displayed in the order received in client station 10.
Alternatively they may be displayed in accordance with ordering parameters embedded in the messages, and understood by the client station software 53. In one embodiment, a timing code is placed in a header or in a designated location within the message. The client software 53 searches messages, either after fully received or in a streaming fashion during message receipt, for such a timing code. The client software then displays the message in accordance with the timing code, in this embodiment.
Prior to being sent via communications path 20, the messages may be combined with other materials to be transmitted (such as sound data or associated message data) or may be modified for security puφoses. For example, the messages may be encrypted, or compressed prior to transmission via link 20 in the encrypted or compressed form. The messages are then restored to the original form in the client station using a feature of the client software 53, such as by decryption or expansion. Alternatively, the decryption or expansion may be performed on the fly prior to as the message is being displayed on display 71, or shortly prior to display. Alternatively, the message may be combined with other materials, such as data packets or segments prior to transmission via link 20. In another example, the message is an advertisement and related news items are combined with the advertisement.
The message may also be divided into segments or packets prior to transmission. This may be done in the announcement server 13 or in the NSP 16. One advantage of dividing the message is that smaller increments can be transmitted during shorter waiting periods. The message segments or packets are reassembled in client software 53 after receipt.
In one embodiment, the system of the present invention performs actions within the client station 10 by using or activating program elements or machine functions already residing on the station 10, such as in volatile memory 41 or non- volatile memory 51. These program elements may be incoφorated in the client software 53 and/or in the network access software 55, or may be supplied via the communications network
-51-
SUBSTΓΓUTE SHEET (RULE 26) separately. In one embodiment, JAVA scripts, JAVA applets or other form of segmented code system may be used.
Also in a preferred embodiment, the messages may optionally be displayed only while a user of the client station 10 is waiting for an information request (or URL request) to be fulfilled, rather than during all waiting periods.
In addition, in the preferred embodiment, the NSP software does not need to be modified to run the announcement and database system of the present invention. Instead, the systems of the present invention in this embodiment operate in conjunction with the NSP software. From the foregoing description, it can be seen that the present invention comprises a communications messaging and management system and method incorporating client station software for managing various messaging functions. It will be appreciated by those skilled in the art that changes could be made to the embodiments described above without departing from the broad inventive concept thereof. It is understood, therefore, that this invention is not limited to the particular embodiments disclosed but it is intended to cover all embodiments, software, components and process steps which are within the scope and spirit of the invention.
-52- SUBSTΪTUTE SHEET (RULE 26)

Claims

WHAT IS CLAIMED IS:
1 A method of receiving and displaying waiting period data on a client computer system coupled to a commumcations network, a network service provider (NSP) and messaging server being connected to the communications network, the client system including an output device and a memory device and the client running client software for managing communications between at least the client system and the messaging server, the method comprising: detecting waiting periods in said client system wherein said client system is waiting for data to be received via said communications network; and conducting an operation in said client system from a group consisting of receiving said waiting period data from said messaging server, requesting said waiting period data from said messaging server and displaying at least a portion of said waiting period data on said output device.
2 A method as set out in claim 1 wherein said detecting step comprises monitoring operation of the client system to detect a triggering operation.
3 A method as set out in claim 2 wherein said step of monitoring operation of the client system to detect a triggering operation comprises detecting transmission of a URL request.
4 A method as set out in claim 1 wherein said detecting step comprises establishing a back channel within said client system and monitoring a TCP/IP stack in said client system to determine when the client system is not actively receiving data from said communications network.
5 A method as set out in claim 4 wherein said step of monitoring said TCP/IP stack comprises detecting a URL request mode in said client system.
6 A method as set out in claim 1 wherein said step of conducting an operation further comprises receiving said waiting period data from said messaging server and storing it in said memory and displaying at least a portion of said waiting period data stored in said memory on said output device.
-53-
SUBSTΓΠJTE SHEET (RULE 26) 7 A method as set out in claim 1 wherein said step of displaying displaying at least a portion of said waiting period data on said output device comprises playing sound using a speaker.
A method as set out in claim 1 further comprising creating an inventory of received waiting period data in said memory of said client system.
A method as set out in claim 8 further comprising displaying a selected portion of said received waiting period data from said inventory in said memory.
10 A method as set out in claim 1 further comprising the following steps before said detecting step: running a portion of said client software in background in said client system; detecting an open communications link between said client system and said communications network; and running at least one additional portion of said client software in said client system after said open communications link is detected in said step of detecting an open communications link step.
11 A method as set out in claim 1 further comprising the following steps before said detecting waiting periods step: receiving from said messaging server a hierarchical list of waiting period data to be displayed on said output device of said client system, said list including an ordered enumeration of information items to be displayed from said waiting period data; and displaying at least one of said information items.
12 A method as set out in claim 11 further comprising the following steps before said receiving step: sending identifying information from said client system to said messaging server; and
-54-
SUBSTΓΓUTE SHEET (RULE 26) preparing said hierarchical list of said waiting period data in said messaging server, said hierarchical list being customized for client system based on said identifying information.
13 A communications system for receiving and displaying waiting period data on a client computer system coupled to a communications network, a network service provider (NSP) and messaging server being connected to the communications network, the client system including an output device and a memory device and the client running client software for managing communications between at least the client system and the messaging server, the system comprising: means for detecting waiting periods in said client system wherein said client system is waiting for data to be received via said communications network; and means for conducting an operation in said client system from a group consisting of receiving said waiting period data from said messaging server, requesting said waiting period data from said messaging server and displaying at least a portion of said waiting period data on said output device.
14 A system as set out in claim 13 further comprising: means for receiving from said messaging server a hierarchical list of waiting period data to be displayed on said output device of said client system, said list including an ordered enumeration of information items to be displayed from said waiting period data; and means for displaying at least one of said information items.
15 A system as set out in claim 14 further comprising: means for sending identifying information from said client system to said messaging server; and means for preparing said hierarchical list of said waiting period data in said messaging server, said hierarchical list being customized for client system based on said identifying information.
16 A data storage medium including machine readable code thereon for use in a client computer system coupled to a communications network, the client system
-55-
SUBSTΓΠJTE SHEET (RULE 26) including an output device and a memory device and the client system running client software for managing communications between at least the client system and the messaging server, the storage medium comprising: means for detecting waiting periods in said client system wherein said client system is waiting for data to be received via said communications network; and means for conducting an operation in said client system from a group consisting of receiving said waiting period data from said messaging server, requesting said waiting period data from said messaging server and displaying at least a portion of said waiting period data on said output device.
17 The data storage medium as set out in claim 16 further comprising: means for receiving from said messaging server a hierarchical list of waiting period data to be displayed on said output device of said client system, said list including an ordered enumeration of information items to be displayed from said waiting period data; and means for displaying at least one of said information items.
18 The data storage medium as set out in claim 17 further comprising: means for sending identifying information from said client system to said messaging server; and means for preparing said hierarchical list of said waiting period data in said messaging server, said hierarchical list being customized for client system based on said identifying information.
19 An information display system for displaying information at a client computer system connected to a network service provider and a messaging server via a communications network, the system comprising: a browser program including a client system program on said client system allowing the client system to communicate over the communications network via said network service provider; a connection path connecting said client server with the communications network allowing communications with the messaging server and the network service provider;
-56-
SUBSTΓΓUTE SHEET (RULE 26) an idle time monitor for monitoring the connection path to detect when the connection path is idle; and a storage device on said client system storing at least one item of said information for display on said client system in accordance with a customized list of information transmitted from said messaging server to said client system via said connection path.
20 A system as set out in claim 19 wherein: said client program comprises means for sending identifying information to said messaging server; and said messaging server comprises means for preparing said customized list of information based on said identifying information.
-57-
SUBSTΓΠJTE SHEET (RULE 26)
PCT/US1998/017245 1997-08-20 1998-08-20 Network communications managing and messaging system Ceased WO1999009486A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU90265/98A AU9026598A (en) 1997-08-20 1998-08-20 Network communications managing and messaging system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US5674597P 1997-08-20 1997-08-20
US60/056,745 1997-08-20

Publications (1)

Publication Number Publication Date
WO1999009486A1 true WO1999009486A1 (en) 1999-02-25

Family

ID=22006340

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1998/017245 Ceased WO1999009486A1 (en) 1997-08-20 1998-08-20 Network communications managing and messaging system

Country Status (2)

Country Link
AU (1) AU9026598A (en)
WO (1) WO1999009486A1 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000078005A3 (en) * 1999-06-15 2001-07-05 Nokia Corp Apparatus and method for internet advertising
EP1122929A1 (en) * 2000-02-07 2001-08-08 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Push of information from a server to a client
WO2001060014A3 (en) * 2000-02-07 2002-03-28 Ericsson Telefon Ab L M Information distribution in a network
EP1177505A4 (en) * 1999-03-15 2002-07-10 Webtv Networks Inc System and method for distributing preferenced data over a communications network
US6732150B1 (en) 1999-06-15 2004-05-04 Nokia Corporation Apparatus, and associated method, for providing a client with out-of-band messages
EP1434153A1 (en) * 2002-12-24 2004-06-30 Hitachi, Ltd. Advertisement management method
US6880123B1 (en) 1998-05-15 2005-04-12 Unicast Communications Corporation Apparatus and accompanying methods for implementing a network distribution server for use in providing interstitial web advertisements to a client computer
EP1547358A4 (en) * 2002-08-30 2009-11-25 Qualcomm Inc Server processing in providing messages for a wireless device connecting to a server
US8630634B2 (en) 2002-08-30 2014-01-14 Qualcomm Incorporated Processing of interactive screens for a wireless device
US8660613B2 (en) 2002-01-31 2014-02-25 Qualcomm Incorporated System and method for providing messages on a wireless device connecting to an application server

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996024213A1 (en) * 1995-02-01 1996-08-08 Freemark Communications, Inc. System and method for providing end-user free email
US5809242A (en) * 1996-04-19 1998-09-15 Juno Online Services, L.P. Electronic mail system for displaying advertisement at local computer received from remote system while the local computer is off-line the remote system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996024213A1 (en) * 1995-02-01 1996-08-08 Freemark Communications, Inc. System and method for providing end-user free email
US5809242A (en) * 1996-04-19 1998-09-15 Juno Online Services, L.P. Electronic mail system for displaying advertisement at local computer received from remote system while the local computer is off-line the remote system

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6880123B1 (en) 1998-05-15 2005-04-12 Unicast Communications Corporation Apparatus and accompanying methods for implementing a network distribution server for use in providing interstitial web advertisements to a client computer
US7155663B2 (en) 1998-05-15 2006-12-26 Unicast Communications Corporation Technique for implementing browser-initiated user-transparent network-distributed advertising and for interstitially displaying an advertisement, so distributed, through a web browser in response to a user click-stream
US7149958B2 (en) 1998-05-15 2006-12-12 Unicast Communiations Corporation Technique for implementing browser-initiated user-transparent network-distributed advertising and for interstitially displaying an advertisement, so distributed, through a web browser in response to a user click-stream
US7143337B2 (en) 1998-05-15 2006-11-28 Unicast Communications Corporation Apparatus and accompanying methods for network distribution and interstitial rendering of information objects to client computers
US6990630B2 (en) 1998-05-15 2006-01-24 Unicast Communications Corporation Technique for implementing browser-initiated user-transparent network-distributed advertising and for interstitially displaying an advertisement, so distributed, through a web browser in response to a user click-stream
EP1177505A4 (en) * 1999-03-15 2002-07-10 Webtv Networks Inc System and method for distributing preferenced data over a communications network
JP2003502912A (en) * 1999-06-15 2003-01-21 ノキア コーポレイション Apparatus for providing message to client and related method
US6732150B1 (en) 1999-06-15 2004-05-04 Nokia Corporation Apparatus, and associated method, for providing a client with out-of-band messages
WO2000078005A3 (en) * 1999-06-15 2001-07-05 Nokia Corp Apparatus and method for internet advertising
WO2001060014A3 (en) * 2000-02-07 2002-03-28 Ericsson Telefon Ab L M Information distribution in a network
EP1122929A1 (en) * 2000-02-07 2001-08-08 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Push of information from a server to a client
US8660613B2 (en) 2002-01-31 2014-02-25 Qualcomm Incorporated System and method for providing messages on a wireless device connecting to an application server
EP1470544B1 (en) * 2002-01-31 2020-03-25 Qualcomm Incorporated Wireless device and method for displaying a message
EP1547358A4 (en) * 2002-08-30 2009-11-25 Qualcomm Inc Server processing in providing messages for a wireless device connecting to a server
US8620275B2 (en) 2002-08-30 2013-12-31 Qualcomm Incorporated Server processing in providing messages for a wireless device connecting to a server
US8630634B2 (en) 2002-08-30 2014-01-14 Qualcomm Incorporated Processing of interactive screens for a wireless device
EP1434153A1 (en) * 2002-12-24 2004-06-30 Hitachi, Ltd. Advertisement management method

Also Published As

Publication number Publication date
AU9026598A (en) 1999-03-08

Similar Documents

Publication Publication Date Title
US5854897A (en) Network communications marketing system
US6463468B1 (en) Targeted network video download interface
EP0886825B1 (en) Method for transmitting and displaying information between a remote network and a local computer
US6442529B1 (en) Methods and apparatus for delivering targeted information and advertising over the internet
CA2306396C (en) Displaying and interacting with an informational message based on an information processing system event
US6567854B1 (en) Internet service delivery via server pushed personalized advertising dashboard
US7353267B1 (en) Targeted network video download interface
JP3445798B2 (en) System and method for controlling data access in a computer network
JP4021143B2 (en) Content providing system and method, console, and recording medium
US7353229B2 (en) Post-session internet advertising system
EP1382173B1 (en) Data distribution system
US20020069407A1 (en) System and method for reporting counted impressions
US7152091B2 (en) Contents distributing method and contents distributing program
WO1999009486A1 (en) Network communications managing and messaging system
US20050273817A1 (en) Delivering consumer service information to a user via the user's television service carriers
US20180137545A1 (en) Post-session internet advertising system
EP1229452B1 (en) Information distribution system, information distribution method, and computer-readable medium storing distribution program
KR20020000985A (en) Internet service server system, computer system and advertising method thereof
JP3857143B2 (en) Content transmission processing method, content receiving apparatus, and broadcasting apparatus
WO2000075822A2 (en) A method and system for sponsored access to the internet by client machines

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: KR

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

NENP Non-entry into the national phase

Ref country code: CA

122 Ep: pct application non-entry in european phase