__tablename__ = 'openweathermap'
-def select_sensordata(sensor_id, sensor_type, begin, end):
- query = Sensors.query
- if sensor_id is not None:
- query = query.filter(Sensors.sensor_id == sensor_id)
- if sensor_type is not None:
- query = query.filter(Sensors.value_type == sensor_type)
- if begin is not None:
- query = query.filter(Sensors.timestamp >= begin)
- if end is not None:
- query = query.filter(Sensors.timestamp <= end)
- return query.all()
-
-
def calc_grouping_resolution(begin, end):
"""How many data points should be between the timestamps begin and end?"""
# copied from munin/master/_bin/munin-cgi-graph.in
+ # except day: 300 -> 600
resolutions = dict(
- day = 300,
+ day = 600,
week = 1800,
month = 7200,
year = 86400,
return resolution
+def select_sensordata(sensor_id, sensor_type, begin, end):
+ query = Sensors.query
+ if sensor_id is not None:
+ query = query.filter(Sensors.sensor_id == sensor_id)
+ if sensor_type is not None:
+ query = query.filter(Sensors.value_type == sensor_type)
+ if begin is not None:
+ query = query.filter(Sensors.timestamp >= begin)
+ if end is not None:
+ query = query.filter(Sensors.timestamp <= end)
+ return query.all()
+
+
def select_sensordata_grouped(sensor_id, sensor_type, begin, end):
# determine resolution (interval in seconds for data points)
resolution = calc_grouping_resolution(begin, end)
return jsonify(result)
+@app.route('/api/<version>/currentairtemperature')
+def currentair(version):
+ value, timestamp = currentairtemperature(cityid)
+ return jsonify({"value": value, "timestamp": timestamp})
+
+
+@app.route('/api/<version>/currentwatertemperature')
+def currentwater(version):
+ value, timestamp = currentwatertemperature(mainsensor)
+ return jsonify({"value": value, "timestamp": timestamp})
+
+
@app.route("/")
def index():
airvalue, airtime = currentairtemperature(cityid)