protected virtual async void OnJoin(string source, string target) { string nick = source.GetNickFromSource(); bool me = _currentNick.EqualsIgnoreCase(nick); if (me && FillListsOnJoin) { FillChannelLists(target); } if (StrictNames || me) { await Send("NAMES {0}", target); } var c = GetChannel(target); if (!c.HasUser(nick)) { c.AddOrUpdateUser(nick); } JoinEvent.Raise(this, new JoinPartEventArgs(nick, target, me: me)); }