public async ValueTask HandleChannelUpdated(object sender, ChannelUpdatedEventArgs e) { foreach (var service in ChannelUpdatedServices) { await ExecuteAsync((service, e) => service.OnChannelUpdated(e), service, e).ConfigureAwait(false); } }
private void Client_ChannelUpdated(object sender, ChannelUpdatedEventArgs e) { if (e.Server.Id == Options.DiscordOptions.DiscordServerID && e.After.Topic != "" && e.After.Topic != e.Before.Topic) { SendMessageAfterDelay(Options.DiscordOptions.SteamChat, "The topic in Discord has been changed to:\n" + e.After.Topic, true); } }
private async void ChannelUpdated(object sender, ChannelUpdatedEventArgs e) { try { var config = SpecificConfigurations.Default.Of(e.Server.Id); var chId = config.LogServerChannel; if (chId == null || config.LogserverIgnoreChannels.Contains(e.After.Id)) { return; } Channel ch; if ((ch = e.Server.TextChannels.Where(tc => tc.Id == chId).FirstOrDefault()) == null) { return; } if (e.Before.Name != e.After.Name) { await ch.SendMessage($@"`{prettyCurrentTime}` **Channel Name Changed** `#{e.Before.Name}` (*{e.After.Id}*) `New:` {e.After.Name}").ConfigureAwait(false); } else if (e.Before.Topic != e.After.Topic) { await ch.SendMessage($@"`{prettyCurrentTime}` **Channel Topic Changed** `#{e.After.Name}` (*{e.After.Id}*) `Old:` {e.Before.Topic} `New:` {e.After.Topic}").ConfigureAwait(false); } } catch { } }
void ChannelUpdated(object Sender, ChannelUpdatedEventArgs e) { if (_ServerSettings[e.Server.Id].LogChannel != null) { if (e.Server.FindChannels(_ServerSettings[e.Server.Id].LogChannel, ChannelType.Text, true).ToList().Count == 0) { e.Server.CreateChannel(_ServerSettings[e.Server.Id].LogChannel, ChannelType.Text); } string Admins = "\nAdmins on:"; e.Server.Users.Where(x => { return(x.Roles.Any(y => y.Permissions.ManageChannels || y.Permissions.Administrator) && x.Status.Value == UserStatus.Online); }).ToList().ForEach(x => { Admins += "\n" + x.Name; }); e.Server.FindChannels(_ServerSettings[e.Server.Id].LogChannel, ChannelType.Text).First().SendMessage("```" + e.Before.Name + " was updated to " + e.After.Name + " at " + DateTime.UtcNow + " utc" + Admins + ":hammer:```"); } }
protected internal virtual ValueTask OnChannelUpdated(ChannelUpdatedEventArgs e) => default;