Examples of the present invention relate to associating actors in social networks. More specifically, the examples of the present invention relate to methods, apparatuses and a related computer program products for defining secure association of actors in a social network enabling interaction between desired actors. Examples of the present invention may be applicable to multiparty applications like gaming, messaging etc.
Several social networks provide means for interaction between. In some social networks the interaction is allowed between any actors, in some social networks the interaction is allowed between registered actors and in some social networks the interaction is allowed only between actors who have specifically accepted the interaction per request.
Therefore there is a need for an approach for defining a secure procedure to associating actors in a social network.
According to one example embodiment, a method for associating actors in a social network is presented. In the method a first association request message is obtained from a first actor. The first association request message comprising information relating to a first actor and a second actor. The method further comprises waiting for a second association request message from a second actor. The second association request message comprises information relating to the first actor and the second actor. As a response to obtaining the second association request message, associating the first actor with the second actor.
According to another example embodiment, a non-transitory computer-readable medium encoded with instructions that, when executed in hardware, perform a process, the process comprising: obtaining a first association request message from a first actor. The first association request message comprising information relating to a first actor and a second actor. The steps further comprise waiting for a second association request message from a second actor. The second association request message comprises information relating to the first actor and the second actor. As a response to obtaining the second association request message, associating the first actor with the second actor.
According to another example embodiment, a computer program product for associating actors in a social network including one or more sequences of one or more instructions which, when executed by one or more processors, cause an apparatus to at least perform the steps of at least: obtaining a first association request message from a first actor. The first association request message comprising information relating to a first actor and a second actor. The steps further comprise waiting for a second association request message from a second actor. The second association request message comprises information relating to the first actor and the second actor. As a response to obtaining the second association request message, associating the first actor with the second actor.
According to another example embodiment: A server for associating actors in a social network comprising:
According to another example embodiment, an apparatus comprising:
The embodiments of the invention are illustrated by way of example—not by way of limitation, in the figures of the accompanying drawings:
The following embodiments are exemplary only. Although the specification may refer to “an”, “one”, or “some” embodiment(s), this does not necessarily mean that each such reference is to the same embodiment(s), or that the feature only applies to a single embodiment. Single features of different embodiments may be combined to provide further embodiments.
In the following, features of the invention will be described with a simple example of a system architecture in which various embodiments of the invention may be implemented. Only elements relevant for illustrating the embodiments are described in detail. Various implementations of the information system comprise elements that are suitable for the example embodiments and may not be specifically described herein.
Often social networks are open to any actors and identification of a user behind an actor is not required. This approach is flexible to most of the users and helps the social networks to grow but unfortunately there are users abusing the social networks and trying to establish interaction with inappropriate reasons. This is especially serious problem when the social network is targeted to minors or the minors are using the social network.
Examples of a method, a computer readable medium, an apparatus and a computer program product for providing architecture for delivering messages are disclosed.
As used herein, the term “actor” refers to a computational entity capable of having a state and as response to an event, for example a message, is capable of altering the state. An actor may represent for example a user, a group of users, a social chat room, a social game etc.
As used herein, the term “unique identifier” refers to data that is used to authenticate an actor—for example a user. The data can be any data that can be used to individually authenticate the actor. Examples of such data are strings of numbers or letters or symbols or a combination of all previously mentioned.
As used herein, the term “social network” is a structure comprising actors and interaction between at least some of the actors. The social network may be for example a messaging service, a multiplayer game, media sharing service, team working service, a chat room etc. The social network provides a first communication channel, which enable the actors at least to send and receive messages.
As used herein, the term “association request message” refers to an object of communication containing a discrete set of data sent from one actor to another. The message may contain, but is not limited to, for example, a unique identifier identifying a first actor and another unique identifier identifying a second actor, message content, a request for associating the first actor and the second actor and type of the message. The type of the message may be embedded into the message content. The message may be human-readable or non-human-readable and it may be sent between the actors (persons, devices, applications and any combinations thereof). It can be for example a chat message from a user to another user, a game event from an actor to another, information to be delivered from one application to another application etc.
As used herein, the term “server” refers to a physical or virtual computational entity capable of enhancing information and to perform computational tasks. The term server may refer to one entity or a group on entities configured to operate jointly.
As used herein, the term “user device”, refers to a computing device and it may be for example a laptop, desktop computer, graphics tablet, cellular phone, multimedia system of a vehicle, an arcade gaming device, an electronic noticeboard, or any other device with capabilities for running an application.
As used herein, the term “first communication channel” refers to messaging platform between actors within the social network. The first communication channel may be used to transfer messages, like chat message, gaming event etc, relating to the social network and also to transferring the associating request messages. The first communication channel may be used in transferring messages between the actors (persons, devices, applications and any combinations thereof).
As used herein, the term “second communication channel” refers to messaging utilising any other communication compared to the first communication channel. The second communication channel may be for example verbal communication face-to-face, a phone call, an e-mail message, an text message etc.
The network 10 may be, for example, a personal area network, a local area network, a home network, a storage area network, a campus network, a backbone network, a metropolitan area network, a wide area network, an enterprise private network, a virtual private network, or a combination of any of these. The example network system of
Arrows between the elements in
Looking at the method illustrated in
The association request messages are obtained (steps 20 and 21) at the social network and the association request messages are verified (step 22). Now the users may be associated (step 23) and the users may start using the social network together—associated to each other. This step (step 23) may comprise further actions like approval from at least one other user, administrator etc. One of the benefits of the current invention is that the association request messages are not shown to the users or the association request messages are shown only if both the first and the second users have sent the association request messages.
Obtaining the first association request message in step 20 may start a waiting period for waiting the second association request message step 21. The second association request message has to be received within the waiting period.
The example above is a simplified embodiment. There can be for example a group or groups of users associated and rules for associating a new user may vary. For example, as a response from a new user joining a group, the association of the new user may require obtaining an association request message from an administrator of the social network or a group, one or more members of the group etc. There may be other requirements and verifications during the procedure. The associating request messages may be obtained at a server running the social network, when the messages are shown to the users when they login to the chat room next time or the associating request messages may be obtain
In step 32 certain requirements may be checked relating to the first association request. If the requirements are not met, processing the first association request message may be postponed or denied, step 38. The requirements may for example define the waiting period within which the second association request has to be obtained. Step 32 may further include checking if the second user has already sent an associating request message inviting the first user to associate with. In step 34 a second association request message is sent by the second user and obtained for example at the server running the social network, the second association request message containing at least the unique identifier of the first user. The second user may send the second association request message for example when logged in to the social network using. The social network may have a functionality for inviting users to invite other users to associate with.
In step 35 certain requirements may be checked relating to the second association request. If the requirements are not met, processing the first association request message may be denied, step 38. The requirements may for example define a waiting period within which the second association request has to be obtained. In step 36 the first association request message and the second association request messages are verified. The verification may be conducted at the server automatically. The verification in step 36 may further include relaying and requesting a response to the association request messages or information relating to those from the users, an administrator or another person or group of persons etc. In step 37 the first actor and the second actors are associated and the first user and the second user may interact in the social network.
The requirements checked in steps 32 and 35 may include the waitin period between the first and the second association request messages, user settings for ability or permission to associate with another user, requesting an approval from a third party. The third party may be for example a third user, a group of users, an administrator, an automated approval service etc.
Let us consider a use case example of the method illustrated in
The users meet and decide to get associated in the multiplayer game. They share their unique identifiers (step 30) and agree time when to send the association request messages. The multiplayer game may have requirements for associating the users. The requirements (steps 32 and 35) may include for example: the association request messages are sent within one hour, the association request messages have to be approved by another user for example a parent of at least one of the two users etc.
Using the first communication channel, the first user sends the first association requests message and the second user sends the second association requests message and the association request messages are obtained (steps 31 and 34) at the multiplayer game. The association request messages are relayed to the users (step 36). Now the users are associated (step 37) and the users may start using the multiplayer game together. One of the benefits of the current invention is that the association request messages are not shown to the users or the association request messages are shown only if both the first and the second users have sent the association request messages.
The multiplayer game is a simplified example and there can be for example a group of users associated and rules for associating a new user may vary. For example, as a response from a new user joining a multiplayer game, the association of the new user may require obtaining an association request message from an administrator of the multiplayer game or a group, one or more members of the group etc. There may be other requirements and verifications during the procedure.
The multiplayer game may be a game environment, where more than one associated users can play in cooperation to achieve a common goal or the users may play against each other as rivals. In addition to the actual gaming the users may interact also interact using messages sharing pictures etc. Some games are designed for minors and adding the interaction the game may become more exciting, entertaining, social and educating to minors. According to some embodiments of the current invention harassment focusing on minors can be prevented.
Going back to the multiplayer example the two users may be for example children from same school, let's say Mike and Jane. At school they talk about a Cool Game they both play and they would like to be “friends” (associated) in the Cool Game in order to play together. They share their usernames for “friending”: Mike's username is MikeTheChamp and Jane's username is J9018. Later in the evening they both launch and login to the Cool Game. Mike sends an association request message for “friending” with J9018 using “friending” functionality in the Cool Game, the association request message comprising username MikeTheChamp.
At this point Jane does not receive any indication about the “friending” message from Mike. Next Jane sends an association request message for “friending” with MikeTheChamp using “friending” functionality in the Cool Game, the association request message comprising username MikeTheChamp. As a response of receiving the two association request messages from the two users requesting friending them, the “friending” functionality associates Mike and Jane and they may start to play together and interact in the Cool Game.
The server application 44 may comprise software for running a social network service, like a chat room, a multiplayer game etc. The server application may further comprise functionality to coordinate associating actors, users, group of users, groups of users to enable for example interaction between those.
The first association request message, 51 may comprise a first unique identifier identifying the user of the user device 11, a second unique identifier identifying the user of the user device 12, request for association and other information.
The second association request message, 52 may comprise a first unique identifier identifying the user of the user device 11, a second unique identifier identifying the user of the user device 12, request for association and other information.
According to an example embodiment as a response to the second association request message the actors (A1 and A2) are associated.
According to another example embodiment messages 53 and 54 are further sent from the server 13 to the user devices 11 and 12. The sent messages may contain same information as the association request messages 51 and 52 or they may contain other information indicating the association requests. The messages 53 and 54 may be visible to the users or they may be invisible for example automatically updating actors (A1 and A2) associating the actors.
According to another example embodiment messages 55 and 56 are further sent form the user devices 11 and 12 to the server 13 indicating acknowledgements of the associations by the users. Sending the messages 55 and 56 may require action from the users or they may be sent automatically to associate the actors.
According to another example embodiment messages 57 and 58 are further sent from the server 13 indicating a successful association.
According to an example embodiment if the server 13 fails to receive the association request message 52—it is not sent or it is not received at the server 13—the first association request message is ignored and the association request is denied.
While various aspects of the invention have illustrated and described as block diagrams, message flow diagrams, flow charts and logic flow diagrams, or using some other pictorial representation, it is well understood that the illustrated units, blocks, device, system elements, procedures and methods may be implemented in, for example, hardware, software, firmware, special purpose circuits or logic, a computing device or some combination thereof.
It is apparent to a person skilled in the art that as technology advances, the basic idea of the invention can be implemented in various ways. The invention and its embodiments are therefore not restricted to the above examples, but they may vary within the scope of the claims.