private async Task OnGuildUpdated(GuildUpdateEventArgs e) { if (GuildUpdated != null) { await GuildUpdated(e); } }
private Task Discord_GuildUpdated(DiscordClient client, GuildUpdateEventArgs e) { var str = new StringBuilder(); str.AppendLine($"The guild {e.GuildBefore.Name} has been updated."); foreach (var prop in typeof(DiscordGuild).GetProperties()) { try { var bfr = prop.GetValue(e.GuildBefore); var aft = prop.GetValue(e.GuildAfter); if (bfr is null) { client.Logger.LogDebug(TestBotEventId, "Guild update: property {Property} in before was null", prop.Name); } if (aft is null) { client.Logger.LogDebug(TestBotEventId, "Guild update: property {Property} in after was null", prop.Name); } if (bfr is null || aft is null) { continue; } if (bfr.ToString() == aft.ToString()) { continue; } str.AppendLine($" - {prop.Name}: `{bfr}` to `{aft}`"); } catch (Exception ex) { client.Logger.LogError(TestBotEventId, ex, "Exception occurred during guild update"); } } str.AppendLine($" - VoiceRegion: `{e.GuildBefore.VoiceRegion?.Name}` to `{e.GuildAfter.VoiceRegion?.Name}`"); Console.WriteLine(str); return(Task.CompletedTask); }
//private Task Discord_MessageCreated(MessageCreateEventArgs e) //{ // if (e.Author.IsBot) // bad bot // return Task.CompletedTask; // if (e.Channel.IsPrivate) // return Task.CompletedTask; // var msg = e.Message; // var mpos = msg.GetMentionPrefixLength(e.Client.CurrentUser); // if (mpos == -1) // { // foreach (var x in this.Config.CommandPrefixes) // { // if (!string.IsNullOrWhiteSpace(x)) // { // mpos = msg.GetStringPrefixLength(x); // break; // } // } // } // if (mpos == -1 && TestBotCommands.PrefixSettings.ContainsKey(msg.Channel.Id) && TestBotCommands.PrefixSettings.TryGetValue(msg.Channel.Id, out var pfix)) // mpos = msg.GetStringPrefixLength(pfix); // if (mpos == -1) // return Task.CompletedTask; // var pfx = msg.Content.Substring(0, mpos); // var cnt = msg.Content.Substring(mpos); // var cmd = this.CommandsNextService.FindCommand(cnt, out var args); // var ctx = this.CommandsNextService.CreateContext(msg, pfx, cmd, args); // if (cmd == null) // command was not found // return Task.CompletedTask; // _ = Task.Run(async () => await this.CommandsNextService.ExecuteCommandAsync(ctx)); // return Task.CompletedTask; //} private Task Discord_GuildUpdated(GuildUpdateEventArgs e) { var str = new StringBuilder(); str.AppendLine($"The guild {e.GuildBefore.Name} has been updated."); foreach (var prop in typeof(DiscordGuild).GetProperties()) { try { var bfr = prop.GetValue(e.GuildBefore); var aft = prop.GetValue(e.GuildAfter); if (bfr is null) { Discord.DebugLogger.LogMessage(LogLevel.Debug, "GuildUpdated", $"Property {prop.Name} in before was null.", DateTime.Now); } if (aft is null) { Discord.DebugLogger.LogMessage(LogLevel.Debug, "GuildUpdated", $"Property {prop.Name} in after was null.", DateTime.Now); } if (bfr is null || aft is null) { continue; } if (bfr.ToString() == aft.ToString()) { continue; } str.AppendLine($" - {prop.Name}: `{bfr}` to `{aft}`"); } catch (Exception ex) { Discord.DebugLogger.LogMessage(LogLevel.Debug, "GuildUpdated", $"An exception occurred: {ex.GetType()}", DateTime.Now, ex); } } str.AppendLine($" - VoiceRegion: `{e.GuildBefore.VoiceRegion?.Name}` to `{e.GuildAfter.VoiceRegion?.Name}`"); Console.WriteLine(str); return(Task.CompletedTask); }
private async Task GuildUpdated(DiscordClient sender, GuildUpdateEventArgs e) { var guEntry = await GetNewEntryAsync() as DiscordAuditLogGuildEntry; if (guEntry == null) { return; //Defense from something(xD) } _entryBuilder = EmbedBuilderExtensions.CreateForAudit(guEntry, "Обновление параметров сервера"); _entryBuilder.AddNamePropertyChange(guEntry.NameChange); _entryBuilder.AddPropertyChange("Регион", guEntry.RegionChange); _entryBuilder.AddPropertyChange("Уровень фильтрации откровенного контента", guEntry.ExplicitContentFilterChange); _entryBuilder.AddPropertyChange("Требования к верификации", guEntry.VerificationLevelChange); _entryBuilder.AddPropertyChange("Аватар", guEntry.IconChange); _entryBuilder.AddPropertyChange("Стандартные настройки уведомлений", guEntry.NotificationSettingsChange); _entryBuilder.AddPropertyChange("Двухфакторная аутентификация", guEntry.MfaLevelChange); _entryBuilder.AddPropertyChange("Изображение при инвайте", guEntry.SplashChange); _entryBuilder.AddChannelPropertyChange("Афк", guEntry.AfkChannelChange); _entryBuilder.AddChannelPropertyChange("Системный", guEntry.SystemChannelChange); await SendMessageToAuditAsync(embed : _entryBuilder); }
private Task GuildUpdated(GuildUpdateEventArgs e) { /* This would kill my bot */ return(Task.CompletedTask); }
private Task Client_GuildUpdated(GuildUpdateEventArgs e) { e.Client.DebugLogger.LogMessage(LogLevel.Info, "BotApp", e.ToString(), DateTime.Now); return(Task.CompletedTask); }
public static async Task GuildUpdateEventHandlerAsync(TheGodfatherShard shard, GuildUpdateEventArgs e) { DiscordChannel logchn = shard.SharedData.GetLogChannelForGuild(shard.Client, e.GuildAfter); if (logchn == null) { return; } DiscordEmbedBuilder emb = FormEmbedBuilder(EventOrigin.Role, "Guild settings updated"); var entry = await e.GuildAfter.GetFirstAuditLogEntryAsync(AuditLogActionType.GuildUpdate); if (entry != null && entry is DiscordAuditLogGuildEntry gentry) { emb.AddField("User responsible", gentry.UserResponsible.Mention, inline: true); if (gentry.NameChange != null) { emb.AddField("Name change", $"{gentry.NameChange.Before ?? _unknown} -> {gentry.NameChange.After ?? _unknown}", inline: true); } if (gentry.AfkChannelChange != null) { emb.AddField("AFK channel changed to", gentry.AfkChannelChange.After?.ToString() ?? _unknown, inline: true); } if (gentry.EmbedChannelChange != null) { emb.AddField("Embed channel changed to", gentry.EmbedChannelChange.After?.ToString() ?? _unknown, inline: true); } if (gentry.IconChange != null) { emb.AddField("Icon changed to", gentry.IconChange.After ?? _unknown, inline: true); } if (gentry.NotificationSettingsChange != null) { emb.AddField("Notifications changed to", gentry.NotificationSettingsChange.After.HasFlag(DefaultMessageNotifications.AllMessages) ? "All messages" : "Mentions only", inline: true); } if (gentry.OwnerChange != null) { emb.AddField("Owner changed to", gentry.OwnerChange.After?.ToString() ?? _unknown, inline: true); } if (!string.IsNullOrWhiteSpace(gentry.Reason)) { emb.AddField("Reason", gentry.Reason); } emb.WithFooter(gentry.CreationTimestamp.ToUtcTimestamp(), gentry.UserResponsible.AvatarUrl); } else { emb.AddField("Error", "Failed to read audit log information. Please check my permissions"); } await logchn.SendMessageAsync(embed : emb.Build()); }
private async Task GuildUpdated(DiscordClient c, GuildUpdateEventArgs e) { this.logger.Information($"Guild '{e.GuildAfter.Name}' ({e.GuildAfter.Id}) has been updated."); }
private Task Event_GuildUpdated(DiscordClient d, GuildUpdateEventArgs e) { d.Logger.LogDebug(BotEventId, "Event_GuildUpdated."); return(Task.CompletedTask); }
internal void GuildUpdateEvent(GuildUpdateEventArgs e) { var handler = GuildUpdate; handler?.Invoke(this, e); }