Add GatekeeperV2 Bot (#163)

* Add GatekeeperV2 Bot (draft)

This is a dedicated generic config to host the WIP bot created by k8thekat here:
https://github.com/k8thekat/GatekeeperV2

* Update settings and startup arg

* Update for release

* Update manifest.json

* Update gatekeeperv2.kvp

* Update manifest.json

* Update gatekeeperv2.kvp

* Fixing Suggestions
This commit is contained in:
IceOfWraith 2022-08-05 23:32:35 -05:00 committed by GitHub
parent 2639b50ddb
commit ccbaac7f73
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 249 additions and 0 deletions

86
gatekeeperv2.kvp Normal file
View File

@ -0,0 +1,86 @@
Meta.DisplayName=GatekeeperV2 Bot
Meta.Description=AMP Discord Bot created by k8thekat - https://github.com/k8thekat/GatekeeperV2
Meta.OS=Linux
Meta.Arch=x86_64
Meta.Author=k8thekat, IceOfWraith
Meta.URL=https://github.com/k8thekat/GatekeeperV2
Meta.DisplayImageSource=url:https://avatars.githubusercontent.com/u/68672235?v=4
Meta.EndpointURIFormat=steam://connect/{0}
Meta.ConfigManifest=gatekeeperv2config.json
Meta.MetaConfigManifest=gatekeeperv2metaconfig.json
Meta.ConfigRoot=gatekeeperv2.kvp
Meta.MinAMPVersion=
Meta.SpecificDockerImage=cool11989/iceofwraith:gatekeeperv2
Meta.DockerRequired=False
Meta.ContainerPolicy=Recommended
Meta.Prerequsites=[]
Meta.ConfigReleaseState=NotSpecified
Meta.NoCommercialUsage=False
App.DisplayName=GatekeeperV2 Bot
App.RootDir=./gatekeeperv2/
App.BaseDirectory=./gatekeeperv2/
App.ExecutableWin=$PATH/python3
App.ExecutableLinux=/usr/bin/python3
App.WorkingDir=GatekeeperV2-main
App.LinuxCommandLineArgs=
App.WindowsCommandLineArgs=
App.CommandLineArgs=start.py -token {{dev}}{{debug}}{{discord}}{{super}} {{guildID}}
App.UseLinuxIOREDIR=False
App.AppSettings={}
App.EnvironmentVariables={}
App.CommandLineParameterFormat=+{0} {1}
App.CommandLineParameterDelimiter=
App.ExitMethod=OS_CLOSE
App.ExitTimeout=30
App.ExitString=stop
App.ExitFile=app_exit.lck
App.HasWriteableConsole=True
App.HasReadableConsole=True
App.SupportsLiveSettingsChanges=False
App.LiveSettingChangeCommandFormat=set {0} "{1}"
App.ApplicationIPBinding=0.0.0.0
App.Ports=[{"Protocol":"UDP","Port":4444,"Ref":"Port","Name":"Port","Description":"Dummy port"}]
App.AdminPortRef=Port
App.PrimaryApplicationPortRef=Port
App.UniversalSleepApplicationUDPPortRef=Port
App.UniversalSleepSteamQueryPortRef=Port
App.MaxUsers=20
App.UseRandomAdminPassword=False
App.RemoteAdminPassword=Password123
App.AdminMethod=STDIO
App.AdminLoginTransform=None
App.RCONConnectDelaySeconds=5
App.RCONConnectRetrySeconds=5
App.RCONHeartbeatMinutes=0
App.RCONHeartbeatCommand=ping
App.TelnetLoginFormat={0}
App.UpdateSources=[{"UpdateStageName":"Bot Download","UpdateSourcePlatform":"All","UpdateSource":"FetchURL","UpdateSourceData":"https://github.com/k8thekat/GatekeeperV2/archive/refs/heads/main.zip","UnzipUpdateSource":true,"OverwriteExistingFiles":true,"DeleteAfterExtract":true}]
App.Compatibility=None
App.SteamUpdateAnonymousLogin=True
App.SteamForceLoginPrompt=False
App.RapidStartup=True
App.MonitorChildProcess=False
App.MonitorChildProcessWaitMs=100
App.MonitorChildProcessName=
App.SupportsUniversalSleep=False
App.WakeupMode=Any
App.ApplicationReadyMode=Immediate
App.TemplateMatchRegex={{(\$?[\w]+)}}
Console.FilterMatchRegex=
Console.FilterMatchReplacement=
Console.ThrowawayMessageRegex=
Console.AppReadyRegex=
Console.UserJoinRegex=
Console.UserLeaveRegex=
Console.UserChatRegex=
Console.UpdateAvailableRegex=
Console.MetricsRegex=
Console.SuppressLogAtStart=False
Console.ActivateLogRegex=
Console.UserActions={}
Limits.SleepMode=True
Limits.SleepOnStart=False
Limits.SleepDelayMinutes=5
Limits.DozeDelay=2
Limits.AutoRetryCount=5
Limits.SleepStartThresholdSeconds=25

143
gatekeeperv2config.json Normal file
View File

@ -0,0 +1,143 @@
[
{
"DisplayName": "Discord Bot Token",
"Category": "Bot Settings",
"Description": "Enter your [Discord Bot Token](https://discord.com/developers/applications/).",
"Keywords": "discord,token",
"FieldName": "token",
"InputType": "password",
"IsFlagArgument": false,
"ParamFieldName": "token",
"IncludeInCommandLine": false,
"DefaultValue": "",
"Placeholder": "319/f0dsA0jk0PKge2jkpSFWEauopbvejwaioj32omoi32JIOabdsajotjewq3jr2=="
},
{
"DisplayName": "Discord Server Guild ID",
"Category": "Bot Settings",
"Description": "Enter your Discord server's [Guild ID](https://poshbot.readthedocs.io/en/latest/guides/backends/setup-discord-backend/#find-your-guild-id-server-id).",
"Keywords": "discord,guild,id",
"FieldName": "guildID",
"InputType": "number",
"IsFlagArgument": false,
"ParamFieldName": "guildID",
"IncludeInCommandLine": false,
"DefaultValue": "",
"Placeholder": "883220743755206666"
},
{
"DisplayName": "AMP User",
"Category": "Bot Settings",
"Description": "The Login Name for the account you want the bot to use. This account must have \"Super Admin\" privilege for setup of new instances and after upgrades.",
"Keywords": "amp,user",
"FieldName": "AMPUser",
"InputType": "text",
"IsFlagArgument": false,
"ParamFieldName": "AMPUser",
"IncludeInCommandLine": false,
"DefaultValue": "",
"Placeholder": "amp-bot"
},
{
"DisplayName": "AMP Password",
"Category": "Bot Settings",
"Description": "The password for said Login.",
"Keywords": "amp,password",
"FieldName": "AMPPassword",
"InputType": "password",
"IsFlagArgument": false,
"ParamFieldName": "AMPPassword",
"IncludeInCommandLine": false,
"DefaultValue": ""
},
{
"DisplayName": "AMP 2FA Token",
"Category": "Bot Settings",
"Description": "The 2Factor AUTH Code for said Login.",
"Keywords": "amp,2factor,2fa,token",
"FieldName": "AMPAuth",
"InputType": "password",
"IsFlagArgument": false,
"ParamFieldName": "AMPAuth",
"IncludeInCommandLine": false,
"DefaultValue": "",
"Placeholder": "MQ2TMMETGB4WCYJY8NRDINDEMKQTGMZTMIZDOZTFME3TSMRXGA2A"
},
{
"DisplayName": "AMP URL",
"Category": "Bot Settings",
"Description": "The URL or IP of your AMP ADS instance.",
"Keywords": "amp,url",
"FieldName": "AMPurl",
"InputType": "text",
"IsFlagArgument": false,
"ParamFieldName": "AMPurl",
"IncludeInCommandLine": false,
"DefaultValue": "http://127.0.0.1:8080",
"Placeholder": "http://127.0.0.1:8080"
},
{
"DisplayName": "Super Admin",
"Category": "Bot Settings",
"Description": "The bot requires Super Admin for first time setup of new instances and after upgrades. Enable this to keep the permission intact. Use at your own risk as this poses some security risk at the expense of convenience.",
"Keywords": "super,admin",
"FieldName": "super",
"InputType": "checkbox",
"IsFlagArgument": false,
"ParamFieldName": "super",
"IncludeInCommandLine": false,
"DefaultValue": "",
"EnumValues": {
"False": "",
"True": " -super"
}
},
{
"DisplayName": "Disable Discord Integration",
"Category": "Bot Settings",
"Description": "This setting is for dev use.",
"Keywords": "discord,integration",
"FieldName": "discord",
"InputType": "checkbox",
"IsFlagArgument": false,
"ParamFieldName": "discord",
"IncludeInCommandLine": false,
"DefaultValue": "",
"EnumValues": {
"False": "",
"True": " -discord"
}
},
{
"DisplayName": "Development Print Statements",
"Category": "Bot Settings",
"Description": "This setting is for dev use.",
"Keywords": "development,print,statements",
"FieldName": "dev",
"InputType": "checkbox",
"IsFlagArgument": false,
"ParamFieldName": "dev",
"IncludeInCommandLine": false,
"DefaultValue": "",
"EnumValues": {
"False": "",
"True": " -dev"
}
},
{
"DisplayName": "Debug Logging",
"Category": "Bot Settings",
"Description": "This setting is for dev use.",
"Keywords": "debug,logging",
"FieldName": "debug",
"InputType": "checkbox",
"IsFlagArgument": false,
"ParamFieldName": "debug",
"IncludeInCommandLine": false,
"DefaultValue": "",
"EnumValues": {
"False": "",
"True": " -debug"
}
}
]

View File

@ -0,0 +1,20 @@
[
{
"ConfigFile": "GatekeeperV2-main/tokens.py",
"AutoMap": false,
"ConfigType": "kvp",
"ConfigFormat": "{0} = '{1}'",
"Subsections": [
{
"Heading": "$root",
"SettingMappings": {
"token": "token",
"AMPUser": "AMPUser",
"AMPPassword": "AMPPassword",
"AMPAuth": "AMPAuth",
"AMPurl": "AMPurl"
}
}
]
}
]