mirror of https://github.com/oliverbooth/VPLink
style: move message validation to own method
This commit is contained in:
parent
64fd5d45bf
commit
9edd4b81ce
|
@ -84,19 +84,7 @@ internal sealed partial class DiscordMessageService : BackgroundService, IDiscor
|
|||
|
||||
private Task OnDiscordMessageReceived(SocketMessage arg)
|
||||
{
|
||||
if (arg is not IUserMessage message)
|
||||
return Task.CompletedTask;
|
||||
|
||||
if (message.Author is not IGuildUser author)
|
||||
return Task.CompletedTask;
|
||||
|
||||
if (author.Id == _discordClient.CurrentUser.Id)
|
||||
return Task.CompletedTask;
|
||||
|
||||
if (author.IsBot && !_configurationService.BotConfiguration.RelayBotMessages)
|
||||
return Task.CompletedTask;
|
||||
|
||||
if (message.Channel.Id != _configurationService.DiscordConfiguration.ChannelId)
|
||||
if (!ValidateMessage(arg, out IUserMessage? message, out IGuildUser? author))
|
||||
return Task.CompletedTask;
|
||||
|
||||
string displayName = author.Nickname ?? author.GlobalName ?? author.Username;
|
||||
|
@ -150,4 +138,46 @@ internal sealed partial class DiscordMessageService : BackgroundService, IDiscor
|
|||
channel = null;
|
||||
return false;
|
||||
}
|
||||
|
||||
private bool ValidateMessage(SocketMessage socketMessage,
|
||||
[NotNullWhen(true)] out IUserMessage? message,
|
||||
[NotNullWhen(true)] out IGuildUser? author)
|
||||
{
|
||||
message = socketMessage as IUserMessage;
|
||||
if (message is null)
|
||||
{
|
||||
author = null;
|
||||
return false;
|
||||
}
|
||||
|
||||
author = message.Author as IGuildUser;
|
||||
if (author is null)
|
||||
{
|
||||
message = null;
|
||||
return false;
|
||||
}
|
||||
|
||||
if (author.Id == _discordClient.CurrentUser.Id)
|
||||
{
|
||||
author = null;
|
||||
message = null;
|
||||
return false;
|
||||
}
|
||||
|
||||
if (author.IsBot && !_configurationService.BotConfiguration.RelayBotMessages)
|
||||
{
|
||||
author = null;
|
||||
message = null;
|
||||
return false;
|
||||
}
|
||||
|
||||
if (message.Channel.Id != _configurationService.DiscordConfiguration.ChannelId)
|
||||
{
|
||||
author = null;
|
||||
message = null;
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue