1
0
mirror of https://github.com/hanxi/xiaomusic.git synced 2025-12-06 14:52:50 +08:00

feat: 获取对话记录接口修改

This commit is contained in:
涵曦
2025-10-24 16:26:49 +08:00
parent 80d6bd68fd
commit 829fa78e9d

View File

@@ -402,31 +402,20 @@ class XiaoMusic:
async def get_latest_ask_by_mina(self, device_id):
try:
did = self.get_did(device_id)
response = await self.mina_service.ubus_request(
device_id, "nlp_result_get", "mibrain", {}
)
messages = await self.mina_service.get_latest_ask(device_id)
self.log.debug(
f"get_latest_ask_by_mina device_id:{device_id} did:{did} response:{response}"
f"get_latest_ask_by_mina device_id:{device_id} did:{did} messages:{messages}"
)
if d := response.get("data", {}).get("info", {}):
result = json.loads(d).get("result", [{}])
if result and len(result) > 0 and result[0].get("nlp"):
answers = (
json.loads(result[0]["nlp"])
.get("response", {})
.get("answer", [{}])
)
if answers:
query = answers[0].get("intention", {}).get("query", "").strip()
timestamp = result[0]["timestamp"] * 1000
answer = answers[0].get("content", {}).get("to_speak")
last_record = {
"time": timestamp,
"did": did,
"query": query,
"answer": answer,
}
self._check_last_query(last_record)
for message in messages:
query = message.response.answer[0].question
answer = message.response.answer[0].content
last_record = {
"time": message.timestamp_ms,
"did": did,
"query": query,
"answer": answer,
}
self._check_last_query(last_record)
except Exception as e:
self.log.warning(f"get_latest_ask_by_mina {e}")
return