-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapp.py
More file actions
43 lines (34 loc) · 1.31 KB
/
Copy pathapp.py
File metadata and controls
43 lines (34 loc) · 1.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
from flask import Flask, send_from_directory, request, jsonify
from flask_cors import CORS
app = Flask(__name__, static_folder="frontend")
CORS(app)
latest_data = {
"voltage": 0,
"current": 0,
"power": 0,
"soc": 100,
"soh": 100,
"lat": 12.907757,
"lon": 77.566520
}
@app.route("/")
def home():
return send_from_directory("frontend", "index.html")
@app.route("/api/data", methods=["GET"])
def data():
global latest_data
if request.args:
latest_data["voltage"] = float(request.args.get("voltage", latest_data["voltage"]))
latest_data["current"] = float(request.args.get("current", latest_data["current"]))
latest_data["power"] = float(request.args.get("power", latest_data["power"]))
latest_data["soc"] = float(request.args.get("soc", latest_data["soc"]))
latest_data["soh"] = float(request.args.get("soh", latest_data["soh"]))
latest_data["lat"] = float(request.args.get("lat", latest_data["lat"]))
latest_data["lon"] = float(request.args.get("lon", latest_data["lon"]))
print("ESP32:", latest_data)
return jsonify(latest_data)
@app.route("/<path:path>")
def static_files(path):
return send_from_directory("frontend", path)
if __name__ == "__main__":
app.run(host="0.0.0.0", port=5000, debug=False)