Gaming Device Including Configurable Communication Unit
Gaming devices including a configurable communication units are described herein. In one embodiment, the gaming device includes a program to conduct gaming operations and to pass a protocol request for transmission over a gaming network. The device can also include a protocol interface to receive the protocol request and to further pass the protocol request to one of a plurality of protocol units, wherein each of the plurality of protocol units is capable of converting the protocol request from a first communication protocol to a second communication protocol.
Latest WMS Gaming Inc. Patents:
- Removable module and adapter for electronic gaming machine and associated methods
- Controlling mechanical outcome indicators of gaming machines
- Gaming Machine Having A Community Game With Side Wagering
- Integrating other players wins into a wagering game
- CONTROLLING MECHANICAL OUTCOME INDICATORS OF GAMING MACHINES
This application claims the priority benefit of U.S. Provisional Application Ser. No. 60/715,642, filed Sep. 9, 2005, the contents of which are incorporated herein by reference.
LIMITED COPYRIGHT WAIVERA portion of the disclosure of this patent document contains material to which the claim of copyright protection is made. The copyright owner has no objection to the facsimile reproduction by any person of the patent document or the patent disclosure, as it appears in the U.S. Patent and Trademark Office file or records, but reserves all other rights whatsoever. Copyright 2005, 2006 WMS Gaming, Inc.
FIELDThis invention relates generally to the field of wagering game networks and more particularly to data communications in wagering game networks.
BACKGROUNDA wide variety of computerized wagering game machines are now available to casino operators and players. Computerized wagering game machines range from slot machines to games that are traditionally played live, such as poker, blackjack, roulette, etc. These computerized games provide many benefits to game owners and gamblers, including increased reliability over mechanical machines, greater game variety, improved sound and animation, and lower overall management cost. Computerized wagering game machines must be designed with many of the same concerns as their mechanical and table game ancestors—they must be fair, they should provide sufficient feedback to make the games fun, and they must meet a variety of gaming regulations to ensure that both the machine owner and player are fairly treated. Further, to ensure success in a competitive gaming market, they should provide gaming experiences that are as attractive as those of older mechanical gaming machines.
Wagering game machines and various gaming systems (e.g., progressive jackpot systems, player tracking systems, content delivery systems, etc.) can be connected together to form gaming networks. Communications between wagering game machines and systems can be difficult, especially when the wagering game machines and gaming systems do not conform to a single communication protocol (e.g., because they are from different manufactures). Communications can be further complicated because different gaming machines use different electrical hardware and software.
SUMMARYGaming devices including a configurable communication units are described herein. In one embodiment, the gaming device includes a program to conduct gaming operations and to pass a protocol request for transmission over a gaming network. The device can also include a protocol interface to receive the protocol request and to further pass the protocol request to one of a plurality of protocol units, wherein each of the plurality of protocol units is capable of converting the protocol request from a first communication protocol to a second communication protocol.
The present invention is illustrated by way of example and not limitation in the Figures of the accompanying drawings in which:
Systems and methods for configuring gaming devices for using different communication protocols are described herein. This description of the embodiments is divided into five sections. The first section provides an introduction to embodiments of the invention. The second section describes example gaming devices and networks, while the third section describes example operations performed by some embodiments of the gaming devices. The fourth section describes embodiments of a gaming machine and the fifth section provides some general comments.
IntroductionGaming networks are often limited to gaming devices that support specific communication protocols. For example, a casino's gaming network may include gaming machines (a.k.a. wagering game machines) and accounting servers that are set-up for exchanging accounting information using a proprietary protocol. When the casino adds new gaming machines to their gaming network, they typically add gaming machines that support the proprietary protocol. Embodiments of the invention enable gaming operators to configure gaming devices to support a variety of communication protocols, including proprietary protocols and other protocols that are compatible with existing network devices.
The application programs 104 can include software for conducting casino style wagering games, such as slots, video poker, blackjack, roulette, keno, etc. Additionally, the application programs 104 can include a protocol-specific client that requires a particular protocol for transmitting/receiving information. For example, the application programs 104 can include an http client, such as a web browser.
The protocol interface 106 can be an application programming interface for passing data from the application programs 104 to selected protocol units. In one embodiment, each of the protocol units can convert requests from one protocol format into another. For example, protocol unit 108 can convert a web browser's http requests into SAS requests, while protocol unit 109 can convert SAS requests into BOB requests.
The protocol stack 118 can include protocols from all layers, including the application layer, transport layer, and media layer. The protocol stack 118 can service protocol requests and transmit data over a gaming network.
The dataflow of
Operators can use embodiments of the invention for configuring gaming devices to support any suitable communication protocol. As a result, gaming operators can configure network gaming devices (e.g., gaming servers, gaming machines, etc.) to compatibly operate with existing or newly developed communication protocols. These and other features will be described in more detail below. The next section describes an example system architecture and operating environment.
Example System Architecture and Operating EnvironmentThe section describes an example system architecture and operating environment with which embodiments can be practiced. In particular,
The gaming machine 220 can conduct wagering games, such as slots, blackjack, poker, roulette, etc. The gaming asset repository 202 can distribute gaming assets (e.g., games, audio, video, pay tables, etc.) to the gaming machine 220, while the AOM server 204 can collect information from gaming machine 220. Although
The gaming machine 220 includes application/system programs 214, configuration unit 216, and a communication unit 212. The communication unit 212 includes an internal protocol unit interface 210, protocol units 208, an external protocol unit interface 213, and protocol layers 211. The AOM server 204 and gaming asset repository 202 also include these components.
The communication units 212 can transmit and receive data across the network 200. When transmitting data, the communication unit's internal protocol unit interface 210 can receive data (e.g., a protocol request) from the applications/system programs 214 and pass the data to a selected protocol unit 208. The selected protocol unit 208 can format the data according to a communication protocol and pass it to the external protocol unit interface 213. The external protocol unit interface 213 can pass the data to the protocol layers 211, which can process and transmit the data to another gaming device over the gaming network. The protocol units 208 can format data according to communication protocols from any protocol layer (e.g., application layer, presentation layer, session layer, etc.). Furthermore, the communications unit 212 can include any number of protocol units 208, where each protocol unit 208 supports a different communication protocol. For example, one protocol unit 208 can convert data into the BOB protocol format, while another protocol unit converts data into SuperSAS protocol format, and yet another one converts data into a proprietary protocol format.
The communication units 212 can also receive data. The protocol layers 211 can receive protocol-formatted data over a network channel, process it, and pass the data to an external protocol unit interface 213. The external protocol unit interface can pass the data to a protocol unit 208. The protocol unit 208 can convert the data into a protocol format understood by the application/system programs 214 (e.g., http, https, SAS, etc.) and pass the converted data to the internal protocol unit interface 210. The internal protocol unit interface 210 can pass the data to the application/system programs 214.
In one embodiment, the internal protocol unit interface 210 and/or the external protocol unit interface 213 can be application programming interfaces. In another embodiment, the internal protocol unit interface 210 and/or the external protocol unit interface 213 can be software modules that pass data to and from selected protocol units 208. In one embodiment, the protocol layers 211 implement communication protocols for several protocol layers (e.g., application layer, transport layer, application layer, etc.).
In one embodiment, protocol units can be added without rebooting the gaming machine 220 (i.e., protocol units can be plug-ins). In one embodiment, the internal protocol unit interface 210, external protocol unit interface 213, and protocol units 208 can be configured though the configuration unit 216. Operations for configuring the internal protocol unit interface 210, external protocol unit interface 213 and protocol units 208 are described in greater detail in the next section.
While
The components of each casino 318 can communicate over wired 310 and/or wireless connections 312. Furthermore, they can employ any suitable connection technology, such as Bluetooth, 802.11, Wireless Application Protocol (WAP), Ethernet, public switched telephone networks, etc.
In some embodiments, the gaming machines 320 and other network devices transmit and receive information using the configurable communication unit architecture described above.
Operations performed for configuring the communication units are described in the next section.
Example OperationsThis section describes operations performed by embodiments of the invention. In the discussion below, the flow diagrams will be described with reference to the block diagrams presented above. In certain embodiments, the operations are performed by instructions residing on machine-readable media (e.g., software), while in other embodiments, the operations are performed by hardware and/or other logic (e.g., digital logic).
At block 402, a determination is made about whether manual configuration will be performed. For example, the configuration unit 216 presents a menu asking whether an operator wants to manually configure the communication unit's communication protocols. If there will be manual configuration, the flow continues at block 404. Otherwise, the flow continues at block 412. In one embodiment, no determination is made and the flow begins at block 404 or block 412.
At block 404, available communication protocols are presented. For example, the configuration unit 216 presents a menu indicating communication protocols that are supported by the protocol units 208. The flow continues at block 406.
At block 406, a protocol selection is received. For example, the configuration unit 216 receives a menu selection indicating a selected communication protocol. In one embodiment, the protocol selection is associated with certain of the application/system programs 214. In one embodiment, the selection is made by a gaming network administrator. The flow continues at block 408.
At block 408, the communication unit is configured to transmit and receive data according to the protocol selection. For example, the configuration unit 216 configures the internal protocol unit interface 210 to pass data from the application/system programs 214 to a protocol unit 208 that can convert the data into a the selected protocol. The configuration unit 216 can similarly configure the external protocol unit interface. Configuring the communication unit 212 can include disabling existing settings.
In one embodiment, the configuration unit 216 configures the internal protocol unit interface 210 to pass data associated with certain application/system programs to one protocol unit, while passing other data associated with other application/system programs to another protocol unit. Similarly, the configuration unit 216 can configure the external protocol unit interface 210 to pass data associated with certain application/system programs to one protocol unit, while passing data associated with other application/system programs to another protocol unit. From block 408, the flow ends.
At block 412, discovery packets are exchanged with network devices to determine what protocols can be used for communicating over the gaming network. For example, the gaming machine's communication unit 212 transmits a discovery packet to the AOM server 204, asking what communication protocol it uses for transmitting data over the gaming network. In another embodiment, the communication unit 212 broadcasts discovery packets to all network devices. The communication unit 212 receives discovery replies from the network devices, where the replies indicate what communication protocols are needed (e.g., http, SuperSAS, BOB, etc.). The flow continues at block 414.
At block 414, the communications unit is configured to communicate data according to the discovered communication protocols. For example, the configuration unit 216 configures the internal protocol unit interface 210 to pass data from the application/system programs to a protocol unit that supports the discovered protocol. The configuration unit 216 can similarly configure the external protocol unit interface 213. From block 414, the flow ends.
While
At block 502, communications are received over a dynamically configurable channel. For example, the gaming machine's communication unit 212 receives data from a network device (e.g., the AOM server 204) over a dynamically configurable channel. In one embodiment, the protocol layers 211 receive the data through a connection to a gaming network. The flow continues at block 504.
At block 504, a determination is made about whether the communications are formatted according to a supported communication protocol. For example, the communication unit's external protocol unit interface 213 determines whether the communications are formatted according to a protocol supported by one of the protocol units 208. That is, the external protocol interface 213 determines whether one of the protocol units 208 can convert the communications into a protocol understood by the application/system programs 214. If the communications are not formatted according to a supported communication protocol, the flow continues at block 510. Otherwise, the flow continues at block 506.
At block 506, if needed, protocols are de-configured. For example, if needed, the configuration unit 216 disables the external protocol unit interface 213 from forwarding data to a protocol unit 208 that does not support the needed communication protocol. The flow continues at block 508.
At block 508, the communication unit 212 is configured for receiving communications formatted according to the supported protocol. For example, the configuration unit 216 configures the external protocol unit interface 213 to pass communications sent from a particular network device to a protocol unit 208 that supports the needed communication protocol. The protocol unit 208 can in turn pass the communications to the internal protocol unit interface 210, which delivers the communications to one of the application/system programs 214. From block 508, the flow ends.
At block 510, an indication of the supported communication protocol is transmitted. For example, the communication unit 212 transmits a message back to the sender indicating what communication protocol(s) are supported. The sender can use this information to configure itself to communicate using a protocol supported by the communication unit 212. From block 510, the flow ends.
The description continues with a discussion of embodiments that can request and receive gaming content using selected communication protocols. The description continues with
At block 602, a determination is made, based on a command or script, that gaming content is to be requested and received from a gaming content source. For example, one of the application/system programs 214 executes a command or script that indicates the gaming machine 220 is to receive gaming content from the gaming asset repository 202. The flow continues at block 604.
At block 604, a communication protocol for the gaming content is selected, where the selection is based on the command or script. For example, the command or script indicates a communication protocol that is understood by the gaming content repository 202. As a result, the configuration unit 216 selects the communication protocol indicated in the command or script. The flow continues at block 606.
At block 606, a protocol interface is configured. For example, the configuration unit 216 configures the external protocol unit interface 213 to receive the gaming content and forward it to a protocol unit 208 that supports the needed communication protocol. Additionally, the configuration unit 216 can configure the internal protocol unit interface 210 to receive the gaming content from the selected protocol unit 208 and forward it to the application/system programs 214. The flow continues at block 608.
At block 608, the communication unit 212 requests and receives the gaming content from a network device using the needed communication protocol. In one embodiment, the application/system programs 214 send a gaming content request to the internal protocol unit interface 210, which passes the request to a protocol unit 208 that supports the needed communication protocol. The protocol unit 208 converts the request into the selected protocol format and forwards the request to the external protocol unit interface 213. The external protocol unit interface 213 forwards the request to the protocol layers 211, which transmit the request over a gaming network to the gaming asset repository 202.
In one embodiment, the communication unit's protocol layers 211 receive the gaming content from the gaming asset repository 202. The protocol layers 211 forward the gaming content to the external protocol unit interface 213 which then forwards the request to a protocol unit 208 that supports the needed communication protocol. The protocol unit 208 converts the gaming content into a protocol format understandable to the application/system programs 214 and forwards the gaming content to the internal protocol unit interface 210, which delivers it to the application/system programs 214. The flow continues at block 610.
At block 610, the gaming content is stored. For example, the communication unit 212 stores the gaming content in a local data store (not shown). From block 610, flow ends.
Example Gaming MachineThis section describes features of a gaming machine which can be used with embodiments of the invention.
The CPU 726 is connected to a network interface unit 724, which is connected to a gaming network 704. The CPU 726 is also connected to an input/output (I/O) bus 721 which, facilitates communication between the system components and the CPU 726.
The I/O bus 721 is connected to payout mechanism 708, secondary display 710, primary display 712, money/credit detector 714, touchscreen 716, post-buttons 718, information reader 720, and gaming voucher printer 722.
According to some embodiments, the gaming machine 706 can include additional peripheral devices and/or more than one of each component shown in
According to some embodiments, a plurality of gaming machines can be connected together in a gaming network. The gaming network can include gaming machines and other gaming devices, such as gaming configuration servers, accounting servers, wide area progressive servers, etc. This discussion of
The gaming machine 800 can be mounted on a stand 842 or it can be constructed as a pub-style tabletop game (not shown). As a result, the gaming machine 800 can be operated while players are standing or seated. Furthermore, the gaming machine 800 can be constructed with varying cabinet and display designs. The gaming machine 800 can incorporate any primary game such as slots, poker, or keno, and additional bonus round games. The symbols and indicia used on and in the gaming machine 800 can take mechanical, electrical, or video form.
As illustrated in
As shown in
A player may end the gaming session or “cash-out” by pressing a cash-out button 818. When a player cashes-out, the gaming machine 800 dispenses a voucher or currency corresponding to the number of remaining credits. The gaming machine 800 may employ other payout mechanisms such as credit slips (which are redeemable by a cashier) or electronically recordable cards (which track player credits), or electronic funds transfer.
The gaming machine also includes a primary display unit 804 and a secondary display unit 810 (also known as a “top box”). The gaming machine may also include an auxiliary video display 840. In one embodiment, the primary display unit 804 displays a plurality of video reels 820. According to embodiments of the invention, the display units 804 and 810 can include any visual representation or exhibition, including moving physical objects (e.g., mechanical reels and wheels), dynamic lighting, and video images. In one embodiment, each reel 820 includes a plurality of symbols such as bells, hearts, fruits, numbers, letters, bars or other images, which correspond to a theme associated with the gaming machine 800. Additionally, the gaming machine 800 also includes an audio presentation unit 828. The audio presentation unit 828 can include audio speakers or other suitable sound projection devices.
In one embodiment, the gaming machine 800 includes components for transmitting and receiving gaming data according to different communication protocols, as described herein.
GeneralIn this description, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. In other instances, well-known circuits, structures and techniques have not been shown in detail in order not to obscure the understanding of this description. Note that in this description, references to “one embodiment” or “an embodiment” mean that the feature being referred to is included in at least one embodiment of the invention. Further, separate references to “one embodiment” in this description do not necessarily refer to the same embodiment; however, neither are such embodiments mutually exclusive, unless so stated and except as will be readily apparent to those of ordinary skill in the art. Thus, the present invention can include any variety of combinations and/or integrations of the embodiments described herein. Each claim, as may be amended, constitutes an embodiment of the invention, incorporated by reference into the detailed description. Moreover, in this description, the phrase “example embodiment” means that the embodiment being referred to serves as an example or illustration.
Herein, block diagrams illustrate example embodiments of the invention. Also herein, flow diagrams illustrate operations of the example embodiments of the invention. The operations of the flow diagrams are described with reference to the example embodiments shown in the block diagrams. However, it should be understood that the operations of the flow diagrams could be performed by embodiments of the invention other than those discussed with reference to the block diagrams, and embodiments discussed with references to the block diagrams could perform operations different than those discussed with reference to the flow diagrams. Additionally, some embodiments may not perform all the operations shown in a flow diagram. Moreover, although the flow diagrams depict serial operations, certain embodiments could perform certain of those operations in parallel.
Claims
1. A gaming device comprising:
- a program to conduct gaming operations and to pass a protocol request for transmission over a gaming network; and
- a protocol interface to receive the protocol request and to further pass the protocol request to one of a plurality of protocol units, wherein each of the plurality of protocol units is capable of converting the protocol request from a first communication protocol to a second communication protocol.
2. The gaming device of claim 1, wherein an application of the gaming device understands the second communication protocol.
3. The gaming device of claim 1, further comprising:
- a configuration unit to receive configuration information indicating which of the plurality of protocol units is to convert the protocol request.
4. The gaming device of claim 1, wherein the protocol interface includes an application programming interface.
5. The gaming device of claim 1, wherein the gaming operations include conducting a wagering game.
6. The gaming device of claim 1, wherein the first communication protocol and the second communication protocol are selected from the group consisting of BOB, SuperSAS, hypertext transport protocol (http), secure http, and file transfer protocol.
7. A computer-implemented method comprising:
- receiving, in a gaming device, an indication that one of a set of communication protocols should be used to communicate over a gaming network; and
- configuring the gaming device to transmit and receive gaming data over the gaming network, wherein the gaming data is formatted according to the one of the set of communication protocols.
8. The computer-implemented method of claim 7, further comprising:
- presenting the set of available communication protocols; and
- receiving a selection of one of the available communication protocols, wherein the indication is based on the selection.
9. The computer-implemented method of claim 7, further comprising:
- discovering what communication protocol can be used, wherein the indication is based on the discovering of what communication protocol can be used.
10. The computer-implemented method of claim 9, wherein the discovering includes transmitting a discovery communication to one or more other gaming devices on the gaming network, the discovery communication asking what communication protocol the one or more other gaming devices uses for transmitting data over the gaming network.
11. The computer-implemented method of claim 7, wherein the configuring of the gaming device includes disabling existing settings.
12. The computer-implemented method of claim 5, wherein the method is performed by a machine as a result of the machine executing instructions included in a machine-readable medium.
13. A computer-implemented method comprising:
- receiving communications in a destination gaming device, wherein the communications are received from a source gaming device;
- determining whether the communications are formatted according to one of a set of convertible communication protocols; and
- if the first communications are formatted according to one of the set, configuring the destination gaming device to convert subsequent communications received from the source gaming device into communications formatted according to a protocol understandable by an application of the destination gaming device.
14. The computer-implemented method of claim 13, further comprising:
- if the first communications are not formatted according to one of the set, transmitting an indication of one or more of the set of supported protocols to a sender of the communications.
15. The computer-implemented method of claim 13, wherein the first communications and the subsequent communications are all received from a certain application of the source gaming device.
16. The computer-implemented method of claim 13, wherein the gaming device includes a protocol unit for each of the set of convertible communication protocols.
17. The computer-implemented method of claim 13, wherein the method is performed by a machine as a result of the machine executing instructions included in a machine-readable medium.
18. A computer-implemented method comprising:
- determining that gaming content should be received from a gaming content source over a gaming network;
- selecting a first communication protocol for communicating with the gaming content source;
- selecting one of a set of available protocol units, wherein the one of the set can convert data from a second communication protocol to the first communication protocol, and wherein the one of the set can convert data to the second communication protocol from the first communication protocol;
- requesting the gaming content using the protocol unit; and
- receiving the gaming content using the protocol unit.
19. The computer-implemented method of claim 18, wherein the selecting of the communication protocol is based on data in a script.
20. The computer-implemented method of claim 18, wherein the requesting of the gaming content using the protocol unit includes passing a request to the protocol unit, wherein the request was formatted according to the second communication protocol, and wherein the protocol unit re-formatted the request according to the first communication protocol.
21. The computer-implemented method of claim 18, wherein the protocol unit received the gaming content formatted according to the first communication protocol and re-formatted the gaming content according to the second communication protocol.
22. The computer-implemented method of claim 18, wherein the method is performed by a machine as a result of the machine executing instructions included in a machine-readable medium.
Type: Application
Filed: Sep 6, 2006
Publication Date: Oct 23, 2008
Applicant: WMS Gaming Inc. (Waukegan, IL)
Inventor: Mark B. Gagner (West Chicago, IL)
Application Number: 12/066,214
International Classification: A63F 9/24 (20060101);