working rewrite

This commit is contained in:
karl.hudgell 2021-10-26 16:55:30 +01:00
parent c1b460ab2d
commit 8f511b7da9
2 changed files with 17 additions and 38 deletions

View File

@ -1,3 +1,4 @@
ast
black==21.9b0
click==8.0.3
colorama==0.4.4

View File

@ -1,18 +1,18 @@
from flask import Flask, request
import os
import ast
import subprocess
from colormap import rgb2hex
from tenacity import retry, stop_after_attempt
import ast
app = Flask(__name__)
@app.route("/on")
@retry(stop=stop_after_attempt(5))
def on():
def run_bulb_action(value):
result = subprocess.run(
[f"gatttool -i hci0 -b b2:3b:03:00:14:d6 --char-write-req -a 0x0009 -n cc2333"],
[
f"gatttool -i hci0 -b b2:3b:03:00:14:d6 --char-write-req -a 0x0009 -n {value}"
],
stdout=subprocess.PIPE,
shell=True,
).stdout.decode("utf-8")
@ -20,48 +20,26 @@ def on():
if "Characteristic value was written successfully" not in result:
raise Exception
else:
return "On"
return True
@app.route("/on")
def on():
run_bulb_action("cc2333")
@app.route("/off")
@retry(stop=stop_after_attempt(5))
def off():
result = subprocess.run(
[f"gatttool -i hci0 -b b2:3b:03:00:14:d6 --char-write-req -a 0x0009 -n cc2433"],
stdout=subprocess.PIPE,
shell=True,
).stdout.decode("utf-8")
print(result)
if "Characteristic value was written successfully" not in result:
raise Exception
else:
return "Off"
run_bulb_action("cc2433")
@app.route("/colour")
@retry(stop=stop_after_attempt(5))
def hello():
print(request.args.get("rgb"))
rgb = ast.literal_eval(request.args.get("rgb"))
rgb = list(rgb)
# print(rgb)
def colour():
rgb = list(ast.literal_eval(request.args.get("rgb")))
r = rgb[0]
# print(r)
g = rgb[1]
# print(g)
b = rgb[2]
# print(b)
hex = rgb2hex(r, g, b)
hex = hex.replace("#", "")
str = "56" + hex + "00f0aa"
result = subprocess.run(
[f"gatttool -i hci0 -b b2:3b:03:00:14:d6 --char-write-req -a 0x0009 -n {str}"],
stdout=subprocess.PIPE,
shell=True,
).stdout.decode("utf-8")
print(result)
if "Characteristic value was written successfully" not in result:
raise Exception
else:
return hex
value = "56" + hex + "00f0aa"
run_bulb_action(value)