WO2008130932A1 - Method and system for automatic widget information aggregation - Google Patents

Method and system for automatic widget information aggregation Download PDF

Info

Publication number
WO2008130932A1
WO2008130932A1 PCT/US2008/060353 US2008060353W WO2008130932A1 WO 2008130932 A1 WO2008130932 A1 WO 2008130932A1 US 2008060353 W US2008060353 W US 2008060353W WO 2008130932 A1 WO2008130932 A1 WO 2008130932A1
Authority
WO
WIPO (PCT)
Prior art keywords
widget
generated information
webpage
user
server
Prior art date
Application number
PCT/US2008/060353
Other languages
French (fr)
Inventor
Joe Sriver
Original Assignee
Doapp, 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 Doapp, Inc. filed Critical Doapp, Inc.
Publication of WO2008130932A1 publication Critical patent/WO2008130932A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q90/00Systems or methods specially adapted for administrative, commercial, financial, managerial or supervisory purposes, not involving significant data processing

Definitions

  • a website is a collection of multimedia content, including text, hyperlinks, images, videos or other digital content that is hosted on one or more web servers, usually accessible via the Internet.
  • a webpage is a document, typically written in HTML, generally accessible via HTTP, a protocol that transfers information from the Web server to display in the user's web browser.
  • a web 2.0 webpage may provide widgets allowing for greater site interactivity, usability, and functionality.
  • Example widgets include 5 -star ratings, thumbs up/down rating, mini comment/discussion boards, quizzes, pools, etc.
  • widgets may be complex and difficult to add to a webpage.
  • FIG. 1 illustrates an example system for aggregating widget-generated information.
  • FIG. 2A illustrates an example screenshot of a webpage customizing a widget.
  • FIG. 2B illustrates an example screenshot of a widget.
  • Fig. 2C illustrates an example screenshot depicting a widget code snippet.
  • Fig. 2D illustrates an example screenshot of displaying widget- generated information.
  • Fig. 3 illustrates an example procedure for selecting a widget to add to a webpage.
  • Fig. 4 illustrates an example procedure for collecting and aggregating widget-generated information.
  • Fig. 5A illustrates an example data structure for storing widget- generated information.
  • Fig. 5B illustrates an example data entry for storing widget-generated information.
  • widgets are added to a webpage by copying and pasting a code snippet into the webpage.
  • a widget server generates the code snippets for a selection of widgets and transmits the widget responsive to a web browser executing the code snippet.
  • the widget server also collects widget- generated information from the widget, which is made available to both webmasters and webpage visitors, who may view and publish the information.
  • a widget can be a five-start rating widget added to a webpage allowing visitors to rate content in the webpage. By aggregating the feedback from all widgets at all webpages, a webpage visitor can view all widget- ratings made on all webpages with the widget.
  • Fig. 1 illustrates an example system 100 for aggregating widget- generated information.
  • the system serves webpages and widgets to browsers over a network.
  • the system also aggregates and stores widget-generated information for later reporting or publishing.
  • a user 102 interacts with a browser 104 to view webpages.
  • the browser 104 is an application that displays webpages.
  • the browser 104 executes on a computing device, such as a personal computer, a cellular phone, or any device configured to execute the browser 104.
  • the browser 104 is in communications with a network 106, such as the Internet.
  • the network 106 is configured to carry digital information to and from and browser 104.
  • a web server 108 is also in communications with the network 106.
  • the web server 108 is configured to transmit webpages responsive to requests from the browser 104.
  • the web server 108 communicates with the browser 104 over the network 106. It will be appreciated that while only one browser 104 and one web server 108 is illustrated, any number of browsers and web servers may exist in the system.
  • a widget server 110 is in communications with the web server 108.
  • the widget server 110 can be executing on a computing system with the web server 108.
  • the widget server 110 may be in physical connection with the web server 108.
  • the widget server 110 may be in communications with the web server 108 over a network.
  • the widget server 110 is configured to generate a code snippet for embedding into a webpage that will request a widget when executed by the browser 104.
  • the widget server 110 is also configured to transmit a requested widget to the browser 104 via the network 106 and the web server 108.
  • the widget server 110 is also configured to receive and store widget-generated information transmitted from the browser 104 during a widget runtime.
  • the widget server 110 is directly connected to the network 106 and thereby communicates with the browser 104 and the web server 108 over the network 106.
  • a memory 112 is in communications with the widget server 110.
  • the memory 112 may be any type of accessible storage medium, such as Random Access Memory (RAM), hard disk, flash memory, etc.
  • RAM Random Access Memory
  • the memory 112 may store data structures as illustrated later.
  • Widgets 114 are stored in the memory 112.
  • a widget is a programmable graphical user interface (GUI) element that displays or receives information.
  • GUI graphical user interface
  • a widget can be a combination of input and output areas.
  • Example widgets include a five star rating widget that receives visitor rating on content.
  • a thumbs up/thumbs down rating widget can accept "helpful" and "not helpful” ratings. For example, such ratings can be useful to rate comments left by other users.
  • An instant messaging widget allows communication with existing or new instant messaging protocols.
  • the instant messaging widget can be used to provide real-time customer service.
  • a social networking website statistics widget tracks which visitors to the webpage belong to a social networking website.
  • a social networking website can be MySpace.com, Facebook.com, Friendster.com, or others. This allows the webpage administrator to see a third party profile of webpage visitors.
  • a discussion forum widget provides functionality to accept user comments and feedback on a webpage. For example, a news site can allow users to comment and respond to current news.
  • a site newsletter widget accepts a visitor email address for a newsletter subscription. The widget server can also save back issue newsletters for visitor access and facilitate publication of new newsletters to subscribers.
  • a send page widget accepts a destination email address to send the webpage to. This eliminates the need for the visitor to separately open up an email client to send the email. This also allows the visitor to track all sent webpages and destinations from the widget server.
  • a short message service (SMS) widget accepts a cellular phone number and text for transmission to the associated cellular phone. For example, this allows users to send a SMS message to an accessible cell phone with directions or a phone number from the webpage.
  • SMS short message service
  • a quote of the day or important news banner provides text output relevant to the visitor. Other relevant content may be displayed, and the content can be updated periodically.
  • a site feedback and polls a quizzes widget can accept visitor feedback regarding a site. Such widgets can be used to gauge visitor sentiment and other information. Polls can be updated periodically.
  • a quizzes widget displays a question with multiple answers and one correct answer.
  • the quizzes widget can periodically update the question and answers.
  • a visitor counter displays a count of prior visitors to the website.
  • a mapping widget can provide directions or address information for a specified location by integrating with existing mapping websites, such as Google Maps and MapQuest.com. A user can enter a starting address and the mapping website generates directions to the specified location.
  • a widget 114 can be computer-readable code (such as a Java applet) that performs the function discussed above. It is stored in memory 112 accessible by the widget server 110 until it is requested by the browser 102. During execution, the widget 114 transmits widget-generated information 116 to the widget server 110 for aggregation.
  • a Java applet such as a Java applet
  • Widget-generated information 116 is stored in the memory 112. Widget generated information 116 includes any user-input provided to the widget or other information.
  • the browser 104 retrieves the webpage and executes any embedded code snippets.
  • the embedded code snippet refers the browser 104 to a widget 114.
  • the browser 104 requests the widget 114 from the widget server 110.
  • widget-generated information 116 is created and transmitted to the widget server 110 for storage in the memory 112.
  • FIG. 2A illustrates an example screenshot 200 of a webpage customizing a widget.
  • a webpage administrator wishing to include a widget on a webpage can access a widget server and begins a widget creation process.
  • a desired widget is selected from a set of available widgets, and the customizing webpage is displayed to receive any administrator-specified parameters associated with the widget.
  • the webpage administrator inputs the parameters, and a code snippet is generated for the desired widget.
  • a widget title and description 202 is displayed to the administrator reflecting the desired widget.
  • Input fields 204, 206, 208, 210, and 214 receive parameters associated with the widget.
  • input fields include a name of the widget, a title variable, colors for the border, background and text of the widget, a text size of the widget, an orientation of text in the widget, and an option to display statistics associated with the widget.
  • a finish button 214 allows the webpage administrator to save the parameter values and proceed with the widget creation process.
  • the input fields can be text fields, text areas, drop down boxes, radio buttons, submission buttons, or any other conventional input field.
  • a different customizing webpage can be available for each available widget type from the widget server. Different widgets can require different parameters and options, which requires different customizing webpages to receive user inputs.
  • Fig. 2B illustrates an example screenshot of a widget 222.
  • the widget 222 is a five star rating widget, as discussed above, and is displayed to visitors of a webpage.
  • the widget 22 can also be displayed to the administrator as a preview on the customizing webpage above.
  • the five star rating widget 222 can be placed next to content on a webpage to be rated and includes an input area.
  • the widget 222 can include other functionality, such as an update button that updates the rating and widget statistics to reflect additional visitor ratings after the widget is displayed.
  • the input area includes five stars, each one representing a different rating.
  • a webpage visitor selects the star representing a desired rating.
  • the output area can display widget statistics. The webpage administrator can select whether widget statistics are viewable by webpage visitors or not. Widget statistics for a five star rating widget include an average score and a number of votes submitted.
  • Fig. 2C illustrates an example screenshot 230 depicting a widget code snippet.
  • the widget code is generated by a widget server responsive to user selections received from a widget customizing webpage, as illustrated in Fig. 2A.
  • an appropriate widget is generated.
  • Generating a widget includes providing a code snippet containing appropriate parameters to be embedded in a webpage.
  • the code snippet when executed by a web browser displaying the webpage, causes the web browser to retrieve the appropriate widget from the widget server.
  • the widget is then displayed in the webpage to the visitor.
  • a widget title and description 232 is displayed to the user reflecting the selected widget.
  • a widget description describes the widget and possible uses of the widget on a webpage.
  • Installation instructions 234 are displayed to the user. Installation instructions can be to cut-and-paste the provided code snippet into a webpage next to each item to be rated by webpage visitors. Instructions also include any parameters that must be named by the webpage administrator.
  • a text area 236 can provide the code snippet.
  • the text area is read-only and does not accept user-inputs or changes to the code snippet.
  • the code snippet can be in HyperText Markup Language (HTML) for easy integration into existing webpages.
  • HTML HyperText Markup Language
  • the code snippet defines a Universal Resource Link (URL) to an appropriate widget stored on the widget server and also includes parameter values set in the customizing webpage above.
  • a link is provided to automatically select the code snippet for copying.
  • Fig. 2D illustrates an example screenshot of displaying widget- generated information.
  • the widget server stores and aggregates widget-generated information.
  • a widget type 242 collects all similar widgets together for display. Here, five star rating widgets are displayed.
  • a widget description 244 displays a description of a widget.
  • a five star rating widget includes a name, which can be used as a widget description 244.
  • a widget statistics 246 displays relevant statistics associated with the widget. For example, a five star rating widget includes an average rating, a number of views, a number of votes, and a voting ratio.
  • Links 248 link to widget administration functions. For example, the administrator can display the code snippet for copy-and-paste or viewing. The administrator can also edit the code snippet.
  • widget-generated information is displayed to webpage administrators that include widgets on their webpages.
  • widget-generated information is displayed to webpage visitors that are registered with the widget server. The webpage visitors can see all their previous inputs to various widgets supported by the widget server.
  • the widget server can also publish widget-generated information. Responsive to a user command, the widget server can generate a webpage that displays requested widget-generated information for publication on the Internet.
  • Fig. 3 illustrates an example procedure for selecting a widget to add to a webpage.
  • the procedure can execute on a widget server responsive to inputs and requests received from a web browser.
  • the web browser communicates with the widget server over the Internet and through a web server.
  • the widget server can be accessible over the Internet to the web browser.
  • the widget server tests whether a widget request is received.
  • the widget request can be received from the web server responsive to a webpage administrator request for a widget to be added to a webpage.
  • the widget server transmits a list of currently available widgets.
  • available widgets can be as discussed above.
  • the list can include graphical previews of the widgets as displayed in a webpage.
  • the widget server tests whether a widget selection is received.
  • the webpage administrator can select a desired widget from the widget list.
  • the procedure proceeds to 306. If a selection is not received, the procedure continues waiting at 304. Alternatively, the procedure can exit after a timeout period has occurred. A webpage administrator can decide to not select a widget from the widget list, and thus no selection will be received.
  • widget customization options are transmitted to the webpage administrator.
  • a widget customization webpage as illustrated in Fig. 2A can be transmitted to the webpage administrator.
  • any process that receives the required parameters associated with the selected widget can be used.
  • the widget server tests whether customization input has been received.
  • the customization input includes values for user-specified parameters as submitted by the widget customization webpage illustrated in Fig.
  • the procedure proceeds to 308. If the customization input is not received, the procedure continues waiting at 306. Alternatively, the procedure can exit after a timeout period has occurred. A webpage administrator can decide to not select a widget, and thus no customization options will be received. [0071] In 310, the widget server generates the selected widget with the customization options received as parameters. Generating a widget includes generating a code snippet containing appropriate parameters to be embedded in a webpage and verifying the code will be supported by the widget server.
  • the generated code snippet is transmitted to the webpage administrator.
  • the webpage administrator then cut-and-paste the code snippet into a webpage.
  • the generated widget is stored in a memory accessible to the widget server.
  • the widget server can store any user-specified parameters as well as a widget identifier and a visitor identifier.
  • the widget and visitor identifiers allow the widget server to track future widget-generated information.
  • Fig. 4 illustrates an example procedure for collecting and aggregating widget-generated information.
  • the procedure can execute on a widget server responsive to requests for widgets set by a web browser.
  • the web browser communicates with the widget server over the Internet and through a web server.
  • the widget server can be accessible over the Internet to the web browser.
  • the widget server can test whether a request for a widget is received. Widgets requests are made by web browsers executing a code snippet identifying a desired widget stored at the widget server.
  • the procedure proceeds to 402. If a request is not received, the procedure continues to wait at 400. [0078] In 402, the requested widget is transmitted to the web browser.
  • Computer code such as a Java applet
  • a copy of the code is retrieved and transmitted to the web browser.
  • the widget begins executing and provides the associated widget functionality.
  • the widget server can test whether widget-generated information is received.
  • a widget can produce widget-generated information during its execution on the web browser. Different widgets can generate different information, as discussed above.
  • the procedure proceeds to 406. If the widget-generated information is not received, the procedure can continue waiting at 404. Alternatively, a widget can be configured to send no widget-generated information, in which case the procedure proceeds to 408. [0081] In 406, the received widget-generated information is stored. For example, widget-generated information can include a visitor identifier, a widget identifier, and a visitor input into the widget during widget execution. The widget-generated information is stored in a widget server accessible memory. [0082] In 408, the widget server can test whether a request for widget- generated information is received. A webpage administrator can request to see widget-generated information from widgets placed on his webpages. A webpage visitor can request to see widget-generated information from widgets he has inputted into. The request is accompanied by parameters limiting the retrieved information, for example, by widget identifiers, visitor identifiers, a webpage, or a widget type.
  • the widget server retrieves the requested widget- generated information from memory.
  • the widget-generated information can be stored in a database, and the retrieval includes running a database query with appropriate parameters to reflect the search request.
  • the widget server transmits the retrieved widget- generated information.
  • the information can be transmitted to the web browser from where the request was received.
  • a widget can be configured to submit widget-generated information after the visitor registers with the webpage, the widget-generated information passes through an automated filter, or a moderator approves the widget-generated information. This prevents excessive spam from being added to the widget-generated information.
  • the widget server can also utilize cookie technology to track visitor computers.
  • Fig. 5A illustrates an example data structure 500 for storing widget- generated information.
  • the data structure can be stored in memory accessible to a widget server.
  • the data structure 500 includes entries 502, each data entry 502 representing a piece of widget-generated information.
  • a piece of widget-generated information is generated every time a widget is executed on a browser and a visitor provides widget input.
  • widgets and widget inputs can be as discussed above.
  • the widget-generated information stored in the data structure can be encrypted and otherwise protected by security measures.
  • the widget-generated information can also be periodically backed up for redundancy.
  • Fig. 5B illustrates an example data entry 502 for storing widget- generated information.
  • the data entry 502 includes a plurality of fields, including an entry identifier 504, a user identifier 506, and a widget identifier 508.
  • the identifiers can be unique alphanumeric identifiers used in the widget server to identify the entry 502, a visitor that created the entry 502 and a widget that entry 502.
  • the data entry 502 can include a user widget input 510.
  • the user widget input 510 stores the user input captured by the widget during execution, as discussed above.
  • the user widget input 510 can be a numeric rating from 1 to 5 for a five star rating widget.
  • the user widget input 510 can be a text string reflecting a user comment entered into a feedback widget.
  • the user widget input 510 can be an email address entered into a send page widget.
  • an example embodiment of the present invention may be a method for aggregating widget-generated information.
  • the method comprises, responsive to a web browser executing a code snippet embedded in a webpage, transmitting a widget to the web browser.
  • the method comprises receiving a widget-generated information from the widget.
  • the method comprises storing the received widget-generated information in an accessible medium.
  • the method comprises, responsive to a report command, displaying the widget-generated information.
  • the displayed widget-generated information may be collected from a plurality of widgets accessed by a user.
  • the user may be at least one of: a webpage visitor and a webpage administrator.
  • the code snippet may be automatically generated for the webpage administrator to cut-and-paste into the webpage.
  • the widget-generated information may include a user widget input, a widget identifier and a visitor identifier.
  • the method comprises, responsive to a publish command, publishing the widget-generated information on the Internet.
  • the transmitted widget may be at least one of a rating widget, an instant message widget, a statistics widget, a comment widget, a newsletter signup widget, a send page widget, a site feedback widget, and a visitor counter.
  • the widget server comprises a network interface in communications with a network.
  • the widget server comprises a memory storing a plurality of widgets.
  • the widget server comprises a processor in communications with the network interface and the memory.
  • the processor is configured to, responsive to a request for a selected widget received via the network, retrieve the selected widget from the plurality of widgets stored in the memory.
  • the processor is configured to transmit the selected widget to a requestor via the network.
  • the processor is configured to, responsive to receiving a widget-generated information from the selected widget via the network, store the received widget-generated information in the memory.
  • the processor is configured to, responsive to a report command received via the network, transmit the widget-generated information to the user.
  • the widget- generated information may be collected from a plurality of widgets accessed by a user.
  • the widget-generated information may include a user widget input, a widget identifier and a visitor identifier.
  • the user may be at least one of: a webpage visitor and a webpage administrator.
  • the processor is configured to, responsive to receiving a publish command via the network, publishing the widget-generated information on the Internet.
  • the transmitted widget may be at least one of a rating widget, an instant message widget, a statistics widget, a comment widget, a newsletter signup widget, a send page widget, a site feedback widget, and a visitor counter.
  • Another example embodiment of the present invention may be a computer-readable medium including instructions adapted to execute a method for aggregating widget-generated information.
  • the method comprises, responsive to a web browser executing a code snippet embedded in a webpage, transmitting a widget to the web browser.
  • the method comprises receiving a widget-generated information from the widget.
  • the method comprises storing the received widget-generated information in an accessible medium.
  • the method comprises, responsive to a report command, displaying the widget-generated information.
  • the displayed widget-generated information may be collected from a plurality of widgets accessed by a user.
  • the user may be at least one of: a webpage visitor and a webpage administrator.
  • the code snippet may be automatically generated for the webpage administrator to cut-and-paste into the webpage.
  • the widget-generated information may include a user widget input, a widget identifier and a visitor identifier.
  • the method comprises, responsive to a publish command, publishing the widget-generated information on the Internet.
  • the transmitted widget may be at least one of a rating widget, an instant message widget, a statistics widget, a comment widget, a newsletter signup widget, a send page widget, a site feedback widget, and a visitor counter.

