<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def check_activation(self, contacts):
 """Enter or exit downtime if necessary :return: None """

        now = time.time()
        was_is_in_effect = self.is_in_effect
        self.is_in_effect = (self.start_time <= now <= self.end_time)

        # Raise a log entry when we get in the downtime
        if not was_is_in_effect and self.is_in_effect:
            self.enter(contacts)

        # Same for exit purpose
        if was_is_in_effect and not self.is_in_effect:
            self.exit(contacts)