protected override ITwitterResponseMessage ImplementRespond() { var responseText = string.Format( Message, Tweet.user.screen_name, TwitterOptions.CommandLink); var responseMessage = new TwitterResponseMessage( responseText); return(responseMessage); }
protected override ITwitterResponseMessage ImplementRespond() { var message = Tweet.truncated.HasValue && Tweet.truncated.Value ? Tweet.extended_tweet.full_text : Tweet.text; var regex = new Regex(RegExPattern); var matches = regex.Matches(message); var dieType = DefaultDieTypeName; var result = 0; if (matches.Any()) { var matchValue = matches .First() .Value .ToLower(); var halves = matchValue.Split(DieIdentifier); if (halves.Count() == 2 && int.TryParse(halves[0], out var dieNum) && int.TryParse(halves[1], out var dieSize)) { dieType = matchValue; result = Roll( dieNum, dieSize); } else { result = RollDefault(); } } else { result = RollDefault(); } var response = new TwitterResponseMessage( string.Format(ResponseMessage, Tweet.user.screen_name, dieType, result)); return(response); }