-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgpioEventProcessor.py
More file actions
34 lines (27 loc) · 1014 Bytes
/
gpioEventProcessor.py
File metadata and controls
34 lines (27 loc) · 1014 Bytes
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
import time
import logging
try:
import urllib2
except ImportError:
sim_data_log = True
logger = logging.getLogger("EventProc")
class MyException(Exception):
pass
class GPIOEventProcessor(object):
""" Event Processor object"""
def __init__(self, gpio_settings, sim_mode, data_log_uri_base, signal_defs):
self.gpio_settings = gpio_settings
self.sim_mode = sim_mode
self.data_log_uri_base = data_log_uri_base
self.signal_defs = signal_defs
def eventCB(self, event):
logger.info('Default handler for event: %s' % (event))
def doLog(self, log_msg):
logger.info(msg)
def dataLog(self, data):
if len(self.data_log_uri_base) > 0 and not sim_data_log:
try:
rep = urllib2.urlopen("%s%s" % (self.data_log_uri_base, data)).read()
logger.info("Logging data: %s. reply: %s" % ( data, rep))
except:
logger.warn("Error connecting to data logger; skipping post")