Abstract: A system for enabling users of mobile data processing devices to participate in an activity is provided. The system includes a first mobile data processing device (102) which may be configured to broadcast a request over a network to connect with it. The first mobile data processing device (102) may receive consent to connect from client mobile data processing devices (106) that are capable of communicating with the first mobile data processing device (102). The first mobile data processing device (102) may connect with the client mobile data processing devices to receive input from the client mobile data processing devices (106). Further, the first mobile data processing device (102) may provide instructions to a display device (104) to display digital content by processing at least the input received from the client mobile data processing device (106). Reference figure: FIG. 1A
CLIAMS:We claim:
1. A system for enabling users of mobile data processing devices to participate in an activity, the system comprising a first mobile data processing device configured to:
receive input from a user of the first mobile data processing device;
connect with at least one client mobile data processing device desiring to participate in the activity;
receive input from the client mobile data processing device; and
provide instructions to a display device to display digital content by processing the received input.
2. The system according to claim 1, wherein the first mobile data processing device is further configured to:
broadcast a request to connect with it; and
receive consent to connect from the client mobile data processing device.
3. The system according to claim 1, wherein the first mobile data processing device is further configured to:
receive a request to connect with it; and
provide consent to connect with the client mobile data processing device.
4. The system according to claim 1, wherein the first mobile data processing device is configured to be a server, wherein one or more of the client mobile data processing devices are configured to take over as the server.
5. The system according to claim 4, wherein the one or more of the client mobile data processing devices are configured to take over as the server while being connected with the first mobile data processing device.
6. The system according to claim 4, wherein the one or more of the client mobile data processing devices are configured to take over as the server when the first mobile data processing device temporarily suspends participation in the activity.
7. The system according to claim 4, wherein the one or more of the client mobile data processing devices are configured to take over as the server when the first mobile data processing device terminates participation in the activity.
8. The system according to claim 1, wherein the input received from the client mobile data processing device is raw input.
9. The system according to claim 8, wherein the first mobile data processing device is configured to:
determines consequences of the raw input; and
determine implication of the consequences on the activity.
10. The system according to claim 1, wherein the input received from the client mobile data processing device is one or more consequences of the raw input.
11. The system according to claim 10, wherein the first mobile data processing device is configured to determine implication of the consequences on the activity.
12. The system according to claim 1, wherein the input received from the client mobile data processing device is implication, of one or more inputs provided by a user of the client mobile data processing device, on the activity.
13. The system according to claim 1, wherein the first mobile data processing device is further configured to provide instructions to split the display in the display device into two or more display regions, wherein at least a first display region corresponds to the first mobile data processing device and a second display region corresponds to the client mobile data processing device.
14. The system according to claim 1, wherein the first mobile data processing device, the client mobile data processing device and the display device are within close proximity, such that, the users of the first mobile data processing device and the client mobile data processing devices are able to view the display device.
15. The system according to claim 1, wherein one or more of the first mobile data processing device and the client mobile data processing device are configured to communicate a request to pause or exit the activity, wherein the first mobile data processing device is configured to receive said request and communicate said request to one or more remaining client mobile communication devices, if any.
16. The system according to claim 1, wherein the first mobile data processing device is configured to communicate with one or more remote mobile data processing device, wherein the remote mobile data processing device is configured to:
receive input from a user of the remote mobile data processing device;
connect with at least one mobile data processing device, which is in proximity to the remote mobile data processing device, desiring to participate in the activity;
receive input from a user of the mobile data processing device via the mobile data processing device; and
provide instructions to a display device associated with and in proximity to the remote mobile data processing device by processing at least input received from the first mobile data processing device, the user of the remote mobile data processing device and the mobile data processing device.
17. A system for enabling users of mobile data processing devices to participate in a multiplayer game, the system comprising a plurality of mobile devices configured to connect with at least one mobile device among the plurality of mobile devices, wherein:
at least one of said plurality of mobile devices is configured to initiate connection of all the mobile devices with the at least one mobile device; and
at least one of said plurality of mobile devices is configured to:
receive input from its own user and input from remaining mobile devices;
process the received input; and
provide instructions to a display device to display digital content corresponding to the game based on processing of the input.
18. A method for enabling a multi-participant digital activity, the method comprising:
establishing connection between mobile communication devices of the participants;
establishing connection between one of said mobile communication devices and a display device;
receiving input by each of said mobile communication devices from respective participant;
processing the input at each of said mobile communication devices to determine at least a consequence of the input;
receiving processed input by the mobile communication device connected to the display device from the remaining one or more mobile communication devices; and
providing instruction, by the mobile communication device connected to the display device, to the display device, for displaying digital content corresponding to the multi-participant digital activity. ,TagSPECI:The following specification particularly describes the invention and the manner in which it is to be performed.
BACKGROUND
Field
[0001] The disclosed subject matter relates to systems enabling user participation in activities, such as, multiplayer games. More particularly, but not exclusively, the subject matter relates to systems enabling multiple users to participate in activities using their handheld devices, while overcoming constraints corresponding to relatively smaller display of their handheld devices.
Discussion of related field
[0002] Conventionally multiplayer games are enabled by a dedicated gaming console. The gaming console may output video signal for display on a relatively large screen, such as a television screen. The console may receive input from input device held by the players. The input device may provide raw input to the console, which may process the raw input and display the game on the television screen. Such an arrangement may require significant investment, and most of the elements, such as the input devices and the console, of such a system may be used solely for the purposes of gaming.
[0003] Over the past decade or so, there has been significant development in the field of handheld communication/electronic devices. With the advent of smart phones, and tablets, among others, multiplayer or multi participant activities, applications or games are being enabled through such devices. Conventionally, each of the participants desiring to participate in a multiplayer game may install an instance of the gaming application in their respective devices. The devices may connect with each other and participate in the game, while each participant views the progress of the game on the screen of his respective device. In some cases, lag may be experienced even if one such participating device has a relatively lower processing capability. Further, the relatively smaller screen size of their handheld devices in which they may be viewing the progress of the game may offer an inferior user experience as compared to gaming experience offered by dedicated gaming consoles. Furthermore, the conventional arrangement of enabling multiplayer and multi-participant activities using handheld communication devices may constrain the nature or kind of applications that may be developed and enabled.
[0004] In light of the foregoing discussion, there may be a need for a technique to enable multiple users/players to participate in an activity using their respective handheld devices which may be used for purposes other than just gaming, while overcoming the inferior experience of viewing the progress of the activity on their handheld devices.
SUMMARY
[0005] An embodiment provides a system for enabling users of mobile data processing devices to participate in an activity. The system includes a first mobile data processing device. The first mobile data processing device may be configured to broadcast a request over a network to connect with it. The first mobile data processing device may receive consent to connect from one or more client mobile data processing devices that are capable of communicating with the first mobile data processing device over the network. Upon receiving consent to connect, the first mobile data processing device may connect with the client mobile data processing devices. The first mobile data processing device may be configured to receive input from one or more of the client mobile data processing devices. Further, the first mobile data processing device may provide instructions to a display device to display digital content by processing at least the input received from the client mobile data processing devices.
BRIEF DESCRIPTION OF DRAWINGS
[0006] Embodiments are illustrated by way of example and not limitation in the Figures of the accompanying drawings, in which like references indicate similar elements and in which:
[0007] FIG. 1 is an illustration of a first mobile data processing device 102 communicating with a display device 104, in accordance with an embodiment;
[0008] FIG. 1A is an illustration of the first mobile data processing device 102 communicating with the display device 104 and multiple client mobile data processing devices 106, in accordance with an embodiment;
[0009] FIG. 1B is an illustration of the first mobile data processing device 102 including a data storage unit 108, a semantic analyzer unit 110 and a progress tracking unit 112, in accordance with an embodiment.
[0010] FIG. 1C is a schematic representation of the architecture of the client mobile data processing device 106 illustrating a data storage unit 114, a semantic analyzer unit 116 and a progress tracking unit 118 and the data flow, in accordance with an embodiment;
[0011] FIG. 1D is a schematic representation of the data flow between an application module 120, the first mobile data processing device 102, the client mobile data processing device 106 and the display device 104, in accordance with an embodiment;
[0012] FIG. 1E is an illustration of the display device 104 showing display regions 122, in accordance with an embodiment;
[0013] FIG. 1F is also an illustration of the display device 104 showing display regions 122, in accordance with an embodiment;
[0014] FIG. 2 is a flowchart illustrating exemplary participation of users of mobile data processing devices in an activity, in accordance with an embodiment;
[0015] FIG. 3 is a flowchart illustrating the first mobile data processing device 102 connecting with one or more client mobile data processing device 106, in accordance with an embodiment;
[0016] FIG. 4 is a flowchart illustrating receiving input by the first mobile data processing device 102 from one or more client mobile data processing device 106, in accordance with an embodiment;
[0017] FIG. 5 is a flowchart illustrating one method of the client mobile data processing devices 106 taking over as the server 102, based on wait period, in accordance with an embodiment; and
[0018] FIG. 6 is another flowchart illustrating another method of one of the client mobile data processing devices 106 taking over as the server 102, based on priority, in accordance with an embodiment.
DETAILED DESCRIPTION
OVERVIEW
[0019] An embodiment provides a system for enabling users of mobile data processing devices to participate in an activity, such as a multiplayer game. The system may include a first mobile data processing device, such as a smart phone or tablet. The first mobile data processing device may be configured to be a server. The first mobile data processing device being the server, may broadcast a request over a network to connect with it. The first mobile data processing device may receive an acknowledgement in the form of consent to connect from one or more client mobile data processing devices, such as smart phones or tablets. The users of the first mobile data processing device and the client mobile data processing devices may participate in the multiplayer game. The client mobile data processing devices may be capable of communicating with the first mobile data processing device over the network. Upon reception of consent to connect, the first mobile data processing device or the server may connect with the one or more client mobile data processing devices. The first mobile data processing device may be configured to receive input from the one or more client mobile data processing devices. The input received from the client mobile data processing devices may be raw input or processed input. Further, the first mobile data processing device may provide instructions to a display device, such as a television, to display digital content after processing the received inputs. Therefore the users will be able to take part in activities, such as a multiplayer game, in which their mobile devices will act as input devices, and one of these mobile devices will behave like a server, which enables display of the activity/game on a large screen, such as a television screen, thereby enhancing user experience.
[0020] The following detailed description includes references to the accompanying drawings, which form part of the detailed description. The drawings show illustrations in accordance with example embodiments. These example embodiments are described in enough detail to enable those skilled in the art to practice the present subject matter. However, it will be apparent to one of ordinary skill in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits, and networks have not been described in detail so as not to unnecessarily obscure aspects of the embodiments. The embodiments can be combined, other embodiments can be utilized or structural, logical, and electrical changes can be made without departing from the scope of the invention. The following detailed description is, therefore, not to be taken as a limiting sense.
[0021] In this document, the terms “a” or “an” are used, as is common in patent documents, to include one or more than one. In this document, the term “or” is used to refer to a nonexclusive “or,” such that “A or B” includes “A but not B,” “B but not A,” and “A and B,” unless otherwise indicated.
EXEMPLARY SYSTEM
[0022] An embodiment discloses a system for enabling users of mobile data processing devices to participate in an activity, such as, a multilayer game. The system may include a first mobile data processing device 102. The first mobile data processing device 102 may include a user interface unit, one or more sensors, memory units and processor, among other hardware, software and firmware.
[0023] In an embodiment, the first mobile data processing device 102 may be a handheld mobile device, such as for example, a smart phone, a tablet and a notebook, among others. The first mobile data processing device 102 may be a handheld device that may be used for purposes other than just for participating in the activity. The first mobile data processing device 102 may be used for enabling electronic communication and/or telecommunication.
[0024] In an embodiment, the first mobile data processing device 102 may be configured to be a server 102 while also enabling its user to participate in the activity.
[0025] In an embodiment, the first mobile data processing device 102 may be configured to establish a connection with a display device 104. The display device 104 may be a device that may have a relatively larger screen as compared to the display screens of devices operated by the users for providing inputs corresponding to the activity. The display device 104 may be, for example, a television that may be configured to receive input from at least the first mobile data processing device 102.
[0026] The first mobile data processing device 102 and the display device 104 may be in close proximity, such that, user of the first mobile data processing device 102 may be able to see the display device while he operates the first mobile data processing device 102. Communication protocols or its variants that may be used to establish connection between the first mobile data processing device 102 and the display device 104 may include wireless protocols that may be based on technologies such as, wifi and Bluetooth. Alternatively, wired protocols such as, HDMI among others may be used.
[0027] In an embodiment, the first mobile data processing device 102 may be configured to transfer information or digital or audio-video signals to the display device 104. Such signals can be transferred to the display device 104 using technologies, such as, Apple Airplay-Mirroring, Miracast and Digital Living Network Alliance ® (DLNA), among others. FIG. 1 is an illustration of the first mobile data processing device 102 communicating with the display device 104, in accordance with an embodiment.
[0028] In an embodiment, the first mobile data processing device 102 may be configured to broadcast a request to connect with it and participate in a multiplayer/multiuser activity. The first mobile data processing device 102 may generate and communicate the request to find devices capable of communicating with the first mobile data processing device 102 and participating in the activity. The request may be accessible to devices that are in close proximity to the first mobile data processing device 102. Alternatively, the first mobile data processing device 102 may receive a request to connect from another device, which may be in its close proximity.
[0029] In an embodiment, the first mobile data processing device 102 may be configured to connect with one or more client mobile data processing devices 106, each one being in close proximity with the first mobile data processing device 102, so as to establish near field communication. The first mobile data processing device 102 may connect and communicate data with the client mobile data processing devices 106 via wireless communication protocol. Example of wireless communication protocol may include wifi and Bluetooth, among others. FIG. 1A is an illustration of the first mobile data processing device 102 communicating with the display device 104 and one or more client mobile data processing devices 106, in accordance with an embodiment. The client mobile data processing devices 106 may be a device similar to the first mobile data processing device 102 or the examples of the first mobile data processing device 102 as discussed previously.
[0030] The first mobile data processing device 102 may be further configured to identify any new client mobile data processing devices 106 that may join the network and participate in the activity. Each of the user devices 102, 106 participating in the activity may include an instance of an application or a version of the application corresponding to the activity.
[0031] In an embodiment, the user interface unit of the mobile data processing devices 102, 106 may be configured to accept input from its users. The user interface unit may accept input which may include actions, such as, tap, touch and swipe among others performed by the users. The user interface unit may further accept inputs such as numerical quantities or letters. The user interface unit may accept a combination of two or more of the aforementioned inputs.
[0032] Likewise, the sensors may be configured to capture various actions performed by the user. The actions that may be captured by the sensors may include movement of the mobile data processing devices 102, 106, and/or voice, among others. The mobile data processing devices 102, 106 may combine inputs from the user interface unit and the sensor(s) as may be desired by an application.
[0033] Referring to FIG. 1B, the first mobile data processing device 102 may include a data storage unit 108, a semantic analyzer unit 110 and a progress tracking unit 112. In an embodiment, the data storage unit 108 may be configured to collect inputs corresponding to the first mobile data processing device 102 and one or more client mobile data processing devices 106 participating in the activity.
[0034] The data storage unit 108 may be configured to store raw input received from the first mobile data processing device 102 and the client mobile data processing devices 106. Raw input may include, for example, values corresponding to tap, touch swipe, data from sensors, data corresponding to change in position of the device, numbers and letters, among others.
[0035] In an embodiment, the semantic analyzer unit 110 may be configured to analyze the semantics of the raw input. The semantic analyzer unit 110 may be configured to process the raw input and derive the consequence of the raw input. For example, in a multiplayer car racing game, the raw input may include and may correspond to pitch, yaw or roll data of the device operated by a user. The user may change the position of the device to steer a vehicle in the game, thereby altering the pitch, yaw or roll values of the device. This raw data may be processed by the semantic analyzer unit 110 to determine the consequences of the raw input. The consequence, for example, may be, steering the vehicle to the left or right, or increasing or decreasing the speed of the vehicle. The semantic analyzer unit 110 may be further configured to determine implication of the consequence of the raw input on the activity. For example, if the consequence of the raw input is increasing the speed of the vehicle, the implication on the activity may be altering the position of the user’s vehicle in the game with respect to other vehicles in the game. The aforementioned example(s) is provided for enabling understanding, and not as a limitation, hence, in light of this disclosure, several types of raw input, consequence of raw input and implication on the activity may be perceived and enabled.
[0036] In an embodiment, the progress tracking unit 112 may be configured to keep a record of the outcome of actions performed by each user. The progress tracking unit 112 may use the record to determine the progress of each user participating in the activity. For example, if the activity were a game, then the progress tracking unit 112 may be configured to track progress of each player in terms of scores.
[0037] In an embodiment, the first mobile data processing device 102 may select one or more client mobile data processing devices 108 whose content/status/progress may be displayed on the display device 104.
[0038] In an embodiment, a device that may be referred to as client mobile data processing device 106 may be configured to take over as the server 102. In other words any one of the devices being operated by a user for providing input while participating in the activity may take up the role of the server 102 (first mobile data processing device 102). Similarly, the first mobile data processing device 102 may behave like a client mobile data processing device 106.
[0039] A client mobile data processing device 106 may perform one or more tasks performed by the first mobile data processing device 102 before connecting with the first mobile data processing device 102 or while being connected with the first mobile data processing device 102 or when the first mobile data processing device 102 temporarily suspends/pauses participation in the activity or when the first mobile data processing device 102 suspends/exits from participating in the activity.
[0040] In an embodiment, the client mobile data processing devices 106 may be configured to listen to the broadcast request communicated by the first mobile data processing device 102. The client mobile data processing devices 106 may be configured to communicate an acknowledgement to the first mobile data processing device 102 in response of the request. The acknowledgement may include consent to connect to the first mobile data processing device 102. On the other hand, one or more client mobile data processing devices 106 may deny connecting to the first mobile data processing device 102.
[0041] In an embodiment, the client mobile data processing devices 106 may be configured to identify the first mobile data processing device 102 as the server 102. The client mobile data processing devices 106 may identify the first mobile data processing device 102 based on the request being broadcasted by the first mobile data processing device 102. The client mobile data processing devices 106 may be further configured to identify new server 102 which may be one of the client mobile data processing devices 106 that may have taken over as the server 102.
[0042] In an embodiment, the client mobile data processing device 106 may further include a data storage unit 114. The data storage unit 114 may be configured to collect at least the inputs provided to it or received by it. The client mobile data processing device 106 may also include a semantic analyzer unit 116. The semantic analyzer unit 116 may be configured to process the input and derive the consequences of the input. The semantic analyzer unit 116 may be further configured to determine the implication on the activity. The client mobile data processing device 106 if configured to process the input to derive the consequences of the input may result in reducing the processing burden, at least to some extent, on the server or the first mobile data processing device 102. Similarly, the client mobile data processing device 106 if configured to determine the implication on the activity may result in reducing the processing burden, to a relatively large extent, on the server or the first mobile data processing device 102.
[0043] In an embodiment, the extent (communicating the raw input to device 102, or determining consequences of the raw input or determining implication on the activity), to which the raw input may be processed by one or more of the client mobile data processing devices 106, may be determined by considering the processing capability of the client mobile data processing device 106.
[0044] In an embodiment, the extent, to which the raw input may be processed by one or more of the client mobile data processing devices 106, may be determined by considering the processing capability of the client mobile data processing device 106 relative to other devices 106, 102 participating in the activity.
[0045] In an embodiment, the extent, to which the raw input may be processed by one or more of the client mobile data processing devices 106, may be determined by considering the processing capability of the client mobile data processing devices 106 relative to the first mobile data processing device 102.
[0046] In an embodiment, once the devices 106, 102 connect to participate in the activity, one of the devices with a relatively larger processing capability may behave like a server and communicate with the display device 104.
[0047] In an embodiment, the extent, to which the device behaving like a server or communicating with the display device 104 has to process data, may be determined based on the processing capability of said device.
[0048] The client mobile data processing device 106 may further include a progress tracking unit 118 which may be configured to keep a record of outcome of the actions performed by its user or each of the participants. The progress tracking unit 118 may use the record to determine the progress of each user participating in the activity, for example, in terms of scores. FIG. 1C is a schematic representation of the architecture of the client mobile data processing device 106 illustrating the data storage unit 114, a semantic analyzer unit 116 and a progress tracking unit 118 and the data flow, in accordance with an embodiment. It shall be noted that, the first mobile data processing device 102 and the client mobile data processing device 106 may be similar devices. The data storage unit 114, semantic analyzer unit 116 and progress tracking unit 118 of the client mobile data processing device 106 may perform similar functions as the data storage unit 108, semantic analyzer unit 110 and progress tracking unit 112 of the first mobile data processing device 102.
[0049] In an embodiment, the client mobile data processing devices 106 may be in close proximity with the display device 104, such that, the users of the client mobile data processing devices 106 are able to view the display device 104.
[0050] In an embodiment, the system may include an application module 120. FIG. 1D is a schematic representation of the data flow between the application module 120, first mobile data processing device 102, the client mobile data processing device 106 and the display device 104, in accordance with an embodiment. The application module 120 may be configured to determine what type of information has to be communicated between first mobile data processing device 102 and the client mobile data processing device 106. The application module 120 may determine whether to communicate raw input or processed input from the client mobile data processing device 106 to the first mobile data processing device 102.
[0051] In an embodiment, the application module 120 may be configured to cause an operation performed by a user on the first mobile data processing device 102 impact the ongoing activity. In another embodiment, the application module 120 may be further configured to cause changes in the activities of the client mobile data processing devices 106 by an operation performed on the first mobile data processing device 102.
[0052] Instances of the application module 120 may be present in each of the devices 102, 106, participating in the activity. The application module 120 may be configured to enable the device 102, 106 to communicate a request to pause an ongoing activity. The first mobile data processing device 102 may be configured to receive such a request. Upon receiving such a request, the first mobile data processing device 102 may communicate the request to the rest of the client mobile data processing devices 106.
[0053] The application module 120 may be further configured to enable the first mobile data processing device 102 to communicate a request to exit an ongoing activity. The application module 120 may be configured to cause the client mobile data processing devices 106 to pause, exit or continue with the activity following the request received from the first mobile data processing device 102.
[0054] In an embodiment, the display device 104 may be configured to receive instructions from the first mobile data processing device 102. The display device 104 may be configured to display content corresponding to inputs from the first mobile data processing device 102 or server 102. The display device 104 may receive instructions to display the implication on the activity. The information to be displayed may be transferred to the display device 104 by the first mobile data processing device 102. In an embodiment, the first mobile data processing device 102 or server 102 may enable display of digital content that may enable participation in the activity. For example, the first mobile data processing device 102 or server 102 may enable the display device 104 to display dance steps that have to be mimicked by the participants by moving their device 102, 106. The movement of the devices 102, 106 may be processed to determine how closely the users of the devices 102, 106 are mimicking the dance steps. Information corresponding to their performance may also be displayed on the display device 104. Such an application would not have been possible if users had to see the display screens of their respective devices to perform the dance steps.
[0055] In an embodiment, the first mobile data processing device 102, one or more of the client mobile data processing devices 106 and the display device 104 may be in close proximity to each other, such that, the users of the first mobile data processing device 102 and the client mobile data processing devices 106 are able to view the display device 104. In another embodiment, each of the first mobile data processing device 102 and the client mobile data processing devices 106 may also display some content or all the content relative to the activity, or content that may have to be displayed only to them on their respective devices 102, 106. The system may include more than one display devices 104. Number of display devices 104 may be equal to, less than or more than the number of participants.
[0056] In an embodiment, the display device 104 may be configured to display digital content by splitting the display into one or more display regions 122. Each display region 122 may correspond to the one or more of the mobile data processing devices 102, 106.
[0057] In an embodiment, the number of display regions 122 may be equal to, less than or greater than the number of mobile devices 102, 106 participating in the activity. Each display region 122 may correspond to one or more users. In another embodiment, one or more of the display regions 122 may be dedicated to display progress of each user participating in the activity.
[0058] In an embodiment, one or more display regions 122 may be configured to a pre-configured or configurable orientation with respect to one or more adjacent display regions. The display regions 122 may be split to resemble desired geometrical shape(s). FIG. 1E and 1F are illustrations of the display device 104 showing display regions 122, in accordance with multiple embodiments. The display regions 122 may be configured to dynamically change content based on the activity. Further, display regions may be configured to dynamically change orientation based on the activity or stage in the activity.
[0059] Examples of the display device 104 may include a smart TV, a projector with display screen and a desktop monitor, among other such display devices. Other examples of display devices may include the screens of iPad, tablets and phablets, among other such devices.
[0060] FIG. 2 is a flowchart illustrating exemplary participation of users of mobile data processing devices in an activity, in accordance with an embodiment. At step 200, the first mobile data processing device 102 may broadcast a request to connect with it and participate in an activity. At step 202, the first mobile data processing device 102 may receive consent to connect from at least one client mobile data processing device 106. At step 204, the first mobile data processing device 102 may connect with the client mobile data processing devices 106. At step 206, the first mobile data processing device 102 may receive inputs from its user and the connected client mobile data processing devices 106. At step 208, first mobile data processing device 102 may process data and may provide instructions to display digital content to the display device 104.
[0061] FIG. 3 is a flowchart illustrating the first mobile data processing device 102 connecting with one or more client mobile data processing device 106, in accordance with an embodiment. The client mobile data processing devices 106 may listen to the request communicated from the first mobile data processing device 102, at step 302. The client mobile data processing devices 106 may acknowledge with consent to connect to the first mobile data processing device, at step 304. Alternatively, the client mobile data processing devices 106 may deny connecting to the first mobile data processing device 102, at step 306. Upon receiving a denial, the first mobile data processing device 102 may broadcast the request again. The first mobile data processing device 102 may connect with one or more client mobile data processing devices 106, at step 204 once the first mobile data processing devices 102 receives the consent to connect.
[0062] In an embodiment, a connection is established between the first mobile data processing device 102 and one or more client mobile data processing devices 106. Following the connection, the first mobile data processing device 102 may receive input from the client mobile data processing devices 106. FIG. 4 is a flowchart illustrating receiving input by the first mobile data processing device 102 from one or more client mobile data processing device 106, in accordance with an embodiment. At step 400, communication of input may be initiated. The initiation may take place in either the first mobile data processing device 102 or the client mobile data processing device 106. If the input is raw, the first mobile data processing device 102 may process the raw input to derive consequence(s) of the input at step 402. Subsequently, at step 404, the implication on the activity due to the derived consequences may be determined.
[0063] In an embodiment, the type of input to be communicated may be determined by the application module 120 of the client device 106. The application module 120 may communicate raw input from the client mobile data processing device 106 to the first mobile data processing device 102. On the other hand, the application module 120 may communicate consequences of the input or implication on the activity to the first mobile data processing device 102.
[0064] In an embodiment, the first mobile data processing device 102 may be a server 102. However, any failure or suspension (temporary or permanent) or reduction in processing capability on the part of the first mobile data processing device 102 may require one or more client mobile data processing devices 106 to take over as the server 102. Each of the client mobile data processing devices 106 may be assigned time slices/intervals/periods during which each client mobile data processing device 106 may have to wait before taking over as the server 102. The time slice assigned to each client mobile data processing device 106 may be predefined or configurable. Each client mobile data processing device 106 may be configured to wait for the allotted time and may be configured to take over as the server 102 within the allotted time. A client mobile data processing device 106 assigned with a comparatively lesser waiting period may be configured to take over as the server 102 before the rest of the client mobile data processing devices 106.
[0065] FIG. 5 is a flowchart illustrating one method of the client mobile data processing devices 106 taking over as the server 102, based on wait period, in accordance with an embodiment. At step 500, the client mobile data processing devices 106 and the display devices 104 may encounter termination of first mobile data processing device’s role as a server 102. At step 502, the client devices 106 may wait for one of the client mobile data processing device 106, which may have been assigned a comparatively shorter duration of wait, to take over as the server 102. The client mobile data processing devices 106 may wait till the client mobile data processing device 106, with a comparatively shorter duration of wait to broadcast itself as the server 102. If the client mobile data processing device 106, has broadcasted itself as the server 102, then, at step 504, the remaining devices may connect to the new server 102. If the client mobile data processing devices 106, which has been assigned the shortest waiting duration, fails to broadcast itself as the server 102, by the end of its waiting duration, then the remaining devices may return to step 502 and wait for the client data processing device 106 with the next comparatively shorter waiting period to broadcast itself as the server 102. However, in an embodiment, if a new server 102 is not found, then the first mobile data processing device 102 may be configured to take over as the server 102 once again.
[0066] In an example, the system may include one first mobile data processing device 102 and three client mobile data processing devices 106. The client mobile data processing devices 106 may be allotted different wait periods for different functions while participating in the activity. For example, the three client mobile data processing devices 106 may be allotted wait periods of 0.02, 0.05 and 0.06 seconds to take over as the server 102 whenever the first mobile data processing device 102 is suspended from the role of the server 102. Following the suspension of the first mobile data processing device 102, the client mobile data processing device 106, which has been allotted the time slice of 0.02 seconds, may be configured to wait for 0.02 seconds before it can take over as the server 102. If the client mobile data processing device 106 with allotted time slice of 0.02 seconds fails to take over by the end of 0.02 seconds, then the client mobile data processing device 106 with time slice 0.05 seconds may have to broadcast itself as the server 102. Failure of the client mobile data processing device 106 with time slice of 0.05 seconds to broadcast itself as the server 102 may lead to the client mobile data processing device 106 with the time slice 0.06 seconds to take over.
[0067] In another embodiment, each client mobile data processing devices 106 may be assigned with priority numbers in the network. The priority number may be assigned to the client mobile data processing devices 106 by the first mobile data processing devices 102. Based on the priority numbers assigned, the client mobile data processing devices 106 may be configured to take over as the server 102. A client mobile data processing device 106, with the highest priority may take over as the server before the rest of the client mobile data processing devices 106 attempt to take over as the server. Upon failure of the device 106 with the highest priority to take over as the server 102, the client device 106 with next higher priority may take over as the server 102. Further, the client mobile data processing devices 106 may be configured to communicate input to the first mobile data processing devices 102, based on the priority assigned.
[0068] FIG. 6 is another flowchart illustrating another method of one of the client mobile data processing devices 106 taking over as the server 102, based on priority, in accordance with an embodiment. At step 600, each of the client mobile data processing device 106 may receive a priority number as part of assignment of priority numbers to each of the client mobile data processing devices 106. At step 500, the client mobile data processing devices 106 and the display devices 104 may encounter termination of first mobile data processing device’s role as a server 102. At step 602, the remaining client mobile data processing devices 106 may wait for a client mobile data processing device 106, having the highest priority, to broadcast itself as the server 102. If the client mobile data processing device 106 having the highest priority has broadcasted itself as the server 102, then the remaining devices may connect to the new server 102, at step 604. If the client mobile data processing device 106 having the highest priority number fails to broadcast itself as the server 102, within a time slice allotted to it, then, at step 606, the remaining client mobile data processing devices 106 may wait for the turn of the client device 106 with next higher priority number amongst them. At step 608, the client mobile data processing device 106 with the next comparatively higher priority may broadcast itself as the server 102. If the client mobile data processing device 106 with the next higher priority fails to broadcast itself as the server 102, within a duration assigned to it, then, it may be followed by step 606.
[0069] In an example, the system may include one first mobile data processing device 102 and three client mobile data processing devices 106. The client mobile data processing devices 106 may be assigned numbers from 1 to 3, 1 being the device with highest priority and 3 being the device with the lowest priority. Following the first mobile data processing device’s 102 suspension from the role of the server, the client mobile data processing device with the highest priority i.e. number 1 may be configured to take over as the server 102. If the client mobile data processing device 106 assigned the with the highest priority fails to take over by the end of a dedicated time slice, then the client mobile data processing device 106 with the second highest priority, i.e. number 2 may have to broadcast itself as the server 102. Failure of the client mobile data processing device 106 with the second highest priority to broadcast itself as the server 102 may lead to the client mobile data processing device 106 with the third highest or lowest priority to take over.
[0070] Various methods, based on algorithms, such as scheduling algorithms, which are well known in the art, may be employed by the system to configure one or more client mobile data processing device 106 to take over as the server 102.
[0071] Alternatively, one of the users operating the client mobile data processing devices 106 may operate his device 106 to broadcast that the device 106 he/she is operating wishes to or has taken over as the server 102. The rest of the devices participating in the activity may then connect with the client mobile data processing device 106 that wishes to or has taken over as the server 102.
[0072] In an embodiment, content corresponding to the first mobile data processing device 102 or one or more client mobile data processing devices 106 may be displayed on the display device 104 based on instructions provided to the display device 104 by the first mobile data processing device 102. Content may be transferred by the first mobile data processing device 102 to the display device 104. Content may include at least the implication derived from user intended consequences by processing the raw input. Content may also include progress corresponding to users of the first mobile data processing device 102 and the connected one or more client mobile data processing device 106.
[0073] In an embodiment, combination of one first mobile data processing device 102, one or more client mobile data processing device 106 and one or more display device 104 may be configured to be one group of multiple players or multiple participants participating in the activity.
[0074] In an embodiment, the system may include one or more such groups of multiple players or multiple participants participating in same or similar activity. One such group of multiple participants may be configured to participate in an activity and compete against another group. The system may be configured to enable participation of two or more groups in the activity to engage in the competition. The system may enable the communication between two or more groups for participating in the activity via the first mobile data processing devices 102 or server 102 of each group.
[0075] The first mobile data processing device 102 of one such group may be configured to broadcast a request to connect with it. The request may be received by remote mobile data processing devices acting as first mobile data processing devices 102 or servers 102 for other groups connected to one or more mobile data processing devices. One or more mobile data processing devices may connect with a remote mobile data processing device within close proximity. The first mobile data processing devices 102 or servers 102 of the other groups may connect with the first mobile data processing device 102 that broadcasted the request to connect. Once the connection is established between two or more such groups, they may be configured to communicate in order to participate in the activity and compete with each other in the activity.
[0076] For example, if the activity were a soccer match, the system may enable one group of multiple players to form a team with ten or more client mobile data processing devices 106 connected to the first mobile data processing device 102 to compete against another group of multiple players forming another team. Each team may include one first mobile data processing device 102 and ten client mobile data processing devices 106. The first mobile data processing device 102 of one of the teams may broadcast a request to connect with it and participate in the activity. The first mobile data processing device 102 of the second team may receive the request and connect with the first mobile data processing device 102 from where the request originated. Following the connection, both the teams may be configured to proceed with the game.
[0077] In an embodiment, the activity may be suspended temporarily or permanently when any of the devices 102, 106 from any of the groups get disconnected from the network.
[0078] In an embodiment, each team may be configured to view the progress of the activity in their respective display devices.
[0079] In an embodiment, two or more such groups may be remotely located from each other.
[0080] In an embodiment, the first mobile data processing device 102 or server 102 of one group may communicate with the remote mobile data processing devices or server 102 of another group over the internet.
CONCLUSION
[0081] Embodiments provide a system enabling users of mobile data processing devices to participate in multi-user or multiplayer or multi-participant activities.
[0082] The system requires users to interact via their mobile communication devices, such as, mobile phones, without requiring a dedicated console with specialized application software to participate in the interactive activity.
[0083] The system may provide a real time experience while participating in activities, such as a multiplayer video game.
[0084] The system may enable users to view the activity via a common relatively large display device, while using their mobile devices as input devices to participate in the activity.
[0085] It shall be noted that the processes described above is described as sequence of steps, this was done solely for the sake of illustration. Accordingly, it is contemplated that some steps may be added, some steps may be omitted, the order of the steps may be re-arranged, or some steps may be performed simultaneously.
[0086] The example embodiments described herein may be implemented in an operating environment comprising software installed on a computer, in hardware, or in a combination of software and hardware.
[0087] Although embodiments have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the system and method described herein. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.
[0088] Many alterations and modifications of the present invention will no doubt become apparent to a person of ordinary skill in the art after having read the foregoing description. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. It is to be understood that the description above contains many specifications, these should not be construed as limiting the scope of the invention but as merely providing illustrations of some of the personally preferred embodiments of this invention. Thus the scope of the invention should be determined by the appended claims and their legal equivalents rather than by the examples given.
| # | Name | Date |
|---|---|---|
| 1 | 2369-MUM-2014-AbandonedLetter.pdf | 2020-01-31 |
| 1 | 2369-MUM-2014-FORM 1 - 01-08-2014.pdf | 2014-08-01 |
| 2 | Form 5.pdf | 2018-08-11 |
| 2 | 2369-MUM-2014-FER.pdf | 2019-06-28 |
| 3 | Form 3.pdf | 2018-08-11 |
| 3 | 2369-MUM-2014-CORRESPONDENCE(1-8-2014).pdf | 2018-08-11 |
| 4 | Form 26.pdf | 2018-08-11 |
| 4 | 2369-MUM-2014-FORM 18.pdf | 2018-08-11 |
| 5 | Abstract figure.jpg | 2018-08-11 |
| 5 | Form 2.pdf | 2018-08-11 |
| 6 | ABSTRACT1.jpg | 2018-08-11 |
| 6 | Drawings.pdf | 2018-08-11 |
| 7 | ABSTRACT1.jpg | 2018-08-11 |
| 7 | Drawings.pdf | 2018-08-11 |
| 8 | Abstract figure.jpg | 2018-08-11 |
| 8 | Form 2.pdf | 2018-08-11 |
| 9 | 2369-MUM-2014-FORM 18.pdf | 2018-08-11 |
| 9 | Form 26.pdf | 2018-08-11 |
| 10 | Form 3.pdf | 2018-08-11 |
| 10 | 2369-MUM-2014-CORRESPONDENCE(1-8-2014).pdf | 2018-08-11 |
| 11 | Form 5.pdf | 2018-08-11 |
| 11 | 2369-MUM-2014-FER.pdf | 2019-06-28 |
| 12 | 2369-MUM-2014-FORM 1 - 01-08-2014.pdf | 2014-08-01 |
| 12 | 2369-MUM-2014-AbandonedLetter.pdf | 2020-01-31 |
| 1 | search_28-06-2019.pdf |