From 20e267cfa4194ddba81abc58f77ee5bcdf9a821f Mon Sep 17 00:00:00 2001 From: RogueException Date: Thu, 27 Aug 2015 13:55:15 -0300 Subject: [PATCH] Added some more debug data, fixed potential crashes. --- src/Discord.Net/DiscordClient.Events.cs | 61 ++++++++++++------------- src/Discord.Net/DiscordClient.cs | 5 ++ 2 files changed, 35 insertions(+), 31 deletions(-) diff --git a/src/Discord.Net/DiscordClient.Events.cs b/src/Discord.Net/DiscordClient.Events.cs index 5b022b282..ad7eaf762 100644 --- a/src/Discord.Net/DiscordClient.Events.cs +++ b/src/Discord.Net/DiscordClient.Events.cs @@ -7,7 +7,7 @@ namespace Discord Connection, Event, Cache, - WebSocketRawInput, + WebSocketRawInput, //TODO: Make Http instanced and add a rawoutput event WebSocketUnknownInput, WebSocketEvent, WebSocketUnknownEvent, @@ -110,7 +110,6 @@ namespace Discord } //Server - public event EventHandler ServerCreated; private void RaiseServerCreated(Server server) { @@ -136,12 +135,22 @@ namespace Discord ServerUpdated(this, new ServerEventArgs(server)); } + //User + public event EventHandler UserUpdated; + private void RaiseUserUpdated(User user) + { + if (_config.EnableDebug) + RaiseOnDebugMessage(DebugMessageType.Event, $"UserUpdated {user.Name} ({user.Id})"); + if (UserUpdated != null) + UserUpdated(this, new UserEventArgs(user)); + } + //Channel public event EventHandler ChannelCreated; private void RaiseChannelCreated(Channel channel) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"ChannelCreated {channel.Name} ({channel.Id})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"ChannelCreated {channel.Name} ({channel.Id}) in {channel.Server?.Name} ({channel.ServerId})"); if (ChannelCreated != null) ChannelCreated(this, new ChannelEventArgs(channel)); } @@ -149,7 +158,7 @@ namespace Discord private void RaiseChannelDestroyed(Channel channel) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"ChannelDestroyed {channel.Name} ({channel.Id})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"ChannelDestroyed {channel.Name} ({channel.Id}) in {channel.Server?.Name} ({channel.ServerId})"); if (ChannelDestroyed != null) ChannelDestroyed(this, new ChannelEventArgs(channel)); } @@ -157,27 +166,17 @@ namespace Discord private void RaiseChannelUpdated(Channel channel) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"ChannelUpdated {channel.Name} ({channel.Id})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"ChannelUpdated {channel.Name} ({channel.Id}) in {channel.Server?.Name} ({channel.ServerId})"); if (ChannelUpdated != null) ChannelUpdated(this, new ChannelEventArgs(channel)); } - //User - public event EventHandler UserUpdated; - private void RaiseUserUpdated(User user) - { - if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"UserUpdated {user.Name} ({user.Id})"); - if (UserUpdated != null) - UserUpdated(this, new UserEventArgs(user)); - } - //Message public event EventHandler MessageCreated; private void RaiseMessageCreated(Message msg) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"MessageCreated {msg.Id}"); + RaiseOnDebugMessage(DebugMessageType.Event, $"MessageCreated {msg.Id} in {msg.Channel?.Name} ({msg.ChannelId})"); if (MessageCreated != null) MessageCreated(this, new MessageEventArgs(msg)); } @@ -185,7 +184,7 @@ namespace Discord private void RaiseMessageDeleted(Message msg) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"MessageDeleted {msg.Id}"); + RaiseOnDebugMessage(DebugMessageType.Event, $"MessageDeleted {msg.Id} in {msg.Channel?.Name} ({msg.ChannelId})"); if (MessageDeleted != null) MessageDeleted(this, new MessageEventArgs(msg)); } @@ -193,7 +192,7 @@ namespace Discord private void RaiseMessageUpdated(Message msg) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"MessageUpdated {msg.Id}"); + RaiseOnDebugMessage(DebugMessageType.Event, $"MessageUpdated {msg.Id} in {msg.Channel?.Name} ({msg.ChannelId})"); if (MessageUpdated != null) MessageUpdated(this, new MessageEventArgs(msg)); } @@ -201,7 +200,7 @@ namespace Discord private void RaiseMessageRead(Message msg) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"MessageRead {msg.Id}"); + RaiseOnDebugMessage(DebugMessageType.Event, $"MessageRead {msg.Id} in {msg.Channel?.Name} ({msg.ChannelId})"); if (MessageRead != null) MessageRead(this, new MessageEventArgs(msg)); } @@ -209,7 +208,7 @@ namespace Discord private void RaiseMessageSent(Message msg) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"MessageSent {msg.Id}"); + RaiseOnDebugMessage(DebugMessageType.Event, $"MessageSent {msg.Id} in {msg.Channel?.Name} ({msg.ChannelId})"); if (MessageSent != null) MessageSent(this, new MessageEventArgs(msg)); } @@ -219,7 +218,7 @@ namespace Discord private void RaiseRoleCreated(Role role) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"RoleCreated {role.Name} ({role.Id})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"RoleCreated {role.Name} ({role.Id}) in {role.Server?.Name} ({role.ServerId})"); if (RoleCreated != null) RoleCreated(this, new RoleEventArgs(role)); } @@ -227,7 +226,7 @@ namespace Discord private void RaiseRoleDeleted(Role role) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"RoleDeleted {role.Name} ({role.Id})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"RoleDeleted {role.Name} ({role.Id}) in {role.Server?.Name} ({role.ServerId})"); if (RoleDeleted != null) RoleDeleted(this, new RoleEventArgs(role)); } @@ -235,7 +234,7 @@ namespace Discord private void RaiseRoleUpdated(Role role) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"RoleUpdated {role.Name} ({role.Id})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"RoleUpdated {role.Name} ({role.Id}) in {role.Server?.Name} ({role.ServerId})"); if (RoleUpdated != null) RoleUpdated(this, new RoleEventArgs(role)); } @@ -245,7 +244,7 @@ namespace Discord private void RaiseBanAdded(User user, Server server) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"BanAdded {user.Name} ({user.Id}) on {server.Name} ({server.Id})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"BanAdded {user.Name} ({user.Id}) in {server.Name} ({server.Id})"); if (BanAdded != null) BanAdded(this, new BanEventArgs(user, server)); } @@ -253,7 +252,7 @@ namespace Discord private void RaiseBanRemoved(User user, Server server) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"BanRemoved {user.Name} ({user.Id}) on {server.Name} ({server.Id})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"BanRemoved {user.Name} ({user.Id}) in {server.Name} ({server.Id})"); if (BanRemoved != null) BanRemoved(this, new BanEventArgs(user, server)); } @@ -263,7 +262,7 @@ namespace Discord private void RaiseMemberAdded(Membership member) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"MemberAdded {member.User.Name} ({member.UserId}) on {member.Server.Name} ({member.ServerId})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"MemberAdded {member.User?.Name} ({member.UserId}) in {member.Server?.Name} ({member.ServerId})"); if (MemberAdded != null) MemberAdded(this, new MemberEventArgs(member)); } @@ -271,7 +270,7 @@ namespace Discord private void RaiseMemberRemoved(Membership member) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"MemberRemoved {member.User.Name} ({member.UserId}) on {member.Server.Name} ({member.ServerId})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"MemberRemoved {member.User?.Name} ({member.UserId}) in {member.Server?.Name} ({member.ServerId})"); if (MemberRemoved != null) MemberRemoved(this, new MemberEventArgs(member)); } @@ -279,7 +278,7 @@ namespace Discord private void RaiseMemberUpdated(Membership member) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"MemberUpdated {member.User.Name} ({member.UserId}) on {member.Server.Name} ({member.ServerId})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"MemberUpdated {member.User?.Name} ({member.UserId}) in {member.Server?.Name} ({member.ServerId})"); if (MemberUpdated != null) MemberUpdated(this, new MemberEventArgs(member)); } @@ -289,7 +288,7 @@ namespace Discord private void RaisePresenceUpdated(Membership member) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"PresenceUpdated {member.User.Name} ({member.UserId}) on {member.Server.Name} ({member.ServerId})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"PresenceUpdated {member.User?.Name} ({member.UserId}) in {member.Server?.Name} ({member.ServerId})"); if (PresenceUpdated != null) PresenceUpdated(this, new MemberEventArgs(member)); } @@ -297,7 +296,7 @@ namespace Discord private void RaiseVoiceStateUpdated(Membership member) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"VoiceStateUpdated {member.User.Name} ({member.UserId}) on {member.Server.Name} ({member.ServerId})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"VoiceStateUpdated {member.User?.Name} ({member.UserId}) in {member.Server?.Name} ({member.ServerId})"); if (VoiceStateUpdated != null) VoiceStateUpdated(this, new MemberEventArgs(member)); } @@ -305,7 +304,7 @@ namespace Discord private void RaiseUserTyping(User user, Channel channel) { if (_config.EnableDebug) - RaiseOnDebugMessage(DebugMessageType.Event, $"VoiceStateUpdated {user.Name} ({user.Id}) on {channel.Name} ({channel.Id})"); + RaiseOnDebugMessage(DebugMessageType.Event, $"VoiceStateUpdated {user.Name} ({user.Id}) in {channel.Name} ({channel.Id})"); if (UserTyping != null) UserTyping(this, new UserTypingEventArgs(user, channel)); } diff --git a/src/Discord.Net/DiscordClient.cs b/src/Discord.Net/DiscordClient.cs index e112e181b..2b954aea5 100644 --- a/src/Discord.Net/DiscordClient.cs +++ b/src/Discord.Net/DiscordClient.cs @@ -33,7 +33,10 @@ namespace Discord public User User { get; private set; } /// Returns the id of the current logged in user. public string UserId { get; private set; } +#if !DNXCORE50 + /// Returns the voice session id of the current logged in user. public string SessionId { get; private set; } +#endif public DiscordClientConfig Config => _config; private readonly DiscordClientConfig _config; @@ -450,7 +453,9 @@ namespace Discord _users.Clear(); UserId = data.User.Id; +#if !DNXCORE50 SessionId = data.SessionId; +#endif User = _users.Update(data.User.Id, data.User); foreach (var server in data.Guilds) _servers.Update(server.Id, server);