GB2520931A - A system for managing communications with a plurality of mobile devices - Google Patents

A system for managing communications with a plurality of mobile devices Download PDF

Info

Publication number
GB2520931A
GB2520931A GB1321136.2A GB201321136A GB2520931A GB 2520931 A GB2520931 A GB 2520931A GB 201321136 A GB201321136 A GB 201321136A GB 2520931 A GB2520931 A GB 2520931A
Authority
GB
United Kingdom
Prior art keywords
mobile devices
server
system
mobile device
mobile
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
GB1321136.2A
Other versions
GB201321136D0 (en
Inventor
Jennifer Sheridan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
TOGEVA Ltd
Original Assignee
TOGEVA Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by TOGEVA Ltd filed Critical TOGEVA Ltd
Priority to GB1321136.2A priority Critical patent/GB2520931A/en
Publication of GB201321136D0 publication Critical patent/GB201321136D0/en
Publication of GB2520931A publication Critical patent/GB2520931A/en
Application status is Pending legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports or amusements, e.g. casino games, online gambling or betting
    • G07F17/326Game play aspects of gaming systems
    • G07F17/3272Games involving multiple players
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B5/00Electrically-operated educational appliances
    • G09B5/08Electrically-operated educational appliances providing for individual presentation of information to a plurality of student stations
    • G09B5/12Electrically-operated educational appliances providing for individual presentation of information to a plurality of student stations different stations being capable of presenting different information simultaneously
    • G09B5/125Electrically-operated educational appliances providing for individual presentation of information to a plurality of student stations different stations being capable of presenting different information simultaneously the stations being mobile
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B7/00Electrically-operated teaching apparatus or devices working with questions and answers
    • G09B7/06Electrically-operated teaching apparatus or devices working with questions and answers of the multiple-choice answer-type, i.e. where a given question is provided with a series of answers and a choice has to be made from the answers
    • G09B7/07Electrically-operated teaching apparatus or devices working with questions and answers of the multiple-choice answer-type, i.e. where a given question is provided with a series of answers and a choice has to be made from the answers providing for individual presentation of questions to a plurality of student stations
    • G09B7/073Electrically-operated teaching apparatus or devices working with questions and answers of the multiple-choice answer-type, i.e. where a given question is provided with a series of answers and a choice has to be made from the answers providing for individual presentation of questions to a plurality of student stations all student stations being capable of presenting the same questions simultaneously
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers

Abstract

A first embodiment comprises a system for managing at least one mobile devices user interface (UI), and involves a server transmitting a signal to the device to implement an instruction to initiate a UI on the device. The signal may be to implement a new or modified UI, or to execute a UI on the mobile device, and may relate to an application (e.g. game, quiz, poll) with a GUI. A second embodiment comprises a method of maintaining persistent identities of mobile devices, and involves assigning unique identifiers to mobile devices, and storing the unique identifiers at the server, with future communications associated with the identifiers. A third embodiment comprises a management server receiving UI interaction data from mobile devices, with the server providing an output based on the interaction data, and managing the user interactions according to instructions of an administrator. The disclosed systems are intended to increase audience engagement and entertainment at large performance events (e.g. sports stadia or concert arenas).

Description

A SYSTEM FOR MANAGING COMMUNICATIONS WITH ONE OR MORE MOBILE

DEVICES

Field of the invention

The present invention relates to a system for managing communications with one or more of mobile devices. The invention relates to a system for managing user interfaces on each of one or more mobile devices, for maintaining a persistent identity of each of the one or more mobile devices within a system, and for executing a software program within a system that is in communication with one or more mobile devices.

Background to the invention

Large performance venues such as sport stadiums or concert arenas have long sought methods of increasing the participation of their audience with the event. Methods by which event organisers aim to increase audience engagement include participation activities such as guizzes, competitions, games or polls. Performance venues often have an audience capacity of many thousands of people.

Therefore, coordination and management of such participation activities can be difficult and time consuming.

Increasingly, audience members for the type of events held in large performance venues will carry with them an internet enabled mobile device (such a "smartphone" or tablet computer) . The present invention aims to provide a system for communication with a plurality of such mobile devices, particularly as a tcol for providing interactive communication and entertainment systems for a large number of attendees at performance event.

An increasing trend has been observed for television programme viewers to participate in cross-platform or second-screen viewing. For example, television programmes may invite viewers to take part at home in a quiz, poll or competition through their own mobile device (such as a smartphone or tablet computer) whilst watching a television programme. In some cases, such interaction events will take place through a browser window at the mobile device. In other systems, interaction events will take place through an application (or "app") downloaded on to the mobile device from an online store (such as Google PlayTM, Blackberry World or the Apple App Store) The concept of "second-screen" participation has also extended to computer gaming within the home. US 2012/0202593 describes a home game system having a first display device and controller module having a second display device. The first display device displays a first game image showing the output of one or more players. The second display device displays a second game image showing the output of the player using the game controller. One or more players of the game may each use a controller having an individual game image displayed.

In the described gaming systems, the controller comprises a second display that wirelessly communicates with the game system (for example via Bluetooth or WiFi) However, initial configuration of the system often takes place through wired connection to the game console.

Furthermore, only a limited number of controllers (and secondary displays) are able to connect to the games system.

In some cases, computer games have been developed having accompanying mobile applications that can be downloaded on to a mobile device. Such applications provide extra functionality to the game, or display additional information about the gaming environment.

Existing systems have been developed to disseminate information to visitors at a venue or stadium. One example is Cisco Connected Stadium Sclutions (information can retrieved at http://www.ciscc.com/web/strategy/sports/ corinectedstadium.html) . Such systems intend to provide an enhanced fan experience, including providing enhanced video displays, electronic ticketing, information about the nearby amenities within the stadium, merchandising opportunities, and live event statistics.

Such systems use multicast wired or wireless networks to communicate with custom built applications on each user's mobile device. The use of multicast communications is useful for allowing simultaneous broadcast of identical information to a large number of mobile devices, either as a one-to-many or a many-to-many configuration. Using an IP multicasting protocol, a single stream of data can be broadcast to a plurality of irobile devices through transmission to routers at branch points within a network.

In this way, data is addressed to each of the plurality of devices by addressing the device at a given IF address.

Although existing systems can offer solutions for streaming data to multiple devices on mass, they are not suited for receipt of information returned from a large number of mobile devices. Therefore, they are not especially suitable for "mass participation" entertainment activities (for example, playing multiplayer games within a stadium venue) The wired or wireless networks implemented in existing systems must be custom designed for a given venue. This makes such systems costly to implement.

Consequently, a system that addresses these problems is sought.

Statement of invention

Against this background, there is provided a system for managing simultaneous communication between a server and one or more mobile devices. The server is configured to transmit or "push" a new user interface, UI, or an instruction to initiate a UI, to each of the mobile devices.

The UI may be configured to control an interactive entertainment program, for example. This results in a new UI being activated at each of the one or more mobile devices at the same time upon the coc.mand of the server (rather than upon selection of a new UI by the user of the mobile device) . Hence, the system allows global and simultaneous control of the user interactions with a software program at each of the mobile devices. Furthermore, the user does not need to install new software for different interactive entertainment programs.

The system further comprises a server being configured to assign a unique identifier or distinctive label to each device of the one or more connected mobile devices. All subsequent communications between the server and the mobile device contain or are associated with the unique identifier.

This has particular benefits when the system is implemented in an environment having users of a large number of mobile devices. In particular, it allows the system to recognise that a specific ccmmunication is received from a particular mobile device, even where the network connection (and associated IP address) of the mobile device to the server changes between communications. Furthermore, use of automatically allocated unique identifiers allows the system to address device-specific ccmmunications to a mobile device of the one or more devices, without requiring a custom built, sophisticated Wi-Fi network of the type implemented in existing systems. Therefore, the system can be implemented without the substantial infrastructure costs associated with those existing systems.

The system of the present invention is particularly suitable for implementation in large stadiums or performance venues but is also applicable to other environments. In this context, the provision of a unique identifier to each mobile device and the ability to push a UI to each mobile device means that the system is particularly appropriate for execution of multiplayer games, in which the user of each mobile device of the one or core mobile device can participate.

According to a first aspect of the invention there is provided a system an method for managing user interfaces, UI, on one or more mobile devices. The system comprises a server in communication with the one or more mobile devices.

The server is configured to implement an instruction to initiate a UI on the one or core mobile devices. The server implements this instruction by transmitting a signal to the one or more mobile devices to initiate the UI.

The plurality of mobile devices comprises two or more portable computing devices that can be connected to a communications network (for example using a Wi-Fi connection, or a 30 or 40 connection) . As an example, the one or more mobile devices may include one or more mobile telephones, "smartphones" or tablet computers, or any mixture of these devices or other user equipment (UE) . The one or more devices may comprise any number of devices. For example, the system may comprise one mobile device, or in another example comprises two mobile devices. The system is particularly advantageous for application to a plurality of mobile devices comprising a large number of simultaneously connected mobile devices. For example, the plurality may comprise one hundred or more mobile devices, or may comprise thousands of mobile devices or more.

The user interface (UI) at each mobile device is configured to capture the interaotions of a user with a software program. In other words, the UI receives inputs from the user that result in control of a software program.

More specifically, the UI receives commands from the user and gathers data to represent the user's interactions with the user interface.

The initiation of the UI at the one or more mobile devices results in a change of the user interface presented to the user at the mobile device. The change in the user interface is instigated by the server, rather than by a selection of a new user interface by the user (or each individual user) of the mobile device. In other words, the server "pushes" a new UI (or change of UI) to each mobile device without requiring the user of that device to do so.

Advantageously, the system can change or initiate a UI at one or more mobile devices (or a group or subset of mobile devices selected from the one or more mobile devices) quickly and substantially simultaneously. Here, simultaneously means the change of UI occurs on each of the one or more mobile devices (or group of mobile devices) at the same time or approximately the same time or as a single step. In other words, changes to the UI occur at all the one or more mobile devices (or group of mobile devices) within the span of, and at the same rate as, the changes being transmitted from the server. This makes the technique particularly suitable for interactive software executed at a large number of devioes.

Beneficially, "pushing" a new UT by the server to the one or more mobile devices in this way allows user interactions to be gathered from a large number of devices simultaneously. Concurrently generated user interaction data can be collected by the system to generate an output in real-time that is reflective of all the received interaction data (so called "live-sharing") . Therefore, the information displayed at the mobile device is more accurate and more up-to-date.

Advantageously, the system does not require a web app or browser, and does not require an internet connection, JavaScript support or cookie support at the mobile device.

The system can run on any type of network (and preferably several different networks simultaneously) , and does not rely on any custom networking requirements.

The server may be configured to receive the instruction to initiate the UT from an administrator device. The administrator device may be a mobile device (for example, a mobile phone, smartphone or table computer) . The server is configured to receive instructions from administrator device to modify or edit a UT at the server before the UI is initiated at the mobile devices or pushed to the mobile devices. After receipt of instructions from an administrator device, the server may send a new instruction to the one or more mobile devices to implement a new UI, or to modify a UI that is already in use. In some examples, the server can distribute information (including messages, images, audio and video) to each of the mobile devices upon receipt of an instruction from the administrator device.

The server may further be configured to transmit communications to the administrator device.

Advantageously, the system may comprise an administrator device that allows a moderator using the administrator device to retain overall control of the execution of the software program at each of the mobile devices. Furthermore, the system can be used as a tool for dissemination of information at a venue of event with a large number of attendees.

The signal transmitted by the server to the one or more mobile devices may be selected from the group consisting of: logic to implement a new UI; logic to implement a modified UI; and an instruction to execute a UI stored at the mobile device. In other words, the signal may comprise logic or code that when executed on the mobile device will result in a new UI being displayed to the user.

Alternatively, the signal may comprise logic or code that makes changes or modifications to the UI that is already in use at the mobile device (for example by displaying a new option or button, or changing the text or score displayed) . In a still further embodiment, the signal may comprise an instruction to the mobile device to load and execute a pre-installed UI, which is stored at the mobile device. In this case, a selection of Uls is stored on the mobile device at the time of downloading a mobile application to the device. Advantageously, the changes and modifications to the UI take place in real-time. The server has overall, global control over the UI displayed at the mobile device, and so remotely controls the experience of the user of the mobile device.

Preferably, the server is configured to receive instructions from the administrator device to modify the software program. Instructicns received from the administrator device may allcw any type of modification to the software program, including editing and modifying the execution of the program (starting and terminating the program) or editing the UI initiated at the mobile devices (changing the appearance of the UI, for example) . This allows the system to be controlled by a moderator at the administrator device, to allow a rapid response to changing needs of the users and requirements of the system.

Specifically, this feature allows a moderator using the administrator device real-time control of the UI executed at the mobile device.

The signal may initiate a UT simultaneously on each of the one or more mobile devices. Preferably, the user interface can be changed, implemented or modified at all of the mobile devices at the same time or substantially the same time. Here, simultaneously means the UI is initiated concurrently on all devices.

The signal may he transmitted by the server to the one or more mobile devices initiating a UI on a group of mobile devices selected from the one or more the mobile devices.

In other words, the UI may be initiated on all of the one or more mobile devices. The UI may be initiated on all devices simultaneously.

Alternatively, the UI may be initiated only on a portion of the one or more mobile devices (i.e. less than the total number) . The server can transmit a signal addressed to a selected group of the mobile devices within -10 -the one or more mobile devioes by using a unique identifier.

Using the unigue identifier, the UI can be initiated only on those mobile devices. The selected group of mobile devices may be selected at the server according to an instruction received from an administratcr device. Consequently, the system can provide a particular user experience to only a select group of users. For example, a game controller UI can be sent to only portion cf the one or more mobile devices (i.e. two or more), such that a selected group of users play a game. Beneficially, the server can organise groups of mobile devices froc. the one or more mobile devices into a queuing system, such that a UI is pushed to that group of users once a game that is currently underway is concluded.

Optionally, the software program is selected from a group consisting of: a game, a quiz, a poll or other interactive and/or entertainrrent program or event. Many alternative types of software could be implemented including a survey, a drawing canvas, a text editor, an image editor, or a video editor. Preferably, the software program is an interactive software program, although the software program may relate to any type of digital content. For example, the software program may include the delivery of audio, of images or of video, as well as other data.

The software program may be executed on the server.

This means the software is executed at the server, for example by control of a games manager, a games processor and a voucher database. However, some portion of the software may be executed at the mobile device. Preferably, the software at least includes a mobile application installed at each of the one or more mobile devices, with the server being in communication with the mobile application. The -11 -mobile application may be downloaded by the user of the mobile device from an online store. The mobile application will be appropriate for the software platform of the mobile device (for example, on the Android, Apple or Blackberry operating system) Optionally, the UI may be a graphical user interface.

Alternatively, the UI may be selected from a group consisting of: a touch screen interface; a command line interface; a gesture based interface; a motion-tracking interface; a multi-screen interface; a voice-based interface; a text-based interface; an audio-based interface.

The interface may be any type of interface for generating data relating to and reflective of the user's interaction with the software. Beneficially, the Ui can incorporate a wide range of interfaces to enhance the user experience, and may use more than one type of interface. In particular, this increases the variety of games or interactive software programs that can be executed on the system.

The server may initiate a UI to capture interactions of a user with the software program using sensors at the mobile device. The sensors may be selected from a group consisting of: a camera; a key pad; a tcuch screen; a gyroscope; a microphone; a global positioning system; a thermometer; a compass; an accelerometer; a barometer. Any type of sensor suitable for user interaction with a software program may be used within the UI. In particular, sensors at the mobile device for monitoring the user's reactions whilst playing a game are suitable to be implemented in the Uls of this system.

The software program may be configured to provide an output or result. In one embodiment, the output is audio and/or image data, for example an animation having -12 -accompanying sound effects. In another embodiment, the output is a game image providing an image of the gaming environment and showing the relative position (within the virtual gaming environment) cf each user engaged with the system at that time. In a specific example, the software is a platform game, and the output is an image of the gaming platform, showing each player's position or status within the game. The output may he continuously generated by the server, such that a stream of output data is generated in real-time according to a stream of input data received by the server from the one or mcre mobile devices.

The server may be configured to display the output of the software program on at least one central audio and/or visual display. For example, the output can be displayed on a "big-screen" (including a plurality of screens mirroring the output of the big screen) at a stadium or large venue.

Alternatively, the output could be audio data played over a public address system, or text displayed on a digital banner or advertising hoarding. This allows the results or output of the software program to be communicated to a large group of people. In particular, it allows the output to be displayed to each of the users of the one or more mobile devices simultaneously. Advantageously, use of such means of display at a stadium-based event enhance the experience of attendees to the event, and allow the users to feel increased participation with the event.

The server may be configured to transmit a signal to each of the one or more mobile devices to display an output of the software program at the one or more mobile devices.

The server may transmit an output to the plurality of mobile devices (or a group of the one or more mobile devices) in the form of visual or audio data. This can be displayed at -13 -the mobile device. For example, an output may include a message to be displayed at the mobile device, or may be a noise or ring tone. In some embodiments, the output displayed may be a message transmitted to all of the one or more mobile messages, for example an informational message.

Other types of output to be displayed at the mobile devices will also be apparent to the skilled person.

Advantageously, this provides a useful means for fast and simple dissemination of data or information from the server to each user at each of the one or more mobile devices.

The server may be configured to transmit a different output to different mobile devices. In other words, the server can be configured to transmit a particular output to a specific mobile device or a selected group of mobile devices from the one or more mobile devices, wherein the output contains information or data relevant to that mobile device or that group of devices. In one example, the server is configured to transmit a first output of the software program to a first selected group of mobile devices from the one or more mobile devices, and a second output to a first selected group of mobile devices from the one or more mobile devices. In one example, this allows the first group of devices to be informed the result of a game in which they were participating, whilst informing the second group of mobile devices that a new gaire is about to begin.

In another alternative, the output may include a device-specific message to a particular mobile device of the one or more mobile devices (for example, showing a position on a leaderboard compared to other mobile devices taking part in a game) . This type of device-specific output can be transmitted by the server to a particular mobile device (or -14 -a selected group of mobile devices) by using a unique identifier, as described belcw.

The server may be configured to transmit a first output of the scftware program to at least one central audio and/or visual display screen for display, and a second output to one or more of the one or more mobile devices for display.

The second output may contain device-specific information or data, and be addressed to a particular device using a unique identifier. In an example where the software is a multi-player game, the server may be configured to transmit a first output comprising a leaderboard to a central display or "big-screen", with a second output congratulating the winner of the game to a specific mobile device of the one or more mobile devices.

According to a second aspect of the invention there is described a system and method for maintaining persistent identities of one or more mobile devices. The method comprises the steps of: receiving at a server an initial communication from a mobile device of the one or more mobile devices; assigning a unique identifier to the mobile device; and storing the unique identifier at the mobile device and at the server. Further communications received by the server from the mobile device are then associated with the unique identifier.

Advantageously, the method enables maintaining a persistent identity for one cr more mobile devices. A persistent identity means that the mobile device can be uniquely identified by the system (specifically by the server) even when the network connection used for transmission of communications between the server and mobile device has changed. The mobile device can also be recognised by the server even where there is a significant -15 -time interval between receipt of a first and second communication by the server. The recognition of the mobile devices may be passive, and nay therefore take place without any input from the user. In a particular example, the system is configured to be able to identify a mobile device that has been in communication with the server at a first event using a first network connection, at a second event using a second network connection and occurring a few months later. Beneficially, the server stores information relating to communications received from a mobile device having a given unique identifier.

The initial communication from the mobile device may be the first communication or message received by the server from a particular mobile device. In one embodiment, the first communication is the first communication or message that is received by the server from a mobile application downloaded and installed at a mobile device. Upon activation of the application, the mobile application can send a message which is received by the server to notify the server of a new mobile device to be added to the one or more mobile devices. In response to this message, the server will assign a unique identifier to the mobile device, which is transmitted to the mobile device by the server in a communication.

The unique identifier is a number or code. The unique identifier may be a code composed of letters, numbers or other characters. The unique identifier will have a specific format such that the unique identifier can be recognised by the server and by the mobile device. The server may assign the unique identifier sequentially according to the order in which the server receives a first communication from new mobile devices joining the one or more mobile devices.

-16 -However, other methods of assignment of the unique identifier may be appropriate. Once assigned, the unique identifier may be stored in a file or database at the server.

Further communications received by the server from the mobile device are associated with the unique identifier.

The unique identifier may be enclosed with or embedded in the communication. The unique identifier may be embedded in the communication in such a position or format that the mobile device and server can locate the unique identifier in any communications.

Advantageously, the method for managing persistent identities of one or more mobile devices allows one mobile device or a selected group of mobile devices from the one or more devices to be directly addressed by the server.

Beneficially, the identification of the mobile device is automatic, without requiring any details (such as a user name, MAC address or SIM ID) to be entered by the user or to be obtained from the operating system of the mobile device.

Moreover, the method is independent of the network connection, and does not require the same IP address to be maintained for subsequent coc.munications between the server and mobile device. Beneficially, the method of assigning unique identifiers is operating system (or platform) independent, and can be used in conjunction with any type of mobile device.

Preferably, the further communications received by the server from the mobile device may be associated with the unique identifier such that the mobile device is uniquely identified by the server, independent of the network connection over which the communication is received. In some embodiments the initial communication may be received -17 -via a first network connection and at least one further communication is received via a second, different network connection. Subsequent communications can be received over a variety of network connections, each with different IP addresses. Despite this, the system can still identify the mobile device exclusively, using the unique identifier embedded within each communication. Beneficially, the use of unique identifiers can allow a specific mobile device to be identified, even if the ccmmunications are separated by a significant time (for example, more than a few months) Optionally, the initial communications and further communications are received by the server from a mobile application stored at the mobile device, the assigned unique identifier being stored with the mobile application at the mobile device. Preferably, the assigned unique identifier is stored in the persistent memory of the mobile device.

Beneficially, the communications from the mobile device are transmitted from a mobile application stored and installed at the mobile device. Consequently, using this method communications do not need tc be sent using an internet browser.

Preferably, a further ccmmunication from the mobile device has a header including the unique identifier.

The server may assign the unique identifier to the mobile device. In a preferred embodiment, the server may assign the unique identifiers sequentially as a first communication is received from each new mobile device requesting to join the one or more mobile devices.

Beneficially, this allows the server to manage and organise the assigned unique identifiers. In some embodiments, a specific unique identifier can be assigned by the server to a particular mobile device upon the server receiving an -18 -instruction from an administrator device. In an alternative embodiment, the mobile application at the mobile device may assign the unique identifier.

The method may further comprise transmitting communications addressed to the mobile device of the one or more mobile devices together with the unique identifier. In other words, the server is configured to both send and receive communications with a mobile device that is associated with a unique identifier. In particular, the server may be configured to send distinct communications to a mobile device of the one or more mobile devices that are specifically intended for that device. The server addresses a message to a specific mobile device by embedding the unique identifier into each o.essage transmitted from the server. Beneficially, this allows a message and information to be sent to a mobile device of the one or more mobile devices uniquely, the message contains information intended only for that device.

The further communications may comprise an instruction to initiate a user interface, UI, on the mobile device, the UI being configured to capture interactions of a user with a software program. Advantageously, use of a unique identifier allows a particular UI to be initiated at one or more selected mobile devices of the one or more mobile devices.

The software program may be selected from the group consisting of: a game, a quiz, a poll. However, many alternative software could be implemented including a survey, a drawing canvas, a text editor, an image editor, or a video editor. Preferably, the software program is an interactive and/or entertainment software program, although the software program may relate to any type of digital -19 -content. For example, the software program may include the delivery of audio, of images or of Video, as well as other data.

The server may be configured to provide an output of the software program. The output may be audio and/or image data. The server may transmit an output to the one or more mobile devices (or a group of the one or more mobile devices) in the form of visual or audio data. This can be displayed at the mobile device. For example, an output may include a message to be displayed at the mobile device, or may be a noise or ring tone.

The server may be arranged to display an output of the software program on at least one central audio and/or visual display. For example, the output can be displayed on a "big-screen" at a stadium or large venue. Alternatively, the output could be audio data played over a public address system, or text displayed on a digital banner or advertising hoarding. This allows the results or output of the software program to be communicated tc a large group of people. In a stadium event, the output of a multi-player game software program could be displayed on a central display screen, increasing engagement of the attendees to the event in the game.

Preferably, the method is repeated for each of the one or more mobile devices. In other words, a unigue identifier is assigned to each of the one or more mobile devices separately. Advantageously, this allows the system to provide a means of addressing a large number of mobile devices simultaneously, whilst also providing functionality to address a specific communication to a particular mobile device. Moreover, use of unique identifiers allows the system to enable a single corr.munication to be transmitted -20 - simultaneously to more than one mobile devioes (one-to-many) , or to enable device-specific communications to be transmitted simultaneously to a selected group of mobile devioes within the one or more mobile devioes (in other words, a number of simultaneous one-to-one communications) According to a third aspect of the invention there is a system and method for executing a software program at one or more mobile devices. The system comprises a management server for communicating with the one or more mobile devioes. The management server is configured to reoeive user interaction data from a user interface at each mobile device of the one or more mobile devices. The management server is further configured to provide an output of the software program based on the user interaction data. In addition, the management server may be further configured to manage the user interactions according to instructions received from an administrator device. The server may further be configured to transmit communications to the administrator device.

Advantageously, the system allows a moderator or compere (or other user) inputting instructions or controls to the administrator device to control at least some of the processes and tasks managed by the server. The administrator devioe may aot to issue instructions, which the server is configured to receive, to manage or manipulate the processing of the software program. In particular, the server may receive instruotions from the administrator device to send a new UI to one or more mobile devices that are identified according to their unique identifier.

The management server may be configured to receive a sequence of user interaction data from each user interface at each mobile device of the one or more mobile devices -21 -simultaneously. In other words a stream or succession of interaction data is received by the server from each mobile device at the same time. The sequence of interaction data received by the server from each mobile device can be generated simultaneously at different mobile devices having different users.

In a particular example, communications between the server and the one or more mobile devices can contain the embedded unique identifier. This allows the server to receive from the mobile device a stream of user interaction data, wherein all of the data is recognised by the server as having been received from a particular device. Moreover, streams of interaction data can be received from two or more of the mobile devices simultaneously, each stream identified by inclusion of the unigue identifier (which can also allow particular users to be excluded by the compere) . As a result, data that is generated at the same time by two different users at two different mobile devices can be received by the server and compared. The server can use the unigue stream of data received form each mobile device to generate an output that reflects the comparative user interaction of the users at two or more of the mobile devices. This may be particularly advantageous where the software program is a multi-player game, as it allows users of two mobile devices to compete in the game.

The output may be audio and/or image data. The server may transmit an output to the one or more mobile devices (or a group of the one or more mobile devices) in the form of visual or audio data. This can be displayed at the mobile device. For example, an output may include a message to be displayed at the mobile device, or may be a noise or ring tone.

-22 -The system may further comprise at least one central audio and/or visual display, wherein the server is configured to display the output of the software program on at least one central audio and/or visual display. For example, the output can be displayed on a "big-screen" at a stadium or large venue. Alternatively, the output could be audio data played over a public address system, or text displayed on a digital banner or advertising hoarding. This allows the results or output of the software program to be communicated to a large group of people. In a stadium event, such means of display enhances the experience of attendees to the event, and allow the users to feel increased participation with the event.

The management server may be configured to manage the software program by performing functions selected from the group consisting of: excluding a mobile device from interacting with the software program; admitting a mobile device to interact with the software program; inviting one or more mobile devices to interact with the software program; selecting a group of mobile devices from the one or more mobile devices; gueuing communications to be sent to a mobile device or at least one mobile device of the one or more of mobile devices; pushing a user interface to a mobile device or at least one mobile device of the one or more mobile devices; implementing instructions to initiate changes to the user interface at a mobile device or at a group of mobile devices selected from the one or more mobile devices; modifying the inforiration displayed at least one audio and/or visual output; and starting or ending execution of the software program. Beneficially, each of these functions is executed by the server upon receipt of an instruction from the administrator device. Therefore, a -23 -user at the administrator device can exercise more control of the execution of the software program at the server.

The management server may be configured to manage a voucher system for transmitting a voucher to the one or more mobile devices. Furthermore, the management server may be configured to manage a voucher system for transmitting a voucher to at least one mobile device selected from the one or more mobile devices. The voucher may then be redeemable at a retailer in exchange for goods. The voucher may comprise a code or other unique identifier such as a barcode. The voucher may be transmitted to a specific mobile device of the plurality of mobile devices by the server by embedding the mobile device's unigue identifier in the voucher. The management server may further comprise a voucher database for recording information relating to the vouchers that have been issued, including the unique identifier of the mobile device to which the voucher was issued. Beneficially, issuing vouchers can reward and engage the users of each mobile device in communication with the system, and encourages participation in the interaction with the software program (e.g. games) The management server may be configured to transmit a voucher to one or more mobile devices according to instructions received from an administrator device.

Advantageously, the server may issue a voucher to a specific mobile device (or group of mobile devices) of the one or more mobile devices after receipt of an instruction from the administrator device to do so. The voucher can be addressed to the selected mobile devices by embedding of the assigned unigue identifier of those devices.

The management server may be configured to select the one or more mobile devices to which a voucher is transmitted -24 -according to instructions received from an administrator device. In other words, the server is configured to receive an instruction from the administrator device which nominates a specific mobile device (having an assigned unique identifier) to receive a voucher.

Alternatively, the management server may be configured to select the one or more mobile devices to which a voucher is transmitted based on the received interaction data or the output of the software program. In one example, the server may be configured to automatically issue a voucher in the event that the received interaction data from a specific mobile device conforms to pre-determined criteria. In another example, the server nay automatically issue a voucher to a specific mobile device (or a group of mobile devices) of the one or more mobile devices on the basis of the output of the software program (for example, where the software program is a game, the server may be configured to automatically issue a voucher to the winner or highest scorer(s) of the game).

It will be understood that method features corresponding with the structural, apparatus features described herein may optionally be provided in conjunction with the above-described features.

The combination of any of the apparatus or method features described herein, or the combination of both apparatus and method features, is also provided even if not explicitly disclosed.

-25 -List of Figures The above and other aspects of the invention will now be described, by way of example only, with reference to the accompanying drawings, in which: Figure 1 is a schematic diagram of a system for executing a software program at one or mcre mobile devices; Figure 2 is a schematic diagram of the system for managing user interfaces on one or more mobile devices; Figure 3 is a schematic diagram of a system for maintaining persistent identities of one or more mobile devices; and :is Figure 4 is a schematic diagram of a further example of a system for executing a software program at one or more mobile devices.

Detailed description of the preferred embodiments

Referring first to Figure 1, there is shown a system 100 for executing a software program at one or more mobile devices 102. The system 100 comprises a management server 101, configured to communicate with a plurality of mobile devices 102. Specifically, the management server 101 is configured to receive user interaction data from a user interface at each of the mobile devices 102a, 102b, 102c in the plurality of mobile devices 102. Figure 1 further illustrates a central display screen 103. The management server 101 is configured to display on the central display screen 103 the -26 -output of the software program, based on the user interaction data. As iiiustrated in Figure 1, the system further comprises an administratcr device 104. The management server 101 is configured to manage the user interactions based on instructions received from the administrator device 104. The server 104 is further configured to transmit communications to the administrator device 104.

An application (or "app") configured to be in communication with the management server 101 is downloaded to each of the piurality of irobile devices 102 from an online store 105 (such as Google Play, Blackberry World" or the Apple App StoreTM) In use, the system 100 of Figure 1 executes a software program at a plurality of mobile devices 102. For example, the software program is a gaffe. The management server 101 is configured to receive interaction data from each of the plurality of mobile devices 102, wherein the interaction data represents the user's input to a user interface at the mobile device 102a, 102b, 102c. The user interaction data received from each mobile device represents each interaction of the user with the user interface, including key presses at a key pad, or selection of a graphical portion of a user interface through a touch pad.

The management server 101 receives, processes and manipulates the interaction data received from each mobile device 102a, 102b, 102c of the plurality of mobile devices 102 to generate an output. The output may be a graphical representation of game and the result of the user interactions with that game software. The graphical representation is then displayed on a central display screen 103. Where the software program is a game, the graphical -27 -representation may be a ieader board or an image representing an in-game environment or game image.

In use, the management server 101 receives instructions from an administrator devioe 104. The instructions from the administrator device 104 provide overall control to the execution of the software on the management server 101. For example, the server 101 may receive instructions from the administrator device 104 to begin and end the game. The management server 101 may also receive instructions from the administrator device 104 to display a particular output of the software. In other words, the server 101 may receive instructions from an administrator device 104 to display a leaderboard or message at the central display screen 103.

Other types of instruction are possible, and are described in further detail below.

Referring to Figure 2, there is shown a schematic illustration of a system 200 for managing user interfaces, UI, on one or more mobile devices 202. Each user interface is configured to capture the interactions of a user with a software program. For example, the user interface will capture the key presses or gestures of a user via a touch screen of a mobile device.

The user interface comprises the instrument or method by which the user interacts with a mobile device. The user interface comprises logic which is executed at the mobile device, and which results in controls for operation and manipulation of the software program. The user interface includes the functionality fcr input and output to the system 200 (for example using control sequences such as keystrokes or selection of a touch screen keypad) , as well as displaying information (graphics, text and sound) to the -28 -user at the mobile device. Any suitable method of input to the user interface at the mobile device may be implemented (examples of such input methods are discussed further below) The system 200 of Figure 2 comprises a management server 201 in communication with a plurality of mobile devices 202. The server 201 is configured to implement an instruction 206 to initiate a UI at each of the mobile devices 202a, 202b, 202c within the plurality of mobile devices 202. The instruction 206 is implemented by transmitting a signal to the plurality of mobile devices 202 to initiate a UI.

The system 200 of Figure 2 further comprises a central display screen 203. The server 201 is configured to generate an output of the software program based on the user interactions. The server 201 is further configured to display this output at the central display screen 203.

An administrator device 204 is illustrated in Figure 2.

The server 201 is configured to receive instructions from the administrator device 204. The server is further configured to transmit communications to the administrator device. In this embodiment, the server 201 receives instructions from the administrator device 204 to initiate the UI on the plurality of mobile devices 202.

Additionally, the server 201 may receive further instructions from the administrator device 204 as discussed below.

In use, the system 200 cf Figure 2 acts to manage the user interface, UI, on the plurality of mobile devices 202.

The user interface is configured to capture interactions of a user with a software program.

-29 -In this example, the software program is a game. The UI at each mobile device 202a, 202b, 202c represents a game controller, and allows users to input to and control a portion of the game from their own mobile device. For example, the UI is a touch screen interface and takes the form of a joystick or keypad. Other alternative embodiments for the UI are described below. Each user of each of the plurality of mobile devices 202 can take part in the game.

In this specific embodiment, the system 200 of Figure 2 is installed within a performance stadium, and each audience member can take part in the game through a user interface initiated on their mobile device 202a, 202b, 202c by the server.

The server 201 communicates with each mobile device 202a, 202b, 202c within the plurality of mobile devices 202.

Specifically, the server 201 transmits and receives communications from the plurality of mobile devices 202. In this example, the server 201 transmits a signal to the plurality of mobile devices 202 to implement an instruction to initiate or alter a UI on the plurality of mobile devices 202. The plurality of mobile devices 202 implements the instruction so as to execute a new UI. In other words, the signal comprises logic which is implemented at the mobile device to result in a new UI.

In this example, implementation of an instruction to initiate a UI results in a change from a first type of game controller to a second type of game controller. For example, when the UI in use is a keypad, upon receipt of the signal comprising an instruction to initiate a UI at the mobile device, the UI changes to a drawing canvas.

The server 201 is configured to receive an instruction to initiate the UI from an administrator device 204. The -30 -administrator device 204 can instruct the server to initiate a UI in all of the plurality of mobile devices 202 or in a group of mobile devices selected from the plurality of mobile devices 202 (making use of the device unique identifiers, as discussed further below) . Therefore, the server 201 is configured to receive instructions from the administrator device 204 to implement a change at the mobile devices. The user of the administrator device 204 controls and moderates the system 200.

The server 201 is further configured to receive instructions from the administrator device 204 to modify the software program. In this example, the server 201 receives instructions from the administrator device 204 to commence and to terminate execution of the software program at the server 201, and also at the plurality of mobile devices 202.

The system 200 initiates a UI simultaneously on each of the plurality of mobile devices 202. In other words, the UI is pushed to each of the plurality of mobile devices 202 such that the new UI, or the change of UI, is executed at all of the plurality of mobile devices 202 at the same time or concurrently.

In some cases, the server 201 is configured to implement a new UI simultaneously on only a selected portion of the plurality of mobile devices 202. The group may be selected by the server 201 automatically or according to instructions received by the server 201 from the administrator device 204. The selected mobile devices may be addressed using a unique identifier.

In the example of Figure 2 the server 201 implements an instruction to initiate a UI for a game on mobile device 202b and 202c simultaneously, by transmitting a signal to these devices specifically. The signal is transmitted to -31 -mobile devices 202b and 202c specifically using a unique identifier (which is described in more detail below) Mobile device 202a does not take part in the game, and so does not receive an instruction to initiate the new UI from the server.

In this example, the software program is executed on the server 201, such that the interaction data is processed primarily at the server 201. This means that the output to the software program is primarily generated at the server 201. However, the interaction data may undergo some processing at the mobile application before the interaction data is received by the server 201.

The server 201 is in oorrmunication with a mobile application installed on each of the plurality of mobile devices 202. This mobile application (or "app") can be downloaded by the user of the mobile device from an online store 205, and may be specific to the operating system of the mobile device (for example, an application obtained from Google Play for an Android device, or from the Apple App store for an Apple device) The example illustrated in Figure 2 includes a central audio and visual display 203. This display 203 is a "big screen" of the type often found in a stadium or performance venue. The central audio and visual display 203 is visible to users of at least a portion of the plurality of mobile devices 202.

The server 201 is configured to provide an output of the software program. For example, this output will be audio and visual data being a game image representing the aggregate response from each of the users that are interacting with the software program. The game image could be an image representing the gaming environment within the -32 -software program, providing a view of the game on which each player (or user of a mobile device within the plurality of mobile devices 202) is represented. Many alternatives for the form of the output to the software program would be apparent to the skilled perscn.

The server 201 is configured to display the output of the software program on the central audio and visual display 203. Tn the example of Figure 2, this results in a game image being displayed on the central display 203 (or "big screen") such that the game image can be viewed by all the players of the game. The visual display on the central screen 203 is accompanied by an audio announcement on a public sound system.

The server 201 is further configured to transmit an output of the software program to at least some of the mobile devices 202b, 202c. The output is then displayed on the screen of the mobile device. This output is a different output to the output displayed on the central audio and visual display 203. For exairple, the output transmitted to each mobile device comprises image data that provides information regarding the interactions of an individual user with a particular mobile device. In one example, the output is a player score for the user of a specific mobile device 202b of the plurality of mobile devices 202. The output transmitted to each mobile device is different and individual to that mobile device. The transmission of an individual output to a specific mobile device uses unique identifiers, as described below.

In the example of Figure 2, the signal comprises logic to implement a new UI. However, in alternative embodiments the signal may result in a change of UI, or an adaptation or modification to the UI that is in use. In another -33 -embodiment again, the signal could be a command to execute a UI already stored at the mobile device (for example, a UI which had been previously downloaded as part of the mobile application software and stored within the persistent memory of the device) . In all embodiments however, the UI is pushed to the mobile devices by the server 201. Once pushed, implementation of the UI takes place at each of the mobile devices without any instruction from the user. Thus, the server 201 controls the UI that is executed and displayed at the mobile device.

Figure 3 illustrates a system 300 for maintaining persistent identities of one or more mobile devices 302.

The system 300 includes a server 301 in communication with a plurality of mobile devices 302. The server 301 is configured to transmit and receive communications from each of the plurality of mobile devices 302 simultaneously.

In use, the server 301 receives an initial communication (illustrated as a dashed line in Figure 3) from each of the mobile devices 302a, 302b, 302c of the plurality of mobile devices 302. The initial communication is the first communication received from each of the plurality of mobile devices 302 to the server 301, and is sent by the mobile application installed at the mobile device the first time the mobile application is activated.

Upon reception of the initial communication from a mobile device 302a of the plurality of mobile devices 302, the server 301 assigns a unique identifier 307a. The unique identifier 307a may be a code composed of letters, numbers or other text characters. The unique identifier 307a will have a specific format such that the identifier can be recognised by the server 301.

-34 -The unique identifiers nay be assigned sequentially (or non-sequentially) by the server 301 to the mobile devices 302a, 302b, 302c in the order in which new mobile devices join the system 300. For example, the unique identifiers may be assigned sequentially in the order in which the initial communication is received by the server 301. The assigned unique identifiers are recorded at the server 301 and stored in memory. An assigned unique identifier can be stored at the server 301 together with data associated with each communication transmitted and received by the server 301 from and to the mobile device having the given unique identifier. This allows a profile of historical activity to be compiled and stored in relation to a particular mobile device 302a having a particular unique identifier.

Each communication received by the server 301 from a mobile device, subsequent to the initial communication, is associated with the unique identifier assigned to that device. Communications may be associated with the unique identifier by inclusion or eirbedding of the unique identifier in each communication as metadata. The unique identifier may be embedded in a pre-determined position within a communication (for example, within the header of a communication) such that it can be recognised as a unique identifier by the server 301. Upon receipt of a communication from the mobile device, the server 301 looks for and reccgnises a unique identifier that has been previously assigned. The received unique identifier can then be compared to the database of assigned unique identifiers stored at the server 301.

Advantageously, the system 300 of Figure 3 allows the server 301 to uniquely identify a previously encountered mobile device. Moreover, the mobile device can be uniquely -35 -identified irrespective of the network connection through which a communication is received, and despite any extended disruption in the network connection. Consequently, the system 300 provides a persistent connection that is independent of the connection over which the communication is received.

Beneficially, the system 300 for unique identification of a mobile device 302a does not rely upon complex, high bandwidth IP infrastructures. The system can operate though any type of network, and does not necessarily require an internet enabled network. In other words, the system does not need to address each mobile device through an assigned IP address, and the identity of the device is unaffected if the I? address changes.

Moreover, in the system 300 of Figure 3, unique identification of devices can be performed without requiring knowledge of a hardware-specific address (such as a MAC address) assigned to a device at manufacture. This makes the present system improve the experience of the user, as they are not required to manually enter or verify a pre-existing or pre-allocated identifier -instead the identifier is assigned automatically by the system 300.

Furthermore, each mobile device 302a, 302b, 302c within the system 300 can be uniquely identified without requiring the user to sign-in to the system. or software application using an individual user name and password. Desirably, the presently described system does not require any input from the user for a persistent identity of the device to be maintained. Instead, the system provides a method for passive and automatic identification of the mobile device by the system. Advantageously, this decreases the effort required for a user to be able to interact with the system.

-36 -In the example of Figure 3, an initial communication (dotted line) is received via a 30 network connection from a mobile device 302a, and the server assigns a unique identifier 307a. A second communication 308a (having the unique identifier embedded therein) is received by the server 301 via a first Wi-Fi network connection. A few months later, a third communication 308a (having the unique identifier embedded therein) is received by the server 301 via a second Wi-Fi network connection. The mobile device takes a different IP address at the time of transmitting each of the initial, second and third communications.

However, the server 301 recognises that the communications are received from the same mobile device 302a by recognition and comparison of the unique identifier 307a.

The assignment of the unique identifier 307b, 302c is repeated with respect to each mobile device 302b, 302c of the plurality of mobile devices 302 upon receipt of the initial communication from those devices.

Communications received by the server 301 from the mobile device 302a are transoitted by a mobile application at the mobile device 302a. The unique identifier 307a is stored with the mobile application, and the mobile application is configured to embed the unique identifier 307a into any communication to be transmitted to the server 301. The unique identifier 307a will be embedded in such a way as to be recognised as a unique identifier by the server 301 upon receipt of the communication.

The server 301 transmits further communications to the particular mobile device 302a of the plurality of mobile devices 302. All further communications from the server 301 to the mobile device 302a have the unique identifier 307a embedded in the communication. Upon receipt of the -37 -communication, the mobile application at the mobile device 307a compares the unique identifier 307a to the identifier stored at the application. If the unique identifier 307a of the communication matches the unique identifier for the particular mobile device 302a, any instruction in the communication will be executed by that specific mobile device 302a.

Using the method of unique identification described above, the system 300 allows a single, selected mobile device 302a within the plurality of mobile devices 302 to be addressed by the server 301. The server 301 can cause a specific instruction to be executed on that mobile device 302a alone. Furthermore, the system 300 using unique identifiers can receive data from a particular mobile device 302a of the plurality of mobile devices 302, with the server associating that data with that mobile device 302a. In the context of the software program being a game, this allows the server 301 to process and receive interaction data from a particular mobile device 302a having a particular UI, and then process that interaction data such that the software program output is linked with a particular player (at the mobile device 302a) . Furthermore, the server 301 can address a particular player cf a game by transmitting a communication to a specific mobile device 302a. For example, this communication could be an instruction to display the player's score or their standing in a leaderboard at the UI. Alternatively, the server can issue prizes to a particular player in the form of vouchers associated with a specific unique identifier.

Some communications transmitted from the server 301 will be transmitted without a unique identifier (for example, where a message is intended to be transmitted to -38 -all the plurality of mobile devices 302) . This allows the server 301 to multicast to all devices 302 simultaneously.

This is useful when general information messages, which do not need to be addressed to a single user, are to be distributed. For example, the system 300 allows information about an event or stadium venue to be transmitted or pushed to all of the plurality of mobile devices 302 simultaneously -As described in relation to Figure 2 above, the server 301 may communicate to each mobile device 302a, 302b, 302c of the plurality of mobile devices 302 an instruction to initiate a UT on the mobile device 302a, 302b, 302c. The signal transmitted to the mobile device for this function may comprise logic to implement a new UI. Alternatively, it could comprise logic to implement modifications to the UT being executed. In a further example, the signal could comprise an instruction to execute a UI stored at the mobile device (for example, an instruction to indicate that a particular UI (say, UI number 3) of a group of pre-installed Uls should be executed) Use of a unique identifier in a system 300 can be particularly advantageous when the system 300 is used to manage Uls (for example, in the matter described in relation to Figure 2) at a plurality of mobile devices 302. A UI can be pushed to one or more specific mobile devices 302a, 302b, 302c within the plurality of mobile devices 302, using their unique identifier. In particular, a UI can be pushed to a selected mobile device 302a by the server 301 by embedding the assigned unique identifier 307a for that mobile device 302a in the instruction to initiate a new UT. Furthermore, the one or more devices upon which the UI is initiated can be selected by the server after receipt of an instruction -39 -from an administrator device 304 which identifies each device using the unique identifier.

In the context of execution of a software program being a game within a stadium venue, the system 300 allows a moderator controlling an administrator device 304 to select particular players to play a new game. For example, the moderator can select a group of players by selecting a corresponding group of mobile devices 302a, 302b from the plurality of mobile device 302. The moderator can then "push" the new game UI directly to the selected group of players by sending an instruction to initiate the new UI to the particular mobile devices 302a, 302b. The instruction includes the embedded unique identifiers 307a, 307b for the particular mobile devices. The new UI does not need to be "pushed" to all of the plurality of mobile devices 302. By this means, only the selected mobile devices of the plurality of mobile devices 302 will implement the new UI.

The instruction can be two separate communications (for example, one including a first unique identifier 307a and a second including a second unique identifier 307b) or can be a communication including all of the selected unique identifiers 307a, 307b.

Once the game has commenced, the interaction data gathered by the mobile application at each mobile device 302a, 302b can be sent back to the server 301 as a sequence of data. The interaction data includes the embedded unique identifier 307a, 307b that allows the server 301 to recognise that the user interaction data has originated from a particular device. The data from each mobile device 302a, 302b is received simultaneously, but can be uniquely identified by the server 301 and associated with a particular device. The data generated simultaneously by -40 -each individual user at each mobile device 302a, 302b can be directly compared by the server 301 in "real-time". For this purpose, the interaction data streamed to the server 301 can be time stamped before being transmitted from each mobile device 302a, 302b.

In the system illustrated in Figure 3, the output of the software program is displayed on a central display screen 303. In other words, the output generated by the server 301 by processing of the interaction data received from each mobile device 302 can be displayed on a screen 303. The output includes both visual and audio data. Where the software program is a gaffe, the output displayed is a game image that is constantly updated whilst the game is in progress, followed by any eventual result of the game which can be displayed on the "big screen" 303 of a stadium.

Ideally, the system is configured to display the output of the game, with an image of the gaming environment, centrally in the stadium such that all players (in other words, each user of each of the plurality of mobile devices 302) can view their progress. A corresponding audio commentary or other sounds effect can be played alongside the visual output at the central display screen.

Using the system 300, the server 301 can process interaction data from a large number of users. The system 300 allows, for example, a large number of participants in a game within a stadium venue, with server 301 able to identify the winner of the game and other characteristics of the game. The system 300 allows comparison of the performance of each user judged on their unigue interactions with the software at each mobile device 302a, 302b, 302c.

In the embodiment of Figure 3, a record of the unique identifiers that have been assigned (and any associated -41 -data) is recorded at the server 301. For example, it can be recorded in persistent memory at the server 301.

Alternatively, in other embodiments the record of assigned unique identifiers can be stored externally to the server 301 at a storage device, but such that the server 301 is in communication with the storage device.

Figure 4 illustrates a system 400 having a number of corresponding features to thcse described in relation to other embodiments of the system. Corresponding features include: a server 401; a number of mobile device 402a, 402b, 402c forming a plurality of mobile devices 402; a central display 403 for displaying the output of a software program executed at the server 401; an administrator device 404 from which the server 401 receives instructions and to which the server 401 is configured to transmit communications; and an online store 405 from which the user of a particular mobile device 402a, 402b, 402c can download a mobile application for use in communication with the server. Each of these corresponding features, together with their interactions and operations when in use, has been described above in detail with respect to Figures 1, 2 and 3, and the description of those features is also applicable here.

In Figure 4, the server 401 additionally comprises a games manager 409, a games processor 410 and a voucher database 411. The games manager 409 is configured to control and manage the data received and transmitted by the server 401. For example, the games manager 409 manages the assignment of unique identifiers to the mobile devices 402, manages the storage of unique identifiers, manages the storage of interaction data received and associated with a unique identifier, and/or manages instructions from the -42 -administrator device 404. The games manager 409 is configured to both transmit and receive communications with the administrator device 404 and the plurality of mobile devices 402. In addition, the game manager 409 gcverns a queuing system for mobile devices within the plurality of mobile devices 402. For exalT.ple, the queuing system stores a list of mobile devices who have requested to participate in a game nr activity being executed on the system, and creates a queue of the mobile devices (identified by their unique identifier) accordingly. The games manager 409 compiles leaderboards showing the scores of players of a game executed on the system 400. The games manager 409 further co-ordinates the output of the software program to the display 403. In addition, the games manager 409 co-ordinates communications with both the voucher database 411 and the games processor 410.

The games processor 410 executes a software program and more particularly a games software program. In most cases, a single game will be executed by the games processor 410 at one time. However, more than one game may be executed at any one time. For example, the games processor 410 may execute a first game processing interaction data received from a first group of mobile devices within the plurality of mobile devices 402, whilst also executing in parallel a second game processing interaction data received from a second group of mobile devices within the plurality of mobile devices 402. The games processor 410 receives inputs (interacticn data) frcm the mobile devices 402 via the game manager 409, and returns one or more outputs of the software to the games manager 409.

The games manager 409 transmits and receives messages from a voucher database 411. The voucher database 411 -43 -manages voucher data. The system 400 is configured to allow vouchers to be distributed tc one or more mobile devices within the plurality of mobile devices 402. For example, a voucher may be issued to a specific mobile device 402a (or user of that device) as a prize for winning a game executed on the system 400.

The vouchers comprise an interface that can be displayed at a mobile device 42a. The voucher may be an image, and may further comprise a code. The code may be entirely visible, or may only be visible after instruction by a user to reveal additional information. The voucher is intended to be used for exchange of goods and services at a retailer or at the venue. The voucher can result in a physical, printed token, but ideally will comprise only digital media. The voucher iray include one or more bar codes or other types of encoded information.

The voucher database 411 records and manages the vouchers that have been issued and assigned to a mobile device. Furthermore, the voucher database 411 records and manages vouchers that have been redeemed. The server may store a record of the goods and services for which the vouchers have been redeemed.

The voucher database 411 manages the issuance of a voucher to a specific mobile device 402a by associating a voucher with a particular unique identifier 407a assigned to that device. In this way, the voucher can be issued to a specific, selected mobile device (and user) . The voucher database 411 enables creation, issuance and redemption of the vouchers. However, in some embodiments the games manager 409 may manage the transmittal of vouchers, as well sending instructions to the voucher database 411 that a voucher should be issued to a specific mobile device 402a.

-44 -In some embodiments, the instruotion to issue a vouoher from the voucher database 411 will originate from an administrator device 404.

Whilst a number of preferred embodiments of the present invention and its operating codes have been described above, the skilled person will appreciate that various modifications can be made. Many combinations, modifications or alterations to the features of the above embodiments will be readily apparent to the skilled person and are intended to form part of the invention. Furthermore, method features corresponding to the described apparatus features are intended to form part of the invention.

The management server may perform a number of functions to control the system, to organise the users of the system and to govern the processing of received interaction data.

The management server may perform all of these functions, or may perform only a selection of the possible functions. The management server may perforn. each of these functions in relation to only one or more of the plurality of mobile devices, and will address instructions to these mobile devices by embedding the assigned unique identifier in the instructions sent by the server.

For example, the managerrent server may exclude a mobile device from the plurality of mobile devices. In other words, the management server may exclude interaction data received from one or more of a plurality of mobile devices.

The mobile device to be excluded can be identified according to the unigue identifier embedded in communications. The management server may exclude interaction data from a particular mobile device based on an instruction from the administrator device. Advantageously, this allows a user of -45 -the administrator device to manage users, and to exclude users who are disruptive or abuse the system (or who have already participated) The management server may be configured to admit a mobile device to the plurality of mobile devices, or to begin execution of the software at a mobile device. For example, the management server may allow a particular mobile device tn join a game that is beginning or proceeding. The management server may admit a mobile device to the plurality of mobile devioes upon receipt of an instruotion from the administrator device.

The management server may be configured to invite a mobile device to join the plurality of mobile devices. For example, the management server may be configured to invite a mobile device to join a game that is commencing or proceeding amongst a plurality of mobile devices. The management server may invite a mobile devioe to the plurality of mobile devices upon receipt of an instruction from the administrator device.

The management server may be configured to select a group of mobile devices from the plurality of mobile devices. The groups of mobile devices may be selected to execute a software program, with the remaining mobile devices of the plurality of mobile devices awaiting instructions to execute a software program. Alternatively, the management server may be configured to select a first group of devices from the plurality of mobile devices upon which a first software program is executed, and to select a second group of mobile devices from the plurality of mobile devices upon which a second software program is executed.

For example, the management server may be configured to allow a first group of users of a first group of mobile -46 -devices to play a first game, with a second group of user at a second group of mobile devices to play a second game. The management server may generate a corresponding first and second output, which can be displayed on a corresponding first and second central display screen. The management server may select a group of mobile devices upon receipt of one or more instructions from the administrator device.

The management server may be configured to pair two mobile devices from the plurality of mobile devices.

Specifically, the management server may be configured to select two mobile devices frcm the plurality of devices and to execute a software program on only that pair of mobile devices. This allows users of two mobile devices to, for example, play a game against each other. The management server may select a pair of mobile devices upon receipt of one or more instructions from the administrator device.

The management server may be configured to queue communications to be sent to one or more of the plurality of mobile devices. Alternatively, the management server may queue one or more mobile devices of the plurality of mobile devices to join a pre-selected group of mobile devices. For example, the management server may queue devices to join an upcoming game that will commence upon conclusion of a presently proceeding game. The management server may queue devices upon receipt of one or more instructions from the administrator device.

As described above, the management server is configured to push a user interface to cne or more of the plurality of mobile devices. For example, the management server may push a new user interface to a selected group of mobile devices from the plurality of mobile devices. The new user interface may allow the users of the group of mobile devices -47 -to interact with the software program in a new way (for example, to play a new game via a new Ui or game controller) . The management server may push the new user interface to the plurality of mobile devices (or a group of mobile devices selected from the plurality of mobile devices) upon receipt of an instruction from the administrator device.

Furthermore, the management server may implement instructions to initiate changes to the user interface at the plurality of mobile devices. The management server may push to the plurality of mobile devices changes to the user interface executed on the mobile devices. For example, the management server may send instructions to change the appearance of the user interface, to change the functionality of buttons on the user interface, or to display information (such as a points score) at the user interface. Alternatively, the management server may implement instructions to the mobile devices to execute a selected, pre-determined user interface, which may or may not be pre-loaded on the software application at the mobile device. The management server may implement instructions to initiate changes to the user interface at the plurality of mobile devices upon receipt cf an instruction from the administrator device.

The management server may be configured to control the information displayed on the central display screen. For example, the management server may be configured to change the output of the software program sent to the central display screen. The management server may change the output from the result of the game or quiz to the leaderboard, for example. The management server may be configured to control -48 -the information displayed on a central display screen upon receipt of an instruction from the administrator device.

The management server may be configured to start or end execution of the software program. For example, the management server may initiate a new game software program to be executed at each of the plurality of mobile devices.

Alternatively, the management server may be configured to halt or exit a game software program running on the plurality of mobile devices. The management server may issue instructions to exit the game software program running on each of the plurality of c.obile devices. The management server may be configured to start or end execution of the software program upon receipt of an instruction from the administrator device.

The management server may be configured to receive the user details of a user of a particular mobile device and associated with a particular unigue identifier. The management server may be further configured to record the user details. For example, the user can enter their name and contact details at their mobile device, and these can be transmitted to the server together with device's unigue identifier. This can be helpful to associate a user with a given device. For example, this allows a voucher rewarded as a prize to a user to be awarded to the user, as well as simply sent to the "winning" mobile device.

The administrator device is represented as a tablet computer in Figures 1 to 4. However, the administrator device may be a mobile telephone or other mobile device, or may be a personal computer (PC) Furthermore, the plurality of mobile devices is represented at a plurality of mobile telephones. However, the plurality of mobile devices may comprise a mixture of -49 -any type of mobile devices, for example mobile telephones or tablet computers. The plurality of mobile devices may include any number of devices. Although each of the embodiments described above show a plurality of mobile devices, the system may be suitable for use with one or more devices. In certain embodiments, the plurality will include lODs or many l000s of mobile devices.

The examples described above include a software program being a game or quiz. However, the software program may be any type of interactive program. Further examples include a poll, a survey, a drawing canvas, a text editor, an image editor, or a video editor. The software proqram may relate to any type of digital content. For example, the software program may include the delivery of audio, of images or of video, as well as other data.

The user interface may be any type of user interface for interaction of the mobile device user with the software program. In particular, the Ui will be any type of program that presents information to the user and allows the user to input control sequences, by any means, to the software program within the system. Examples of types of suitable UI include a touch screen interface, a command line interface, a gesture based interface, a motion-tracking interface, a multi-screen interface, a voice-based interface, a text-based interface, an audio-based interface, attentive user interfaces, gesture interfaces, and intelligent user interfaces.

The user interface at the mobile device might take the form of any type of controller. For example, the user interface might take the form of a game touch pad, a joy stick, a game wheel, a pointer.

-50 -The interaction data may represent interaction of the user through the user interface with any means provided within the hardware of the mobile device. Specifically, the UI initiated by the server captures interactions of a user with the software program using the sensors available at the mobile device. Sensors commonly available on mobile devices, and which may be suitable for collection or capture of interaction data, include a camera for still images or for video images, a key pad, push buttons or other manual controls (such as a wheel or slider) , a touchscreen, a gyroscope, a pointer, a microphone, a global positioning system (UPS) , a thermometer, a compass, an accelerometer, or a barometer.

The software program, being executed as described in the examples above, may provide an output. Commonly, the output will be audio or image data, which may then be displayed. The display may be an audio-visual display such as a television or "big screen" in a stadium.

Alternatively, the display may be only audio, with an audio output played on a sound system. In another example, the output is only visual, with an image or text being displayed on a digital "banner" or advertising hoarding.

Other types of output will be apparent to the skilled person, which can be displayed by other means. For example, an output from the software program may cause another type of indicator to be activated (examples include a siren or a shower of ticker tape) . In certain specific embodiments, the output might be an in-game image, a quiz result, a leaderboard, a user's own image or photograph.

The management server may receive instructions from the administrator device that cause the system to display or to change the output shown on the central display screen. The -51 -administrator device may be used tc change the game or the software program executed at the management server. The administrator device gives global control of the software being executed, and allows the functionality cf the management server to be changed and adapted. The management server is configured to receive instructions from the administrator device which changes the nature of the interactions of each user with the mobile device, and the nature of the output displayed at the central screen.

Although only a single display screen is illustrated in Figures 1 to 4, more that one display can by provided in the system. Each display screen may by an audio and visual display, but may also be either an audio or a visual display. Ideally, at least cne central display will be visible to each user of the plurality of mobile devices.

In a specific example, the systems illustrated in Figures 1 to 4 are described below in use to execute games software in a stadium venue. However, this example is not intended to be limiting, and further uses and implementations of the systerr together with other types of software will be apparent to the skilled person.

The game is a quiz played by a large number of players within a live concert stadium venue. The system collects each player's quiz answer through a user interface at the player' s own mobile device (such as a smartphone or tablet computer) . Each player enters their quiz answer by pressing a portion cf a user interface at the touch screen of the mobile device. For example, each user selects a quiz answer from a list of possible answers shown at the touch screen of the user's smartphone.

-52 -The user interface at the mcbile devices generates interaction data upon selection of a quiz answer by the user. In this example, the interaction data indicates the quiz answer nominated by the user through a touch screen.

Upon commencement of the game, and during the game, the management server receives simultaneously the interaction data generated at each of the player's mobile devioes. The management server executes a software program comprising instructions for the manipulation and processing of the interaction data, resulting in an output. Tn this specific example, the management server compares the interaction data representing the quiz answer nominated by the user at each of the mobile devices with the pre-determined correct answer to the quiz. The server compiles the number of mobile devices of the plurality of niobile devices from which the correct answer is received. The management server outputs an image representing the correct answer to be displayed at the central display screen.

Here, the output is an image showing the number of users who have selected the correct answer to the quiz (for example, via a graphical display of the proportion of right answers given by users within the stadium) . In addition, the output flashes up the identity of the player from whom the first correct answer was received. This player was identified using the unique identifier assigned to the mobile device from which the first correct answer was received. The output can be displayed at the central display unit.

Using the unigue identifier, the system can not only recognise the mobile device from which the winning answer is received, but also transmits a message specifically to that mobile device within the plurality of mobile devices (for -53 -example, offering congratulations to the user) . Specific data can be received from that particular "winning" mobile device, for example by activation of a UI that takes a picture of the winner through a camera at the "winning" mobile device. This picture is then transmitted back to the server, and could be displayed on the stadium "big screen".

Furthermore, the administrator can authcrise the server (and voucher database) to create, issue and transmit a voucher to the winning mobile device as a reward. For example, the winner could be issued with a voucher that can be exchanged at one of the lccal retailers within the stadium or venue. The voucher will be associated with the unique identifier of the "wining" mobile device.

By using the system described, including assignment of the unique identifier, the presently described system overcomes the problems often associated with manipulation and simultaneous "real-time" processing of concurrently generated data from a large number of users at a plurality of mobile devices.

Claims (46)

  1. -54 -CLAIMS1. A system for managing user interfaces, UI, on one or more mobile devices, each UI being configured to capture interactions of a user with a software program, the system comprising: a server in communication with the one or more mobile devices, the server configured to implement an instruction to initiate a UI on the one or more mobile devices by transmitting a signal to the one or more mobile devices to initiate the UI.
  2. 2. The system of clairr 1, wherein the server is configured to receive the instruction to initiate the UT from an administrator device.
  3. 3. The system of clairr. 1 or 2, wherein the signal is selected from the group consisting of: logic to implement a new UI, logic to implement a modified UI, an instruction to execute a UI stored at the mobile device.
  4. 4. The system of any preceding claim, wherein the server is configured to receive instructions from the administrator device to modify the software program.
    -55 -
  5. 5. The system of any preceding claim, wherein the signal initiates a UI simultaneously on each of the one or more mobile devices.
  6. 6. The system of any preceding claim, wherein the signal transmitted by the server to the one or more mobile devices initiates a UI on a group of mobile devices selected from the one or more mobile devices.
  7. 7. The system of any preceding claim, wherein the software program is selected from a group consisting of: a game, a quiz, and a poii.
  8. 8. The system of any preceding cLaim, wherein the software program is executed on the server.
  9. 9. The system of any preceding claim, wherein the server is in communication with a mobile application installed on each of the one or more mobile devices.
  10. 10. The system of any preceding claim, wherein the UI is a graphical user interface.
  11. 11. The system of any preceding cLaim, wherein the UI is selected from a group consisting of: a touch screen interface; a command line interface; a gesture based -56 -interface; a motion-tracking interface; a multi-screen interface; a voice-based interface; a text-based interface; and an audio-based interface.
  12. 12. The system of any preceding claim wherein the server initiates a UT to capture interactions of a user with the software program using sensors at the mobile device.
  13. 13. The system of claim 12, wherein the sensors are selected from a group oonsisting of: a oamera; a key pad; a touch screen; a gyroscope; a microphone; a global positioning system; a thermometer; a oompass; an aooelerometer; and a barometer.
  14. 14. The system of any preceding claim, wherein the signal transmitted by the server to the one or more mobile devices initiates a change in the UI on the one or more mobile devices.
  15. 15. The system of claim. 14, wherein the signal initiates a simultaneous change in the UT.
    -57 -
  16. 16. The system of any preceding ciaim, wherein the software program is configured to provide an output.
  17. 17. The system of claim 16, wherein the output is audio and/or image data.
  18. 18. The system of claim. 16 or 17, wherein the server is configured to display the output of the software program on at least one central audio and/or visual display.
  19. 19. The system of any preceding claim, wherein the server is configured to transmit a signal to each of the one or more mobile devices to display an output of the software program at the one or more mobile devices.
  20. 20. The system of claim 19, wherein a the server is further configured to transmit a first output of the software program to the one or more mobile devices for display, and a second output to at least one central audio and/or visual display screen for display.
  21. 21. A method for managing user interfaces, UI, on one or more mobile devices, each UI being configured to -58 -capture interactions of a user with a software program, the method comprising the steps of: communicating with the one or more mobile devices; and implementing an instruction to initiate a UI on the one or more mobile devices by transmitting a signal to the one or more mobile devices to initiate the UI.
  22. 22. A method for maintaining persistent identities of one or more of mobile devices, the method comprising the steps of: receiving at a server an initial communication from a mobile device of the one or more mobile devices; assigning a unique identifier to the mobile device; storing the unique identifier at the mobile device and at the server; wherein further communications received by the server from the mobile device are associated with the unique identifier.
  23. 23. The method of clairt. 22, wherein further communications received by the server from the mobile device are associated with the unique identifier such that the mobile device is uniquely identified by the -59 -server, independent of the network oonneotion over whioh the communication is received.
  24. 24. The method of clairr 22 or 23, wherein the initial communication is received via a first network connection and at least one further communication is received via a second, different network connection.
  25. 25. The method of any of claims 22 to 24, wherein the initial communication is received at a first time and the further communications are received at a later time.
  26. 26. The method of any of claims 22 to 25, wherein the initial communications and further communications are received by the server from a mobile application stored at the mobile device, the assigned unique identifier being stored with the mobile application at the mobile device.
  27. 27. The method of any of claims 22 to 26, further comprising the step of receiving a further communication from the mobile device, the further communication including the unique identifier.
    -60 -
  28. 28. The method of any of claims 22 to 27, wherein the server assigns the unique identifier to the mobile device.
  29. 29. The method of any of claims 22 to 28, further comprising transmitting communications addressed to the mobile device of the one or more mobile devices together with the unique identifier.
  30. 30. The method of any of claims 22 to 29, wherein the further communications comprise an instruction to initiate a user interface, UT, on the mobile device, the UT being configured to capture interactions of a user with a software program.
  31. 31. The method of claim 30, wherein the software program is selected from the group consisting of: a game, a quiz, a poll.
  32. 32. The method of claims 30 or 31, wherein the server is configured to provide an output of the software program.
  33. 33. The method of claim. 32, wherein the output is audio and/or image data.
    -61 -
  34. 34. The method of olaims 32 or 33, wherein the server is arranged to display the output on at least one central audio and/or visual display.
  35. 35. The method of any of claims 22 to 34, wherein the method is repeated for each of the one or more mobile devices.
  36. 36. A system for maintaining persistent identities of one or more mobile devices, the system comprising: a server, configured to receive an initial communication from a mobile device of the one or more mobile devices, to assign a unique identifier to the mobile device, and to store a unique identifier associated with the mobile device at the server; wherein further communications received from the mobile device are associated with the unique identifier.
  37. 37. A system for executing a software program at one or more mobile devices, the system comprising: a management server for communicating with the one or more mobile devices, the management server configured to receive user interaction data from a user interface at each mobile device of the one or more mobile devices; -62 -the management server further configured to provide an cutput of the software program based cn the user interaction data; and the management server further configured to manage the user interacticns according tc instructions received from an administrator device.
  38. 38. The system of claim 37, wherein the management server is configured to receive a sequence of user interaction data from each user interface at each mobile device of the one or more mobile devices simultaneously.
  39. 39. The system of claim 37 or 38, wherein the output is audio and/or image data.
  40. 40. The system of any cf claims 37 to 39, further comprising at least one central audio and/or visual display, wherein the server is configured to display the output of the software program on at least one central audio and/or visual display.
  41. 41. The system of any of claims 37 to 40, wherein the management server is further configured to manage the software program by performing functions selected from -63 -the group consisting of: excluding a mobile device from interacting with the software program; admitting a mobile device to interact with the software program; inviting one or more mobile devices to interact with the software program; selecting a group of mobile devices from the one or more mobile devices; queuing communications to be sent to the mobile devices; pushing a user interface to a mobile device; implementing instructions to initiate changes to the user interface at a mobile device or at a group of mobile devices selected from the one or more mobile devices; modifying the information displayed by at least one audio and/or visua' output; and starting or ending execution of the software program.
  42. 42. The system of any of claims 37 to 41, wherein the management server is further configured to manage a voucher system for transmitting a voucher to a mobile device selected from the one or more mobile devices.
  43. 43. The system of any of claims 37 to 42, wherein the management server is configured to transmit a voucher to a mobile device according to instructions received from an administrator device.
    -64 -
  44. 44. The system of any of claims 37 to 43, wherein the management server is configured to transmit a voucher to a group of mobile devices selected from the one or more mobile devices according to instructions received from an administrator device.
  45. 45. The system of any of claim 37 to 44, wherein the management server is configured to transmit a voucher to a group of mobile devices selected from the one or more mobile devices based on the received interaction data.
  46. 46. A method for executing a software program at one or more mobile devices, the method comprising the steps of: providing a managerrent server for communicating with the one or more mobile devices; configuring the management server to receive user interaction data from a user interface at each mobile device of the one or more mobile devices; configuring the management server to provide an output of the software program based on the user interaction data; and configuring the management server to manage the user interactions according to instructions received from an administrator device.
GB1321136.2A 2013-11-29 2013-11-29 A system for managing communications with a plurality of mobile devices Pending GB2520931A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB1321136.2A GB2520931A (en) 2013-11-29 2013-11-29 A system for managing communications with a plurality of mobile devices

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1321136.2A GB2520931A (en) 2013-11-29 2013-11-29 A system for managing communications with a plurality of mobile devices
PCT/GB2014/053538 WO2015079252A1 (en) 2013-11-29 2014-11-28 A system for managing communications with one or more mobile devices

Publications (2)

Publication Number Publication Date
GB201321136D0 GB201321136D0 (en) 2014-01-15
GB2520931A true GB2520931A (en) 2015-06-10

Family

ID=49979574

Family Applications (1)

Application Number Title Priority Date Filing Date
GB1321136.2A Pending GB2520931A (en) 2013-11-29 2013-11-29 A system for managing communications with a plurality of mobile devices

Country Status (2)

Country Link
GB (1) GB2520931A (en)
WO (1) WO2015079252A1 (en)

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002092177A2 (en) * 2001-04-26 2002-11-21 Oy Gamecluster Ltd Method and arrangement for providing an interactive game including three-dimensional graphics
US20050039210A1 (en) * 2003-08-11 2005-02-17 Thomas Dusenberry In-theatre interactive entertainment system
EP1569419A1 (en) * 2004-02-25 2005-08-31 Lg Electronics Inc. Method of assigning addresses to a plurality of devices on a network and a network system therefor
US20070299913A1 (en) * 2006-06-23 2007-12-27 Griffin Jeffrey J Method and system for triggering activation of ims applications on a mobile radio terminal
US20080096659A1 (en) * 2006-10-23 2008-04-24 Kreloff Shawn D Wireless communal gaming system
US20090307300A1 (en) * 2008-06-10 2009-12-10 Iskoot Inc. Method and system for executing an application on a mobile device
US20100293222A1 (en) * 2009-05-12 2010-11-18 Microsoft Corporation Synchronizing self-referencing fields during two-way synchronization
US20110045811A1 (en) * 2009-08-20 2011-02-24 T-Mobile Usa, Inc. Parent Telecommunication Device Configuration of Activity-Based Child Telecommunication Device
US20110300917A1 (en) * 2010-07-01 2011-12-08 Internet Gaming Services International On line gaming with real-world data
US20120105905A1 (en) * 2010-10-29 2012-05-03 Toshiba Tec Kabushiki Kaisha System and Method for Operation of Document Processing Devices Via Portable Data Devices
WO2012096749A2 (en) * 2011-01-14 2012-07-19 Flash Seats, Llc Mobile application bar code identification method and system
EP2533491A1 (en) * 2011-06-06 2012-12-12 Mitel Networks Corporation Proximity Session Mobility
US20130102381A1 (en) * 2011-09-26 2013-04-25 Igt Gaming system, gaming device and method for displaying multiple concurrent games using dynamic focal points
EP2587771A1 (en) * 2011-10-28 2013-05-01 Doro AB Improved handling and configuration of a mobile communications terminal
US20130165230A1 (en) * 2011-12-22 2013-06-27 Christopher John Thacker Gaming systems and methods for use in creating random rewards

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130102380A1 (en) * 2011-10-25 2013-04-25 KamaGames Ltd. System and method for presenting a user interface that receives wager requests from users of a virtual environment

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002092177A2 (en) * 2001-04-26 2002-11-21 Oy Gamecluster Ltd Method and arrangement for providing an interactive game including three-dimensional graphics
US20050039210A1 (en) * 2003-08-11 2005-02-17 Thomas Dusenberry In-theatre interactive entertainment system
EP1569419A1 (en) * 2004-02-25 2005-08-31 Lg Electronics Inc. Method of assigning addresses to a plurality of devices on a network and a network system therefor
US20070299913A1 (en) * 2006-06-23 2007-12-27 Griffin Jeffrey J Method and system for triggering activation of ims applications on a mobile radio terminal
US20080096659A1 (en) * 2006-10-23 2008-04-24 Kreloff Shawn D Wireless communal gaming system
US20090307300A1 (en) * 2008-06-10 2009-12-10 Iskoot Inc. Method and system for executing an application on a mobile device
US20100293222A1 (en) * 2009-05-12 2010-11-18 Microsoft Corporation Synchronizing self-referencing fields during two-way synchronization
US20110045811A1 (en) * 2009-08-20 2011-02-24 T-Mobile Usa, Inc. Parent Telecommunication Device Configuration of Activity-Based Child Telecommunication Device
US20110300917A1 (en) * 2010-07-01 2011-12-08 Internet Gaming Services International On line gaming with real-world data
US20120105905A1 (en) * 2010-10-29 2012-05-03 Toshiba Tec Kabushiki Kaisha System and Method for Operation of Document Processing Devices Via Portable Data Devices
WO2012096749A2 (en) * 2011-01-14 2012-07-19 Flash Seats, Llc Mobile application bar code identification method and system
EP2533491A1 (en) * 2011-06-06 2012-12-12 Mitel Networks Corporation Proximity Session Mobility
US20130102381A1 (en) * 2011-09-26 2013-04-25 Igt Gaming system, gaming device and method for displaying multiple concurrent games using dynamic focal points
EP2587771A1 (en) * 2011-10-28 2013-05-01 Doro AB Improved handling and configuration of a mobile communications terminal
US20130165230A1 (en) * 2011-12-22 2013-06-27 Christopher John Thacker Gaming systems and methods for use in creating random rewards

Also Published As

Publication number Publication date
WO2015079252A1 (en) 2015-06-04
GB201321136D0 (en) 2014-01-15

Similar Documents

Publication Publication Date Title
US7458894B2 (en) Online gaming spectator system
US10272330B2 (en) System, method and handheld controller for multi-player gaming
TWI296937B (en) Systems and methods for delivering content over a network
US8661353B2 (en) Avatar integrated shared media experience
US8245268B2 (en) Method and system for facilitating interactive multimedia experiences
US7647560B2 (en) User interface for multi-sensory emoticons in a communication system
US9682323B2 (en) Information processing apparatus and information processing system for permitting a first user to access game software of a second user over a network
US20100069158A1 (en) Game system and method in combination with mobile phones and a game console
JP2009530923A (en) Group content presentation and system and method for organizing group communications during group content presentation
JP5342732B2 (en) Game achievement rate system
US8799005B2 (en) Systems and methods for capturing event feedback
US20070186007A1 (en) Downloadable server-client collaborative mobile social computing application
EP2131934B1 (en) Entertainment device and method
US20080282286A1 (en) Method and Apparatus for Conducting Real Time Dialogues With Mass Viewer Audiences During Live Programs
US20100178973A1 (en) System, method and handheld controller for multi-player gaming
US20080194334A1 (en) System and method for online games
US8425331B2 (en) User interface for viewing aggregated game, system and personal information
Scheible et al. MobiLenin combining a multi-track music video, personal mobile phones and a public display into multi-user interactive entertainment
US20090063995A1 (en) Real Time Online Interaction Platform
US8876606B2 (en) User-centric method of aggregating information sources to reinforce digital identity
US8910208B2 (en) Interactive video system
US7446772B2 (en) Spectator experience for networked gaming
US8893022B2 (en) Interactive and shared viewing experience
US20130132837A1 (en) Entertainment device and method
CN102917255B (en) Interaction method and system of mobile terminal and television program