Nette 2.4 Mailer získání MessageId

trta911
Člen | 35
+
0
-

Ahoj, potřebuji skrze evidenci zpráv vydolovat MessageID, které nette generuje v Nette\Mail\Message abych s ním mohl dále pracovat (klidně po odeslání zprávy, to messageID potřebuji ukládat). Jde to prosím nějakým způsobem? Zkoušel jsem to po odeslání vydolovat pomocí kódu níže, ale bohužel marně:

$message = new Message;
$message->addTo($to)
        ->setFrom('from adresa' .' <from@adresa.cz>')
        ->setSubject('Ahoj')
        ->setHtmlBody($latte->renderToString( __DIR__ . '/../EmailTemplates/Info.latte', $params));

$mailer = new SendmailMailer();
		$mailer->send($message);
		bdump($message->getHeaders);

zkoušel jsem i vyloženě

bdump($message->getHeader('Message-ID'));

ale také bohužel… poradíte prosím?

Editoval trta911 (8. 8. 2019 0:55)

duke
Člen | 650
+
+2
-

Myslím, že to nejde, neboť Nette si interně message objekt naklonuje, a header položku Message-ID nastaví na naklonovaném objektu, který po odeslání zahodí.

Snad jedině udělat si vlastní Message třídu (jako potomka Nette\Mail\Message) a překrýt metodu setHeader, kde např. potom vyvolat nějakou událost, např. onSetHeader a tak si odchytit to Message-ID.

Editoval duke (8. 8. 2019 7:31)