-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathtask_scheduler.py
More file actions
86 lines (75 loc) · 2.84 KB
/
task_scheduler.py
File metadata and controls
86 lines (75 loc) · 2.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
from rwav.reprodutor import reprodutor
from schedule import *
class TaskScheduler:
"""Agendador de tarefas"""
def __init__(self):
print("""
**********************
* TsC *
**********************
""")
self.nome = input("[i] - Digite o seu Nome:\n> ")
self.titulo = input("[i] - Digite um título para o Alarme:\n> ")
while True:
r = input(f"\n[i] - Deseja marcar um despertador (dia)rio ou (sem)anal {self.nome}?\n> ")
if r == 'dia' or 'd' or 'diario':
self.diario()
elif r == 'sem' or 's' or 'semanal':
self.semanal()
else:
print(f"[x] - Lamento {self.nome}.. Você precisa digitar [dia ou sem] para iniciar o seu despertador!")
def diario(self):
print("""
-----------------------------------------
[i] USE OS NÚMEROS PARA DEFINIR O DIA [i]
-----------------------------------------
[1] = DOMINGO [2] = SEGUNDA-FEIRA
[3] = TERÇA-FEIRA [4] = QUARTA-FEIRA
[5] = QUINTA-FEIRA [6] = SEXTA-FEIRA
[7] = SABADO
""")
dia = input("[i] - Escolha o dia por definir:\n> ")
tempo = input("[i] - Digite a hora por definir:\nEx: (hh:mm) > ")
print(f"""
-----------------------------------------------
[!!] - O alarme {self.titulo} foi bem definido!
Aguardando o periodo para a execução...
-----------------------------------------------
""")
# definindo as tarefas de acordo ao dia definido
if dia == '1':
every().sunday.at(tempo).do(self.funcao)
elif dia == '2':
every().monday.at(tempo).do(self.funcao)
elif dia == '3':
every().tuesday.at(tempo).do(self.funcao)
elif dia == '4':
every().wednesday.at(tempo).do(self.funcao)
elif dia == '5':
every().thursday.at(tempo).do(self.funcao)
elif dia == '6':
every().friday.at(tempo).do(self.funcao)
elif dia == '7':
every().saturday.at(tempo).do(self.funcao)
else:
pass
# criando o loop para autenticação das tarefas pendentes
while True:
run_pending()
def semanal(self):
tempo = input("[i] - Digite a hora por definir:\nEx: (hh:mm) > ")
print(f"""
-----------------------------------------------
[!!] - O alarme {self.titulo} foi bem definido!
Aguardando o periodo para a execução...
-----------------------------------------------
""")
every().weeks.at(tempo).do(self.funcao)
while True:
run_pending()
def funcao(self):
"""função responsavel pelos detalhes da execução"""
print(f"[!!] - Executando Alarme {self.titulo} definido por {self.nome}...")
reprodutor() # adicionando um som(zinho) pra cuiar mais!
if __name__ == '__main__':
TaskScheduler()