def run(self): senseFact = SensorFactory() for sensorName in self.specification: sensor = senseFact.getSensor(sensorName) if (sensor is not False): metaData = sensor.getMetaData() data = defaultdict(list) log = defaultdict(list) timestamp = int(time.time()) data['unit'] = metaData[ self.specification[sensorName]].getUnit() data['value'] = metaData[ self.specification[sensorName]].getValue() data['sensor'] = sensorName data['metaData'] = self.specification[sensorName] log[timestamp] = data # Open a file fo = open("log.txt", "a") #append to file the log data fo.write(json.dumps(log) + "\n") # Close opend file fo.close()
def run(self): senseFact = SensorFactory() for sensorName in self.specification: sensor = senseFact.getSensor(sensorName) if (sensor is not False): metaData = sensor.getMetaData() data = defaultdict(list) log = defaultdict(list) timestamp = int(time.time()) data['unit'] = metaData[self.specification[sensorName]].getUnit() data['value'] = metaData[self.specification[sensorName]].getValue() data['sensor'] = sensorName data['metaData'] = self.specification[sensorName] log[timestamp] = data # Open a file fo = open("log.txt", "a") #append to file the log data fo.write(json.dumps(log) + "\n") # Close opend file fo.close()
def run(self): print('::Logging MetaData') senseFact = SensorFactory() for sensorName in self.specification: print("Get sensor: " + sensorName) sensor = senseFact.getSensor(sensorName) metaData = sensor.getMetaData() print(sensorName + "::" + metaData[self.specification[sensorName]].getName() + " reading: ") print(metaData[self.specification[sensorName]].getValue() + " "+ metaData[self.specification[sensorName]].getUnit())
def run(self): print('::Logging MetaData') senseFact = SensorFactory() for sensorName in self.specification: print("Get sensor: " + sensorName) sensor = senseFact.getSensor(sensorName) metaData = sensor.getMetaData() print(sensorName + "::" + metaData[self.specification[sensorName]].getName() + " reading: ") print(metaData[self.specification[sensorName]].getValue() + " " + metaData[self.specification[sensorName]].getUnit())
def run(self): doJob = True if ('conditions' in self.missionReference): senseFact = SensorFactory() for mCondition in self.missionReference['conditions']: for conditionName in mCondition: conditionValue = mCondition[conditionName][1] sensorOptions = mCondition[conditionName][0].partition(',') sensorName = sensorOptions[0].strip() metaDataName = sensorOptions[2].strip() #create the sensor sensor = senseFact.getSensor(sensorName) if (sensor is False): #sensor module did not load doJob = False else: #get the sensors meta data metaData = sensor.getMetaData() #create a condition to test (equals, less than, greater than etc) condition = Condition(conditionName) #if the condition fails do not do job if (condition.test(metaData[metaDataName].getValue(), conditionValue) is False): doJob = False if ('delay' in self.missionReference): timedelay = str(self.lastRun + int(self.missionReference['delay'])) #create and test time condition condition = Condition('gthan') if (condition.test(int(time.time()), timedelay) is False): doJob = False jobFact = JobFactory() if ('job' in self.missionReference and doJob is not False): #set the last run time self.lastRun = int(time.time()) for jobName in self.missionReference['job']: print("." + jobName) #grab the job specification to pass to the factory jobSpec = self.missionReference['job'][jobName] job = jobFact.getJob(jobName, jobSpec) job.run() elif(doJob is False): # print('-') doJob = False else: print('Error: Job not found')
def run(self): senseFact = SensorFactory() data = defaultdict(list) for sensorName in self.specification: sensor = senseFact.getSensor(sensorName) if (sensor is not False): metaData = sensor.getMetaData() data[self.specification[sensorName]] = metaData[ self.specification[sensorName]].getValue() r = requests.post("http://192.168.1.3/post", data=data) print(r.status_code)