`Rakavy et al.
`
`[w]
`
`US005913040A
`[ii] Patent Number:
`[45] Date of Patent:
`
`5,913,040
`Jun. 15, 1999
`
`[54] METHOD AND APPARATUS FOR
`TRANSMITTING AND DISPLAYING
`INFORMATION BETWEEN A REMOTE
`NETWORK AND A LOCAL COMPUTER
`
`[75]
`
`Inventors: Yuval Rakavy; Eli Barkat, both of
`Jerusalem, Israel
`
`[73] Assignee: Backweb Ltd., Jerusalem, Israel
`
`[21] Appl. No.: 08/517,666
`
`[22] Filed:
`
`Aug. 22, 1995
`
`[51]
`Int. CI.
`[52] U.S. CI
`
`G06F 13/00
`395/200.62; 395/200.47;
`395/200.54; 370/229
`[58] Field of Search
`395/200.01, 200.07,
`395/200.11, 200.13, 200.3, 200.47, 200.54,
`200.62, 200.65; 370/229, 230, 232, 235,
`234; 348/10, 522
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`1/1988 Whittington et al
`4,719,567
`1/1989 Chauvel .
`4,799,146
`5,099,420
`3/1992 Baxlow et al
`4/1992 Pirani et al. .
`5,105,184
`5,165,012 11/1992 Crandall et al. .
`5,220,564
`6/1993 Tuch et al
`2/1994 Each et al. .
`5,283,639
`5,285,442
`2/1994 Iwamura et al
`4/1994 Murphy .
`5,305,195
`5/1994 van der Wal et al
`5,313,455
`6/1994 Hoarty et al. .
`5,319,455
`6/1994 Gregorek et al. .
`5,321,740
`9/1994 Filepp et al. .
`5,347,632
`5,355,501 10/1994 Gross et al. .
`5,361,091 11/1994 Hoarty et al. .
`
`364/DIG. 1
`
`395/299
`
`370/94.1
`
`370/234
`
`370/232
`
`2/1995 Kuang .
`5,390,172
`5/1995 Nemirofsky .
`5,412,416
`5,455,826 10/1995 Ozveren et al
`1/1996 Hluchyj et al
`5,488,609
`5,504,744
`4/1996 Adams et al
`5,555,377
`9/1996 Christensen et al
`5,600,364
`2/1997 Hendricks et al
`5,604,542
`2/1997 Dedrick
`5,675,742 10/1997 Jain et al
`
`OTHER PUBLICATIONS
`
`370/232
`370/84
`370/232
`395/200.11
`348/1
`348/552
`395/200.56
`
`J. Rigdon, Comming Soon to the Internet: Tools to Add Glitz
`to the Web's Offerings, Wall Street Journal, Aug. 15, 1995.
`J. Martin,TCP/IP Networking,PTR Prentice Hall, 1994 (pp.
`147-148).
`Primary Examiner—Meng-Ai T. An
`Assistant Examiner—Walter D. Davis, Jr.
`Attorney, Agent, or Firm—Skadden, Arps et al.
`[57]
`
`ABSTRACT
`
`Methods and apparatus are provided for selecting advertise¬
`ments and other
`information from a computer network
`database based on user defined preferences and transmitting
`in background mode over a
`the selected advertisement
`communications link between the computer network and a
`local computer with minimal interference with other pro¬
`cesses communicating over the communications link. This
`method includes monitoring the communications link and
`transmitting portions of the advertisement when the com¬
`munications link line utilization is below a preestablished
`threshold. Methods and apparatus are also provided for
`displaying or otherwise presenting the selected advertise¬
`ments on the user's computer. Additional methods and
`apparatus are provided for selecting and presenting infor¬
`mation stored on a local storage media based on user defined
`preferences.
`
`14 Claims, 8 Drawing Sheets
`
`INITIALIZE
`CURRENT FILE
`POSITION TO 0
`
`CALLED?
`
`C: OPEN FILE
`TO BE
`TRANSFERRED
`
`D: OPEN OK?
`
`F: GET CURRENT
`FILE
`POSITION
`
`E: RETURN
`JOB ERROR
`
`H: READ NEXT
`BLOCK TO
`BE SENT
`
`K: SEND NAME
`OF FILE,
`POSITION,AND
`BLOCK
`CONTENT
`
`L: UPDATE
`CURRENT
`POSITION
`
`SEEK
`TO THAT
`LOCATION
`
`J: CLOSE FILE
`AND RETURN
`JOB DONE
`
`M: CLOSE FILE
`AND RETURN
`JOB_MORE
`
` IPR2017-00006 Ex. 1006
`Broadsign International, LLC Petitioner
` 1
`
`
`
`\0
`(J1
`
`SO
`
`s
`n<
`v oM
`
`!Z5
`
`\o
`sa
`\a
`
`M
`=s '
`
`n9
`
`to
`
`n
`dI
`
`FIG.1
`
`NETWORKSERVER
`
`ADVERTISER
`
`600
`
`COMPUTER
`
`LOCAL
`
`CLIENT
`
`500
`
`703
`
`PROVIDER
`SERVICE
`INTERNET
`
`700-
`
`SYSTEMARCHITECTURE
`
` 2
`
`
`
`U.S. Patent
`
`Jun. 15, 1999
`
`Sheet 2 of 8
`
`5,913,040
`
`530
`
`511
`
`SOUND
`DEVICE
`
`LOCAL
`STORAGE
`DEVICE
`
`MAIN
`MEMORY
`
`MASS
`STORAGE
`DEVICE
`
`516
`
`510
`
`550
`
`CENTRAL
`PROCESSOR
`
`512
`
`INPUT/
`OUTPUT
`CONTROLLER
`
`KEYBOARD
`
`515
`
`514
`
`513
`
`DISPLAY
`DEVICE
`
`MODEM
`
`520
`
`FIG. 2
`
` 3
`
`
`
`U.S. Patent
`
`Jun. 15, 1999
`
`Sheet 3 of 8
`
`5,913,040
`
`600
`
`NTERAD SERVER
`
`752
`
`753
`
`754
`
`CONFIGURATION
`
`MONITORING
`
`REPORTING
`
`DATABASE
`FEEDERS
`
`740
`
`751
`
`725
`
`JOB
`
`DATABASE
`ABSTRACTION
`
`DATABASE
`SERVER
`
`720
`
`720
`
`JOB
`MANAGER
`
`JOB
`MANAGER
`
`JOB
`MANAGER
`
`730
`
`720
`
`CONNECTION
`MANAGER
`
`710
`
`700
`
`AGENT
`
`500
`
`FIG. 3
`
` 4
`
`
`
`Ut
`
`O
`o S
`
`ÿfc.
`
`CZ3srn
`
`nm
`
`-
`
`\o
`sa
`\a
`
`M
`=s '
`
`n9
`
`to
`
`n
`dI
`
`265
`
`-220
`
`ADS,WALLPAPERSETC.
`SCHEDULERFORSOUND
`
`-230
`
`I
`
`INTERADDATABASE
`
`JL
`~r
`
`SCREENSAVER
`
`SUBSYSTEM
`
`DISPLAYMANAGER-210
`ADVERTISEMENTS
`
`SETUPCLIENT
`USERINTERFACE
`
`ADVERTISEMENT
`
`"KILLER"
`
`_A.
`275
`
`201-
`
`FIG.4
`
`SERVER
`
`/
`
`286
`
`v
`
`AGENTJOB
`
`POLITE
`
`AGENTJOB
`
`POLITE
`
`AGENTJOB
`
`POLITE
`
`285
`
`285
`
`285
`
`-272
`
`-271
`
`ANOTHERTYPEOF
`
`POLITEAGENT
`
`SOURCEFEEDER
`
`ANOTHER
`
`600
`
`\
`
`_INTERNET_
`
`700-
`
`MODEMPROTOCOL
`PPP-TCP/IPOVER
`
`295-
`
`T
`
`PROTOCOLSTACK
`
`TCP/IP
`
`290-
`
`AGENT
`
`280-
`
`TCP/IPPOLITE
`270
`ZZ
`ZZL
`"V"
`FEEDBACK
`INTERNETAD
`INTERNET
`
`FEEDER
`
`-250
`
`ADVERTISEMENTSFEEDER
`
`FEEDBACKMANAGER
`
`260-
`
`240-
`
` 5
`
`
`
`U.S. Patent
`
`Jun. 15, 1999
`
`Sheet 5 of 8
`
`5,913,040
`
`55
`
`Ad Information:
`Ad ID
`
`Ad version number
`
`Runs on platform: ...
`Ad startup DLL name: ...
`Ad startup entry point name: ...
`Memory needed: ...
`Sound device needed:...
`Screen resolution needed: ...
`
`List of resources:
`1: File name, version, size
`
`3: File name, version, size:
`
`FIG. 5
`
`50
`
`52
`
`IS LINE
`CONNECTED
`
`NO
`
`YES
`B: CALCULATE
`LOAD THRESHOLD
`
`C: GET CURRENT
`LINE UTILITIZATION
`
`44
`
`42
`
`43
`
`45
`
`46
`
`>HS CURRENTÿ
`UTILITIZATION <
`ÿ[HRESHOLQÿ
`
`YES
`
`E: GET NEXT
`JOB TO
`EXECUTE
`
`F: CALL JOB
`EXECUTION
`ROUTINE
`
`FIG. 6
`
`NO
`
` 6
`
`
`
`U.S. Patent
`
`Jun. 15, 1999
`
`Sheet 6 of 8
`
`5,913,040
`
`B: INITIALIZE
`CURRENT FILE
`POSITION TO 0
`
`IS FIRST TIME
`ÿ.CALLED?ÿ
`
`C: OPEN FILE
`TO BE
`TRANSFERRED
`
`D: OPEN OK?
`
`F: GET CURRENT
`FILE
`POSITION
`
`E: RETURN
`JOB ERROR
`
`G: SEEK
`TO THAT
`LOCATION
`
`H: READ NEXT
`BLOCK TO
`BE SENT
`
`IS END
`OF FILE
`
`J: CLOSE FILE
`AND RETURN
`JOB DONE
`
`K: SEND NAME
`OF FILE,
`POSITION, AND
`BLOCK
`CONTENT
`
`L: UPDATE
`CURRENT
`POSITION
`
`FIG. 7
`
`M: CLOSE FILE
`AND RETURN
`JOB MORE
`
` 7
`
`
`
`U.S. Patent
`
`Jun. 15, 1999
`
`Sheet 7 of 8
`
`5,913,040
`
`211
`
`212
`
`213
`
`214
`
`215
`
`216
`
`A: SELECT NEXT ADVERTISMENT
`TO BE RUN FROM THE DATABASE
`BASED ON THE AD TYPE
`
`B: LOAD AD STARTUP DLL
`(NAME IS IN THE AD INFORMATION)
`
`GET ADDRESS OF THE AD MASTER
`DISPLAY ROUTINE
`(NAME IS IN THE AD INFORMATION)
`
`CALL THE ROUTINE IN ORDER TO
`RUN THE AD
`
`FIG. 8
`
`CASE STATE IS:
`
`256
`
`251
`
`GET NEW AD
`
`GOT AD INFO
`
`CREATE POLITE JOB
`TO SEND REQUEST
`TO SERVER TO GET
`NEXT AD
`
`CREATE LIST OF
`RESOURCES WHICH
`ARE NOT ALREADY
`AVAILABLE ON
`LOCAL DISK
`
`252
`
`254
`
`FOR EACH NEEDED
`RESOURCE, CREATE
`POLITE AGENT JOB
`TO TRANSFER IT
`
`AD AVAILABLE
`
`ADD AD TO DATABASE
`AND MARK AS
`"CAN BE RUN"
`
`253
`
`FIG. 9
`
` 8
`
`
`
`U.S. Patent
`
`Jun. 15, 1999
`
`Sheet 8 of 8
`
`5,913,040
`
`201
`
`210
`
`220
`
`USER INTERFACE
`SETUP CLIENT
`
`ADVERTISEMENTS
`DISPLAY MANAGER
`
`SCREEN
`SAVER
`SUBSYSTEM
`
`230
`
`INTER AD DATABASE
`
`SCHEDULER FOR
`SOUND ADS,
`WALLPAPERS ETC.
`
`265
`
`250
`
`ADVERTISEMENTS
`FEEDER
`
`550
`
`CD-ROM DRIVE
`
`FIG. 10
`
` 9
`
`
`
`5,913,040
`
`5
`
`15
`
`METHOD AND APPARATUS FOR
`TRANSMITTING AND DISPLAYING
`INFORMATION BETWEENA REMOTE
`NETWORK AND A LOCAL COMPUTER
`FIELD OF THE INVENTION
`This invention relates generally to advertisement com¬
`puter display systems and more particularly to a method and
`system for displaying advertisements and other information
`on a computer based on general user selected criteria and 10
`transmitting such information from a remote network to the
`local computer.
`BACKGROUND OF THE PRESENT
`INVENTION
`There are two major forms of advertising which are
`currently being employed on the Internet and commercial
`on-line services. One form is the use of a small advertise¬
`ment on WEB pages which are commonly accessed. For
`example, a portionof the screen display for WEB pages used 20
`to access Internet searches may include a corporate logo or
`other advertisement material. Typical of this style of adver¬
`tising is the Netscape™ Internet Browser software available
`from Netscape Communications Corporation of Mountain
`View California, which presents a box containing logos for 25
`various corporations on the computer display when the user
`performs a search. This form of advertising, however, is not
`very sophisticated and does not encourage user interaction.
`Another form of advertising on the Internet is the creation
`of WEB "pages" or sites by advertisers. One variant of the 30
`use of a WEB page displays advertisements in a portion of
`the viewing area. A second variant, often used by corporate
`or other advertisers, is the use of WEB sites which employ
`attractive graphics in the hope of having the user interact
`with various advertising schemes. In addition, product 35
`ordering is usually available from these WEB sites. In most
`cases, users access these WEB sites by one of the following
`methods: knowing the Internet address; keyword searching;
`linking from a different WEB site; through an electronic
`shopping mall type site; through other advertisements on the 40
`Internet; or through the use of programs known as search
`browsers.
`Current advertisers have attempted to improve the attrac¬
`tiveness of these WEB pages by including the use of sound,
`animated or rotating logos or pictures, and scrolling infor- 45
`mation. One system, Hot Java, available from Sun
`Microsystems, supports the execution of small applications
`programs written in a specific programming language
`executing within the browser on the local computer. This
`allows the WEB pages to provide richer content, such as 50
`animation or scrolling sports scores across a user's computer
`display, and better interaction with users. These effects,
`however, are only available while the user is viewing the
`specific WEB page incorporating the Hot Java technology.
`Despite the fast and furious growth in this advertising 55
`sector, WEB sites are still regarded as "passive" advertising
`used predominantly for a corporate image rather than for
`selling products. Specifically the following drawbacks
`describe the current state of advertising on the Internet:
`transmitting the advertising information consumes a large 60
`the communications link
`the bandwidth of
`amount of
`between the user's computer and the network; access is
`initiatedby the user rather than the advertiser; the user rather
`than the advertiser pays for access; accessing a site is a time
`consuming "hit or miss" process; and the process may 65
`improve the corporate image but creates little product
`demand.
`
`U.S. Pat. No. 5,105,184 to Pirani et al. ("Pirani") discloses
`a system integrating commercial advertisements with com¬
`puter software. The system discloses integrating commercial
`types of screens. Pirani,
`advertisements with different
`however, does not provide for any user input at the local
`computer as to the types of advertisements which are to be
`displayed. Thus, users would be forced to view numerous
`advertisements of which they are likely to have no interest.
`This will attenuate the users attention to the advertisements
`and decrease their effectiveness.
`As noted above, a significant problem with current meth¬
`ods for advertising on computer networks is the consump¬
`tion of significant portions of the bandwidth of the commu¬
`nications link between the user's computer and the computer
`network. Prior systems have attempted to utilize essentially
`unused time in telephone networks to deliver advertising or
`other information. U.S. Pat. No. 5,321,740 to Gregorek, et
`al. ("Gregorek") discloses a marketing system over an
`existing telephone network which modifies a portion of the
`call processing system to play an informational announce¬
`ment in place of the usual ringback or busy signals. Grego¬
`rek differs from the present invention in a number of ways,
`including the fact that it does not provide any means for
`interacting with computers over a computer network. Also,
`Gregorek delivers the informational announcement only
`during a short splice of time when the user is waiting for
`callback information.
`Current file transfer protocols, such as the File Transfer
`Protocol ("FTP") and the Trivial File Transfer Protocol
`("TFTP"), for transferring files from a remote network, such
`as the Internet, via a communications link to a local com¬
`puter are designed to transfer files as quickly as possible.
`Each computer process executing such a protocol attempts
`to make maximum use of the available communication
`resources. This leads to interference and an inevitable slow¬
`ing down of other computer processes attempting to com¬
`municate over the communications link. There exists a need,
`therefore, for a file transfer process which is designed to
`behave as a background task and have a minimal impact on
`foreground communications.
`There also exists a need to utilize the computer to display
`locally stored advertisements. Several software products
`provide "yellow pages" on CD-ROMs or other media such
`as floppy disks. The user may use these yellow pages to
`search for products or advertisers by name or description.
`This system of advertising is limited, however, in that it
`requires the user to actively search for advertisers or prod¬
`ucts and therefore does not spontaneously display products
`to the user.
`Microsoft Windows interface provides a rudimentary
`form of spontaneous advertising by incorporating a
`Microsoft Windows logo as an option in its screen saver
`utility. This system, however, offers only a single advertise¬
`ment in response to a user's response and therefore does not
`offer a variety of periodically changed advertisement content
`based on a user's interests.
`
`SUMMARY OF THE INVENTION
`The object of the present invention is to provide a process
`for transmitting an information file between a local com¬
`puter and a remote computer network over a communica¬
`tions link with minimal
`interference to other processes
`executing on the computer which are also transmitting over
`the communications link.
`It is a further object of the present invention to provide a
`method and system of presenting individualized advertise-
`
` 10
`
`
`
`20
`
`25
`
`35
`
`3
`ments and other informational messages on a computer by
`allowing a user to select from a variety of advertisement or
`informational categories.
`It is a further object of the present invention to provide a
`method and system of downloading and presenting individu¬
`alized advertisements and other
`informational messages
`from a remote network to a local computer based on a user's
`selection of advertisement or informational categories.
`It is a further object of the present invention to provide
`such a method and system of downloading and presenting
`individualized advertisements and other informational mes¬
`sages from a network to a local computer with minimal
`interference with other data being transmitted between the
`network and the local computer.
`In one variant of the present invention, all advertisements
`or other informational messages originate on a network
`server which is accessed via the Internet or alternate on-line
`method. Select advertisements are transparently down¬
`loaded from the network server and stored locally on the
`user's local computer using a novel type of software referred
`to herein as a "PoliteAgent." Ina second variation, the entire
`advertisement database is locally stored on the local com¬
`puter or a removable media such as CD-ROM. Manipulation
`and display of the advertising message is performed by
`software residing on the user's PC in accordance with
`preconfigured user preference information.
`is preferably displayed during idle
`The advertisement
`time as a screen saver utility when the computer is not
`receiving keyboard input or updating the user's display.
`Other techniques for displaying the advertisement, such as
`periodic audio-only messages, screen background
`wallpaper, cursor modifications, and display in a window on
`the user's computer display are also available.
`Users may enter their preferences by directly choosing
`categories of advertising or other informational content
`which most interest them or through interactive games and
`quizzes. Users may directly respond to advertising messages
`by participating in contests, requesting further product
`information, or ordering the advertised product. The adver¬
`tisements are made attractive to the user by employing a
`variety of video, animation, sound or any other multimedia
`effects. Content may be based on an interactive theme such
`as a contest or special discount offers for on-line customers.
`The system monitors the user's interactionwith the adver¬
`tisements and produces raw data on how many times a
`particular advertisement was accessed as well as the user's
`response to advertisements. All pertinent
`information is
`stored and sent back to a network server where it is made
`available to the advertisers. User requests for additional
`information may be directed to the advertiser itself or to the
`advertiser's WEB site on the network.
`The system further comprises the use of a background
`software process, the Polite Agent, for transferring informa¬
`tion between the network and the local computer. The Polite
`Agent monitors the communications link between the net¬
`work and the local computer and transfers small portions of
`the information when the communications link utilization
`rate is low. Inthis manner the PoliteAgent avoids significant
`interference with other communications applications trans¬
`mitting over the communications link. The PoliteAgent may
`also be utilized to transmit other
`information
`types of
`content, such as news, weather, stock quotes, sports scores,
`software updates or trip reservation information.
`BRIEF DESCRIPTION OF THE DRAWINGS
`For a more complete understanding of
`the present
`invention, reference is made to the following Detailed
`
`5,9:
`
`3,040
`
`5
`
`1S
`
`4
`Description taken in conjunction with the accompanying
`drawings in which:
`FIG. 1is a functional block diagram of a system archi¬
`tecture in accordance with the present invention;
`FIG. 2 is a functional block diagram of a local computer
`and its related components in accordance with the present
`invention;
`FIG. 3 is a functional block diagram of the software
`architecture components of the advertising system network
`server in accordance with the present invention;
`FIG. 4 is a functional block diagram of the software
`architecture components of the local computer inaccordance
`with the present invention;
`FIG. 5 a schematic representation of an advertisement file
`in accordance with the present invention;
`FIG. 6 is a flowchart illustrating a method for a polite
`agent for communicating informationwith a remote network
`in accordance with the present invention;
`FIG. 7 is a schematic representation of a job for trans¬
`mitting data in accordance with the present invention;
`FIG. 8 is a flowchart illustrating a method for an adver¬
`tisement display manager constructed inaccordance with the
`present invention;
`FIG. 9 is a flowchart illustrating a method for an adver¬
`for downloading advertisements from a
`tisement
`feeder
`network constructed in accordance with the present inven¬
`tion; and
`FIG. 10 is a functional block diagram of an advertising
`30 system for displaying a local database of advertisements
`constructed in accordance with an alternative embodiment
`of the present invention.
`DETAIFED DESCRIPTION
`Preferred embodiments of the present invention will now
`be described with continued reference to the drawings.
`System Architecture
`1. Network Architecture
`FIG. 1shows an overall view of a preferred embodiment
`40 of the system architecture. The Focal Computer 500 is
`physically connected to the Network Service Provider 701
`via a Communications Fink 703. The Network Service
`Provider 701 provides access to the Network 700. Adver¬
`tising System Server 600 is one of the nodes on the Network
`45 700.
`a. Focal Computer
`As shown in FIG. 2, the Focal Computer 500 preferably
`includes a Central Processor 510, a Main Memory 511, an
`Input/Output Controller 512, a Display Device 513, input
`50 devices such as a Keyboard 514 and a Pointing Device 515
`(e.g., mouse, trackball, pen, slide pointer or similar device),
`and a Mass Storage Device 516. These components com¬
`municate through a system bus or similar architecture.
`Additionally, the Focal Computer 500 is preferably con-
`55 nected to an internal or external Modem 520 or like device
`for communication with the Network 700. Alternatively, the
`Focal Computer 500 may be connected via an ISDNadapter
`and an ISDN line for communications with the Network
`700. The Modem 520 optionally allows for the establish-
`60 ment of voice calls through software control.
`The Focal Computer 500 preferably also includes a Sound
`Device 530. The Focal Computer 500 may also include a
`Focal Storage Device 540 such as a floppy disk, CD-ROM
`or like device for local storage of the Focal Advertisement
`65 Database 550.
`The Focal Computer 500 is preferably under the control
`of a multi-process operating system including a TCP/IP
`
` 11
`
`
`
`5,913.
`,040
`
`5
`interface, and most preferably operated under
`the
`Microsoft® Windows-95 platform available from Microsoft
`Corporation of Redmond, Wash. However, the present
`invention may be embodied on a variety of different
`including Macintosh, UNIX, NextStep, 5
`platforms,
`MS-DOS, and the like.
`b. Network
`The Network 700 is preferably the World-Wide Internet.
`The World-Wide Internet ("Internet") is a world-wide net¬
`work connecting thousands of computer networks. The to
`dominant protocol used for
`transmitting information
`between computers on the Internet is the TCP/IP Network
`Protocol. Computers connect to the Internet either a fixed
`connection, inwhich case they become a "permanent" node
`on the Internet, or a dial-up connection, in which case they 15
`act as a node on the network as long as the connection is
`active. Internet addresses are the numbering system used in
`TCP/IP communications to specify a particular network or
`computer on the network with which to communicate.
`The invention may also be practiced with commercial 20
`on-line services such as America Online, available from
`America Online Inc., CompuServe, available from H&R
`Block Inc., Prodigy, available from Prodigy Services,
`Microsoft Network, available from Microsoft Corp., as well
`as other like services from a variety of companies such as 25
`AT&T Corporation and MCI Communications Corp.
`c. Network Service Provider
`The Network Service Provider 701provides access to the
`Network 700. Commercial providers include: BBN,
`Netcom, and Prarienet.
`d. Advertising System Server
`The system preferably includes at least one Advertising
`the Advertising
`System Server 600. The main roles of
`System Server 600 are to store Advertisements 50, transfer
`the Advertisements 50 to the Local Computer 500, and 35
`collect user feedback. The Local Computer 500 will initiate
`communication with the Advertising System Server 600.
`Each user is assigned a unique user-ID which can not be
`changed by the user. This user-ID is used by the Advertising
`System Server 600 to track each user's activity, including 40
`which Advertisements 50 have been downloaded to the user.
`When the Local Computer 500 connects to the Advertis¬
`ing System Server 600, the Local Computer 500 will upload
`the user's user-ID and the configuration and user preference
`information to the Advertising System Server 600. The 45
`Advertising System Server 600 uses this information to
`select the next Advertisement 50 to be downloaded. The
`Local Computer 500 also may directly request a specific
`advertisement through the use of a unique Advertisement-ID
`55 assigned to each Advertisement 50. If feedback informa- 50
`tion has been collected it also will be uploaded when the
`Local Computer 500 connects to the Advertising System
`Service.
`In an alternate embodiment of the present invention, the
`selected advertisement may be stored on any one of the 55
`plurality of advertising system servers connected to the
`Network 700. In this embodiment, the Local Computer 500
`initiates communication with a predetermined advertising
`system server. The predetermined advertising system server
`will select the next Advertisement 50 to be downloaded and 60
`the network address of the advertising system
`transmit
`server storing the Advertisement 50. The Local Computer
`500 uses the transmitted network address to request the
`selected Advertisement 50 from the appropriate advertising
`system server.
`The Advertisements 50 stored on the Advertising System
`Server 600 may be translatable to one or more natural
`
`65
`
`30
`
`6
`languages. The Advertising System Server 600 will use each
`user's native language-ID to transmit the appropriate natural
`language version of the Advertisement 50.
`2. Advertising System Server Software Architecture
`a. Software Modules
`FIG. 3 is a functional block diagram of a software
`architecture of the Advertising System Server 600 embody¬
`ing the invention.
`The Local Computer 500 initially connects to the Con¬
`nection Manager 710 which is responsible for allocating an
`available Job Manager 720 and returning its address to the
`agent. The Job Manager 720 then handles all further con¬
`versation with the Local Computer 500. As noted above, the
`architecture optionally allows for a plurality of advertising
`system servers each running a plurality of Job Managers
`720. Thus, the Job Manager address returned to the Local
`Computer 500 may contain both the Internet address of the
`server and the process identification. The Job Manager 720
`identifies and authenticates the user-ID against the Server
`Database 730.
`The Job Manager 720 creates a Network Job 725 for each
`user it communicates with. Each Network Job 725 commu¬
`nicates with the Local Computer 500 to select and download
`Advertisements 50; collect feedback from the Local Com¬
`puter 500; check the user's participation and any awards
`from contests, etc.; and upgrades and installs the Local
`Computer 500 software versions. The Network Job 725 is
`responsible for selecting the next downloaded Advertise¬
`ment 50 based on user configuration and preference data as
`described herein.
`Under most current network models, including the current
`implementation of the Internet, users are typically charged
`based on the amount of time they are connected to specific
`resources on the network. Thus,
`the current system of
`downloading advertisements and other information in the
`background does not
`increase the cost
`to the user, as
`transmission occurs in background mode while the user is
`already connected to the network Service Provider 701.
`Future implementations of these networks, however, may
`charge users based on the amount of information, or number
`of network "packets" or other units of data, the user has
`received. On such networks, the system should be able to
`track the amount of information transmitted, such as by
`counting the number advertisements, advertisement
`resources, or network packets (also known as "datagrams"),
`frames, segments or other units of network data containing
`advertisements. The Network Service Provider 701may use
`this information to charge the system generated transmis¬
`sions to the advertisers rather than the users. The Advertise¬
`ment System Server 600, and most preferably the Network
`Job 725, will be responsible for tracking the amount of
`information transmitted by the system. Alternatively, the
`TCP/IP Polite Agent 280 or other software process on the
`Local Computer 500 will track this information.
`The Server Database 730 contains the system
`information, including:
`the Advertisements 50 or other
`informational content; listings of users; listings of advertis¬
`ers; listings of network service providers; billing informa¬
`tion; audit logs and statistics. The Server Database 730 also
`maintains information on active connections and their activ¬
`ity. The Server Database 730 is accessed through the Data¬
`base Abstraction 740 interface which provides a layer of
`interface for all modules on the Advertising System Server
`700.
`In addition to providing Advertisements 50 and other
`informational content to local computers, the Advertising
`System Server 600 also provides various management
`
` 12
`
`
`
`5,913,040
`
`30
`
`services, such as billing information, viewing and gathering
`statistics on feedback information, and advertisement dis¬
`play audit-logs which may be sorted according to various
`filters such as advertiser or advertising category. The Adver¬
`tising System Server 700 includes various other software 5
`administration tools for maintaining the system, including: a
`Database Feeder 754 for modifying the Server Database
`730; Monitoring Tools 752 for viewing the activity of the
`system; Configuration Tools 751for modifying the behavior
`of the system; and Reporting Tools 753 for creating reports to
`concerning the system.
`b. Advertisement Records
`FIG. 5 shows a schematic representation of an Advertise¬
`ment 50. EachAdvertisement 50 in the Server Database 730
`comprises an Advertisement Information Record 51 and a 15
`Resource List 52. The Advertisement InformationRecord 51
`contains information identifying the advertisement
`(including the Advertisement-ID 55), its category, its size,
`and the hardware required to display the advertisement, such
`as sound boards, screen resolution and multimedia require- 20
`ments. The Resource List 52 contains a list of resources
`(bitmaps, animations, digitized audio segments, executable
`code, etc.) that must exist on the Local Computer 500 or
`associated local LAN in order to present the advertisement.
`The Resource List 52 includes a unique resource-ID, a 25
`resource type, and a resource pointer. The resource pointer
`identifies a file, a database record, a block of data, or other
`means of identifying the resource. Inthis manner, resources
`can be shared by various Advertisements 50.
`3. Local Computer Software Modules
`a. Software Architecture
`FIG. 4 is a functional block diagram of the software
`modules and processes of the software architecture for a
`preferred embodiment of the invention on the Local Com¬
`puter 500, including a User Interface Setup Process 201, 35
`Advertisements Display Manager 210, Screen Saver Sub¬
`system 220, User Preference and Advertisements Database
`230, Feedback Manager 240, Advertisements Feeder 250,
`Internet Feedback 260,Advertisement Killer 275, Scheduler
`265, Internet Feeder 270, TCP/IP Polite Agent 280, TCP/IP 40
`Protocol Stack 290, and PPP-TCP/IP Over Modem Protocol
`295.
`The User Interface Setup Process 201 allows the user to
`configure the behavior of the system on their desktops. The
`Advertising Display Manager 210 is responsible for select- 45
`ing and displaying Advertisements 50 from the User Pref¬
`erence and Advertisements Database 230. The Advertise¬
`ments Feeder 250 adds new Advertisements 50 to the User
`Preference and Advertisements Database 230, while the
`Advertisement Killer 275 purges old Advertisements 50. 50
`The Scheduler 265 schedules the display of time dependent
`Advertisements 50, such as background wallpaper, sound
`only advertisements, and cursor advertisements. The Feed¬
`back Manager 240 sends user preferences, user statistics and
`feedback information to the Advertising System Server 600. 55
`The TCP/IP Protocol Stack 290 and PPP-TCP/IP Over
`Modem Protocol Subsystem 295 handle the lower level
`details of transferring information to the Network 700. The
`TCP/IP Polite Agent 280 is responsible for monitoring the
`communications line utilization rate and transmitting data 60
`during times of low communications line utilization.
`b. Platform Implemented Functions
`The Screen Saver Subsystem 220 tracks user interaction
`with the system. When the Screen Saver Subsystem 220
`detects that the system has been idle, for example, when 65
`interaction with the computer
`there has been no user
`(through the use of the keyboard, mouse, pointing device or
`
`8
`other user input device), for a preconfigured time, it acti¬
`vates the Advertisements Display Manager 210 which will
`select an advertisement and display it.
`In prior systems, screen savers are graphically oriented
`displays which appear after the computer has been idle for
`a predetermined period of time. This change of display is
`primarily designed to prevent screen 'burn in' on the moni¬
`tor. Screen savers of the prior art are limited to one or more
`themes. By utilizing on-line
`predefined content
`communications, the screen saver of the present invention
`provides a wide variety of potential content themes which
`may be personalized and modified on a timely basis in
`accordance with user preferences.
`The ge