Example #1
0
        void MessageReceived(IrcEventArgs e)
        {
            Model.Domain.Channel tChan = null;

            if (e.Data.Type == ReceiveType.QueryNotice || e is CtcpEventArgs)
            {
                if (!String.IsNullOrEmpty(e.Data.Nick))
                {
                    var user = _client.GetIrcUser(e.Data.Nick);
                    if (user != null)
                    {
                        foreach (string channel in user.JoinedChannels)
                        {
                            tChan = Server.Channel(channel);
                            if (tChan != null)
                            {
                                break;
                            }
                        }
                    }
                }
            }
            else
            {
                tChan = Server.Channel(e.Data.Channel);
            }

            if (tChan != null)
            {
                OnMessage(this, new EventArgs <Model.Domain.Channel, string, string>(tChan, e.Data.Nick, e.Data.Message));
            }
        }
Example #2
0
        public void ParseXdccFile(string aNick, string[] aLines)
        {
            Model.Domain.Channel tChan = null;
            var user = _client.GetIrcUser(aNick);

            if (user != null)
            {
                foreach (string channel in user.JoinedChannels)
                {
                    tChan = Server.Channel(channel);
                    if (tChan != null)
                    {
                        break;
                    }
                }
            }

            if (tChan == null)
            {
                _log.Error(".ParseXdccFile() cant find channel for nick " + aNick);
                return;
            }

            foreach (var line in aLines)
            {
                var message = new Message
                {
                    Channel = tChan,
                    Nick    = aNick,
                    Text    = line
                };
                _parser.Parse(message);
            }
        }
Example #3
0
 public void AddChannelToQueue(Model.Domain.Channel aChannel, int aInt)
 {
     if (!_channelQueue.Contains(aChannel))
     {
         _channelQueue.Add(aChannel, DateTime.Now.AddSeconds(aInt));
     }
 }
Example #4
0
 void CheckIfUserShouldVersioned(Model.Domain.Channel aChannel, string aUser)
 {
     if (aChannel.AskForVersion && _client.IsUserMaybeeXdccBot(aChannel.Name, aUser))
     {
         _userToAskForVersion.Enqueue(aUser);
     }
 }
Example #5
0
        void UpdateChannel(Model.Domain.Channel aChannel)
        {
            var channel = (NonRfcChannel)_client.GetChannel(aChannel.Name);

            if (channel != null)
            {
                aChannel.UserCount = channel.Users.Count;
            }
            aChannel.Commit();
        }