+63
-9
@@ -165,7 +165,7 @@ class LedController:
|
||||
async def stop(self):
|
||||
await self.sendCommand({"type": "off"})
|
||||
|
||||
def get_state(self):
|
||||
def getStatus(self):
|
||||
if self.blinking and self.blinkDuration > 0:
|
||||
elapsed = time.ticks_diff(time.ticks_ms(), self.blinkStart) / 1000
|
||||
remains = max(0.0, self.blinkDuration - elapsed)
|
||||
@@ -258,7 +258,16 @@ async def setColor(request):
|
||||
await led.set_color((r, g, b), brightness)
|
||||
status = await led.get_status()
|
||||
|
||||
return {'status': status}
|
||||
state = led.getStatus()
|
||||
return {'status': state["status"],
|
||||
'color': state["color"],
|
||||
'brightness': state["brightness"],
|
||||
'isblinking': state["isblinking"],
|
||||
'blinkParameters': {
|
||||
'frequency': state["frequency"],
|
||||
'duration': state["duration"],
|
||||
'remains': state["remains"]}
|
||||
}
|
||||
|
||||
|
||||
@app.get('/api/color')
|
||||
@@ -270,7 +279,16 @@ async def getColor(request):
|
||||
@app.get('/api/status')
|
||||
async def getStatus(request):
|
||||
status = await led.get_status()
|
||||
return {'status': status}
|
||||
state = led.getStatus()
|
||||
return {'status': state["status"],
|
||||
'color': state["color"],
|
||||
'brightness': state["brightness"],
|
||||
'isblinking': state["isblinking"],
|
||||
'blinkParameters': {
|
||||
'frequency': state["frequency"],
|
||||
'duration': state["duration"],
|
||||
'remains': state["remains"]}
|
||||
}
|
||||
|
||||
|
||||
@app.route('/api/status/<status>', methods=['GET', 'POST'])
|
||||
@@ -281,7 +299,16 @@ async def setStatus(request, status):
|
||||
return {'error': 'unknown status'}, 404
|
||||
|
||||
status = await led.get_status()
|
||||
return {'status': status}
|
||||
state = led.getStatus()
|
||||
return {'status': state["status"],
|
||||
'color': state["color"],
|
||||
'brightness': state["brightness"],
|
||||
'isblinking': state["isblinking"],
|
||||
'blinkParameters': {
|
||||
'frequency': state["frequency"],
|
||||
'duration': state["duration"],
|
||||
'remains': state["remains"]}
|
||||
}
|
||||
|
||||
|
||||
@app.post('/api/blink')
|
||||
@@ -300,12 +327,21 @@ async def setBlink(request):
|
||||
|
||||
await led.blink(freq, duration)
|
||||
|
||||
return {'status': led.status}
|
||||
state = led.getStatus()
|
||||
return {'status': state["status"],
|
||||
'color': state["color"],
|
||||
'brightness': state["brightness"],
|
||||
'isblinking': state["isblinking"],
|
||||
'blinkParameters': {
|
||||
'frequency': state["frequency"],
|
||||
'duration': state["duration"],
|
||||
'remains': state["remains"]}
|
||||
}
|
||||
|
||||
|
||||
@app.get('/api/blink')
|
||||
async def getBlink(request):
|
||||
state = led.get_state()
|
||||
async def getBlinkStatus(request):
|
||||
state = led.getStatus()
|
||||
return {
|
||||
'isblinking': state["isblinking"],
|
||||
'frequency': state["frequency"],
|
||||
@@ -319,7 +355,16 @@ async def blinkStop(request):
|
||||
await led.stop()
|
||||
await led.set_status(led.previousStatus)
|
||||
status = await led.get_status()
|
||||
return {'status': status}
|
||||
state = led.getStatus()
|
||||
return {'status': state["status"],
|
||||
'color': state["color"],
|
||||
'brightness': state["brightness"],
|
||||
'isblinking': state["isblinking"],
|
||||
'blinkParameters': {
|
||||
'frequency': state["frequency"],
|
||||
'duration': state["duration"],
|
||||
'remains': state["remains"]}
|
||||
}
|
||||
|
||||
|
||||
@app.get('/api/debug')
|
||||
@@ -352,7 +397,16 @@ async def mutedeckWebhook(request):
|
||||
else:
|
||||
await led.set_status('available')
|
||||
|
||||
return {'status': led.status}
|
||||
state = led.getStatus()
|
||||
return {'status': state["status"],
|
||||
'color': state["color"],
|
||||
'brightness': state["brightness"],
|
||||
'isblinking': state["isblinking"],
|
||||
'blinkParameters': {
|
||||
'frequency': state["frequency"],
|
||||
'duration': state["duration"],
|
||||
'remains': state["remains"]}
|
||||
}
|
||||
|
||||
|
||||
@app.post('/shutdown')
|
||||
|
||||
Reference in New Issue
Block a user