Search code examples
c#discord.net

Discord C# User Join messages


I'm using Discord.Net in C#, making a bot. My bot works fantastic so far, but I want it to automatically assign users a specific role when they join a specific server. I've never actually learned any C#, only a bit of C++ so I know the basic Grammar. How would I go about this? I'm assuming I would use UserJoined, but doing this heeds results telling me to use it before or after a += or -+ (Which I understand, but I don't understand it's usefullness in this given scenario)


Solution

  • You gave little information to work with but here is how to do it in all releases (so far):

    This is IN the dependency map but below the "handlecommand", CommandHandleAsync or HandleCommandAsync:

    client.UserJoined += AnnounceJoinedUser; //Hook into the UserJoined event of the client.
    

    This is under the dependency map:

    public async Task AnnounceJoinedUser(SocketGuildUser user) //Welcomes the new user
    {
        var channel = client.GetChannel(/*/TextChannelID/*/) as SocketTextChannel; // Gets the channel to send the message in
        await channel.SendMessageAsync($"Welcome {user.mention} to {channel.Guild.Name}"); //Welcomes the new user
    }