[routes][heatpump] use the Heatpump model
This commit is contained in:
parent
9eb1f582dc
commit
5c42ff849d
1 changed files with 9 additions and 6 deletions
|
|
@ -1,4 +1,5 @@
|
|||
#!/usr/bin/env python3
|
||||
from datetime import datetime
|
||||
from starlette.routing import Router, Route
|
||||
from starlette.responses import JSONResponse
|
||||
from .config import config
|
||||
|
|
@ -8,16 +9,18 @@ from pyheatpump.models import *
|
|||
|
||||
def get_variable_values(request):
|
||||
res = {}
|
||||
for var_type_id, var_type in VariableType.getall().items():
|
||||
res[var_type_id] = {}
|
||||
for address, value in var_type.get_variables_values().items():
|
||||
res[var_type_id][address] = value
|
||||
if 'time' not in request.path_params.keys():
|
||||
h = Heatpump(config.get('heatpump', 'mac_address', None))
|
||||
else:
|
||||
time = datetime.fromisoformat(request.params['time'])
|
||||
h = Heatpump(config.get('heatpump', 'mac_address', request.params['time']))
|
||||
|
||||
return JSONResponse(res)
|
||||
return JSONResponse(h.__dict__())
|
||||
|
||||
|
||||
ROUTES=[
|
||||
Route('/', get_variable_values, methods=['GET'])
|
||||
Route('/', get_variable_values, methods=['GET']),
|
||||
Route('/{time}', get_variable_values, methods=['GET'])
|
||||
]
|
||||
|
||||
app = Router(routes=ROUTES)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue