33 lines
590 B
Python
33 lines
590 B
Python
|
from mayordomo import log, create_async_smtp_server
|
||
|
import daemon
|
||
|
import time
|
||
|
import signal
|
||
|
import asyncio
|
||
|
|
||
|
def main():
|
||
|
|
||
|
mayordomo = create_async_smtp_server()
|
||
|
|
||
|
async def main_loop():
|
||
|
await log.info('Demonio iniciado')
|
||
|
doki=int(time.time()) + 60
|
||
|
while True:
|
||
|
await asyncio.sleep(1)
|
||
|
i = int(time.time())
|
||
|
if i >= doki:
|
||
|
doki = i + 60
|
||
|
await log.info('Heartbeat')
|
||
|
|
||
|
def run():
|
||
|
mayordomo.start()
|
||
|
signal.signal(signal.SIGTERM, programCleanup)
|
||
|
asyncio.run(main_loop())
|
||
|
|
||
|
def programCleanup():
|
||
|
mayordomo.stop()
|
||
|
|
||
|
run()
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
main()
|
||
|
|