public static MargieSimpleResponseChainer RespondsTo <T>(this Bot <T> bot, string phrase, bool isRegex = false) where T : MargieBot.WebSockets.IMargieBotWebSocket { MargieSimpleResponseChainer chainer = new MargieSimpleResponseChainer(); chainer.Responder = new SimpleResponder(); if (isRegex) { chainer.Responder.CanRespondFunction = (ResponseContext context) => { return(Regex.IsMatch(context.Message.Text, phrase)); }; } else { chainer.Responder.CanRespondFunction = (ResponseContext context) => { return(Regex.IsMatch(context.Message.Text, @"\b" + Regex.Escape(phrase) + @"\b", RegexOptions.IgnoreCase)); }; } // add the simple responder to the bot bot.Responders.Add(chainer.Responder); return(chainer); }
public static MargieSimpleResponseChainer RespondsTo(this Bot bot, string phrase, bool isRegex = false) { MargieSimpleResponseChainer chainer = new MargieSimpleResponseChainer(); chainer.Responder = new SimpleResponder(); if (isRegex) { chainer.Responder.CanRespondFunction = (SlackMessage context) => { return Regex.IsMatch(context.Message.Text, phrase); }; } else { chainer.Responder.CanRespondFunction = (SlackMessage context) => { return Regex.IsMatch(context.Message.Text, @"\b" + Regex.Escape(phrase) + @"\b", RegexOptions.IgnoreCase); }; } bot.Responders.Add(chainer.Responder); return chainer; }
public static MargieSimpleResponseChainer RespondsTo(this Bot bot, string phrase, bool isRegex = false) { MargieSimpleResponseChainer chainer = new MargieSimpleResponseChainer(); chainer.Responder = new SimpleResponder(); if (isRegex) { chainer.Responder.CanRespondFunction = (ResponseContext context) => { return(Regex.IsMatch(context.Message.Text, phrase)); }; } else { chainer.Responder.CanRespondFunction = (ResponseContext context) => { return(Regex.IsMatch(context.Message.Text, @"\b" + Regex.Escape(phrase) + @"\b", RegexOptions.IgnoreCase)); }; } bot.Responders.Add(chainer.Responder); return(chainer); }