public void CheckMessage() { var current = CheckPoint.Current(); var score = new CycleScore(current.Cycle,DateTimeOffset.Now.Ticks); var updater = new Mock<ICycleScoreUpdater>().Object; score.SetScore(1,new UpdateScore {EnlightenedScore = 1000,ResistanceScore = 0}, updater); score.SetScore(2, new UpdateScore { EnlightenedScore = 1000, ResistanceScore = 0 }, updater); score.SetScore(3, new UpdateScore { EnlightenedScore = 1000, ResistanceScore = 0 }, updater); score.SetScore(4, new UpdateScore { EnlightenedScore = 1000, ResistanceScore = 0 }, updater); score.SetScore(5, new UpdateScore { EnlightenedScore = 1000, ResistanceScore = 0 }, updater); score.SetScore(6, new UpdateScore { EnlightenedScore = 1000, ResistanceScore = 0 }, updater); score.SetScore(7, new UpdateScore { EnlightenedScore = 1000, ResistanceScore = 0 }, updater); Console.WriteLine(score.ToString()); }
private void PostToSlack(CycleScore currentCycle) { IRestResponse response; if (currentCycle.HasMissingCPs()) { var missingCPs = currentCycle.MissingCPs(); //http://localhost:31790/#/6/1 var missingMessages = missingCPs.Select(cp => string.Format("Missing CP {2}. Goto http://{0}/#/{1}/{2} to update the score", Request.RequestUri.Host.ToLower(), currentCycle.Cycle.Id,cp.Cp)).ToList(); response = _slackSender.Send(string.Join("\n", missingMessages)); } else { response = _slackSender.Send(currentCycle.ToString()); } if (response.StatusCode != HttpStatusCode.OK) { throw new HttpException((int) response.StatusCode, "Error Sending To Slack. " + response.ErrorMessage); } }
private void PostToSlack(CycleScore currentCycle) { var cp = CheckPoint.Current(); if (currentCycle.IsSnoozed) { if (cp.IsFirstMessageOfDay()) { var snoozeMessage = string.Format("Shhh. Cycle bot is sleeping.\nGoto http://{0}/api/{1}/false to un-snooze me.\nIf you really want to know the score summary goto http://{0}/#/{1}\nI'll wake up again at {2}.", Request.RequestUri.Host.ToLower(), currentCycle.Cycle.Id, cp.NextUnsnoozeTime()); _slackSender.Send(snoozeMessage); } return; } if (currentCycle.Cycle.Id != cp.Cycle.Id) { return; } var missingCPs = currentCycle.MissingCPs().ToArray(); if (missingCPs.Length == 0) { _slackSender.Send(currentCycle.ToString()); return; } if (missingCPs.Length == 1) { _slackSender.Send(string.Format("Missing CP {2}. Goto http://{0}/#/{1}/{2} to update the score", Request.RequestUri.Host.ToLower(), currentCycle.Cycle.Id, missingCPs[0].Cp)); return; } var cpString = ConvertToDashAndCommaString(missingCPs); var manymissing = string.Format("Missing CPs {2}. Goto http://{0}/#/{1} to update the score", Request.RequestUri.Host.ToLower(), currentCycle.Cycle.Id, cpString); _slackSender.Send(manymissing); }