Add python led programs

This commit is contained in:
siinus
2020-11-08 01:47:25 +02:00
parent 1fc4303ae2
commit 103a5c9252
11 changed files with 3586 additions and 0 deletions

57
pyleds/run.py Executable file
View File

@@ -0,0 +1,57 @@
#!/usr/bin/env python3
import logging
import sys
import json
import lib.ProgramLoading as Pl
from lib.Litsimaja import Litsimaja
from flask import Flask, request, Response, render_template
# logging
logger = logging.getLogger('litsimaja')
logger.setLevel(logging.DEBUG)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
file_handler = logging.FileHandler('litsimaja.log')
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)
stdout_handler = logging.StreamHandler(sys.stdout)
stdout_handler.setFormatter(formatter)
logger.addHandler(stdout_handler)
# start litsimaja
lm = Litsimaja()
app = Flask(__name__)
# Pl.run('siinus', 'Static', lm, logger, {'color': [50, 50, 50]})
@app.route('/', methods=['GET'])
def respondroot():
return render_template('index.html', programs=Pl.list_all(True))
@app.route('/jscolor.js', methods=['GET'])
def respondjs():
return render_template('jscolor.js')
@app.route('/run')
def run():
Pl.run('siinus', 'MyProgram', lm, logger, {'color': [50, 50, 50]})
return Response(status=200)
@app.route('/crash', methods=['GET'])
def crash():
lm.clear_loops()
return Response(status=200)
@app.route('/program/<program>', methods=['POST'])
def run_program(program):
args = request.get_json(force=True)
prg = program.split('.')
Pl.run(prg[0], prg[1], lm, logger, args)
return Response(status=200)
app.run('0.0.0.0', 8080)