korridor / symfony-scaleway-tem-mailer
0.0.3
2023-05-11 11:07 UTC
Requires
- php: >=8.1
- symfony/mailer: ^5.4|^6.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3
- phpunit/phpunit: ^9
- squizlabs/php_codesniffer: ^3.5
- symfony/http-client: ^5.4|^6.0
This package is auto-updated.
Last update: 2024-03-01 14:37:48 UTC
README
警告
由于 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-fixer 的 composer fix
命令格式化代码。使用 phpcs 的 composer lint
命令检查代码。
致谢
仓库的结构灵感来源于项目 symfony/postmark-mailer。
许可
此包受 MIT 许可证(MIT)的许可。有关更多信息,请参阅 许可文件。