Event Disconnections

Overview

Our API sends heartbeats every 10 seconds to still indicate a healthy connection to the event.

However, if there are local connection/power issues at an event we will send an alarm packet. From that point on, we will send a new alarm packet every 25 seconds until the connection is restored at which point we will reconstruct all of the lost packets.

Whilst we aim to limit this, in global areas with limited internet infrastructure there will always unfortunately be an amount of connectivity issues. This is improving year on year.

Alarm Packets

As soon as we are aware there are connectivity issues, we will issue an alarm packet much like the following:

  • ALARM JSON

{
  "seqNum": 13,
  "timestamp": "2022-06-27T15:11:19.582Z",
  "eventElementType": "Alarm",
  "lastReceivedTimestamp": "2022-06-27T15:10:55.471Z"
}

Best Practice

You should use Alarm packets to suspend markets

Reconstructed Packets

If the connectivity issues persist and the players continue to play, we may not deliver packets live. As soon as connectivity is re-established, we will reconstruct all of the missing keystrokes, as live. They should not be treated as live but will provide an accurate point-by-point description of what happened.

An example of a reconstructed packet is as follows:

  • RECONSTRUCTED JSON

{
  "server": {
    "team": "TeamA"
  },
  "timestamp": "2022-06-27T15:11:26.277Z",
  "nextServer": {
    "team": "TeamA"
  },
  "delayStatus": "RECONSTRUCTED",
  "score": {
    "currentSetScore": {
      "gamesA": 0,
      "gamesB": 0
    },
    "overallSetScore": {
      "setsA": 0,
      "setsB": 0
    },
    "currentGameScore": {
      "pointsA": "30",
      "pointsB": "0",
      "gameType": "StandardGame"
    },
    "previousSetsScore": []
  },
  "eventElementType": "PointScored",
  "matchTime": "00:01:21",
  "seqNum": 14,
  "details": {
    "scoredBy": "TeamA",
    "pointType": "Standard"
  }
}

Inaccurately Reconstructed Packets

In the event that a match goes offline and we need to reconstruct the keystrokes, we will attempt to reconstruct the correct keystroke sequence up to the confirmed state of the match upon the match coming back online.

If we are unable to do so, the keystroke packets that we know are inaccurate will be marked with RECONSTRUCTION INACCURATE. You should assume these are inaccurate and these should not be used to settle point-by-point markets.

Please note that these are incredibly rare.

Last updated