async def METHOD_NAME(self, timer: Timer):
    """This listener opens the scrim registration at time."""
    scrim_id = timer.kwargs["scrim_id"]
    scrim = await Scrim.get_or_none(pk=scrim_id)
    if not scrim:  # we don't want to do anything if the scrim is deleted
        return
    if scrim.open_time != timer.expires:  # If time is not same return :)
        return
    await Scrim.filter(pk=scrim.id).update(
        open_time=scrim.open_time + timedelta(hours=24),
    )
    await self.bot.reminders.create_timer(
        scrim.open_time + timedelta(hours=24),
        "scrim_open",
        scrim_id=scrim.id,
    )  # we don't want to risk this
    if scrim.toggle is not True or not Day(utils.day_today()) in scrim.open_days:
        return
    if scrim.opened_at and scrim.opened_at.strftime("%d-%b-%Y %I:%M %p") == datetime.now(tz=IST).strftime(
        "%d-%b-%Y %I:%M %p"
    ):
        return  # means we are having multiple timers for a single scrim :c shit
    guild = scrim.guild
    if not guild:
        return
    if not await should_open_scrim(scrim):
        return
    if not guild.chunked:
        self.bot.loop.create_task(guild.chunk())
    await scrim.start_registration()