mirror of
https://github.com/a-sync/game-server-watcher.git
synced 2026-03-31 06:33:44 -04:00
306 lines
10 KiB
JSON
306 lines
10 KiB
JSON
{
|
|
"title": "Game Server",
|
|
"type": "object",
|
|
"required": [
|
|
"name",
|
|
"type",
|
|
"host",
|
|
"port"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"title": "Name",
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"options": {
|
|
"grid_columns": 12
|
|
}
|
|
},
|
|
"type": {
|
|
"title": "GameDig type",
|
|
"description": "Check the <a href=\"https://github.com/gamedig/node-gamedig/blob/master/GAMES_LIST.md\">GameDig games list</a> for requirements.",
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"options": {
|
|
"grid_columns": 3
|
|
},
|
|
"$ref": "gamedig-games"
|
|
},
|
|
"host": {
|
|
"title": "Host name or IP",
|
|
"type": "string",
|
|
"pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$|^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]*[a-zA-Z0-9])\\.)+([A-Za-z]|[A-Za-z][A-Za-z0-9\\-]*[A-Za-z0-9])$",
|
|
"options": {
|
|
"grid_columns": 3,
|
|
"error_messages": {
|
|
"en": {
|
|
"error_pattern": "Value must be a valid host name or IP"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"port": {
|
|
"title": "Port number",
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"maximum": 65535,
|
|
"format": "number",
|
|
"options": {
|
|
"grid_columns": 3
|
|
}
|
|
},
|
|
"appId": {
|
|
"title": "Steam App ID",
|
|
"description": "Look for the <i>AppID</i> in the <a href=\"https://steamdb.info/apps/\">apps list</a>.",
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"format": "number",
|
|
"options": {
|
|
"grid_columns": 3
|
|
}
|
|
},
|
|
"discord": {
|
|
"type": "array",
|
|
"title": "Discord channels",
|
|
"description": "The simplest way to get a discord channel ID is to enable developer mode in settings, then right clicking on the channel name will give you the <b>Copy ID</b> option.",
|
|
"minItems": 0,
|
|
"uniqueItems": true,
|
|
"items": {
|
|
"type": "object",
|
|
"title": "Channel",
|
|
"required": [
|
|
"channelId"
|
|
],
|
|
"properties": {
|
|
"channelId": {
|
|
"title": "Channel ID",
|
|
"type": "string"
|
|
},
|
|
"showPlayersList": {
|
|
"title": "Show players list",
|
|
"default": true,
|
|
"type": "boolean",
|
|
"format": "checkbox"
|
|
},
|
|
"showGraph": {
|
|
"title": "Show graph",
|
|
"default": true,
|
|
"type": "boolean",
|
|
"format": "checkbox"
|
|
},
|
|
"onlineColor": {
|
|
"title": "Online color",
|
|
"default": "#000000",
|
|
"type": "string",
|
|
"format": "color"
|
|
},
|
|
"offlineColor": {
|
|
"title": "Offline color",
|
|
"default": "#ff0000",
|
|
"type": "string",
|
|
"format": "color"
|
|
}
|
|
}
|
|
},
|
|
"format": "table",
|
|
"options": {
|
|
"grid_columns": 12
|
|
}
|
|
},
|
|
"telegram": {
|
|
"type": "array",
|
|
"title": "Telegram chats",
|
|
"description": "The simplest way to get a telegram chat ID is to invite <a target=\"_blank\" href=\"https://telegram.me/getidsbot\">@getidsbot</a> and use <code>/start</code> to make it post (among other data) the chat ID.",
|
|
"minItems": 0,
|
|
"uniqueItems": true,
|
|
"items": {
|
|
"type": "object",
|
|
"title": "Chat",
|
|
"required": [
|
|
"chatId"
|
|
],
|
|
"properties": {
|
|
"chatId": {
|
|
"type": "string",
|
|
"title": "Chat ID"
|
|
},
|
|
"showPlayersList": {
|
|
"title": "Show players list",
|
|
"default": true,
|
|
"type": "boolean",
|
|
"format": "checkbox"
|
|
},
|
|
"showGraph": {
|
|
"title": "Show graph",
|
|
"default": true,
|
|
"type": "boolean",
|
|
"format": "checkbox"
|
|
}
|
|
}
|
|
},
|
|
"format": "table",
|
|
"options": {
|
|
"grid_columns": 12
|
|
}
|
|
},
|
|
"slack": {
|
|
"type": "array",
|
|
"title": "Slack channels",
|
|
"description": "The simplest way to get a slack channel ID is to right click on the channel name, then go to <b>View channel details</b> and scroll down to the very bottom where you can copy the <i>Channel ID</i>.",
|
|
"minItems": 0,
|
|
"uniqueItems": true,
|
|
"items": {
|
|
"type": "object",
|
|
"title": "Channel",
|
|
"required": [
|
|
"channelId"
|
|
],
|
|
"properties": {
|
|
"channelId": {
|
|
"title": "Channel ID",
|
|
"type": "string"
|
|
},
|
|
"showPlayersList": {
|
|
"title": "Show players list",
|
|
"default": true,
|
|
"type": "boolean",
|
|
"format": "checkbox"
|
|
},
|
|
"showGraph": {
|
|
"title": "Show graph",
|
|
"default": true,
|
|
"type": "boolean",
|
|
"format": "checkbox"
|
|
}
|
|
}
|
|
},
|
|
"format": "table",
|
|
"options": {
|
|
"grid_columns": 12
|
|
}
|
|
},
|
|
"graphHistoryHours": {
|
|
"title": "Graph history time span (hours)",
|
|
"type": "integer",
|
|
"default": 12,
|
|
"minimum": 1,
|
|
"maximum": 24,
|
|
"format": "range",
|
|
"options": {
|
|
"grid_columns": 12
|
|
}
|
|
},
|
|
"timezoneOffset": {
|
|
"title": "Time zone offset of the server",
|
|
"default": 0,
|
|
"type": "number",
|
|
"minimum": -12,
|
|
"maximum": 14,
|
|
"format": "range",
|
|
"options": {
|
|
"grid_columns": 12
|
|
}
|
|
},
|
|
"description": {
|
|
"title": "Description",
|
|
"type": "string",
|
|
"format": "markdown",
|
|
"options": {
|
|
"simplemde": {
|
|
"spellChecker": false,
|
|
"toolbar": [
|
|
"bold",
|
|
"italic",
|
|
"|",
|
|
"unordered-list",
|
|
"ordered-list",
|
|
"|",
|
|
"code",
|
|
"link",
|
|
"quote",
|
|
"|",
|
|
"side-by-side",
|
|
"preview"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"givenPortOnly": {
|
|
"title": "givenPortOnly",
|
|
"description": "Only attempt to query server on given port.",
|
|
"type": "boolean",
|
|
"format": "checkbox",
|
|
"options": {
|
|
"grid_columns": 3
|
|
}
|
|
},
|
|
"requestRules": {
|
|
"title": "requestRules (Valve)",
|
|
"description": "Additional server info may be fetched into the <code>raw</code> field.",
|
|
"type": "boolean",
|
|
"format": "checkbox",
|
|
"options": {
|
|
"grid_columns": 3
|
|
}
|
|
},
|
|
"requestRulesRequired": {
|
|
"title": "requestRulesRequired (Valve)",
|
|
"description": "<code>requestRules</code> is always required to have a response or the query will timeout.",
|
|
"type": "boolean",
|
|
"format": "checkbox",
|
|
"options": {
|
|
"grid_columns": 3
|
|
}
|
|
},
|
|
"requestPlayersRequired": {
|
|
"title": "requestPlayersRequired (Valve)",
|
|
"description": "Querying players is always required to have a response or the query will timeout. Some <a href=\"https://github.com/gamedig/node-gamedig/blob/master/GAMES_LIST.md\">games</a> may not provide a players response.",
|
|
"type": "boolean",
|
|
"format": "checkbox",
|
|
"options": {
|
|
"grid_columns": 3
|
|
}
|
|
},
|
|
"teamspeakQueryPort": {
|
|
"title": "teamspeakQueryPort (TeamSpeak 3)",
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"maximum": 65535,
|
|
"format": "number",
|
|
"options": {
|
|
"grid_columns": 3
|
|
}
|
|
},
|
|
"guildId": {
|
|
"title": "guildId (Discord)",
|
|
"type": "string",
|
|
"options": {
|
|
"grid_columns": 3
|
|
}
|
|
},
|
|
"login": {
|
|
"title": "login (Nadeo)",
|
|
"type": "string",
|
|
"options": {
|
|
"grid_columns": 3
|
|
}
|
|
},
|
|
"password": {
|
|
"title": "password (Nadeo)",
|
|
"type": "string",
|
|
"options": {
|
|
"grid_columns": 3
|
|
}
|
|
},
|
|
"token": {
|
|
"title": "token (Terraria)",
|
|
"type": "string",
|
|
"options": {
|
|
"grid_columns": 3
|
|
}
|
|
}
|
|
},
|
|
"format": "grid-strict",
|
|
"headerTemplate": "{{#self.name}}{{self.name}}{{/self.name}}{{^self.name}}{{self.type}}:{{self.host}}:{{self.port}}{{/self.name}}"
|
|
}
|