← All message topics  ·  schema Proximity/dyad_event_message.json

header

FieldTypeRequiredAllowed valuesDescription
timestamp string
message_type string event
version string The message format version

msg

FieldTypeRequiredAllowed valuesDescription
experiment_id string
trial_id string
timestamp string
source string
sub_type string Event:dyad
version string
replay_parent_type string|null TRIAL REPLAY null
replay_parent_id string|null
replay_id string|null

data

FieldTypeRequiredAllowed valuesDescription
id string
event string start update end
elapsed_milliseconds number
participants array<object>
participants[].callsign string The Call Sign Assigned to the Player
participants[].participant_id string The participant id this data is associated with
participants[].role string None Search_Specialist Hazardous_Material_Specialist Medical_Specialist
in-dyad-probability number
duration number

Example messages

{
    "header": {
        "timestamp": "2021-10-11T04:09:04.367033Z",
        "message_type": "event",
        "version": "1.1"
    },
    "msg": {
        "sub_type": "Event:dyad",
        "version": "1.0",
        "source": "IHMC_Dyad_AC",
        "timestamp": "2021-10-11T04:09:04.367033Z",
        "experiment_id": "39decb46-72fc-4a54-9a78-7571b6011e27",
        "trial_id": "1d835d89-8fce-4e28-b3f0-549dac423d25"
    },
    "data": {
        "id": "7b87ee9f-fbe7-448d-b00f-35b93844a623",
        "event": "start",
        "elapsed_milliseconds": 30615,
        "participants": [
            { "callsign": "red", "participant_id": "p1", "role": "Search_Specialist" },
            { "callsign": "green", "participant_id": "p2", "role": "None" }
        ],
        "in-dyad-probability": 0.5
    }
}
{
    "header": {
        "timestamp": "2021-10-11T04:11:16.755022Z",
        "message_type": "event",
        "version": "1.1"
    },
    "msg": {
        "sub_type": "Event:dyad",
        "version": "1.0",
        "source": "IHMC_Dyad_AC",
        "timestamp": "2021-10-11T04:11:16.755022Z",
        "experiment_id": "39decb46-72fc-4a54-9a78-7571b6011e27",
        "trial_id": "1d835d89-8fce-4e28-b3f0-549dac423d25"
    },
    "data": {
        "id": "7b87ee9f-fbe7-448d-b00f-35b93844a623",
        "event": "update",
        "elapsed_milliseconds": 163003,
        "participants": [
            { "callsign": "red", "participant_id": "p1", "role": "Search_Specialist" },
            { "callsign": "green", "participant_id": "p2", "role": "None" }
        ],
        "in-dyad-probability": 1.0
    }
}
{
    "header": {
        "timestamp": "2021-10-11T04:11:27.917094Z",
        "message_type": "event",
        "version": "1.1"
    },
    "msg": {
        "sub_type": "Event:dyad",
        "version": "1.0",
        "source": "IHMC_Dyad_AC",
        "timestamp": "2021-10-11T04:11:27.917094Z",
        "experiment_id": "39decb46-72fc-4a54-9a78-7571b6011e27",
        "trial_id": "1d835d89-8fce-4e28-b3f0-549dac423d25"
    },
    "data": {
        "id": "7b87ee9f-fbe7-448d-b00f-35b93844a623",
        "event": "end",
        "elapsed_milliseconds": 174166,
        "participants": [
            { "callsign": "red", "participant_id": "p1", "role": "Search_Specialist" },
            { "callsign": "green", "participant_id": "p2", "role": "None" }
        ],
        "in-dyad-probability": 0.0,
        "duration": 143551
    }
}
Raw JSON Schema (resolved)
{
  "$id": "http://asist.aptima.com/schemas/event_player_dyad.json",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "definitions": {},
  "properties": {
    "data": {
      "$id": "#/properties/message/properties/data",
      "properties": {
        "duration": {
          "$id": "#/properties/event/state/dyad_duration",
          "examples": [
            5000,
            77459,
            689457
          ],
          "pattern": "^[0-9]+$",
          "title": "The Dyad Duration Schema",
          "type": "number"
        },
        "elapsed_milliseconds": {
          "$id": "#/properties/event/state/elapsed_milliseconds",
          "examples": [
            5000,
            77459,
            689457
          ],
          "pattern": "^[0-9]+$",
          "title": "The Elapsed Milliseconds Schema",
          "type": "number"
        },
        "event": {
          "$id": "#/properties/data/properties/dyad_event",
          "enum": [
            "start",
            "update",
            "end"
          ],
          "examples": [
            "start"
          ],
          "title": "The Dyad Event Schema",
          "type": "string"
        },
        "id": {
          "$id": "#/properties/dyad_id",
          "default": "",
          "examples": [
            "7b87ee9f-fbe7-448d-b00f-35b93844a623"
          ],
          "pattern": "([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})",
          "title": "The Dyad Id Schema",
          "type": "string"
        },
        "in-dyad-probability": {
          "$id": "#/properties/event/state/in-dyad-probability",
          "examples": [
            0.0,
            0.5,
            1.0
          ],
          "pattern": "^(0(\\.\\d+)?|1\\.0)$",
          "title": "The In Dyad Probability Schema",
          "type": "number"
        },
        "participants": {
          "$id": "#/properties/data/properties/dyad_participant_list",
          "default": "",
          "items": {
            "$id": "http://asist.aptima.com/schemas/dyad_participant.json",
            "$schema": "http://json-schema.org/draft-07/schema#",
            "definitions": {},
            "properties": {
              "callsign": {
                "$id": "#/properties/data/properties/callsign",
                "examples": [
                  "Alpha",
                  "Bravo",
                  "Delta",
                  "Red",
                  "Green",
                  "Blue"
                ],
                "pattern": "^(.*)$",
                "title": "The Call Sign Assigned to the Player",
                "type": "string"
              },
              "participant_id": {
                "$id": "#/properties/data/properties/participant_id",
                "description": "The participant id this data is associated with",
                "examples": [
                  "participant_1"
                ],
                "title": "The participant_id schema",
                "type": "string"
              },
              "role": {
                "$id": "#/properties/data/properties/new_role",
                "enum": [
                  "None",
                  "Search_Specialist",
                  "Hazardous_Material_Specialist",
                  "Medical_Specialist"
                ],
                "examples": [
                  "Hazardous_Material_Specialist"
                ],
                "title": "The New Role Schema",
                "type": "string"
              }
            },
            "required": [
              "callsign",
              "participant_id",
              "role"
            ],
            "title": "The Dyad Participant Schema",
            "type": "object",
            "version": "1.0"
          },
          "title": "The Dyad Participant List Schema",
          "type": "array"
        }
      },
      "required": [
        "id",
        "event",
        "elapsed_milliseconds",
        "participants",
        "in-dyad-probability"
      ],
      "title": "The Dyad update Data Schema",
      "type": "object"
    },
    "header": {
      "$id": "http://asist.aptima.com/schemas/common_header.json",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "definitions": {},
      "properties": {
        "message_type": {
          "$id": "#/properties/message_type",
          "const": "event",
          "enum": [
            "control",
            "observation",
            "chat",
            "status",
            "trial",
            "event",
            "groundtruth",
            "experiment",
            "metadata",
            "agent"
          ],
          "examples": [
            "observation"
          ],
          "pattern": "^([a-z_]*?)$",
          "title": "The Message_type Schema",
          "type": "string"
        },
        "timestamp": {
          "$id": "#/properties/timestamp",
          "examples": [
            "2019-12-26T12:47:23.1234Z"
          ],
          "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}[.]?[0-9]{0,}?Z",
          "title": "The Timestamp Schema",
          "type": "string"
        },
        "version": {
          "$id": "#/properties/version",
          "examples": [
            "1.0",
            "2.3.1"
          ],
          "pattern": "^([0-9]+\\.)?([0-9]+\\.)?([0-9]+)$",
          "title": "The message format version",
          "type": "string"
        }
      },
      "required": [
        "timestamp",
        "message_type",
        "version"
      ],
      "title": "ASIST message common header Schema",
      "type": "object",
      "version": "0.3"
    },
    "msg": {
      "$id": "http://asist.aptima.com/schemas/event_message.json",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "definitions": {},
      "properties": {
        "experiment_id": {
          "$id": "#/properties/experiment_id",
          "default": "",
          "examples": [
            "123e4567-e89b-12d3-a456-426655440000"
          ],
          "pattern": "(([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})|Not Set|Null|null)",
          "title": "The Experiment Id Schema",
          "type": "string"
        },
        "replay_id": {
          "$id": "#/properties/replay_id",
          "default": "",
          "examples": [
            "123e4567-e89b-12d3-a456-426655440000"
          ],
          "pattern": "(([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})|Not Set|null|Null)",
          "title": "The Replay Id Schema",
          "type": [
            "string",
            "null"
          ]
        },
        "replay_parent_id": {
          "$id": "#/properties/replay_parent_id",
          "default": "",
          "examples": [
            "123e4567-e89b-12d3-a456-426655440000"
          ],
          "pattern": "(([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})|Not Set|null|Null)",
          "title": "The Replay Parent Id Schema",
          "type": [
            "string",
            "null"
          ]
        },
        "replay_parent_type": {
          "$id": "#/properties/replay_parent_type",
          "enum": [
            "TRIAL",
            "REPLAY",
            null
          ],
          "title": "The Replay Parent Type Schema",
          "type": [
            "string",
            "null"
          ]
        },
        "source": {
          "$id": "#/properties/source",
          "default": "",
          "examples": [
            "simulator"
          ],
          "pattern": "^(.*)$",
          "title": "The Source Schema",
          "type": "string"
        },
        "sub_type": {
          "$id": "#/properties/sub_type",
          "const": "Event:dyad",
          "default": "",
          "examples": [
            "equip",
            "triage"
          ],
          "pattern": "^([a-zA-Z0-9_:]*?)$",
          "title": "The Sub Type Schema",
          "type": "string"
        },
        "timestamp": {
          "$id": "#/properties/timestamp",
          "default": "",
          "examples": [
            "2019-12-26T14:05:02.3412Z"
          ],
          "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}[.]?[0-9]{0,}?Z",
          "title": "The Timestamp Schema",
          "type": "string"
        },
        "trial_id": {
          "$id": "#/properties/trial_id",
          "default": "",
          "examples": [
            "123e4567-e89b-12d3-a456-426655440000"
          ],
          "pattern": "(([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})|Not Set|null|Null)",
          "title": "The Trial Id Schema",
          "type": "string"
        },
        "version": {
          "$id": "#/properties/version",
          "default": "",
          "examples": [
            "0.1",
            "1.0.1"
          ],
          "pattern": "^([.]*)|(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$",
          "title": "The Version Schema",
          "type": "string"
        }
      },
      "required": [
        "experiment_id",
        "timestamp",
        "source",
        "sub_type",
        "version"
      ],
      "title": "The Event Message Schema",
      "type": "object",
      "version": "0.5"
    }
  },
  "required": [
    "header",
    "msg",
    "data"
  ],
  "title": "The Event Player Dyad Schema",
  "type": "object",
  "version": "1.0"
}
Upstream spec documentation

