{
    "$id": "http://redfish.dmtf.org/schemas/v1/ManagerNetworkProtocol.v1_2_4.json",
    "$ref": "#/definitions/ManagerNetworkProtocol",
    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
    "copyright": "Copyright 2014-2020 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
    "definitions": {
        "Actions": {
            "additionalProperties": false,
            "description": "The available actions for this Resource.",
            "longDescription": "This type shall contain the available actions for this Resource.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "Oem": {
                    "$ref": "#/definitions/OemActions",
                    "description": "The available OEM-specific actions for this Resource.",
                    "longDescription": "This property shall contain the available OEM-specific actions for this Resource.",
                    "versionAdded": "v1_2_0"
                }
            },
            "type": "object"
        },
        "HTTPSProtocol": {
            "additionalProperties": false,
            "description": "The settings for a network protocol associated with a manager.",
            "longDescription": "This type shall describe information about a protocol setting for a manager.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "Port": {
                    "description": "The protocol port.",
                    "longDescription": "This property shall contain the port assigned to the protocol.",
                    "minimum": 0,
                    "readonly": false,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "ProtocolEnabled": {
                    "description": "An indication of whether the protocol is enabled.",
                    "longDescription": "This property shall indicate whether the protocol is enabled.",
                    "readonly": false,
                    "type": [
                        "boolean",
                        "null"
                    ]
                }
            },
            "type": "object"
        },
        "ManagerNetworkProtocol": {
            "additionalProperties": false,
            "description": "The network service settings for the manager.",
            "longDescription": "This Resource shall represent the network service settings for the manager.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "@odata.context": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
                },
                "@odata.etag": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
                },
                "@odata.id": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
                },
                "@odata.type": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
                },
                "Actions": {
                    "$ref": "#/definitions/Actions",
                    "description": "The available actions for this Resource.",
                    "longDescription": "The actions property shall contain the available actions for this Resource.",
                    "versionAdded": "v1_2_0"
                },
                "DHCP": {
                    "$ref": "#/definitions/Protocol",
                    "description": "The settings for this manager's DHCPv4 protocol support.",
                    "longDescription": "This object shall contain the DHCPv4 protocol settings for the manager.",
                    "versionAdded": "v1_1_0"
                },
                "Description": {
                    "anyOf": [
                        {
                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "readonly": true
                },
                "FQDN": {
                    "description": "The fully qualified domain name for the manager obtained by DNS including the host name and top-level domain name.",
                    "longDescription": "This property shall contain the fully qualified domain name for the manager.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ]
                },
                "HTTP": {
                    "$ref": "#/definitions/Protocol",
                    "description": "The settings for this manager's HTTP protocol support.",
                    "longDescription": "This object shall contain the HTTP protocol settings for the manager.  The default Port property value should be `80` for compatibility with established client implementations."
                },
                "HTTPS": {
                    "$ref": "#/definitions/HTTPSProtocol",
                    "description": "The settings for this manager's HTTPS protocol support.",
                    "longDescription": "This object shall contain the HTTPS/SSL protocol settings for this manager.  The default Port property value should be `443` for compatibility with established client implementations."
                },
                "HostName": {
                    "description": "The DNS host name of this manager, without any domain information.",
                    "longDescription": "This property shall contain the host name without any domain information.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ]
                },
                "IPMI": {
                    "$ref": "#/definitions/Protocol",
                    "description": "The settings for this manager's IPMI-over-LAN protocol support.",
                    "longDescription": "This object shall contain the IPMI over LAN protocol settings for the manager.  The default Port property value should be `623` for compatibility with established client implementations."
                },
                "Id": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
                    "readonly": true
                },
                "KVMIP": {
                    "$ref": "#/definitions/Protocol",
                    "description": "The settings for this manager's KVM-IP protocol support that apply to all system instances controlled by this manager.",
                    "longDescription": "This object shall contain the KVM-IP (Keyboard, Video, Mouse over IP) protocol settings for the manager.  If multiple systems are supported by this manager, these properties, if present, apply to all instances of KVMIP controlled by this manager."
                },
                "NTP": {
                    "$ref": "#/definitions/NTPProtocol",
                    "description": "The settings for this manager's NTP protocol support.",
                    "longDescription": "This object shall contain the NTP protocol settings for the manager.",
                    "versionAdded": "v1_2_0"
                },
                "Name": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
                    "readonly": true
                },
                "Oem": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
                    "description": "The OEM extension property.",
                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
                },
                "SNMP": {
                    "$ref": "#/definitions/SNMPProtocol",
                    "description": "The settings for this manager's SNMP support.",
                    "longDescription": "This object shall contain the SNMP protocol settings for this manager.  The default Port property value should be `161` for compatibility with established client implementations."
                },
                "SSDP": {
                    "$ref": "#/definitions/SSDProtocol",
                    "description": "The settings for this manager's SSDP support.",
                    "longDescription": "This object shall contain the SSDP protocol settings for this manager.  Simple Service Discovery Protocol (SSDP) is for network discovery of devices supporting the Redfish Service.  The default Port property value should be `1900` for compatibility with established client implementations."
                },
                "SSH": {
                    "$ref": "#/definitions/Protocol",
                    "description": "The settings for this manager's Secure Shell (SSH) protocol support.",
                    "longDescription": "This object shall contain the Secure Shell (SSH) protocol settings for the manager.  The default value should be 22 for compatibility with established client implementations."
                },
                "Status": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
                    "description": "The status and health of the Resource and its subordinate or dependent Resources.",
                    "longDescription": "This property shall contain any status or health properties of the Resource."
                },
                "Telnet": {
                    "$ref": "#/definitions/Protocol",
                    "description": "The settings for this manager's Telnet protocol support.",
                    "longDescription": "This object shall contain the Telnet protocol settings for this manager.  The default Port property value should be `23` for compatibility with established client implementations."
                },
                "VirtualMedia": {
                    "$ref": "#/definitions/Protocol",
                    "description": "The settings for this manager's virtual media support that apply to all system instances controlled by this manager.",
                    "longDescription": "This object shall contain the virtual media protocol settings for this manager.  The Port property shall contain the TCP port assigned for Virtual Media usage.  If multiple systems are supported by this manager, these properites, if present, apply to all instances of virtual media controlled by this manager."
                }
            },
            "required": [
                "@odata.id",
                "@odata.type",
                "Id",
                "Name"
            ],
            "type": "object"
        },
        "NTPProtocol": {
            "additionalProperties": false,
            "description": "The settings for a network protocol associated with a manager.",
            "longDescription": "This type shall describe information about a protocol setting for a manager.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "NTPServers": {
                    "description": "Indicates to which NTP servers this manager is subscribed.",
                    "items": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "longDescription": "This property shall contain all the NTP servers for which this manager is using to obtain time.",
                    "readonly": false,
                    "type": "array",
                    "versionAdded": "v1_2_0"
                },
                "Port": {
                    "description": "The protocol port.",
                    "longDescription": "This property shall contain the port assigned to the protocol.",
                    "minimum": 0,
                    "readonly": false,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "ProtocolEnabled": {
                    "description": "An indication of whether the protocol is enabled.",
                    "longDescription": "This property shall indicate whether the protocol is enabled.",
                    "readonly": false,
                    "type": [
                        "boolean",
                        "null"
                    ]
                }
            },
            "type": "object"
        },
        "NotifyIPv6Scope": {
            "enum": [
                "Link",
                "Site",
                "Organization"
            ],
            "enumDescriptions": {
                "Link": "SSDP NOTIFY messages are sent to addresses in the IPv6 local link scope.",
                "Organization": "SSDP NOTIFY messages are sent to addresses in the IPv6 local organization scope.",
                "Site": "SSDP NOTIFY messages are sent to addresses in the IPv6 local site scope."
            },
            "type": "string"
        },
        "OemActions": {
            "additionalProperties": true,
            "description": "The available OEM-specific actions for this Resource.",
            "longDescription": "This type shall contain the available OEM-specific actions for this Resource.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {},
            "type": "object"
        },
        "Protocol": {
            "additionalProperties": false,
            "description": "The settings for a network protocol associated with a manager.",
            "longDescription": "This type shall describe information about a protocol setting for a manager.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "Port": {
                    "description": "The protocol port.",
                    "longDescription": "This property shall contain the port assigned to the protocol.",
                    "minimum": 0,
                    "readonly": false,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "ProtocolEnabled": {
                    "description": "An indication of whether the protocol is enabled.",
                    "longDescription": "This property shall indicate whether the protocol is enabled.",
                    "readonly": false,
                    "type": [
                        "boolean",
                        "null"
                    ]
                }
            },
            "type": "object"
        },
        "SNMPProtocol": {
            "additionalProperties": false,
            "description": "The settings for a network protocol associated with a manager.",
            "longDescription": "This type shall describe information about a protocol setting for a manager.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "Port": {
                    "description": "The protocol port.",
                    "longDescription": "This property shall contain the port assigned to the protocol.",
                    "minimum": 0,
                    "readonly": false,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "ProtocolEnabled": {
                    "description": "An indication of whether the protocol is enabled.",
                    "longDescription": "This property shall indicate whether the protocol is enabled.",
                    "readonly": false,
                    "type": [
                        "boolean",
                        "null"
                    ]
                }
            },
            "type": "object"
        },
        "SSDProtocol": {
            "additionalProperties": false,
            "description": "The settings for a network protocol associated with a manager.",
            "longDescription": "This type shall describe information about a protocol setting for a manager.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "NotifyIPv6Scope": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/NotifyIPv6Scope"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "The IPv6 scope for multicast NOTIFY messages for SSDP.",
                    "longDescription": "This property shall contain the IPv6 scope for multicast NOTIFY messages.  The valid enumerations are a subset of the available IPv6 scope types.",
                    "readonly": false
                },
                "NotifyMulticastIntervalSeconds": {
                    "description": "The time interval, in seconds, between transmissions of the multicast NOTIFY ALIVE message from this service for SSDP.",
                    "longDescription": "This property shall contain the time interval, in seconds, between transmissions of the multicast NOTIFY ALIVE message.  A setting of 0 seconds shall disable this functionality.  The recommended value is 600 seconds.",
                    "minimum": 0,
                    "readonly": false,
                    "type": [
                        "integer",
                        "null"
                    ],
                    "units": "s"
                },
                "NotifyTTL": {
                    "description": "The time-to-live hop count for SSDP multicast NOTIFY messages.",
                    "longDescription": "This property shall contain the time-to-live hop count used for multicast NOTIFY messages.  The recommended value is 2.",
                    "minimum": 1,
                    "readonly": false,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "Port": {
                    "description": "The protocol port.",
                    "longDescription": "This property shall contain the port assigned to the protocol.",
                    "minimum": 0,
                    "readonly": false,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "ProtocolEnabled": {
                    "description": "An indication of whether the protocol is enabled.",
                    "longDescription": "This property shall indicate whether the protocol is enabled.",
                    "readonly": false,
                    "type": [
                        "boolean",
                        "null"
                    ]
                }
            },
            "type": "object"
        }
    },
    "owningEntity": "DMTF",
    "release": "2017.1",
    "title": "#ManagerNetworkProtocol.v1_2_4.ManagerNetworkProtocol"
}