See: Description
Package | Description |
---|---|
com.sportradar.unifiedodds.sdk | |
com.sportradar.unifiedodds.sdk.oddsentities | |
com.sportradar.unifiedodds.sdk.replay | |
com.sportradar.unifiedodds.sdk.sportentities |
Then to actually connect and start receiving messages you do the following:
MyOddsFeedListener listener = new MyOddsFeedListener(); OddsFeedConfiguration config = new OddsFeedConfiguration(); config.setBookmakerId(your-bookmaker-id); config.setAccessToken(your-access-token); OddsFeedSessionBuilder builder = OddsFeedSessionBuilder(myListener, config); OddsFeedSession session = builder.setListener(myListener).setMessageInterest(MessageInterest.AllMessages).build();
See OddsFeedListener and OddsFeedSessionBuilder for details.
That should be about it! If you want to get available sport events, active tournaments, or all sports you can get the SportsInfo from the OddsFactory:
SportsInfo sportsInfo = session.getSportsInfo(); for (String sport : sportsInfo.getSports()) { System.out.println(sport); } for (Tournament tournament : sportsInfo.getActiveTournaments("soccer")) { System.out.println(tournament); } // Get all sportEvents scheduled for today for (SportEvent sportEvent : sportsInfo.getSportEventsFor(new Date())) { } // Get all live sportEvents for (SportEvent sportEvent : sportsInfo.getLiveSportEvents()) { }
Another more scalable way of listening to events is to have two different sessions one for high-priority messages and another for low-priority-messages. This means that the low priority messages will not prevent high-priority messages from getting processed. (BetSettlement is considered low-priority, OddsChanges and FixtureChange are considered high-priority events). To create two different sessions for the high and low-priority events you do the following:
MyOddsFeedListener listener = new MyOddsFeedListener(); OddsFeedConfiguration config = new OddsFeedConfiguration(); config.setBookmakerId(your-bookmaker-id); config.setAccessToken(your-access-token); OddsFeedSessionBuilder builder = OddsFeedSessionBuilder(myListener, config); builder.setListener(listener).setMessageInterest(MessageInterest.HiPrioMessagesOnly).build(); builder.setListener(listener).setMessageInterest(MessageInterest.LoPrioMessagesOnly).build();Note that the same listener is used for both channels, but when creating the two different sessions, different MessageInterest levels are provided. In this case, you will get two different threads doing the processing of the different types of messages.
builder.setListener(listener).setMessageInterest(MessageInterest.LiveMessagesOnly).build();This kind of session will receive all messages except OddsChanges happening before the game starts (you will start receiving OddsChanges some minutes before the game starts) and BetSettlement resulting from confirmed results (you will still receive BetSettlments when the game ends, but not when Sportradar some 15minutes or later after the game confirms the match results).
Copyright © 2016–2017. All rights reserved.