Files
Flask-Powered-Status-Page/server.py
T
2026-01-18 11:52:57 +00:00

31 lines
781 B
Python

#!/usr/bin/env python3
from flask import Flask, jsonify
from flask_cors import CORS
from subprocess import run, PIPE
app = Flask(__name__)
CORS(app)
# List of IP addresses to check
devices = {
'pi4': '{IP}',
'pi5': '{IP}',
'pi0': '{IP}'
}
def is_device_connected(ip_address):
result = run(['ping', '-c', '1', ip_address], stdout=PIPE, stderr=PIPE, tex>
return result.returncode == 0
@app.route('/check_status/<device>')
def check_status(device):
ip_address = devices.get(device)
if ip_address:
status = 'online' if is_device_connected(ip_address) else 'offline'
return jsonify({'status': status})
else:
return jsonify({'error': 'Device not found'}), 404
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)