Source code for mids.timer

# mods/timer.py
#
#

""" timer command to schedule a text to be printed on a given time. stopwatch to measure elapsed time. """

from mads.time import day, now, elapsed, to_time, get_day, to_day, get_hour
from mads.join import j

from mads.storage import Storage
from mads.object import Config
from mads.event import Event
from mads.clock import Timer

from mids import kernel

import time

start = 0

[docs]def init(event): cfg = Config("timer", default=0).load() timers = [] for e in kernel.sequence("timer", cfg.last): if e.done: continue if "time" not in e: continue if time.time() < int(e.time): timer = Timer(int(e.time), e.direct, e.txt) t = kernel.launch(timer.start) timers.append(t) else: cfg.last = int(e.time) cfg.save() e.done = True e.sync() return timers