bernhardwebstudio / msft-graph-mailer
用于通过 Microsoft Graph 发送邮件的 Symfony 邮件发送器
v0.0.9
2024-08-10 14:42 UTC
Requires
- microsoft/kiota-authentication-phpleague: ^1.0
- microsoft/microsoft-graph: ^2.2
- symfony/mailer: ^6.4|^7.0
Requires (Dev)
- symfony/http-client: ^6.4|^7.0
- symplify/easy-coding-standard: ^12.0.6
README
用于通过 Microsoft Graph 发送邮件的 Symfony 邮件发送器(即发送 Office 365/Outlook/Exchange 电子邮件)
安装
只需使用 Composer 安装
composer require bernhardwebstudio/msft-graph-mailer
配置
您需要告诉 Symfony 这是一个邮件传输
# services.yaml services: mailer.transport_factory.msftgraph: class: BernhardWebstudio\Mailer\Bridge\MsftGraphMailer\Transport\MsftGraphTransportFactory parent: mailer.transport_factory.abstract tags: - { name: "mailer.transport_factory" }
最后,您需要配置邮件发送器包以使用此传输,例如使用一个 ENV 变量,如下所示
MAILER_DSN=msft+graph://{client-id}:{client-secret}@outlook.com?saveToSent=1&tenant={tenant-id}
在此处,您需要将 {}
中的所有值替换为您从活动目录中获取的自己的值。
tenant
和 saveToSent
选项是可选的。
用法
如果配置正确,那就结束了,您只需简单地使用 Symfony 邮件发送器,您就会通过 Microsoft Graph API 发送电子邮件。
请注意,此传输在其最佳形式下不支持所有类型的电子邮件消息。如果您对 MIME 和 Microsoft Graph 有足够的了解,请贡献以修复此问题。
此外,Microsoft 对您可以使用的外发电子邮件地址施加限制。在设置电子邮件的 From
时,请留意这一点,以防止错误。