diff --git a/api-backend_blueprint/server.py b/api-backend_blueprint/server.py new file mode 100644 index 0000000..7c3d222 --- /dev/null +++ b/api-backend_blueprint/server.py @@ -0,0 +1,48 @@ +from flask import Flask, jsonify +import requests + +app = Flask(__name__) + +# Liste der IP-Adressen der 3D-Drucker +printers = [ + "192.168.0.10", + "192.168.0.11", + "192.168.0.12" +] + +@app.route('/printer_status', methods=['GET']) +def get_printer_status(): + printer_status = [] + + for printer_ip in printers: + try: + # Sende eine GET-Anfrage an den 3D-Drucker, um den Status abzufragen + response = requests.get(f"http://{printer_ip}/api/printer/status") + + if response.status_code == 200: + status_data = response.json() + printer_status.append({ + "ip": printer_ip, + "status": status_data["status"], + "progress": status_data["progress"], + "temperature": status_data["temperature"] + }) + else: + printer_status.append({ + "ip": printer_ip, + "status": "Fehler bei der Abfrage", + "progress": None, + "temperature": None + }) + except: + printer_status.append({ + "ip": printer_ip, + "status": "Drucker nicht erreichbar", + "progress": None, + "temperature": None + }) + + return jsonify(printer_status) + +if __name__ == '__main__': + app.run(host='0.0.0.0', port=5000)