src/doord.py
changeset 26 87ddaf81e63c
parent 25 bc6c646f1814
child 27 df47a99d5bfc
--- a/src/doord.py	Sat Jan 11 18:09:32 2020 -0600
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-#!/usr/bin/env python3
-
-import time
-import automationhat
-import sys
-
-import queue
-import threading
-
-
-def main():
-    command_queue = queue.LifoQueue()
-    read_thread = threading.Thread(target=read_loop, args=[command_queue])
-    read_thread.start()
-    run_loop(command_queue)
-
-
-def read_loop(command_queue):
-    while True:
-        command_queue.put_nowait(sys.stdin.readline().rstrip('\n'))
-
-
-def run_loop(command_queue):
-    thread_local = threading.local()
-    thread_local.doorbell_on_state = False
-
-    while True:
-        run_command(command_queue)
-        read_doorbell(thread_local)
-
-
-def run_command(command_queue):
-    try:
-        command = command_queue.get(timeout=0.5)
-    except queue.Empty:
-        pass
-    else:
-        automationhat.relay.on() if command == "unlock" else automationhat.relay.off()
-
-
-def read_doorbell(thread_local):
-    analog_value = automationhat.analog.one.read()
-    doorbell_on_state = 6.0 < analog_value and analog_value <= 6.22
-
-    if analog_value < 7.55:
-        print("doorbell analog value: {}; ringing: {}; ring range: (6.0, 6.22]".format(analog_value, doorbell_on_state))
-
-    if doorbell_on_state != thread_local.doorbell_on_state:
-        thread_local.doorbell_on_state = doorbell_on_state
-        print("doorbell on") if doorbell_on_state else print("doorbell off")
-
-
-if __name__ == "__main__":
-    main()