Beispiel #1
0
        protected virtual void HandleUserJoin(object sender, IUserJoinedChannelEventArgs e)
        {
            BounceCriterion criterion = InterestingCriterion(e.Nickname, e.Channel);

            if (criterion == null)
            {
                return;
            }

            // are hours set?
            if (criterion.StartingHour.HasValue && criterion.EndingHour.HasValue)
            {
                HandleHourCriterion(e.Channel, e.Nickname, criterion);
            }
            else
            {
                HandleStandardCriterion(e.Channel, e.Nickname, criterion);
            }
        }
        protected virtual void HandleChannelJoined(object sender, IUserJoinedChannelEventArgs e)
        {
            using (var ctx = GetNewContext())
            {
                VersionEntry found = ctx.VersionEntries
                                     .FirstOrDefault(ve => ve.Nickname == e.Nickname);
                if (found != null && Config.RescanIntervalDays.HasValue)
                {
                    if (found.Timestamp <= DateTimeOffset.Now.AddDays(-Config.RescanIntervalDays.Value))
                    {
                        // aged out
                        found = null;
                    }
                }

                if (found == null)
                {
                    ConnectionManager.SendCtcpRequest(e.Nickname, "VERSION");
                }
            }
        }
Beispiel #3
0
 protected virtual void HandleJoinedChannel(object sender, IUserJoinedChannelEventArgs args)
 {
     CheckRegistrationsOn(args.Nickname);
 }
 protected virtual void HandleJoinedChannel(object sender, [NotNull] IUserJoinedChannelEventArgs e)
 {
     RegisterNickname(e.Host, e.Nickname);
 }
 protected virtual void OnJoinedChannel(IUserJoinedChannelEventArgs e)
 {
     HandleEvent(JoinedChannelSubscribers, e, "user joining channel");
 }