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) - [~~steam~~](https://github.com/ValvePython/steam)
- ~~gevent~~ - ~~gevent~~
- ~~eventemitter~~ - ~~eventemitter~~
- [matplotlib](https://pypi.org/project/matplotlib/) - [~~matplotlib~~](https://pypi.org/project/matplotlib/)
- [requests](https://pypi.org/project/requests/) - [requests](https://pypi.org/project/requests/)
Om de dependencies te installeren voer het onderste commando uit. 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 De applicatie is simpel uit te voeren door de python script uit te voeren. En via de browser naar de gegeven
url te gaan. url te gaan.

68
run.py
View File

@@ -1,12 +1,15 @@
import json import json
from flask import Flask, render_template, request, url_for, Response from flask import Flask, render_template, request
import ss import ss
import stats import stats
import steam_api 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 # lees json bestand en maak de tabel structuur aan, data_tpl
with open('steam.json') as file: 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) 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') @app.route('/hardware')
def hardware(): def hardware():
return render_template('statistics.html') return render_template('hardware.html')
@app.route('/search') @app.route('/search')
@@ -109,31 +107,47 @@ def app_appid(appid):
return render_template('app.html', data=data[appid]) return render_template('app.html', data=data[appid])
@app.route('/svgplot/randomplot.svg') @app.route('/api/afstandsensor')
def randomplot(): def api_afstandsensor():
svg = graphs.random_plot() """Dit pad geeft een json array met de key 'afstand' met waarde van de afstandsensor in cm """
return Response(svg, mimetype='image/svg+xml') afstand = 0
return {'afstand': afstand}
@app.route('/svgplot/releasemean.svg') @app.route('/api/schuifregister', methods=['POST', 'GET'])
def releasemean(): def api_schuifregister():
lst = [] """
dates = [] Door het opvragen van dit pad met de GET functie is het mogelijk om de status van het schuifregister uit te lezen.
times = [] 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: @app.route('/api/pushbutton')
dates.append(x) def api_pushbutton():
times.append(freqs.get(x)) """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 {'button0': button0}
return Response(svg, mimetype='image/png')
@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__": if __name__ == "__main__":