Data Subtype: Event:dyad Message Format

This data message subtype, Event:dyad, is used to communicate player dyadic events.

TOPIC

observations/events/player/dyad

Message Fields

Field Name Type Description
header object From Common Message Format section
msg object From the event Header Format section
data.id string Unique id for this dyad.
data.type string dyad message type ENUM of ["start", "update", "end"]
data.elapsed_milliseconds number the number of elapsed milliseconds since mission start
data.participants List of Dyad_Participant list of participants in this dyad
data.in-dyad-probability number The probability that these participants are in a dyad 0.0 - 1.0
data.duration number published when the type is 'end' and indicates how long the dyad lasted in milliseconds.

Message Example

{
    "header": {
        "timestamp": "2021-10-11T04:09:04.367033Z",
        "message_type": "event",
        "version": "1.1"
    },
    "msg": {
        "sub_type": "Event:dyad",
        "version": "1.0",
        "source": "IHMC_Dyad_AC",
        "timestamp": "2021-10-11T04:09:04.367033Z",
        "experiment_id": "39decb46-72fc-4a54-9a78-7571b6011e27",
        "trial_id": "1d835d89-8fce-4e28-b3f0-549dac423d25"
    },
    "data": {
        "id": "7b87ee9f-fbe7-448d-b00f-35b93844a623",
        "event": "start",
        "elapsed_milliseconds": 30615,
        "participants": [
            { "callsign": "red", "participant_id": "p1", "role": "Search_Specialist" },
            { "callsign": "green", "participant_id": "p2", "role": "None" }
        ],
        "in-dyad-probability": 0.5
    }
}
{
    "header": {
        "timestamp": "2021-10-11T04:11:16.755022Z",
        "message_type": "event",
        "version": "1.1"
    },
    "msg": {
        "sub_type": "Event:dyad",
        "version": "1.0",
        "source": "IHMC_Dyad_AC",
        "timestamp": "2021-10-11T04:11:16.755022Z",
        "experiment_id": "39decb46-72fc-4a54-9a78-7571b6011e27",
        "trial_id": "1d835d89-8fce-4e28-b3f0-549dac423d25"
    },
    "data": {
        "id": "7b87ee9f-fbe7-448d-b00f-35b93844a623",
        "event": "update",
        "elapsed_milliseconds": 163003,
        "participants": [
            { "callsign": "red", "participant_id": "p1", "role": "Search_Specialist" },
            { "callsign": "green", "participant_id": "p2", "role": "None" }
        ],
        "in-dyad-probability": 1.0
    }
}
{
    "header": {
        "timestamp": "2021-10-11T04:11:27.917094Z",
        "message_type": "event",
        "version": "1.1"
    },
    "msg": {
        "sub_type": "Event:dyad",
        "version": "1.0",
        "source": "IHMC_Dyad_AC",
        "timestamp": "2021-10-11T04:11:27.917094Z",
        "experiment_id": "39decb46-72fc-4a54-9a78-7571b6011e27",
        "trial_id": "1d835d89-8fce-4e28-b3f0-549dac423d25"
    },
    "data": {
        "id": "7b87ee9f-fbe7-448d-b00f-35b93844a623",
        "event": "end",
        "elapsed_milliseconds": 174166,
        "participants": [
            { "callsign": "red", "participant_id": "p1", "role": "Search_Specialist" },
            { "callsign": "green", "participant_id": "p2", "role": "None" }
        ],
        "in-dyad-probability": 0.0,
        "duration": 143551
    }
}