AMQP Topic Filtering

Messages are sent on various topics that are intended to provide easy and flexible routing/filtering. The topic key is divided into 8 sections:

The above image illustrates the syntax and ordering of the message queue.

  1. Priority (hi/lo/-): Is this a timing sensitive message (bet_settlement messages are considered not timing sensitive)?

  2. Pre-match interest (pre/virt/-): Is this message interesting for a pre-match only system? For real sport-events prematch odds are sent with “pre” as the keyword. If this word is “virt”, it means this is prematch odds for one of Betradar’s virtual sports.

  3. Live interest (live/-): Is this message interesting for live odds only system?

  4. Message type(s): odds_change, bet_settlement, bet_stop, cancelbet, rollback_betsettlement, rollback_cancelbet, fixture_change, alive.

  5. Sport (Sport ID/-): 1 = Soccer, 2 = Basketball, 3 = Baseball, etc (https://iodocs.betradar.com/unifiedfeed#Sport-event-information-GET-All-available-sports).

  6. URN for sport-event id: sr:match

  7. Sport-event id without URN: 123456

  8. Node_id can be used for recovery to ensure that a session is not receiving recovery messages for another session for the same customer

Common topic key examples:

A pre-match odds update:

hi.pre.-.odds_change.1.sr:match.1234.-

A live odds update:

hi.-.live.odds_change.1.sr:match.1234.-

A Fixture change

hi.pre.live.fixture_change.1.sr:match.1234.-

A live bet-_settlement:

lo.-.live.bet_settlement.1.sr:match.1234.-

Post-match bet-settlement

lo.pre.-.bet_settlement.1.sr:match.1234.-

A virtual sport odds update

hi.virt.-.odds_change.1.vs:match.1234.-

An alive message

-.-.-.alive.-.-.-.-

A snapshot complete message

-.-.-.snapshot_complete.-.-.-

Last updated

Was this helpful?