Six4Win.WebApi

<back to all web services

ConfigureGame

Requires Authentication
The following routes are available for this service:
POST/cmd/configure/game
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    public static class ConfigureGame
    {
        public String id = null;
        public GameConfiguration configuration = null;
        
        public String getId() { return id; }
        public ConfigureGame setId(String value) { this.id = value; return this; }
        public GameConfiguration getConfiguration() { return configuration; }
        public ConfigureGame setConfiguration(GameConfiguration value) { this.configuration = value; return this; }
    }

    public static class GameConfiguration
    {
        public String id = null;
        public Integer queueSize = null;
        public RoundConfiguration roundConfiguration = null;
        public HappyHourConfig happyHourConfig = null;
        
        public String getId() { return id; }
        public GameConfiguration setId(String value) { this.id = value; return this; }
        public Integer getQueueSize() { return queueSize; }
        public GameConfiguration setQueueSize(Integer value) { this.queueSize = value; return this; }
        public RoundConfiguration getRoundConfiguration() { return roundConfiguration; }
        public GameConfiguration setRoundConfiguration(RoundConfiguration value) { this.roundConfiguration = value; return this; }
        public HappyHourConfig getHappyHourConfig() { return happyHourConfig; }
        public GameConfiguration setHappyHourConfig(HappyHourConfig value) { this.happyHourConfig = value; return this; }
    }

    public static class RoundConfiguration
    {
        public RecordList<Float> coefficients = null;
        public Boolean isDoubleTripleActive = null;
        public Boolean isJackpot5Active = null;
        public Integer countdownDurationInSeconds = null;
        public CountdownConfiguration countdownConfiguration = null;
        public DrawConfiguration drawConfiguration = null;
        public Integer resultsDurationInSeconds = null;
        public RTPStrategies rtpStrategy = null;
        public HappyHourConfiguration happyHourConfiguration = null;
        
        public RecordList<Float> getCoefficients() { return coefficients; }
        public RoundConfiguration setCoefficients(RecordList<Float> value) { this.coefficients = value; return this; }
        public Boolean getIsDoubleTripleActive() { return isDoubleTripleActive; }
        public RoundConfiguration setIsDoubleTripleActive(Boolean value) { this.isDoubleTripleActive = value; return this; }
        public Boolean getIsJackpot5Active() { return isJackpot5Active; }
        public RoundConfiguration setIsJackpot5Active(Boolean value) { this.isJackpot5Active = value; return this; }
        public Integer getCountdownDurationInSeconds() { return countdownDurationInSeconds; }
        public RoundConfiguration setCountdownDurationInSeconds(Integer value) { this.countdownDurationInSeconds = value; return this; }
        public CountdownConfiguration getCountdownConfiguration() { return countdownConfiguration; }
        public RoundConfiguration setCountdownConfiguration(CountdownConfiguration value) { this.countdownConfiguration = value; return this; }
        public DrawConfiguration getDrawConfiguration() { return drawConfiguration; }
        public RoundConfiguration setDrawConfiguration(DrawConfiguration value) { this.drawConfiguration = value; return this; }
        public Integer getResultsDurationInSeconds() { return resultsDurationInSeconds; }
        public RoundConfiguration setResultsDurationInSeconds(Integer value) { this.resultsDurationInSeconds = value; return this; }
        public RTPStrategies getRtpStrategy() { return rtpStrategy; }
        public RoundConfiguration setRtpStrategy(RTPStrategies value) { this.rtpStrategy = value; return this; }
        public HappyHourConfiguration getHappyHourConfiguration() { return happyHourConfiguration; }
        public RoundConfiguration setHappyHourConfiguration(HappyHourConfiguration value) { this.happyHourConfiguration = value; return this; }
    }

    public static class RecordList<T> extends ArrayList<T>
    {
        
    }

    public static class CountdownConfiguration
    {
        public Integer lockdownStepFromEnd = null;
        public Integer assertLockdownStepFromEnd = null;
        
        public Integer getLockdownStepFromEnd() { return lockdownStepFromEnd; }
        public CountdownConfiguration setLockdownStepFromEnd(Integer value) { this.lockdownStepFromEnd = value; return this; }
        public Integer getAssertLockdownStepFromEnd() { return assertLockdownStepFromEnd; }
        public CountdownConfiguration setAssertLockdownStepFromEnd(Integer value) { this.assertLockdownStepFromEnd = value; return this; }
    }

    public static class DrawConfiguration
    {
        public Integer introIntervalInMs = null;
        public Integer animationIntervalInMs = null;
        public Integer outroIntervalInMs = null;
        
        public Integer getIntroIntervalInMs() { return introIntervalInMs; }
        public DrawConfiguration setIntroIntervalInMs(Integer value) { this.introIntervalInMs = value; return this; }
        public Integer getAnimationIntervalInMs() { return animationIntervalInMs; }
        public DrawConfiguration setAnimationIntervalInMs(Integer value) { this.animationIntervalInMs = value; return this; }
        public Integer getOutroIntervalInMs() { return outroIntervalInMs; }
        public DrawConfiguration setOutroIntervalInMs(Integer value) { this.outroIntervalInMs = value; return this; }
    }

    public static enum RTPStrategies
    {
        @SerializedName("0") Rng(0),
        @SerializedName("1") Accumulator(1);

        private final int value;
        RTPStrategies(final int intValue) { value = intValue; }
        public int getValue() { return value; }
    }

    public static class HappyHourConfiguration
    {
        public Boolean isHappyHour = null;
        public BigDecimal oddsModifier = null;
        public BigDecimal roundPoolBonusPct = null;
        
        public Boolean getIsHappyHour() { return isHappyHour; }
        public HappyHourConfiguration setIsHappyHour(Boolean value) { this.isHappyHour = value; return this; }
        public BigDecimal getOddsModifier() { return oddsModifier; }
        public HappyHourConfiguration setOddsModifier(BigDecimal value) { this.oddsModifier = value; return this; }
        public BigDecimal getRoundPoolBonusPct() { return roundPoolBonusPct; }
        public HappyHourConfiguration setRoundPoolBonusPct(BigDecimal value) { this.roundPoolBonusPct = value; return this; }
    }

    public static class HappyHourConfig
    {
        public Boolean isActive = null;
        public ArrayList<HappyHourItem> items = null;
        
        public Boolean getIsActive() { return isActive; }
        public HappyHourConfig setIsActive(Boolean value) { this.isActive = value; return this; }
        public ArrayList<HappyHourItem> getItems() { return items; }
        public HappyHourConfig setItems(ArrayList<HappyHourItem> value) { this.items = value; return this; }
    }

    public static class HappyHourItem
    {
        public Long id = null;
        public TimeInterval interval = null;
        public BigDecimal oddsModifier = null;
        public BigDecimal roundPoolBonusPct = null;
        
        public Long getId() { return id; }
        public HappyHourItem setId(Long value) { this.id = value; return this; }
        public TimeInterval getInterval() { return interval; }
        public HappyHourItem setInterval(TimeInterval value) { this.interval = value; return this; }
        public BigDecimal getOddsModifier() { return oddsModifier; }
        public HappyHourItem setOddsModifier(BigDecimal value) { this.oddsModifier = value; return this; }
        public BigDecimal getRoundPoolBonusPct() { return roundPoolBonusPct; }
        public HappyHourItem setRoundPoolBonusPct(BigDecimal value) { this.roundPoolBonusPct = value; return this; }
    }

    public static class TimeInterval
    {
        public TimePoint start = null;
        public TimePoint end = null;
        
        public TimePoint getStart() { return start; }
        public TimeInterval setStart(TimePoint value) { this.start = value; return this; }
        public TimePoint getEnd() { return end; }
        public TimeInterval setEnd(TimePoint value) { this.end = value; return this; }
    }

    public static class TimePoint
    {
        public Integer hour = null;
        public Integer minute = null;
        
        public Integer getHour() { return hour; }
        public TimePoint setHour(Integer value) { this.hour = value; return this; }
        public Integer getMinute() { return minute; }
        public TimePoint setMinute(Integer value) { this.minute = value; return this; }
    }

}