Abstract

A method and system for aggregating widget use data. The method includes, responsive to a web browser executing a code snippet embedded in a webpage, transmitting a widget to the web browser. The method includes receiving a widget-generated information from the widget. The method includes storing the received widget-generated information in an accessible medium. The method includes, responsive to a report command, displaying the widget-generated information to the user.

Description

METHOD AND SYSTEM FOR AUTOMATIC WIDGET INFORMATION
AGGREGATION
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to provisional application number 60/925,393 entitled "PAGEPOW CONCEPT DOCUMENT", filed April 20, 2007, and which is incorporated herein by reference.
BACKGROUND
[0002] A website is a collection of multimedia content, including text, hyperlinks, images, videos or other digital content that is hosted on one or more web servers, usually accessible via the Internet. A webpage is a document, typically written in HTML, generally accessible via HTTP, a protocol that transfers information from the Web server to display in the user's web browser.
[0003] A web 2.0 webpage may provide widgets allowing for greater site interactivity, usability, and functionality. Example widgets include 5 -star ratings, thumbs up/down rating, mini comment/discussion boards, quizzes, pools, etc.
[0004] However, widgets may be complex and difficult to add to a webpage. Various applications exist to add widgets to a webpage, but are cumbersome to install, configure, and use. There are websites that provide widget code to add to a webpage. But there is no simple method for a website visitor who uses a widget to view all his widget generated information, for example, comments and ratings, from the different websites he visits.
[0005] Therefore, there is a need for users of website widgets to view the generated information from all widgets across all websites. BRIEF DESCRIPTION OF DRAWINGS
[0006] Fig. 1 illustrates an example system for aggregating widget-generated information. [0007J Fig. 2A illustrates an example screenshot of a webpage customizing a widget.
[0008] Fig. 2B illustrates an example screenshot of a widget.
[0009] Fig. 2C illustrates an example screenshot depicting a widget code snippet. [0010] Fig. 2D illustrates an example screenshot of displaying widget- generated information.
[0011] Fig. 3 illustrates an example procedure for selecting a widget to add to a webpage.
[0012] Fig. 4 illustrates an example procedure for collecting and aggregating widget-generated information.
[0013] Fig. 5A illustrates an example data structure for storing widget- generated information.
[0014] Fig. 5B illustrates an example data entry for storing widget-generated information.
DETAILED DESCRIPTION
[0015] In one embodiment, widgets are added to a webpage by copying and pasting a code snippet into the webpage. A widget server generates the code snippets for a selection of widgets and transmits the widget responsive to a web browser executing the code snippet. The widget server also collects widget- generated information from the widget, which is made available to both webmasters and webpage visitors, who may view and publish the information. [0016] For example, a widget can be a five-start rating widget added to a webpage allowing visitors to rate content in the webpage. By aggregating the feedback from all widgets at all webpages, a webpage visitor can view all widget- ratings made on all webpages with the widget. [0017] Fig. 1 illustrates an example system 100 for aggregating widget- generated information. The system serves webpages and widgets to browsers over a network. The system also aggregates and stores widget-generated information for later reporting or publishing.
[0018] A user 102 interacts with a browser 104 to view webpages. The browser 104 is an application that displays webpages. The browser 104 executes on a computing device, such as a personal computer, a cellular phone, or any device configured to execute the browser 104.
[0019] The browser 104 is in communications with a network 106, such as the Internet. The network 106 is configured to carry digital information to and from and browser 104.
[0020] A web server 108 is also in communications with the network 106. The web server 108 is configured to transmit webpages responsive to requests from the browser 104. The web server 108 communicates with the browser 104 over the network 106. It will be appreciated that while only one browser 104 and one web server 108 is illustrated, any number of browsers and web servers may exist in the system.
[0021] A widget server 110 is in communications with the web server 108. In one embodiment, the widget server 110 can be executing on a computing system with the web server 108. In another embodiment, the widget server 110 may be in physical connection with the web server 108. In another embodiment, the widget server 110 may be in communications with the web server 108 over a network.
[0022] The widget server 110 is configured to generate a code snippet for embedding into a webpage that will request a widget when executed by the browser 104. The widget server 110 is also configured to transmit a requested widget to the browser 104 via the network 106 and the web server 108. The widget server 110 is also configured to receive and store widget-generated information transmitted from the browser 104 during a widget runtime. [0023] In an alternative embodiment, the widget server 110 is directly connected to the network 106 and thereby communicates with the browser 104 and the web server 108 over the network 106.
[0024] A memory 112 is in communications with the widget server 110. The memory 112 may be any type of accessible storage medium, such as Random Access Memory (RAM), hard disk, flash memory, etc. The memory 112 may store data structures as illustrated later.
[0025] Widgets 114 are stored in the memory 112. A widget is a programmable graphical user interface (GUI) element that displays or receives information. For example, a widget can be a combination of input and output areas. Example widgets include a five star rating widget that receives visitor rating on content. Similarly, a thumbs up/thumbs down rating widget can accept "helpful" and "not helpful" ratings. For example, such ratings can be useful to rate comments left by other users.
[0026] An instant messaging widget allows communication with existing or new instant messaging protocols. For example, the instant messaging widget can be used to provide real-time customer service.
[0027] A social networking website statistics widget tracks which visitors to the webpage belong to a social networking website. For example, a social networking website can be MySpace.com, Facebook.com, Friendster.com, or others. This allows the webpage administrator to see a third party profile of webpage visitors.
[0028] A discussion forum widget provides functionality to accept user comments and feedback on a webpage. For example, a news site can allow users to comment and respond to current news. [0029] A site newsletter widget accepts a visitor email address for a newsletter subscription. The widget server can also save back issue newsletters for visitor access and facilitate publication of new newsletters to subscribers.
[0030] A send page widget accepts a destination email address to send the webpage to. This eliminates the need for the visitor to separately open up an email client to send the email. This also allows the visitor to track all sent webpages and destinations from the widget server.
[0031] A short message service (SMS) widget accepts a cellular phone number and text for transmission to the associated cellular phone. For example, this allows users to send a SMS message to an accessible cell phone with directions or a phone number from the webpage.
[0032] A quote of the day or important news banner provides text output relevant to the visitor. Other relevant content may be displayed, and the content can be updated periodically. [0033] A site feedback and polls a quizzes widget can accept visitor feedback regarding a site. Such widgets can be used to gauge visitor sentiment and other information. Polls can be updated periodically.
[0034] A quizzes widget displays a question with multiple answers and one correct answer. The quizzes widget can periodically update the question and answers.
[0035] A visitor counter displays a count of prior visitors to the website.
[0036] A mapping widget can provide directions or address information for a specified location by integrating with existing mapping websites, such as Google Maps and MapQuest.com. A user can enter a starting address and the mapping website generates directions to the specified location.
[0037] A widget 114 can be computer-readable code (such as a Java applet) that performs the function discussed above. It is stored in memory 112 accessible by the widget server 110 until it is requested by the browser 102. During execution, the widget 114 transmits widget-generated information 116 to the widget server 110 for aggregation.
[0038] Widget-generated information 116 is stored in the memory 112. Widget generated information 116 includes any user-input provided to the widget or other information.
[0039] When the user 102 visits a webpage, the browser 104 retrieves the webpage and executes any embedded code snippets. The embedded code snippet refers the browser 104 to a widget 114. The browser 104 then requests the widget 114 from the widget server 110. During execution of the widget 114, widget-generated information 116 is created and transmitted to the widget server 110 for storage in the memory 112.
[0040] Fig. 2A illustrates an example screenshot 200 of a webpage customizing a widget. A webpage administrator wishing to include a widget on a webpage can access a widget server and begins a widget creation process. A desired widget is selected from a set of available widgets, and the customizing webpage is displayed to receive any administrator-specified parameters associated with the widget. The webpage administrator inputs the parameters, and a code snippet is generated for the desired widget.
[0041] A widget title and description 202 is displayed to the administrator reflecting the desired widget. Input fields 204, 206, 208, 210, and 214 receive parameters associated with the widget. For a five star rating widget selected in the screenshot 200, input fields include a name of the widget, a title variable, colors for the border, background and text of the widget, a text size of the widget, an orientation of text in the widget, and an option to display statistics associated with the widget.
[0042] A finish button 214 allows the webpage administrator to save the parameter values and proceed with the widget creation process.
[0043] The input fields can be text fields, text areas, drop down boxes, radio buttons, submission buttons, or any other conventional input field. [0044] A different customizing webpage can be available for each available widget type from the widget server. Different widgets can require different parameters and options, which requires different customizing webpages to receive user inputs. [0045] Fig. 2B illustrates an example screenshot of a widget 222. The widget 222 is a five star rating widget, as discussed above, and is displayed to visitors of a webpage. The widget 22 can also be displayed to the administrator as a preview on the customizing webpage above.
[0046] The five star rating widget 222 can be placed next to content on a webpage to be rated and includes an input area. The widget 222 can include other functionality, such as an update button that updates the rating and widget statistics to reflect additional visitor ratings after the widget is displayed.
[0047] The input area includes five stars, each one representing a different rating. A webpage visitor selects the star representing a desired rating. [0048] The output area can display widget statistics. The webpage administrator can select whether widget statistics are viewable by webpage visitors or not. Widget statistics for a five star rating widget include an average score and a number of votes submitted.
[0049] Fig. 2C illustrates an example screenshot 230 depicting a widget code snippet. The widget code is generated by a widget server responsive to user selections received from a widget customizing webpage, as illustrated in Fig. 2A.
[0050] After the widget server receivers a desired widget and parameters associated with the desired widget from the customizing webpage, an appropriate widget is generated. Generating a widget includes providing a code snippet containing appropriate parameters to be embedded in a webpage. The code snippet, when executed by a web browser displaying the webpage, causes the web browser to retrieve the appropriate widget from the widget server. The widget is then displayed in the webpage to the visitor. [0051] A widget title and description 232 is displayed to the user reflecting the selected widget. A widget description describes the widget and possible uses of the widget on a webpage.
[0052] Installation instructions 234 are displayed to the user. Installation instructions can be to cut-and-paste the provided code snippet into a webpage next to each item to be rated by webpage visitors. Instructions also include any parameters that must be named by the webpage administrator.
[0053] A text area 236 can provide the code snippet. For example, the text area is read-only and does not accept user-inputs or changes to the code snippet. The code snippet can be in HyperText Markup Language (HTML) for easy integration into existing webpages. The code snippet defines a Universal Resource Link (URL) to an appropriate widget stored on the widget server and also includes parameter values set in the customizing webpage above.
[0054] A link is provided to automatically select the code snippet for copying.
[0055] Fig. 2D illustrates an example screenshot of displaying widget- generated information. The widget server stores and aggregates widget-generated information.
[0056] A widget type 242 collects all similar widgets together for display. Here, five star rating widgets are displayed.
[0057] A widget description 244 displays a description of a widget. For example, a five star rating widget includes a name, which can be used as a widget description 244.
[0058] A widget statistics 246 displays relevant statistics associated with the widget. For example, a five star rating widget includes an average rating, a number of views, a number of votes, and a voting ratio. [0059] Links 248 link to widget administration functions. For example, the administrator can display the code snippet for copy-and-paste or viewing. The administrator can also edit the code snippet.
[0060] In one example, widget-generated information is displayed to webpage administrators that include widgets on their webpages. In another example, widget-generated information is displayed to webpage visitors that are registered with the widget server. The webpage visitors can see all their previous inputs to various widgets supported by the widget server.
[0061] In addition to displaying widget-generated information, the widget server can also publish widget-generated information. Responsive to a user command, the widget server can generate a webpage that displays requested widget-generated information for publication on the Internet.
[0062] Fig. 3 illustrates an example procedure for selecting a widget to add to a webpage. The procedure can execute on a widget server responsive to inputs and requests received from a web browser. The web browser communicates with the widget server over the Internet and through a web server. Alternatively, the widget server can be accessible over the Internet to the web browser.
[0063] In 300, the widget server tests whether a widget request is received. The widget request can be received from the web server responsive to a webpage administrator request for a widget to be added to a webpage.
[0064] If a request is received, the procedure proceeds to 302. If no request is received, the procedure continues waiting at 300.
[0065] In 302, the widget server transmits a list of currently available widgets. For example, available widgets can be as discussed above. The list can include graphical previews of the widgets as displayed in a webpage.
[0066] In 304, the widget server tests whether a widget selection is received. The webpage administrator can select a desired widget from the widget list. [0067] If a selection is received, the procedure proceeds to 306. If a selection is not received, the procedure continues waiting at 304. Alternatively, the procedure can exit after a timeout period has occurred. A webpage administrator can decide to not select a widget from the widget list, and thus no selection will be received.
[0068] In 306, widget customization options are transmitted to the webpage administrator. For example, a widget customization webpage as illustrated in Fig. 2A can be transmitted to the webpage administrator. Alternatively, any process that receives the required parameters associated with the selected widget can be used.
[0069] In 308, the widget server tests whether customization input has been received. For example, the customization input includes values for user-specified parameters as submitted by the widget customization webpage illustrated in Fig.
2A. [0070] If the customization input is received, the procedure proceeds to 308. If the customization input is not received, the procedure continues waiting at 306. Alternatively, the procedure can exit after a timeout period has occurred. A webpage administrator can decide to not select a widget, and thus no customization options will be received. [0071] In 310, the widget server generates the selected widget with the customization options received as parameters. Generating a widget includes generating a code snippet containing appropriate parameters to be embedded in a webpage and verifying the code will be supported by the widget server.
[0072] In 312, the generated code snippet is transmitted to the webpage administrator. The webpage administrator then cut-and-paste the code snippet into a webpage.
[0073] In 314, the generated widget is stored in a memory accessible to the widget server. For example, the widget server can store any user-specified parameters as well as a widget identifier and a visitor identifier. The widget and visitor identifiers allow the widget server to track future widget-generated information.
[0074J In 316, the procedure ends.
[0075] Fig. 4 illustrates an example procedure for collecting and aggregating widget-generated information. The procedure can execute on a widget server responsive to requests for widgets set by a web browser. The web browser communicates with the widget server over the Internet and through a web server. Alternatively, the widget server can be accessible over the Internet to the web browser. [0076] In 400, the widget server can test whether a request for a widget is received. Widgets requests are made by web browsers executing a code snippet identifying a desired widget stored at the widget server.
[0077] If a request is received, the procedure proceeds to 402. If a request is not received, the procedure continues to wait at 400. [0078] In 402, the requested widget is transmitted to the web browser.
Computer code, such as a Java applet, can be stored in memory accessible to the widget server. A copy of the code is retrieved and transmitted to the web browser. Once at the web browser, the widget begins executing and provides the associated widget functionality. [0079] In 404, the widget server can test whether widget-generated information is received. A widget can produce widget-generated information during its execution on the web browser. Different widgets can generate different information, as discussed above.
[0080] If the widget-generated information is received, the procedure proceeds to 406. If the widget-generated information is not received, the procedure can continue waiting at 404. Alternatively, a widget can be configured to send no widget-generated information, in which case the procedure proceeds to 408. [0081] In 406, the received widget-generated information is stored. For example, widget-generated information can include a visitor identifier, a widget identifier, and a visitor input into the widget during widget execution. The widget-generated information is stored in a widget server accessible memory. [0082] In 408, the widget server can test whether a request for widget- generated information is received. A webpage administrator can request to see widget-generated information from widgets placed on his webpages. A webpage visitor can request to see widget-generated information from widgets he has inputted into. The request is accompanied by parameters limiting the retrieved information, for example, by widget identifiers, visitor identifiers, a webpage, or a widget type.
[0083] If a request is received, the procedure proceeds to 410. If a request is not received, the procedure ends in 414.
[0084] In 410, the widget server retrieves the requested widget- generated information from memory. For example, the widget-generated information can be stored in a database, and the retrieval includes running a database query with appropriate parameters to reflect the search request.
[0085] In 412, the widget server transmits the retrieved widget- generated information. The information can be transmitted to the web browser from where the request was received.
[0086] In 414, the procedure ends.
[0087] To improve security and information integrity, a widget can be configured to submit widget-generated information after the visitor registers with the webpage, the widget-generated information passes through an automated filter, or a moderator approves the widget-generated information. This prevents excessive spam from being added to the widget-generated information. The widget server can also utilize cookie technology to track visitor computers. [0088] Fig. 5A illustrates an example data structure 500 for storing widget- generated information. The data structure can be stored in memory accessible to a widget server.
[0089] The data structure 500 includes entries 502, each data entry 502 representing a piece of widget-generated information. For example, a piece of widget-generated information is generated every time a widget is executed on a browser and a visitor provides widget input. For example, widgets and widget inputs can be as discussed above.
[0090] The widget-generated information stored in the data structure can be encrypted and otherwise protected by security measures. The widget-generated information can also be periodically backed up for redundancy.
[0091] Fig. 5B illustrates an example data entry 502 for storing widget- generated information. The data entry 502 includes a plurality of fields, including an entry identifier 504, a user identifier 506, and a widget identifier 508. The identifiers can be unique alphanumeric identifiers used in the widget server to identify the entry 502, a visitor that created the entry 502 and a widget that entry 502.
[0092] The data entry 502 can include a user widget input 510. The user widget input 510 stores the user input captured by the widget during execution, as discussed above. For example, the user widget input 510 can be a numeric rating from 1 to 5 for a five star rating widget. The user widget input 510 can be a text string reflecting a user comment entered into a feedback widget. The user widget input 510 can be an email address entered into a send page widget.
[0093] As discussed above, an example embodiment of the present invention may be a method for aggregating widget-generated information. The method comprises, responsive to a web browser executing a code snippet embedded in a webpage, transmitting a widget to the web browser. The method comprises receiving a widget-generated information from the widget. The method comprises storing the received widget-generated information in an accessible medium. The method comprises, responsive to a report command, displaying the widget-generated information. The displayed widget-generated information may be collected from a plurality of widgets accessed by a user. The user may be at least one of: a webpage visitor and a webpage administrator. The code snippet may be automatically generated for the webpage administrator to cut-and-paste into the webpage. The widget-generated information may include a user widget input, a widget identifier and a visitor identifier. The method comprises, responsive to a publish command, publishing the widget-generated information on the Internet. The transmitted widget may be at least one of a rating widget, an instant message widget, a statistics widget, a comment widget, a newsletter signup widget, a send page widget, a site feedback widget, and a visitor counter.
[0094] Another example embodiment of the present invention may be a widget server. The widget server comprises a network interface in communications with a network. The widget server comprises a memory storing a plurality of widgets. The widget server comprises a processor in communications with the network interface and the memory. The processor is configured to, responsive to a request for a selected widget received via the network, retrieve the selected widget from the plurality of widgets stored in the memory. The processor is configured to transmit the selected widget to a requestor via the network. The processor is configured to, responsive to receiving a widget-generated information from the selected widget via the network, store the received widget-generated information in the memory. The processor is configured to, responsive to a report command received via the network, transmit the widget-generated information to the user. The widget- generated information may be collected from a plurality of widgets accessed by a user. The widget-generated information may include a user widget input, a widget identifier and a visitor identifier. The user may be at least one of: a webpage visitor and a webpage administrator. The processor is configured to, responsive to receiving a publish command via the network, publishing the widget-generated information on the Internet. The transmitted widget may be at least one of a rating widget, an instant message widget, a statistics widget, a comment widget, a newsletter signup widget, a send page widget, a site feedback widget, and a visitor counter.
[0095J Another example embodiment of the present invention may be a computer-readable medium including instructions adapted to execute a method for aggregating widget-generated information. The method comprises, responsive to a web browser executing a code snippet embedded in a webpage, transmitting a widget to the web browser. The method comprises receiving a widget-generated information from the widget. The method comprises storing the received widget-generated information in an accessible medium. The method comprises, responsive to a report command, displaying the widget-generated information. The displayed widget-generated information may be collected from a plurality of widgets accessed by a user. The user may be at least one of: a webpage visitor and a webpage administrator. The code snippet may be automatically generated for the webpage administrator to cut-and-paste into the webpage. The widget-generated information may include a user widget input, a widget identifier and a visitor identifier. The method comprises, responsive to a publish command, publishing the widget-generated information on the Internet. The transmitted widget may be at least one of a rating widget, an instant message widget, a statistics widget, a comment widget, a newsletter signup widget, a send page widget, a site feedback widget, and a visitor counter.
[0096] It will be appreciated to those skilled in the art that the preceding examples and embodiments are exemplary and not limiting to the scope of the present invention. It is intended that all permutations, enhancements, equivalents, combinations, and improvements thereto that are apparent to those skilled in the art upon a reading of the specification and a study of the drawings are included within the true spirit and scope of the present invention. It is therefore intended that the following appended claims include all such modifications, permutations and equivalents as fall within the true spirit and scope of the present invention.

Claims

CLAIMSWhat is claimed is:
1. A method for aggregating widget-generated information, comprising: responsive to a web browser executing a code snippet embedded in a webpage, transmitting a widget to the web browser; receiving a widget-generated information from the widget; storing the received widget-generated information in an accessible medium; and responsive to a report command, displaying the widget-generated information.
2. The method of claim 1 , wherein the displayed widget-generated information is collected from a plurality of widgets accessed by a user.
3. The method of claim 2, wherein the user is at least one of: a webpage visitor and a webpage administrator.
4. The method of claim 3, wherein the code snippet is automatically generated for the webpage administrator to cut-and-paste into the webpage.
5. The method of claim 2, wherein the widget- generated information includes a user widget input, a widget identifier and a visitor identifier.
6. The method of claim 1 , further comprising: responsive to a publish command, publishing the widget-generated information on the Internet.
7. The method of claim 1 , wherein the transmitted widget is at least one of a rating widget, an instant message widget, a statistics widget, a comment widget, a newsletter signup widget, a send page widget, a site feedback widget, and a visitor counter.
8. A widget server, comprising: a network interface in communications with a network; a memory storing a plurality of widgets; a processor in communications with the network interface and the memory, the processor configured to, responsive to a request for a selected widget received via the network, retrieve the selected widget from the plurality of widgets stored in the memory, transmit the selected widget to a requestor via the network, responsive to receiving a widget-generated information from the selected widget via the network, store the received widget-generated information in the memory, and responsive to a report command received via the network, transmit the widget-generated information to the user.
9. The widget server of claim 8, wherein the widget-generated information is collected from a plurality of widgets accessed by a user.
10. The widget server of claim 9, wherein the widget-generated information includes a user widget input, a widget identifier and a visitor identifier.
1 1. The widget server of claim 9, wherein the user is at least one of: a webpage visitor and a webpage administrator.
12. The widget server of claim 8, the processor further configured to responsive to receiving a publish command via the network, publishing the widget-generated information on the Internet.
13. The widget server of claim 8, wherein the transmitted widget is at least one of a rating widget, an instant message widget, a statistics widget, a comment widget, a newsletter signup widget, a send page widget, a site feedback widget, and a visitor counter.
14. A computer-readable medium including instructions adapted to execute a method for aggregating widget-generated information, the method comprising: responsive to a web browser executing a code snippet embedded in a webpage, transmitting a widget to the web browser; receiving a widget-generated information from the widget; storing the received widget-generated information in an accessible medium; and responsive to a report command, displaying the widget-generated information to the user.
15. The medium of claim 14, wherein the displayed widget-generated information is collected from a plurality of widgets accessed by a user.
16. The medium of claim 15, wherein the user is at least one of: a webpage visitor and a webpage administrator.
17. The medium of claim 16, wherein the code snippet is automatically generated for the webpage administrator to cut-and-paste into the webpage.
18. The medium of claim 15, wherein the widget-generated information includes a user widget input, a widget identifier and a visitor identifier.
19. The medium of claim 14, the method further comprising: responsive to a publish command, publishing the widget-generated information on the Internet.
20. The medium of claim 14, wherein the transmitted widget is at least one of a rating widget, an instant message widget, a statistics widget, a comment widget, a newsletter signup widget, a send page widget, a site feedback widget, and a visitor counter.
PCT/US2008/060353 2007-04-20 2008-04-15 Method and system for automatic widget information aggregation WO2008130932A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US92539307P 2007-04-20 2007-04-20
US60/925,393 2007-04-20

Publications (1)

Publication Number Publication Date
WO2008130932A1 true WO2008130932A1 (en) 2008-10-30

Family

ID=39875861

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2008/060353 WO2008130932A1 (en) 2007-04-20 2008-04-15 Method and system for automatic widget information aggregation

Country Status (1)

Country Link
WO (1) WO2008130932A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100235754A1 (en) * 2009-03-13 2010-09-16 At & T Intellectual Property I, L.P. User information widgets and methods for updating and retrieving user information
US20120023200A1 (en) * 2010-07-21 2012-01-26 International Business Machines Corporation Aggregated widget request processing
US10066948B2 (en) 2010-06-04 2018-09-04 Nokia Technologies Oy Method and apparatus for generating map-based snippets

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020139900A1 (en) * 2001-02-15 2002-10-03 Alain Porte Process for de-icing an air intake cowling of a reaction motor and device for practicing the same
US20030160822A1 (en) * 2002-02-22 2003-08-28 Eastman Kodak Company System and method for creating graphical user interfaces
US20070038934A1 (en) * 2005-08-12 2007-02-15 Barry Fellman Service for generation of customizable display widgets

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020139900A1 (en) * 2001-02-15 2002-10-03 Alain Porte Process for de-icing an air intake cowling of a reaction motor and device for practicing the same
US20030160822A1 (en) * 2002-02-22 2003-08-28 Eastman Kodak Company System and method for creating graphical user interfaces
US20070038934A1 (en) * 2005-08-12 2007-02-15 Barry Fellman Service for generation of customizable display widgets

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100235754A1 (en) * 2009-03-13 2010-09-16 At & T Intellectual Property I, L.P. User information widgets and methods for updating and retrieving user information
US9923990B2 (en) * 2009-03-13 2018-03-20 International Business Machines Corporation User information widgets and methods for updating and retrieving user information
US10066948B2 (en) 2010-06-04 2018-09-04 Nokia Technologies Oy Method and apparatus for generating map-based snippets
US20120023200A1 (en) * 2010-07-21 2012-01-26 International Business Machines Corporation Aggregated widget request processing
US8589515B2 (en) * 2010-07-21 2013-11-19 International Business Machines Corporation Aggregated widget request processing

Similar Documents

Publication Publication Date Title
US11295321B2 (en) System and method for interacting with a web portal
US8527596B2 (en) System and method for monitoring activity of a specified user on internet-based social networks
US10915217B2 (en) Application for assisting in conducting covert cyber operations
US9298763B1 (en) Methods for providing a profile completion recommendation module
US20110113086A1 (en) System and method for monitoring activity on internet-based social networks
JP5069730B2 (en) Event notification function providing device, event notification function providing method, and event notification function providing program
US8989356B2 (en) Notifying network contacts of inquiries
US11651144B2 (en) Systems, methods, and media for correlating information corresponding to multiple related frames on a web page
US20110238758A1 (en) Method And Apparatus For Displaying Feeds Content Of Contact And Processing Apparatus And System Thereof
US20160234326A1 (en) System and method for managing multiple content feeds
US20110271153A1 (en) Aggregation System Error Handling
US20120209685A1 (en) Check-ins to commercial venues
US20020054080A1 (en) Internet service controller with real time status display
JP2009501381A (en) Internet alert
US20110161440A1 (en) System and method for enhancing digital content
JP4963620B2 (en) Information search system, information search device, search result screen information generation method, and search result screen information generation processing program
WO2011002989A1 (en) System and method for enhancing digital content
US9507856B1 (en) System and method for discovering subscriber content affinity and making corresponding recommendations
US20130055111A1 (en) Social networking system, apparatus, and method
JP4963619B2 (en) Information search system, information search device, search result screen information generation method, and search result screen information generation processing program
US7689575B2 (en) Bitmask access for managing blog content
WO2008130932A1 (en) Method and system for automatic widget information aggregation
KR20060097288A (en) Research system using internet messenger
US11144970B2 (en) Information processing device and storage medium
JP5231368B2 (en) Event notification function providing system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08799888

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08799888

Country of ref document: EP

Kind code of ref document: A1