Six4Win.WebApi

<back to all web services

GetLastRoundsStats

The following routes are available for this service:
All Verbs/qry/stats/last10
# frozen_string_literal: true
# encoding: utf-8


require 'json'
require 'servicestack'


class Rating
    include ServiceStack::DTO

    # @return [Integer]
    attr_accessor :val
    # @return [Integer]
    attr_accessor :count

    def self.properties
        {
            val: { name: 'val' },
            count: { name: 'count' },
        }
    end

end

class Comparison
    include ServiceStack::DTO

    # @return [Integer]
    attr_accessor :v1
    # @return [Integer]
    attr_accessor :v2
    # @return [Float]
    attr_accessor :p1
    # @return [Float]
    attr_accessor :p2

    def self.properties
        {
            v1: { name: 'v1' },
            v2: { name: 'v2' },
            p1: { name: 'p1' },
            p2: { name: 'p2' },
        }
    end

end

class LastRoundsStats
    include ServiceStack::DTO

    # @return [String]
    attr_accessor :id
    # @return [Array]
    attr_accessor :top_six
    # @return [Array]
    attr_accessor :bottom_six
    # @return [List]
    attr_accessor :top_first_colors
    # @return [List]
    attr_accessor :top_colors
    # @return [Comparison]
    attr_accessor :first_nr_even_vs_odd
    # @return [Comparison]
    attr_accessor :first_nr_less_vs_greater24_5
    # @return [Comparison]
    attr_accessor :sum_of_first_five_less_vs_greater_than122_5
    # @return [Comparison]
    attr_accessor :total_even_vs_odd

    def self.properties
        {
            id: { name: 'id' },
            top_six: { name: 'topSix' },
            bottom_six: { name: 'bottomSix' },
            top_first_colors: { name: 'topFirstColors', type: [Rating] },
            top_colors: { name: 'topColors', type: [Rating] },
            first_nr_even_vs_odd: { name: 'firstNrEvenVsOdd', type: Comparison },
            first_nr_less_vs_greater24_5: { name: 'firstNrLessVsGreater24_5', type: Comparison },
            sum_of_first_five_less_vs_greater_than122_5: { name: 'sumOfFirstFiveLessVsGreaterThan122_5', type: Comparison },
            total_even_vs_odd: { name: 'totalEvenVsOdd', type: Comparison },
        }
    end

end

class GetLastRoundsStats
    include ServiceStack::DTO

    def response_type() = LastRoundsStats
    def get_type_name() = 'GetLastRoundsStats'
end

Ruby GetLastRoundsStats DTOs

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

HTTP + XML

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

POST /qry/stats/last10 HTTP/1.1 
Host: s4w1.api.bettor.webhop.biz 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<GetLastRoundsStats xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Six4Win.WebApi.ServiceModel" />
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<LastRoundsStats xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Six4Win.ReadModel.Stats">
  <BottomSix xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:int>0</d2p1:int>
  </BottomSix>
  <FirstNrEvenVsOdd>
    <V1>0</V1>
    <V2>0</V2>
  </FirstNrEvenVsOdd>
  <FirstNrLessVsGreater24_5>
    <V1>0</V1>
    <V2>0</V2>
  </FirstNrLessVsGreater24_5>
  <Id>String</Id>
  <SumOfFirstFiveLessVsGreaterThan122_5>
    <V1>0</V1>
    <V2>0</V2>
  </SumOfFirstFiveLessVsGreaterThan122_5>
  <TopColors>
    <LastRoundsStats.Rating>
      <Count>0</Count>
      <Val>0</Val>
    </LastRoundsStats.Rating>
  </TopColors>
  <TopFirstColors>
    <LastRoundsStats.Rating>
      <Count>0</Count>
      <Val>0</Val>
    </LastRoundsStats.Rating>
  </TopFirstColors>
  <TopSix xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:int>0</d2p1:int>
  </TopSix>
  <TotalEvenVsOdd>
    <V1>0</V1>
    <V2>0</V2>
  </TotalEvenVsOdd>
</LastRoundsStats>