def checkConnection(self, url): try: # Try connection response = urllib2.urlopen(url, timeout=1) # Connection successful, activate Connection-LED feedbackHandler.setFeedback(feedbackHandler.CONNECTION, feedbackHandler.ACTIVE) return True except urllib2.URLError as e: # No Connection to Server feedbackHandler.setFeedback(feedbackHandler.CONNECTION, feedbackHandler.INACTIVE) finally: return False
def webConnect(self, uid, resource): request_data = {} request_data['card_uid'] = "".join(map(str, uid)) request_data['event_key'] = self.eventKey request_data['resource'] = resource try: print "Calling " + str(self.url) + " with Options: " + str(request_data) request = urllib2.Request(self.url, data=json.dumps(request_data)) request.add_header('Content-Type', 'application/json') response = urllib2.urlopen(request, timeout=1) if response.code is 200: self.saveCurrUID(uid) self.processWebResponse(response) # Yay, everything good -> Success-Feedback feedbackHandler.setFeedback(feedbackHandler.SUCCESS, feedbackHandler.ACTIVE) else: # Not 200er Code? Error-Feedback feedbackHandler.setFeedback(feedbackHandler.ERROR, feedbackHandler.ACTIVE) print "Error from Webservice: " + str(response.code) except urllib2.URLError as e: # Error while POSTing Data -> Error-Feedback feedbackHandler.setFeedback(feedbackHandler.ERROR, feedbackHandler.ACTIVE) except Exception as e: print e
def webConnect(self, uid, resource): request_data = {} request_data['card_uid'] = "".join(map(str, uid)) request_data['event_key'] = self.eventKey request_data['resource'] = resource try: print "Calling " + str( self.url) + " with Options: " + str(request_data) request = urllib2.Request(self.url, data=json.dumps(request_data)) request.add_header('Content-Type', 'application/json') response = urllib2.urlopen(request, timeout=1) if response.code is 200: self.saveCurrUID(uid) self.processWebResponse(response) # Yay, everything good -> Success-Feedback feedbackHandler.setFeedback(feedbackHandler.SUCCESS, feedbackHandler.ACTIVE) else: # Not 200er Code? Error-Feedback feedbackHandler.setFeedback(feedbackHandler.ERROR, feedbackHandler.ACTIVE) print "Error from Webservice: " + str(response.code) except urllib2.URLError as e: # Error while POSTing Data -> Error-Feedback feedbackHandler.setFeedback(feedbackHandler.ERROR, feedbackHandler.ACTIVE) except Exception as e: print e
class cardWebconnector(object): lastId = None url = None eventKey = None def __init__(self, args): self.url = args['--url'] self.eventKey = args['--event-key'] def update(self, observable, (addedcards, removedcards)): for card in addedcards: # Create connection connection = card.createConnection() connection.connect() # Get Reader-ID as Resource resource = self.getReaderID(connection) # Get Card-UID cardUID = self.getUID(connection) print "Inserted Card with UID: " + str(cardUID) if self.checkNewUID(cardUID): # here we go self.webConnect(cardUID, resource) else: print "#### Same UID ( " + str( cardUID) + " ) as Before... Skipping... ####" feedbackHandler.setFeedback(feedbackHandler.ERROR, feedbackHandler.ACTIVE) for card in removedcards: feedbackHandler.setFeedback(feedbackHandler.SUCCESS, feedbackHandler.INACTIVE) feedbackHandler.setFeedback(feedbackHandler.ERROR, feedbackHandler.INACTIVE)