sigh
[uccdoor.git] / server.py
index 64752f5..91fa630 100755 (executable)
--- a/server.py
+++ b/server.py
@@ -7,6 +7,7 @@
 
 # statuses: 1 means open circuit, 0 means closed circuit, -1 means error
 
+import syslog
 import dbus, dbus.service
 import gobject
 from LATClient import LATClient
@@ -71,9 +72,12 @@ class Door(dbus.service.Object):
             newstatus = -1
         
         if newstatus != self.status:
+            syslog.syslog(142, "status changed detected for %s; status: %i, newstatus: %i" % self.service, self.status, newstatus)
             self.status = newstatus
             # emit signal
             self.status_changed(newstatus)
+            # back off if broken
+            self.interval = [10,10,20][newstatus]
         
         # set up timeout again
         self.timeout = Timer(self.interval, self.poll)

UCC git Repository :: git.ucc.asn.au