Supported message brokers and events
Integrations with the following message brokers are supported by the EvenBet system: Kafka, RabbitMQ, SQS, Redis. If you want to enable one of them, please, contact your account manager.
Below, you can find the list of events that can be traced in the EvenBet system.
- OnGameDone – this event takes place before the ShowResults and displays the general hand outcome.
- OnGameHistoryDone – this event is sent after the ShowResults. It contains the game details.
- OnPlayerSeatedDown – this event takes place when a player takes a seat at the table.
- OnTournamentPlayerSeatedDown – this event takes place when a player takes a seat at the tournament table.
- OnPlayerEntrySeatedDown – this event takes place when a user is seated to a fast fold table.
- OnPlayerTournamentTicketUpdated – this event takes place when a ticket is issued, used for tournament registration, returned to the user because he unregistered from the tournament or the tournament was cancelled.
- OnPlayerWinInTournament – this event takes place when a player wins a prize in a tournament.
- OnTournamentStateChanged – this event takes place when the tournament changes its status.
- OnPlayerLeftTournament – this event takes place when the player is eliminated from a tournament.
- OnPlayerUnregisteredFromTournament – this event takes place when the player is eliminated from a tournament.
- OnUserLoggedIn – this event takes place when the user logins to the client application. It includes the logins to the casino websites.
- OnUserLoggedOut – this event takes place when the user logs out of the client application. It includes the logouts from the casino websites.
- OnPlayerRegistered – this event takes place when a new user is created from the client application or Backoffice.
- OnPlayerLeaveTable – this event takes place when the user leaves the table.
- OnTournamentCompleted – this event takes place when the tournament is finished.
- OnTournamentPlayerRegisterResult – this event takes place when the user successfully registers for tournament.
- OnPlayerRebuyOrAddonMaked – this event takes place when the user successfully purchases rebuy/add-on in tournament.
- OnFraudIncidentUpdated – this event takes place when anti-fraud incident is updated.
- OnFraudIncidentCreated – this event takes place when anti-fraud incident is created.
- OnFraudAutoReactionApplied – this event takes place when auto-reaction is applied to a player because of an anti-fraud incident.
- OnFraudIncidentStatusChangedAutomatically – this event takes place when incident status is changed automatically.
- OnCooperativeBlockUpdated – this event takes place when team block is updated.
- OnCooperativeBlockDeleted – this event takes place when team block is deleted.
- OnCasinoRoundClosed – this event takes place when a casino round is closed (completed).
- OnPlayerBalanceChanged – this event is triggered when user balance is changed.
- OnTransactionNotification – this event is triggered when transaction is created for the player.
- OnP2PTransfer – this event is triggered when a user attempts to transfer money to another user.
- OnGetCash – this event is triggered when user requests money from an external system (only for seamless wallet systems).
- OnReturnCash – this event is triggered when money is returned to the external system from poker (only for seamless wallet systems).
- OnGetBalance – the balance is requested at the login and during the requests 'RefreshExternalPlayerBalances' from the external wallet. When it happens, this event is triggered.
- OnUpdatePlayerBlockStatus – this event is triggered when the user is blocked.
- OnTFAPreLogin – this event is triggered when the player enters their login and starts the TFA process; the recipient should send or prepare an SMS code or other confirmation methods.
- OnTFALogin – this event is triggered when the player already provided a code from SMS or email; the recipient should check the auth field and respond by calling the poker_player_tfa_login_result method.
- OnExternalLogin – event takes place in case the skin or player account requires login through the external subsystem; the result with the response should be sent through calling the poker_external_login_validation_result method.
- OnTournamentCreated – this event is triggered when a tournament is created successfully.
- OnTableCreated – this event is triggered upon successful creation of a table, including scenarios when a new club table or balanced table is created.
- OnPlayerAccountChanged – this event takes place when a player's account information or associated attributes are updated.
OnGameDone
This event takes place before the ShowResults and displays the general hand outcome.
JSON sample | Description |
---|---|
{ | |
gameId: 236645, | Internal ID |
tableId: 242487, | Table ID |
tournamentId: 23432, | Tournament ID |
totalRake: 180, | Rake amount |
gameStart: "2020-08-14 03:50:19", | Game start |
gameEnd: "2020-08-14 03:51:49", | Game end date |
tableCards: "3;28;1;2;3" | Community cards |
tableCardsLowerRow: "", | Lower set of community cards dealt during Run it twice mode |
rakePart: 0.025 | Rake percent(1/100) |
rakeCap: 300, | Rake cap |
numPlayersOnFlop:5 | Number of players on Flop |
numPlayersOnTurn:4 | Number of players on Turn |
numPlayersOnRiver:3 | Number of players on River |
numPlayersOnShowDown:2 | Number of players on ShowDown |
gameType: 65, | Game type code |
unclaimedPot: 0, | The amount of unclaimed pot |
moneyType: 82, | The code of the currency used at the table. |
smallBlind: 100, | Small blind amount |
bigBlind: 200, | Big blind amount |
ante: 0, | Ante amount |
participations: [ | Array of all game participants |
{ | |
playerId: 47830, | Internal ID of player |
skinId: 0, | Skin ID |
bet: 5000 | Player bet |
pot: 0, | Player pot part |
rake: 125000, | Player rake |
isOut: "False", | True – if player sit out before showdown or make muck |
outRound: 0, | 0/1 – preflop, 2 – flop, 3 – turn, 4 – river, 5 - showdown |
isWin: "False", | True – player wins, False – player loss |
isAway": false, | True – the user was Away at the start of the hand |
isSB: false, | True – player is in the SB position |
isBB: false, | True – player is in the BB position |
isStraddle: false, | True – the user posted straddle |
highCombination: "50;28;27;24;12", | Player cards |
highCombinationCode: "J.35.H.H", | Player high combination |
lowCombinationCode: "J.35.H.H", | Player low combination |
pocketCards: "3;28", | Player cards |
stackAtHandBegin: 90000, | Stack at the beginning of the hand in cents |
stackAtHandEnd: 85000, | Stack at the end of the hand in cents |
externalId: "751632", | External system player identifier |
externalSystemCode: "default", | External system reference |
betOnPreflop | Player bet on Preflop |
betOnFlop | Player bet on Flop |
betOnTurn | Player bet on Turn |
betOnRiver | Player bet on River |
insuranceFee: 0, | The amount of insurance fee paid by the player |
insuranceClaim: 0, | The amount of insurance claim paid by the player |
playerOnTableId | Table Session ID |
playerInTournamentId | Tournament Session ID |
scorePoints: 12, | Player's score in a deal/hand (used in rummy, Chinese poker, big2 and callbreak) |
wonPoints: 12, | The points won by the user (used in rummy, Chinese poker, big2 and callbreak) |
totalPoints: 12, | Overall user's points (used in rummy, Chinese poker, big2 and callbreak) |
rank: 1 | Player's rank. Here is how it is calculated: Rummy - rank is calculated for a separate deal, the user with the lowest scorePoints will have the lowest rank (0); for a game, it would be the user with the biggest won pot or lowest number of totalPoints (highest for the Deals); Hold'em - the user with the biggest won pot or biggest bet will have the lowest rank (0) Chinese - the user with the biggest won pot or biggest number of points will have the lowest rank (0) Big2 - the user with the biggest number of totalPoints will have the lowest rank (0) Callbreak - the user with the biggest number of totalPoints will have the lowest rank (0) |
externalSessionId | Additional field with session identifier |
}, ], } |
OnGameHistoryDone
This event is sent after the ShowResults. It contains the game details.
JSON sample | Description |
---|---|
{ | |
gameId | Game Identifier |
tableId | Table Identifier |
chunkStart | Date of events chunk |
events | Table events |
} |
OnPlayerSeatedDown
This event takes place when a player takes a seat at the table.
JSON sample | Description |
---|---|
{ params: { | |
objectId: 81622, | User ID |
tableId: 34534 | Table identifier |
playerId: 81622 | User ID |
playerOnTableId: 10351 | Table Session ID |
externalId: 234324 | External identifier |
externalSystemCode: "default", | External system reference |
entryCnt: 1 | Entry number |
skinId: 0, | Skin identifier |
numActivePlayers: 2 | Current number of active players |
isTopUp: True | SeatDown with money request |
rakeCap: 300, | Rake cap |
rakePart: 0.025 | Rake percent(1/100) |
maxPlayers: 6 | Size of table |
externalSessionId | Additional field with session identifier |
}, } |
OnTournamentPlayerSeatedDown
This event takes place when a player takes a seat at the tournament table (both initial seating and all further seatings during the table balancing).
JSON sample | Description |
---|---|
{ params: { | |
tournamentId: 36124574 | The ID of the tournament |
firstSeating: true | Set true on the initial seating period in the tournament before the games began |
tableId: 37496730 | ID of the tournament table |
playerId: 13296 | User ID |
playerEntryIdx: 0 | Entry number |
skinId: 2 | ID of user's skin |
externalId: "" | User ID in the external system |
externalSystemCode: "" | Code of the external system |
playerInTournamentId: 36010919 | Tournament Session ID |
tournamentName: "SnG headsup" | Tournament name |
tournamentType: 71 | Tournament type: - ttAny = -1 - any tournament type, used for filtering; - ttScheduled = 83 - the tournament that starts at a specific time; - ttSitAndGo = 71 - the tournament that starts when the required number of participants register for it; - ttManual = 77 - the tournament that starts when the creator manually launches it (either from Backoffice or from the club). |
objectId: 13296 | User ID |
externalSessionId | Additional field with session identifier |
OnPlayerEntrySeatedDown
This event takes place when a user is seated to a fast fold table.
JSON sample | Description |
---|---|
playerId: 6121 | User ID |
tableId: 25291772 | Table identifier |
playerEntryIdx: 1 | Entry number |
skinId: 0 | ID of user's skin |
externalId: "999" | User ID in the external system |
externalSystemCode: "A" | Code of the external system |
playerOnTableId: 36120986 | Table Session ID |
objectId: 6121 | User ID |
externalSessionId | Additional field with session identifier |
OnPlayerTournamentTicketUpdated
This event takes place when a ticket is issued, used for tournament registration, returned to the user because he unregistered from the tournament or the tournament was cancelled.
JSON sample | Description |
---|---|
{ params: { | |
playerId | User ID |
externalId | External ID |
externalSystemCode | System code |
skinId: 0, | Skin ID |
tournamentId | tournament identifier |
ticketId | ticket identifier |
ticketValue | value of ticket |
creditReason | Unknown = 95, (default value) Admin =65, (the ticket was created by the administrator) TournamentPrize = 84, (the ticket was won in tournament) AfterRegistration = 82, (the ticket was emitted automatically to the user after registration) Use = 85, (the ticket was used to register for tournament) Revert = 66, (the ticket price was returned to the player or poker room after the ticket was expired) |
debitReason | Unknown = 95, Admin =65, TournamentPrize = 84, AfterRegistration = 82, Use = 85, Revert = 66, |
externalSessionId | Additional field with session identifier |
}, } |
OnPlayerWinInTournament
This event takes place when a player wins a prize in a tournament.
JSON sample | Description |
---|---|
{ params: { | |
playerId: 81622, | User ID |
tournamentId: 23423 | Tournament Identifier |
tournamentName: Test | Tournament Name |
placeFrom: 1 | low place |
placeTo: 1 | high place |
amount: 100 | tournament prize |
externalId: 23 | External system player identifier |
externalSystemCode: default | External system code |
skinId: 0, | Skin ID |
wonTicket | 1 - won ticket, 0 - cash |
externalSessionId | Additional field with session identifier |
}, } |
OnTournamentStateChanged
This event takes place when the tournament changes its status.
JSON sample | Description |
---|---|
{ params: { | |
tournamentId: 23423 | Tournament ID |
tournamentState: 65 | WaitForAnnounce (created but not yet visable on the client side) = 87 Announced = 65 Registering = 71 Seating = 83 Running = 82 Cancelled = 67 Done = 68 Unfinished = 85 |
isPrizePaid: false | Shows if the prize was paid in tournament (true/false). |
}, } |
OnPlayerLeftTournament
This event takes place when the player is eliminated from a tournament.
JSON sample | Description |
---|---|
{ params: { | |
tournamentId: 23423 | Tournament Identifier |
playerId: 81622, | User ID |
externalId: "751632", | External system player identifier |
externalSystemCode: "default", | External system reference |
playerEntryIdx: 1 | Entry number |
schemeId: 0 | Deprecated |
placeFrom: 1 | Low place |
placeTo: 1 | high place |
prizePlace: 1 | Shows if the user won a prize (of any type) |
mainPrizeAmount: 200 | The part of the main prize pool won by the user |
skinId: 0, | Skin ID |
level: 0 | The tournament blind level reached by the user |
playerInTournamentId: 1002 | Tournament Session ID |
object_id: 81622, | User ID |
externalSessionId | Additional field with session identifier |
}, } |
OnPlayerUnregisteredFromTournament
This event takes place when a player unregisters from a tournament.
JSON sample | Description |
---|---|
{ params: { | |
object_id: 81622, | User ID |
playerId: 81622, | User ID |
tournamentId: 23423 | Tournament ID |
externalId: "751632", | External system player identifier |
externalSystemCode: "default", | External system reference |
skinId: 0, | Skin ID |
externalSessionId | Additional field with session identifier |
}, } |
OnUserLoggedIn
This event takes place when the user logins to the client application. It includes the logins to the casino websites.
JSON sample | Description |
---|---|
{ params: { | |
playerId: 81622, | User ID |
externalId: "83688319", | User external identifier |
externalSystemCode: "test", | System code |
nick: "LOCALBOT_5822", | Player nickname |
clientVersion: "HTML5", | The client version used by the player |
skin: 'base', | Skin Key |
deviceId: 0, | Internal user device identifier |
deviceUniqueId: '12321321' | Unique device identifier |
platform: 'html5' | System platform |
osName: 'Windows' | Operation system name |
osVersion: 10 | Operation system version |
motherboardId: "", | Motherboard ID |
cpuId: "", | CPU ID |
appVersion: "23.1.1.7d9855c", | The used version of the client application |
ip: 8.8.8.8 | Player's IP |
macAddress: "", | Player's MAC-address |
latitude: 23.232 | Player's Latitude |
longitude: 23.3432 | Player's Longitude |
skinId: 0, | Skin ID |
isFirstLogin: false | Shows if it was user's first login |
externalSessionId | Additional field with session identifier |
}, } |
OnUserLoggedOut
This event takes place when the user logs out of the client application. It includes the logouts from the casino websites.
JSON sample | Description |
---|---|
params: { | |
playerId: 6158, | User ID |
externalId: "78963", | User external identifier |
externalSystemCode: "", | System code |
nick: "john", | Player nickname |
clientVersion: "HTML5", | The client version used by the player |
skin: "evenbet", | Skin Key |
deviceId: 219, | Internal user device identifier |
deviceUniqueId: "e742b6874741c1266b0539f9e89bb75d", | Unique device identifier |
platform: "H", | System platform |
osName: "W", | Operation system name |
osVersion: "10.0", | Operation system version |
motherboardId: "", | Motherboard ID |
cpuId: "", | CPU ID |
appVersion: "23.1.1.7d9855c", | The used version of the client application |
ip: "192.168.3.56", | Player's IP |
latitude: 0, | Player's Latitude |
longitude: 0, | Player's Longitude |
skinId: 0 | Skin ID |
externalSessionId | Additional field with session identifier |
} } |
OnPlayerRegistered
This event takes place when a new user is created from the client application or Backoffice.
JSON sample | Description |
---|---|
{ params: { | |
playerId | ID of the player |
activationCode | |
callbackParam | |
deviceId | Device identifier |
}, } |
OnPlayerLeaveTable
This event takes place when the user leaves the table. For cash tables, the event takes place when the money is returned to his balance, and for tournaments it happens when the user is eliminated from the tournament or taken to a new table during the table balancing.
JSON sample | Description |
---|---|
{ params: { | |
objectId: 105, | User ID |
playerId: 105, | User ID |
amount: 8000, | Amount in cents |
externalSystemCode: "434", | System code |
externalSessionId, " " | Additional field with session identifier |
templateTableId: 1075896, | Template (parent) table ID 0 - indicates that there is no template for this table |
skinId: 0, | Skin ID |
standUpCause: 18, | Reasons a player was made to stand up during the game: 0 — Unknown — The reason for standing up is not known. 1 — FFRealTableDestroy — The real table in Fast Fold poker was destroyed, forcing all players to stand up. For example, the table was cleared when the game ends, and the players were reassigned. 2 — FFPlayerDisconnect — The player disconnected during Fast Fold poker. 3 — FFPlayerEntryDestroy — The single player's entry in the Fast Fold game was destroyed, resulting in their stand-up. 4 — FFPlayerEntryFastFolded — The player clicked the "Fold" button quickly, resulting in a stand-up. 5 — FFPlayerEntrySitOut — In the Fast Fold game, the player's sitout timer ran out, leading to the player standing up. 6 — FFPlayerEntryLeaveTable — The player manually chose to leave the table in the Fast Fold game. 7 — TableClosed — The table was closed. For example, the tournament ended, the table was closed in the admin panel, or during balancing. 8 — CrashRecovery — The system recovered from a crash. 9 — FictitiousGameStateReset — Fast Fold logic-related. For example, a player joined a fictitious table with no other players. When the game started, the player was moved to a real table, and the fictitious table was closed. 10 — Kick — The player was kicked and stood up due to a kick/ban. 11 — DefaultAction — TThe player's default action was to stand up, which was performed automatically. In Rummy, this involves a drop followed by a stand-up. 12 — UnauthorizeSession — The player's session was unauthorized, for example, in case the player was logged out. 13 — ReservedSeatTimeout — A player reserved a seat but did not join the game for an extended period. For example, the player did not buy in within the specified time frame. 14 — DisconnectTimeout — A player was in a disconnected state for an extended period. 15 — SitoutTimeout — A player was in a sit out state for an extended period (this reason does not apply to a Fast Fold table). 16 — NoCashTimeout — A player had no cash for an extended period and did not replenish their funds if the option was available. 17 — SafeBlockTimeOut — The player was blocked and given time to finish the games at all tables, but if there was no action, the player was removed from the game after the current hands were completed. Further, the player could not join a new table while under this block. 18 — ManualLeaveTable — A player performed stand-up manually. 19 — NoCash — The cash amount was less than the minimum required at the table. For example, the player attempted to sit down but did not have sufficient funds. 20 — UnreserveSeat — The player reserved a seat but chose not to buy in and withdrew from the reservation. 21 — UnjoinControlList — The player left the table's waiting list and is no longer in line for a seat at that table. 22 — MovePlayer — The player was moved to a different table at tournament table balancing. 23 — TourKnockOut — The player was knocked out from the tournament. 24 — UnregisterPlayer — The player was unregistered from the tournament. 25 — TourWinner — The player was eliminated from the tournament but still won a prize. 26 — TourFinalStage — A player was transferred to the final tournament table. 27 — UnionStage — In multi-entry tournaments, the event was triggered when a player's multiple entries were merged into a single one. 30 — Eliminated — A player was eliminated after points were added to all seats (big2 and rummy). |
sessionTime: 8.0, | Time spent on table |
playerEntryIdx: 0, | Entry number |
externalId: "123412344", | User external identifier |
tableId: 1166896, | Table identifier |
} } |
OnTournamentCompleted
This event takes place when the tournament is finished.
JSON sample | Description |
---|---|
{ params: { | |
lateRegFinishedStamp: 0000-00-00 00:00:00 | The time when late registration period was completed |
objectId: 81622 | Tournament identifier |
tournamentId: 81622 | Tournament identifier |
feeList: [ | List of participants |
numberAddon : 1 | Number of player's addons |
rebuyFee : 1 | Player's rebuy fee |
playerId : 12 | Internal player identifier |
level: 0 | The blind level reached by the user |
buyIn : 1 | Player's buy-in |
entryFee : 1 | Player's entry fee |
numberRebuy : 1 | Number of player's rebuys |
playerEntryIdx : 1 | Entry number |
extraBuyIn : 1 | Total of extra buy ins |
addonFee : 1 | Player's addon fee |
placeFrom: 0 | Low place |
placeTo: 0 | High place |
] } } |
OnTournamentPlayerRegisterResult
This event takes place when the user successfully registers for tournament.
JSON sample | Description |
---|---|
{ params: { | |
playerId: 81622, | Player ID |
tournamentId: 3423, | Tournament ID |
externalId: "83688319", | User external identifier |
externalSystemCode: "test", | System code |
skinId: 0, | Skin ID |
registeringType: 'W' | Unknown = 95, WithoutPayment = 87, ByMoney = 77, ByTicket = 84, BySatellite = 83 |
ticketId: 23432 | ticket identifier |
externalSessionId | Additional field with session identifier |
}, } |
OnPlayerRebuyOrAddonMaked
This event takes place when the user successfully purchases rebuy/add-on in tournament.
JSON sample | Description |
---|---|
{ params:{ | |
tournamentId: 1234, | The ID of the tournament |
playerId: 789, | The ID of the player |
playerEntryIdx: 0, | The ID of player's entrance to tournament |
type: 82, | Operation type, one of emtUnknown=0, emtRebuy=82, emtRebuy2x=50, emtAddon=65 |
chipsCost: 500, | Payment in tournament currency that is added to prize pool, one of rebuyChipsCost or addonChipsCost |
fee: 10, | Payment in tournament currency that goes to poker room balance, one of rebuyFee or addonFee |
usedGrantTicketId: 0 | Shows the ticket used for rebuy/addon payment, chipsCost and fee must be zero |
} } |
OnFraudIncidentUpdated
This event takes places when anti-fraud incident is updated.
JSON sample | Description |
---|---|
{ | |
"incidentId": | The ID of the incident (int) |
"checkTypesId": [] | Array of check types ID used in this incident. |
"incidentConfidence": | The confidence of the incident in percent (int) |
"updatedAt": | Date of the last update of the incident in the format Y-m-d H:i:s (string) |
"participants": [ | Array with participants of the incident |
{ | |
"playerId": | Unique player ID in poker system (int) |
"playerConfidence": | The confidence of the player in percent (int) |
"externalId": | External id of the player (string) |
"ip": | Last ip from t_sessions_log (string) |
} | |
... | There can be more than one participant in the incident, information about all of them will be here |
] } |
OnFraudIncidentCreated
This event takes places when anti-fraud incident is created.
JSON sample | Description |
---|---|
{ | |
"incidentId": | The ID of the incident (int) |
"checkTypesId": [] | Array of check types ID used in this incident. |
"incidentConfidence": | The confidence of the incident in percent (int) |
"createdAt": | Date when the incident was created in the format Y-m-d H:i:s (string) |
"participants": [ | Array with participants of the incident |
{ | |
"playerId": | Unique player ID in poker system (int) |
"playerConfidence": | The confidence of the player in percent (int) |
"externalId": | External id of the player (string) |
"ip": | Last ip from t_sessions_log (string) |
} | |
... | There can be more than one participant in the incident, information about all of them will be here |
] } |
OnFraudAutoReactionApplied
This event takes places when auto-reaction is applied to a player because of an anti-fraud incident.
JSON sample | Description |
---|---|
{ | |
"action": | The action, applied to the participants of the incident. Possible values: "kick", "block", "forbid cash", "forbid tournament" (string) |
"appliedAt": | The date when auto-reaction was applied in the format Y-m-d H:i:s (string) |
"playersId": [] | The array with IDs of the players, to whom the auto-reaction was applied |
} |
OnFraudIncidentStatusChangedAutomatically
This event takes places when incident status is changed automatically. Please use Anti-fraud incident status codes to interpret this event.
JSON sample | Description |
---|---|
{ | |
"incidentId": | The ID of the incident (int) |
"previousStatus": | Incident status before changes (int) |
"changedStatus": | Incident status after changes (int) |
"changedAt": | The date and time when incident status was changed (string) |
} |
OnCooperativeBlockUpdated
This event takes places when team block is updated.
JSON sample | Description |
---|---|
{ | |
"recordId": 123, | The ID of the record from the DB table t_cooperative_block |
"playerId1": 1001, | The ID of the first player in the poker system |
"externalSystemCode1": "SYS", | The code of the first user's external system |
"externalId1": "PLR-1001", | The ID of the first user in the external system |
"playerId2": 1002, | The ID of the second player in the poker system |
"externalSystemCode2": "SYS", | The code of the second user's external system |
"externalId2": "PLR-1002", | The ID of the second user in the external system |
"block_cash": true, | Shows if cash games are allowed for this pair of players |
"block_mtt": false, | Shows if scheduled tournaments are allowed for this pair of players |
"block_sng": false, | Shows if Sit&Go tournaments are allowed for this pair of players |
"block_transfer": false | Shows if transfers are allowed for this pair of players |
"externalSessionId" | Additional field with session identifier |
} |
OnCooperativeBlockDeleted
This event takes places when team block is deleted.
JSON sample | Description |
---|---|
{ | |
"recordId": 123, | The ID of the record from the DB table t_cooperative_block |
"playerId1": 1001, | The ID of the first player in the poker system |
"externalSystemCode1": "SYS", | The code of the first user's external system |
"externalId1": "PLR-1001", | The ID of the first user in the external system |
"playerId2": 1002, | The ID of the second player in the poker system |
"externalSystemCode2": "SYS", | The code of the second user's external system |
"externalId2": "PLR-1002", | The ID of the second user in the external system |
"externalSessionId" | Additional field with session identifier |
} |
OnCasinoRoundClosed
This event takes place when a casino round is closed (completed).
JSON sample | Description |
---|---|
[ { | |
"provider": "MyProvider", | Provider code |
"externalRoundId": "436546-4554", | External round ID in the provider's system |
"playerId": 23110634, | Player ID in the Evenbet system |
"closeMethod": 1, | The code of the method that was used to close the round |
"closedByPlayerId": 100, | The code of the user who closed the round, either the player or administrator |
"hasTransaction": false, | Shows if there was a transaction and other additional data in the request to close the round. It is used for internal needs. |
"transaction": { | Transaction info starts here |
"playerId": 23110634, | Player ID in the Evenbet system |
"moneyType": 80, | Currency code in the Evenbet system |
"amount": 0, | Amount of the transaction in cents. |
"subtype": 0, | Transaction sub-type |
"notes": "", | Transaction notes, if any |
"isReverse": false, | Shows if the money was added or taken from the user |
"isResultSuccess": false, | Shows if transaction was successful |
"resultText": "", | The message with the result of the transaction processing (for example, the message with error text from the server) |
"resultTransactionId": 0, | The transaction ID in the Evenbet system if transaction was successful |
"spendingPriority": 0, | The spending priority used for the transaction |
"entityType": 0, | The data for spending money priority to consider the proportions of real/bonus part (3 is used for casino) |
"entityId": 0, | The data for spending money priority to consider the proportions of real/bonus part (internal round ID) |
"skipCreation": false | Shows if transaction should be done on the server, false - the transaction will not be done on the server, used for seamless wallet |
}, | |
"hasRoundExtInfo": false, | Required for internal needs |
"creditBalancePriority": 0, | Shows the spending money priority used for crediting the winnings |
"betMultiplier": 0, | Final coefficient |
"betType": 0, | Bet type, used for sports bets: BET_TYPE_UNKNOWN = 0 BET_TYPE_ORDINARY = 1 BET_TYPE_EXPRESS = 2 |
"oldRoundCloseMethod": 0, | The previous closedMethod of the round used before this closure. Required for round re-openings. |
"objectId": 23110634 | Player ID |
} ] |
OnPlayerBalanceChanged
JSON sample | Description |
---|---|
{ | |
"playerId": playerId, | The ID of the user in the Evenbet system. |
"moneyType": moneyType, | The currency of the changed balance. |
"oldAmount": oldAmount, | Previous amount of money on the real money balance in cents. |
"newAmount": newAmount, | New amount of money on the real money balance in cents. |
"oldBonusAmount": oldBonusAmount, | Old amount at bonus balance in cents. |
"newBonusAmount": newBonusAmount, | New amount at bonus balance in cents |
"skinId":skinId, | User's skin. |
"externalId":externalId, | The ID of the user in the external system. |
"externalSystemCode":externalSystemCode, | The code of the external system. |
"newInPlayAmount":newInPlayAmount | |
} |
OnTransactionNotification
JSON sample | Description |
---|---|
{ | |
"paramTournamentId": 0, | The ID of the tournament, to which the transaction is related. |
"createdStamp": "2024-03-07 04:23:20", | The time when the transaction was created. |
"playerId": 0, | Not used. Please refer to the "paramPlayerId" for the ID of the user in the Evenbet system. |
"notes": "", | Transaction notes, if any. |
"externalSystemCode": "", | Not used. Please refer to the "paramExternalSystemCode" for the code of the external system. |
"transactionSubType": 113, | The sub-type of the transaction. |
"paramExternalSystemCode": "12345", | The code of the external system. |
"paramExternalId": "12341234", | The ID of the user in the external system. |
"moneyType": 80, | The currency of the transaction. |
"externalSessionId": "", | Not used. Please refer to the "paramExternalSessionId" for the additional field with session identifier. |
"spendingPriority": 0, | The spending priority of the transaction. |
"amount": 1, | The amount of the transaction with the precision set up in the currency settings, usually 2 decimal places. |
"paramExternalSessionId": "", | Additional field with session identifier. |
"externalId": "", | Not used. Please refer to the "paramExternalId" for the ID of the user in the external system. |
"paramPlayerId": 106, | ID of the user in the Evenbet system. |
"transactionId": 337686, | The ID of the transaction in the Evenbet system. |
"paramTableId": 846897, | The ID of the table, to which the transaction is related. |
"transactionType": 501 | The type of the transaction. |
} |
OnP2PTransfer
JSON sample | Description |
---|---|
{ | |
"senderId": senderId, | The ID of the user who attempts to send money in the Evenbet system. |
"senderExternalId": senderExternalId, | The ID of the user who attempts to send money in the external system. |
"senderExternalSystemCode": senderExternalSystemCode, | The code of the sender's external system. |
"receiverId": receiverId, | The ID of the receiver in the Evenbet system. |
"receiverExternalId": receiverExternalId, | The ID of the receiver in the external system. |
"receiverExternalSystemCode": receiverExternalSystemCode, | The code of the receiver's external system. |
"moneyType": moneyType, | The currency of the transaction. |
"amount": amount, | The amount of the transaction in cents. |
"request": request, | Shows if it is a request to process the transaction or if it has already been completed. |
"success": success | Shows if the transaction/request was successful. |
} |
OnGetCash
JSON sample | Description |
---|---|
{ | |
"transactionId": transactionId, | The ID of the transaction in the Evenbet system. |
"playerId": playerId, | The ID of the user in the Evenbet system. |
"externalId": externalId, | The ID of the user in the external system. |
"externalSystemCode": externalSystemCode, | The code of the external system. |
"moneyType": moneyType, | The currency of the transaction. |
"amount": amount, | The amount of transaction in cents. |
"tableId": tableId, | The ID of the table related to the transaction. |
"tournamentId": tournamentId, | The ID of the tournament related to the transaction. |
"transactionType": transactionType, | The type of the transaction. |
"transactionSubType": transactionSubType, | The sub-type of the transaction. |
"playerOnTableId": playerOnTableId, | Table Session ID. |
"tournamentBuyIn": tournamentPaymentDetails.buyIn(), | Tournament buy-in. |
"tournamentEntryFee": tournamentPaymentDetails.entryFee(), | Tournament entry fee. |
"tournamentBountyKnockout": tournamentPaymentDetails.bntyKnockout(), | Tournament knockout fee. |
"skinId": skinId, | User's skin. |
"playerInTournamentId": playerInTournamentId, | Tournament Session ID. |
"externalParams": externalParams | String value sent from the client. |
} |
OnReturnCash
JSON sample | Description |
---|---|
{ | |
"transactionId": transactionId, | The ID of the transaction in the Evenbet system. |
"playerId": playerId, | The ID of the user in the Evenbet system. |
"externalId": externalId, | The ID of the user in the external system. |
"externalSystemCode": externalSystemCode, | The code of the external system. |
"moneyType": moneyType, | The currency of the transaction. |
"amount": amount, | The amount of transaction in cents. |
"playerEntryIdx": playerEntryIdx, | Entry number. |
"tableId": tableId, | Table ID |
"tournamentId": tournamentId, | Tournament ID |
"transactionType": transactionType, | The type of the transaction. |
"transactionSubType": transactionSubType, | The sub-type of the transaction. |
"playerOnTableId": playerOnTableId, | Table Session ID. |
"sumBetAmount": sumBetAmount, | The amount of money put in the pot by the player. |
"tournamentBuyIn": tournamentPaymentDetails.buyIn(), | Tournament buy-in |
"tournamentEntryFee": tournamentPaymentDetails.entryFee(), | Tournament entry fee |
"tournamentBountyKnockout": tournamentPaymentDetails.bntyKnockout(), | Tournament knockout fee |
"skinId": skinId, | User's skin. |
"playerInTournamentId": playerInTournamentId, | Tournament Session ID. |
"numHandsPlayed": numHandsPlayed | The number of hands played during this entry. |
} |
OnGetBalance
JSON sample | Description |
---|---|
{ | |
"playerId": playerId, | The ID of the user in the Evenbet system. |
"externalId": externalId, | The ID of the user in the external system. |
"externalSystemCode": externalSystemCode, | The code of the external system. |
"moneyType": moneyType, | The currency of the balance. |
"skinId": skinId, | User's skin. |
} |
OnUpdatePlayerBlockStatus
This event is triggered when the user is blocked.
JSON sample | Description |
---|---|
{ | |
"blockingLimit": "2023-10-09 10:57:21", | Time period until the user is blocked. |
"objectId": null, | Not used. |
"playerId": 105, | Internal player ID. |
"isBlocked": true, | True - player is blocked, false - player is not blocked/the block has been lifted. |
"externalSystemCode": "", | External system reference. |
"skinId": 0, | Skin ID. |
"externalId": "", | External system player ID |
"blockingReason": 71 | Reason for the block: 0 - Unknown 32 - None 71 - GeneralViolation (user blocked by administrator) 73 - ProhibitedIp (user IP is blocked) 77 - MessageRestriction (block due to anti-ddos mechanism, too many messages received from user side in a short period of time) 80 - PasswordPolicyViolation (block due to entering incorrect password too many times) |
} |
OnTFAPreLogin
This event is triggered when the player enters their login and starts the TFA process; the recipient should send or prepare an SMS code or other confirmation methods.
JSON sample | Description |
---|---|
{ | |
login: “john”, | The login used for entry |
playerId: 6158, | The ID of the user in the Evenbet system, obtained from login |
tfaType: 83, | 2FA type used for authentication: tfaSMS = 83, tfaEMail = 69, tfaGoogleAuthenticator = 71, tfaOneTimePassword = 84, tfaIdentityVerificationCode = 73; Note: In the case of tfaOneTimePassword, if the server matches the login with an email or phone, it may change the type to tfaEmail or tfaSMS. |
skinId: 2 | User's skin |
} |
OnTFALogin
This event is triggered when the player already provided a code from SMS or email; the recipient should check the auth field and respond by calling the poker_player_tfa_login_result method.
JSON sample | Description |
---|---|
{ | |
login: “john”, | The login used for entry |
playerId: 6158, | The ID of the user in the Evenbet system, obtained from login |
tfaType: 83, | 2FA type used for authentication: tfaSMS = 83, tfaEMail = 69, tfaGoogleAuthenticator = 71, tfaOneTimePassword = 84, tfaIdentityVerificationCode = 73; |
skinId: 2 | User's skin |
auth: "1234" | Code from SMS or email |
} |
OnExternalLogin
This event takes place in case the skin or player account requires login through the external subsystem; the result with the response should be sent through calling the poker_external_login_validation_result method.
JSON sample | Description |
---|---|
{ | |
login: “john”, | The login used for entry |
password: "123456", | Password used for entry |
skinKey: "evenbet", | Skin key |
ip: "127.0.0.1", | User’s IP address |
auth: "BDAAB7E52ED69D597CA96CDFFCA68324" | The token issued to the user, which will be used for subsequent logins |
} |
OnTournamentCreated
This event is triggered when a tournament is created successfully.
JSON sample | Description |
---|---|
{ | |
"objectId": 180408, | Tournament ID |
"tournamentId": 180408 | Tournament ID |
} |
OnTableCreated
This event is triggered upon successful creation of a table, including scenarios when a new club table or balanced table is created.
JSON sample | Description |
---|---|
{ | |
"tableId": 955897, | Table ID |
"objectId": 955897, | Table ID |
"templateTableId": 0 | Template (parent) table ID 0 - indicates that there is no template for this table |
} |
OnPlayerAccountChanged
This event takes place when a player's account information or associated attributes are updated.
JSON sample | Description |
---|---|
{ | |
"playerId": 6158, | User ID |
"skinId": 0, | Skin ID |
"accountChangedReasonType": 7, | Reason code for changing account details: 0 - Unknown reason; 1 - Avatar changed by player; 2 - Password changed by player; 3 - Player’s password changed in Backoffice or through API ; 4 - Email changed by player; 5 - Address changed by player; 6 - Notification settings changed by player; 7 - Player account details changed in Backoffice or through API (excluding password, for password see reason code = 3); 8 - Registration Info changed by player (First Name, Family Name, CountryId, City, Date of Birth, Gender) |
"changedFields": [ "f_display_name" ], | The list of main changed fields |
"changedAttributes": { "tagg": "value", "GlobalFreeRabbitHuntingActionPerformed": "" }, | The list of changed attributes “Value” - is the new value for the attribute Empty value “” indicates that this attribute was deleted for the player |
} |