-
Notifications
You must be signed in to change notification settings - Fork 0
/
screenlock.py
35 lines (28 loc) · 1.08 KB
/
screenlock.py
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
from ctypes import CDLL
import datetime
import time
def time_in_range(start, end, current):
return start <= current <= end
# set first times for before midnight, second times for after midnight.
start = datetime.time(22, 30, 0)
end = datetime.time(23, 59, 59)
start2 = datetime.time(0, 0, 0)
end2 = datetime.time(7, 0, 0)
while True:
current = datetime.datetime.now().time()
if time_in_range(start, end, current):
# print (current)
# print(bool(time_in_range(start, end, current)))
loginPF = CDLL('/System/Library/PrivateFrameworks/login.framework/Versions/Current/login')
result = loginPF.SACLockScreenImmediate()
time.sleep(15)
elif time_in_range(start2, end2, current):
# print(current)
# print(bool(time_in_range(start2, end2, current)))
loginPF = CDLL('/System/Library/PrivateFrameworks/login.framework/Versions/Current/login')
result = loginPF.SACLockScreenImmediate()
time.sleep(15)
else:
# print (current)
# print(bool(time_in_range(start, end, current)))
time.sleep(5)