public async Task RemoveStreamUser(CommandContext ctx) { var memberId = ctx.Member.Id; await ctx.Message.DeleteAsync(); da.DeleteStream(memberId.ToString(), ctx.Guild.Id.ToString()); await ctx.RespondAsync($"<@!{memberId}>, I will stop announcing your stream in Stream Notifications Channel"); await TwitchTasks.LogAction($"<@!{memberId}> has removed Stream Announcements", ctx.Client); if (!TwitchOptions.AutoAssignRoles) { return; } var member = await ctx.Guild.GetMemberAsync(memberId); var StreamerRole = GetRoleFromId(ctx.Guild.Id, "StreamerRole", ctx); var VerifiedStreamerRole = GetRoleFromId(ctx.Guild.Id, "VerifiedRole", ctx); await member.RevokeRoleAsync(VerifiedStreamerRole); await member.RevokeRoleAsync(StreamerRole); await TwitchTasks.LogAction($"Roles removed stream notifications for <@!{memberId}>", ctx.Client); }
public static bool IsMemberStillHere(ulong memberId, DiscordClient c, DiscordGuild g) { try { var member = g.GetMemberAsync(memberId).Result; if (member == null) { return(false); } return(true); } catch (Exception e) { if (e.Message.Contains("Not found: 404")) { var getInfo = c.GetUserAsync(memberId).Result; LogAction($"{getInfo.Username} `{memberId}` no longer resides in the server... removing.", c).ConfigureAwait(false); da.DeleteStream(memberId.ToString(), g.Id.ToString()); } else { Ttv.Logger.LogError(e.Message); LogAction($"Error Loading Member\n```{e}```", c).ConfigureAwait(false); } return(false); } }