Beach Volleyball
- Martin Mand
- Aleksander Puumets
- Alexandru Iftimiciuc
The rules of Beach Volleyball can be found here: http://www.fivb.org/EN/Refereeing-Rules/documents/FIVB-BeachVolleyball_Rules2013-EN_20130531.pdf
This section describes the V1 Beach Volleyball match state contract.
Match Summary Message
The Summary message summarises the major match events into a single, easily digested message.
{ "FixtureId":"3421547", "CustomerId":6444, "TeamA":{}, "TeamB":{}, "StartedAtUtc":"2015-10-01T15:15:44.95Z", "FinishedAtUtc":null, "CurrentServer":"TeamA", "MatchScore":{}, "MatchStatus":"BetweenPoints", "SanctionStatus":"Safe", "IsReliable":true, "MessageTimestampUtc":"2015-10-01T15:15:44.9551641Z" }
Element | Type | Description |
---|---|---|
FixtureId | Integer | An immutable identifier for the event |
CustomerId | Integer | An immutable identifier for the customer |
TeamA | Team | An object describing Team A |
TeamB | Team | An object describing Team B |
StartedAtUtc | DateTime, optional | The time that the match started if the match has started, Null otherwise |
FinishedAtUtc | DateTime, optional | The time that the match finished, if the match has finished, Null otherwise |
CurrentServer | TeamIdentifier, optional | An enum that describes the team that is currently serving. Possible values are: |
MatchScore | MatchScore | An object that describes the current match score |
SanctionStatus | SanctionStatus | An enum that describes the sanction status. Possible values are: |
IsReliable | Boolean | True if the data values are reliable, False otherwise |
MatchStatus | MatchStatus | An enum that describes the current state of the match. Possible values are: |
MessageTimestampUtc | DateTime | The time that the message was generated |
MatchScore
An object that describes the current match score.
{ "ScoreInSets":{}, "ScoreInPoints":{} }
Element | Type | Description |
---|---|---|
ScoreInSets | Score | An object that describes the current score in sets |
ScoreInPoints | Score | An object that describes the score of the current set in points |
Score
An object that describes a score.
{ "TeamA":6, "TeamB":3 }
Element | Type | Description |
---|---|---|
TeamA | Integer | TeamA's score |
TeamB | Integer | TeamB's score |
Team
An object that describes a team. The Id and Name will match the information provided in Fixture; Jersey is provided only here.
{ "Id":"184374", "Name":"Windsor Wildcats", "Jersey":{} }
Element | Type | Description |
---|---|---|
Id | String | The team's identifier |
Name | String | The name of the team |
Jersey | Jersey | An object that describes the team's jersey |
Jersey
An object that describes a team's jersey.
{ "Color1":{}, "Color2":{}, "PantsColor":{}, "SocksColor":{}, "JerseyDesign":{}, }
Element | Type | Description |
---|---|---|
Color1 | Color | An object describing the primary colour of the team's jersey |
Color2 | Color | An object describing the secondary colour of the team's jersey |
PantsColor | Color | An object describing the colour of the team's pants |
SocksColor | Color | An object describing the colour of the team's socks |
JerseyDesign | JerseyDesign | An enum describing the design of the team's jersey. Possible values include: |
Match Details Message
The Details message provides details of every action that has taken place in a match.
{ "FixtureId":"3421547", "CustomerId":6444, "StartedAtUtc":"2015-10-01T15:15:44.95Z", "FinishedAtUtc":"2015-10-01T16:25:34.05Z", "TeamA":{}, "TeamB":{}, "CurrentServer":"TeamA", "Match":{}, "MatchStatus":"BetweenPoints", "SanctionStatus":"Safe", "IsReliable":true, "MessageTimestampUtc":"2015-10-01T15:15:44.9551641Z", "IsCoverageCancelled":true, "CoverageCancelledAtUtc":"2015-10-01T15:15:44.9551641Z" }
Element | Type | Description |
---|---|---|
FixtureId | Integer | An immutable identifier for the event |
CustomerId | Integer | An immutable identifier for the customer |
StartedAtUtc | DateTime, optional | The time that the match started if the match has started, Null otherwise |
FinishedAtUtc | DateTime, optional | The time that the match finished if the match has finished, Null otherwise |
TeamA | Team | An object describing Team A |
TeamB | Team | An object describing Team B |
CurrentServer | TeamIdentifier, optional | The team that is currently serving |
Match | Match |
|
MatchStatus | MatchStatus | The current state of the match. Possible values are listed above. |
SanctionStatus | SanctionStatus | An enum that describes the sanction status. |
IsReliable | Boolean | True if the data values are reliable, False otherwise |
MessageTimestampUtc | DateTime | The time in UTC at which the message was generated |
IsCoverageCancelled | Boolean | True if coverage has been cancelled, False otherwise |
CoverageCancelledAtUtc | Datetime, optional | If IsCoverageCancelled is True, the datetime at which coverage was cancelled |
Match
The Match object describes the current score and provides a complete match history.
{ "Sets":{}, "ScoreInSets":{}, "Kills":{}, "Blocks":{}, "Outs":{}, "Aces":{}, "Errors":{}, "ServiceErrors":{}, "Penalties":{}, "Expulsions":{}, "Disqualifications":{}, "MatchWinner":"TeamA", "StartedAtUtc":"2015-10-01T15:15:44.95Z", "FinishedAtUtc":"2015-10-01T16:25:34.05Z", "IsConfirmedComplete":true }
Element | Type | Description |
---|---|---|
Sets | Set | An array of Set objects |
ScoreInSets | Score | The current score in sets |
Kills | Score | The number of kills by each team |
Blocks | Score | The number of blocks by each team |
Outs | Score | The number of outs by each team |
Aces | Score | The number of aces by each team |
Errors | Score | The number of errors by each team |
ServiceErrors | Score | The number of service errors by each team |
Penalties | Score | The number of penalties by each team |
Explusions | Explusion | An array of objects describing explusions |
Disqualifications | Disqualification | An object that describes disqualification events |
MatchWinner | TeamIdentifier, optional | The team that won the match if the match has ended |
StartedAtUtc | DateTime, optional | The time that the match started if the match has started, Null otherwise |
FinishedAtUtc | DateTime, optional | The time that the match finished if the match has finished, Null otherwise |
IsConfirmedComplete | Boolean | True if match is complete, False otherwise |
Set
A collection of objects detailing actions in a set.
{ "SetNumber":1, "Points":{}, "ScoreInPoints":{}, "RequestedTimeOuts":{}, "SetWinner":"TeamA", "IsGoldenSet":False "StartedAtUtc":"2015-10-01T15:15:44.95Z", "FinishedAtUtc":"2015-10-01T16:25:34.05Z", "IsConfirmedComplete":True }
Element | Type | Description |
---|---|---|
SetNumber | Integer | The set described this this Set object |
Points | Point | An array of point objects detailing the points played so far in this set |
ScoreInPoints | Score | An object that describes the score of the current set in points |
RequestedTimeOuts | Score |
|
SetWinner | TeamIdentifier, optional | Indicates which team won the set if the set is complete, Null otherwise |
IsGoldenSet | Boolean | True if this set is a golden set, False otherwise (Not currently in covered, always sent as False) |
StartedAtUtc | DateTime, optional | The time that the match started if the match has started, Null otherwise |
FinishedAtUtc | DateTime, optional | The time that the match finished if the match has finished, Null otherwise |
IsConfirmedComplete | Boolean | Indicates which team served the first point |
Point
A collection of objects describing a point.
{ "PointNumber":1, "Server":"TeamA", "Winner":"TeamA", "StartedAt":"15:14:44.95", "WonAt":"15:14:46.38", "ScoreWhenPointStarted":{} "StartedAtUtc":"2015-10-01T15:15:44.95Z", "FinishedAtUtc":"2015-10-01T16:25:34.05Z", "IsConfirmedComplete":True }
Element | Type | Description |
---|---|---|
PointNumber | Integer | The number of the point being described |
Server | TeamIdentifier, optional | The team that is currently serving |
Winner | TeamIdentifier, optional | The team that won the point if the point is complete, Null otherwise |
StartedAt | Timespan, optional | The match time at which the point began. Null if this information is not available. |
WonAt | Timespan, optional | The match time at which the point was won. Null if this information is not available. |
ScoreWhenPointStarted | MatchScore | The match score at the time that the point began |
StartedAtUtc | DateTime, optional | The time at which the point started. Null if this information is not available. |
WonAtUtc | DateTime, optional | The time at which the point was won if the point is complete and the information is available, Null otherwise |
IsConfirmedComplete | Boolean | True if the point is confirmed to be complete, False otherwise |
Expulsion
An object that describes an expulsion within a Beach Volleyball match.
{ "SetNumber":1, "OccurredAt":"":"00:06:00"", "Team":"TeamA" }
Element | Type | Description |
---|---|---|
SetNumber | Integer | The set within which the expulsion occurred. |
OccurredAt | TimeSpan | The match time at which the expulsion occurred. |
Team | TeamIdentifier, optional | The team for which the expulsion was given. |
Disqualification
An object that describes a disqualification within a Beach Volleyball match.
{ "SetNumber":1, "OccurredAt":"00:10:00", "Team":"TeamA" }
Element | Type | Description |
---|---|---|
SetNumber | Integer | The set within which the disqualification occurred. |
OccurredAt | TimeSpan | The match time at which the disqualification occurred. |
Team | TeamIdentifier, optional | The team that was disqualified. |