The disclosure generally relates to the field of on-line social networks, and more particularly to creating social media channels.
Social networks, such as Facebook, are well known. A typical user participates in a number of social networks simultaneously. On each social network, a user typically goes through some process to select (or that results in the generation of) multiple sets of social relationships: for example, Following, Follower, and Messaging. The specific significance of each of these types of social relationships varies amongst the different social networks and may be too complicated for many users to understand. Furthermore, as most discerning users will understand, simply allowing your content to be public is not always desirable, and is widely considered not to be suitable for younger users (e.g., children). For instance, on Twitter, a public account is accessible by about 1 billion registered Twitter users. On the other hand, when a user instead elects for their content to be private, too many manual controls are needed to efficiently manage content and relationships. For example, a user may have to manually approve every user that requests to follow their posts.
Some social networks allow users to build their individual social networks consisting of other individual users that the user selects. These other members typically fall within one of the following social relationship categories: Following, Followers and Messaging Friends.
As a viewer on a social network, a user can build relationships with other users on the same social network by finding people to follow. By following people, the user may view their posts. A user may identify other users to follow by allowing the social network to scrape their contacts to find known individuals on this network, scraping their address books on other social networks to find individuals who are also on this network, searching the network database for people of interest (e.g., by name or email address), providing suggestions on whom to follow based on trend or some algorithm, and the like. After a list of potentially related users is compiled, the user reviews each list to select individuals or groups to follow. The selected individuals or groups become part of the user's individual social network as Following. As an author or contributor on a social network, the user may post content to her timeline or wall for viewing by her followers (e.g., people who follow her). If the user elects to have her posts be public, any other user may follow her to view her posts. On the other hand, if the user prefers to keep her posts private, only individuals that have been approved by the user may view her posts. These approved individuals join the user's individual social network as Followers.
In some social networks, Following and Followers are combined into a single social relationship. More specifically, if a user agrees to “friend” another user, the user will be following the other user and the other user will also be a follower of the user. In other social networks, Following and Follower relationships are independent. For example, a user may follow another user without that other user in turn becoming a follower of the user. Some social networks also permit users to privately message each other within the social network environment. Thus, users may communicate without having to post messages to their timelines or walls, which would be visible to all of their followers. For privacy purposes, some social networks allow a user to specify whether any user can message them or whether only known users (e.g., in a social relationship of Following or Follower) can message them. These types of rules require more decision making by users and more manual selection from both senders and viewers. In summary, social networks often encourage users to share content liberally because sharing forwards the purpose and revenue model of the social network. While manual controls allow limitations on sharing, such controls are often confusing and cumbersome to apply.
Embodiments are described in connection with the attached drawing, in which:
This disclosure describes aspects of embodiments for carrying out the inventions described herein. Of course, many modifications and adaptations will be apparent to those skilled in the relevant arts in view of the following description in view of the accompanying drawings and the appended claims. While the aspects of the disclosed embodiments described herein are provided with a certain degree of specificity, the present technique may be implemented with either greater or lesser specificity, depending on the needs of the user. Further, some of the features of the disclosed embodiments may be used to obtain an advantage without the corresponding use of other features described in the following paragraphs. As such, the present description should be considered as merely illustrative of the principles of the present technique and not in limitation thereof.
The phrase “ephemeral content”, as used herein, refers to content that is used in an ephemeral manner, i.e., content that is available for use during a limited period of time. Use restrictions that are characteristic of ephemeral content may include, for example, limitations on the number of times the content may be used, limitations on the amount of time that the content is usable, specifications that a server may only send copies or licenses associated with the content during a time window, specifications that a server may only store the content during a time window, and the like. The limitations on use of ephemeral content need be time-based as long as the permission to use the content expires at some point in time, for example a point in time after a specified number of uses.
Aspects of the disclosed embodiments relate to securely sharing content over private social networks and to managing messaging channels associated with social networks. The techniques described herein may be used in combination with and with any suitable content. An aspect of the disclosed embodiments relates to securely sharing content over a private social network. Specifically, in existing social networks (e.g., Facebook, Twitter, Instagram, etc.), users may be overwhelmed with a large number of posts per day, and many users experience feeds that are so cluttered they cannot identify or locate posts that are most relevant to their interests or that originate from users that they are most interested in. In addition, existing social networks may also be vague about which other users can view a user's content, and users cannot maintain control over their content after they share their content on the social networks. Thus, users often cannot be sure who will ultimately be allowed to access their posts.
An aspect of the disclosed embodiments relates to automatic creation of a private social network (PSN), which is defined by a data construct, i.e. a data structure, defining one or more channels and can include a user interface for one or more channels associated with a user. The term “channels”, as used herein, refers to communication relationships defined by data structures, that include an identifier of one or more users that are associated with the channel (e.g., that have access to data stored within that channel). The channels included in a PSN may be channels (e.g., from other social networks) under one or more user identities. For example, the user may have created the channels or subscribed to the channels by creating accounts with social networks. Or, the user may be given a default identity when using the social networks. Each identity is associated with a set of relationships through their respective channels. The data structure can be transformed to provide different behaviors of the resulting social network channels as set forth below.
Regarding user identities, a private social network may be used to bring together data from user identities that are otherwise unrelated. For example, a single PSN may include data from channels associated with a user's personal profile (e.g., family and friend, including photo, real name, cell phone number, home address, and the like), professional profile (e.g., job title, work email, work phone number, and the like), social profile (e.g., avatar, username, personal interest, and the like). In short, a PSN may be used with any profiles associated with a user.
Specifically, the features disclosed herein allow for creation of a private social network without requiring users to manually select and filter their social relationships. More specifically, the techniques for private social network creation disclosed herein leverage choices and activities users have already made on existing social networks and other communication channels such as email applications and messaging applications to build private social networks (e.g., sub-nets) that are tailored to the users' preferences.
To create social relationships with other users, the social relationships a user has with other users in other social networks may be analyzed, and new social relationships may be created with the other users that are most related or interesting to the user. This may include a variety of techniques which may be chosen by the user or implemented automatically. For example, an application managing or creating the private social network may access data from other social networks via an Application Programming Interface (API) with the approval of the user. The user may approve by allowing access outright or by giving credentials required to access the data. Various algorithms for creating and managing PSNs are set forth below as examples.
Algorithm 1: Selecting from existing social networks
For example, one aspect of the disclosed embodiments creates social relationships with each user that is part of an existing social relationship on any social network, and then automatically eliminates users over time that are no longer of interest. This determination of “interest” may be based on, for example, the frequency of social interactions between the users (e.g., the higher the frequency, the greater the interest). Another aspect of the disclosed embodiments starts with a small set of social relationship with users that are of particular interest to the user, and slowly adds new users that become more interesting over time.
Besides social relationships, other relationships may also be monitored and analyzed. For example, a Mail application on a user's phone may be employed to determine work relationships and family relationships, by matching last names and mail exchange frequency for example. A Message application may be employed to determine how often a phone contact is used (e.g., called) before adding the phone contact to the PSN as Following, Follower or Messaging Friend.
Private social networks may be created for any user having an account created by the user or a default account assigned by the social networks. A PSN may be created to include one or more channels. Each channel may be associated with a set of relationships and may be automatically created based on various algorithms. Examples of such algorithms are set for the below.
Algorithm 2: Adding relationships to PSN via invitation—This method enables a mutual relationship to be created between a user initiating an invitation and a user accepting the invitation.
1) User invites a device contact C to join his PSN.
2) C accepts the invitation and creates an account with the system:
3) A mutual relationship can be created between the user and C.
Algorithm 3: Building address book for messaging based on Mail apps on a device—this method creates a channel for each of the user's email accounts. For example, a user will have created a channel for work and a channel for personal matters. Each channel is associated with an address book pre-populated with relationships based on how often the user exchanges email with a recipient.
Algorithm 4: Family and friends connections (FFC)—this method creates relationships by analyzing the user's personal information to determine family and friends.
Algorithm 5: Neighborhood connections (NC)
Algorithm 6: Interest connections (IN)
1) Enable user to create a channel for a specific topic of interest.
Algorithm 7: Wearable connections (WN)
Algorithm 8: Social Messaging—this method enables groups of users on one social network or message app to move their groups (including social relationships) to PSN. The social network or message app can be another application on the same user device. Additionally, the social network can be accessible to the device via another application, such as a browser. As an example, a user using the iOS iMessage app can share a messaging thread with a PSN. Since the messaging thread already includes phone numbers and email addresses of participants, the PSN can create a new channel for all users on that messaging thread.
These and other algorithms may be used in connection with private social network creation and management according to aspects of the disclosed embodiments. After relationships are created for any given channel, a user interface may be displayed to a user that includes the channel, the user's profile for each channel, and any associated social relationships.
In general, deciding whether a social relationship should exist between a user and another user may be based on, for example, whether a social relationship exists on existing social networks, the frequency and intensity of transactions during use of the private social network, location of the users and the like. A degree of interest to each member or user may be determined based on the frequency and intensity of interactions between the user and each other user, and may also be based on a Trust Level between the users. Trust level may depend on existing factors such as whether the other user is in the user's personal contacts (e.g., this person is trusted because you have added them to your phone list), whether the user is following the other user and how often, how often the users interact by commenting or replying to a post on existing social networks, how often the users message each other, and the like. If two users are of little or no interest (e.g., having a low degree of interest), they may be added to a purge list, and the social relationship between the users may be eliminated. The user may also choose not to have the social relationship eliminated, and instead choose to have the person remain as a social relationship despite the low degree of interest.
In step 20, a degree of interest, trust level, or other attributes relating to the relationships can be determined. For example, one of the algorithms disclosed above can be applied to attributes relating to the relationships. Attributes can be determined from any interactions between parties, preferences of the parties, and any other information indicating a desired level of relationship.
In step 30, a custom private social network, including one or more channels can be created based on the attributes determined in step 20. Again, the algorithms disclosed above can be applied to construct the private social network. The social relationships on the private social network can be dynamically adjusted in step 40, using the disclosed algorithms for example.
The techniques described herein for creating a private social network may be initiated by a user to create a separate, stand-alone social network. In addition, the techniques may be implemented within an existing social network to filter or analyze existing social relationships within that social network in an efficient manner and create or manage new channels in that network. By creating a social network with more relevant social relationships among users, content may be shared while minimizing the risk that the content will be accessed by unauthorized, unknown or unintended users. Channel creation and management can be accomplished using known mechanisms, such as computer readable data structures indicating identities and nature of connections. The data structures can be manipulated as desired, in accordance with the algorithms disclosed herein for example, to create and maintain the channels. Various mechanisms for creating the communication connections based on the data structures are well known and can be used in accordance with the invention.
Another aspect of the disclosed embodiments relates to techniques for managing ephemeral messaging channels, for example, on social networking services. As noted above, the channels can be dynamically managed to be created, changed and destroyed over time. Specifically, as described herein, users of social networking services typically form connections (e.g., Follower, Following, Friends, etc.) with friends, family, and other users based on their online interactions with those users. While these relationships are typically formed with other people, social relationships may also be formed with groups, organizations, companies, or other entities.
An ephemeral channel may be represented by a data structure in an application that can bind a group of users associated with certain ephemeral conditions with a list of content associated with additional ephemeral conditions. As exemplified by the following, an application can enable users to create multiple channels and/or share to these channels based on a core construct for a channel:
Channel(T)=Users(t1,t2,t3)+Content(ta,tb,tc)
The identities of users belonging to a channel may be constructed, for example, from various attributes including the following:
Ephemeral content associated with a channel may also be governed by different media types that may have a channel-wide set of access or other use conditions. Each content may also have a unique set of ephemeral conditions set by the channel owner or any user submitting content to the channel. Suitable content for use in channels may include, for example, video, streaming audio/music, photos, text, environmental data (e.g., eHealth or eFitness or other internet of things set of data), and the like. Examples of ephemeral channels may include, for example, individual feed channels, sporting event channels, social channels, and the like.
An individual feed channel can be defined by a data construct/data structure, such as the table of
A sporting event channel can be defined by data construct including one or more users, content, and channel rules or controls. The users may include, for example, channel owner (e.g., a NFL team, etc.), user identity (e.g., anyone who follows the team, anyone that is using an associated application and it at the stadium during a game, etc.). The channel rules or controls may include, for example, ephemeral content conditions (e.g., 15 second video spots, photos will all be curated into a 20 minute “Fan” video that has certain licensing and playback restrictions, etc.). The content may include, for example, group content (e.g., content associated with a sporting event, such as recording video and audio clips into a “Fan” Channel only open for one hour before and after a game event.).
A social channel can be defined by a data construct including one or more users, content, and channel rules or controls. This type of channel may be used during a social event, such as a party. For example, an ephemeral party channel may be used so that people can meet digitally and share multimedia content during a social event, or for a limited time thereafter (e.g., only viewable by this group for 12 hours after the party). The users may include, for example, channel owner (e.g., a sorority, etc.), user identity (e.g., all members of the sorority, anyone who is invited to the party, etc.). The channel rules or controls may include, for example, ephemeral content conditions (e.g., all video and pictures shared via this channel may be viewed by members of this channel for 12 hours after the party ends.). The content may include, for example, individual content (e.g., pictures taken during the party), group content (e.g., content associated with the sorority), and the like.
Communications between users on social networking services may occur on communication channels within the social networking services. For example, when a user creates an account or otherwise registers with a social networking service, the user may be associated with a home channel, which is a channel that may include information relevant to the user, for example, a Timeline, News Feed, and the like. The content of this channel may be provided, for example, by other users that the new user follows or otherwise has a social relationship with. This channel may thus provide a regular stream of posts or other content from the user's social relationships. In some embodiments, the new user may reply to a post and effectively create a new message that is sent to a group dedicated channel of the post's author. The message contains information identifying both the post and the new user. The new user and the post's author may continue to communicate via this group dedicated channel.
Another type of channel that can be utilized is a topic-dedicated channel. This type of channel relates to a topic of interest to the user. The topic may be selected by the user, suggested by other users, suggested by the social networking service, or originate from any other suitable source. Other users who are interested in the topic may post content that is associated with the topic of interest to the channel, and subscribers to the channel may receive the posted content via the channel. While a topic-dedicated channel may generally be intended to relate primarily to a specific topic, there may not be restrictions on the subject matter of content posted to the channel. In addition, the topic may be used just to identify what kind of content would/should be posted in the channel. For example, a professional channel may indicate to users that only professional content should be included, and that social content should be not be posted to the channel.
Yet another type of channel is a group dedicated channel. This type of channel may be intended to be used by a group of other users, for example, a group of friends, members of an organization, employees of a company, etc. Content posted to this channel may be viewed and accessed by other members of the group.
While channels may be used to share content with other users, individual users have traditionally not been able or permitted to control how content is shared on social networking service channels. For example, on a user's home channel, all other users have access to content that is posted through their social relationships with the user associated with the home channel. To create more than one set of social relationships (e.g., a personal set, a professional set, a social set, etc.), the user may need to create multiple user accounts and sign in to each account to control the corresponding channels. As for the group dedicated channels, the only control a user is typically given is to add or remove users from the group as needed to control whether they can access content posted to that channel.
Another way a user may control how his or her content is shared is to use multiple social accounts on different social networks. For example, a user may post content from one account to another. For instance, while posting on Instagram, the user may share the same post on Facebook and Twitter, and the social relationships the user has on each social network may be different, thereby sharing the content with different users. However, the different social networks may also have separate timelines and channels, so the user may need to use different apps to access the content posted on each.
Thus, an aspect of the disclosed embodiments enables the aggregation of channels across disparate social network systems and enables more user control in creating and tearing down channels in social networking services. In this regard, the disclosed embodiments may be implemented using a social platform that enables, for example, a user to use multiple identities under a single user account such that identity may be associated with a separate set of social connections.
In addition, an aspect of the disclosed embodiments relates to channels that may include content posted and received from other social network services and systems. This type of channel may be referred to as a composite channel. For example, a user may group a number of existing channels from the same or other social networks (e.g., Twitter, Facebook, etc.) into a single composite channel. When content is posted to the composite channel, the content may be posted to all of the other existing channels. Likewise, when content is posted to any of the other existing channels, the content may be posted to the composite channel. The posts may include information that indicates where the content or post originated from (e.g., which social network, channel, etc.). The content owner (or another authorized user) may specify how long content should be included in the composite channels, identify which other channels should be used to provide content, etc.
With respect to enabling more user control in creating channels, many different types of channels may be created and/or destroyed (terminated) depending on the circumstances. For example, a location sensitive channel may be created that is associated with a particular location. In this scenario, only people that satisfy location-based conditions may subscribe to the channel. In addition, channels having certain privacy conditions may be created such as a privacy level 1 channel, which may include users that belong to a specific set of connections, a privacy level 2 channel, which may include users that belong to at least two sets of connections, a privacy level 3 channel, which may include users that have been approved by the content owner or the channel rules, and the like. Another exemplary type of channel is a time sensitive channel in which subscribers may be filtered periodically based on time-based conditions and the like. For example, a channel may specify that users may only subscribe for a set period of time (e.g., a few days, a few hours, a few minutes, etc.) There can also be channels that have a status requirement for users based, for example, on the number of followers, likes, etc. that the users have (e.g., an elite status). Users may ask to subscribe, may be automatically subscribed, or may be asked to subscribe based on their status, location, privacy level, time-related conditions, etc.
As mentioned above, the disclosed embodiments also relate to the ability of a user to teardown, delete, or otherwise disable a channel on a social network. For example, channels may be configured to have a predetermined expiration, which may or may not be extended. Channels may also be revoked if they are being used improperly, for example. Furthermore, channels may be removed if they are not used for a period of time (e.g., no new posts, etc.). Also, channels may be linked such that when one channel terminates, another channel also terminates.
Yet another aspect of the disclosed embodiments relates to managing how users can post on multiple channels. For example, a single post may be posted on multiple channels, but may have a single set of controls that over-ride any channel controls. In another scenario, a single post may be posted on multiple channels, but the channel controls may over-ride any content controls associated with the post.
As shown in
As described above, there are generally two types of channels that may be added. First, new channels may be selected from list of existing channels, for example, via the “Stream ephemeral posts from existing channels” section shown at 410 in
Rather than cloning an existing channel into the new channel, a new channel may be created, for example, from a template as shown in the “Create ephemeral channel from template” section shown at 420 of
Another aspect of the disclosed embodiments relates to a channel or other web-based platform that allows users to post content while maintaining control over the use of that content. Specifically, when a user posts content to the channel, the user specifies one or more usage rules or conditions that control whether or not the content may be accessed by other users.
Regarding user control, each user may have the ability to set usage rules regarding access to content they post. This control may include which users are permitted to access their content, how long their content is available to be accessed, and the like. For example, a user may specify that only users who are active at the time the content is posted may access the content (e.g., new users that join after the content is posted cannot access the content).
In addition, system-wide rules or channel-owner based rules may be set for users that control whether each user may access content posted to the channel, contribute content to the channel, and the like. For example, geo-markers may be used to control whether users may post content based on their location. In this regard, a user may be allowed to post content if they are within a certain geo-space, and they may lose control of their posted content if they leave the geo-space, for example. Furthermore, system-wide rules may be used to control when a channel may be created, modified, deleted, and the like, and user rules may be set based on each user's classification within one or more groups, such as pseudo identity based groups or anonymous identity based groups.
One or more of the above-described techniques can be implemented in or involve one or more computer systems.
With reference to
A computing environment may have additional features. For example, the computing environment 600 includes storage 640, one or more input devices 650, one or more output devices 660, and one or more communication connections 670. An interconnection mechanism 680, such as a bus, controller, or network interconnects the components of the computing environment 600. Typically, operating system software (not shown) provides an operating environment for other software executing in the computing environment 600, and coordinates activities of the components of the computing environment 600.
The storage 640 may be removable or non-removable, and may include magnetic disks, magnetic tapes or cassettes, CD-ROMs, CD-RWs, DVDs, or any other medium which can be used to store information and which can be accessed within the computing environment 600. In some embodiments, the storage 640 stores instructions for software to be executed by a processor, such as processing unit 610.
The input device(s) 650 may be a touch input device such as a keyboard, mouse, pen, trackball, touch screen, or game controller, a voice input device, a scanning device, a digital camera, or another device that provides input to the computing environment 600. The input device 650 may also be incorporated into output device 660, e.g., as a touch screen. The output device(s) 660 may be a display, printer, speaker, or another device that provides output from the computing environment 600.
The communication connection(s) 670 enable communication with another computing entity. Communication may employ wired or wireless techniques implemented with an electrical, optical, RF, NFC, Wi-Fi, infrared, acoustic, or other carrier.
Implementations can be described in the general context of computer-readable media. Computer-readable media are any available storage media that can be accessed within a computing environment. By way of example, and not limitation, within the computing environment 600, computer-readable media may include non-transient memory 620 or storage 640.
One or more of the above-described techniques can be implemented in or involve one or more computer networks.
With reference to
The network environment 600 can include one or more server computing devices, such as 770A, 770B, and 770C. The server computing devices can be traditional servers or may be implemented using any suitable computing device. In some scenarios, one or more client computing devices may functions as server computing devices.
Network 730 can be a wireless network, local area network, or wide area network, such as the internet. The client computing devices and server computing devices can be connected to the network 730 through a physical connection or through a wireless connection, such as via a wireless router 740 or through a cellular or mobile connection 650. Any suitable network connections may be used.
One or more storage devices can also be connected to the network, such as storage devices 760A and 760B. The storage devices may be server-side or client-side, and may be configured as needed during implementation of the disclosed embodiments. Furthermore, the storage devices may be integral with or otherwise in communication with the one or more of the client computing devices or server computing devices. Furthermore, the network environment 700 can include one or more switches or routers disposed between the other components, such as 780A, 780B, and 780C.
In addition to the devices described herein, network 730 can include any number of software, hardware, computing, and network components. Additionally, each of the client computing devices, 710, 720, and 730, storage devices 760A and 760B, and server computing devices 770A, 770B, and 770C can in turn include any number of software, hardware, computing, and network components. These components can include, for example, operating systems, applications, network interfaces, input and output interfaces, processors, controllers, memories for storing instructions, memories for storing data, and the like.
Having described and illustrated the principles of the invention with reference to described embodiments, it will be recognized that the described embodiments can be modified in arrangement and detail without departing from such principles. It should be understood that the aspects of the embodiments described herein are not related or limited to any particular type of computing environment, unless indicated otherwise. Various types of general purpose or specialized computing environments may be used with or perform operations in accordance with the teachings described herein. Elements of the described embodiments shown in software may be implemented in hardware and vice versa, where appropriate and as understood by those skilled in the art.
As will be appreciated by those of ordinary skilled in the art, the foregoing examples of systems, apparatus and methods may be implemented by suitable program code on a processor-based system, such as general purpose or special purpose computer. It should also be noted that different implementations of the present technique may perform some or all the steps described herein in different orders or substantially concurrently, that is, in parallel. Furthermore, the functions may be implemented in a variety of programming languages. Such program code, as will be appreciated by those of ordinary skilled in the art, may be stored or adapted for storage in one or more non-transitory, tangible machine readable media, such as on memory chips, local or remote hard disks, optical disks or other media, which may be accessed by a processor-based system to execute the stored program code.
The description herein is presented to enable a person of ordinary skill in the art to make and use the invention. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art and the generic principles of the disclosed embodiments may be applied to other embodiments, and some features of the disclosed embodiments may be used without the corresponding use of other features. Accordingly, the embodiments described herein should not be limited as disclosed, but should instead be accorded the widest scope consistent with the principles and features described herein.
This application claims benefit to provisional application Ser. Nos. 62/042,616 filed on Aug. 27, 2014, 62/054,948 filed on Sep. 24, 2014, 62/042,622 filed on Aug. 27, 2014, 62/054,949 filed on Sep. 24, 2014, 62/042,604 filed on Aug. 27, 2014, 62/054,947 filed on Sep. 24, 2014, 62/042,644 filed on Aug. 27, 2014, 62/043,370 filed on Aug. 28, 2014, 62/054,945 filed on Sep. 24, 2014, 62/042,619 filed on Aug. 27, 2014, 62/043,371 filed on Aug. 28, 2014, 62/054,944 filed on Sep. 24, 2014, the disclosures of which are incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
62042616 | Aug 2014 | US | |
62042622 | Aug 2014 | US | |
62054948 | Sep 2014 | US | |
62054949 | Sep 2014 | US | |
62042604 | Aug 2014 | US | |
62054947 | Sep 2014 | US | |
62042644 | Aug 2014 | US | |
62042619 | Aug 2014 | US | |
62043371 | Aug 2014 | US | |
62043370 | Aug 2014 | US | |
62054945 | Sep 2014 | US | |
62054944 | Sep 2014 | US |