Example #1
0
        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);
        }
Example #2
0
 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);
     }
 }