Source: https://patents.google.com/patent/US8775247B2/en
Timestamp: 2019-04-20 13:26:27+00:00

Document:
A social networking system generates socially-relevant stories for a user based on other users (e.g., based on actions taken by other users) to whom the user is connected. These socially-relevant stories, including news stories, social advertisements, etc., may be presented on a web page within a domain of an external system that is different from the domain of the social networking system. When a web page from an external system is requested for a viewing user, the social content about other users who are connected to the viewing user may be provided by the social networking system for that viewing user. This personalized social content may be presented in a frame (e.g., an iframe) of the external web page rendered and provided for display to the viewing user.
This application is a continuation of U.S. application Ser. No. 12/193,702, filed Aug. 18, 2008, which claims the benefit of U.S. Provisional Application No. 60/985,631, filed Nov. 5, 2007, which are both incorporated by reference in their entireties.
This invention relates generally to social networking websites and other websites in which users can form connections with each other, and in particular to using those connections in the websites to generate and communicate social advertisements and other messages.
Social networks, or social utilities that track and enable connections between members (including people, businesses, and other entities), have become prevalent in recent years. In particular, social networking websites allow members to communicate information more efficiently. For example, a member may post contact information, background information, job information, hobbies, and/or other member-specific data to a location associated with the member on a social networking website. Other members can then review the posted data by browsing member profiles or searching for profiles including specific data. The social networking websites also allow members to associate themselves with other members, thus creating a web of connections among the members of the social networking website. These connections among the members can be exploited by the website to offer more relevant information to each member in view of the members' own stated interests in their connections.
Social networking websites typically incorporate a system for connecting members to content that is most likely to be relevant to each member. For example, members may be grouped according to one or more common attributes in their profiles, such as geographic location, employer, job type, age, music preferences, interests, or other attributes. Members of the social networking website or external parties can then use these groups to customize or target information delivery so that information that might be of particular interest to a group can be communicated to that group.
Advertisers have attempted to leverage this information about members, targeting their ads to members whose interests best align with the ads. For example, a social networking website may display banner ads for a concert to members who include an affinity for the performing band in their website profile and live near a concert venue where that band might be performing. However, these attempts are no different than targeting of ads that exist in many other contexts. Advertisers have not yet been able to exploit the relationships and connections among members of a social networking website in a meaningful way to present their advertising message to consumers.
To present advertising that is more effective than traditional targeted online advertising, a social networking website uses the information it obtains about its members' actions and their connections to other members of the website. Rather than merely deliver a message that is targeted to a particular member based on the member's preferences, embodiments of the invention present advertisements that communicate information about actions taken by others in the member's network (i.e., the member's friends and other relationships and connections in the social networking website)—or “social ads.” A social ad, for example, may inform a member that a friend (or a number of friends) of the member has purchased a particular item made by an advertiser, will attend an event sponsored by an advertiser, or has added a connection to a profile for a business or other entity.
Social ads allow advertisers to leverage one member's actions to promote specific content to others who might be interested in that information—not only because they might have similar interests, but also because of their connection with the member. This mode of advertising may be more effective because members are more likely to be influenced to respond to an advertiser's message in the presence of information that their friends or other connections have also taken an action related to the advertiser. Social ads thus allow advertisers to enjoy the credibility that consumers naturally give to their friends through word of mouth advertising. Beyond simple targeting of ads that merely chase demand, therefore, this approach is better able to create or generate demand by providing the socially related information to members about their friends' actions.
In one embodiment, a social networking website collects and logs information about actions taken by members of the website. These logged actions may be actions in connection with the social networking website and/or its members, with another website, or real world actions captured and communicated to the social networking website. At a certain point when a particular member is accessing the social networking website, the website presents the member with information about actions taken by other members with whom the member is associated (i.e., the member's “friends”). The actions that are communicated may be of a commercial nature, where a third party advertiser desires to communicate information about or related to the actions to the member's friends. The actions are communicated by presentation of social ads to the members. The social ads may be presented to a member while the member is using the social networking website, or as the member is using other websites.
In one embodiment, the selection of the friends to receive a given social ad is made so as to maximize the advertising revenue to the social networking website, particularly in cases where the resources to publish the ads are limited, for example, in terms of the available area on a screen display for showing the social ads. In one advertising model, each advertiser may bid a certain amount of money for each instance that a member clicks on or takes some other follow-on action with respect to the social ad. To increase the advertising revenue, the social networking website selects which social ads to present to a particular member based on the expected revenue values for each of the qualified ads. The expected revenue value for a social ad may be a function of a member's affinity for the content of the information in the social ad (which acts as a proxy for the likelihood that a member will click on the social ad) and the amount of money that the social networking website will receive for that action. In some cases the expected revenue value may additionally be a function of the member's likelihood of clicking on an ad based on other ads the member has clicked on in the past.
FIG. 1 is an event diagram illustrating the collection of member actions and the creation of social ads for the member's friends on the website, in accordance with an embodiment of the invention.
FIG. 2 is a network diagram of a system for providing social ads to members of a social networking website, in accordance with an embodiment of the invention.
FIG. 4 is an interaction diagram of a process for logging member actions, in accordance with an embodiment of the invention.
FIG. 5 is an interaction diagram of a process for generating a social ad, in accordance with an embodiment of the invention.
FIG. 8 is a portion of a web page showing a combination of newsfeed stories and social ads, in accordance with an embodiment of the invention.
FIG. 12 illustrates a process in which actions from a third party website are communicated to and used by a social networking website to generate social ads, in accordance with an embodiment of the invention.
As illustrated, the social networking website 100 maintains a number of objects for the different kinds of items with which a member may interact on the website 100. In one example embodiment, these objects include member profiles 105, group objects 110, event objects 115, application objects 120, and transaction objects 125 (respectively, hereinafter, groups 110, events 115, applications 120, and transactions 125). In one embodiment, an object is stored by the website 100 for each instance of its associated item. For example, a member profile 105 is stored for each member who joins the website 100, a group 110 is stored for each group defined in the website 100, and so on. The types of objects and the data stored for each is described in more detail below in connection with FIG. 3, which illustrates an embodiment of the social networking website 100.
At some point in its operation, the social networking website 100 will need to obtain a social ad 180 to display on the website. FIG. 1 illustrates a process in which a social ad is generated for one of the friends of the member. To generate a social ad 180 for one of the member's friends, the website 100 accesses the action log 160 and a database of ad requests 175. The database of ad requests 175 include a number of requests that define criteria for creating a social ad 180. Using the ad requests 175 and the action log 160, the website 100 applies a social ad generation algorithm 170 to create one or more social ads 180 tailored for the particular friend. Each generated social ad 180 comprises an advertising message that communicates a message about at least one member action from the action log 160. In one embodiment, the social ad 180 communicates a message about the actions of some number of friends of the member. For example, a member may receive a message like “Three of your friends have joined the “Yale Alumni Network.” The advertising message may also include additional content from the advertiser. The advertising message is communicated to the friend, for example as a message on the friend's home page, in an email message, in a list or newsfeed of other advertising messages and stories describing various actions taken, or any other electronic communication medium. The ad requests 175 and the ad generation algorithm 170 are described in more detail below.
In another embodiment, the action log can be divided into multiple action logs, each such action logs containing actions taken by a particular member. The actions could also be stored initially in these member specific action logs. To generate a social ad for a particular member, the website would access the action logs of the member's friends and a database of ad requests. Using the ad requests and one or more of the action logs, the website applies a social ad generation algorithm to create one or more social ads tailored for the particular member.
The social networking website 100 comprises a computing system that allows members to communicate or otherwise interact with each other and access content as described herein. The social networking website 100 stores member profiles that describe the members of a social network, including biographic, demographic, and other types of descriptive information, such as work experience, educational history, hobbies or preferences, location, and the like. The website 100 further stores data describing one or more relationships between different members. The relationship information may indicate members who have similar or common work experience, group memberships, hobbies, or educational history. Additionally, the social network host site 230 includes member-defined relationships between different members, allowing members to specify their relationships with other members. For example, these member defined relationships allows members to generate relationships with other members that parallel the members' real-life relationships, such as friends, co-workers, partners, and so forth. Members may select from predefined types of relationships, or define their own relationship types as needed.
The action logger 360 is capable of receiving communications from the web server 350 about member actions on and/or off the social networking website 100. As described in more detail below in connection with FIG. 4, the action logger 360 populates the action log 160 with information about these member actions tracked in the log 160.
The newsfeed generator 370 generates communications for each member about information that may be relevant to the member. These communications may take the form of stories, each story is an information message comprising one or a few lines of information about an action in the action log that is relevant to the particular member. The stories are presented to a member via one or more pages of the social networking website 100, for example in each member's home page or newsfeed page. The operation of the newsfeed generator 370 is described in more detail below in connection with FIGS. 4 and 6.
FIG. 4 illustrates a process in which member actions are logged in the action log 160, in one embodiment. In this process, a member uses a member client device 210 to perform 405 an action in connection with the social networking website 100. This action may be a member selection of a link on the website 100 using the member client device 210, and the selection of the link is thus received by the web server 350. As described above, however, the website 100 may receive messages from third party websites 140 and/or from action terminals 150 about member actions performed off the social networking website 100. Upon notification of the member's action, the web server 350 reports 410 the action to the action logger 360, which logs 415 the action in the action log as described above.
This process for obtaining log entries in the action log 10 of various member actions repeats each time a member of the social networking website 100 performs an action. In this way, the action log 10, over time, may store a rich information set about the actions of the website's members, which can then be leveraged for marketing purposes. The website 100 may ignore certain member actions, such as those that have little or no significance to the purpose of the system, to avoid using memory and computing resources to track actions that are insignificant.
FIG. 5 illustrates a process for generating social ads in accordance with one embodiment of the invention. In this embodiment, the process for generating social ads is used for a social networking website 100 that also publishes information to its members about the actions of other members to whom the members are connected, in this case, friends. This information published to members about their friends outside the context of the social ads is provided in the form of short newsfeed stories (information messages) about the members' friends. The newsfeed stories are displayed to a member on a member's home page, for example. For each member, the website 100 is configured to generate a personalized set of newsfeed stories and social ads that are likely to be relevant to the member. Although described in the newsfeed context, in other embodiments the social ads may be generated by the website 100 and published to members in a website 100 that does not use newsfeed stories or publishes the social ads outside the context of newsfeed stories, such as in banner ads.
In a first step, a member requests 505 a web page from the social networking website 100 via the member device 210. This may be an initial web page that is presented when a member logs into the website 100, or it may be any other page displayed by the website 100 in response to member selections. The web server 350 handles the request and, determining that the requested web page will require the display of a social ad, the web server 350 begins the process of generating the social ad in the website 100. The web server 350 requests 510 stories from the newsfeed generator 370. As mentioned above, this request 510 includes a request for stories as well as social advertisements, as both of these items may be presented in the same interface as items that contain information about the actions that concern people or other objects on the website 100 in which the member has an interest. Social ads thus can be, at least in some cases, paid or sponsored stories. In other embodiments, the web server 350 may merely request a social ad for display on the requested web page.
In response to the request for stories, the newsfeed generator 370 queries 515 the action log 160 for information that may be relevant to the member, based on the member's action and profile properties, and the action log 160 returns 520 the requested set of actions to the newsfeed generator 370. The newsfeed generator 370 then generates 525 the newsfeed stories using this information. One embodiment of a process for requesting relevant information and generating the newsfeed stories is described in more detail in connection with FIG. 6.
In addition to generating 525 newsfeed stories, the newsfeed generator 370 queries 530 the ad server 380 for one or more social ads. The ad server 380 generates 535 the requested social ads according to a social ad generation algorithm 170 (see FIG. 1). One embodiment of a process for generating the social ad is described in more detail in connection with FIG. 9. Once the social ad is generated 535, the ad server 380 returns 540 the social ad to the newsfeed generator 370. The newsfeed generator 370 then combines 545 the newsfeed stories and the social ads into a single list and sends 550 them to the web server 350 for presentation to the member. The web server 350 then publishes the newsfeed stories and the social ads on the requested web page and provides 555 the web page to the member. The member is thus presented with relevant information about the member's friends' actions. This information may be paid for by an advertiser and may include additional information about that advertiser, its products, and/or its services. Described in more detail below, FIG. 8 is an example of a combination of newsfeed stories and social ads presented on a web page to a member.
FIG. 6 illustrates a process for generating newsfeed stories in connection with member actions on a social networking website 100. This process may be performed by a newsfeed generator 370 in the website 100, as in the process illustrated in FIG. 5. The newsfeed generator 370 receives 605 a request for a set of newsfeed stories for a particular member. In response, the newsfeed generator 370 obtains 610 a listing of any actions contained in the action log 160 that are related to the member. In one embodiment, entries in the action log 160 are considered to be related to the member if they contain one of the member's friends or another object (such as an event or group) with which the member is connected. The objects with which a member is connected may be defined in the member's profile. Various other rules may be defined for determining whether particular entries in the action log 160 are relevant to a particular member, depending on the goal and purpose of the system.
[Member field 705] [Action field 710] [Target field 715] [Object field 720].
where the member target are link anchors to the respective members, and the object is a link anchor to an event. The example story above may further include graphics, links, or other content information for the Content field 725.
Because screen real estate is limited, and because for a given member there could be hundreds, potentially thousands, of stories that could displayed at any given time, the newsfeed generator 370 must generally select a subset of all the possible newsfeed stories for display to the member. Preferably, the newsfeed generator 370 selects the stories that would be most interesting to the particular member. It is noted that the newsfeed generator 370 performs this process for each member individually, so the selection of relevant information for one member need not, and generally should not, affect the selection of relevant information (such as newsfeed stories and social ads) that are displayed to any other member.
In one embodiment, the newsfeed generator 370 computes 620 an affinity score for each of a set of candidate stories. A member may have affinities for other members, types of actions, types of objects, and content. Accordingly, the affinity score may be based on a weighted function that takes into account the set of affinities for the particular member for each type of data field that is in a candidate story. The website may obtain a member's affinities based on the member's express interests (whether provided directly or indirectly, for example, through communications with other members) and/or impliedly based on the member's actions (e.g., a member's checking of another member's page indicates an interest in that other member, or clicking on particular types of links may indicate an interest in similar links). An affinity, as measured for example by an affinity score, need not be an actual subjective interest or lack of interest that a member has for something (i.e., the member likes punk rock music, and dislikes vegetarian restaurants), but rather it may merely be a correlation between something in the candidate story and some information stored in connection with that member, whether is an action taken by the member, a communication involving the member, a characteristic, feature or expressed interest in the member's profile.
Continuing the example from above, if a member has a high affinity score for John Smith or Bob Roberts and for being invited to events, the example story would tend to have a relatively high affinity score. Once the affinity scores are computed, the newsfeed generator 370 publishes 625 the top N newsfeed stories to the web page, where N is the number of stories allocated for the web page.
FIG. 9 illustrates a process for generating social ads, which process may be performed by the ad server 380. The ad server receives 905 a request for a social ad for a particular member. In one embodiment, this request specifies the particular member by including the member's unique member identifier with the request. The ad server 380 then applies 910 the targeting criteria for each of the ad requests in the ad request database 175 to the member, if any. As described in more detail below in connection with FIG. 11, an ad request may specify a set of targeting criteria to direct the social ads to only those members who fit certain criteria. An example targeting criteria may specify any members between the ages of 18 and 30 and who have music in their interests. The ad server 380 would thus apply this targeting criteria to a particular member to determine whether to use or ignore this ad request for the member. This would then be repeated for each ad request, using the corresponding targeting criteria contained in each.
The ad server 380 then queries the action log 160 to obtain 915 action entries that match any of the ad requests whose targeting criteria were satisfied in step 910. As described in more detail below in connection with FIG. 11, an ad request may specify a type of object for which an action related to that object triggers a social ad. For example, to promote a concert for a new band, an ad request may specify an event object created for that concert. Accordingly, if one of the member's friends added the concert event to that friend's profile, the ad server 380 may obtain 915 that action from the log 160 to serve as a candidate for a social ad.
Each of the triggering actions that were obtained 915 from the log 160 for the qualifying ad requests represent a candidate social ad that may be generated by the ad server 380. To select which one or ones of the candidate social ads to generate, the ad server computes 925 an expected value for each of the candidate social ads. In one embodiment, the expected value is computed as a function of a per-click bid price for the ad weighted by an estimated probability that the social ad will be clicked by the potential recipient. To estimate the probability that a particular member will click on an ad, the ad server 380 computes this probability as a weighted function of the member's affinities for the objects in the action entry that triggered the candidate social ad and/or the member that took such action. In one embodiment, the affinity score between a member and a candidate social ad may be computed in the same way as the affinity score between a member and a newsfeed story is computed.
Once the expected values are computed for the candidate social ads, the ad server composes 930 a social ad for the candidate with the highest expected value. This social ad represents the social ad that will bring the most revenue value to the social networking website 100 due to its combination of the probability that it will be selected and the bid amount that will be paid to the website 100 if it is selected. If more than one social ad is desired, the ad server 380 may compose 930 a social ad for the desired number of candidate ads having the highest expected values.
In an alternative process, the ad server 380 may create a number of social ads in a batch process and then store the social ads in a local storage. This way, a set of social ads are ready to be provided for each member without having to be created in real time. This helps with the scalability of the social networking website 100, as real-time creation of social ads may be difficult for websites 100 with a large number of members and a resulting large number of requests for ads. Creating the social ads in a batch process also helps avoid spikes in the demand for resources. Since the creation of social ads may depend on information and preferences that change dynamically, the ad server 380 may periodically (e.g., every 15 minutes) dump the social ads and create a new batch.
FIG. 8 is a view of a portion of a web page for displaying newsfeed stories and social ads. In this example, a member is shown a list of information items about other people and/or things that the social networking website 100 predicts will be interesting to the member. The first entry 810 and the fourth entry 840 are each a newsfeed story that communicates to the member that one or more of the member's friends joined a particular group on the social networking website 100. The second entry 820 is another newsfeed story that communicates that another member posted a video to the website 100 and includes a link to watch that video.
Also contained within these newsfeed stories, in this example, is a social ad 830. This example social ad 830 communicates to the member that one of the member's friends associated their member profile with a business. (In this example, adding a link to another business profile, rather than to another member profile, is called becoming a “fan” of that business, rather than a “friend” of the other member.) This social ad 830 is an example of brand advertising, where an advertiser merely wishes to extend the recognition and value of the brand, instead of making a particular sale. In other embodiments, the social ad 830 may also contain content, such as a link to to the advertiser's own website, and/or a call to action for the advertising.
One benefit of mixing the newsfeed stories and the social ads in a single list presented to a member is that there may be little or no differentiation between advertising and general information that a member would want to know. Members visit social networking websites 100 to keep up to date on what their friends are doing, and the social ad can be as useful to the member as any other newsfeed story. Because the social ads and newsfeed stories may all be taken from the action log 160, it may be impossible for a member to determine whether an entry in the member's newsfeed is a newsfeed story or a social ad. In fact, the content of a social ad could actually show up as an organic, unpaid newsfeed story in other contexts. By paying for the social ad, the advertiser simply accelerates a newsfeed story so that it is published (or at least has a higher probability of being published) to the member's web page in a situation where it might not otherwise be selected for publication. In other embodiments, by paying for the ad the advertiser maximizes the chances the newsfeed story will be published to other members connected to the member that took the action. In some embodiments, the social ad may contain additional ad content appended to the story, so the social ads and the newsfeed stories may differ in their content.
FIG. 10 illustrates an event diagram for an advertising model in accordance with one embodiment of the invention. In this advertising model, a number of advertisers 1020 bid for the placement of ads on a social networking website 100. A social networking website operator 1010 receives these bids, for example, through a web interface accessible to the advertisers 1020. Accompanying each bid is a description of the ad that the advertiser 1020 would like to publish to selected web pages on the social networking website 100. The web interface may thus allow an advertiser 1020 to specify all of the relevant information for an ad request, including the bid amount for the ad. In one embodiment, the advertisers 1020 specify ad requests, such as the one shown in FIG. 11.
FIG. 11 is a diagram of some of the components of an ad request 1100, which an advertiser 1020 provides the social networking website operator 1010. The ad request 1100 may be stored by the social networking website 100 in the ad request database 175. In the example embodiment shown, the ad request 1100 comprises a title field 1105, a body field 1110, a link field 1115, a bid amount field 1120, and a social object field 1125.
The title field 1105 and body field 1110 may be used by the website to publish the social ad in a story format. For example, the social ad may include the title field 1105 as the header and then a textual story in a format as shown in FIG. 7. For example, the body field 1110 may specify: “[Member.Name] has purchased tickets for [Event.Name].” The resulting social ad would contain this text, with the names of the Member and Event objects associated with the action that the social ad is describing inserted into the text as indicated. The link field 1115 may also be added to the content of the social ad, for example, for providing the call to action of the ad. Lastly, the ad request 1100 may contain additional advertising content 1130 to be appended to the social ad. This content 1130 may include any type of media content suitable for presentation on a web page, including pictures, video, audio, hyperlinks, and any other suitable content.
The bid amount field 1120 specified in the ad request 110 may indicate an amount of money that the advertiser 1020 will pay for each time a member presented with the social ad clicks on it. Alternatively, the bid amount field 1120 may specify an amount that the advertiser 1020 will pay the website operator 1010 each time the social ad is displayed to a member or a certain number of members. The social object field 1125 specifies an object (or multiple objects) for which an action related to the object will trigger the social ad. This is described above in connection with step 915 of the process for generating a social ad, shown in FIG. 9. In addition, the ad request 1100 may allow the advertiser 1020 to specify targeting criteria 1135, the use of which is described above in connection with step 910 of the process for generating a social ad. This targeting criteria may be a filter to apply to fields of a member's member profile or other object, and/or it may include free form text.
Turning again to the event diagram of FIG. 10, the social networking website operator 1010 receives ad requests from a number of advertisers 1020. The social networking website operator 1010, via the website 100, receives a number of actions taken by a member 1030. As discussed above, these actions may be on the website 100 or on a third-party website 140, or real-world actions recorded and communicated to the social networking website operator 1010. These actions are potential triggers for one or more social ads delivered to the member's friends 1040. For example, if the member takes an action that is identified in an ad request 1100 of one of the advertisers 1020, the social networking website operator 1010 may generate a social ad based on that action and publish that social ad to a web page provided to one or more of the friends 1040. It is noted that the diagram of FIG. 10 is from the perspective of the member 1030, and the member's friends 1040 are also members of the website 100. Accordingly, actions taken by them may result in social ads delivered to their friends (which includes the member 1030). In addition, a member's actions, either alone or combined with other member's actions, may result in social ads delivered to members who have some other relationship to that member, such as other members who belong to same network or group as the member.
FIG. 12 illustrates a process in which actions from third party websites 140 are communicated to and used by a social networking website 100 to generate social ads, as described above. In the example shown, a user makes a purchase on a third party website 140 hosted on a different domain than the social networking website 100. The fact of this purchase is then communicated to the social networking website 100, which uses the information to publish social ads to one or more friends of the user. Although described in the context of a purchase on the third party website 140, the technique is not limited to purchases. Any other user actions on a third party website 140 may be communicated to the social networking website 100 for use thereby, including registering for an account, viewing an item, saving an item to an account, renting an item, making a reservation, subscribing to an information resource, or any other action that the operator of the third party website decides to select for such tracking. More specific examples of other types of actions in other domains that may be useful for generating social ads on the social networking website 100 include purchasing an article of clothing, subscribing to a blog, storing an item in a wish list, purchasing tickets to a concert, registering for a marathon, making a flight or restaurant reservation, and donating to a charity.
In the example of FIG. 12, a user operates a client application, such as a web browser, to view a web page at the online store hosted by a third party website 140. The user decides to purchase an item, for example a widget. The user will typically be presented with a purchase page 1210 on which the user can confirm the purchase, for example by clicking on a “Buy” button. The third party website 140 generates a message that identifies the third party website 140 and describes the type of action (e.g., indicating whether the action is a purchase, a rating, a request for information, a subscription, or the like, as well as any other information needed to describe the action, such as the item that was purchased). In this example, the message would identify the action as a purchase and would describe the item that was purchased. The third party website 140 then transmits 1220 this message to the social networking website 100.
In one embodiment, the third party website 140 and/or the social networking website 100 determine whether the user is a member of the social networking website 100. For example, the third party website 140 may access a cookie on the user's computer, where the cookie is associated with the social networking website 100. Since the social networking website 100 and the third party website 140 are on different domains, the user's browser program may include security features that normally prevent a website from one domain from accessing content on other domains. To avoid this, the third party website 140 may use nested iframes, where the third party website 140 serves a web page that includes a nested iframe in the social network website's domain, thereby allowing the nested iframe to access the user information and send the information back to the third party website 140. Repeated nesting of iframes further allows the social networking site 100 to communicate information back to the third party website 140. By using this technique, the third party website 140 and the social networking website 100 can communicate about the user without sharing any of the user's personal information and without requiring the user to log into the social networking website 100.
After the social networking website 100 receives the message communicating the action information from the third party website 140, it generates a confirmation message 1230 to be displayed to the user on the third party website 140. For example, the confirmation message may provide a sample of the story that could be published to the user's friends based on the user's actions on the third party website 140. In this example, the message is: “John Smith bought <something> at <Partner Site>” (where the user would be “John Smith,” <something> would be replaced by the name of item purchased, and <Partner Site> would be replaced by the name and a link to the third party website 140). The confirmation message 1230 is passed 1240 back to the third party website, where it is displayed in the web page 1210 on the domain of the third party website 140.
On this web page 1210, this confirmation message 1230 informs the user of the story that the user's friends may be provided via the social networking website 100. The confirmation message 1230 may also allow the user to opt out of the feature to prevent the message from being shown to others. In other embodiments, the user can opt-in or opt-out of allowing to be published stories, or particular types of stories, generated from actions taken by particular third party websites (or groups of third party websites) in advance of the user taking such actions.
At some later point in time, the social networking website 100 may communicate the story about the user's purchase to other members who have a connection to the user on the social networking website 100. This communication may be in the form of a series of stories published on another user's home page 1250 on the social networking website 100, in accordance with the embodiments described above.
In this way, the social networking website 100 can communicate a user's actions on other third party websites 140 to the user's friends on the social networking website 230. Beneficially, communicating a user action on a third party website 140 to the user's connections on a social networking website 100 may motivate these other users to perform a similar action. For example, notifying a member's friends that a member has purchased a specific movie may prompt the friends to purchase the movie as well, or at least generate some interest in that movie. Moreover, this technique may be used in combination with the advertising model and ad requests described above, or it may be performed by the social networking website independently of any advertising model.
As described above, actions by users performed off of a social networking website (e.g., actions on third party websites or in the real world) may be used to generate social ads on the social networking website. Conversely, in various embodiments of the invention, a social networking website can collect its users' actions and then present social ads and/or other information concerning actions taken by its users on third party websites. In this way, the techniques for promoting actions using this information can be extended beyond a social networking website itself.
Embodiments of the invention may use any of the mechanisms described above for collecting user actions and generating social ads therefrom. For example, a social networking website may log a number of actions about a user's connections on a particular third party website, such as the purchase of a particular item. When the user visits the third party website and views a web page associated with that item, the third party website may communicate with the social networking website to determine that the user's connections have also purchased this item. Mechanisms for communicating information about a user between a third party website and a social networking website are described above.
Once the third party website receives this information, it can present the information to the user. For example, when viewing the page for a movie that is on sale via the third party website, the third party website may present a message to the user that a certain number of the user's connections from the social networking website have rated the movie positively. For example, the message might read: “Ten of your friends have liked this movie.” The user is thus encouraged to purchase the movie on the third party website because the user's friends from the social networking website like the movie.
Accordingly, social ads or other information concerning actions taken by a user's friends may be presented to users off the social networking website, just as on the website as described above. Used in this way, the information can help encourage a user to take an action (such as a purchase) at the point the user is deciding to act. The information need not be in response to an advertising effort in which one of the websites is being compensated, as this exposure may have a synergistic effect for both the social networking website and the third party website.
This technique can be used in a variety of other contexts. For example, the technique can be used to communicate a user's interest in particular items or content on third party websites. The user can be provided with information by the third party website that is related to content offered by the third party website, but where that information is gathered by the social networking website. The third party websites may thus leverage the information gathered by the social networking website, including the inherent value of the information being about third parties to whom the user has some connection.
The user's experience can be integrated between the third party website and the social networking website such that the information is used in both domains. For example, a user's movie preferences can be accessed by the user's friends on a social networking website, while the user can also view the user's friends' movie ratings on a third party website where the user buys or rents movies. In addition, third party websites may provide content from the social networking website, such as newsfeeds or series of stories about a user's friends that the user would normally be presented with on the social networking website. These are just a few examples of applications for the cross-domain use of socially relevant information, some but not all of which involve advertising.
In one embodiment, the user interface on the third party website provides a bidirectional interface in which user interface elements from the social networking website domain and the third party website domain affect the presentation of user interface elements of the other. For example, if content from a social networking website is presented in a frame (e.g., an iframe) on a web page of the third party website, actions that a user takes on the frame may affect how information in the web page is presented. These actions may be as simple as a resizing event of the frame, or more complicated such as a mouse-over of an item in the social networking frame causing a corresponding item in the third party domain part of the web page being enhanced.
In one particular example, a frame from a social networking website may present a list of a user's friends. If the user clicks on a particular friend, the social networking website may communicate to the third party website a list of items that the friend has purchased (without disclosing to the website any information, including the identity, of those friends). The third party website may then highlight these items on its own web page, thereby providing the user with an easy interface for locating items on the website to purchase based on the user's friends' purchase histories.
Embodiments of the invention have been described in the context of social networking websites. However, the techniques described herein may be applied to a number of other types of websites that are not necessarily concerned with social networking. Such websites include any website that tracks any kind of information about users of the website and then provides that information to other users. For example, a retail website may keep track of users who make purchases from the website, then communicating the information about some of its users to other users using the techniques described herein.
In another embodiment, the social ads and other informational messages described herein may be presented outside of the social networking website. For example, information about actions taken by members of the social network may be received and logged by the social networking website, and social ads and/or other informational messages may be generated based on these actions. These informational message can be communicated from the social networking website to another domain, such as a different website, and presented to one or more members of the social network. As described herein, messages about a particular member would be presented to others members with whom the member has a connection in the social network. In this way, the benefits of the social ads and other informational messages described herein can be achieved even outside the social networking website.
The foregoing description of the embodiments of the invention has been presented for the purpose of illustration; it is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Persons skilled in the relevant art can appreciate that many modifications and variations are possible in light of the above disclosure. For example, although the foregoing embodiments have been described in the context of a social network website, it will apparent to one of ordinary skill in the art that the invention may be used with any electronic social network service, even if it is not provided through a website. Any computer-based system that provides social networking functionality can be used in accordance with the present invention even if it relies, for example, on e-mail, instant messaging, or other form of electronic communications, and any other technique for communicating between users. The invention is thus not limited to any particular type of communication system, network, protocol, format or application.
rendering, at the user device, the web page including the received information contained within the interface.
modifying one or more user interface elements of the web page outside the interface in response to the one or more actions.
3. The method of claim 2, wherein the modified user interface elements comprise indications on the web page of purchases made by or ratings provided by one or more users to whom the viewing user is connected.
4. The method of claim 2, wherein the modified user interface elements comprise an enhancement of an item on the web page or a resizing of the interface.
5. The method of claim 2, wherein the actions taken by the viewing user on the interface comprise a selection of content in the interface or a mousing-over content in the interface.
6. The method of claim 2, further comprising receiving from the external system information regarding the modifications to be made to the one or more user interface elements of the webpage.
7. The method of claim 2, further comprising sending by the user device to the social networking system information about the actions taken by the viewing user on the interface, thereby causing the social networking system to communicate to the external system information based on the one or more actions.
8. The method of claim 7, wherein the communication of the social networking system to the external system causes the external system to send instructions for the modifications of the one or more user interface elements.
9. The method of claim 1, wherein the interface comprises an iframe that contains a web page in the domain of the social networking system.
10. The method of claim 1, wherein requesting information from the social networking system comprises requesting information from the domain of the social networking system.
11. The method of claim 1, wherein the action taken on an object by the other users connected to the viewing user comprises an action taken on an object outside of the social networking system.
12. The method of claim 1, wherein the interface comprises a bidirectional interface in which user interface elements from the domain of the social networking system affect a presentation of user interface elements from the domain of the external system and in which user interface elements from the domain of the external system affect a presentation of user interface elements from the domain of the social networking system.
13. The method of claim 1, wherein the received information is received without revealing to the external system identities of the other users connected to the viewing user.
14. The method of claim 1, further comprising, responsive to the viewing user selecting another user within the interface, enhancing an item on the web page that relates to the other user outside of the interface.
15. The method of claim 1, wherein the received information comprises a feed that includes plurality of the stories generated for the viewing user and also includes the story selected for presentation as a social advertisement.
16. The method of claim 15, wherein the feed is presented such that the viewing user cannot determine which of the stories is sponsored.
17. The method of claim 15, wherein sponsorship of one of the plurality of stories generated for the viewing user accelerates display of that story relative to other stories displayed within the feed.
18. The method of claim 15, wherein sponsorship of one of the plurality of stories generated for the viewing user maximizes the chance that the story will be provided for display to the viewing user in a situation where the story might not otherwise be selected for display.
19. The method of claim 1, wherein the story selected for presentation as a social advertisement is provided to the viewing user as an unsponsored, newsfeed story in other contexts.
Australian Patent Office, Examiner's First Report, Australian Patent Application No. 2008-324952, May 21, 2012, two pages.
Canadian Intellectual Property Office, Requisition by the Examiner, Canadian Patent Application No. 2,703,851, Aug. 6, 2012, 3 Pages.
Canadian Intellectual Property Office, Requisition by the Examiner, Canadian Patent Application No. 2,704,680, Jul. 25, 2012, 2 pages.
European Patent Office, Extended European Search Report, European Patent Application No. 08847154.5, Sep. 3, 2012, 9 Pages.
PCT International Search Report and Written Opinion, PCT/US2008/080789, Dec. 12, 2008, seven pages.
State Intellectual Property Office of the People's Republic of China, Chinese Patent Application No. 2008-80114546.2, Oct. 14, 2011, eight pages.
The State Intellectual Property Office of the People's Republic of China, Rejection Decision, Chinese Patent Application No. 200880114546.2, Jun. 20, 2012, 9 pages (with English translation).
U.S. Appl. No. 13/804,150, filed Mar. 14, 2013, Inventors Timothy Kendall et al.
United States Office Action, U.S. Appl. No. 12/853,241, May 22, 2012, thirty-one pages.
United States Office Action, U.S. Appl. No. 12/853,241, Nov. 20, 2013, forty pages.
United States Office Action, U.S. Appl. No. 13/327,557, Feb. 21, 2014, seventeen pages.
United States Office Action, U.S. Appl. No. 13/338,190, Mar. 27, 2012, fifty-two pages.
United States Office Action, U.S. Appl. No. 13/342,006, May 8, 2012, sixty-three pages.
United States Office Action, U.S. Appl. No. 13/447,102, Jun. 1, 2012, sixty-two pages.
United States Office Action, U.S. Appl. No. 13/804,150, Feb. 21, 2014, fifty-five pages.
United States Office Action, U.S. Appl. No. 14/048,034, Dec. 6, 2013, seven pages.
United States Patent and Trademark Office, Final Rejection, U.S. Appl. No. 13/338,190, Sep. 6, 2012, 89 pages.
United States Patent and Trademark Office, Final Rejection, U.S. Appl. No. 13/447,100, Nov. 14, 2012, thirty-five pages.
United States Patent and Trademark Office, Final Rejection, U.S. Appl. No. 13/447,102, Nov. 29, 2012, sixty pages.
United States Patent and Trademark Office, Non-final Office Action, U.S. Appl. No. 13/447,100, Jul. 27, 2012, 35 pages.
Wikipedia, "HTTP cookie," XP-002680841, 16 Pages, [online] [ retrieved on Jul. 26, 2012], Retrieved from the Internet .
Wikipedia, "HTTP cookie," XP-002680841, 16 Pages, [online] [ retrieved on Jul. 26, 2012], Retrieved from the Internet <http://en.wikipedia.org/w/index.php?title=TYYP?cookie&oldid=168063574>.

References: Application No. 60
 Application No. 2008
 Application No. 2
 Application No. 2
 Application No. 08847154
 Application No. 2008
 Application No. 200880114546