You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.1 KiB
Python
54 lines
1.1 KiB
Python
from flask import Flask, jsonify, request
|
|
from DatabaseObject import sensordata
|
|
from SQLHandler import SQLconnect
|
|
from datetime import datetime
|
|
import json
|
|
import pytz
|
|
|
|
|
|
app = Flask(__name__)
|
|
|
|
mydb = SQLconnect.createConnection("mysql")
|
|
|
|
mycursor = mydb.cursor()
|
|
|
|
@app.route('/')
|
|
def test():
|
|
return "Hello Test"
|
|
|
|
|
|
|
|
|
|
@app.route('/sensordata')
|
|
def get_sensordata():
|
|
return jsonify(sensordata)
|
|
|
|
|
|
|
|
|
|
@app.post('/sensordata')
|
|
def add_sensordata():
|
|
if request.is_json:
|
|
sensordata = request.get_json()
|
|
|
|
# Zeit wird gesetzt //In eigenes Objekt umwandeln TODO
|
|
local = pytz.timezone("Europe/Berlin")
|
|
now = datetime.now(local)
|
|
|
|
timestamp = {"timestamp":str(now)}
|
|
|
|
sensordata.update(timestamp)
|
|
|
|
timestamp = sensordata["timestamp"]
|
|
temperature = sensordata["temperature"]
|
|
moisture = sensordata["moisture"]
|
|
humidity = sensordata["humidity"]
|
|
|
|
sql = "INSERT INTO sensordata (timestamp, temperature, moisture, humidity) VALUES (?, ?, ?, ?)"
|
|
|
|
mycursor.execute(sql, (timestamp, temperature, moisture, humidity))
|
|
|
|
mydb.commit()
|
|
|
|
return '', 204
|