From 92916765438589f1dcf8c80b14a01268284bd81b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B6=B5=E6=9B=A6?= Date: Sun, 19 May 2024 15:11:43 +0000 Subject: [PATCH] =?UTF-8?q?fix:=20#50=20=E6=96=B0=E5=A2=9E=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xiaomusic/httpserver.py | 26 ++++++++- xiaomusic/static/index.html | 69 ++++------------------- xiaomusic/static/setting.html | 30 ++++++++++ xiaomusic/static/setting.js | 67 ++++++++++++++++++++++ xiaomusic/static/style.css | 64 +++++++++++++++++++++ xiaomusic/xiaomusic.py | 101 ++++++++++++++++++++++++++++++++-- 6 files changed, 292 insertions(+), 65 deletions(-) create mode 100644 xiaomusic/static/setting.html create mode 100644 xiaomusic/static/setting.js create mode 100644 xiaomusic/static/style.css diff --git a/xiaomusic/httpserver.py b/xiaomusic/httpserver.py index f674efa37..413bde7e6 100644 --- a/xiaomusic/httpserver.py +++ b/xiaomusic/httpserver.py @@ -1,8 +1,9 @@ #!/usr/bin/env python3 import os +import sys import traceback +import asyncio -import sys from flask import Flask, request, send_from_directory from threading import Thread @@ -69,6 +70,29 @@ async def do_cmd(): return {"ret": "OK"} return {"ret": "Unknow cmd"} +@app.route("/getsetting", methods=["GET"]) +async def getsetting(): + config = xiaomusic.getconfig() + log.debug(config) + + alldevices = await xiaomusic.call_main_thread_function(xiaomusic.getalldevices) + log.info(alldevices) + data = { + "mi_did": config.mi_did, + "mi_did_list": alldevices["did_list"], + "mi_hardware": config.hardware, + "mi_hardware_list": alldevices["hardware_list"], + "xiaomusic_search": config.search_prefix, + "xiaomusic_proxy": config.proxy, + } + return data + +@app.route("/savesetting", methods=["POST"]) +async def savesetting(): + data = request.get_json() + log.info(data) + await xiaomusic.saveconfig(data) + return "save success" def static_path_handler(filename): log.debug(filename) diff --git a/xiaomusic/static/index.html b/xiaomusic/static/index.html index 39eebe098..3a3ec844d 100644 --- a/xiaomusic/static/index.html +++ b/xiaomusic/static/index.html @@ -1,74 +1,25 @@ - + 小爱音箱操控面板 - - - + + +

小爱音箱操控面板(版本未知)



-
+
- + + + +

@@ -81,5 +32,5 @@

小爱音箱操控面板(版本未知)

- + diff --git a/xiaomusic/static/setting.html b/xiaomusic/static/setting.html new file mode 100644 index 000000000..453fe3173 --- /dev/null +++ b/xiaomusic/static/setting.html @@ -0,0 +1,30 @@ + + + + + 小爱音箱操控面板 + + + + + +

小爱音箱设置面板(版本未知)

+
+
+ + + + + + + + +
+
+ + + + diff --git a/xiaomusic/static/setting.js b/xiaomusic/static/setting.js new file mode 100644 index 000000000..c28a8c223 --- /dev/null +++ b/xiaomusic/static/setting.js @@ -0,0 +1,67 @@ +$(function(){ + // 拉取现有配置 + $.get("/getsetting", function(data, status) { + console.log(data, status); + + var mi_did_div = $("#mi_did") + mi_did_div.empty(); + $.each(data.mi_did_list, function(index, option){ + mi_did_div.append($('