1

Compare commits

...

2 Commits

2 changed files with 43 additions and 29 deletions

View File

@@ -25,12 +25,12 @@ Deze applicatie maakt gebruik van de volgende python libraries, zorg ervoor dat
- [~~steam~~](https://github.com/ValvePython/steam)
- ~~gevent~~
- ~~eventemitter~~
- [matplotlib](https://pypi.org/project/matplotlib/)
- [~~matplotlib~~](https://pypi.org/project/matplotlib/)
- [requests](https://pypi.org/project/requests/)
Om de dependencies te installeren voer het onderste commando uit.
pip install flask matplotlib requests
pip install flask requests
De applicatie is simpel uit te voeren door de python script uit te voeren. En via de browser naar de gegeven
url te gaan.

68
run.py
View File

@@ -1,12 +1,15 @@
import json
from flask import Flask, render_template, request, url_for, Response
from flask import Flask, render_template, request
import ss
import stats
import steam_api
import graphs
app = Flask(__name__)
app = Flask(__name__) # flask app initialiseren
state_schuifregister = 0 # deze 3 waardes slaan de status op van de hardware onderdelen
state_ledstrip = 0
state_servo = 0
# lees json bestand en maak de tabel structuur aan, data_tpl
with open('steam.json') as file:
@@ -83,14 +86,9 @@ def fulltable():
return render_template('fulltable.html', first_entry=data_tpl[0], entries=entries, reverse=not reverse)
@app.route('/statistics')
def statistics():
return render_template('statistics.html')
@app.route('/hardware')
def hardware():
return render_template('statistics.html')
return render_template('hardware.html')
@app.route('/search')
@@ -109,31 +107,47 @@ def app_appid(appid):
return render_template('app.html', data=data[appid])
@app.route('/svgplot/randomplot.svg')
def randomplot():
svg = graphs.random_plot()
return Response(svg, mimetype='image/svg+xml')
@app.route('/api/afstandsensor')
def api_afstandsensor():
"""Dit pad geeft een json array met de key 'afstand' met waarde van de afstandsensor in cm """
afstand = 0
return {'afstand': afstand}
@app.route('/svgplot/releasemean.svg')
def releasemean():
lst = []
dates = []
times = []
@app.route('/api/schuifregister', methods=['POST', 'GET'])
def api_schuifregister():
"""
Door het opvragen van dit pad met de GET functie is het mogelijk om de status van het schuifregister uit te lezen.
Door te POST'en naar dit pad met de waarde 'setstate' is het mogelijk om de status aan te passen.
"""
return {}
for x in data_tpl:
lst.append(x[2])
lst = ss.qsort(lst)
@app.route('/api/servo', methods=['POST', 'GET'])
def api_servo():
"""
Door het opvragen van dit pad met de GET functie is het mogelijk om de status van de servo uit te lezen.
Door te POST'en naar dit pad met de waarde 'setstate' is het mogelijk om de status aan te passen.
"""
return {}
freqs = stats.freq(lst)
for x in freqs:
dates.append(x)
times.append(freqs.get(x))
@app.route('/api/pushbutton')
def api_pushbutton():
"""Dit pad geeft de status van de pushbuttons af in True en False, de keys alsvolgd genoemd: button0, button1"""
button0 = False
svg = graphs.plot_xy(dates, times)
return Response(svg, mimetype='image/png')
return {'button0': button0}
@app.route('/api/ledstrip', methods=['POST', 'GET'])
def api_ledstrip_set():
"""
Door het opvragen van dit pad met de GET functie is het mogelijk om de status van de ledstrip uit te lezen.
Door te POST'en naar dit pad met de waarde 'setstate' is het mogelijk om de status aan te passen.
"""
return {}
if __name__ == "__main__":