BOB Tech Demo 2003 G2E – Las Vegas. Agenda Best of Breed – a layering of standards Standards,...

Preview:

Citation preview

BOB Tech DemoBOB Tech Demo

2003 G2E – Las Vegas

AgendaAgenda

Best of Breed – a layering of standards

Standards, messaging, protocols and why you care

From the bottom up - the slot floor topology of BoB explained

Messaging for the Casino Gaming industry XML– the good stuff

What do you see in front of you?

Real, working hardware demonstration

You question, we’ll answer

Physical andData Link

Network

Transport

Application

User

SSL DNS DHCP

LDAP NTP

TCP HTTP SOAP UDP

IP

LAN Ethernet

XML BoB

BoB Protocol Layers (stack)BoB Protocol Layers (stack)

GSA’s contribution

Protocol GlossaryProtocol Glossary

Protocol Usage and Benefits to BoB

DHCP Dynamic Host Configuration Protocol

Automatic network admission and IP Address assignment for gaming machines and host systems.

LDAP Lightweight Directory Access Protocol

Automatic configuration of gaming machines and host systems. Automatic notifications of configuration updates. Can store arbitrary binary objects including images, software updates, etc. Provides a secure access control mechanism to allow only authorized users to gain access to the portions of the LDAP directory they are allowed to access.

NTP Network Time Protocol

Automatic synchronization of time across all gaming machines and host systems in a gaming network.

SOAP/HTTP/TCP Simple Object Access Protocol/Hypertext Transfer Protocol/Transmission Control Protocol

Transport layer protocols to carry point-to-point ordered and reliable BoB XML messages between gaming machines and host systems.

XML Extensible Markup Language

All messages between gaming machines and host systems are encoded in XML. XML allows a flexible and extensible method of encoding data.

XML Schema The BoB protocol defines a set of XML schema. A schema is a blueprint for what an XML document can contain.

SSL Secure Sockets Layer

All messages between gaming machines and host systems are secured using SSL. SSL is used to authenticate both ends of a communication session and to encrypt all traffic flowing on that session.

Why XML?Why XML?

BoB strategy is to use “Off the Shelf” standards from computer industry Reduces engineering costs – training, etc Proprietary solutions are more difficult to implement and incompatible on the

casino floor Enables manufacturers to deliver products more quickly and focus on value

added game content

XML is a language useful for defining data exchange XML is a rich language for expressing data structures and defining the

interface (schema) Easily extensible to ensure backwards compatibility

Implementing Products with XML Rapid development environment Numerous tools support XML including most major browsers Integrates well with HTML and other Web standards Human readable and understandable protocol traces Allows automatic data validation against schema for development and

debugging

Sample BoB Message ExchangesSample BoB Message Exchanges

GameMachine

2) BOB_MSG(GM_ID, Meters, games_played)

3) BOB_MSG_RESPONSE(SUCCESS)

BOB Meter ChangedEvent Notification

BoB Server(Accounting)

1) Player initiates game

GameMachine

1) BOB_MSG(GM_ID, getMeters,AllRevenueMeters)

2) BOB_MSG_RESPONSE(GM_ID,Meters, AllRevenueMeters)

BOB Meter Poll

BoB Server(Accounting)

Top SchemaTop Schema

Header SchemaHeader Schema

Body SchemaBody Schema

Meter SchemaMeter Schema

Example XML DocumentExample XML Document

  <?xml version="1.0" encoding="UTF-8" ?> -

<bobMessage>

<bobHeader> 

<messageType>response</messageType>  

<messageId>87654321</messageId>  

<messageDate>2003-07-21</messageDate>  

<messageTime>14:20:0005:00</messageTime>  

<commandClass>meters</commandClass>  

<commandCode>meterInfo</commandCode>  

</bobHeader>-

<bobBody errorCode="MS00" errorText="Command Successful.">-

<meters machine="12345" device="1">-

<meterInfo> 

<performanceMeter name="coinIn" denom="01" rollover="100000000">500000</performanceMeter>  

<performanceMeter name="coinIn" denom="02" rollover="100000000">400000</performanceMeter>  

<performanceMeter name="coinIn" denom="03" rollover="100000000">300000</performanceMeter>  

<performanceMeter name="coinIn" denom="04" rollover="100000000">200000</performanceMeter>  

</meterInfo> 

</meters> 

</bobBody> 

</bobMessage>

GSA – Best of BreedGSA – Best of Breed

Back Office

Systems

Bally Systems

Atronic

Foxwoods

BOB Messaging

Gaming Machines

BoB - Floor TopologyBoB - Floor Topology

Slot Accounting Player Tracking Cashless

Ethernet

DHCP ServerLDAP ServerBonusing

Casino Floor

Secured

Back Office Systems Services

BoB - Network ArchitectureBoB - Network Architecture

EthernetEthernet

Ethernet

BoB Server(Player Tracking)

NTP Server(Network Time

Synchronization)

DHCP Server(Automatic Network

Administration)

LDAP Server(Provisioning/Configuration)

Hub/Switch

Router or L3/L2 Switch

Hub/Switch Hub/Switch

GM1 GM2 GM3 GM4 GM5 GM6 GM7 GM8

Back Office

Gaming Floor

Wiring Closet

Wiring Closet

Wiring ClosetWiring Closet

BoB Server(Accounting,

Event Reporting)

DNS Server(Network Name

Resolution)

BoB – Gaming Machine Bootstrap ProcessBoB – Gaming Machine Bootstrap ProcessGame

MachineDHCP Server LDAP Server

1) DHCP DISCOVER(GM_ID)

4) DHCP OFFER(GM_IP,LDAP_SERVER_IP,NTP_SERVER_IP)

BOB Gaming MachineBootstrap Sequence

2) SEARCH_REQUEST(GM_ID)

3) SEARCH_RESPONSE(SUCCESS)

5) DHCP REQUEST(GM_IP)6) SEARCH_REQUEST(GM_ID)

7) SEARCH_RESPONSE(SUCCESS)8) DHCP ACK(GM_IP)

11) BIND_REQUEST(GM_ID)

NTP Server

12) BIND_RESPONSE(SUCCESS)

9) NTP_READ()

10) NTP_READ_RESPONSE()

13) SEARCH_REQUEST(GM_ID)

14) SEARCH_RESPONSE(SUCCESS)

Live DemoLive Demo

GameMachine

2) BOB_MSG(GM_ID, Meters, games_played)

3) BOB_MSG_RESPONSE(SUCCESS)

BoB Meter ChangedEvent Notification

BoB Server(Accounting)

1) player initiates game

Q & AQ & A

2003 G2E – Las Vegas

Recommended