Adds documentation, some minor cleanup

This commit is contained in:
Jared Dunbar 2023-03-12 01:24:14 -05:00
parent 58e4666d96
commit 2288ebc5a9
1 changed files with 19 additions and 6 deletions

25
main.py
View File

@ -1,18 +1,28 @@
from flask import request, Flask, render_template from flask import request, Flask, render_template
# Flask server boilerplate
app = Flask(__name__) app = Flask(__name__)
app.debug=True app.debug=True
app.config['SECRET_KEY'] = 'Thisisasecret!' app.config['SECRET_KEY'] = 'Thisisasecret!' # Feel free to change this TODO: Make this change itself each boot
# Values used to track the train's throttle and direction.
throttle: float = 0.0 throttle: float = 0.0
direction: int = 0 direction: int = 0
@app.route('/') @app.route('/')
def index(): def index():
"""
Renders the webpage if you view the IP address and port
"""
return render_template('index.html') return render_template('index.html')
@app.route("/data", methods=["POST"]) @app.route("/data", methods=["POST"])
def data(): def data() -> str:
"""
Used by the webpage to set the throttle and/or travel direction
:return: Always returns "Success" (200)
"""
global throttle, direction global throttle, direction
print(request.json) print(request.json)
@ -26,14 +36,17 @@ def data():
return "Success" return "Success"
@app.route("/control", methods=["GET"]) @app.route("/control", methods=["GET"])
def control(): def control() -> dict[str, str]:
print(request.data) """
Used by the train controller to determine what the throttle and direction currently are
:return: A dictionary containing the throttle and direction values, will be jsonified
"""
return { return {
"throttle": throttle, "throttle": throttle,
"direction": direction "direction": direction
} }
if __name__=="__main__": if __name__=="__main__":
app.run(host="10.0.2.148", port=2093) # Listen on all interfaces on port 2093
app.run(host="0.0.0.0", port=2093)