Gaming Standards Association
description
Transcript of Gaming Standards Association
Gaming Standards Association
PLATINUM MEMBERS
Third-Party Game Interface
Traditional View of an iGaming System
iGaming PlatformPlayer
Registration
Geo-Location
Player Accounts
Game Services
Other Services
Single Monolithic
System
Evolving View of an iGaming System
iGaming PlatformPlayer
Registration
Geo-Location
Player Accounts
Game Services
Other Services
Player Verification
Location Verification
Payment Processing
Independent External Systems
Current View of an iGaming System
iGaming PlatformPlayer
Registration
Geo-Location
Player Accounts
Game Services
Other Services
Player Verification
Location Verification
Game Services Payment Processing
Externalization of Game Services
Multi-Game Support
iGaming PlatformPlayer
Registration
Geo-Location
Player Accounts
Other Services
Game Service #2
Multiple Game Services from Multiple Manufacturers
Game Service #1
Game Service #3
Multi-Platform Support
iGaming Platform #1
Player Accounts
Game Service #2
Multiple iGaming Platforms Accessing the Same Game
Services
Game Service #1
Game Service #3
iGaming Platform #2
Player Accounts
Why Is This Good? Accountability!iGaming Platform
Player Registration
Geo-Location
Player Accounts
Game Services
Other Services
Player Verification
Location Verification
Game Services Payment Processing
Independent Roles and
Responsibilities
Why Is This Good? Accountability! Game Services can be controlled and
operated by independent third-parties.
This creates an arms-length relationship between the iGaming operator and the game supplier.
Activity reported by Game Services can be audited and reconciled against the activity reported by iGaming Platforms.
Game Services and iGaming Platforms can be independently tested and approved.
Why Does This Sound Familiar?
Slot Machine Wagering Accounts,Ticket-In-Ticket-Out,Progressive Jackpots
Independent Audit and
Reconciliation
Standards!
Where Does GSA Fit In? In 2013, GSA started the Online Gaming
Committee (OGC). The OGC plans to address a wide range of topics, including: Third-Party Game Interface – integration of third-
party game services into iGaming platforms.
Central Monitoring – regulatory monitoring of iGaming operations.
External Interfaces – interfaces between iGaming platforms and geo-location providers, payment processors, etc.
Brick & Mortar – integration with existing land-based operations.
Third-Party Game Interface
iGaming PlatformPlayer
Registration
Geo-Location
Player Accounts
Game Services
Other ServicesThird-Party Game Services
iGaming Console
Third-PartyGame Content
Proprietary
Prop
riet
ary
Launch URL
3pC I
3pPI
1
2
3
TerminologyThird-Party Game Interface
Terminology Player Session
A player session is established when the player successfully logs onto the iGaming Platform.
The player session ends when the player logs off or is disconnected from the iGaming Platform.
Player Account A player may have multiple accounts on the iGaming
Platform. For example, a dollar-denominated account and a Euro-
denominated account. Each Player Account is denominated in a single currency.
Account Balances A player may have multiple balances within a single
Player Account. For example, a cash balance and a promotional balance.
Terminology Skin
The brand offered by the iGaming Platform. Each Player Session is associated with a specific Skin. An iGaming Platform may support more than one Skin. A Third-Party Game Service may also support more than one Skin.
Affiliate The marketing channel responsible for bringing the
player to the iGaming site. For example, an external licensed intermediary. Each Player Session is associated with a specific Affiliate.
Jurisdiction The gaming jurisdiction in which the player is located.
Each Player Session is associated with a specific Jurisdiction. The Jurisdiction may change during the Player Session.
Terminology Distribution Channel
The distribution channel through which the game can be played.
For example, PC, tablet, mobile, etc.
Presentation Format The presentation format in which the game can be
rendered. For example, HTML or Flash.
Betting Configuration A specific configuration for the game.
Maximum bet, minimum bet, bet increments, etc. Defined by the manufacturer; cannot be changed.
Terminology Game Session
A Game Session is established when a game is launched on the Third-Party Game Service.
Multiple Game Sessions can be launched during a Player Session.
Game Cycle A Game Cycle is started when a player places a wager
on the game. Multiple bets can be made during a Game Cycle. The Game Cycle ends once the outcomes of the bets are known.
Game Cycle Group Multiple Game Cycles may be dependent of the same
outcome. For example, roulette, sports betting, etc.
TerminologyPlayer Session #1
Game Session #1Game Cycle #1
Game Cycle Group #1
Game Cycle #3Game Cycle Group
#2
Game Session #3
Game Cycle #5
Player Session #2
Game Session #2Game Cycle #2
Game Cycle Group #1
Game Cycle #4Game Cycle Group
#2
Launch URLThird-Party Game Interface
Launch URL
iGaming PlatformPlayer
Registration
Geo-Location
Player Accounts
Game Services
Other ServicesThird-Party Game Services
iGaming Console
Third-PartyGame Content
Proprietary
Prop
riet
ary
Launch URL
3pC I
3pPI
Launch URL
Launch Parameters The Launch URL contains a series of
standard parameters. Third-Party Game Service Identifier iGaming Platform Identifier Skin Identifier Game Identifier Betting Configuration Identifier Distribution Channel Type Presentation Format Type Player Account Identifier Locale (Language) Code Currency Code
The Launch URL may also contain manufacturer-specific parameters.
Secure Token The Launch URL also contains a Secure
Token.
The Secure Token uniquely identifies the specific instance of a game that was launched for a player.
The Secure Token is included in most requests from the Third-Party Game Service to the iGaming Platform.
For added security, the iGaming Platform can change the Secure Token when it responds to a request from the Third-Party Game Service.
Secure Token
iGaming Platform
Third-Party Game Services
iGaming Console
Third-PartyGame Content
Proprietary
Prop
riet
ary
Launch URL
3pC I
3pPI
Secure Token
Secure Token Generated
Secure Token Verified
Launch URL The Launch URL is formed by appending the
parameters to the base URL of the Third-Party Game Service.
The Launch URL is presented to the Third-Party Game Service in an HTTP GET command.
If the Launch URL is valid, the response to the HTTP command contains the Third-Party Game Content (or a loader for the game content). If the Launch URL is invalid, the response contains an
appropriate HTTP error code.
Launch URL Example
http://www.gameService.com/playGame
?gsId=ABC&igpId=Operator&skinId=OurSkin&gameId=ABC_1234&presentType=3PI_internet&channelType=3PI_HTML5&secureToken=A1B2C3D4E5F60718&accountId=Z100187&localeCode=en-US¤cyCode=USD
Game PlayThird-Party Game Interface
Third-Party Platform Interface
iGaming PlatformPlayer
Registration
Geo-Location
Player Accounts
Game Services
Other ServicesThird-Party Game Services
iGaming Console
Third-PartyGame Content
Proprietary
Prop
riet
ary
Launch URL
3pC I
3pPI
Third-Party Platform Interface
Game Session Start Starting a Game Session is a two-step
process.
First, the player and game information presented in the Launch URL is verified by the iGaming Platform.
The iGaming Platform identifies the Affiliate and Jurisdiction in its response.
The iGaming Platform may also include player-specific information in its response, such as nickname, gender, etc.
Second, the Third-Party Game Service starts a new Game Session for the player, reporting the information about the Game Session to the iGaming Platform.
If necessary, the iGaming Platform can force the Third-Party Game Service to terminate a Game Session. For example, the player moves to another jurisdiction.
Game Session StartiGC 3pGS iGP
Launch URL
verifyPlayerSession
startGameSession
playerSessionAck
Create Game Session
gameSessionAck
Verify Player Session
Record Game Session
Launch Game
Monetary Transactions During game play, Monetary Transactions
are initiated by the Third-Party Game Service and then approved by the iGaming Platform.
Secure Token. Player Account Identifier. Game Session Identifier. Game Cycle Identifier. Game Cycle Group Identifier.
Transaction Identifier. Transaction Amount. Transaction Type – Debit or Credit. Transaction Category – Wager, Win, etc. Transaction Description.
Multiple transactions per
command are allowed
Monetary Transactions If a Monetary Transaction is approved, the
iGaming Platform assigns: Reference Identifier. Transaction Day.
If necessary, the Third-Party Game Service can request that the iGaming Platform cancel specific Monetary Transactions (or a whole game cycle). Cancellation Identifier. Cancellation Day.
Monetary Transactions When the Game Cycle is finished, the Third-
Party Game Service sets a special indicator in the Monetary Transaction. Game Cycle Finished.
In its response, the iGaming Platform assigns: Revenue Day.
If the Game Cycle finishes abnormally, the Third-Party Game Service can include an exception code.
Simple Game Play3pGC 3pGS iGP
Start Game
moneyTransactionsEnd
Game Cycle
moneyTransactionsAckRecordTransactions
Game Result
DetermineGame
Outcome
Start Game Cycle
RecordApproval
Transaction Day
Revenue Day
Complex Game Play – Part 13pGC 3pGS iGP
Initial Wager
moneyTransactions
moneyTransactionsAckRecordTransactions
Confirm Wager
Start Game Cycle
Additional Wager
moneyTransactions
moneyTransactionsAckRecordTransactions
Confirm Wager
Transaction Day
Complex Game Play – Part 23pGC 3pGS iGP
Wagers Complete
moneyTransactionsEnd
Game Cycle
moneyTransactionsAckRecordTransactions
Game Result
DetermineGame
Outcome
Revenue Day
Unfinished Game CyclesThird-Party Game Interface
Unfinished Game Cycles Unfinished game cycles are inevitable!
The player closes his/her browser. The player loses his/her internet connection. The game outcome is determined at some point in the
future, i.e. sports betting.
This leaves the Third-Party Game Platform with three choices:1. Void the Game Cycle and cancel any Monetary
Transactions already recorded for the Game Cycle.2. Auto-complete the Game Cycle and record any
additional Monetary Transactions required to finish the Game Cycle.
3. Suspend the Game Cycle and let the player complete it later.
Unfinished Game Cycles Suspended games will remain unfinished
until:1. The player returns and completes the Game Cycle.2. The Third-Party Game Service terminates the Game
Cycle.3. The iGaming Platform directs the Third-Party Game
Service to terminate the Game Cycle.
Game design, as well as operational and jurisdictional requirements, will determine whether unfinished Game Cycles should be voided, auto-completed, or suspended. Likewise, game design, as well as operational and
jurisdictional requirements, will determine whether terminated Game Cycles should be voided or auto-completed.
Unfinished Game Cycles
Game Cycle
Interrupted
Game CycleSuspended
Game Cycle Voided
Game CycleAuto-
Completed
Game Cycle Restored
Game CycleTerminated
Game Cycle Auto-
Completed
Game CycleVoided
Reconciliation Commands Reconciliation commands are used to
complete unfinished Game Cycles.
Reconciliation commands are the same commands as used for Monetary Transactions except that no Secure Token is required. It is assumed that the Game Session has ended and that
the Secure Token may have been discarded. A Game Session and Secure Token are required to start a
Game Cycle and place wagers, but not to complete the Game Cycle.
Unfinished Game Cycle – Part 13pGC 3pGS iGP
Initial Wager
moneyTransactions
moneyTransactionsAckRecordTransactions
Confirm Wager
Start Game Cycle
endGameSession
endGameSessionAckUpdate Game Session
Communications Failure!
End Game Session
Unfinished Game Cycle – Part 23pGC 3pGS iGP
moneyTransactionsEnd
Game Cycle
moneyTransactionsAckRecordTransactions
DetermineGame
Outcome
Reconciliation Commands – no Secure
Token
Void, Auto-Complete,
or Suspend?
Auto-Complete
Third-Party Content Interface
Third-Party Game Interface
Third-Party Content Interface
iGaming PlatformPlayer
Registration
Geo-Location
Player Accounts
Game Services
Other ServicesThird-Party Game Services
iGaming Console
Third-PartyGame Content
Proprietary
Prop
riet
ary
Launch URL
3pC I
3pPI
Third-Party Content Interface
Third-Party Content Interface The Third-Party Content Interface is used to
coordinate the activities of the iGaming Console and the Third-Party Game Content.
Account Balances. Game State – Idle/Active. Wager. Win. Mute / Volume. Language.
A JavaScript API is used to communicate the information between the iGaming Console and the Third-Party Game Content.
Game DiscoveryThird-Party Game Interface
Game Discovery The iGaming Platform can query the Third-
Party Game Service to collect information about the games that it supports.
The information supplied by the Third-Party Game Service includes: Game Identifier. Game Type, Game Title, Game Description, & Status. Minimum & Maximum Payback Percentages. Manufacturer, Release Number, Theme, & Paytable. Base URL of the Third-Party Game Service. URL for operator-oriented help information.
Game Discovery For each game, the information supplied by
the Third-Party Game Service also includes: A list of Distribution Channels and Presentation
Formats in which the game is available. A list of Locales (languages) available for the game. A list of Currencies in which that game can be played. A list of Jurisdictions in which the game has been
approved. A list of Betting Configurations available for the
game. A list of additional Manufacturer-Specific Parameters
that can be used when the game is launched.
The game information cannot be changed by the iGaming Platform. It is intended to help operators configure the set of
games offered by the iGaming Platform.
Event ReportingThird-Party Game Interface
Event Reporting The Third-Party Game Interface includes a
very flexible event reporting mechanism.
The GSA, as well as manufacturers, can define events that are reported by the Third-Party Game Service or the iGaming Platform. For example, Game Cycle Started, Game Cycle Finished,
etc.
The events can be reported to the Third-Party Game Service, the iGaming Platform, or a Central Monitoring System.
Event ReportingiGaming Platform
Player Registration
Geo-Location
Player Accounts
Game Services
Other ServicesThird-Party Game Services
iGaming Console
Third-PartyGame Content
Proprietary
Prop
riet
ary
Launch URL
3pC I
Central Monitoring System
Events
Event Reporting Standard event information includes:
Event Identifier. Event Code. Event Description. Date/time that the event occurred.
Event-specific information can also be included in event reports. The information is included in a sub-element of the
event report.
For example, the Game Cycle Ended event might include total wagers, total win, total theoretical win, total time played, and total games played.
Event Reporting The set of events to be reported and the
destination are configured through the administrative interface on the Third-Party Game Service or the iGaming Platform.
The choice of events is based on operational and jurisdictional requirements.
Game AuthenticationThird-Party Game Interface
Game Authentication Remote game authentication (GAT) started
with gaming machines.
Game Authentication Terminal
Game Authentication With G2S, S2S, and GDS, game
authentication was expanded onto the network and into peripheral devices.
Game Authentication
Server
Bonus Server
ProgressiveServer
Peripheral Device
Game Authentication The next logical step . . . extend game
authentication to iGaming Platforms and Third-Party Game Services.
Game Authentication
Server
Bonus Server
Progressive Server
iGamingPlatform
Third-PartyGame Service
Game Authentication How does it work?
Discovery – The Game Authentication Server requests a list of software components and supported authentication algorithms from an end-entity (iGaming Platform or Third-Party Game Service).
Verification – The Game Authentication Server requests verification of a particular component using a specific algorithm and seed value.
Authentication – The Game Authentication Server checks the result against a known value provided by a test lab.
Game Authentication
1. Discovery
2. Verification
3. Authentication
Game Authentication
Server
GameService
TrustedSource
Conclusion The Third-Party Game Interface is the first
GSA protocol specifically designed for online gaming.
GSA intends to look at a number of other areas that might benefit from standardization.
Regulatory reporting.
Interfaces to back-end services, such as payment processing and geo-location.
Interfaces to brick & mortar systems.
Questions?