{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "description": "Parameters to instantiate JS drone",
  "additionalProperties": false,
  "properties": {
    "autopilot-ip": {
      "title": "IP address of the drone's autopilot",
      "description": "IP used to create a connection with the autopilot.",
      "type": "string",
      "default": "192.168.27.1"
    },
    "id": {
      "title": "Drone ID",
      "description": "Unique identifier of the drone.",
      "type": "integer",
      "default": 1
    },
    "is-a-simulation": {
      "title": "Set the flight as a simulation",
      "description": "The option used to determine if the flight is real or if it is a simulation. This affects the context of the flight (e.g. if the take off is manual or automatic).",
      "type": "boolean",
      "default": false
    },
    "multicast-ipv6": {
      "title": "IP of the multicast group",
      "description": "IP address used to communicate with the other drones.",
      "type": "string",
      "default": "ff15::1111"
    },
    "net-if": {
      "title": "Network interface",
      "description": "Interface used for multicast traffic.",
      "type": "string",
      "default": "eth0"
    },
    "drone-id-list": {
      "title": "List of drones IDs",
      "description": "List of identifiers of drones.",
      "type": "array",
      "default": []
    },
    "flight-script": {
      "title": "Script of the flight",
      "description": "Script which will be executed for the flight",
      "type": "string",
      "textarea": true
    }
  }
}
