Sent with QoS 1, not retained.
This contains the side bet payout results for all active players in the current round.
A player position is seen as active if any cards are assigned to it.
This is sent whenever the results change as more cards are revealed.
For most side bets the result is known when the player has its first two
cards and the dealer has an upcard.
round_id matches the id in blackjack/live_update / blackjack/state_changed
messages — use it to reset / update client display state.
Side bet evaluation results for a single player in a round.
side_bet_results is a list because a player may participate in multiple side bets
simultaneously (e.g. both 21+3 and Perfect Pairs at the same table). Each entry
corresponds to one configured side bet and is ordered to match the side bets declared
in the table configuration.
One side bet evaluation result for a single player.
result is a tagged union with two cases:
- SideBetDetermined: the cards decided the bet. A bet we deliberately do not score (a
progressive we only meter, or a side bet this table has configured but we cannot
resolve) settles here too, with outcome "UNKNOWN" and payout 0.0.
- NotYetDetermined: not enough cards on the table to evaluate yet. On a finished round
this means the bet never became determinable — a misconfigured side bet, a dealer
mistake, or a tracking error.
is_played is True only when a chips model for this casino is deployed and the
betting spots are correctly configured.
side_bet_id is the stable identifier the side bet is configured and keyed by (e.g. 'PP');
unlike side_bet_name it is unique, so consumers matching results across messages should
key on the id.
The side bet outcome has been fully evaluated.
outcome is a string label for the winning hand category (e.g. "STRAIGHT_FLUSH",
"PERFECT_PAIRS"), "LOSS" when the player loses, or :data:UNKNOWN_OUTCOME for a
bet we deliberately do not score. It is a plain string rather than an enumeration so that
operator-configured side bets with arbitrary hand categories can be supported in the future
without changing this type.
payout encodes the multiplier applied to the player's stake:
- -1.0 — loss (stake forfeited)
- A positive float — win multiplier (e.g. 3.0 means 3 : 1)
- 0.0 — the bet resolved to :data:UNKNOWN_OUTCOME and contributes nothing to any total
- "GRAND" / "MAJOR" / "MINOR" — jackpot tier whose exact value is resolved by the
casino's progressive payout system rather than a fixed multiplier.
The bet could not be evaluated: too few cards yet, or the round never revealed enough.
On a finished round this is a failure mode rather than a state — a misconfigured side bet,
a dealer mistake, or a tracking error — and the summary topics report it as no result at
all rather than as an outcome.