public void AdviceUserToGoForAWalk()
 {
     try
     {
         _notifier.AdviceUserToGoForAWalk();
     }
     catch (Exception e)
     {
     }
 }
        public void Start()
        {
            var wasLocked        = false;
            var lastTimeUnlocked = _clock.Now();
            var lastTimeLocked   = lastTimeUnlocked.AddMinutes(-1);

            while (true)
            {
                Task.Delay(30 * 1000).Wait();

                if (wasLocked)
                {
                    if (_computer.IsLocked())
                    {
                        if (TimeComputerIsLocked(lastTimeLocked).Minutes >= 2)
                        {
                            _notifier.PleaseComeBack();
                        }
                        else
                        {
                            _notifier.StayAway();
                        }
                    }
                    else
                    {
                        wasLocked = false;
                        ;
                        lastTimeUnlocked = _clock.Now();
                        _notifier.StayHere();
                    }
                }
                else
                {
                    if (!_computer.IsLocked())
                    {
                        if (TimeComputerUnlocked(lastTimeUnlocked).Minutes >= 40)
                        {
                            _notifier.AdviceUserToGoForAWalk();
                        }
                        else
                        {
                            _notifier.StayHere();
                        }
                    }
                    else
                    {
                        wasLocked      = true;
                        lastTimeLocked = _clock.Now();
                        _notifier.StayAway();
                    }
                }
            }
        }