This commit is contained in:
2021-05-06 14:58:42 +08:00
parent aa07cd3fb9
commit 96b8a35e2b
2 changed files with 24 additions and 40 deletions
+18 -16
View File
@@ -80,28 +80,30 @@ abstract class Callback extends HttpService
} }
/** /**
* @param $message * @param $messageContent
* @throws * @throws Exception
*/ */
protected function system_mail($message) protected function system_mail($messageContent)
{ {
try { try {
if (!Config::get('email.enable', false)) { $email = Config::get('email');
if (empty($email) || !$email['enable']) {
return; return;
} }
$mail = $this->createEmail(); $transport = (new \Swift_SmtpTransport($email['host'], $email['465']))
$receives = Config::get('email.receive'); ->setUsername($email['username'])
if (empty($receives) || !is_array($receives)) { ->setPassword($email['password']);
throw new Exception('接收人信息错误'); $mailer = new \Swift_Mailer($transport);
// Create a message
$message = (new \Swift_Message('Wonderful Subject'))
->setFrom([$email['send']['address'] => $email['send']['nickname']])
->setBody('Here is the message itself');
foreach ($email['receive'] as $item) {
$message->setTo([$item['address'], $item['address'] => $item['nickname']]);
} }
foreach ($receives as $receive) { $mailer->send($messageContent);
$mail->addAddress($receive['address'], $receive['nickname']); // Add a recipient
}
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = 'service error';
$mail->Body = $message;
$mail->AltBody = $message;
$mail->send();
} catch (\Throwable $e) { } catch (\Throwable $e) {
$this->addError($e, 'email'); $this->addError($e, 'email');
} }
+1 -19
View File
@@ -36,25 +36,7 @@ class OnWorkerError extends Callback
); );
write($message, 'worker-exit'); write($message, 'worker-exit');
$this->system_mail($message);
$email = Config::get('email');
if (empty($email) || !$email['enable']) {
return;
}
$transport = (new \Swift_SmtpTransport($email['host'], $email['465']))
->setUsername($email['username'])
->setPassword($email['password']);
$mailer = new \Swift_Mailer($transport);
// Create a message
$message = (new \Swift_Message('Wonderful Subject'))
->setFrom([$email['send']['address'] => $email['send']['nickname']])
->setBody('Here is the message itself');
foreach ($email['receive'] as $item) {
$message->setTo([$item['address'], $item['address'] => $item['nickname']]);
}
$mailer->send($message);
} }
} }