コード例 #1
0
        public bool FilterMessage(ref string message)
        {
            message = message == null ? null : Regex.Replace(message, ParameterReplacementPattern, delegate(Match match)
            {
                var key = match.Groups[1].Value;
                return(_brain.ContainsKey(key) ? _brain.GetValue(key).ToString() : "{{Key not found}}");
            });

            return(false);
        }
コード例 #2
0
ファイル: Status.cs プロジェクト: NBot/NBot
        public void HandleGetStatus(Message message, IMessageClient client, IBrain brain, string userName)
        {
            string result        = userName;
            bool   needsAnd      = false;
            bool   neverSeenThem = true;

            if (brain.ContainsKey(LastCheckinKey(userName)))
            {
                result       += " last checked in at " + brain.GetValue(LastCheckinKey(userName));
                neverSeenThem = false;
                needsAnd      = true;
            }

            if (brain.ContainsKey(LastCheckoutKey(userName)))
            {
                if (needsAnd)
                {
                    result += ",";
                }
                result       += " last checked out at " + brain.GetValue(LastCheckoutKey(userName));
                neverSeenThem = false;
                needsAnd      = true;
            }

            if (brain.ContainsKey(LastSpokeKey(userName)))
            {
                if (needsAnd)
                {
                    result += " and";
                }
                result       += " last spoke at " + brain.GetValue(LastSpokeKey(userName));
                neverSeenThem = false;
            }

            if (neverSeenThem)
            {
                result = "I ain't never seen " + userName + " come round these parts";
            }

            client.ReplyTo(message, result);
        }
コード例 #3
0
ファイル: Status.cs プロジェクト: rjt011000/NBot
        public void HandleGetStatus(Message message, IMessageClient client, IBrain brain, string userName)
        {
            string result = userName;
            bool needsAnd = false;
            bool neverSeenThem = true;

            if (brain.ContainsKey(LastCheckinKey(userName)))
            {
                result += " last checked in at " + brain.GetValue(LastCheckinKey(userName));
                neverSeenThem = false;
                needsAnd = true;
            }

            if (brain.ContainsKey(LastCheckoutKey(userName)))
            {
                if (needsAnd)
                {
                    result += ",";
                }
                result += " last checked out at " + brain.GetValue(LastCheckoutKey(userName));
                neverSeenThem = false;
                needsAnd = true;
            }

            if (brain.ContainsKey(LastSpokeKey(userName)))
            {
                if (needsAnd)
                {
                    result += " and";
                }
                result += " last spoke at " + brain.GetValue(LastSpokeKey(userName));
                neverSeenThem = false;
            }

            if (neverSeenThem)
            {
                result = "I ain't never seen " + userName + " come round these parts";
            }

            client.ReplyTo(message, result);
        }