Insert title here - Gaming Standards Association

Download Report

Transcript Insert title here - Gaming Standards Association

Gaming Standards Association
PLATINUM MEMBERS
Third-Party Game Interface
Traditional View of an iGaming System
iGaming Platform
Player Registration
Geo-Location
Player Accounts
Game Services
Other Services
Single Monolithic
System
Evolving View of an iGaming System
iGaming Platform
Player Registration
Player Verification
Geo-Location
Location Verification
Player Accounts
Payment Processing
Game Services
Other Services
Independent
External Systems
Current View of an iGaming System
iGaming Platform
Game Services
Player Registration
Player Verification
Geo-Location
Location Verification
Player Accounts
Payment Processing
Game Services
Externalization
of Game Services
Other Services
Multi-Game Support
iGaming Platform
Player Registration
Game Service #1
Geo-Location
Game Service #2
Player Accounts
Game Service #3
Other Services
Multiple Game Services from
Multiple Manufacturers
Multi-Platform Support
Game Service #1
iGaming Platform #1
Player Accounts
Game Service #2
iGaming Platform #2
Player Accounts
Game Service #3
Multiple iGaming Platforms
Accessing the Same Game Services
Why Is This Good? Accountability!
iGaming Platform
Game Services
Player Registration
Player Verification
Geo-Location
Location Verification
Player Accounts
Payment Processing
Game Services
Other Services
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?
Standards!
Slot Machine
Independent Audit
and Reconciliation
Wagering Accounts,
Ticket-In-Ticket-Out,
Progressive Jackpots
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 Platform
iGaming Console
Third-Party
Game Content
Proprietary
Geo-Location
3pCI
Proprietary
Launch URL
1
Third-Party
Game Services
Player Registration
Player Accounts
3
Game Services
3pPI
2
Other Services
Third-Party Game Interface
Terminology
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.
Terminology
Player Session #1
Player Session #2
Game Session #1
Game Session #2
Game Cycle #1
Game Cycle #2
Game Cycle Group #1
Game Cycle Group #1
Game Cycle #3
Game Cycle #4
Game Cycle Group #2
Game Cycle Group #2
Game Session #3
Game Cycle #5
Third-Party Game Interface
Launch URL
Launch URL
Launch URL
iGaming Platform
iGaming Console
Third-Party
Game Content
Proprietary
3pCI
Geo-Location
Proprietary
Launch URL
Third-Party
Game Services
Player Registration
Player Accounts
Game Services
3pPI
Other Services
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 manufacturerspecific 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
iGaming Console
Third-Party
Game Content
Secure Token
Generated
3pCI
Proprietary
Proprietary
Launch URL
Secure
Token
Secure Token
Verified
Third-Party
Game Services
3pPI
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
&currencyCode=USD
Third-Party Game Interface
Game Play
Third-Party Platform Interface
iGaming Platform
iGaming Console
Third-Party
Game Content
Proprietary
3pCI
Geo-Location
Proprietary
Launch URL
Third-Party
Game Services
Player Registration
Player Accounts
Game Services
3pPI
Other Services
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 Start
iGC
3pGS
iGP
Launch URL
verifyPlayerSession
playerSessionAck
Create
Game Session
startGameSession
gameSessionAck
Launch Game
Verify
Player Session
Record
Game Session
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 ThirdParty Game Service can include an exception code.
Simple Game Play
3pGC
3pGS
iGP
Start Game
Start
Game Cycle
Transaction
Day
Determine
Game Outcome
End
Game Cycle
moneyTransactions
moneyTransactionsAck
Record
Transactions
Record
Approval
Game Result
Revenue
Day
Complex Game Play – Part 1
3pGC
3pGS
iGP
Transaction
Day
Initial Wager
Start
Game Cycle
moneyTransactions
moneyTransactionsAck
Record
Transactions
Confirm Wager
Additional Wager
moneyTransactions
moneyTransactionsAck
Confirm Wager
Record
Transactions
Complex Game Play – Part 2
3pGC
3pGS
iGP
Wagers Complete
Determine
Game Outcome
End
Game Cycle
moneyTransactions
moneyTransactionsAck
Record
Transactions
Game Result
Revenue
Day
Third-Party Game Interface
Unfinished Game Cycles
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, autocompleted, 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 Cycle
Auto-Completed
Game Cycle
Suspended
Game Cycle
Restored
Game Cycle
Voided
Game Cycle
Terminated
Game Cycle
Auto-Completed
Game Cycle
Voided
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 1
3pGC
3pGS
iGP
Initial Wager
Start
Game Cycle
moneyTransactions
moneyTransactionsAck
Record
Transactions
Confirm Wager
Communications Failure!
End Game
Session
endGameSession
endGameSessionAck
Update Game
Session
Unfinished Game Cycle – Part 2
3pGC
3pGS
iGP
Void,
Auto-Complete, or
Suspend?
Determine
Game Outcome
End
Game Cycle
moneyTransactions
Auto-Complete
moneyTransactionsAck
Reconciliation
Commands –
no Secure
Token
Record
Transactions
Third-Party Game Interface
Third-Party Content Interface
Third-Party Content Interface
iGaming Platform
iGaming Console
Third-Party
Game Content
Proprietary
3pCI
Geo-Location
Proprietary
Launch URL
Third-Party
Game Services
Player Registration
Player Accounts
Game Services
3pPI
Third-Party
Content Interface
Other Services
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.
Third-Party Game Interface
Game Discovery
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.
Third-Party Game Interface
Event Reporting
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 Reporting
iGaming Platform
iGaming Console
Third-Party
Game Content
Proprietary
Player Registration
Launch URL
Proprietary
3pCI
Geo-Location
Player Accounts
Game Services
Third-Party
Game Services
Other Services
Events
Central Monitoring
System
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.
Third-Party Game Interface
Game Authentication
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
Peripheral
Device
Bonus
Server
Progressive
Server
Game Authentication
 The next logical step . . . extend game authentication
to iGaming Platforms and Third-Party Game Services.
Bonus
Server
Game
Authentication
Server
iGaming
Platform
Progressive
Server
Third-Party
Game 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
Game
Service
3. Authentication
2. Verification
Game
Authentication
Server
Trusted
Source
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?