title: Coding a few specific commands for my Discord Bot? (C#, Discord.net 1.02)
body: <p>Essentially, I'd really like some specific commands for my Discord Bot, but I have very little experience with C#. My main goals are:</p>
  
  <ul>
  <li>A welcome message to newcomers. (Privately, to the new user. Nobody else sees it but the newcomer via server)</li>
  <li>Wait for a specific message to be typed. Once this message is typed, the bot adds a role to the user, and delete's the user's message that was typed (so that following newcomer won't see the message and using it instead of reading the rules like I intend for them to see first.)</li>
  <li>A timer function that enables as soon as a new member joins. This timer is to go on for 3 days and if the new user does not fulfill the 2nd task in that time period, they will be kicked until they find a new invite.</li>
  <li>Anything other than the specific message typed will be tried 3 attempts. if the user does not type the correct word into the input, they will be warned each time, until the attempt number reaches 3. After it exceeds 3, they will be kicked until they find a new invite.</li>
  </ul>
  
  <p>Here is my current list of commands:</p>
  
  <pre><code>using System.Threading.Tasks;
  using Discord;
  using Discord.Commands;
  using Discord.WebSocket;
  namespace BooleanBot.Modules
  {
  public class commands : ModuleBase&lt;SocketCommandContext&gt;
  {
  
      [Command("help")]
      public async Task help()
      {
          var a = new Discord.EmbedBuilder();
          a.WithTitle("Commands");
          a.WithDescription("General Commands\n-- .help // Gives list of commands to use");
          Discord.IDMChannel gencom = await Context.Message.Author.GetOrCreateDMChannelAsync();
          await gencom.SendMessageAsync("", false, a);
          await gencom.CloseAsync();
      }
      [Command("kick")]
      [RequireBotPermission(Discord.GuildPermission.KickMembers)]
      [RequireUserPermission(Discord.GuildPermission.KickMembers)]
      public async Task KickAsync(Discord.IGuildUser user, [Remainder] string reason)
      {
          if (user.GuildPermissions.KickMembers)
          {
              var b = new Discord.EmbedBuilder();
              b.WithTitle("User Kicked");
              b.WithDescription(user.Username + "was kicked.");
              await Context.Channel.SendMessageAsync("", false, b);
              await user.KickAsync();
          }
      }
  
      [Command("postwelcome")]
      public async Task welcome()
      {
          var b = new Discord.EmbedBuilder();
          b.WithTitle("Welcome to the Anthamation Server! I'm Antha-bot, the housekeeper! My server prefex is !Yo. Let's get started!");
          b.WithDescription("Before you can do ANYTHING, you must go to #rules-and-access channel and read through the rules first! You will also find instructions on how to access the channels! PLEASE NOTE: If you are not a verified member within 3 days or type in something OTHER than the desired answer, you will be kicked automatically. See you on the other side!");
          await Context.Channel.SendMessageAsync("", false, b);
      }
  }
  </code></pre>
  
  <p>}</p>
  
  <p>Very sorry if this seems too lengthy for Stackoverflow. I have no where else to turn to. </p>