Добаввлен References - везде в параметрах сообщений

This commit is contained in:
ysv committed 2026-10-27 15:58:22 +03:00
1 parent 3e07bbca37
commit 2f13e1f3b7
2 files changed
+9 -3

No files matched your search

Binary file not shown.
+9 -3
View File
@@ -285,7 +285,8 @@ def scan_group(server: str = DEFAULT_SERVER, group: str = "",
m["num"] for m in members if m["msgid"] in t["new"]), m["num"] for m in members if m["msgid"] in t["new"]),
"messages": [ "messages": [
{"num": m["num"], "msgid": m["msgid"], {"num": m["num"], "msgid": m["msgid"],
"from": m["from"], "date": m["date"], "body": m["body"]} "from": m["from"], "date": m["date"],
"references": m["refs"], "body": m["body"]}
for m in full for m in full
], ],
}) })
@@ -330,6 +331,7 @@ def read_thread(server: str = DEFAULT_SERVER, group: str = "",
"subject": full[0]["subject"], "subject": full[0]["subject"],
"messages": [{"num": m["num"], "msgid": m["msgid"], "messages": [{"num": m["num"], "msgid": m["msgid"],
"from": m["from"], "date": m["date"], "from": m["from"], "date": m["date"],
"references": m["refs"],
"body": m["body"]} for m in full]} "body": m["body"]} for m in full]}
except Exception as e: except Exception as e:
return {"error": str(e)} return {"error": str(e)}
@@ -355,9 +357,13 @@ def get_last_message(server: str = DEFAULT_SERVER, group: str = "",
msg = email.message_from_bytes(b"\n".join(s.article(str(last))[1].lines), msg = email.message_from_bytes(b"\n".join(s.article(str(last))[1].lines),
policy=email_policy) policy=email_policy)
msgid = (msg.get("Message-ID") or f"<local-{last}>").strip() message_id = (msg.get("Message-ID") or f"<local-{last}>").strip()
references = [r for r in (msg.get("References") or "").split()
if r.startswith("<")]
return {"status": "ok", "group": group, "num": last, "msgid": msgid, return {"status": "ok", "group": group, "num": last,
"message_id": message_id,
"references": references,
"subject": _decode(msg.get("Subject", "")), "subject": _decode(msg.get("Subject", "")),
"from": _decode(msg.get("From", "")), "from": _decode(msg.get("From", "")),
"date": _parse_date(str(msg.get("Date", ""))), "date": _parse_date(str(msg.get("Date", ""))),