Embodiments of the invention will now be described in more detail in relation to the enclosed drawings, in which:
The first device 100 may include a chat client 200 adapted to set up a chat session between the user of the first device 100 and at least one other user of any second device 110 in a chat room, using text messages, voice and/or video communication.
The first device 100 may further include one or more activity applications 210, such as e.g., a music player, a video player, a video game engine, a camera application, a camcorder application, a web browser, a TV application, a main application of the device (e.g., the desktop or standby menu), etc. Each of the activity applications 210 may be placed into one or more states, X, Y, Z, (e.g., playing a specific song with a specific artist when the activity application 210 is a music player).
Each of the activity applications 210 may include a chat start application 220 adapted to trigger the chat client 200 to start a chat session between the first device 100 and the at least one other user of any second device 110. The chat starting application 220 may include a keyword generating unit 230 that generates specific keywords K, L, M, each being associated with a state X, Y, Z, of an ongoing application 210.
For example, if the ongoing activity application 210 is a music player and the state is that a specific artist singing a specific song is played, the keyword generating unit 230 may generate a specific keyword K associated with that specific application state that, in this example, is the played artist singing the specific song. In the same way, if another specific song with the same specific artist is played, another specific keyword L may be generated and associated with the played artist singing the other specific song. It is also possible that the keyword generating unit 230 generates a specific keyword M associated only with the played artist or only with the specific song.
As other examples, if the application 210 is a video game engine, a specific keyword may be generated and associated with the played game title and played game genre; if the application 210 is a web browser, a specific keyword may be generated and associated with a displayed Uniform Resource Locator (URL); and if the application 210 is a main application, a specific keyword may be generated and associated with a registered position of the first device, such as longitude and latitude of an activated user profile, such as meeting, office or outdoors.
The activity application 210 may include a first input device 240, such as, e.g., a keypad, a button, a screen icon, etc. When activated by the user, first input device 240 may trigger the start up of the activity application 210 (e.g., so that the user starts the music player). The first input device 240 may be arranged so that the user of the first device 100 can select a specific state X and can activate that specific state X of the activity application 210, e.g., play a song sung by a specific artist. When the specific state X is activated, the user of the first device 100 may wish to chat with another user that has activated the same state X of an activity application. The chat start application 220 may include a second input device 250, such as, e.g., a keypad, a button, a screen icon, etc. When activated by the user, second input device 250 may trigger the generation of a specific keyword K, associate it with the state X of the started activity application 210 and trigger the chat client 200 to start up a chat session between the first device 100 and the at least one other user of any second device 110.
The first and/or second devices 100 and 110 may communicate via a radio access network, such as, e.g., a WCDMA network, a GPRS or a GSM network or any third generation cellular network. In one embodiment of the invention, first and/or second device 110 may include the Sony Ericsson W900 cellular phone, which is able to connect to the Internet using Universal Mobile Telecommunications System (UMTS) and also include one or more activity applications, such as a camera, a video player, a music player, Java video game capabilities and/or a web browser. The chatting devices (e.g., devices 100 and 110) may not have equal activity functionality.
In a subsequent scenario, the chat request receiving unit 300 may receive a chat request from another user of a second device 110, where the request includes a keyword L associated with the same state X as the first device 100 of an activated application of same type as in the first device 100. The keyword processing unit 320 processes the received keyword L from the connecting chat client of the second device 110 and identifies the keyword L and in which state X the activated activity application 210 is set. The chat room managing unit 310 inquires whether a specific chat room 315 that is associated with the specific state X of an activity application activated by another user already exists. In this case, such a specific chat room 315 already exists in which chat room the user of the first device has entered to, and no new chat room will therefore be created. A chat session 330 may be set up between the second device 110 and the first device 100, which may be performed by the chat session unit 320. The other user of the second device 110 now has the possibility to chat with the user of the first device 100 in the specific chat room 315 that is associated with the specific state X of the activated activity application 210 identified by the keyword processing unit 320.
It is of no importance whether the communication between the first device 100 and the second device 110 is performed via the chat server 130 or peer-to-peer. The keyword may define which chat room to enter for a chat requesting user. In other words, if two users of communication devices which contain software for the procedure activates the procedure during the same activity they will end up in a common chat session. There is no limit for the amount of distinguishable activities and thus no limit for the amount of different potential chat sessions. There is furthermore no limit to the number of users engaged in the same chat session.
Thus, depending on which application is starting the chat client, the user may end up in a certain chat room. The application which generates the keyword is also allowed to make it depend on any state in the application. It is also possible that an existing chat client on a device may be modified so as to provide the solution according to implementations consistent with the invention.
While the user is using an application with a certain state in the device and that application is capable to generate a keyword and start the chat client, it is possible for the user to start a chat session with whoever is also using a corresponding application with an equivalent state and has started the chat client in this state.
An exemplary process performed in the first device 100 will now be described with reference to the flow chart in
The user may select and activate a specific state of the activity application 210 (block 402). The activity application 210 may enter the activated state, which means that the activity application 210 is set in a specific state. For example, the user may select the song Talk by Coldplay and then starts playing it. The music player may enter state <PLAY ARTIST=“Coldplay” SONG=“Talk”>.
When the user wishes to chat, he/she may activate the second input device 250, which activation triggers the chat start application to generate a specific keyword associated with the specific state of the activity application 210 (block 403). The activated second input device may further trigger the chat client 200 to start with the specific keyword as a parameter (block 404).
The chat client 200 may start a network connection and then a connection to the chat server 130 (block 405).
The chat client 200 may send a chat request to the chat server 130 (block 406). The request may include the specific keyword and the user name and password of the user.
The chat client 200 may receive a first notification from the chat server 130 (block 407), where the first notification includes information about a created specific chat room in the chat server. In one implementation consistent with principles of the invention, the specific chat room 315 is associated with the specific state of the activity application defined by the specific keyword. The first notification further includes information that the user has entered into the specific chat room 315.
The chat room 315 may be displayed to the user of the first device 100 (block 408), e.g., shown in a display of the first device 100.
The chat client 200 may receive a second notification from the chat server 130 (block 409). The second notification may include information whether another user of a second device 110 is in the specific chat room 315 associated with the specific state of the activity application 210, which other user has activated the same specific state of an activity application in the second device 110.
An identity of the other user being in the specific chat room may be displayed to the user of the first device 100 (block 410), e.g., shown in a display of the first device 100.
A chat session may be set up between the first device 100 and second device 110 and the user of the first device 100 and the other user of the second device 110 may start chatting (block 411).
To perform the above processing, the first device 100 may include the components illustrated in
The chat client 200 may be adapted to receive a first notification from the chat server 130. The first notification may include information about a created specific chat room 315 in the chat server 130. (The chat room 315 is shown in
The first device 100 may further include a display device 260 adapted to display the specific chat room to the user of the first device and may further display an identity of the other user being in the specific chat room 315.
Exemplary processing performed in the chat server 130 will now be described with reference to the flow chart in
The specific keyword may be processed within the keyword processing unit 320 (block 502). The processing may include identifying the specific state of the activity application associated with the keyword.
The keyword processing unit 320 may determine if any specific chat room associated with the activity application set in the specific state already exits within the chat server 130 (block 503). If the chat room exists, the chat room includes at least one other user of a second portable communication device 110 that has activated an activity application set in the same specific state as the user of the first device 100.
If no specific chat room defined by the specific keyword is found, the chat room managing unit 310 in the chat server 130 may create a specific chat room 315 that is associated with the specific state of the activity application according to the specific keyword (block 504).
The chat room managing unit 310 may place the user of the first device 100 into the chat room 315 (block 505).
The chat room managing unit 310 may send a first notification to the chat client of the first device 100 (block 506). The first notification may include, for example, information about the created specific chat room 315 being associated with the specific state of the activity application and that the user of the first device 100 has entered the created specific chat room 315.
If the specific chat room 315 defined by the specific keyword is found, the chat room managing unit 310 enters the user of the first device 100 into the chat room 315 (block 507).
The chat room managing unit 310 may send a first notification to the chat client of the first device 100 (block 508). The notification may include, for example, information about the existing specific chat room 315 being associated with the specific state of the activity application, that the user of the first device 100 has entered the existing specific chat room, and that the at least one other user of the second device 110 also is in the existing specific chat room 315.
The chat room managing unit 310 may send a second notification to each of the chat clients of the at least one second device 110 (block 509). The second notification may include, for example, information that the user of the first device 100 has entered the specific chat room 315.
The chat session unit 330 may set up a chat session between the user of the first device 100 and the at least one other user of the second device 110.
To perform the above processing, the chat server 130 may be configured as depicted in
The chat server 130 may also include a keyword processing unit 320 adapted to identify the specific state of the activity application associated with the specific keyword.
The chat server 130 may further include a chat room managing unit 310 adapted to create a specific chat room 315 associated with the specific state of the activity application according to the specific keyword, and may be adapted to enter (or place) the chat requesting user into the created specific chat room 315. The chat room managing unit 310 may further be adapted to send a first notification to the chat client of the first device 100, where the first notification includes information about the created specific chat room 315 being associated with the specific state of the activity application and that the user of the first device 100 has entered the created specific chat room 315,
The chat room managing unit 310 may also be adapted to determine if any specific chat room 315 associated with the activated activity application set in the specific state already exits within the chat server 130 before creating the chat room. The specific chat room, if it exists, includes at least one other user of a second portable communication device 110, that has activated an activity application set in the same specific state as the user of the first device 100. The chat room managing unit 310 is further adapted to enter the user of the first device into the existing specific chat room if a specific chat room exists.
The chat room managing unit 310 may be further adapted to send a first notification to the chat client of the first device. The first notification may include information about the existing specific chat room being associated with the specific state of the activity application, that the user of the first device has entered the chat room and that the at least one other user of the second device also is in the specific chat room 315. The chat room managing unit 310 may further be adapted to send a second notification to each of the chat clients of the at least one second device 110. The second notification may include information that the user of the first device 100 has entered the specific chat room 315.
The chat server 130 may further include a chat session unit 330 adapted to set up a chat session between the user of the first device 100 and the at least one other user of the second device 110.
The above processing can be implemented through one or more processors, such as the processor 260 in the first device 100 depicted in
It should be emphasized that the term “comprises/comprising” when used in this specification is taken to specify the presence of stated features, integers, steps or components, but does not preclude the presence or addition of one or more other features, integers, steps, components or groups thereof.
While the above description focused on providing media data from a first portable communication device to a second portable communication device, implementations, consistent with principles of the invention are not so limited. For example, in some embodiments of the invention, the first portable communication device may broadcast the media data to a group of second portable communication devices.
While series of acts have been described with respect to
It will be apparent to one of ordinary skill in the art that aspects of the invention, as described above, may be implemented in many different forms of software, firmware, and hardware in the implementations illustrated in the figures. The actual software code or specialized control hardware used to implement aspects consistent with the principles of the invention is not limiting of the invention. Thus, the operation and behavior of the aspects of the invention were described without reference to the specific software code—it being understood that one of ordinary skill in the art would be able to design software and control hardware to implement the aspects based on the description herein.
Further, certain portions of the invention may be implemented as “logic” that performs one or more functions. This logic may include hardware, such as an application specific integrated circuit, a field programmable gate array, a processor, or a microprocessor, software, or a combination of hardware and software.
No element, act, or instruction used in the description of the present application should be construed as critical or essential to the invention unless explicitly described as such. Also, as used herein, the article “a” is intended to include one or more items. Where only one item is intended, the term “one” or similar language is used. Further, the phrase “based on” is intended to mean “based, at least in part, on” unless explicitly stated otherwise.
This application claims priority under 35 U.S.C. § 119 based on U.S. Provisional Application Ser. No. 60/745,026, filed Apr. 18, 2006, the disclosure of which is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
60745026 | Apr 2006 | US |