human handoffs
This commit is contained in:
parent
79188e0f59
commit
36a55930f9
35 changed files with 4039 additions and 139 deletions
|
|
@ -5,6 +5,8 @@ from email.parser import BytesParser
|
|||
from email.utils import getaddresses, parsedate_to_datetime
|
||||
from html import unescape
|
||||
|
||||
from app.services.message_ids import first_message_id, parse_message_id_list
|
||||
|
||||
|
||||
def _addresses(values: list[str]) -> list[dict[str, str]]:
|
||||
return [
|
||||
|
|
@ -75,8 +77,25 @@ def parse_mime(raw: bytes) -> dict:
|
|||
pass
|
||||
body_text = "\n".join(text_parts).strip()
|
||||
body_html = "\n".join(html_parts).strip() or None
|
||||
internet_message_id = first_message_id(message.get("Message-ID"))
|
||||
in_reply_to = first_message_id(message.get("In-Reply-To"))
|
||||
references = parse_message_id_list(message.get("References"))
|
||||
raw_headers = {
|
||||
"message_id": message.get("Message-ID"),
|
||||
"in_reply_to": message.get("In-Reply-To"),
|
||||
"references": message.get("References"),
|
||||
"subject": message.get("Subject"),
|
||||
"date": message.get("Date"),
|
||||
"from": message.get("From"),
|
||||
"to": message.get("To"),
|
||||
"cc": message.get("Cc"),
|
||||
"reply_to": message.get("Reply-To"),
|
||||
}
|
||||
return {
|
||||
"message_id": (message.get("Message-ID") or "").strip() or None,
|
||||
"message_id": internet_message_id,
|
||||
"in_reply_to": in_reply_to,
|
||||
"references": references,
|
||||
"raw_headers": raw_headers,
|
||||
"sender": from_value,
|
||||
"to": _addresses(message.get_all("to", [])),
|
||||
"cc": _addresses(message.get_all("cc", [])),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue