# -*- coding: utf-8 -*- import bottle from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker from ebus.sql import model import os import json import datetime import time app = bottle.Bottle("ebus") bottle.debug() engine = create_engine("postgresql://ebus:ebus@10.2.2.26/ebus", echo=True) Session = sessionmaker() Session.configure(bind=engine) @app.route('/') def index_file(): return static_files("index.html") #return bottle.static_file("index.html", root="./static") @app.route('/static/:filename') def static_files(filename): return bottle.static_file(filename, root=os.path.join(os.path.dirname(__file__),"static")) @app.route('/sensor/:name/:startdate/:enddate') def sensor_data(name,startdate,enddate): #data = [-10,50935],[-9,50305],[-8,50403] now = datetime.datetime.now() # -24h first = now.date() - datetime.timedelta(2) last = now.date() s = Session() sensorid = s.query(model.Sensor).filter(model.Sensor.name == name).first() values = Session().query(model.Value).add_columns("timestamp","value_float","value_string","value_int") values = values.filter(model.Value.sensor == sensorid) values = values.filter(model.Value.timestamp.between(first,last)) v = [] for value in values.all(): v.append([int(time.mktime(value.timestamp.timetuple())*1000),value.value_float]) return json.dumps(v) #return "
 %s 
" % dir(values[0]) #return json.dumps(data)