Method, system, and computer program product for propagating remotely configurable posters of host site content
A method, system, and computer program product for propagating access to host site content to remote users over the World Wide Web are provided. Access to host site content is distributed more widely and easily through propagative posters. Remote users can access a host site and configure propagative posters in real-time. A Web code segment corresponding to a configured propagative poster is then generated and sent to the remote user in real-time. A remote user can easily cut and paste the generated Web code segment into the user's remote Web page. Alternatively, the generated Web code segment can be automatically inserted into the user's remote Web page if access rights to write on the Web page are available. In one embodiment, a propagation poster manager is provided for managing propagation posters of host site content to remote users over the World Wide Web.
Latest Kforce Inc. Patents:
This application is a continuation of U.S. application Ser. No. 09/551,746, filed Apr. 18, 2000, which is incorporated herein in its entirety by reference.
BACKGROUND OF THE INVENTION1. Field of the Invention
The present invention relates to computer networking and communication, including Web-based communications and commerce.
2. Related Art
The World Wide Web is increasingly becoming the Internet technology relied upon for conducting electronic commerce and communication. The World Wide Web, also called the Web or WWW, has three basic parts: client software, servers and content. Client software runs on a user's computer and, among other things, provides the graphical user-interface through which a user can “browse” or “surf” the Web. Servers (also called Web servers) are computers that provide the content to users through a communication link. Content can be any kind of multi-media, e.g., images, text, animation, motion video, sound, and Java applets.
Communication between a browser and a server is carried out through Hyper Text Transfer Protocol (HTTP), Hyper Text Transfer Protocol-Secure (HTTPS) or other Web-compatible protocol. Web content is primarily transferred in Web documents or files, called Web pages, which are addressed by a Uniform Resource Locator (URL). Web pages are often multi-media hypertext documents written in a HyperText Markup Language (HTML) which supports hyper-linking. Data entry in Web pages allows users to make selections and fill-out template or profiles to facilitate user input. For example, scripts are often run on servers through a Common Gateway Interface (CGI) to implement data entry. Programming languages, such as Java, and plug-ins such as Flash, are also being extended to support data entry on the Web.
These parts are well-suited for electronic communication and commerce between remote users. Indeed, the popularity and use of the World Wide Web has increased dramatically. The number of Web sites and Web pages continues to grow. Accordingly, it has become increasingly important to many Web businesses and services to draw traffic to their site. Advertising revenue, registration fees and other sources of revenue generally increase as the number of hits to a site rises. It is also important for many Web businesses and services that access to the local content on their site be distributed widely. Accordingly, it is important to distribute knowledge about the content of a Web site.
Hyperlinking between Web pages is one way a Web site increases traffic to its site. Hyperlinking alone, however, has disadvantages. For example, consider the case where a remote user with a remote Web page adds a hyperlink to another site, such as, a Web site that provides sports information. The remote user inserts a URL for the sports Web site into his or her Web page (e.g., an HTML document). The URL itself, however, does not provide any significant contextual information or actual information about the content of the sports Web site. A user may provide text to describe the sports Web site, but this information can be soon out of date and may not reflect actual information on the Web site.
Some Web services, such as, search engines attempt to increase traffic to their sites by making available HTML code for logos or search bars to be inserted in Web pages on other sites.
In both of these examples, the HTML code segments are predetermined. No real-time configuration or modification can be made by the user prior to cutting and pasting the HTML code snippet. Any configuration of the HTML code segments must be done by the user. In addition, the servers generating the HTML code segments do not facilitate or support real-time configuration based on user selections or preferences. This increases the burden on the user. Users who do not know HTML or how to configure or modify the HTML code snippet are unable to tailor the link as they desire.
What is needed is an invention which remotely and easily propagates access to Web content. Users need to be able to remotely and easily configure in real-time a link to another Web site.
SUMMARY OF THE INVENTIONA method, system, and computer program product for propagating access to host site content to remote users over the World Wide Web are provided. Access to host site content is distributed more widely and easily through propagative posters. Remote users can access a host site and configure propagative posters in real-time. A Web code segment corresponding to a configured propagative poster is then generated and sent to the remote user in real-time. A remote user can easily cut and paste the generated Web code segment into the user's remote Web page. Alternatively, the generated Web code segment can be automatically inserted into the user's remote Web page if access rights to write on the Web page are available. According to the present invention, propagative posters also permit users to click on (i.e., select) displayed summary information to access further information about a selected item or topic.
In one embodiment, a Web code segment is generated that includes a propagative poster identifier and a link to the host site. The propagative poster identifier allows each poster to be identified. For example, the propagative identifier can be a unique poster number. In one embodiment, to enhance security and facilitate URL tracking, a respective private key and a unique poster number are sent through a hash function to obtain a secure fingerprint. The propagative poster identifier is then a combination of the secure fingerprint, the unique poster number and the URL of the remote user that created the poster.
In one embodiment, a propagation poster manager is provided for managing propagation posters of host site content to remote users over the World Wide Web. The propagation poster manager includes a propagative poster configuration module and a propagative poster generator. The propagative poster configuration module hosts a configuration session that allows a remote user to configure a propagative poster of host site content based on at least one configuration selection input by the remote user. The propagative poster generator generates and forwards the propagative poster identifier and the Web code segment to the remote user in real-time.
In one embodiment, configuration is made easy for a user by presenting a series of configuration screens to guide user input. For example, the propagative poster configuration module serves data that enables a first configuration screen to be displayed that includes images of different types of sample posters that can be configured by a user. The propagative poster configuration module then receives a selection by a remote user that identifies one selected type of sample poster and serves data that enables a second configuration screen to be displayed. The second configuration screen has a template for the remote user to configure the selected type of sample poster. The propagative poster configuration module then receives inputs entered in the template. The inputs represent configuration selection inputs made by the remote user. The propagative poster configuration module serves data that enables a third configuration screen to be displayed that includes the first remote user-configured propagative poster. In this way, the remote user can verify in real-time that the user-configured propagative poster is acceptable. After verification, a fourth configuration screen is served that includes the Web code segment to be copied. In one example, the Web code segment is a HTML code segment that enables a browser to access the remote user-configured propagative poster for display.
According to a further feature of the invention, a propagation poster, initially configured by a first remote user, is easily used by subsequent remote users. The propagative poster generator generates the original remote user-configured propagative poster in response to a hit on the first remote user Web page by subsequent remote user that selects at least a portion of the Web page of the first remote user that corresponds to the generated Web code segment. For example, if the first remote user configured a button or link to access the poster, then a button or link is added in the generated Web code segment. When the second remote user selects the button or link in the Web page of the first remote user, the browser of the second remote user is transferred to the host site. The propagative poster generator then receives the propagation poster identifier and generates data from the host site that corresponds directly to the data presented in the original propagative poster.
According to a further feature, a propagation poster further includes an input portion, such as, a “Make Propagation Poster Now” button. The input portion enables a remote user to make another propagative poster. Another configuration session to create a new poster is then easily initiated by a user by selecting the input portion. For example, the propagation poster configuration module further hosts a second configuration session that allows a second remote user to configure a second remote-user configured propagative poster of host site content based on at least one configuration selection input by the second remote user. In this way, content on a host site is distributed more quickly to a wider audience as users who visit the web page of the first remote user can select and propagate their own posters.
In one embodiment, the propagation poster is periodically refreshed or updated in that the poster is generated based on code executed on current data in the host site content. In one example, at least one configuration selection input made by the first remote user includes at least one search parameter. The propagative poster generator then generates a propagation poster by first executing a search query of data based on each search parameter to obtain a search result based on current host site content. The propagative poster is then generated which includes the current search result. This executing of the code can occur in real-time at the time any remote user accesses the poster or off-line such as during a periodic maintenance run.
In one example implementation, a propagative poster can be any type of window or image including, but not limited to, a window listing job postings, a window listing resume information, a button or go to link to the host site, a search box to search the host site, or a window displaying data related to content on the host site, such as, statistical information, data reports, etc.
According to a further feature, the propagation poster manager includes a propagative poster tracker. The propagative poster tracker tracks URL addresses of remote users accessing the first remote user-configured propagative poster.
According to a further feature, the propagation poster manager includes a propagative poster maintenance module. The propagative poster maintenance module that generates reports based on propagative poster records and data tracked by the propagative poster tracker.
A further feature is the ability to track which posters are not being viewed and to discontinue the off-line generation of the posters until a remote user attempts to view it again, thereby causing it to be automatically generated as well as putting it back in the automatic generation queue. This feature enables reduction of the overhead of offline generation without disrupting service.
In one example implementation, a storage device is coupled between a server and a Web server. The server includes a propagative poster configuration module, a propagative poster generator, a propagative poster tracker, and a propagative poster maintenance module. The storage devices stores at least the following fields of information related to respective generated user-configured propagative posters: a propagative poster identifier, a bit map, a non-executable Web code segment, and an executable code. A database is also coupled between the server and the Web server. The database stores propagative poster records that include user profile and tracking information related to respective generated user-configured propagative posters.
Further features and advantages of the present invention, as well as the structure and operation of various embodiments of the present invention, are described in detail below with reference to the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGSThe accompanying drawings, which are incorporated herein and form part of the specification, illustrate the present invention and, together with the description, further serve to explain the principles of the invention and to enable a person skilled in the pertinent art make and use the invention.
The present invention will now be described with reference to the accompanying drawings. In the drawings, like reference numbers indicate identical or functionally similar elements. Additionally, the left-most digit(s) of a reference number typically identifies the drawing in which the reference number first appears.
DETAILED DESCRIPTION OF THE FIGURESTable of Contents
I. Overview and Terminology
II. Propagating Remotely Configurable Posters
A. Configuration
B. Web Code Segment Generation
C. Tracking
D. Further Remotely Configurable Poster Propagation
III. Example On-Line Propagative Poster System
A. Host Site with Propagative Poster Management
B. Propagative Poster Manager
C. Operation
D. Further Propagation
E. Propagative Poster Maintenance
F. Example Propagative Poster Record and Tracking Information
G. Detailed Viewing of Information Concerning Data Summarized on a Propagative Poster
IV. Example Environment
V. Example Computer System
VI. Conclusion
I. Overview and Terminology
The present invention provides a method, system, and computer program product for propagating access to host site content to remote users over the World Wide Web (also referred to as WWW or the Web). Access to host site content is distributed more widely and easily through propagative posters. Remote users can access a host site and configure propagative posters in real-time. A Web code segment corresponding to a configured propagative poster is then generated and sent to the remote user in real-time. Propagative posters also permit users to select summary information about an item or topic displayed thereon to access further information about that selected item or topic.
The term “propagative poster” refers to any type of poster created and managed according to the present invention. Such a “poster” can include, but is not limited to, any one or more of an image, bitmap, link, button, window, display view, and/or applet.
The term “real-time” means information, such as a user input and a host site response, that can be exchanged in a round-trip cycle between a remote user and the host site with little or no delay, such as, within seconds or minutes (any delay being essentially a function of the communication medium and devices connected between a user and the host site).
The terms “Web code segment” and “non-executable code segment” refer interchangeably to an segment that can be inserted into a Web page and is capable of being interpreted by a browser. A Web code segment can include, but is not limited to, HTML text.
The present invention is described with respect to propagating posters over the Web. The present invention is not necessarily limited to the Web and can be applied in any interactive, computer networking service, including but not limited to the Web.
II. Propagating Remotely Configurable Posters
The operation of the present invention is described first with respect to a routine 100, as shown in
A. Configuration
First, a configuration session is hosted that allows a remote user to configure a propagative poster (step 110). The configuration session allows the remote user to configure a propagative poster based on inputs or configuration selections made by the remote user. In one example, the present invention serves data that enables a series of configuration screens to be displayed to the remote user. The configuration screens can include templates or forms to further guide input by the user.
A user then selects the desired type of propagative poster from configuration screen 210 and is presented with a second configuration screen 220, as shown in
When anything but the search box type of propagative poster is configured, the configuration screens include one or more templates that allow a user to enter desired search parameters. Finally, when a data window is selected as the type of propagative poster to be configured, configuration screens are presented that allow a user to select the type of data display. For example, a template can be displayed that allows a user to select the type of data to be displayed (e.g., job or resume type of information), and the type of display format (e.g., statistical summaries, pie charts, bar charts, graphs, tables, and other formats).
As shown in
B. Web Code Segment Generation
After configuration, a Web code segment is generated. First, a propagative poster identifier is generated (step 120). The propagative poster identifier references the configured propagative poster on the host site. In step 130, a Web code segment is generated that includes at least a propagative poster identifier and a link to the host site. The link can be a URL of the host site through which the propagative poster can be accessed. In step 140, the generated Web code segment is forwarded in real time to the browser of a remote user. The generated Web code segment is then inserted into a remote page at a remote site designated by the user (step 150).
Note screen 240 also includes instructions to guide the user to further facilitate easy cutting and pasting of the HTML code segment. Alternatively, the Web code segment can be automatically inserted by the host site into a designated Web page of the remote user. This of course requires that the host site be granted access rights to write on the Web server of the remote user.
The display screens 210 through 240 described with respective
After step 150, the first or original configured propagative poster is then accessible to subsequent users that visit the remote Web page with the inserted Web code segment. For example, the remote Web page may include a display of the propagative poster itself and/or a button or link to the propagative poster. When a subsequent user visits or “hits” the remote Web page the original configured propagative poster is generated (step 160). Because the inserted Web segment included a link to the propagative poster host site the subsequent user can be hyperlinked to the host site itself through conventional HTTP. The propagative poster identifier drawn from the Web code segment further allows the host site to automatically serve the appropriate propagative poster to the second or subsequent remote user. In particular, an overlay window is generated on the browser of the subsequent remote user that displays the original configured propagative poster.
At this time, the subsequent user is communicating directly with the host site. The host site can generate the original configured propagative poster based on current data at the time the poster is accessed. Alternatively, the host site can display the original configured poster data based on data in the host site at the time the original user configured the poster or at the time when the poster was periodically “refreshed” or updated. For example, the host site may periodically generate and store the configured propagated posters offline as part of a daily maintenance or updating procedure. Regardless, the subsequent user is able to view the poster configured by the original user that includes data on the host site. In this way, host site data is propagated and distributed widely over the WWW.
C. Tracking
The host site can further track information related to the original remote user that configured the propagative poster and subsequent accesses made to the configured propagative poster (step 170). For example URL history information of the original remote user and subsequent remote users that access the propagative posters can be tracked. Click-through information can be tracked. In general, any type of tracking and user profiling can be used depending on what we have access to via the document object model (DOM) and/or other methods. According to one feature of the present invention, the number of accesses made to configured propagative posters and the frequency of the number of accesses made is tracked. In this way more active propagative posters can be refreshed more often.
D. Further Remotely Configurable Poster Propagation
According to a further feature of the present invention a propagation poster further includes an input portion, such as, a “Make Propagation Poster” button. The input portion enables a remote user to easily make another propagative poster. For example, as shown in the configuration screen 230, a propagative poster can include an input portion labeled “click. here to get a window for your site” or “make propagation poster now.”
In step 180, a check is made to determine whether a user wishes to configure a propagative poster. In particular, a check is made to determine whether the user has made a selection to the input portion for making a propagative poster. When a user does wish to configure a propagative poster, a configuration session to create a new poster is then initiated. Steps 110 through 170 are then repeated for the subsequent remote user. In this way, another propagation poster is easily generated for the subsequent remote user. Content on the host site is then distributed even more quickly to a wider audience as users who visit the Web page of the remote user select and propagate their own posters. When a user doesn't want to configure a propagative poster then routine 100 ends (step 190).
III. Example On-Line Propagative Poster System
A. Host Site with Propagative Poster Management
Host site 302 includes a propagative poster manager 310, storage device 312, database 314, and Web server 316. Propagative poster manager 310 and Web server 316 are coupled to one another and to storage device 312 and database 314. Storage device 312 stores records related to the content of propagative posters and the management of propagative posters. Database 314 stores data for host site 302, that is, the local content of host site 312. Propagative poster manager 310 further includes a propagative poster configuration module 320, propagative poster generator 330, propagative poster tracker 340, propagative poster maintenance module 350.
Host site 302 can be implemented on any one or more processors. In one example, not intended to limit the present invention, propagative poster manager 310 is implemented on one or more servers. Likewise, Web server 316 can be one or more Web servers supporting Web services. Storage device 312 can be type of data storage device or combination of data storage devices including, but not limited to, a type of memory and/or database. Database 314 can be any type of database (relational or non-relational). Additional databases can be added to accommodate greater capacity. In one example, host site 302 is a Web site that supports on-line employment services, especially for independent consultants and hiring managers who are looking to hire independent consultants. These on-line employment services can include but are not limited to presenting and managing job postings, resume collection, formatting and storage, spidering, and e-mail campaign generation and management. Other servers and modules (not shown) can support these services and provide data for database 314.
B. Propagative Poster Manager
Propagative poster manager 310 further includes a propagative poster configuration module 320, propagative poster generator 330, propagative poster tracker 340, propagative poster maintenance module 350. Propagation poster configuration module 320 hosts configuration sessions that allow remote users to configure propagative posters of host site content. Propagative poster generator 330 generates propagative poster identifiers and corresponding Web code segments as described above with respect to Steps 110-130. Propagative poster tracker 340 tracks URL addresses of remote servers accessing the user configured propagated posters and other profiling and tracking information. Propagative poster maintenance module 350 generates reports based on propagative poster records and data tracked by the propagative poster tracker 340. Propagative poster manager 310 (including each component propagative poster configuration module 320, propagative poster generator 330, propagative poster tracker 340, and propagative poster maintenance module 350) can be control logic implemented in software, firmware, hardware or any combination thereof. The operation of the on-line propagative poster system 300 and in particular propagative poster manager 310 is described further with respect to the example data structures in FIGS. 5 to 8 and the operational flowchart of
C. Operation
As shown in
In step 916, user 1 requests to make a propagative poster. Host site 302 receives the request and sends one or more configuration screens (step 918). In particular, propagation poster configuration module 320 sends one or more configuration screens 210-230 in a configuration session as described above with respect to step 110 and
Propagative poster manager 310 then generates and sends a bitmap or text of a configured propagative poster to browser 372 (step 922). Browser 372 then sends a confirmation input by user 1 indicating that the configured propagative poster is acceptable (step 924).
Propagative poster generator 330 then generates a propagative poster identifier that includes a unique poster number (step 926). Alternatively, in one embodiment to enhance security and promote tracking propagative poster 330 further includes a hash function generator. Any type of hash function can be used including but not limited to a one-way hash function such as the MD5 message-digest algorithm (B. Schneier, Applied Cryptography, Second Edition (John Wiley & Sons, Inc. United states of America) 1996, pp. 351-354, and R. Rivest, “MD5 Message-Digest Algorithm,” Networking Group Request for Comments: 1321 MIT Laboratory for Computer Science and RSA Data Security, Inc., April 1992 (downloaded Mar. 30, 2000)), each of which is incorporated in its entirety herein by reference.
The hash function generator as shown in
PP generator 330 then generates a non-executable HTML code segment 410 that includes secure, trackable PPID 560 and a link (URL) to host site 302 (step 930). PP generator 330 further generates executable code. PP generator 330 then generates and stores a PP record 600 in storage device 312 (step 934).
Executable code 640 is executable code that enables host site 302 to generate a propagative poster configured in accordance with the selections of the user based on data in database 314 of host site 302. For example, executable code can include, but is not limited to, Structured Query Language (SQL) or other language that enables a search of database 314 to be performed. Search parameter 650 are keywords, Boolean operators, or other operators that identify a particular search selected or configured by the user during the configuration of the respective propagative poster. In one example, search parameters can include poster title, job function, zip code and state.
This example is illustrative only and not intended to limit the present invention. Any number and type of data fields and values can be used as would be apparent to a person skilled in the art given this description. Also, search parameter 650 may not be used for certain types of posters that do not require a search of host site data.
Active/inactive flag 660 is set by propagative poster maintenance module 350 depending upon how frequently a particular propagative poster is accessed. For example, if propagative poster maintenance module 350 determines that no hits have been made to the propagative poster, then propagative maintenance module 350 sets flag 660, to an inactive value. When a hit is made to the propagative poster, propagative maintenance module 350 initiates immediate generation and then sets the flag to active. Propagative poster manager 310 further stores original profile data 670. Original profile data 670 can include profile information entered by the user creating the poster during configuration (or a prior registration session).
Propagative poster manager 310 then sends the non-executable HTML code segment 630 to browser 372 at client 370 (step 936). User 1 through browser 372 then inserts non-executable HTML code segment into a Web page (step 938). As described with respect to step 150, the non-executable HTML code segment can be inserted manually (e.g., cut and pasted) by a user or automatically by host site 302.
D. Further Propagation
The distribution of propagative posters is further described with respect to
PP tracker 340 further tracks the referring URL of server 376. In step 1008, PP tracker 340 checks whether a valid poster ID is obtained. For example, PP tracker 340 decrypts fingerprint 540 with a copy of the private key previously stored in host site 302 and compares it with the unique poster number or ID 520 to determined if the poster ID that is valid. If a valid poster ID has not been sent, then PP tracker 340 ignores the remote user n (step 1010). Otherwise, when a valid poster ID is verified, PP tracker 340 determines whether the URL of remote user n equals the originator URL of user 1 (step 1012). If the URL of remote user n is not equal then PP tracker 340 recognizes that a different user is accessing the poster and stores the URL of remote user n (step 1014) and proceeds to step 1016. Otherwise, propagative poster tracker 340 proceeds directly to step 1016.
In step 1016, propagative poster tracker 340 updates the history information of propagative poster. In particular, the history is updated to indicate that an access to the propagative poster has been made and to provide a history of the accessing URL and time stamp information. As shown in
In step 1022, remote user n selects an input portion or “make propagation poster” area within PP bitmap 620. Browser 382 forwards this selection to host site 302. Propagative poster manager 310 receives the “make propagation poster” selection including a mouse click represented by a set of screen space coordinates (step 1024). Propagative poster manager 310 converts the selection screen space coordinates to x-y coordinates in bitmap space of the poster (step 1026). Propagative poster manager 310 then evaluates the x-y coordinates in bitmap space to determine if the “make propagation poster” was selected (step 1028). For example, if a small “make propagation poster” label is added at the bottom of a poster the x-y coordinates in bitmap space are checked to see if they correspond to the area of the small label at the bottom of the poster. If not, then PP manager 310 ignores the input or performs other processing (step 1030). If yes, then control is transferred to PP configuration module 320 to initiate a configuration session (step 1032).
E. Propagative Poster Maintenance
Propagative maintenance module 350 carries out a routine for propagative poster maintenance 1100 as shown in
Next, PP maintenance module 350 refreshes propagative posters (step 1130). For example, PP maintenance module 350 searches and identifies each active PP record 600 (with an active flag 660). For each active PP record 600, PP maintenance module executes the executable code 640 based on search parameters 650. Executable code 640 then generates an updated propagated poster image based on current content in database 314. An updated image of the propagated poster is then stored on storage device 312. In other words, it is rewritten over the existing bit map 620. Originator profile data 670 can also be updated based on tracked URL history and/or click-through data.
F. Example Propagative Poster Record and Tracking Information
Poster object 810 includes the following fields and content as set forth in Table 1 below.
Poster events object 820 includes the following fields and content shown in Table 2 below.
Poster event type object 830 has fields and content as shown below in Table 3.
Poster owner object 840 includes the following fields and content as set forth in Table 4.
Poster type object 850 has the following fields and content provided in Table 5.
Poster click action object 860 includes the following fields and content as shown in Table 6.
Poster click define object 870 has the following fields and content shown in Table 7. Note points (x1,y1) and (x2,y2) can be two points defining a rectangle (or square) area on a web page in bitmap space. In one embodiment, this set of points defines an input portion where a user clicks to propagate another poster.
Poster click action URL 880 includes the following fields and content as shown in Table 8.
Poster parameters object 890 includes the following fields and contents and shown in Table 9.
Poster parameters type object 892 includes the following fields and content as shown in Table 10.
Note other information can be tracked including client side variables, such as, screen depth, screen width, platform type, browser, and plug-ins installed on client. Such information and tracking is optional depending upon a particular application or preference of an administrator of propagative poster manager 310.
G. Detailed Viewing of Information Concerning Data Summarized on a Propagative Poster
As noted above, a feature of the present invention permits users to click on (i.e., select) summary information displayed on a propagative poster to access further information about a selected item or topic. In other words, a propagative poster allows a user to select summary information about an item or topic displayed on the propagative poster to thereby access further information about that selected item or topic.
In the context of a list of resumes, for example, a user can access details about a resume that looks interesting simply by clicking on a summary of the desired resume displayed in a list of resumes on a propagative poster. As described in the above sections, propagative poster manager 310 converts the selection screen space coordinates to x-y coordinates in bitmap space of the poster. Propagative poster manager 310 then evaluates the x-y coordinates in bitmap space to determine which resume summary was selected. The system then presents more detailed data corresponding to the resume summary from some host site to the user.
IV. Example Environment
The present invention can be implemented in any communication network, such as, the Internet, which supports interactive services and applications. In particular, the present invention can be implemented in any Web service, preferably a Web service supporting secure transactions, such as, the Secure Socket Layer (SSL) protocol and/or using a Secure HyperText Transport Protocol (S-HTTP). In one example, the present invention is implemented in a multi-platform (platform independent) programming language such as Java 1.1. Java-enabled browsers are used, such as, Netscape, HotJava, and Microsoft Explorer browsers. Active content Web pages can be used. Such active content Web pages can include Java applets or ActiveX controls, or any other active content technology developed now or in the future. The present invention, however, is not intended to be limited to Java or Java-enabled browsers, and can be implemented in any programming language and browser, developed now or in the future, as would be apparent to a person skilled in the art given this description.
Communication over a communication network such as, Internet 1200, is carried out through different layers of communication.
Description of the example environment in these terms is provided for convenience only. It is not intended that the invention be limited to application in this example environment. In fact, after reading the following description, it will become apparent to a person skilled in the relevant art how to implement the invention in alternative environments.
V. Example Computer System
An example of a computer system 1240 is shown in
Computer system 1240 includes one or more processors, such as processor 1244. One or more processors 1244 can execute software implementing routine 100 as described above. Each processor 1244 is connected to a communication infrastructure 1242 (e.g., a communications bus, cross-bar, or network). Various software embodiments are described in terms of this exemplary computer system. After reading this description, it will become apparent to a person skilled in the relevant art how to implement the invention using other computer systems and/or computer architectures.
Computer system 1240 also includes a main memory 1248, preferably random access memory (RAM), and can also include a secondary memory 1250. The secondary memory 1250 can include, for example, a hard disk drive 1252 and/or a removable storage drive 1254, representing a floppy disk drive, a magnetic tape drive, an optical disk drive, etc. The removable storage drive 1254 reads from and/or writes to a removable storage unit 1258 in a well known manner. Removable storage unit 1258 represents a floppy disk, magnetic tape, optical disk, etc., which is read by and written to by removable storage drive 1254. As will be appreciated, the removable storage unit 1258 includes a computer usable storage medium having stored therein computer software and/or data.
In alternative embodiments, secondary memory 1260 may include other similar means for allowing computer programs or other instructions to be loaded into computer system 1240. Such means can include, for example, a removable storage unit 1262 and an interface 1260. Examples can include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an EPROM, or PROM) and associated socket, and other removable storage units 1262 and interfaces 1260 which allow software and data to be transferred from the removable storage unit 1262 to computer system 1240.
Computer system 1240 can also include a communications interface 1264. Communications interface 1264 allows software and data to be transferred between computer system 1240 and external devices via communications path 1266. Examples of communications interface 1264 can include a modem, a network interface (such as Ethernet card), a communications port, etc. Software and data transferred via communications interface 1264 are in the form of signals which can be electronic, electromagnetic, optical or other signals capable of being received by communications interface 1264, via communications path 1266. Note that communications interface 1264 provides a means by which computer system 1240 can interface to a network such as the Internet.
The present invention can be implemented using software running (that is, executing) in an environment similar to that described above with respect to
Computer programs (also called computer control logic) are stored in main memory 1248 and/or secondary memory 1250. Computer programs can also be received via communications interface 1264. Such computer programs, when executed, enable the computer system 1240 to perform the features of the present invention as discussed herein. In particular, the computer programs, when executed, enable the processor 1244 to perform the features of the present invention. Accordingly, such computer programs represent controllers of the computer system 1240.
The present invention can be implemented as control logic in software, firmware, hardware or any combination thereof. In an embodiment where the invention is implemented using software, the software may be stored in a computer program product and loaded into computer system 1240 using removable storage drive 1254, hard drive 1250, or interface 1260. Alternatively, the computer program product may be downloaded to computer system 1240 over communications path 1266. The control logic (software), when executed by the one or more processors 1244, causes the processor(s) 1244 to perform the functions of the invention as described herein.
In another embodiment, the invention is implemented primarily in firmware and/or hardware using, for example, hardware components such as application specific integrated circuits (ASICs). Implementation of a hardware state machine so as to perform the functions described herein will be apparent to persons skilled in the relevant art(s).
VI. ConclusionWhile various embodiments of the present invention have been described above, it should be understood that they have been presented by way of example only, and not limitation. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined in the appended claims. Thus, the breadth and scope of the present invention should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.
Claims
1. A method for propagating a poster of host site content to remote users over the World Wide Web, comprising the steps of:
- (a) hosting a configuration session that allows a first remote user to configure a propagative poster of host site content based on at least one configuration selection input by the remote user;
- (b) generating a propagative poster identifier that references the user-configured propagative poster;
- (c) generating a Web code segment that includes the propagative poster identifier and a link to the host site; and
- (d) forwarding the generated Web code segment to the first remote user in real-time; whereby the generated Web code segment can be inserted into a Web page of the first remote user to create a first remote user-configured propagative poster on the Web page of the first remote user.
2. The method of claim 1, further comprising the step of:
- (e) generating the first remote user-configured propagative poster in response to a subsequent hit on the first remote user Web page by a second remote user that selects at least a portion of the Web page of the first remote user corresponding to the generated Web code segment.
3. The method of claim 2, wherein the at least one configuration selection input by the first remote user includes at least one search parameter, and wherein said generating step (e) includes the steps of:
- executing a search query of data based on each search parameter to obtain a search result; and
- generating the first remote user-configured propagative poster, wherein the user-configured propagative poster includes the search result.
4. The method of claim 3, wherein the search query executing step executes a search query of data at the host site based on each search parameter to obtain the search result.
5. The method of claim 2, further comprising the step of displaying the generated first remote user-configured propagative poster in a overlay window within a display view of a browser of the second remote user.
6. The method of claim 2, further comprising the step of hosting a second configuration session that allows the second remote user to configure a second remote-user configured propagative poster of host site content based on at least one configuration selection input by the second remote user.
7. The method of claim 6, wherein the first remote user-configured propagative poster includes an input portion that enables a second remote user to make another propagative poster; and further comprising the step of initiating said second configuration session hosting step in response to a selection of the input portion by the second remote user.
8. The method of claim 1, further comprising the steps of:
- converting a pair of screen space coordinates of a user input selection to a pair of coordinates (x,y) in bitmap space; and at least one of:
- determining whether the x,y coordinates in bit map space correspond to an input portion of the first remote-user configured propagative poster that enables a second remote user to make another propagative poster, and
- displaying detailed information from the host site related to summary information given by the pair of coordinates.
9. A system for propagating a poster of host site content to remote users over the World Wide Web, comprising:
- (a) hosting means for hosting a configuration session that allows a first remote user to configure a propagative poster of host site content based on at least one configuration selection input by the remote user;
- (b) first generating means for generating a propagative poster identifier that references the user-configured propagative poster;
- (c) second generating means for generating a Web code segment that includes the propagative poster identifier and a link to the host site; and
- (d) forwarding means for forwarding the generated Web code segment to the first remote user in real-time; whereby the generated Web code segment can be inserted into a Web page of the first remote user to create a first remote user-configured propagative poster on the Web page of the first remote user.
10. The system of claim 9, further comprising:
- (e) third generating means for generating the first remote user-configured propagative poster in response to a subsequent hit on the first remote user Web page by a second remote user that selects at least a portion of the Web page of the first remote user corresponding to the generation process.
11. The system of claim 10, wherein the at least one configuration selection input by the first remote user includes at least one search parameter, and wherein said third generating means (e) includes:
- means for executing a search query of data based on each search parameter to obtain a search result; and
- means for generating the first remote user-configured propagative poster, wherein the user-configured propagative poster includes the search result.
12. The system of claim 11, wherein said search query executing means executes a search query of data at the host site based on each search parameter to obtain the search result.
13. The system of claim 10, further comprising means for displaying the generated first remote user-configured propagative poster in a overlay window within a display view of a browser of the second remote user.
14. The system of claim 10, further comprising means for hosting a second configuration session that allows the second remote user to configure a second remote-user configured propagative poster of host site content based on at least one configuration selection input by the second remote user.
15. The system of claim 14, wherein the first remote user-configured propagative poster includes an input portion that enables a second remote user to make another propagative poster; and further comprising means for initiating said second configuration session hosting means in response to a selection of the input portion by the second remote user.
16. The system of claim 9, further comprising:
- means for converting a pair of screen space coordinates of a user input selection to a pair of coordinates (x,y) in bitmap space; and
- means for determining whether the x,y coordinates in bit map space correspond to an input portion of the first remote-user configured propagative poster that enables a second remote user to make another propagative poster.
17. A system for managing propagation of host site content to remote users over the World Wide Web, comprising:
- a propagative poster configuration module that hosts a configuration session that allows a first remote user to configure a propagative poster of host site content based on at least one configuration selection input by the remote user; and
- a propagative poster generator that generates a propagative poster identifier and a Web code segment, wherein the propagative poster identifier references the user-configured propagative poster the Web code segment includes the propagative poster identifier and a link to the host site, and forwards the generated Web code segment to the first remote user in real-time; whereby the generated Web code segment can be inserted into a Web page of the first remote user to create a first remote user-configured propagative poster on the Web page of the first remote user.
18. The system of claim 17, wherein said propagative poster generator further generates the first remote user-configured propagative poster in response to a subsequent hit on the first remote user Web page by a second remote user that selects at least a portion of the Web page of the first remote user corresponding to the generated Web code segment.
19. The system of claim 18, wherein the at least one configuration selection input by the first remote user includes at least one search parameter, and wherein said propagative poster generator executes a search query of data in a database based on each search parameter to obtain a search result, and generates the first remote user-configured propagative poster, wherein the user-configured propagative poster includes the search result.
20. The system of claim 18, wherein said propagative poster configuration module further hosts a second configuration session that allows the second remote user to configure a second remote-user configured propagative poster of host site content based on at least one configuration selection input by the second remote user.
21. A computer program product comprising a computer useable medium having computer program logic recorded thereon for enabling at least one processor to manage propagation of host site content to remote users over the World Wide Web in real-time over the World Wide Web (WWW), said computer program logic comprising:
- first computer readable program code means for enabling said at least one processor to host a configuration session that allows a first remote user to configure a propagative poster of host site content based on at least one configuration selection input by the remote user;
- second computer readable program code means for enabling said at least one processor to generate a propagative poster identifier that references the user-configured propagative poster;
- third computer readable program code means for enabling said at least one processor to generate a Web code segment that includes the propagative poster identifier and a link to the host site; and
- fourth computer readable program code means for enabling said at least one processor to forward the generated Web code segment to the first remote user in real-time; whereby the generated Web code segment can be inserted into a Web page of the first remote user to create a first remote user-configured propagative poster on the Web page of the first remote user.
22. A method for propagating a poster of host site content to remote sites over the World Wide Web, comprising the steps of:
- (a) at a host site, hosting a configuration session that allows a first remote user to configure a propagative poster of host site content based on at least one configuration selection input by the remote user;
- (b) at the host site, generating a propagative poster identifier that references the user-configured propagative poster;
- (c) at the host site, storing the propagative poster identifier and the user-configured propagative poster;
- (d) at the host site, generating a Web code segment that includes the propagative poster identifier and a link to the host site;
- (e) at the host site, forwarding the generated Web code segment to a remote site in real-time;
- (f) at the remote site, inserting into a Web page of the remote site the Web code segment;
- (g) at the remote site, forwarding the Web page of the remote site with the Web code segment to a second remote user;
- (h) at the host site, generating a remote propagative poster based on the propagative poster identifier; and
- (i) at the host site, forwarding the remote propagative poster to the second remote user.
Type: Application
Filed: Feb 20, 2007
Publication Date: Jun 28, 2007
Applicant: Kforce Inc. (Tampa, FL)
Inventors: Michael Foulger (Novato, CA), Peter van Gorder (Sebastopol, CA)
Application Number: 11/708,071
International Classification: G06F 17/00 (20060101); G06F 15/16 (20060101);