Java ConfigureGame DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /cmd/configure/game HTTP/1.1 
Host: s4w2.api.bettor.cc 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: String,
	configuration: 
	{
		queueSize: 0,
		roundConfiguration: 
		{
			coefficients: 
			[
				0
			],
			isDoubleTripleActive: False,
			isJackpot5Active: False,
			countdownDurationInSeconds: 0,
			countdownConfiguration: 
			{
				lockdownStepFromEnd: 0,
				assertLockdownStepFromEnd: 0
			},
			drawConfiguration: 
			{
				introIntervalInMs: 0,
				animationIntervalInMs: 0,
				outroIntervalInMs: 0
			},
			resultsDurationInSeconds: 0,
			rtpStrategy: 0,
			happyHourConfiguration: 
			{
				isHappyHour: False,
				oddsModifier: 0,
				roundPoolBonusPct: 0
			}
		},
		happyHourConfig: 
		{
			isActive: False,
			items: 
			[
				{
					id: 0,
					interval: 
					{
						start: 
						{
							hour: 0,
							minute: 0
						},
						end: 
						{
							hour: 0,
							minute: 0
						}
					},
					oddsModifier: 0,
					roundPoolBonusPct: 0
				}
			]
		}
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	errorCode: String,
	message: String,
	stackTrace: String,
	errors: 
	[
		{
			errorCode: String,
			fieldName: String,
			message: String,
			meta: 
			{
				String: String
			}
		}
	],
	meta: 
	{
		String: String
	}
}