Esempio n. 1
0
def historic_co2_reset_in_range():
    logging.debug("Received request /historic/co2/reset/range")
    startTime = time.monotonic()
    try:
        # Requires a simple pw
        pw = req.args.get("pw")
        logging.debug("pw arg is: " + str(pw))
        if pw != "A7G2V9":
            abort(403)

        start = req.args.get('start')
        if start is None:
            start = '2020-01-01T00:00:00'
        logging.debug("Start arg is: " + str(start))

        end = req.args.get('end')
        if end is None:
            end = datetime.utcnow()
        logging.debug("End arg is: " + str(end))

        HistoricCO2Model.delete_by_range(start, end)
        elapsedTime = time.monotonic() - startTime
        logging.debug("co2 reset in range request time: " +
                      str(round(elapsedTime, 5)) + " seconds")
        return res(204, timeUTC=datetime.utcnow())
    except mariadb.Error as e:
        abort(500, str(e))
Esempio n. 2
0
	def delete_by_range(start, end):
		# Init
		returnValue = True

		# Execution
		HistoricPressureModel.delete_by_range(start, end)
		HistoricHumidityModel.delete_by_range(start, end)
		HistoricCO2Model.delete_by_range(start, end)
		HistoricTemperatureModel.delete_by_range(start, end)

		# Clean and return
		return returnValue
Esempio n. 3
0
def historic_co2_get_average():
    logging.debug("Received request /historic/co2/average")
    startTime = time.monotonic()
    try:
        returnValue = HistoricCO2Model.get_average()
        data = HistoricCO2Model.average_json(returnValue)
        elapsedTime = time.monotonic() - startTime
        logging.debug("co get average request time: " +
                      str(round(elapsedTime, 5)) + " seconds")
        return res(200, data=data, timeUTC=datetime.utcnow())
    except mariadb.Error as e:
        abort(500, str(e))
Esempio n. 4
0
	def delete_all():
		# Init
		returnValue = True

		# Execution
		HistoricPressureModel.delete_all()
		HistoricHumidityModel.delete_all()
		HistoricCO2Model.delete_all()
		HistoricTemperatureModel.delete_all()

		# Clean and return
		return returnValue
Esempio n. 5
0
def historic_co2_get_by_search():
    logging.debug("Received request /historic/co2/search")
    startTime = time.monotonic()
    try:
        start = req.args.get('start')
        if start is None:
            start = '2020-01-01T00:00:00'
        logging.debug("Start arg is: " + str(start))

        end = req.args.get('end')
        if end is None:
            end = datetime.utcnow()
        logging.debug("End arg is: " + str(end))

        dataArray = []
        co2Array = HistoricCO2Model.get_by_search(start, end)
        for tempModel in co2Array:
            dataArray.append(tempModel.to_json())
        elapsedTime = time.monotonic() - startTime
        logging.debug("co2 get by search request time: " +
                      str(round(elapsedTime, 5)) + " seconds")
        return res(200, data=dataArray, timeUTC=datetime.utcnow())
    except mariadb.Error as e:
        logging.exception(e)
        abort(500, str(e))
Esempio n. 6
0
def historic_co2_reset():
    logging.debug("Received request /historic/co2/reset")
    startTime = time.monotonic()
    try:
        # Requires a simple pw
        pw = req.args.get("pw")
        logging.debug("pw arg is: " + str(pw))
        if pw != "A7G2V9":
            abort(403)

        HistoricCO2Model.delete_all()
        elapsedTime = time.monotonic() - startTime
        logging.debug("co2 reset request time: " + str(round(elapsedTime, 5)) +
                      " seconds")
        return res(204, timeUTC=datetime.utcnow())
    except mariadb.Error as e:
        abort(500, str(e))
Esempio n. 7
0
	def to_average_json(self):
		logging.debug("Formatting SensorModel to average json")
		json = {
			'type': 'All historic sensor average',
			'attributes': {
				'pressure': HistoricPressureModel.average_json(self.pressures),
				'humidity': HistoricHumidityModel.average_json(self.humidities),
				'co2': HistoricCO2Model.average_json(self.co2),
				'temperature': HistoricTemperatureModel.average_json(self.temperatures)
			}
		}
		return json
Esempio n. 8
0
def historic_co2_get_average_in_range():
    logging.debug("Received request /historic/co2/average/range")
    startTime = time.monotonic()
    try:
        start = req.args.get('start')
        if start is None:
            start = '2020-01-01T00:00:00'
        logging.debug("Start arg is: " + str(start))

        end = req.args.get('end')
        if end is None:
            end = datetime.utcnow()
        logging.debug("End arg is: " + str(end))

        returnValue = HistoricCO2Model.get_average_by_range(start, end)
        data = HistoricCO2Model.average_json(returnValue)
        elapsedTime = time.monotonic() - startTime
        logging.debug("co2 get average by range request time: " +
                      str(round(elapsedTime, 5)) + " seconds")
        return res(200, data=data, timeUTC=datetime.utcnow())
    except mariadb.Error as e:
        abort(500, str(e))
Esempio n. 9
0
def historic_co2_get_newest():
    logging.debug("Received request /historic/co2/newest")
    startTime = time.monotonic()
    try:
        returnValue = HistoricCO2Model.get_newest()
        if returnValue is None:
            abort(404)
        data = returnValue.to_json()
        elapsedTime = time.monotonic() - startTime
        logging.debug("co2 get newest request time: " +
                      str(round(elapsedTime, 5)) + " seconds")
        return res(200, data=data, timeUTC=datetime.utcnow())
    except mariadb.Error as e:
        abort(500, str(e))
Esempio n. 10
0
def historic_co2_get_all():
    logging.debug("Received request /historic/co2")
    startTime = time.monotonic()
    try:
        dataArray = []
        co2Array = HistoricCO2Model.get_all()
        for tempModel in co2Array:
            dataArray.append(tempModel.to_json())
        elapsedTime = time.monotonic() - startTime
        logging.debug("co2 get all request time: " +
                      str(round(elapsedTime, 5)) + " seconds")
        return res(200, data=dataArray, timeUTC=datetime.utcnow())
    except mariadb.Error as e:
        abort(500, str(e))
Esempio n. 11
0
	def get_all():
		# init
		foundPressure = []
		foundHumidities = []
		foundCo2 = []
		foundTemperatures = []

		# Execution (4 connection, could be more efficient but query time is hardly an issue)
		foundPressure = HistoricPressureModel.get_all()
		foundHumidities = HistoricHumidityModel.get_all()
		foundCo2 = HistoricCO2Model.get_all()
		foundTemperatures = HistoricTemperatureModel.get_all()

		# Build object
		returnObj = HistoricSensorModel(
			foundPressure, foundHumidities, foundCo2, foundTemperatures)

		# Clean and return
		return returnObj
Esempio n. 12
0
	def get_average_by_range(start, end):
		# init
		foundPressure = None
		foundHumidities = None
		foundCo2 = None
		foundTemperatures = None

		# Execution (4 connection, could be more efficient but query time is hardly an issue)
		foundPressure = HistoricPressureModel.get_average_by_range(start, end)
		foundHumidities = HistoricHumidityModel.get_average_by_range(start, end)
		foundCo2 = HistoricCO2Model.get_average_by_range(start, end)
		foundTemperatures = HistoricTemperatureModel.get_average_by_range(start, end)

		# Build object
		returnObj = HistoricSensorModel(
			foundPressure, foundHumidities, foundCo2, foundTemperatures)

		# Clean and return
		return returnObj