/// <summary> /// 获取最终响应消息 /// </summary> /// <param name="handler"></param> /// <returns></returns> public static IResponseMessageBase GetResponseMessage(this RequestMessageTextKeywordHandler handler) { if (!handler.MatchSuccessed && handler.DefaultMessage != null) { handler.ResponseMessage = handler.DefaultMessage(); } return(handler.ResponseMessage); }
/// <summary> /// 匹配关键词 /// </summary> /// <param name="handler"></param> /// <param name="keyword">关键词</param> /// <param name="func"></param> /// <returns></returns> public static RequestMessageTextKeywordHandler Keyword(this RequestMessageTextKeywordHandler handler, string keyword, Func <IResponseMessageBase> func) { if (!handler.MatchSuccessed && ((handler.CaseSensitive && handler.Keyword == keyword) || (!handler.CaseSensitive && handler.Keyword.ToUpper() == keyword.ToUpper()))) { handler.MatchSuccessed = true; handler.ResponseMessage = func(); } return(handler); }
/// <summary> /// 开始匹配 /// </summary> /// <param name="requestMessage"></param> /// <param name="caseSensitive">是否大小写敏感,默认为false</param> /// <returns></returns> public static RequestMessageTextKeywordHandler StartHandler(this IRequestMessageText requestMessage, bool caseSensitive = false) { var handler = new RequestMessageTextKeywordHandler(requestMessage, caseSensitive); return(handler); }