|
|
@@ -1091,7 +1091,7 @@ namespace Discord.WebSocket |
|
|
|
if (author == null) |
|
|
|
{ |
|
|
|
if (guild != null) |
|
|
|
author = guild.AddOrUpdateUser(data.Author.Value); //User has no guild-specific data |
|
|
|
author = guild.AddOrUpdateUser(data.Member.Value); //per g250k, we can create an entire member now |
|
|
|
else if (channel is SocketGroupChannel) |
|
|
|
author = (channel as SocketGroupChannel).GetOrAddUser(data.Author.Value); |
|
|
|
else |
|
|
@@ -1361,6 +1361,11 @@ namespace Discord.WebSocket |
|
|
|
} |
|
|
|
|
|
|
|
var user = (channel as SocketChannel).GetUser(data.UserId); |
|
|
|
if (user == null) |
|
|
|
{ |
|
|
|
if (guild != null) |
|
|
|
user = guild.AddOrUpdateUser(data.Member); |
|
|
|
} |
|
|
|
if (user != null) |
|
|
|
await TimedInvokeAsync(_userIsTypingEvent, nameof(UserIsTyping), user, channel).ConfigureAwait(false); |
|
|
|
} |
|
|
@@ -1427,7 +1432,8 @@ namespace Discord.WebSocket |
|
|
|
user = guild.GetUser(data.UserId); |
|
|
|
if (user == null) |
|
|
|
{ |
|
|
|
await UnknownGuildUserAsync(type, data.UserId, guild.Id).ConfigureAwait(false); |
|
|
|
user = guild.AddOrUpdateUser(data.Member.Value); //per g250k, this is always sent |
|
|
|
//await UnknownGuildUserAsync(type, data.UserId, guild.Id).ConfigureAwait(false); |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
|