devices GEEN IDEE!
This commit is contained in:
87
app.py
87
app.py
@@ -1,3 +1,56 @@
|
|||||||
|
# from flask import Flask, jsonify
|
||||||
|
# import mysql.connector
|
||||||
|
|
||||||
|
# app = Flask(__name__)
|
||||||
|
|
||||||
|
# def database_connect():
|
||||||
|
# try:
|
||||||
|
# connection = mysql.connector.connect(
|
||||||
|
# host='localhost',
|
||||||
|
# user='root',
|
||||||
|
# password='',
|
||||||
|
# database='goodgarden'
|
||||||
|
# )
|
||||||
|
# return connection
|
||||||
|
# except Exception as e:
|
||||||
|
# print("Database connection failed:", e)
|
||||||
|
# return None
|
||||||
|
|
||||||
|
# # Function to get data from the MySQL database
|
||||||
|
# def get_database_data():
|
||||||
|
|
||||||
|
# mydb = database_connect()
|
||||||
|
|
||||||
|
# if mydb and mydb.is_connected():
|
||||||
|
|
||||||
|
# cursor = mydb.cursor()
|
||||||
|
|
||||||
|
# # Query to retrieve the latest battery voltage data
|
||||||
|
# query = "SELECT label, last_seen, last_battery_voltage, device_id FROM devices"
|
||||||
|
# cursor.execute(query)
|
||||||
|
# battery_data = cursor.fetchall()
|
||||||
|
# mydb.close()
|
||||||
|
# return battery_data
|
||||||
|
|
||||||
|
# @app.route('/', methods=['GET'])
|
||||||
|
# def get_data():
|
||||||
|
# battery_data_322 = get_database_data()
|
||||||
|
|
||||||
|
# if battery_data_322 is None:
|
||||||
|
# return jsonify({"error": "Failed to fetch data from database"})
|
||||||
|
|
||||||
|
# data_dict = {
|
||||||
|
# "label": battery_data_322[0],
|
||||||
|
# "last_seen": battery_data_322[1],
|
||||||
|
# "last_battery_voltage": battery_data_322[2],
|
||||||
|
# "device_id": battery_data_322[3]
|
||||||
|
# }
|
||||||
|
|
||||||
|
# return jsonify(data_dict)
|
||||||
|
|
||||||
|
# if __name__ == "__main__":
|
||||||
|
# app.run(host='127.0.0.1', port=5000)
|
||||||
|
|
||||||
from flask import Flask, jsonify
|
from flask import Flask, jsonify
|
||||||
import mysql.connector
|
import mysql.connector
|
||||||
|
|
||||||
@@ -5,48 +58,46 @@ app = Flask(__name__)
|
|||||||
|
|
||||||
def database_connect():
|
def database_connect():
|
||||||
try:
|
try:
|
||||||
|
|
||||||
connection = mysql.connector.connect(
|
connection = mysql.connector.connect(
|
||||||
host='localhost',
|
host="localhost",
|
||||||
user='root',
|
user="root",
|
||||||
password='',
|
password="",
|
||||||
database='goodgarden'
|
database="goodgarden"
|
||||||
)
|
)
|
||||||
return connection
|
return connection
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
|
|
||||||
print("Database connection failed:", e)
|
print("Database connection failed:", e)
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
||||||
# Function to get data from the MySQL database
|
# Function to get data from the MySQL database
|
||||||
def get_database_data():
|
def get_database_data():
|
||||||
|
|
||||||
mydb = database_connect()
|
mydb = database_connect()
|
||||||
|
|
||||||
if mydb and mydb.is_connected():
|
if mydb and mydb.is_connected():
|
||||||
|
|
||||||
cursor = mydb.cursor()
|
cursor = mydb.cursor(dictionary=True) # Enable dictionary result
|
||||||
|
|
||||||
# Query to retrieve the latest battery voltage data
|
# Query to retrieve the latest battery voltage data
|
||||||
query = "SELECT label, last_seen, last_battery_voltage, device_id FROM devices"
|
query = "SELECT label, last_seen, last_battery_voltage, device_id FROM devices"
|
||||||
cursor.execute(query)
|
cursor.execute(query)
|
||||||
battery_data = cursor.fetchone()
|
battery_data = cursor.fetchall() # Fetch all rows
|
||||||
mydb.close()
|
mydb.close()
|
||||||
return battery_data
|
return battery_data
|
||||||
|
|
||||||
|
|
||||||
@app.route('/', methods=['GET'])
|
@app.route('/', methods=['GET'])
|
||||||
def get_data():
|
def get_data():
|
||||||
battery_data_322 = get_database_data()
|
battery_data = get_database_data()
|
||||||
|
|
||||||
|
if battery_data is None or len(battery_data) == 0:
|
||||||
|
|
||||||
if battery_data_322 is None:
|
|
||||||
return jsonify({"error": "Failed to fetch data from database"})
|
return jsonify({"error": "Failed to fetch data from database"})
|
||||||
|
|
||||||
data_dict = {
|
|
||||||
"label": battery_data_322[0],
|
|
||||||
"last_seen": battery_data_322[1],
|
|
||||||
"last_battery_voltage": battery_data_322[2],
|
|
||||||
"device_id": battery_data_322[3]
|
|
||||||
}
|
|
||||||
|
|
||||||
return jsonify(data_dict)
|
return jsonify(battery_data) # Directly return the list of dictionaries as JSON
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
app.run(host='127.0.0.1', port=5000)
|
app.run(host="127.0.0.1", port=5000)
|
||||||
|
|||||||
@@ -49,6 +49,9 @@ def on_message(client, userdata, message):
|
|||||||
|
|
||||||
print(f"\033[92mMessage received on topic\033[0m {message.topic}: {data}")
|
print(f"\033[92mMessage received on topic\033[0m {message.topic}: {data}")
|
||||||
|
|
||||||
|
# def berekenAlgo(data):
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
topic = "goodgarden/devices"
|
topic = "goodgarden/devices"
|
||||||
subscribe.callback(on_message, topic)
|
subscribe.callback(on_message, topic)
|
||||||
@@ -138,16 +138,21 @@ function fetchBatteryData() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function updateBatteryData(batteryData) {
|
function updateBatteryData(batteryData)
|
||||||
document.getElementById('deviceNumber-322').innerHTML = batteryData[1].device_id;
|
{
|
||||||
document.getElementById('voltage-322').innerHTML = batteryData[1].label;
|
if(batteryData[1].device_id == 322)
|
||||||
document.getElementById('time-322').innerHTML = batteryData[1].last_seen;
|
{
|
||||||
document.getElementById('tevredenheid-322').innerHTML = batteryData[1].last_battery_voltage;
|
document.getElementById('deviceNumber-322').innerHTML = batteryData[1].device_id;
|
||||||
|
document.getElementById('voltage-322').innerHTML = batteryData[1].label;
|
||||||
document.getElementById('deviceNumber-256').innerHTML = batteryData[0].device_id;
|
document.getElementById('time-322').innerHTML = batteryData[1].last_seen;
|
||||||
document.getElementById('voltage-256').innerHTML = batteryData[0].label;
|
document.getElementById('tevredenheid-322').innerHTML = batteryData[1].last_battery_voltage;
|
||||||
document.getElementById('time-256').innerHTML = batteryData[0].last_seen;
|
}
|
||||||
document.getElementById('tevredenheid-256').innerHTML = batteryData[0].last_battery_voltage;
|
if (batteryData[0].device_id == 256)
|
||||||
|
{
|
||||||
|
document.getElementById('deviceNumber-256').innerHTML = batteryData[0].device_id;
|
||||||
|
document.getElementById('voltage-256').innerHTML = batteryData[0].label;
|
||||||
|
document.getElementById('time-256').innerHTML = batteryData[0].last_seen;
|
||||||
|
document.getElementById('tevredenheid-256').innerHTML = batteryData[0].last_battery_voltage;
|
||||||
|
}
|
||||||
console.log(batteryData);
|
console.log(batteryData);
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user