{
  "type": "object",
  "$schema": "http://json-schema.org/draft-04/schema",
  "title": "Input Parameters",
  "properties": {
{%- if epc %}
    "epc_plmn": {
      "default": "00101",
      "title": "Core Network PLMN",
      "description": "Core Network Public Land Mobile Network",
      "type": "string"
    },
    "external_enb_gnb": {
      "default": false,
      "title": "External eNB / gNB",
      "description": "Set to true if external eNB / gNB will need to connect to this core network.",
      "type": "boolean"
    },
    "iperf3": {
      "default": false,
      "title": "iperf3 UDP server",
      "description": "Activate iperf3 UDP server",
      "type": "boolean"
    },
{%- endif %}
    "tx_gain": {
      "title": "Tx gain",
      "description": "Tx gain (in dB)",
      "type": "number",
      "default": {{ default_lte_tx_gain }}
    },
    "rx_gain": {
      "title": "Rx gain",
      "description": "Rx gain (in dB)",
      "type": "number",
      "default": {{ default_lte_rx_gain }}
    },
    "dl_earfcn": {
      "title": "DL EARFCN",
      "description": "Downlink E-UTRA Absolute Radio Frequency Channel Number of the cell",
      "type": "number",
      "default": {{ default_dl_earfcn }}
    },
    "n_rb_dl": {
      "title": "DL RB",
      "description": "number of DL resource blocks",
      "type": "number",
      "default": {{ default_lte_n_rb_dl }}
    },
    "mme_list": {
      "title": "MME list",
      "description": "Optionnal. List of MME to which the gNodeB is connected",
      "patternProperties": {
        ".*": {
          "properties": {
            "mme_addr": {
              "title": "MME Address",
              "description": "IP address (and optional port) of S1AP SCTP connection to the MME. The default port is 36412.",
              "type": "string"
            }
          },
          "type": "object"
        }
      },
      "type": "object",
      "default": {}
    },
    "enb_id": {
      "title": "eNB ID",
      "description": "eNB ID",
      "type": "string",
      "default": "0x1A2D0"
    },
    "pci": {
      "title": "Physical Cell ID",
      "description": "Physical Cell ID",
      "type": "number",
      "default": 1
    },
    "plmn_list": {
      "title": "PLMN list",
      "description": "List of PLMNs broadcasted by the eNodeB, at most 6 (default: 00101)",
      "patternProperties": {
        ".*": {
          "properties": {
            "plmn": {
              "default": "00101",
              "title": "Public Land Mobile Network",
              "description": "Public Land Mobile Network",
              "type": "string"
            },
            "attach_without_pdn": {
              "default": false,
              "title": "Attach Without PDN",
              "description": "Optional boolean. Indicates if PLMN supports attach without PDN connectivity.",
              "type": "boolean"
            },
            "reserved": {
              "default": false,
              "title": "Reserved",
              "description": "True if the cell is reserved for operator use.",
              "type": "boolean"
            }
          },
          "type": "object"
        }
      },
      "type": "object",
      "default": {}
    },
    "inactivity_timer": {
      "title": "Inactivity Timer",
      "description": "Send RRC connection release after this time (in ms) of network inactivity.",
      "type": "number",
      "default": {{ default_lte_inactivity_timer }}
    },
    "use_ipv4": {
      "default": false,
      "title": "Use IPv4",
      "description": "Set to true to use IPv4 for AMF / MME addresses",
      "type": "boolean"
    },
    "enb_stats_fetch_period": {
      "title": "eNB statistics fetch period (seconds)",
      "description": "Describes how often a call to Amarisoft remote API is made to get eNB statistics",
      "type": "number",
      "default": 60
    },
    "max_rx_sample_db": {
      "title": "Maximum RX sample value (dB)",
      "description": "Maximum RX sample threshold above which RX saturated promise will fail",
      "type": "number",
      "default": 0
    },
    "min_txrx_delay": {
      "title": "Minimum available time for radio front end processing (ms)",
      "description": "Baseband latency promise will fail if minimum TX/RX diff reaches threshold (higher than this value)",
      "type": "number",
      "default": 5
    },
    "avg_txrx_delay": {
      "title": "Average available time for radio front end processing (ms)",
      "description": "Baseband latency promise will fail if average TX/RX diff reaches threshold (higher than this value)",
      "type": "number",
      "default": 7
    },
    "promise_cpu_temperature_threshold": {
      "title": "CPU temperature promise threshold",
      "description": "Temperature threshold above which CPU temperature promise will fail",
      "type": "number",
      "default": 90
    },
    "promise_cpu_avg_temperature_threshold": {
      "title": "Average CPU temperature promise threshold",
      "description": "If average temperature over specified duration reaches this threshold, promise will fail",
      "type": "number",
      "default": 80
    },
    "promise_cpu_avg_temperature_threshold_duration": {
      "title": "Average CPU temperature promise threshold duration",
      "description": "Duration during which average temperature should not exceed specified threshold",
      "type": "number",
      "default": 600
    }
  }
}
