HK1183130B - Event planning within social networks - Google Patents
Event planning within social networks Download PDFInfo
- Publication number
- HK1183130B HK1183130B HK13110360.6A HK13110360A HK1183130B HK 1183130 B HK1183130 B HK 1183130B HK 13110360 A HK13110360 A HK 13110360A HK 1183130 B HK1183130 B HK 1183130B
- Authority
- HK
- Hong Kong
- Prior art keywords
- event
- event plan
- plan
- guest
- suggestions
- Prior art date
Links
Description
Technical Field
The invention relates to event planning within a social network.
Background
Within the field of computing, many scenarios involve social networks such as user databases and associations established therebetween to represent various types of relationships (e.g., family relationships, friendships, and school, professional, and business relationships). For example, a user in a social network may establish a set of contacts, such as individuals having a relationship with the user, and may generate content items accessible by such contacts, such as personal status messages, private messages, photos, links to other resources such as websites, comments, etc.), which may submit comments and rely on such content items.
Within a social network, a group of users may create an event. For example, a user may create a list for an event, such as a party that occurs at a particular date, time, and location, and may provide details regarding the event. Other users, such as the user's contacts, may comment on the event, such as the intent of the guest to attend or absent the event. Thus, the social network may facilitate notification of the event to the user's contacts, as well as communication between guests regarding the event and the set of potential attendees.
Disclosure of Invention
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key factors or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
While today's social networks may facilitate users in advertising events, today's social networks do not significantly help a group of users in deciding on the details of an event. For example, an event may have many details such as a time, a place, an event location, and a set of activities to be performed. Social networks may permit users responsible for an event (such as the creator of the event) to specify details and modify details based on changing circumstances, but may not facilitate guests making decisions on proposing, considering, and selecting details of the event. For example, today's social networks may permit users to propose a group dinner at a particular date, time, and restaurant, but may not permit users to propose an idea of a group dinner with some or all undetermined event details of visitor-providable suggestions (such as proposed date or time, proposed restaurant, or type of restaurant). That is, a social network may be proficient in allowing users to announce events for which event details are established, but may not be proficient in allowing a group of users to plan events together.
Techniques are presented herein for configuring devices within a social network to facilitate a group of users, such as a user and a group of contacts, to plan an event together. According to these techniques, a user of a social network may propose an event plan such as a joint meal, a party, a trip, and invite a set of contacts within the social network to attend the event. The social network may then extend the invitation to these contacts and may accept and store event plan suggestions for various details of the event plan, such as date, time, duration, location, other individuals to invite, and activities to be performed, from the guests (including the user who created the event and the contacts who have been invited to attend). The social network may then present the event plan (including event plan suggestions for various event plan details) to visitors wishing to view the current event plan suggestions, wish to participate in the plan of the event, and/or wish to consider the event plan participating in the event. The guest may also contribute event plan suggestions such as: search results generated by a search engine; such as a link to a menu of a restaurant in the guest's area; and a map showing the location of the restaurant suggested by the visitor. The social network may also facilitate the planning of events, for example, by: providing a mechanism for allowing guests to vote on various proposals to agree on event plan suggestions for various event plan details; and/or recommend a particular event plan suggestion (e.g., compare user ratings of respective restaurants suggested for guest co-eating and select a restaurant with a suitably high user rating). In this way, the social network may help suggest, consider, and select event plan details for the event plan among users of the social network.
To the accomplishment of the foregoing and related ends, the following description and annexed drawings set forth various illustrative aspects and implementations. These aspects and implementations are indicative of but a few of the various ways in which one or more aspects may be employed. Other aspects, advantages, and novel features of the invention will become apparent from the following detailed description when considered in conjunction with the drawings.
Drawings
FIG. 1 is an illustration of an exemplary scenario featuring events for a set of users of a social network.
FIG. 2 is an illustration of an exemplary scenario featuring an event plan formulated among a set of users of a social network in accordance with the techniques presented herein.
FIG. 3 is a flow diagram illustrating an exemplary method for presenting an event plan to a user of a social network.
FIG. 4 is a component block diagram illustrating an exemplary system for presenting an event plan to a user of a social network.
FIG. 5 is an illustration of an exemplary computer-readable medium comprising processor-executable instructions configured to embody one or more of the provisions set forth herein.
FIG. 6 is an illustration of an exemplary scenario featuring an event plan based on an event plan template including event plan details for which guests of the event plan submit event plan suggestions.
FIG. 7 is an illustration of an exemplary scenario featuring an event plan with event plan suggestions associated with search engine results.
FIG. 8 is an illustration of an exemplary scenario featuring guests of an event plan voting among alternative event plan suggestions and recommendations among the alternative event plan suggestions provided by a search engine.
FIG. 9 is an illustration of an exemplary presentation of an event plan featuring a mapping of locations.
FIG. 10 is an illustration of an exemplary presentation of an event plan featuring a visual depiction of a location.
FIG. 11 is an illustration of an exemplary scenario featuring additional features that may be included in the presentation of an event plan, including attendance indicators, comments, and routes for visitors.
FIG. 12 is an illustration of an exemplary scenario featuring a geo-fence and reporting of presence indicators for various guests of an event.
FIG. 13 is an illustration of an exemplary computing environment wherein one or more of the provisions set forth herein may be implemented.
Detailed Description
The claimed subject matter is now described with reference to the drawings, wherein like reference numerals are used to refer to like elements throughout. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the claimed subject matter. It may be evident, however, that the claimed subject matter may be practiced without these specific details. In other instances, structures and devices are shown in block diagram form in order to facilitate describing the claimed subject matter.
Within the field of computing, many scenarios involve social networks that include representations of a group of individuals and relationships therebetween. Such relationships may represent, for example, family relationships, friend relationships, common members in a certain group or activity, or school or professional relationships. A social network may permit a user to establish a set of contacts with which the individual may share a relationship. Each user may then create a set of content items, such as personal status messages, comments on a particular topic, links to other items of interest (such as hyperlinks to web pages and other resources), media objects such as images, and messages to one or more contacts. These contact items may be viewed by contacts of the user who may respond with other content items (e.g., comments on items posted by the user). Social networks may facilitate these interactions by: establishing an enhancement relationship; exchanging messages and notifications; and extending access to the user's content items for the user's contacts while restricting access by other individuals in order to protect the user's privacy.
Within a social network, a group of users may wish to create an event. The event may represent, for example, an offline meeting, an online activity, a memorable occasion such as a vacation, or an activity or scenario in which each visitor to the event may attend on a particular date and/or time. Thus, a user of a social network may create an event within the social network, for example, by posting a set of event details such as a date, time, location, and description of the event's intent, as well as the activity to be performed there. The event may be viewed by the user's contacts, which may submit event attendance indicators (e.g., a reply to (RSVP) indicator) to indicate whether each contact attended the event. The guest may also submit comments about the event.
FIG. 1 presents an exemplary scenario 10 featuring a social network 12 comprising a set of individuals, including a user 14 who has established a relationship 18 with a set of contacts 16. Within the social network, the user 14 may create an event 20, such as a vacation gathering, and highlight a set of event details 22 (e.g., title, date including time, and event location) that describe aspects of the event 20. The user 14 may send an invitation 24 to attend the event 20 for some or all of the contacts 16 of the user 14. In some such scenarios 10, the social network 12 may limit the event 20 to contacts 16 that the user 14 has invited, and may also permit the contacts 16 to invite other individuals represented in the social network, but in other such scenarios 10, the social network 12 may share the event 20 with any individuals represented within the social network 12. In either case, the user 14 and his or her contacts 16 (the "guests" of the event 20) who have been invited to the event 20 may view the event details 22 of the event 20, may submit comments about the event 20, and/or may submit an attendance indicator to indicate whether the guests intend to attend the event 20.
Although the exemplary scenario 10 of FIG. 1 may be helpful in representing an event 20 and extending access to the event 20 to a set of guests, this model of the event 20 within the social network 12 may be less helpful in the planning of the event 20. That is, the exemplary scenario 10 of FIG. 1 may be advantageous for presenting events 20 for which event details 22 are well established, and may permit the user 14 creating the event 20 to edit the event details 22 after creation; however, this model of the event 20 is not particularly effective in helping guests select the event details 22 of the event 20. For example, if the user 14 proposes a general activity to be shared with a set of contacts 16, such as a dinner at a restaurant, the social network 12 may accept a set of event details 22 specified by the user 14 and may permit the user 14 to change such event details 22 at a later date, but the social network 12 may not assist the visitor in selecting event details 22 for the event 20, such as a date including the time and a selection of the restaurant. The guests may use the social network 12 to discuss the event details 22 in an unstructured manner (e.g., by exchanging various comments that may be associated with and displayed with the event 20), and if the guests agree about the event details 22, the social network 12 may permit the user 14 that created the event 20 to change the updated event details 22. However, in many conventional social networks 12, this process is unstructured and is primarily implemented by the user 14 that created the event 20, because the social network 12 does not facilitate selection of the event details 22 among the guests of the event 20.
Presented herein are techniques for providing a social network 12 that facilitates event planning among a set of users 14 (such as configuration of one or more servers that store and present data including the social network 12). In accordance with these techniques, social network 12 may permit user 14 to create an event plan that includes a set of event details to be determined by guests of event 20. For example, in contrast to the exemplary scenario 10 of FIG. 1 in which the user 14 specifies event details 22 (e.g., the event 20 will occur at a particular date, time, and location), the user 20 may instead be permitted to specify an event plan that includes a set of event details to be determined, such as the date and time of the event 20 and the location of the event 20. The user 14 may then invite a group of contacts 16, and the user 14 and the contacts 16 (together comprising "guests" of the event plan) may submit event plan suggestions to the social network 12 to suggest corresponding event details 22 of the event 20. The social network 12 may track the event plan suggestions and may present the event plan suggestions to the guests upon request. The social network 12 may also facilitate selection of a particular event plan suggestion among a set of alternatives, for example, by permitting guests to vote among event plan suggestions and by presenting (as event details 22) the event plan suggestion with the highest number of votes.
FIG. 2 presents an exemplary scenario 30 featuring a social network 12 that facilitates creation of an event plan 34 among a group of users 14 in accordance with the techniques presented herein. In this exemplary scenario 30, the user 14 may create an event plan 34 for the event 20 for which the event details 22 are to be determined, such as the date and time of the event 20 and the location of the event 20. In contrast to the exemplary scenario 10 of FIG. 1 in which the user 14 specifies a particular event detail 22 of the event 20 (e.g., "I propose to have a collective dinner at a particular restaurant on a particular date"), in the exemplary scenario 30 of FIG. 2, the user 12 specifies: the guests 32 of the event 20 may decide the event details 22 together. Once one or more contacts 16 have been selected by the user 14 to join the event plan 34, the social network 12 may invite the contacts 16 to join the event plan 34 as guests 32 (e.g., by sending notifications of the creation of the event 34 to the respective contacts 16 along with a link to a web page that may access the event plan 34). The guests 32 (including the user 14 creating the event plan 34) may submit a set of event plan suggestions 36 that may be tracked by the social network 14. For example, a first guest 32 may submit an event plan suggestion 36 that will host dinner on a particular date (e.g., friday evening), while a second guest 32 may submit an event plan suggestion 36 that will host dinner on a different date (e.g., the next saturday evening). Event plan suggestions 36 for two or more locations (such as restaurants) where the event 20 may be held may also be submitted by different guests 32, or even by the same guest 32 (e.g., alternative suggestions for attending two different restaurants). The social network 14 may track these event plan suggestions 36 for the event 34, and may present the entire set of event plan suggestions 36 to inform the guests 32 of the considered optional and possibly alternative event details 22 of the event 20. The social network 14 may also assist the guest 32 in agreeing on one or more event plan suggestions 36. For example, the social network 14 may allow the guests 32 to vote for various event plan suggestions 36, may identify the event plan suggestion 36 with the highest number of votes, and may finalize a particular event plan suggestion 36 as the event detail 22 (e.g., after receiving a majority vote among the guests 32 for a particular event plan suggestion 36, or if only one event plan suggestion 32 is received for a particular event detail 22). The social network 12 may then present the selected event plan suggestions 36 of the event plan 34 as the event details 22 of the event 20. In this manner, the social network 12 facilitates the event's visitor 32 selecting the event details 22 of the event 20 in accordance with the techniques presented herein.
FIG. 3 presents a first embodiment of these techniques, shown as an exemplary method 50 for presenting an event plan 34 to a user 14 of a social network 12. The exemplary method 50 may be implemented, for example, by storing a set of instructions to be executed on a processor of a device in a data store, such as system RAM, a disk of a hard drive, a solid state storage device, or a magnetic or optical disk. The exemplary method 50 begins at 52 and includes: instructions configured to implement the techniques presented herein are executed on a processor. Specifically, the instructions are configured to: upon receiving a request from a user 14 to create an event plan 34 within the social network 12 that includes at least one contact 16 of the user 14, the at least one contact 16 is invited 56 to join the event plan 34. The instructions are further configured to: after receiving event plan suggestions 36 for the event plan 34 from the guests 32, the event plan suggestions 36 are associated 58 with the event plan 34 in the data store. The instructions are further configured to: upon receiving 60 a request from a guest 32 to present an event plan 34, event plan suggestions 36 associated with the event plan 34 are retrieved 62 from the data store and the event plan suggestions 36 are presented 64 to the guest 32. In this manner, exemplary method 50 implements the techniques presented herein (as described in exemplary scenario 30 of FIG. 3), and thus ends at 66.
FIG. 4 presents a second embodiment of these techniques, shown as an exemplary system 76 configured to present an event plan 34 to a user 14 of a social network 12. The exemplary system 76 may be implemented, for example, as a software architecture including a set of interoperating components, where each component including a set of software instructions executing on a processor 74 of a device 72 (e.g., a server of the social network 12) performs an aspect of the techniques presented herein. The exemplary system 76 includes a data store 78, the data store 78 configured to store the event plan 34 (including the event plan details 36). The exemplary system 76 also includes an event plan creation component 80, the event plan creation component 80 configured to: upon receiving a request from a user 14 to create an event plan 34 within the social network 12 that includes at least one contact 16 of the user 14, the event plan 34 is stored in the data store 78 and the at least one contact 14 is invited to join the event plan 34 as a guest 32. The exemplary system 76 also includes an event plan suggestion receiving component 82, the event plan suggestion receiving component 82 configured to: after receiving the event plan suggestions 36 for the event plan 34 from the guests 32, the event plan suggestions 36 are associated with the event plan 34 in the data store 78. The exemplary system 76 also includes an event plan presentation component 84, the event plan presentation component 84 configured to: upon receiving a request from a guest 32 to present an event plan 34, the event plan suggestions 36 associated with the event plan 34 are retrieved from the data store 78 and the event plan suggestions 36 are presented to the guest 32 as an event plan presentation 42. In this manner, the exemplary system 76 facilitates the guests 32 of the event plan 34 to submit event plan suggestions 36, which event plan suggestions 36 may ultimately include the event details 22 of the event 20.
Yet another embodiment relates to a computer-readable medium comprising processor-executable instructions configured to apply the techniques presented herein. Such computer-readable media may include, for example, computer-readable storage media including tangible devices, such as memory semiconductors (e.g., semiconductors utilizing Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), and/or Synchronous Dynamic Random Access Memory (SDRAM) technology), disks of a hard drive, flash memory devices, or magnetic or optical disks (such as CD-R, DVD-R or floppy disks), encoded with a set of computer-readable instructions that, when executed by a processor of the device, cause the device to implement the techniques presented herein. These computer-readable media may also include (as a class of technologies distinct from computer-readable storage media) various types of communication media, such as signals that may propagate through various physical phenomena (e.g., electromagnetic, acoustic, or optical signals) as well as in various wired scenarios (e.g., via ethernet or fiber optic cables) and/or wireless scenarios (e.g., a Wireless Local Area Network (WLAN) such as WiFi, a Personal Area Network (PAN) such as bluetooth, or a cellular or radio network), and which are encoded with a set of computer-readable instructions that, when executed by a processor of a device, cause the device to implement the techniques presented herein.
FIG. 5 presents a third embodiment 90 of these techniques, shown as an exemplary computer-readable storage medium 92 (e.g., a CD-R, DVD-R or a platter of a hard disk drive) having computer-readable data 94 encoded thereon. The computer readable data 94 in turn comprises a set of computer instructions 96 configured to operate according to the principles set forth herein. In one such embodiment, the processor-executable instructions 96 may be configured to perform a method for presenting an event plan to a user of a social network, such as the exemplary method 50 of fig. 3. In another such embodiment, the processor-executable instructions 96 may be configured to implement a system for presenting an event plan to a user of a social network, such as the exemplary system 76 of fig. 4. Some embodiments of this computer-readable medium may include a non-transitory computer-readable storage medium (e.g., a hard drive, an optical disc, or a flash memory device) configured to store processor-executable instructions configured in this manner. Many such computer-readable media may be devised by those of ordinary skill in the art that are configured to operate in accordance with the techniques described herein.
The techniques discussed herein may be designed with variations in many aspects, and some variations may present additional advantages and/or reduce disadvantages relative to other variations of these and other techniques. Moreover, certain variations may be implemented in combination, and certain combinations may feature additional advantages and/or reduced disadvantages through cooperation. Various modifications may be incorporated into the various embodiments (e.g., the exemplary method 50 of fig. 3 and the exemplary system 76 of fig. 4) to confer individual and/or synergistic advantages upon such embodiments.
A first aspect that may vary among embodiments of these techniques relates to scenarios wherein these techniques may be utilized. As a first example, these techniques may be applied to many types of social networks 12, including: social networks representing real-world relationships such as family relationships, friend relationships, and the like; a school social network representing a connection between the student and the teacher; a professional social network representing professional associations between colleagues; and a topical social network representing connections between users 14 sharing interests, such as participating in an online game. As a second example of this first aspect, the event plan 34 may be public (viewable by any user 14 of the social network 12, and potentially letting any such user 14 join the event plan 34 as a guest 32) and/or private (e.g., accessible only by guests 32 of the event plan 34). As a third example of this first aspect, these techniques may be used to facilitate the planning of many types of events 20, such as the following: a real-world meeting at a particular location; distributed activities performed at various locations; memorial events, such as holidays; or online activity. One of ordinary skill in the art can envision many types of scenarios that could utilize the techniques presented herein.
A second aspect that may vary among embodiments of these techniques relates to the creation of event plans 34 by users 14. As a first example, the user 14 may specify a completely empty event plan 34, simply indicating: a particular group of guests 32 (including the user 14 and a designated group of contacts 16) may decide to participate together in the activity. Alternatively, the user 14 may specify one or more event plan suggestions 36 while creating the event plan 34, such as some initial suggestions for the event plan 34 that may be considered by the guests 32.
As a second example of this second aspect, the user 14 creating the event plan 34 may specify one or more event plan details for the event plan 34. These event plan details may add some structure to the event plan 34, such as a particular type of event detail 22 for the event 20, which event detail 22 is to be determined by the guest 32 by submitting the event plan suggestions 36. The guest 32 may then submit an event plan suggestion 36 relating to one or more event plan details of the event plan 34. For example, the user 14 may create an event as follows: the event represents dinner to be shared among a set of contacts 16 and includes first event plan details indicating a date and time to be determined for the event 20, second event plan details indicating a location to be determined for the event 20, such as a restaurant, and third event plan details indicating a type of food to be consumed at the event 20. The guest 32 may then submit an event plan suggestion 36 relating to one or more event plan details of the event plan 34. The inclusion of event plan details may thus add structure to the event plan 34 such that the event plan suggestions 36 may be grouped and considered according to different event plan details (e.g., event plan suggestions 36 related to the date of the event 20 may be grouped and considered together, and event plan suggestions 36 related to the event location of the event 20 may also be grouped and considered together). Such event plan details (which represent aspects of the event 20 to be determined) may be selected from a set of event plan details including: event title details (e.g., event type details (e.g., type of event 20)); event guest details (e.g., a particular guest 32 to be invited to the event 20 by the current guest 32); event date and time details (e.g., date and time of event 20); details of the duration of the event; event location details (e.g., areas of a town, general types of locations where the event 20 may be held, such as meals in the home, picnics held in a park, or meals in a restaurant); event venue details (e.g., a particular location where the event 20 is to be held); and event activity details (e.g., a particular activity to be performed by the guest 32 in the event 20).
An additional variation of this second example of this second aspect relates to the use of event plan templates. For example, a device configured in accordance with the techniques presented herein (such as a server of a social network) may store one or more event plan templates, each of which may specify a particular set of event plan details for event plans 34 of a particular event type. As one such example, the device may store a first event plan template for a common meal among a group of friends, the first event plan template including event plan details such as a date, an approximate region of the meal (e.g., a town area in which the friends reside), a type of restaurant and/or dish, and a price range; and a second planned event plan template for the party that includes event plan details such as a date, a duration, a subject of the party, and a type of activity to be performed on the party. When the user 14 creates the event plan 34, the device may permit the user 14 to specify the event type, and may automatically associate a set of event plan details that are appropriate for the event plan 34 with the event plan 34 based on the selected event type.
FIG. 6 presents an exemplary scenario 100 featuring an event plan template 102, the event plan template 102 for facilitating creation of an event plan 34 for a particular event type. In this exemplary scenario 100, the device stores a set of event plan templates 102 for various event types, such as restaurant dinner, travel to movie theaters, and a party. Each event plan template 102 includes a set of event plan details 104 that are appropriate for the events of the corresponding event type. When the user 14 creates an event plan 34, the user 14 may specify the event type, and the device may select a corresponding event plan template 102 from which the event plan 34 may be created, thereby automatically associating an appropriate set of event plan details 104 to be determined among the guests 32 of the event plan 34 with the event plan 34. For example, when the user 14 selects a "party" event type for a new event plan 34, the device may automatically select an event plan template 102 or a "party" event type, and based on the event plan template 102, a set of event plan details 104, such as the date of the party, the subject of the party, and one or more activities to be performed in the party, may be inserted into the event plan 34. Additionally, the guests 32 of the event plan 34 may submit event plan suggestions 36 associated with one or more of these event plan details 104. For example, a first guest 32 (such as a user 14 creating an event plan 34) may submit an event plan suggestion 36 associated with event plan details 104 representing a date and time of the gathering; and other guests 32 may submit event plan suggestions 36 associated with event plan details 104 representing activities to be performed at the party. Multiple event plan suggestions 36 may be associated with a particular event plan 34, either in a consistent manner (e.g., multiple activities may be performed at the event 20) or in an exclusive manner (e.g., alternative event plan suggestions 36 for the date and time of the event 20). In this manner, the event plan details 104 may be used to structure the event plans 34 and event plan suggestions 36, and the event plan template 102 may be used to provide an appropriate set of event plan details 104 for an event plan 34 of a particular event type.
As a third example of this second aspect, the user 14 may specify the contacts 16 to join the event plan 34 in a number of ways. For example, the user 14 may specify: all such users 14 may be invited as guests 32, or a particular subset of the contacts 16 may be specified among the entire set of contacts 16 that the user 14 has within the social network 12. Such designations may be ad hoc (e.g., selected by the user 14 when creating the event plan 34), or may be based on one or more contact groups (e.g., a previously selected subset of contacts 16). The user 14 may also specify certain criteria for inviting guests 32 to the event plan 34, e.g., the user 14 may invite all contacts 16 within a specified proximity to the user 14 as guests 32, such as contacts currently located within the same city. One of ordinary skill in the art can contemplate many ways of allowing the user 14 to create the event plan 34 and invite the guests 32 while implementing the techniques presented herein.
A third aspect that may vary among embodiments of these techniques relates to event plan suggestions 36 submitted by individual guests 32 of an event plan 34. As a first example, the event plan suggestions 36 may include many types of items, such as: unformatted text; a formatted data type (e.g., a date primitive value); media objects that suggest content, such as images or hyperlinks to resources (e.g., websites), such as websites of restaurants where the guest 32 suggests eating dinner, are emphasized.
FIG. 7 presents a particular variation of the first example of this third aspect, where the event plan suggestions 36 may include search queries 114 to be applied to the search engine 112. For example, in formulating a particular event plan suggestion 36 for the event plan details 104, the guest 32 may generate a search query 114, which search query 114 is to be submitted to the search 112 and generate a search result set 116 including one or more search results 118 (e.g., a set of hyperlinks to web pages matching terms of the search query 114). The guest 32 may then have to review the search results 118 and summarize the content of the information presented therein (e.g., "i read that the restaurant just opened in town and had a very good food") in order to submit the event-planning suggestion 36. However, it may be advantageous to allow users 12 to submit search queries 114 to social networks 12 as event plan suggestions 36 for event plans 34. For example, the entire search query 114 may be submitted, and when the guest 32 requests to view the event plan 34, the social network 12 may execute the search query 114 on the search engine 112 and may include the search results 118 generated thereby in the event plan suggestions 36 presented with the event plan 34. Alternatively, the guest 32 may be permitted to select one or more search results 118 as event plan suggestions 36, and the social network 12 may include the selected search results 118 in the set of event plan suggestions 36 presented with the event plan 34. In this manner, the social network 12 may directly incorporate search results 118 generated by the search query 114 formulated by the guest 32 while searching the event plan 34 for the event plan suggestions 36. Further, if the event plan 34 includes a set of event plan details 104, the guest 32 may submit a particular search query 114 and/or search results 118 as event plan suggestions 36 associated with one or more of the event plan details 104. For example, for an event plan 34 that includes "dinner and drink," a guest 32 may submit a search query 114 and/or query results 118 associated with a first event plan detail 104 relating to an event location for a dinner and/or associated with a second event plan detail 104 relating to an event address for drinking a drink after a dinner.
As yet another variation of this first example of this third aspect, the social network 12 may automatically generate one or more search queries 114 and may automatically include one or more search results 118 as event plan suggestions 36 recommended by the social network 12. For example, if the event plan suggestions 36 indicate: the guest 32 plans to eat dinner in a particular area of the city on a particular date and wishes to eat a particular type of dish, the social network 12 may formulate an appropriate search query 114 for restaurants that meet these criteria, and may include the search results 118 as event plan recommendations 36 in the presentation of the event plan 34.
As a second example of this third aspect, a guest 32 of an event plan 34 may submit an event plan suggestion 36 as an alternative event plan suggestion to a particular event plan detail 104. For example, a guest 32 may submit several event plan suggestions 36 for a particular event plan detail 104 that can only be met by a limited number of event plan suggestions 36 (e.g., the guest 32 may have to select one of several event plan suggestions 36 associated with a "date" event plan detail 104 and select a subset of event plan suggestions 36 associated with an "active" event plan detail 104 for an event that is long enough to include only a few activities). Thus, one or more event plan suggestions 36 may be viewed as alternative event plan suggestions 36 that are mutually exclusive in terms of the particular event plan details 104. The social network 12 may represent the mutual exclusivity of two or more alternative event plan suggestions to the guest 32 in the presentation of the event plan 34 to facilitate selection therein.
In some variations of this second example of this third aspect, the social network 12 may assist the guest 32 in selecting among the alternative event plan suggestions. As a first example, the guest 32 may submit an alternative event plan suggestion vote indicating a preference for the first alternative event plan suggestion as compared to the second alternative event plan suggestion. The social network 12 may receive the alternative event plan suggestion votes, and may store the votes in the data store 78, and may select and present a selected event plan suggestion (e.g., the alternative event plan suggestion having the highest number of votes, or all alternative event plan suggestions having a sufficiently high number of votes) based on the alternative event plan suggestion votes stored in the data store 78. As a second example, the social network 12 may identify recommended alternative event plan suggestions, e.g., the event plan suggestions 36 provided by the guest 32 for a common meal may include a first restaurant highly rated by the guest, and a second restaurant poorly rated by the guest, and the social network 12 may include such recommendations as recommended alternative event plan suggestions in the presentation of the event plan 34.
FIG. 8 presents an exemplary scenario 120 featuring a social network 12 configured to facilitate selection among alternative event plan suggestions, the social network 12. The exemplary scenario illustrates a set of event plan suggestions 36 for various event plan details 104 of an event plan 34, where for a particular event plan detail 104 (a location of a dinner event), a set of alternative event plan suggestions 122 have been submitted by various guests 32. To facilitate selection among these alternative event plan suggestions 122, the social network 12 may receive and store alternative event plan suggestion votes 124 from the various guests 32, and may include the alternative event plan suggestion votes 124 of the respective alternative event plan suggestions 122 in the event plan presentation 42 of the event plan 34. Additionally, the social network 12 may utilize the search engine 112 to identify a set of recommendations 128, such as ratings of the respective alternative event plan suggestions 122 that have been submitted by other individuals. These recommendations 128 may also be incorporated into the event plan presentation 42 of the event plan 34 to facilitate the guest 32 selecting a selected event plan suggestion among the alternative event plan suggestions 122. One of ordinary skill in the art may contemplate many ways to configure the social network 12 to accept event plan suggestions 36 for the event plan 34 while implementing the techniques presented herein.
A fourth aspect that may vary among embodiments of these techniques relates to the presentation of the event plan 34 to the guest 32. As a first example, in addition to the event plan suggestions 36, the event plan presentation 42 may explicitly or implicitly indicate event plan details 104 of the event plan 34, and may also explicitly or implicitly indicate an association of such event plan details 104 with one or more event plan suggestions 36. The event plan presentation 42 may also include indications of: the one or more event plan suggestions 36 are alternative event plan suggestions 122 for the particular event plan details 104 (e.g., indicating mutual exclusivity of such event plan suggestions 36), and may also indicate selected event plan suggestions therein (e.g., by including indications of alternative event plan suggestion votes 124 and/or recommendations 128).
As a second example of this fourth aspect, the event plan 34 may be associated with one or more locations, and the event plan presentation 42 of the event plan 34 may include an indication of the locations involved in the event plan 34. As a first such example, fig. 9 presents an exemplary scenario 130 of a map 132 that highlights various event plan suggestions 36 involved in the event plan 34, the map 132 including indicators of event locations 134. As a second such example, FIG. 10 presents an exemplary scenario 140 featuring a visual depiction 142 of event locations 134 associated with individual event plan suggestions 36 of an event plan 34. The visual depiction 142 may be generated, for example, based on images of locations captured by individuals and stored in an image database, or by synthesizing a visual depiction thereof (e.g., a three-dimensional model of the location of the event). One of ordinary skill in the art may contemplate many ways to present the event plan 34 to the guest 32 while implementing the techniques presented herein.
A fifth aspect that may vary among embodiments of these techniques involves the following additional features: the additional features may be provided by the social network 12 for the event plan 34 and may be included by the social network 12 in an event plan presentation 42 of the event plan 34. As a first example, a guest may submit an event plan review associated with an event plan 34 (and possibly associated with particular event plan details 104 and/or event plan suggestions 36). Accordingly, social network 12 may be configured to store the received event plan comments in data store 78 associated with event plan 34 and to present the event plan comments associated with event plan 34 as part of event plan presentation 42. As a second example of this fifth aspect, a guest 32 may submit an event attendance indicator (e.g., a reply to indicator) associated with the event plan 34 to indicate whether the guest 32 plans to attend the event 20. Accordingly, social network 12 may be configured to store the received event attendance indicators in data store 78 associated with event plan 34 and to present the event attendance indicators associated with event plan 34 as part of event plan presentation 42.
As a third example of this fifth aspect, the social network 12 may receive and utilize the location of the guest 32 and use the guest location in the event plan presentation 42. The guest location may include a current location of the guest 32 (e.g., received by a Global Positioning Service (GPS) receiver and reported to the social network 12), or a probabilistic location of the guest 32 (e.g., an address of the guest 32, or a location of the guest 32 identified based on an active calendar of the guest 32). The guest location may be used, for example, to include the guest location on a map 132 of the event plan 34 and/or to present a route that may facilitate the guest 32 traveling to the event location.
FIG. 11 presents an illustration of an exemplary scenario 150 featuring an event plan presentation 42 comprising several such features. As a first example, in addition to presenting event plan suggestions 36, event plan presentation 42 includes a set of event attendance indicators 152 (e.g., reply to indicators) submitted by various guests 42 to indicate the planned attendance or absence of event 20. As a second example, the event plan presentation 42 includes a set of event plan reviews 154 submitted by various guests 32 in relation to the event plan 34. As a third example, the event plan presentation 42 includes a map 132, the map 132 including an indication of a guest location 156 of the guest 32 to which the event plan 34 is presented and a route 158 that may facilitate the guest 32 to the event 20.
As a fourth example of this fifth aspect, if the event plan 34 relates to an event location 134, and if the social network 12 receives a report of guest locations 156 of various guests 32 (e.g., received from a Global Positioning Service (GPS) receiver carried by the respective guest 32), the social network 12 may include the guest locations 156 in the event plan presentation 42. For example, event plan presentation 42 may include map 132 depicting guest locations 156 recently detected for guests 32. Additionally, if proximity can be identified for event location 134, guest location 156 can be used to identify the presence of guests 32 at guest location 156 that are close to event location 134, and the absence of guests 32 at guest location 156 that are not close to event location 134. For example, the event plan presentation 42 of the event plan 34 may include a list of attending guests 32 and absent guests 32, and guests 32 may be notified based on the detected guest location 156 when other guests 32 arrive at or depart from the event 20.
FIG. 12 presents an illustration of an exemplary scenario 160 featuring a "geo-fencing" aspect relating to the use of guest locations 156 relative to event locations 134 of events 20 described by event plans 34. In this exemplary scenario 160, a map 132 may be generated, the map 132 indicating: event location 134 of event 20; and guest location 156 of the corresponding guest 32; and a presence indicator 164 indicating the presence or absence of guest 32 (based on the proximity of guest location 156 relative to event address 134). Additionally, when the first guest 32 comes within the vicinity of the event location 134 (based on the first guest location reported to the social network 12), a notification 166, such as an email message or text message, may be sent to the second guest to notify the second guest of the arrival of the first guest. One of ordinary skill in the art, while implementing the techniques presented herein, may contemplate many such additional features that may be added to the event plan of the social network 12.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.
As used in this application, the terms "component," "module," "system," "interface," and the like are generally intended to refer to a computer-related entity, either hardware, a combination of hardware and software, or software in execution. For example, a component may be, but is not limited to being, a process running on a processor, an object, an executable, a thread of execution, a program, and/or a computer. By way of illustration, both an application running on a controller and the controller can be a component. One or more components can reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between two or more computers.
Furthermore, the claimed subject matter may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof to control a computer to implement the disclosed subject matter. The term "article of manufacture" as used herein is intended to encompass a computer program accessible from any computer-readable device, carrier, or media. Of course, those skilled in the art will recognize many modifications may be made to this configuration without departing from the scope or spirit of the claimed subject matter.
FIG. 13 and the following discussion provide a brief, general description of a suitable computing environment to implement one or more embodiments of the principles set forth herein. The operating environment of FIG. 13 is only one example of a suitable operating environment and is not intended to suggest any limitation as to the scope of use or functionality of the operating environment. Example computing devices include, but are not limited to, personal computers, server computers, hand-held or laptop devices, mobile devices (such as mobile phones, Personal Digital Assistants (PDAs), media players, and the like), multiprocessor systems, consumer electronics, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like.
Although not required, embodiments are described in the general context of "computer-readable instructions" being executed by one or more computing devices. Computer readable instructions may be distributed via computer readable media (discussed below). Computer readable instructions may be implemented as program modules, such as functions, objects, Application Programming Interfaces (APIs), data structures, and so forth, that perform particular tasks or implement particular abstract data types. Typically, the functionality of the computer readable instructions may be combined or distributed as desired in various environments.
FIG. 13 illustrates an example of a system 170 comprising a computing device 172 configured to implement one or more embodiments provided herein. In one configuration, computing device 172 includes at least one processing unit 176 and memory 178. Depending on the exact configuration and type of computing device, memory 178 may be volatile (such as RAM), non-volatile (such as ROM, flash memory, etc.) or some combination of the two. This configuration is illustrated in fig. 13 by dashed line 174.
In other embodiments, the device 172 may include additional features and/or functionality. For example, device 172 may also include additional storage (e.g., removable and/or non-removable) including, but not limited to, magnetic storage, optical storage, and the like. Such additional storage is illustrated in FIG. 13 by storage 180. In one embodiment, computer readable instructions to implement one or more embodiments provided herein may be in storage 180. Storage 180 may also store other computer readable instructions to implement an operating system, an application program, and the like. Computer readable instructions may be loaded in memory 178 for execution by processing unit 176, for example.
The term "computer readable media" as used herein includes computer storage media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions or other data. Memory 178 and storage 180 are examples of computer storage media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, Digital Versatile Disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by device 172. Any such computer storage media may be part of device 172.
The device 172 may also include a communication connection 186 that allows the device 172 to communicate with other devices. Communication connection(s) 186 may include, but is not limited to, a modem, a Network Interface Card (NIC), an integrated network interface, a radio frequency transmitter/receiver, an infrared port, a USB connection, or other interfaces for connecting computing device 172 to other computing devices. Communication connection 186 may include a wired connection or a wireless connection. Communication connection 186 may transmit and/or receive communication media.
The term "computer readable media" may include communication media. Communication media typically embodies computer readable instructions or other data in a "modulated data signal" such as a carrier wave or other transport mechanism and includes any information delivery media. The term "modulated data signal" may include a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
Device 172 may include an input device 184 such as a keyboard, mouse, pen, voice input device, touch input device, infrared camera, video input device, and/or any other input device. Output device(s) 182 such as one or more displays, speakers, printers, and/or any other output device may also be included in devices 182. The input device 184 and the output device 182 may be connected to the device 172 by a wired connection, a wireless connection, or any combination thereof. In one embodiment, an input device or an output device from another computing device may be used as input device 184 or output device 182 for computing device 172.
Components of computing device 172 may be connected by various interconnects, such as a bus. Such interconnects may include Peripheral Component Interconnects (PCI) such as PCI express, Universal Serial Bus (USB), firewire (IEEE1384), optical bus structures, and the like. In another embodiment, components of computing device 172 may be interconnected by a network. For example, memory 178 may be comprised of multiple physical memory units located in different physical locations interconnected by a network.
Those skilled in the art will realize that storage devices utilized to store computer readable instructions may be distributed across a network. For example, a computing device 200 accessible via network 188 may store computer readable instructions to implement one or more embodiments provided herein. Computing device 172 may access computing device 200 and download a part or all of the computer readable instructions for execution. Alternatively, computing device 172 may download pieces of the computer readable instructions, as needed, or some instructions may be executed at computing device 172 and some at computing device 200.
Various operations of embodiments are provided herein. In one embodiment, one or more of the operations described may constitute computer readable instructions stored on one or more computer readable media, which if executed by a computing device, cause the computing device to perform the operations described. The order in which some or all of the operations are described should not be construed as to imply that these operations are necessarily order dependent. Alternative ordering will be appreciated by those skilled in the art having the benefit of this description. Further, it should be understood that not all operations are necessarily present in each embodiment provided herein.
Moreover, the word "exemplary" is used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as "exemplary" is not necessarily to be construed as advantageous over other aspects or designs. Rather, use of the word exemplary is intended to present concepts in a concrete fashion. As used in this application, the term "or" is intended to mean an inclusive "or" rather than an exclusive "or". That is, "X employs a or B" means any of the natural inclusive permutations unless specified otherwise or clear from the context. That is, if X employs A; b is used as X; or X employs both A and B, then "X employs A or B" is satisfied under any of the above circumstances. In addition, the articles "a" and "an" as used in this application and the appended claims may generally be construed to mean "one or more" unless specified otherwise or clear from context to be directed to a singular form.
Also, although the invention has been shown and described with respect to one or more implementations, equivalent alterations and modifications will occur to others skilled in the art based upon a reading and understanding of this specification and the annexed drawings. The present invention includes all such modifications and alterations and is limited only by the scope of the appended claims. In particular regard to the various functions performed by the above described components (e.g., elements, resources, etc.), the terms used to describe such components are intended to correspond, unless otherwise indicated, to any component which performs the specified function of the described component (e.g., that is functionally equivalent), even though not structurally equivalent to the disclosed structure, which performs the function in the herein illustrated exemplary implementations of the invention. In addition, while a particular feature of the invention may have been disclosed with respect to only one of several implementations, such feature may be combined with one or more other features of the other implementations as may be desired and advantageous for any given or particular application. Furthermore, to the extent that the terms "includes," has, "" contains, "and" with "and variants thereof are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term" comprising.
Claims (15)
1. A method (50) for presenting an event plan (34) to a user (14) of a social network (12) using a device (72) having a data store (78) and a processor (74), the method (50) comprising:
upon receiving a request from a user (14) to create an event plan (34) within a social network (12) that includes at least one contact (16) of the user (14), inviting (56) the at least one contact (16) to join the event plan (34);
receiving event plan suggestions from the guests for individual event plan details of the event plan (34);
associating (58) the event plan suggestions (36) with the event plans (34) in the data store (78) after receiving the event plan suggestions (36) for the event plans (34) from the guests (32);
upon receiving (60) a request (86) from a guest (32) to present an event plan (34):
retrieving (62) from a data store (78) event plan suggestions (36) associated with the event plan (34); and
the event plan suggestion (36) is presented (64) to the guest (32).
2. The method of claim 1, wherein the event plan suggestion includes at least one search result generated by a search engine based on a search query submitted by the guest.
3. The method of claim 2, wherein:
the event plan is associated with at least one event plan detail; and
the at least one search result and the at least one event plan suggestion generated by the search engine based on the search query are associated with at least one event plan detail of the event plan.
4. The method of claim 1, wherein:
the event plan is associated with at least one event plan detail; and
the respective event plan suggestion is associated with at least one event plan detail of the event plan.
5. The method of claim 4, wherein:
the data store is configured to store at least one event plan template for an event type, the event plan template specifying at least one event plan detail for an event plan based on the event type;
the method further comprises: upon receiving a request from a user to create an event plan for an event type, at least one event plan detail associated with an event plan template for the event type is associated with the event plan.
6. The method of claim 4, wherein the event plan suggestions associated with the event plan comprise at least two alternative event plan suggestions associated with event plan details.
7. The method of claim 6, wherein the method further comprises:
selecting a selected event plan suggestion associated with the event plan details among at least two alternative event plan suggestions associated with the event plan details; and
upon receiving a request from a guest to present the event plan, the selected event plan suggestion is presented along with the event plan details of the event plan.
8. The method of claim 7, wherein:
the method further comprises: storing the event plan suggestion vote in the data store after receiving an event plan suggestion vote for an alternative event plan suggestion from the guest; and
selecting the selected event plan suggestion includes: the selected event plan suggestions are selected based on the alternative event plan suggestion votes stored in the data store.
9. The method of claim 7, wherein selecting the selected event plan suggestion comprises: recommended alternative event plan suggestions are identified among the alternative event plan suggestions associated with the event plan details.
10. The method of claim 1, wherein the event plan is associated with at least one event location.
11. The method of claim 10, wherein the method further comprises: upon receiving a request from a guest to present a map of at least one event location associated with the event plan, presenting the map of the at least one event location.
12. The method of claim 11, wherein:
a respective guest is associated with a guest location; and
the map includes a route including the event location and the visitor location.
13. The method of claim 10, wherein:
a respective guest is associated with a guest location; and
the method further comprises:
storing guest attendance of a guest associated with the event plan in the data store after receiving a guest location proximate to the event location from the guest; and
upon receiving a request from a visitor to present the event plan, visitor attendance of the visitor associated with the event plan is presented.
14. The method of claim 13,
the method further comprises: upon receiving a guest location from the first guest proximate to the event location, notifying at least one second guest of the first guest's first guest presence.
15. A system (76) configured to present an event plan (34) to a user (14) of a social network (12), comprising:
a data store (78), the data store (78) configured to store an event plan (34);
an event plan creation component (80), the event plan creation component (80) configured to: upon receiving a request from a user (14) to create an event plan (34) within a social network (12) that includes at least one contact (16) of the user (14), inviting (56) the at least one contact (16) to join the event plan (34);
an event plan suggestion receiving component (82), the event plan suggestion receiving component (82) configured to: associating (58) the event plan suggestions (36) with the event plans (34) in the data store (78) after receiving the event plan suggestions (36) for the individual event plan details of the event plan (34) from the guest (32); and
an event plan presentation component (84), the event plan presentation component (84) configured to, upon receiving (60) a request (86) from a guest (32) to present an event plan (34):
retrieving (62) from a data store (78) event plan suggestions (36) associated with the event plan (34); and
the event plan suggestion (36) is presented (64) to the guest (32).
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12/956,162 | 2010-11-30 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| HK1183130A HK1183130A (en) | 2013-12-13 |
| HK1183130B true HK1183130B (en) | 2017-11-17 |
Family
ID=
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9432826B2 (en) | Event planning within social networks | |
| US20190332615A1 (en) | Interpersonal Spacetime Interaction System | |
| US10587541B2 (en) | Device, method, and graphical user interface for lightweight messaging | |
| US10924444B2 (en) | Device, method, and graphical user interface for managing customer relationships using a lightweight messaging platform | |
| US8554875B1 (en) | Communicating future locations in a social network | |
| US8605094B1 (en) | Graphical display of locations | |
| US10057359B2 (en) | Location suggestion based upon social networking post content | |
| US8589808B1 (en) | Suggestions in a social network | |
| US8584051B1 (en) | Location and time user interface dial | |
| US20110238755A1 (en) | Proximity-based social networking | |
| US20140282040A1 (en) | Delivering Future Plans | |
| US20140250117A1 (en) | Query-based user groups in social networks | |
| US20150261844A1 (en) | System and method for recommending people to meet or places to visit based on interests of the user | |
| US20110289142A1 (en) | Web-Based Interactive Meeting Event Facility | |
| US20120179981A1 (en) | Collaboration Meeting Management in a Web-Based Interactive Meeting Facility | |
| US20050198031A1 (en) | Method and system for controlling access to user information in a social networking environment | |
| US20100076951A1 (en) | Service for negotiating a meeting location given multiple user preferences and locations using social networking | |
| US20140143166A1 (en) | Identifying members of a social network as candidate referral sources | |
| CN104603830A (en) | Creating social group events | |
| WO2012170919A1 (en) | Social travel recommendations | |
| US11144887B2 (en) | Dynamic event naming | |
| US20170331805A1 (en) | Location-based information distribution | |
| US20220076173A1 (en) | Methods and systems for itinerary creation | |
| US20130151950A1 (en) | System and method for web presence for one or more geographical locations | |
| US10877784B1 (en) | Determining and servicing user intent with a virtual assistant |