~linuxgoose/Inque

ref: 60cef48409b7251b0c90ddb1b26d4f07e600ec2a Inque/inque/tickets/utils.py -rw-r--r-- 510 bytes
60cef484Jordan Robinson add license 2 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import email

def get_message_id(raw_email):
    """
    Extract the Message-ID header from a raw RFC822 email.
    """
    msg = email.message_from_string(raw_email)
    return msg.get("Message-ID")

import time
import uuid

def generate_message_id(domain="bocpress.co.uk"):
    """
    Generates a unique RFC 2822 Message-ID.
    Format: <timestamp.uuid@domain>
    """
    timestamp = int(time.time() * 1000)  # milliseconds
    unique_id = uuid.uuid4().hex
    return f"<{timestamp}.{unique_id}@{domain}>"