Ejemplo n.º 1
0
 public AutomatedMessage(IntervalMessage message, IList <IChatClient> chatClients, IClock clock)
 {
     _message     = message;
     _clock       = clock;
     _chatClients = chatClients;
     _nextRunTime = _clock.UtcNow.AddMinutes(_message.DelayInMinutes);
 }
        public void SendMessage()
        {
            var             allMessages = _repository.List(IntervalMessagePolicy.All());
            IntervalMessage message     = MyRandom.ChooseRandomWeightedItem(allMessages);

            _chatClient.SendMessage(message.MessageText);

            SetNextRunTime();
            message.LastSent = DateTime.UtcNow;
            _repository.Update(message);
        }
Ejemplo n.º 3
0
 public AutomatedMessage(IntervalMessage message, IList <IChatClient> chatClients)
     : this(message, chatClients, new SystemClock())
 {
 }