korridor/symfony-scaleway-tem-mailer

此包已被废弃且不再维护。作者建议使用 symfony/scaleway-mailer 包。

Symfony Scaleway 交易电子邮件(TEM)邮件桥接器

安装: 616

依赖项: 0

建议者: 0

安全: 0

星星: 6

关注者: 1

分支: 0

开放问题: 2

类型:symfony-mailer-bridge

0.0.3 2023-05-11 11:07 UTC

README

Latest Version on Packagist License Supported PHP versions GitHub Workflow Tests GitHub Workflow Lint Codecov

警告

由于 Symfony 为 Scaleway TEM 创建了自己的邮件器,因此此包不再必要。

请使用此替代方案: Symfony Mailer - Scaleway

安装

您可以通过以下命令使用 composer 安装此包

composer require korridor/symfony-scaleway-tem-mailer

要求

此包针对以下 Laravel 和 PHP 版本进行了测试

  • 9.* (PHP 8.1)

使用示例

Laravel

将以下代码添加到 AppServiceProvider

use Korridor\SymfonyScalewayTemMailer\Transport\ScalewayApiTransport;
use Korridor\SymfonyScalewayTemMailer\Transport\ScalewaySmtpTransport;

    // ..

    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot(): void
    {
        // ...
        Mail::extend('scaleway-api', function (array $config = []) {
            return new ScalewayApiTransport($config['token'], $config['region'], $config['project_id']);
        });
        Mail::extend('scaleway-smtp', function (array $config = []) {
            return new ScalewaySmtpTransport($config['token'], $config['region'], $config['project_id']);
        }); 
    }

现在将以下行添加到 config/mail.php 文件中的 mailers 数组

'scaleway' => [
    'transport' => 'scaleway-api',
    'region' => env('MAIL_SCALEWAY_REGION', 'fr-par'),
    'token' => env('MAIL_SCALEWAY_TOKEN'),
    'project_id' => env('MAIL_SCALEWAY_PROJECT_ID'),
],

如果您想使用 SMTP 集成,请使用以下行

'scaleway' => [
    'transport' => 'scaleway-smtp',
    'region' => env('MAIL_SCALEWAY_REGION', 'fr-par'),
    'token' => env('MAIL_SCALEWAY_TOKEN'),
    'project_id' => env('MAIL_SCALEWAY_PROJECT_ID'),
],

Symfony

将以下行添加到 config/services.yaml 文件

mailer.transport_factory.scaleway:
    class: Korridor\SymfonyScalewayTemMailer\Transport\ScalewayTransportFactory
    parent: mailer.transport_factory.abstract
    tags:
        - {name: mailer.transport_factory}

然后设置 MAILER_DSN 环境变量,例如

MAILER_DSN=scaleway+api://SCW_PROJECT_ID:SCW_SECRET_KEY@api.scaleway.com

贡献

我欢迎建议和贡献。只需创建一个问题或拉取请求。

本地 Docker 环境

docker 文件夹包含用于开发的本地 Docker 环境。Docker 工作区已安装 composer 和 xdebug。

docker-compose run workspace bash

测试

运行所有测试的 composer test 命令使用 phpunit。运行所有测试并创建 coverage 文件夹中的覆盖率报告的 composer test-coverage 命令。

代码格式化/代码检查

使用 php-cs-fixercomposer fix 命令格式化代码。使用 phpcscomposer lint 命令检查代码。

致谢

仓库的结构灵感来源于项目 symfony/postmark-mailer

许可

此包受 MIT 许可证(MIT)的许可。有关更多信息,请参阅 许可文件