def METHOD_NAME(self):
    """Send reminders depending on time. Videos mustn't be started yet,
    livesessions concerned are the ones where is_registered is True and
    should_send_reminders is True."""
    for step in settings.REMINDERS_STEP:
        reminder = settings.REMINDERS_STEP[step]
        starting_at_max = timezone.now() + timedelta(
            seconds=reminder[settings.REMINDER_KEY_STARTS_IN_S]
        )
        created_on = timezone.now() - timedelta(
            seconds=reminder[settings.REMINDER_KEY_REGISTER_BEFORE_S]
        )
        livesessions = (
            LiveSession.objects.filter(
                created_on__lt=created_on,
                should_send_reminders=True,
                is_registered=True,
                video__starting_at__gt=timezone.now(),
                video__starting_at__lt=starting_at_max,
                video__live_state=IDLE,
            ).exclude(
                reminders__overlap=[
                    step,
                    settings.REMINDER_ERROR,
                ]
            )
        ).order_by("created_on")
        # on some cases reminders can only be sent if others haven't
        if reminder.get(settings.REGISTER_EXCLUDE_STEP):
            livesessions = livesessions.exclude(
                reminders__overlap=reminder[settings.REGISTER_EXCLUDE_STEP]
            )
        self.send_reminders_and_update_livesessions_step(
            livesessions,
            step,
            reminder[settings.REMINDER_OBJECT_MAIL],
            {"reminder_timer_title": reminder[settings.REMINDER_ELAPSED_LABEL]},
        )