Auto Backup Settings

- added an RCON broadcast mode droplist, so backup processes can send messages via RCON using this mode.
This commit is contained in:
Brett Hewitson 2022-05-06 14:07:38 +10:00
parent 5be23f75ef
commit c1c303f32a
14 changed files with 120 additions and 16 deletions

View file

@ -159,7 +159,7 @@ namespace ServerManagerTool.Lib
if (!string.IsNullOrWhiteSpace(Config.Default.ServerBackup_WorldSaveMessage))
{
ProcessAlert(AlertType.Backup, Config.Default.ServerBackup_WorldSaveMessage);
sent = SendMessageAsync(Config.Default.ServerBackup_WorldSaveMessage, cancellationToken).Result;
sent = SendMessageAsync(Config.Default.RCON_BackupMessageCommand, Config.Default.ServerBackup_WorldSaveMessage, cancellationToken).Result;
if (sent)
{
emailMessage.AppendLine("sent server save message.");
@ -2561,6 +2561,7 @@ namespace ServerManagerTool.Lib
LogProfileMessage($"{ex.StackTrace}", false);
}
await Task.Delay(100);
retries++;
}
}
@ -2574,11 +2575,16 @@ namespace ServerManagerTool.Lib
}
private async Task<bool> SendMessageAsync(string message, CancellationToken token)
{
return await SendMessageAsync(Config.Default.RCON_MessageCommand, message, token);
}
private async Task<bool> SendMessageAsync(string mode, string message, CancellationToken token)
{
if (string.IsNullOrWhiteSpace(message) || !SendMessages)
return false;
var sent = await SendCommandAsync($"{GetRconMessageCommand(Config.Default.RCON_MessageCommand)} {message}", false);
var sent = await SendCommandAsync($"{GetRconMessageCommand(mode)} {message}", false);
if (sent)
{