US20140187327A1 - Information Updating Management in a Gaming System - Google Patents
Information Updating Management in a Gaming System Download PDFInfo
- Publication number
- US20140187327A1 US20140187327A1 US14/160,644 US201414160644A US2014187327A1 US 20140187327 A1 US20140187327 A1 US 20140187327A1 US 201414160644 A US201414160644 A US 201414160644A US 2014187327 A1 US2014187327 A1 US 2014187327A1
- Authority
- US
- United States
- Prior art keywords
- gaming system
- gaming
- client
- receiver
- update
- 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.)
- Abandoned
Links
Images
Classifications
-
- A63F13/12—
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/77—Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F17/00—Coin-freed apparatus for hiring articles; Coin-freed facilities or services
- G07F17/32—Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F17/00—Coin-freed apparatus for hiring articles; Coin-freed facilities or services
- G07F17/32—Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
- G07F17/3225—Data transfer within a gaming system, e.g. data sent between gaming machines and users
- G07F17/323—Data transfer within a gaming system, e.g. data sent between gaming machines and users wherein the player is informed, e.g. advertisements, odds, instructions
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F17/00—Coin-freed apparatus for hiring articles; Coin-freed facilities or services
- G07F17/32—Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
- G07F17/3225—Data transfer within a gaming system, e.g. data sent between gaming machines and users
- G07F17/3232—Data transfer within a gaming system, e.g. data sent between gaming machines and users wherein the operator is informed
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/552—Details of game data or player data management for downloading to client devices, e.g. using OS version, hardware or software profile of the client device
Definitions
- the present invention relates in general to a gaming system, and more particularly to the updating of information in a gaming system.
- the gaming system includes one or more gaming machines, which provide a wagering game.
- Computerized gaming systems for casino type games of chance have become more flexible and efficient with client-server based configurations where client gaming machines are connected to a central server and a central database in a data communications network.
- the different units forming the gaming system need updated information from time to time, and it is natural with this kind of architecture that updated information be distributed over the data communications network.
- the game software is modularized with a client game module in the client gaming machine and a server game module in a game application server that are both involved when a game is executed. This results in a tight coupling between different units of the gaming system and it is important that updates are put into effect as soon as possible in all affected units.
- the uptime for the gaming machines and other units in the gaming system should be affected as little as possible by updates while, at the same time, it is required that the information is updated with a minimum of delay. It is known to manage updating by making the gaming machines check for updated information on a regular basis. However, in order to maintain a system that is always updated, this requires checking to be performed frequently, which in turn affects the performance of the system as a whole.
- the data communications network is typically designed mainly with regard to the transaction frequency and the workload for the gaming applications, and there may be no large spare data transmission capacity dedicated for other data communication.
- the present invention makes use of systems and methods disclosed in the co-pending but not yet published patent application no PCT/SE2006/000559 and the international patent publication WO2006/052213 by the same applicant as the one for the present application.
- the content of PCT/SE2006/000559 and WO2006052213 is herewith incorporated by reference in the present application.
- the patent publication US 2004/0235563 A1 shows according to its abstract a gaming services framework that comprises a set of services, protocols, XML schemas, and methods for providing gaming system functionality in a distributed, network based architecture.
- Systems and methods provide a service-oriented framework for gaming and property management based upon internetworking technology and web services concepts.
- One aspect of the systems and methods includes a game update service that operates to publish service details, receive registration requests from gaming machines and other clients, and provides game update services to the gaming machines and other clients.
- the gaming update service in various embodiments provides dynamic distribution of new or updated game content to gaming devices.
- the gaming device subscribes to a game update event notification and can receive game updates via either a PUSH method or a PULL method.
- the service provider initiates the update process with the gaming device to download a new game.
- the service provider sends an event notification to the gaming device informing it that an update is available.
- the gaming device then initiates the game update by sending a request for the new game to the service provider.
- This piece of prior art requires the publishing of an available update service to gaming machines and a subscription in the shape of a registration for the update service from the gaming machine.
- certain embodiments of the present invention relate to the use of log-in information stored in a central database to send properly addressed push messages to game system clients that should be updated with regard to content, such as display information or game software, and settings.
- the push messages comprise one or more commands to the receiving game system clients for predetermined types of updates.
- the game system clients are devised to execute the commands and thus perform updates in response to the received command messages.
- the updated information is stored in the central database and is read by the receiving game system units.
- a method for updating information in a client-server based gaming system comprising a client gaming machine, a game application server and a central database.
- the method comprises the steps of:
- an information update control command comprising an indication of the updated information and an indication of a receiver gaming system unit in the central database
- the update command message comprises an indication of update information to be read from the central database; and the update command initiates, in the receiver unit, the execution of an operation to read updated information from the central database.
- a system for updating information in a client-server based gaming system comprising a client gaming machine, a game application server and a central database, the system comprises:
- a storage structure in said central database devised for storing login information for gaming system units that are logged in to the gaming system;
- a storage structure in said central database devised for storing an information update control command comprising an indication of the updated information and an indication of a receiver gaming system unit;
- system further comprises means, in the receiver unit, for execution of an operation to read updated information from the central database in response to an update command.
- a method for updating information in a client-server based network gaming system including a plurality of gaming system units arranged in a client-server architecture, comprises:
- the address of one or more receiver gaming system units to be updated determining dependent on the stored network address information the address of one or more receiver gaming system units to be updated, the one or more receiver gaming system units consisting of less than all of the gaming system units;
- an update command message comprising an update command for execution of an update operation in the one or more receiver gaming system units, the update command comprising a command to adjust an operating parameter of the receiver gaming system unit and/or a command to download updated information from a specified source in the gaming system, the update command message including the determined address of the one or more receiver gaming system units;
- the server determining from the address in the update command message whether one or more clients of the server is a said receiver gaming system unit and if so, forwarding the command message to the one or more clients;
- the server is a game application server in which critical gaming functions of one or more games provided by the gaming system are performed and wherein the one or more clients include at least one gaming machine terminal, at which a graphical user interface GUI and a user input interface function are implemented.
- the server provides critical gaming functions to a plurality of gaming machine terminals.
- a database storing network address information for a plurality of gaming system units that are connected to the gaming system
- an electronic processing system associated with the database, which receives update information including an identification of one or more receiver gaming system units that consist of less than all of the gaming system units, stores the update information in the database and determines dependent on the stored network address information the address of the one or more receiver gaming system units, the electronic processing system including a network interface;
- a plurality of servers that perform gaming functions for a plurality of clients including at least one gaming terminal, each server storing address information of the clients that it services, the plurality of servers communicably connected to the network interface of the electronic processing system over a network;
- the electronic processing system generates and sends over the network an update command message addressed to the one or more receiver gaming system units comprising an update command for execution of an update operation in the one or more receiver gaming system units, the update command comprising a command to adjust an operating parameter of the receiver gaming system unit and/or a command to download updated information from a specified location in the database;
- At least one of the plurality of servers receives the update command message dependent on the address in the update command message and dependent on the address in the update command message executes the command message and/or forwards the command message to the one or more clients for execution.
- the server is a game application server in which critical gaming functions of one or more games provided by the gaming system are performed and wherein the one or more clients include at least one gaming machine terminal, at which a graphical user interface GUI and a user input interface function are implemented.
- the server provides critical gaming functions to a plurality of gaming machine terminals.
- the invention may be realised as computer program product comprising computer program code portions for directing the gaming system units to perform the above mentioned steps and functions.
- FIG. 1 shows an exemplifying embodiment of the invention realised in a client server configured gaming system with a multiple of servers and a multiple of databases;
- FIG. 2 shows diagrammatically some of the contents of a database in the gaming system of FIG. 1 .
- FIGS. 3 and 4 show flow diagrams of an update process and login process respectively, which may be performed within the gaming system shown in FIG. 1 .
- the present invention relates to providing a technical solution for updating information in a gaming system.
- An aspect of the problem of providing such a technical solution may be identified as the achievement of targeted notification of updated content, such as display information or game software, and settings to game system clients in a gaming system with multiple servers and multiple databases.
- the figures illustrate the configuration of a gaming system as well as a method and a computer program product for managing updating in accordance with certain embodiments of the invention.
- the described system, method steps and functions are realized by means of computer technology comprising data processors, memory means, data communications interfaces, control programs, input/output interfaces etc. in a per se well known manner and the method described herein is an abstract description of a process performed by the aforementioned computer technology to implement certain embodiments of the present invention.
- FIG. 1 shows schematically an exemplifying embodiment of a client-server based gaming system 100 with an updating management system according to an embodiment of the invention.
- FIG. 1 shows schematically an exemplifying embodiment of a client-server based gaming system 100 with an updating management system according to an embodiment of the invention.
- a back office control interface 102 is communicatively coupled to a back office database 106 .
- a plurality of game server databases here illustrated with a first game server database 112 and a second game server database 118 , are communicatively coupled to the back office database 106 .
- Each game server database 112 , 118 is communicatively coupled to a plurality of game application servers, where a first group of game application servers AS11 to AS1n are associated with the first game server database 112 and a second group of game application servers AS21 to AS2n are associated with the second game server database 118 .
- a plurality of client gaming machines GMn, client display terminals DTn and client Site Operator Terminals SOTn are communicatively coupled or are able to be coupled to the game application servers AS11-As1n and AS21-AS2n via a data communications network 130 and optionally also via a load balancer 131 coupled to the game application servers.
- the symbol n denotes an arbitrary number 1, 2, 3 . . . n.
- the client gaming machines GMn, client display terminals DTn and client Site Operator Terminals SOTn are each referred to herein below as a ‘client unit’.
- Different gaming system implementing the present invention may omit display terminals, and/or site operator terminals.
- the game server databases, game application servers and client units are each referred to herein below as a ‘gaming system unit’.
- each client unit is associated with a specific game application server and would normally always be coupled to the same game application server.
- each group of predetermined client units is associated with a specific group of game application servers and would normally always be directed to the same group of game application server.
- a load balancer may distribute load between game application servers in a group.
- An embodiment of the invention is further combined with a system for failover and takeover wherein the client units are coupled to selected game application servers or groups of game application servers according to predetermined rules and by means of the mentioned load balancer 131 .
- Communicatively coupled in this text means that there is provided a communication link over which information signals can be communicated between two coupled units, for example in the form of messages or data streams.
- the communication link can for example be continuously activated in an on-line state or be activated on request when a message, e.g. in the shape of a request or a response, is communicated.
- the back office control interface 102 is in an embodiment implemented by means of a computer terminal with I/O means, for example a keyboard and point and click device, and a display device, and comprising computer software code that realizes a human-machine interface 103 , which may be in the form of an image interface window that is displayed on the display, with fields for presentation of information, fields for entering information and fields for entering command signals.
- the back office control interface 102 comprises database access means 104 , for example through a network interface card to an Ethernet connection or a suitable wireless connection, for accessing the back office database 106 with read and write instructions commanded via the interface window.
- Updates of information as well as control commands for different gaming system units in the gaming system are entered via the back office control interface and are stored in the back office database 106 , together with an indication of the identity of the destination gaming system units that are affected by or targets for the updates.
- Examples of information that may be subject to updating are game menus on gaming machines, attract movie sequences on gaming machines or on display terminals, or operational settings such as operating hours and game configuration.
- Examples of control commands that may be entered are enable or disable gaming system unit, shutdown or adjusting level of sound volume. Updating control command for controlling the distribution of updates dependent on pre-settable parameters are also entered to the back office database via the back office control interface.
- the back office database 106 comprises a database application logic layer 108 , a database storage structure 109 and a command message generator 110 .
- the database storage structure 109 may be in the form of hard disk magnetic or optical storage units, and may also include CD-ROM drives or flash memory.
- the database application logic layer 108 may include any suitable software for forming database management server, for example the Oracle Database products, produced by Oracle Corporation.
- the information stored in the back office database storage structure 109 is shown in more detail in FIG. 2 and includes:
- the back office database 106 may be implemented if required as a plurality of physically separate databases, each with its own database management server. A common indexing arrangement may be maintained.
- the command message generator 110 generates and initiates the transmission of a push command message in response to and dependent on an update control command entered via the back office control interface.
- the push command message is generated with content dependent on the type of the destination gaming system unit. For each type of destination gaming system unit there is a predetermined type of message.
- Each command message comprises a selection of:
- This information may be included in fields of one or more command packets that form the push command message.
- the actual updated information is not included in the push command message, instead the message defines what type of information should be read from the back office database or from some other predetermined data storage unit.
- the receiving gaming system unit executes the current command to read or download the updated information and for example updates its setting in real time according to the command.
- the command message generator 110 determines from login information in the back office data how the command message is to be sent to the defined receiver destination unit.
- the login information for example comprises an IP-address that is registered when the client unit logs in to the gaming system.
- the command message is then stored by operations of the back office database application layer 108 in the game server database that is associated with the defined receiver destination unit.
- the back office database 106 may directly communicate with the game server databases 112 , 118 through dedicated communication channels, or through a network connection.
- the game server databases 112 , 118 each comprises a database application logic layer 114 and a database storage structure 115 .
- the information stored in the game server database has a transactional nature and inter alia comprises information pertaining to game sessions, game session data, game session identity, client gaming machine identity, login information and configuration information updated as client units are logged on to the system and for example the game sessions are operated and executed.
- This information is preferably cached, i.e. temporarily stored, in the game server database 112 , 118 and is continuously or intermittently transmitted and stored in the back office database 106 , and then deleted from the game server databases 112 , 118 .
- the database application logic layer 114 further comprises a push message manager 116 with a push message sender.
- the push message manager 116 is devised to detect when a new command message or a record has been inserted into a command table stored in the game server database 112 , 118 by the back office database 106 and to determine the destination unit, and if applicable the identity of the game application server via which the destination unit can be communicated with.
- the push message sender then sends the command message to the identified game application server where it is received by a push message receiver.
- the push message communication is realised by an interrupt controlled communication function, e.g. implemented by means of the product Oracle DBMS_Pipe package.
- the push message sender writes the command message to the interrupt controlled communication function and whereupon the command message is immediately sent over the communication line to the game application server.
- an interrupt signal is generated and the push receiver reads the command message. No confirmation of received message is generated in this embodiment.
- the game application servers AS11-AS1n,AS21-AS2n each comprises server gaming functions 124 , a push message manager 126 and a message distributor 128 .
- the server gaming functions 124 comprises not specifically drawn components as described in the mentioned co-pending but not yet published patent application no PCT/SE2006/000559 and the published patent application WO2006/052213.
- a server game module is embedded behind an application program interface called herein server game API through which all communication of the server game module takes place.
- the server gaming functions 124 further comprises a server application program interface in short called herein server API through which communication with general server gaming functions from part of the server game API as well as from part of other server functions, and external communication takes place.
- These general server gaming functions are typically critical functions such as a random number generator, an account service function, a log service function, or other functions that beneficially are shared and used by different specific game application programs.
- the server gaming functions 124 is provided with further server function modules, in the exemplifying embodiment more specifically comprising a client handler that is communicatively coupled to the server API.
- the client handler manages communications and specific functions of clients other than the specific game applications that are executed by the server game module. Communications with client units takes place via the server API and a similar client API provided in the client units.
- the push message manager 126 comprises a push message receiver, which receives push command messages from the push message sender forming part of the push message manager 116 in the game server database 112 , 118 .
- an interrupt signal is generated when a message arrives and the push message receiver reads the command message immediately.
- the push message manager 126 determines the type of the receiving destination gaming system unit (in short: receiver unit type) from the command message content.
- the command in the command push message is read and the execution of the command is initiated.
- the push message manager 126 initiates forwarding of the push command message to the addressee client unit or units.
- the game application server determines the connection on the network socket for that client unit in its session cache, retrieves the relevant data for communication from memory and the sends the information to the client unit on the existing network socket.
- the message distributor 128 forwards the push command message or transforms it to a new message format with a content dependent on the original push command message and communicates it to the addressee client unit or units.
- the normal communications means between server and client comprising a confirmation of a received message.
- the command in the push command message is read and the command is executed.
- the gaming system client units each comprises a command message manager 132 , 136 , 140 .
- the command message manager 132 , 136 , 140 comprises a command message receiver devised to receive the push command messages from the game application server, a command message reader devised to read the received command messages and a command initiator devised to initiate the execution of a command found in the push command message.
- the client gaming machines GMn comprises client gaming functions 134 that in its turn comprises not specifically drawn components as described in the mentioned co-pending but not yet published patent application no PCT/SE2006/000559 and the published patent application WO2006052213.
- client gaming functions 134 further comprises a client application program interface in short called client API through which communication with general client gaming functions from the part of the client game API as well as from the part of other client functions and external communications takes place.
- the general client gaming functions installed on the client gaming machine are used by different client game modules.
- the general client gaming functions are designed for assisting in implementing and executing a specific game on the client gaming machine and are available for the client game module. These general client gaming functions are in different embodiments a selection of a graphical user interface GUI, a cashbox function, a sound function, a user input interface function for example buttons, data storage, a printer, a bar code reader and other functions that are related to the performance of a game.
- the client game module is communicatively coupled to the corresponding server game module for communicating requests and responses in order to utilize the general gaming functions provided in the server. For each game a message protocol for communication between the client module and the server module is generated, the protocol is for example based on XML and is shared by the client and the server.
- the client gaming machine further comprises a client control module that controls communications and general functions of the client gaming machine other than the specific game applications and communicates via the client API.
- the client display terminals DTn further comprises display functions 138 devised to display predetermined video or image content stored in the client display terminal or received or read as a stream of data from some other gaming system unit.
- the client site operator terminal SOTn further comprises site operator management functions devised to support site operator management, for example functions for monitoring status, properties or statistics of a group of client gaming machines at a venue and control management functions for controlling some predetermined controllable functions of the group of client gaming machines.
- site operator management functions devised to support site operator management, for example functions for monitoring status, properties or statistics of a group of client gaming machines at a venue and control management functions for controlling some predetermined controllable functions of the group of client gaming machines.
- FIG. 3 shows schematically a flow chart of steps in an exemplifying embodiment of a method for updating management in a client-server based gaming system according to certain embodiments of the invention.
- the numbered list below and the arrangement of steps in FIG. 3 is merely for reference purpose and does not necessarily mean that the steps are performed in a sequence corresponding to the indicated numerical order.
- updates of information are entered via the back office control interface 102 using the human-machine interface 103 .
- the back office control interface 102 may allow parameters to be set using fields displayed to the operator and allow files to be marked for storage in the back office database 106 .
- the files may be stored locally, available on removable storage such as a CD or a flash drive, or able to be downloaded through a network connection to a local or wide area network (not shown).
- the updates are entered together with an indication of the gaming system units that are affected by and therefore targets for the update.
- the updates are communicated from the back office control interface to the back office database 106 by the database access means 104 , and caused to be stored in the database storage structure 109 of the back office database 106 by the database application logic layer 108 .
- command message comprising commands for update operations is generated by command message generator 110 in the database application logic layer 108 .
- step 204 it is determined from login information stored in the 5 database storage structure 109 how the command message should be sent to the target receiver units. That is it is determined via which game server database 112 , 118 and via which game application server the command message should be sent.
- the command message is sent by the back office database 106 under the control of the command message generator 110 , for example by providing the message to an Ethernet network card for transmission onto an Ethernet cable.
- the command message is received and stored in the database storage structure 115 of the determined game server database 112 , 118 under the control of the database application logic layer 114 of that game server database.
- the storage may suitably be in random access memory, which may if required be in the form of non-volatile random access memory, for example by being battery-backed.
- the database application logic layer 114 of the game server database 112 , 118 in response to receipt of the command message, generates a push command message from the stored command and sends the command, for example by providing the command to a network card.
- the push command is addressed to the relevant game application server(s) dependent on the address information in the command.
- the push command message is received by the push message manager 126 of relevant game application server(s) and stored at the game application server for execution or pushing to a client unit.
- the push message manager 126 of the game application server determines the receiver unit type from the command message content.
- the game application server reads the command in the command message and the execution of the command is initiated.
- the message distributor 128 of the game application server determines communication data for the receiver client unit, which depending on the particular implementation of the gaming system 100 may be in a different communication format, and communicates the command message to the receiver client unit.
- the receiver client unit reads the command in the command message and the execution of the command is initiated.
- the execution of the command generates the update of a local parameter or initiates download of updated information from the back office database or from some other indicated data storage unit.
- the update is carried out in real time as soon as the update is first entered via the back office control interface. If a receiver unit is not logged in at the moment, the update command message is sent immediately upon login.
- FIG. 4 shows a flow diagram of a process to generate the login information, in particular the process to allocate an IP address to each device in the gaming system 100 .
- the actual address used may depending on the size of the network may be an abbreviated address and other address allocation methods may be used.
- the flow diagram assumes an implementation in which the client units are connected to the application servers through an Ethernet network, the applications servers are similarly connected to the game server databases 112 , 118 through an Ethernet network and the game server databases 112 , 118 each have a direct communication line with the back office database 106 .
- modifications to the method or alternative methods may be used, depending in part on the particular gaming system implemented. Again, the recitation of steps in a particular order below does not imply that the steps are performed in that order.
- Each client unit when connected to the data communications network 130 , communicates an identifier onto the network for receipt by an application server.
- This identifier may be a hardware address such as an Ethernet address.
- the application server or group of applications servers determined by the load balancer 131 or otherwise to receive messages from the client unit receives and stores the Ethernet address in memory.
- the application server communicates the Ethernet addresses to the game server database 112 , 118 with which they are associated.
- the application server which has its own Ethernet card, communicates its Ethernet address onto the Ethernet network for receipt by a game server database 112 , 118 .
- the game server databases 112 , 118 forward the addresses to the back office database 106 .
- the back office database 106 uses its database application logic layer 108 to receive the addresses of the application servers and client units.
- the database application logic layer 108 of the back office database 106 allocates IP addresses to each Ethernet address and maintains a list of addresses.
- the allocated addresses are communicated by the back office database to the game server databases 112 , 118 .
- the application servers receive their own IP-addresses and store them for use in recognising communications to them on the Ethernet network.
- the application servers also store the IP addresses for each client unit that the server services and forwards the addresses on to those client units.
- the client units receive and store their allocated IP address.
- the client units and application servers may then be interrogated or send information regarding their type to the back office database.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Pinball Game Machines (AREA)
Abstract
Description
- This application claims priority to, and is a continuation of, co-pending U.S. application Ser. No. 11/830,514, having a filing date of Jul. 30, 2007, which claims priority to Swedish Patent Application No. 0601620-8, having a filing date of Jul. 31, 2006, both of which are incorporated herein by reference in their entirety.
- The present invention relates in general to a gaming system, and more particularly to the updating of information in a gaming system. The gaming system includes one or more gaming machines, which provide a wagering game.
- Computerized gaming systems for casino type games of chance have become more flexible and efficient with client-server based configurations where client gaming machines are connected to a central server and a central database in a data communications network. The different units forming the gaming system need updated information from time to time, and it is natural with this kind of architecture that updated information be distributed over the data communications network.
- In recent game software architectures, the game software is modularized with a client game module in the client gaming machine and a server game module in a game application server that are both involved when a game is executed. This results in a tight coupling between different units of the gaming system and it is important that updates are put into effect as soon as possible in all affected units.
- There is a requirement that the uptime for the gaming machines and other units in the gaming system should be affected as little as possible by updates while, at the same time, it is required that the information is updated with a minimum of delay. It is known to manage updating by making the gaming machines check for updated information on a regular basis. However, in order to maintain a system that is always updated, this requires checking to be performed frequently, which in turn affects the performance of the system as a whole. The data communications network is typically designed mainly with regard to the transaction frequency and the workload for the gaming applications, and there may be no large spare data transmission capacity dedicated for other data communication.
- There is therefore a need for an efficient information updating method that affects the gaming applications to a minimum and that operates smoothly within a neatly dimensioned data communication network. It is an object of the invention to satisfy this need, or at least to provide an alternative to current gaming systems and methods of updating gaming system that is of utility.
- The present invention makes use of systems and methods disclosed in the co-pending but not yet published patent application no PCT/SE2006/000559 and the international patent publication WO2006/052213 by the same applicant as the one for the present application. The content of PCT/SE2006/000559 and WO2006052213 is herewith incorporated by reference in the present application.
- The patent publication US 2004/0235563 A1 shows according to its abstract a gaming services framework that comprises a set of services, protocols, XML schemas, and methods for providing gaming system functionality in a distributed, network based architecture. Systems and methods provide a service-oriented framework for gaming and property management based upon internetworking technology and web services concepts. One aspect of the systems and methods includes a game update service that operates to publish service details, receive registration requests from gaming machines and other clients, and provides game update services to the gaming machines and other clients.
- In more particular, the description describes that the gaming update service in various embodiments provides dynamic distribution of new or updated game content to gaming devices. In some embodiments, the gaming device subscribes to a game update event notification and can receive game updates via either a PUSH method or a PULL method. In the PUSH method when a game update is available, the service provider initiates the update process with the gaming device to download a new game. In the PULL method the service provider sends an event notification to the gaming device informing it that an update is available. The gaming device then initiates the game update by sending a request for the new game to the service provider. This piece of prior art requires the publishing of an available update service to gaming machines and a subscription in the shape of a registration for the update service from the gaming machine.
- Any reference in this specification to the prior art does not constitute, nor should it be considered, an admission that such prior art was widely known or forms part of the common general knowledge in any jurisdiction, before the priority date of any of the appended claims.
- Broadly, certain embodiments of the present invention relate to the use of log-in information stored in a central database to send properly addressed push messages to game system clients that should be updated with regard to content, such as display information or game software, and settings. In an embodiment of the invention the push messages comprise one or more commands to the receiving game system clients for predetermined types of updates. The game system clients are devised to execute the commands and thus perform updates in response to the received command messages. In certain embodiments, the updated information is stored in the central database and is read by the receiving game system units.
- According to an aspect of the invention, a method is provided for updating information in a client-server based gaming system comprising a client gaming machine, a game application server and a central database. The method comprises the steps of:
- storing in said central database login information for gaming system units that are logged in to the gaming system;
- storing updated information in the central database;
- storing an information update control command comprising an indication of the updated information and an indication of a receiver gaming system unit in the central database;
- generating an update command message comprising an update command for execution of an update operation in the receiver gaming system unit;
- determining the communication route to the receiver gaming system unit dependent on the stored login information;
- communicating the update command message to the receiver gaming system unit dependent on the determined communication route;
- executing the update command comprised in the update command message in the receiver gaming system unit.
- In certain embodiments, the update command message comprises an indication of update information to be read from the central database; and the update command initiates, in the receiver unit, the execution of an operation to read updated information from the central database.
- According to a further aspect of the invention, a system for updating information in a client-server based gaming system comprising a client gaming machine, a game application server and a central database, the system comprises:
- a storage structure in said central database devised for storing login information for gaming system units that are logged in to the gaming system;
- a storage structure in said central database devised for storing updated information;
- a storage structure in said central database devised for storing an information update control command comprising an indication of the updated information and an indication of a receiver gaming system unit;
- means for generating an update command message comprising an update command for execution of an update operation in the receiver gaming system unit;
- means for determining the communication route to the receiver gaming system unit dependent on the stored login information;
- means for communicating the update command message to the receiver gaming system unit dependent on the determined communication route;
- means for executing the update command comprised in the update command message in the receiver gaming system unit.
- In certain embodiments, the system further comprises means, in the receiver unit, for execution of an operation to read updated information from the central database in response to an update command.
- According to a further aspect of the invention, a method for updating information in a client-server based network gaming system including a plurality of gaming system units arranged in a client-server architecture, comprises:
- storing network address information for gaming system units that are connected to the gaming system;
- determining dependent on the stored network address information the address of one or more receiver gaming system units to be updated, the one or more receiver gaming system units consisting of less than all of the gaming system units;
- generating an update command message comprising an update command for execution of an update operation in the one or more receiver gaming system units, the update command comprising a command to adjust an operating parameter of the receiver gaming system unit and/or a command to download updated information from a specified source in the gaming system, the update command message including the determined address of the one or more receiver gaming system units;
- communicating the update command message onto a network to which a plurality of servers of the gaming system are connected, and receiving the update command message at one of the plurality of servers as determined by the address in the update command message;
- at the server, determining from the address in the update command message whether the server is a said receiver gaming system unit and if so, executing the command message at the server;
- at the server, determining from the address in the update command message whether one or more clients of the server is a said receiver gaming system unit and if so, forwarding the command message to the one or more clients;
- executing the update command comprised in the update command message in the one or more receiver gaming system units.
- In certain embodiments, the server is a game application server in which critical gaming functions of one or more games provided by the gaming system are performed and wherein the one or more clients include at least one gaming machine terminal, at which a graphical user interface GUI and a user input interface function are implemented.
- In certain embodiments, the server provides critical gaming functions to a plurality of gaming machine terminals.
- In certain embodiments, there are a plurality of servers, that each provide critical gaming functions to a plurality of gaming machine terminals.
- According to a further aspect of the invention a client-server based network gaming system including a plurality of gaming system units arranged in a client-server architecture comprises:
- a database storing network address information for a plurality of gaming system units that are connected to the gaming system;
- an electronic processing system associated with the database, which receives update information including an identification of one or more receiver gaming system units that consist of less than all of the gaming system units, stores the update information in the database and determines dependent on the stored network address information the address of the one or more receiver gaming system units, the electronic processing system including a network interface;
- a plurality of servers that perform gaming functions for a plurality of clients including at least one gaming terminal, each server storing address information of the clients that it services, the plurality of servers communicably connected to the network interface of the electronic processing system over a network;
- wherein the electronic processing system generates and sends over the network an update command message addressed to the one or more receiver gaming system units comprising an update command for execution of an update operation in the one or more receiver gaming system units, the update command comprising a command to adjust an operating parameter of the receiver gaming system unit and/or a command to download updated information from a specified location in the database;
- wherein at least one of the plurality of servers receives the update command message dependent on the address in the update command message and dependent on the address in the update command message executes the command message and/or forwards the command message to the one or more clients for execution.
- In certain embodiments, the server is a game application server in which critical gaming functions of one or more games provided by the gaming system are performed and wherein the one or more clients include at least one gaming machine terminal, at which a graphical user interface GUI and a user input interface function are implemented.
- In certain embodiments, the server provides critical gaming functions to a plurality of gaming machine terminals.
- In certain embodiments, there are a plurality of servers, that each provide critical gaming functions to a plurality of gaming machine terminals.
- According to yet another aspect, the invention may be realised as computer program product comprising computer program code portions for directing the gaming system units to perform the above mentioned steps and functions.
- Technical effects and advantages of certain embodiments of the present invention include elimination of a need for broadcasting update notifications as well as the need for on-site adjustments of clients, and enabling real-time update of content and settings from a centralized supervisory control site, for example.
- The invention is further explained by means of examples and in conjunction with the accompanying drawings, in which:
-
FIG. 1 shows an exemplifying embodiment of the invention realised in a client server configured gaming system with a multiple of servers and a multiple of databases; and -
FIG. 2 shows diagrammatically some of the contents of a database in the gaming system ofFIG. 1 . -
FIGS. 3 and 4 show flow diagrams of an update process and login process respectively, which may be performed within the gaming system shown inFIG. 1 . - The present invention relates to providing a technical solution for updating information in a gaming system. An aspect of the problem of providing such a technical solution may be identified as the achievement of targeted notification of updated content, such as display information or game software, and settings to game system clients in a gaming system with multiple servers and multiple databases.
- The figures illustrate the configuration of a gaming system as well as a method and a computer program product for managing updating in accordance with certain embodiments of the invention. The described system, method steps and functions are realized by means of computer technology comprising data processors, memory means, data communications interfaces, control programs, input/output interfaces etc. in a per se well known manner and the method described herein is an abstract description of a process performed by the aforementioned computer technology to implement certain embodiments of the present invention.
- Different functions and features that are specific for certain embodiments of the present invention are preferably realised by means of specific combinations and configurations of hardware components and/or computer program code portions executed on data processing means, or by means of combinations thereof. It is within the knowledge of the skilled person to select appropriate means and combination of means for the realization of certain embodiments of the invention.
-
FIG. 1 shows schematically an exemplifying embodiment of a client-server based gaming system 100 with an updating management system according to an embodiment of the invention. Those skilled in the relevant arts will appreciate that certain embodiments of the invention will also have application to other client-server gaming systems. - A back
office control interface 102 is communicatively coupled to aback office database 106. A plurality of game server databases, here illustrated with a firstgame server database 112 and a secondgame server database 118, are communicatively coupled to theback office database 106. Eachgame server database game server database 112 and a second group of game application servers AS21 to AS2n are associated with the secondgame server database 118. - A plurality of client gaming machines GMn, client display terminals DTn and client Site Operator Terminals SOTn are communicatively coupled or are able to be coupled to the game application servers AS11-As1n and AS21-AS2n via a
data communications network 130 and optionally also via aload balancer 131 coupled to the game application servers. The symbol n denotes anarbitrary number - In one configuration, each client unit is associated with a specific game application server and would normally always be coupled to the same game application server. In another configuration, each group of predetermined client units is associated with a specific group of game application servers and would normally always be directed to the same group of game application server. A load balancer may distribute load between game application servers in a group. An embodiment of the invention is further combined with a system for failover and takeover wherein the client units are coupled to selected game application servers or groups of game application servers according to predetermined rules and by means of the mentioned
load balancer 131. - Communicatively coupled in this text means that there is provided a communication link over which information signals can be communicated between two coupled units, for example in the form of messages or data streams. The communication link can for example be continuously activated in an on-line state or be activated on request when a message, e.g. in the shape of a request or a response, is communicated.
- The back
office control interface 102 is in an embodiment implemented by means of a computer terminal with I/O means, for example a keyboard and point and click device, and a display device, and comprising computer software code that realizes a human-machine interface 103, which may be in the form of an image interface window that is displayed on the display, with fields for presentation of information, fields for entering information and fields for entering command signals. The backoffice control interface 102 comprises database access means 104, for example through a network interface card to an Ethernet connection or a suitable wireless connection, for accessing theback office database 106 with read and write instructions commanded via the interface window. - Updates of information as well as control commands for different gaming system units in the gaming system are entered via the back office control interface and are stored in the
back office database 106, together with an indication of the identity of the destination gaming system units that are affected by or targets for the updates. Examples of information that may be subject to updating are game menus on gaming machines, attract movie sequences on gaming machines or on display terminals, or operational settings such as operating hours and game configuration. Examples of control commands that may be entered are enable or disable gaming system unit, shutdown or adjusting level of sound volume. Updating control command for controlling the distribution of updates dependent on pre-settable parameters are also entered to the back office database via the back office control interface. - The
back office database 106 comprises a databaseapplication logic layer 108, adatabase storage structure 109 and acommand message generator 110. Thedatabase storage structure 109 may be in the form of hard disk magnetic or optical storage units, and may also include CD-ROM drives or flash memory. The databaseapplication logic layer 108 may include any suitable software for forming database management server, for example the Oracle Database products, produced by Oracle Corporation. - The information stored in the back office
database storage structure 109 is shown in more detail inFIG. 2 and includes: -
-
Login information 10. Thelogin information 10 is information from the different gaming system units and includes indications of associated units, i.e. the identities and associations of the game server databases, game application servers, gaming machines and other client units such as the mentioned display terminal or site operator terminal. - Updates of information and control commands 11. The updates of information and control commands 11 for gaming system units are entered via the back
office control interface 102. - Updating control commands 12. The updating control commands 12 are commands for controlling the distribution of updates, such as execute immediately or initiating updates dependent on predetermined event parameters or on predetermined time parameters.
- Identity of the gaming system units for
updates 13. Indications of the identity of the gaming system units that are affected by or targets for the updates are also stored in thedatabase storage structure 109, for example in the form of a list of such identity indications for each update. -
Historical data 14. Selections of historical data from game related and other transaction within the gaming system may also be stored n thedatabase storage structure 109.
-
- While a single database storage structure is shown in
FIGS. 1 and 2 , theback office database 106 may be implemented if required as a plurality of physically separate databases, each with its own database management server. A common indexing arrangement may be maintained. - The
command message generator 110 generates and initiates the transmission of a push command message in response to and dependent on an update control command entered via the back office control interface. The push command message is generated with content dependent on the type of the destination gaming system unit. For each type of destination gaming system unit there is a predetermined type of message. - Each command message comprises a selection of:
-
- An indication of the type of the receiving destination gaming system unit, e.g. game application server, gaming machine, display terminal or site operator terminal or other client terminal unit.
- An addressee indication, that is an indication of the receiving destination gaming system unit. The addressee indication is taken from the identity of gaming system units for
updates 13 information. This may be a specific addressee or a list of addresses. - A command for the receiving destination gaming system unit to execute, e.g. a command to obtain updated information by requesting or reading data from an identified source or to turn on or off a specific function.
- A first identification indication, identifying a physical or logical destination unit where updated information is to be found.
- A second identification indication, identifying the address of a set of data or a data file where updated information is to be found.
- This information may be included in fields of one or more command packets that form the push command message.
- The actual updated information is not included in the push command message, instead the message defines what type of information should be read from the back office database or from some other predetermined data storage unit. The receiving gaming system unit executes the current command to read or download the updated information and for example updates its setting in real time according to the command.
- The
command message generator 110 determines from login information in the back office data how the command message is to be sent to the defined receiver destination unit. The login information for example comprises an IP-address that is registered when the client unit logs in to the gaming system. By logging which game application server is used to log in a client unit there is information in the database that identifies to which game application server to send a push command message, for example by placing the address of the game application server in a header of packet(s) forming the push command message. In a preferred embodiment, the command message is then stored by operations of the back officedatabase application layer 108 in the game server database that is associated with the defined receiver destination unit. Theback office database 106 may directly communicate with thegame server databases - The
game server databases application logic layer 114 and adatabase storage structure 115. The information stored in the game server database has a transactional nature and inter alia comprises information pertaining to game sessions, game session data, game session identity, client gaming machine identity, login information and configuration information updated as client units are logged on to the system and for example the game sessions are operated and executed. This information is preferably cached, i.e. temporarily stored, in thegame server database back office database 106, and then deleted from thegame server databases - The database
application logic layer 114 further comprises apush message manager 116 with a push message sender. Thepush message manager 116 is devised to detect when a new command message or a record has been inserted into a command table stored in thegame server database back office database 106 and to determine the destination unit, and if applicable the identity of the game application server via which the destination unit can be communicated with. The push message sender then sends the command message to the identified game application server where it is received by a push message receiver. In an advantageous embodiment the push message communication is realised by an interrupt controlled communication function, e.g. implemented by means of the product Oracle DBMS_Pipe package. The push message sender writes the command message to the interrupt controlled communication function and whereupon the command message is immediately sent over the communication line to the game application server. When the command message arrives at the game application server, an interrupt signal is generated and the push receiver reads the command message. No confirmation of received message is generated in this embodiment. - The game application servers AS11-AS1n,AS21-AS2n each comprises server gaming functions 124, a
push message manager 126 and amessage distributor 128. - The server gaming functions 124 comprises not specifically drawn components as described in the mentioned co-pending but not yet published patent application no PCT/SE2006/000559 and the published patent application WO2006/052213. In the game application server, a server game module is embedded behind an application program interface called herein server game API through which all communication of the server game module takes place. The server gaming functions 124 further comprises a server application program interface in short called herein server API through which communication with general server gaming functions from part of the server game API as well as from part of other server functions, and external communication takes place. These general server gaming functions are typically critical functions such as a random number generator, an account service function, a log service function, or other functions that beneficially are shared and used by different specific game application programs.
- The server gaming functions 124 is provided with further server function modules, in the exemplifying embodiment more specifically comprising a client handler that is communicatively coupled to the server API. The client handler manages communications and specific functions of clients other than the specific game applications that are executed by the server game module. Communications with client units takes place via the server API and a similar client API provided in the client units.
- The
push message manager 126 comprises a push message receiver, which receives push command messages from the push message sender forming part of thepush message manager 116 in thegame server database push message manager 126 then determines the type of the receiving destination gaming system unit (in short: receiver unit type) from the command message content. - If the receiver unit type is a game application server, the command in the command push message is read and the execution of the command is initiated.
- The command message for game application servers comprises in different embodiments a selection of the update commands that triggers execution in the receiving game application server:
-
- 1. Clear Cache! The execution of this command triggers the game application server to clear its cache memory. This is for example used when a client unit has been moved to a different game application server. The previous game application server is the commanded to remove that client from its session cache.
- 2. Get Configuration! This command triggers the download of an updated configuration parameter.
- 3. Game Update! This command triggers downloading an updated game configuration from the back office database or from some other identified and addressed unit where update files are stored.
- 4. Get Configuration Module! This command triggers downloading an updated module configuration from the back office database or from some other identified and addressed unit where update files are stored.
- 5. Stop Server! The commands in points 5-8 are self descriptive and are used for maintenance mastered from the back office control interface.
- 6. Pause Server!
- 7. Resume Server!
- 8. State Dump! This command triggers the dump ad storage of a current state of the game application server.
- 9. Get Jackpot! This command triggers the download of jackpot information from a predetermined data source unit.
- If the receiver unit type is one or a plurality of client units, the
push message manager 126 initiates forwarding of the push command message to the addressee client unit or units. The game application server determines the connection on the network socket for that client unit in its session cache, retrieves the relevant data for communication from memory and the sends the information to the client unit on the existing network socket. - The
message distributor 128 forwards the push command message or transforms it to a new message format with a content dependent on the original push command message and communicates it to the addressee client unit or units. In the communication of the push command message between the game application server and the addressee client unit, preferably the normal communications means between server and client is used comprising a confirmation of a received message. In the addressee client unit the command in the push command message is read and the command is executed. - The gaming system client units, in this exemplifying embodiment comprising client gaming machines GMn, client display terminals DTn and client Site Operator Terminals SOTn, each comprises a
command message manager command message manager - The client gaming machines GMn comprises client gaming functions 134 that in its turn comprises not specifically drawn components as described in the mentioned co-pending but not yet published patent application no PCT/SE2006/000559 and the published patent application WO2006052213. In the client gaming machines a client game module is embedded behind an application program interface called client game API through which all communication of the client game module takes place. The client gaming functions 134 further comprises a client application program interface in short called client API through which communication with general client gaming functions from the part of the client game API as well as from the part of other client functions and external communications takes place. The general client gaming functions installed on the client gaming machine are used by different client game modules.
- The general client gaming functions are designed for assisting in implementing and executing a specific game on the client gaming machine and are available for the client game module. These general client gaming functions are in different embodiments a selection of a graphical user interface GUI, a cashbox function, a sound function, a user input interface function for example buttons, data storage, a printer, a bar code reader and other functions that are related to the performance of a game. The client game module is communicatively coupled to the corresponding server game module for communicating requests and responses in order to utilize the general gaming functions provided in the server. For each game a message protocol for communication between the client module and the server module is generated, the protocol is for example based on XML and is shared by the client and the server. The client gaming machine further comprises a client control module that controls communications and general functions of the client gaming machine other than the specific game applications and communicates via the client API.
- The command message for client gaming machines comprises in different embodiments a selection of the update commands that triggers execution in the receiving client machine:
-
- 1. Update Game Configuration! The execution of this command triggers a request to the game application server for downloading an updated configuration file and possibly for downloading updated game files from the back office database or from some other identified and addressed unit where update files are stored.
- 2. Enable! This command triggers that the client gaming machine is enabled for gaming operations. This command can also be triggered from a site operator terminal coupled to the current client gaming machine.
- 3. Disable! This command triggers that the client gaming machine is disabled for gaming operations. This command can also be triggered from a site operator terminal coupled to the current client gaming machine.
- 4. Master Enable! This command from the back office control interface overrides any enable or disable commands from the site operator terminal.
- 5. Master Disable! This command from the back office control interface overrides any enable or disable commands from the site operator terminal.
- 6. Shutdown! This command triggers full shutdown of the client gaming machine hardware.
- 7. Update Music Volume! This command triggers an update and adjustment of the music volume according to a music control parameter for example comprised in the command or downloaded from a predetermined database table.
- 8. Status Request! This command triggers a response from the client gaming machine with request for updating a database table with predetermined status parameter values and a time stamp.
- 9. Update Operating Hours! This command triggers an update and adjustment of the operating hours when the client gaming machine is open for gaming operations according to an operating hours parameter for example comprised in the command or downloaded from a predetermined database table.
- 10. Update Adverts! This command triggers a request to the game application server for downloading updated advertisement content from the back office database or from some other identified and addressed unit where update files are stored.
- 11. Update SOT IP Address! This command triggers update of the IP address of the site operator terminal to which the client gaming machine should be associated and coupled with. The update is preferably downloaded from the back office database.
- 12. Update IVT Configuration! This command triggers update of the configuration of the client machine. The update is preferably downloaded from the back office database.
- The client display terminals DTn further comprises display functions 138 devised to display predetermined video or image content stored in the client display terminal or received or read as a stream of data from some other gaming system unit.
- The command message for client display terminals comprises in different embodiments a selection of the update commands that triggers execution in the receiving display terminal:
-
- 1. Enable! This command triggers that the client display terminal is enabled for displaying video or image content.
- 2. Disable! This command triggers that the site operator terminal is disabled for displaying video or image content.
- 3. Update Display Content! This command triggers a request to the game application server for downloading updated video or image content from some identified and addressed unit where display information is stored or generated.
- The client site operator terminal SOTn further comprises site operator management functions devised to support site operator management, for example functions for monitoring status, properties or statistics of a group of client gaming machines at a venue and control management functions for controlling some predetermined controllable functions of the group of client gaming machines.
- The command message for site operator terminals comprises in different embodiments a selection of the update commands that triggers execution in the receiving site operator:
-
- 1. Enable! This command triggers that the site operator terminal is enabled for monitoring and controlling an associated group of client gaming machines.
- 2. Disable! This command triggers that the site operator terminal is disabled for monitoring and control operations.
- 3. Update Operating Hours! This command triggers an update and adjustment of the operating hours when the site operator terminal is open for monitoring and controlling the associated group of gaming machines according to operating hours parameters for example comprised in the command or downloaded from a predetermined database table.
- 4. Update New Messages! This command triggers a request to the game application server for downloading updated messages from the back office database or from some other identified and addressed unit where update files are stored.
- 5. Status Request! This command triggers a response from the client site operator terminal with request for updating a database table with predetermined status parameter values and a time stamp.
-
FIG. 3 shows schematically a flow chart of steps in an exemplifying embodiment of a method for updating management in a client-server based gaming system according to certain embodiments of the invention. The numbered list below and the arrangement of steps inFIG. 3 is merely for reference purpose and does not necessarily mean that the steps are performed in a sequence corresponding to the indicated numerical order. - At
step 200, updates of information, such as updates of game files or settings, are entered via the backoffice control interface 102 using the human-machine interface 103. For example, the backoffice control interface 102 may allow parameters to be set using fields displayed to the operator and allow files to be marked for storage in theback office database 106. The files may be stored locally, available on removable storage such as a CD or a flash drive, or able to be downloaded through a network connection to a local or wide area network (not shown). The updates are entered together with an indication of the gaming system units that are affected by and therefore targets for the update. - At
step 202, the updates are communicated from the back office control interface to theback office database 106 by the database access means 104, and caused to be stored in thedatabase storage structure 109 of theback office database 106 by the databaseapplication logic layer 108. - At
step 203, command message comprising commands for update operations is generated bycommand message generator 110 in the databaseapplication logic layer 108. - At
step 204, it is determined from login information stored in the 5database storage structure 109 how the command message should be sent to the target receiver units. That is it is determined via whichgame server database - At
step 205, the command message is sent by theback office database 106 under the control of thecommand message generator 110, for example by providing the message to an Ethernet network card for transmission onto an Ethernet cable. - At step 206, the command message is received and stored in the
database storage structure 115 of the determinedgame server database application logic layer 114 of that game server database. The storage may suitably be in random access memory, which may if required be in the form of non-volatile random access memory, for example by being battery-backed. - At step 207, the database
application logic layer 114 of thegame server database - At step 208, the push command message is received by the
push message manager 126 of relevant game application server(s) and stored at the game application server for execution or pushing to a client unit. - At
step 209, thepush message manager 126 of the game application server determines the receiver unit type from the command message content. - At
step 210, if the receiver unit type is a game application server, the game application server reads the command in the command message and the execution of the command is initiated. - At
step 211, if the receiver unit type is a client unit, themessage distributor 128 of the game application server determines communication data for the receiver client unit, which depending on the particular implementation of the gaming system 100 may be in a different communication format, and communicates the command message to the receiver client unit. - At step 212, the receiver client unit reads the command in the command message and the execution of the command is initiated.
- The execution of the command generates the update of a local parameter or initiates download of updated information from the back office database or from some other indicated data storage unit.
- The update is carried out in real time as soon as the update is first entered via the back office control interface. If a receiver unit is not logged in at the moment, the update command message is sent immediately upon login.
-
FIG. 4 shows a flow diagram of a process to generate the login information, in particular the process to allocate an IP address to each device in the gaming system 100. The actual address used, may depending on the size of the network may be an abbreviated address and other address allocation methods may be used. The flow diagram assumes an implementation in which the client units are connected to the application servers through an Ethernet network, the applications servers are similarly connected to thegame server databases game server databases back office database 106. Those skilled in the relevant arts will appreciate that modifications to the method or alternative methods may be used, depending in part on the particular gaming system implemented. Again, the recitation of steps in a particular order below does not imply that the steps are performed in that order. - Each client unit, when connected to the
data communications network 130, communicates an identifier onto the network for receipt by an application server. This identifier may be a hardware address such as an Ethernet address. - At step 300, the application server or group of applications servers determined by the
load balancer 131 or otherwise to receive messages from the client unit, receives and stores the Ethernet address in memory. - At
step 301, the application server communicates the Ethernet addresses to thegame server database - At step 302, the application server, which has its own Ethernet card, communicates its Ethernet address onto the Ethernet network for receipt by a
game server database - At step 303, the
game server databases - At
step 304, thegame server databases back office database 106. - At
step 305, theback office database 106 uses its databaseapplication logic layer 108 to receive the addresses of the application servers and client units. - At
step 306, the databaseapplication logic layer 108 of theback office database 106 allocates IP addresses to each Ethernet address and maintains a list of addresses. - At
step 307, the allocated addresses are communicated by the back office database to thegame server databases - At
step 308, thegame server database - At
step 309, the application servers receive their own IP-addresses and store them for use in recognising communications to them on the Ethernet network. The application servers also store the IP addresses for each client unit that the server services and forwards the addresses on to those client units. - At
step 310, the client units receive and store their allocated IP address. - The client units and application servers may then be interrogated or send information regarding their type to the back office database.
- The invention has been described by way of exemplifying embodiments, but naturally there are various manners of realising the invention within the scope of the claims.
- The foregoing description of embodiments of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed, and modifications and variations are possible in light of the above teachings or may be acquired from practice of the invention. The embodiments were chosen and described in order to explain the principals of the invention and its practical application to enable one skilled in the art to utilize the invention in various embodiments and with various modifications as are suited to the particular use contemplated.
- Those skilled in the art will appreciate that the embodiments disclosed herein may be applied to the formation of any virtual machine computing system. Certain features of the embodiments of the claimed subject matter have been illustrated as described herein; however, many modifications, substitutions, changes and equivalents will now occur to those skilled in the art. Additionally, while several functional blocks and relations between them have been described in detail, it is contemplated by those of skill in the art that several of the operations may be performed without the use of the others, or additional functions or relationships between functions may be established and still be in accordance with the claimed subject matter. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of the embodiments of the claimed subject matter.
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/160,644 US20140187327A1 (en) | 2006-07-31 | 2014-01-22 | Information Updating Management in a Gaming System |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE0601620 | 2006-07-31 | ||
SE0601620-8 | 2006-07-31 | ||
US11/830,514 US8647207B2 (en) | 2006-07-31 | 2007-07-30 | Information updating management in a gaming system |
US14/160,644 US20140187327A1 (en) | 2006-07-31 | 2014-01-22 | Information Updating Management in a Gaming System |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/830,514 Continuation US8647207B2 (en) | 2006-07-31 | 2007-07-30 | Information updating management in a gaming system |
Publications (1)
Publication Number | Publication Date |
---|---|
US20140187327A1 true US20140187327A1 (en) | 2014-07-03 |
Family
ID=38667303
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/830,514 Active 2031-10-02 US8647207B2 (en) | 2006-07-31 | 2007-07-30 | Information updating management in a gaming system |
US14/160,644 Abandoned US20140187327A1 (en) | 2006-07-31 | 2014-01-22 | Information Updating Management in a Gaming System |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/830,514 Active 2031-10-02 US8647207B2 (en) | 2006-07-31 | 2007-07-30 | Information updating management in a gaming system |
Country Status (3)
Country | Link |
---|---|
US (2) | US8647207B2 (en) |
EP (1) | EP1884273A1 (en) |
AU (2) | AU2007203533B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528225A (en) * | 2016-11-03 | 2017-03-22 | 北京像素软件科技股份有限公司 | Hot update method and apparatus for game server |
US11438390B2 (en) * | 2016-12-30 | 2022-09-06 | Motorola Mobility Llc | Automatic call forwarding during system updates |
Families Citing this family (66)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6676127B2 (en) | 1997-03-13 | 2004-01-13 | Shuffle Master, Inc. | Collating and sorting apparatus |
US6254096B1 (en) | 1998-04-15 | 2001-07-03 | Shuffle Master, Inc. | Device and method for continuously shuffling cards |
US6655684B2 (en) | 1998-04-15 | 2003-12-02 | Shuffle Master, Inc. | Device and method for forming and delivering hands from randomly arranged decks of playing cards |
US8590896B2 (en) | 2000-04-12 | 2013-11-26 | Shuffle Master Gmbh & Co Kg | Card-handling devices and systems |
US8011661B2 (en) | 2001-09-28 | 2011-09-06 | Shuffle Master, Inc. | Shuffler with shuffling completion indicator |
US8337296B2 (en) | 2001-09-28 | 2012-12-25 | SHFL entertaiment, Inc. | Method and apparatus for using upstream communication in a card shuffler |
US7753373B2 (en) | 2001-09-28 | 2010-07-13 | Shuffle Master, Inc. | Multiple mode card shuffler and card reading device |
US7677565B2 (en) | 2001-09-28 | 2010-03-16 | Shuffle Master, Inc | Card shuffler with card rank and value reading capability |
US8616552B2 (en) | 2001-09-28 | 2013-12-31 | Shfl Entertainment, Inc. | Methods and apparatuses for an automatic card handling device and communication networks including same |
US6886829B2 (en) | 2002-02-08 | 2005-05-03 | Vendingdata Corporation | Image capturing card shuffler |
US9126102B2 (en) | 2002-05-20 | 2015-09-08 | Bally Gaming, Inc. | Four-card poker game with variable wager |
US20160136511A9 (en) | 2002-05-20 | 2016-05-19 | Bally Gaming, Inc. | Four Card Poker Game with Variable Wager |
US9183705B2 (en) | 2004-09-10 | 2015-11-10 | Bally Gaming, Inc. | Methods of playing wagering games |
US20060284376A1 (en) | 2005-06-17 | 2006-12-21 | Shuffle Master, Inc. | Casino table variant of Texas hold'em poker |
US20060066048A1 (en) | 2004-09-14 | 2006-03-30 | Shuffle Master, Inc. | Magnetic jam detection in a card shuffler |
WO2006124357A2 (en) | 2005-05-11 | 2006-11-23 | Bigfoot Networks, Inc. | Distributed processing system and method |
US7764836B2 (en) | 2005-06-13 | 2010-07-27 | Shuffle Master, Inc. | Card shuffler with card rank and value reading capability using CMOS sensor |
US20070060373A1 (en) * | 2005-09-12 | 2007-03-15 | Bigfoot Networks, Inc. | Data communication system and methods |
US9455844B2 (en) * | 2005-09-30 | 2016-09-27 | Qualcomm Incorporated | Distributed processing system and method |
US7556266B2 (en) | 2006-03-24 | 2009-07-07 | Shuffle Master Gmbh & Co Kg | Card shuffler with gravity feed system for playing cards |
US8579289B2 (en) | 2006-05-31 | 2013-11-12 | Shfl Entertainment, Inc. | Automatic system and methods for accurate card handling |
US8342525B2 (en) | 2006-07-05 | 2013-01-01 | Shfl Entertainment, Inc. | Card shuffler with adjacent card infeed and card output compartments |
US8353513B2 (en) | 2006-05-31 | 2013-01-15 | Shfl Entertainment, Inc. | Card weight for gravity feed input for playing card shuffler |
US8070574B2 (en) | 2007-06-06 | 2011-12-06 | Shuffle Master, Inc. | Apparatus, system, method, and computer-readable medium for casino card handling with multiple hand recall feature |
US8874780B2 (en) * | 2006-07-17 | 2014-10-28 | Qualcomm Incorporated | Data buffering and notification system and methods thereof |
WO2008011253A2 (en) * | 2006-07-17 | 2008-01-24 | Bigfoot Networks, Inc. | Host posing network device and method thereof |
US8919775B2 (en) | 2006-11-10 | 2014-12-30 | Bally Gaming, Inc. | System for billing usage of an automatic card handling device |
WO2008091988A2 (en) * | 2007-01-26 | 2008-07-31 | Bigfoot Networks, Inc. | Communication socket state monitoring system and methods thereof |
WO2008118522A1 (en) | 2007-03-23 | 2008-10-02 | Bigfoot Networks, Inc. | Distributed processing system and method |
EP2143000A4 (en) | 2007-03-26 | 2011-04-27 | Bigfoot Networks Inc | Method and system for communication between nodes |
US8543866B2 (en) | 2007-07-20 | 2013-09-24 | Qualcomm Incorporated | Remote access diagnostic mechanism for communication devices |
US8499169B2 (en) * | 2007-07-20 | 2013-07-30 | Qualcomm Incorporated | Client authentication device and methods thereof |
KR101561716B1 (en) | 2007-11-29 | 2015-10-19 | 퀄컴 인코포레이티드 | Remote message routing device and methods thereof |
US7988152B2 (en) | 2009-04-07 | 2011-08-02 | Shuffle Master, Inc. | Playing card shuffler |
US8967621B2 (en) | 2009-04-07 | 2015-03-03 | Bally Gaming, Inc. | Card shuffling apparatuses and related methods |
US8800993B2 (en) | 2010-10-14 | 2014-08-12 | Shuffle Master Gmbh & Co Kg | Card handling systems, devices for use in card handling systems and related methods |
US8485527B2 (en) | 2011-07-29 | 2013-07-16 | Savant Shuffler LLC | Card shuffler |
US9731190B2 (en) | 2011-07-29 | 2017-08-15 | Bally Gaming, Inc. | Method and apparatus for shuffling and handling cards |
KR101593344B1 (en) | 2011-11-10 | 2016-02-18 | 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 | Speculative rendering using historical player data |
US9313083B2 (en) | 2011-12-09 | 2016-04-12 | Empire Technology Development Llc | Predictive caching of game content data |
US8974305B2 (en) | 2012-01-18 | 2015-03-10 | Bally Gaming, Inc. | Network gaming architecture, gaming systems, and related methods |
US9120007B2 (en) | 2012-01-18 | 2015-09-01 | Bally Gaming, Inc. | Network gaming architecture, gaming systems, and related methods |
US9165428B2 (en) | 2012-04-15 | 2015-10-20 | Bally Gaming, Inc. | Interactive financial transactions |
US8960674B2 (en) | 2012-07-27 | 2015-02-24 | Bally Gaming, Inc. | Batch card shuffling apparatuses including multi-card storage compartments, and related methods |
US9378766B2 (en) | 2012-09-28 | 2016-06-28 | Bally Gaming, Inc. | Card recognition system, card handling device, and method for tuning a card handling device |
US11431763B2 (en) * | 2012-09-28 | 2022-08-30 | Comcast Cable Communications, Llc | Personalized content delivery architecture |
US9511274B2 (en) | 2012-09-28 | 2016-12-06 | Bally Gaming Inc. | Methods for automatically generating a card deck library and master images for a deck of cards, and a related card processing apparatus |
SG10201706403RA (en) | 2014-04-11 | 2017-09-28 | Bally Gaming Inc | Method and apparatus for shuffling and handling cards |
US9474957B2 (en) | 2014-05-15 | 2016-10-25 | Bally Gaming, Inc. | Playing card handling devices, systems, and methods for verifying sets of cards |
US9742853B2 (en) | 2014-05-19 | 2017-08-22 | The Michael Harrison Tretter Auerbach Trust | Dynamic computer systems and uses thereof |
US10666735B2 (en) | 2014-05-19 | 2020-05-26 | Auerbach Michael Harrison Tretter | Dynamic computer systems and uses thereof |
US10305748B2 (en) | 2014-05-19 | 2019-05-28 | The Michael Harrison Tretter Auerbach Trust | Dynamic computer systems and uses thereof |
USD764599S1 (en) | 2014-08-01 | 2016-08-23 | Bally Gaming, Inc. | Card shuffler device |
US9566501B2 (en) | 2014-08-01 | 2017-02-14 | Bally Gaming, Inc. | Hand-forming card shuffling apparatuses including multi-card storage compartments, and related methods |
US9504905B2 (en) | 2014-09-19 | 2016-11-29 | Bally Gaming, Inc. | Card shuffling device and calibration method |
CN105354112B (en) * | 2015-11-05 | 2018-09-21 | 网易(杭州)网络有限公司 | Data reconstruction method, device and the system of single-play game |
US9993719B2 (en) | 2015-12-04 | 2018-06-12 | Shuffle Master Gmbh & Co Kg | Card handling devices and related assemblies and components |
US10933300B2 (en) | 2016-09-26 | 2021-03-02 | Shuffle Master Gmbh & Co Kg | Card handling devices and related assemblies and components |
US10339765B2 (en) | 2016-09-26 | 2019-07-02 | Shuffle Master Gmbh & Co Kg | Devices, systems, and related methods for real-time monitoring and display of related data for casino gaming devices |
US11896891B2 (en) | 2018-09-14 | 2024-02-13 | Sg Gaming, Inc. | Card-handling devices and related methods, assemblies, and components |
US11376489B2 (en) | 2018-09-14 | 2022-07-05 | Sg Gaming, Inc. | Card-handling devices and related methods, assemblies, and components |
US11338194B2 (en) | 2018-09-28 | 2022-05-24 | Sg Gaming, Inc. | Automatic card shufflers and related methods of automatic jam recovery |
PH12020050309A1 (en) | 2019-09-10 | 2021-03-22 | Shuffle Master Gmbh And Co Kg | Card-handling devices with defect detection and related methods |
US11173383B2 (en) | 2019-10-07 | 2021-11-16 | Sg Gaming, Inc. | Card-handling devices and related methods, assemblies, and components |
CN111553665A (en) * | 2020-05-13 | 2020-08-18 | 山东浪潮商用系统有限公司 | Distributed tax office order management method and system |
US20220212100A1 (en) * | 2021-01-04 | 2022-07-07 | Microsoft Technology Licensing, Llc | Systems and methods for streaming interactive applications |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050239545A1 (en) * | 2003-07-14 | 2005-10-27 | Bruce Rowe | Programmatic control of gaming devices |
US20050255919A1 (en) * | 2002-02-06 | 2005-11-17 | Dwayne Nelson | Method and apparatus for machine location |
US20070026935A1 (en) * | 2005-08-01 | 2007-02-01 | Igt | Methods and devices for managing gaming networks |
US20070049375A1 (en) * | 2005-08-29 | 2007-03-01 | Igt | Methods and devices for gaming network management |
US20070054741A1 (en) * | 2005-09-07 | 2007-03-08 | Morrow James W | Network gaming device peripherals |
US20070060363A1 (en) * | 2005-09-12 | 2007-03-15 | Igt | Distributed game services |
US20080318685A9 (en) * | 2005-09-12 | 2008-12-25 | Oak Steven R | Controlled access layer system and method |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7515718B2 (en) * | 2000-12-07 | 2009-04-07 | Igt | Secured virtual network in a gaming environment |
US20040235563A1 (en) * | 2003-02-26 | 2004-11-25 | Blackburn Christopher W. | Game update service in a service-oriented gaming network environment |
-
2007
- 2007-07-27 AU AU2007203533A patent/AU2007203533B2/en active Active
- 2007-07-30 US US11/830,514 patent/US8647207B2/en active Active
- 2007-07-30 EP EP07113384A patent/EP1884273A1/en not_active Withdrawn
-
2010
- 2010-01-14 AU AU2010200152A patent/AU2010200152B2/en active Active
-
2014
- 2014-01-22 US US14/160,644 patent/US20140187327A1/en not_active Abandoned
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050255919A1 (en) * | 2002-02-06 | 2005-11-17 | Dwayne Nelson | Method and apparatus for machine location |
US20050239545A1 (en) * | 2003-07-14 | 2005-10-27 | Bruce Rowe | Programmatic control of gaming devices |
US20070026935A1 (en) * | 2005-08-01 | 2007-02-01 | Igt | Methods and devices for managing gaming networks |
US20070049375A1 (en) * | 2005-08-29 | 2007-03-01 | Igt | Methods and devices for gaming network management |
US20070054741A1 (en) * | 2005-09-07 | 2007-03-08 | Morrow James W | Network gaming device peripherals |
US20070060363A1 (en) * | 2005-09-12 | 2007-03-15 | Igt | Distributed game services |
US20080318685A9 (en) * | 2005-09-12 | 2008-12-25 | Oak Steven R | Controlled access layer system and method |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528225A (en) * | 2016-11-03 | 2017-03-22 | 北京像素软件科技股份有限公司 | Hot update method and apparatus for game server |
US11438390B2 (en) * | 2016-12-30 | 2022-09-06 | Motorola Mobility Llc | Automatic call forwarding during system updates |
Also Published As
Publication number | Publication date |
---|---|
AU2007203533B2 (en) | 2009-11-19 |
EP1884273A1 (en) | 2008-02-06 |
AU2010200152A1 (en) | 2010-02-04 |
US20080039208A1 (en) | 2008-02-14 |
AU2010200152B2 (en) | 2013-03-28 |
AU2007203533A1 (en) | 2008-02-14 |
US8647207B2 (en) | 2014-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8647207B2 (en) | Information updating management in a gaming system | |
US8819124B2 (en) | System and method for one-way delivery of notifications from server-to-clients using modified multicasts | |
US20050054448A1 (en) | N-tier architecture for a casino management system and method | |
US9082258B2 (en) | Method and system for providing download and configuration job progress tracking and display via host user interface | |
US9171420B2 (en) | Assignment template and assignment bundle in a gaming configuration and download system | |
US8667457B2 (en) | System and method for validating download or configuration assignment for an EGM or EGM collection | |
US8131829B2 (en) | Gaming machine collection and management | |
US7594007B2 (en) | Distributed service management for distributed networks | |
US20020138594A1 (en) | Wide area program distribution and game information communication system | |
US20090183243A1 (en) | User authorization system and methods | |
US20090124392A1 (en) | Download and configuration management engine for gaming system | |
WO2007033195A2 (en) | Gaming floor control and configuration system | |
ITMI20120307U1 (en) | WIDGET MANAGER. | |
US9483905B2 (en) | Ultra-thick gaming device | |
US20080019288A1 (en) | System and method for managing domain-state information | |
WO2007104935A1 (en) | Credit handler for entertainment device | |
AU2013206556A1 (en) | Information Updating Management in a Gaming System | |
WO2009001075A1 (en) | Entertainment device | |
NZ518211A (en) | Multiple venue jackpot system | |
AU2018202275A1 (en) | N-tier architecture for a casino management system and method | |
AU2018203636A1 (en) | A gaming management system and gaming management method | |
AU2006291020A1 (en) | Method and system for configuration |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: UBS AG, STAMFORD BRANCH, CONNECTICUT Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:ARISTOCRAT TECHNOLOGIES AUSTRALIA PTY LIMITED;REEL/FRAME:034777/0498 Effective date: 20141020 |
|
AS | Assignment |
Owner name: VIDEOB HOLDINGS LIMITED, VIRGIN ISLANDS, BRITISH Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ARISTOCRAT TECHNOLOGIES AUSTRALIA PTY LIMITED;REEL/FRAME:035927/0574 Effective date: 20140902 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: ARISTOCRAT TECHNOLOGIES AUSTRALIA PTY LTD, AUSTRAL Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ABRINK, ULF;NILSSON, JENS GUSTAV;ANDERSSON, HAKAN;REEL/FRAME:046292/0935 Effective date: 20071026 |
|
AS | Assignment |
Owner name: BANK OF AMERICA, N.A., NORTH CAROLINA Free format text: NOTICE OF ASSIGNMENT OF SECURITY INTEREST;ASSIGNOR:UBS AG, STAMFORD BRANCH;REEL/FRAME:060204/0216 Effective date: 20220524 |