Some search engine and social networking websites provide a widget in the form of a graphical user interface (GUI) button to webmasters for inclusion in a webpage (e.g., a webpage which can be accessed with a Uniform Resource Locator or URL) on a website external to the search engine website or the social networking website. Among other things, this GUI button allows a user to interact with a webpage by publicly recommending the webpage to other users by clicking on the button.
In an example embodiment, a processor-executed method is described for associating user acknowledgements with an entity. According to the method, software at a social networking website verifies a hyperlink in an entity webpage displayed by a social networking website. The hyperlink links to an external entity webpage. The software also verifies a hyperlink in the external entity webpage. This hyperlink links to the entity webpage displayed by the social networking website. The software receives user acknowledgements from users viewing the entity webpage on the social networking website. And the software receives user acknowledgements from users viewing the external entity webpage. The software then calculates a sum of any user acknowledgements of the social-network entity webpage and any user acknowledgements of the external entity webpage. And the software causes the sum to be displayed on both the social-network entity webpage and the external entity webpage. Receipt of a user acknowledgement from a user who is a member of the social networking website does not add the entity to any access control list associated with the user at the social networking website.
This and other embodiments can include one or more of the following features. The acknowledgement can be received through a graphical user interface (GUI) button on the webpage. The acknowledgement can be confirmed with a GUI dialog box indicating that a user is acknowledging the entity, not the webpage being viewed by the user. Verifying a link can include verifying that the link is operational and that the webpage linked by the link is owned or controlled by the entity. Further, the software might display an image associated with a user who makes an acknowledgement, where the image is displayed on the first webpage, the second webpage, or both webpages. And the software might provide the sum for display in any search results that include the first webpage or the second webpage.
In another example embodiment, an apparatus is described, namely, a computer-readable storage medium that persistently stores a program for associating user acknowledgements with an entity. The program might be part of the software at a social networking website. The program verifies a hyperlink in an entity webpage displayed by a social networking website. The hyperlink links to an external entity webpage. The program also verifies a hyperlink in the external entity webpage. This hyperlink links to the entity webpage displayed by the social networking website. The program receives user acknowledgements from users viewing the entity webpage on the social networking website. And the program receives user acknowledgements from users viewing the external entity webpage. The program then calculates a sum of any user acknowledgements of the social-network entity webpage and any user acknowledgements of the external entity webpage. And the program causes the sum to be displayed on both the social-network entity webpage and the external entity webpage. Receipt of a user acknowledgement from a user who is a member of the social networking website does not add the entity to any access control list associated with the user at the social networking website.
Again, this and other embodiments can include one or more of the following features. The acknowledgement can be received through a graphical user interface (GUI) button on the webpage. The acknowledgement can be confirmed with a GUI dialog box indicating that a user is acknowledging the entity, not the webpage being viewed by the user. Verifying a link can include verifying that the link is operational and that the webpage linked by the link is owned or controlled by the entity. Further, the program might display an image associated with a user who makes an acknowledgement, where the image is displayed on the first webpage, the second webpage, or both webpages. And the program might provide the sum for display in any search results that include the first webpage or the second webpage.
In another example embodiment, another processor-executed method is described for associating user acknowledgements with an entity. According to the method, software at a social networking website verifies a hyperlink in an entity webpage displayed by a social networking website. The hyperlink links to an external entity webpage. The software also verifies a hyperlink in the external entity webpage. This hyperlink links to the entity webpage displayed by the social networking website. The software receives user acknowledgements from users viewing the entity webpage on the social networking website. The software also receives user acknowledgements from users viewing the external entity webpage. And the software receives user acknowledgements associated with an ad relating to the entity. The software then calculates a sum of any user acknowledgements of the social-network entity webpage, any user acknowledgements of the external entity webpage, and any user acknowledgements associated with the ad. And the software causes the sum to be displayed on the social-network entity webpage, on the external entity webpage, and proximate to the ad. Receipt of a user acknowledgement from a user who is a member of the social networking website does not add the entity to any access control list associated with the user at the social networking website.
This and other embodiments can include one or more of the following features. The acknowledgement can be received through a graphical user interface (GUI) button on the webpage. The acknowledgement can be confirmed with a GUI dialog box indicating that a user is acknowledging the entity, not the webpage being viewed by the user. Verifying a link can include verifying that the link is operational and that the webpage linked by the link is owned or controlled by the entity. Further, the software might display an image associated with a user who makes an acknowledgement, where the image is displayed on the first webpage, the second webpage, or both webpages. And the software might provide the combination for display in any search results that include the first webpage or the second webpage.
Other aspects and advantages of the disclosures will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, which illustrate by way of example the principles of the disclosures.
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the embodiments. However, the example embodiments may be practiced without some of these specific details.
Client device 102 might be a relatively non-mobile computing device such as a desktop or it might be a laptop. As such, its hardware might include one or more microprocessors, along with volatile and persistent storage in the form of RAM or a hard disk, respectively. The software running on client device 102 might include: (1) an operating system that runs on the hardware; and (2) a web browser, that runs on or is part of the operating system.
Client device 103 might be a mobile computing device such as a smartphone or a tablet computer. Its hardware might include one or more microprocessors, along with volatile and persistent storage in the form of RAM and flash memory (e.g., microSD), respectively. The software running on client device 103 might include: (1) an operating system that runs on the hardware; and (2) a web browser or web-browsing app that runs on or is part of the operating system.
In an example embodiment, website 104 might be composed of a number of servers connected by a network (e.g., a local area network (LAN) or a WAN) to each other in a cluster or other distributed system which might run: (1) an operating system , running on hardware that might include one or more microprocessors, along with volatile and persistent storage in the form of RAM or a hard disk, respectively; (2) website software (e.g., web-server software, database software, etc.); and/or (3) distributed-computing and/or cloud software. The servers might also be connected (e.g., by a storage area network (SAN)) to persistent storage that might include a redundant array of independent disks (RAID). In an alternative example embodiment, the servers in website 104 and/or their volatile and persistent storage might be hosted wholly or partially off-site in the cloud, e.g., as a platform-as-a-service (PaaS) or an infrastructure-as-a-service (IaaS). The servers at websites 105 and 106 might make use of similar hardware, software, and/or resource (e.g., persistent storage) configurations.
In an example embodiment, users of client devices 102 and 103 might use browsers to communicate with the software running on the servers at website 104. Further, persistent storage at website 104 might be used to store data related to user acknowledgements as described below, along with other webpage data and social networking data (e.g., profile data, stream data, access control lists or ACLs, etc.). And in an example embodiment, software running on one or more of the servers at website 104 might execute some or all of the process operations described below.
In an example embodiment, webpage 107 might be a webpage displayed by or on behalf of an entity (e.g., an online retailer). Webpages 108 and 109 might be webpages that are not displayed by or on behalf of the entity, but which nonetheless include content related to the entity, e.g., advertising content in the form of an ad. Webpage 110 might be a webpage that is (1) associated with the entity and (2) that is displayed by a social networking website, e.g., website 104.
In an example embodiment, software running on website 104 might (a) sum user indications of acknowledgment, endorsement, disapproval, rating, sharing, etc. (such as a GUI-button click) from webpages 107, 108, 109, and 110, (b) transmit the sum to the webpages (e.g., using HTML and/or JavaScript) over the Internet 101, and (c) store the sum for later updating in persistent storage 112, using an internal network (e.g., a storage area network or SAN). In an example embodiment, website 104 might receive the user indications over the Internet 101 directly from software (e.g., a web browser or web-browser plugin) running on the client device or client devices displaying the webpages. In an alternative example embodiment, website 104 might receive the user indications over the Internet 101 or over an internal network (e.g., a local area network or LAN) in aggregated or disaggregated form from software running on another website 111 (e.g., a search engine website).
Further, as depicted in
As depicted in
In other example embodiments, verification as to identity might be accomplished by verifying the hosting on the external website of a file specified by the social networking website. Or the software running on the social networking website might receive verification as to identity from an Interactive Voice Response (IVR) system or some similar automated system that receives a PIN that is entered by the entity that owns or controls the social-network entity webpage. In another alternative example embodiment, verification as to identity might be accomplished through automated analysis of the content (including anchor, title, text, etc.) of the social-network entity webpage, the external entity webpage, or other webpages, possibly in conjunction with other web signals and/or search signals. Or verification as to identity might be accomplished through automated analysis of data maintained by software running on the social networking website, e.g., profiles for the social-network entity webpage and other users (e.g., real persons and/or entities), postings to the streams associated with those profiles, and/or social signals such as mentions that are associated with those postings.
In operation 302, the software performs a similar verification as to operability and identity on a hyperlink in the external entity webpage. This hyperlink links to the entity webpage displayed by the social network website. It will be appreciated that the two hyperlinks described in operations 301 and 302 form a bi-directional hyperlink between an entity webpage displayed by the social networking website and an external entity webpage. Here again, verification of the hyperlink might include a verification as to: (1) operability, e.g., the URL associated with the hyperlink is functional and loads the social-network entity webpage; and/or (2) identity, e.g., the social-network entity webpage is owned or controlled by the entity.
In operation 303, the software receives user acknowledgements for the entity (e.g., an online retailer) from users viewing the entity webpage displayed by the social networking website. In an example embodiment, the user acknowledgement might result from a user clicking on a GUI button as described above. Further, the click might cause a confirmation dialog box to appear, indicating to the user that the user is acknowledging the entity, not the webpage that the user is viewing. In an alternative example embodiment, the entity webpage itself might indicate that clicking on the GUI button results in a user acknowledgement for the entity rather than the webpage that the user is viewing. Or a tooltip widget might indicate that clicking on the GUI button results in a user acknowledgement for the entity rather than the webpage that the user is viewing. In any case, receipt of a user acknowledgement from a user who is member of social networking website does not add the entity to any access control list (ACL) associated with the user at the social networking website. However, in an example embodiment, the confirmation dialog box described above or another dialog box might allow the user to add the entity to such an ACL.
In operation 304, the software receives user acknowledgements for the entity (e.g., an online retailer) from users viewing the external entity webpage (e.g., the webpage displayed by an online retailer). Here again, in an example embodiment, the user acknowledgement might result from a user clicking on a GUI button as described above. Further, the click might cause a confirmation dialog box to appear, indicating to the user that the user is acknowledging the entity, not the webpage that the user is viewing. In an alternative example embodiment, the webpage itself might indicate that clicking on the GUI button results in a user acknowledgement for the entity rather than the webpage that the user is viewing. Or a tooltip widget might indicate that clicking on the GUI button results in a user acknowledgement for the entity rather than the webpage that the user is viewing. In any case, receipt of a user acknowledgement from a user who is member of social networking website does not add the entity to any access control list (ACL) associated with the user at the social networking website. However, in an example embodiment, the confirmation dialog box described above or another dialog box might allow the user to add the entity to such an ACL.
In operation 305, the software calculates a sum of user acknowledgements from users viewing the social-network entity webpage and from users viewing the external entity webpage (e.g., displayed by an online retailer). Then in operation 306, the software causes the sum to be displayed on the social-network entity webpage and on the external entity webpage, e.g., through a transmission to a web browser displaying one of the webpages. In an example, the sum might be displayed along with profile images of the acknowledging users, using a GUI widget, on either the social-network entity webpage, the external entity webpage, or both webpages.
In an example embodiment, user acknowledgements might include both approving user acknowledgements and disapproving user acknowledgements. In such an embodiment, the sum calculated in operation 305 might involve treating approving user acknowledgements as positive values in the sum and treating disapproving user acknowledgements as negative values in the sum.
As depicted in
In other example embodiments, verification as to identity might be accomplished by verifying the hosting on the external website of a file specified by the social networking website. Or the software running on the social networking website might receive verification as to identity from an Interactive Voice Response (IVR) system or some similar automated system that receives a PIN that is entered by the entity that owns or controls the social-network entity webpage. In another alternative example embodiment, verification as to identity might be accomplished through automated analysis of the content (including anchor, title, text, etc.) of the social-network entity webpage, the external entity webpage, or other webpages, possibly in conjunction with other web signals and/or search signals. Or verification as to identity might be accomplished through automated analysis of data maintained by software running on the social networking website, e.g., profiles for the social-network entity webpage and other users (e.g., real persons and/or entities), postings to the streams associated with those profiles, and/or social signals such as mentions that are associated with those postings.
In operation 402, the software performs a similar verification as to operability and identity on a hyperlink in the external entity webpage. This hyperlink links to the entity webpage displayed by the social network website. It will be appreciated that the two hyperlinks described in operations 401 and 402 form a bi-directional hyperlink between an entity webpage displayed by the social networking website and an external entity webpage. Here again, verification of the hyperlink might include a verification as to: (1) operability, e.g., the URL associated with the hyperlink is functional and loads the social-network entity webpage; and/or (2) identity, e.g., the social-network entity webpage is owned or controlled by the entity.
In operation 403, the software receives user acknowledgements for the entity (e.g., an online retailer) from users viewing the entity webpage displayed by the social networking website. In an example embodiment, the user acknowledgement might result from a user clicking on a GUI button as described above. Further, the click might cause a confirmation dialog box to appear, indicating to the user that the user is acknowledging the entity, not the webpage that the user is viewing. In an alternative example embodiment, the entity webpage itself might indicate that clicking on the GUI button results in a user acknowledgement for the entity rather than the webpage that the user is viewing. Or a tooltip widget might indicate that clicking on the GUI button results in a user acknowledgement for the entity rather than the webpage that the user is viewing. In any case, receipt of a user acknowledgement from a user who is member of social networking website does not add the entity to any access control list (ACL) associated with the user at the social networking website. However, in an example embodiment, the confirmation dialog box described above or another dialog box might allow the user to add the entity to such an ACL.
In operation 404, the software receives user acknowledgements for the entity (e.g., an online retailer) from users viewing the external entity webpage (e.g., the webpage displayed by an online retailer). Here again, in an example embodiment, the user acknowledgement might result from a user clicking on a GUI button as described above. Further, the click might cause a confirmation dialog box to appear, indicating to the user that the user is acknowledging the entity, not the webpage that the user is viewing. In an alternative example embodiment, the webpage itself might indicate that clicking on the GUI button results in a user acknowledgement for the entity rather than the webpage that the user is viewing. Or a tooltip widget might indicate that clicking on the GUI button results in a user acknowledgement for the entity rather than the webpage that the user is viewing. In any case, receipt of a user acknowledgement from a user who is member of social networking website does not add the entity to any access control list (ACL) associated with the user at the social networking website. However, in an example embodiment, the confirmation dialog box described above or another dialog box might allow the user to add the entity to such an ACL.
In operation 405, the software calculates a sum of user acknowledgements from users viewing the social-network entity webpage and from users viewing the external entity webpage (e.g., displayed by an online retailer). Then in operation 406, the software causes the sum to be displayed in search results that include the social-network entity webpage and/or the external entity webpage. In an example embodiment, the search results might be displayed by the social networking website, when a user enters a query in an edit box associated with search functionality on the social-network entity webpage. In an alternative example embodiment, the search results might be displayed by a search engine website, when a user enters a query in an edit box associated with search functionality on a webpage displayed by the search engine website.
In an example embodiment, user acknowledgements might include both approving user acknowledgements and disapproving user acknowledgements. In such an embodiment, the sum calculated in operation 405 might involve treating approving user acknowledgements as positive values in the sum and treating disapproving user acknowledgements as negative values in the sum.
As depicted in
In other example embodiments, verification as to identity might be accomplished by verifying the hosting on the external website of a file specified by the social networking website. Or the software running on the social networking website might receive verification as to identity from an Interactive Voice Response (IVR) system or some similar automated system that receives a PIN that is entered by the entity that owns or controls the social-network entity webpage. In another alternative example embodiment, verification as to identity might be accomplished through automated analysis of the content (including anchor, title, text, etc.) of the social-network entity webpage, the external entity webpage, or other webpages, possibly in conjunction with other web signals and/or search signals. Or verification as to identity might be accomplished through automated analysis of data maintained by software running on the social networking website, e.g., profiles for the social-network entity webpage and other users (e.g., real persons and/or entities), postings to the streams associated with those profiles, and/or social signals such as mentions that are associated with those postings.
In operation 502, the software performs a similar verification as to operability and identity on a hyperlink in the external entity webpage. This hyperlink links to the entity webpage displayed by the social network website. It will be appreciated that the two hyperlinks described in operations 501 and 502 form a bi-directional hyperlink between an entity webpage displayed by the social networking website and an external entity webpage. Here again, verification of the hyperlink might include a verification as to: (1) operability, e.g., the URL associated with the hyperlink is functional and loads the social-network entity webpage; and/or (2) identity, e.g., the social-network entity webpage is owned or controlled by the entity.
In operation 503, the software receives user acknowledgements for the entity (e.g., an online retailer) from users viewing the entity webpage displayed by the social networking website. In an example embodiment, the user acknowledgement might result from a user clicking on a GUI button as described above. Further, the click might cause a confirmation dialog box to appear, indicating to the user that the user is acknowledging the entity, not the webpage that the user is viewing. In an alternative example embodiment, the entity webpage itself might indicate that clicking on the GUI button results in a user acknowledgement for the entity rather than the webpage that the user is viewing. Or a tooltip widget might indicate that clicking on the GUI button results in a user acknowledgement for the entity rather than the webpage that the user is viewing. In any case, receipt of a user acknowledgement from a user who is member of social networking website does not add the entity to any access control list (ACL) associated with the user at the social networking website. However, in an example embodiment, the confirmation dialog box described above or another dialog box might allow the user to add the entity to such an ACL.
In operation 504, the software receives user acknowledgements for the entity (e.g., an online retailer) from users viewing (1) the external entity webpage (e.g., the webpage displayed by an online retailer) or (2) an entity ad (e.g., an ad that promotes the entity). In an example embodiment, the entity ad might be presented as a display ad in a webpage displayed by an email website, proximate to a GUI button as described above. Here again, in an example embodiment, the user acknowledgement might result from a user clicking on a GUI button as described above. Further, the click might cause a confirmation dialog box to appear, indicating to the user that the user is acknowledging the entity, not the webpage or ad that the user is viewing. In an alternative example embodiment, the webpage itself might indicate that clicking on the GUI button results in a user acknowledgement for the entity rather than the webpage or ad that the user is viewing. Or a tooltip widget might indicate that clicking on the GUI button results in a user acknowledgement for the entity rather than the webpage or ad that the user is viewing. In any case, receipt of a user acknowledgement from a user who is member of social networking website does not add the entity to any access control list (ACL) associated with the user at the social networking website. However, in an example embodiment, the confirmation dialog box described above or another dialog box might allow the user to add the entity to such an ACL.
In operation 505, the software calculates a sum of user acknowledgements from users viewing the social-network entity webpage, from users viewing the external entity webpage (e.g., displayed by an online retailer), and users viewing the ad. Then in operation 506, the software causes the sum to be displayed on the social-network entity webpage and on the external entity webpage, e.g., through a transmission to a web browser displaying one of the webpages. In an example, the sum might be displayed along with profile images of the acknowledging users, on the social-network entity webpage, the external entity webpage, or both webpages. And in operation 507, the software causes the sum to be displayed proximate to the ad, e.g., through a transmission to a web browser displaying the webpage with the ad.
In an example embodiment, user acknowledgements might include both approving user acknowledgements and disapproving user acknowledgements. In such an embodiment, the sum calculated in operation 505 might involve treating approving user acknowledgements as positive values in the sum and treating disapproving user acknowledgements as negative values in the sum.
As shown in
With the above embodiments in mind, it should be understood that the disclosures might employ various computer-implemented operations involving data stored in computer systems. These operations are those requiring physical manipulation of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. Further, the manipulations performed are often referred to in terms, such as producing, identifying, determining, or comparing.
Any of the operations described herein that form part of the disclosures are useful machine operations. The disclosures also relate to a device or an apparatus for performing these operations. The apparatus may be specially constructed for the required purposes, such as the carrier network discussed above, or it may be a general purpose computer selectively activated or configured by a computer program stored in the computer. In particular, various general purpose machines may be used with computer programs written in accordance with the teachings herein, or it may be more convenient to construct a more specialized apparatus to perform the required operations.
The disclosures can also be embodied as computer readable code on a computer readable medium. The computer readable medium is any data storage device that can store data, which can thereafter be read by a computer system. Examples of the computer readable medium include hard drives, network attached storage (NAS), read-only memory, random-access memory, CD-ROMs, CD-Rs, CD-RWs, DVDs, Flash, magnetic tapes, and other optical and non-optical data storage devices. The computer readable medium can also be distributed over a network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
Although example embodiments of the disclosures have been described in some detail for purposes of clarity of understanding, it will be apparent that certain changes and modifications can be practiced within the scope of the following claims. For example, the entity webpage displayed by a social networking website might be replaced by an entity webpage displayed by a social media website. Furthermore, the operations described above can be ordered, modularized, and/or distributed in any suitable way. Accordingly, the present embodiments are to be considered as illustrative and not restrictive, and the disclosures are not to be limited to the details given herein, but may be modified within the scope and equivalents of the following claims. In the following claims, elements and/or steps do not imply any particular order of operation, unless explicitly stated in the claims or implicitly required by the disclosure.
This application claims priority to and the benefit of U.S. Provisional Application No. 61/556,168, bearing the same title, which was filed on Nov. 4, 2011, and whose disclosure is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
61556168 | Nov 2011 | US |