rednucleus/emailsender

通过 Microsoft Graph API 或 SMTP 发送电子邮件

1.1.0 2023-09-08 09:45 UTC

This package is auto-updated.

Last update: 2024-09-09 16:47:35 UTC


README

rednucleus/emailsender 是一个 Laravel 扩展包,提供了一种简单的方法来使用 Microsoft Graph 或 SMTP 发送电子邮件。请按照以下步骤在您的 Laravel 项目中安装和配置此扩展包。

安装

要安装此扩展包,请在您的终端中运行以下命令

composer require rednucleus/emailsender

如果您遇到依赖项问题,可以运行此命令代替

composer require rednucleus/emailsender --with-all-dependencies

配置

  1. 在您的 .env 文件中设置 Microsoft Graph 或 SMTP 认证密钥
MS_CLIENT_ID=<Your MS client ID>
MS_CLIENT_SECRET=<Your MS client secret>
MS_TENANT_ID=<Your MS tenant ID>
MS_REFRESH_TOKEN=<Your MS refresh token>
MS_SENDER_TYPE=<Type of sender, either 'smtp' or 'msgraph'>
MS_CACHE=<Type of sender, either 'false' or 'true'>

您可以通过将 MS_CACHE 环境变量设置为 true 来启用令牌管理器缓存。请注意,缓存功能仅适用于 msgraph

  1. 通过在终端中运行以下命令发布配置文件
php artisan vendor:publish --provider="rednucleus\Emailsender\RNSenderEmailServiceProvider"

这将创建一个位于您的 config 目录中的 emailsender.php 文件。

  1. 通过将以下邮件发送器配置添加到您的 config/mail.php 文件中,来配置邮件发送器
'rnemailsender' => [
    'transport' => 'rnemailsender',
    'sender' => env('MS_SENDER_TYPE', 'smtp'),
    'cache' => env('MS_CACHE', false),
],

使用方法

要在您的应用程序中使用 rednucleus/emailsender 邮件发送器,请按照以下步骤操作

  1. 使用 make:mail Artisan 命令创建一个新的可邮寄类
php artisan make:mail ExampleMail
  1. 更新您的新的 ExampleMail 类中的 build 方法,包括电子邮件的内容和主题
public function build()
{
    return $this->subject('Example Subject')
                ->view('emails.example');
}
  1. 在您的应用程序代码中,使用 Mail 门面,通过 rnemailsender 邮件发送器发送电子邮件
use Illuminate\Support\Facades\Mail;

Mail::to('example@example.com')->send(new ExampleMail());

就是这样!现在您应该能够在 Laravel 应用程序中使用 rednucleus/emailsender 扩展包发送电子邮件。