gcgov / bulk-email

接入集中式批量邮件管理器

安装: 46

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 0

开放问题: 0

类型:框架-服务

v1.3.2 2024-05-22 16:27 UTC

This package is auto-updated.

Last update: 2024-08-30 13:05:02 UTC


README

内部应用程序可以通过此包通过订阅的渠道生成批量邮件,也可以通过批量邮件队列发送单个邮件。

安装

composer require gcgov/bulk-email

API 配置

在调用库中的任何方法之前,请定义 API URL 和您的访问令牌。

\gcgov\framework\services\bulkEmail\config::setApiUrl( 'https://bulkemailapi.example.com' );
\gcgov\framework\services\bulkEmail\config::setApiAccessToken( '{jwt}' );

调试日志

要启用调试日志,请在使用库之前添加以下行。

\gcgov\framework\services\bulkEmail\config::setDebugLogging( true );
\gcgov\framework\services\bulkEmail\config::setDebugLogPath( 'C:/inetpub/logs' );

保存并订阅电子邮件地址到频道

此方法将所有提供的电子邮件地址订阅到所有提供的频道 ID。如果提供的电子邮件地址已有频道订阅,现有订阅将保持不变,并将新提供的频道添加为额外的订阅。如果提供的电子邮件地址已订阅提供的频道,用户将继续订阅该提供的频道,并将新提供的频道添加为额外的订阅。

//                                             messageToChannel( string[] $emailAddresses,   string[] $channelIds=[] )
\gcgov\framework\services\bulkEmail\bulkEmail::messageToChannel( ['jdoe@garrettcounty.org'], [ '64f1e3a45d0afbf5408370cc' ] );

向频道订阅者发送批量邮件

此方法将相同的消息排队到订阅特定频道的所有电子邮件地址。

实际邮件发送由 批量邮件 API 处理,可能会根据消息优先级和发送限制而延迟。

$message            = new \gcgov\framework\services\bulkEmail\models\messageToChannel();

//wrap $message->message with this template
$message->template  = \gcgov\framework\services\bulkEmail\models\template::countyTemplate2023; 

//if the brand heading should use department information, specify the id of the department to use. To use a generic leave null)
//$message->sendingDepartmentId  = '{departmentId}';

//send this message to all subscribers to this channel
$message->channelId = '{channelId}';

//email subject line
$message->subject   = 'Subject';

//email html body - do not use full 
$message->message   = '<div>HTML message body</div>';

//a reference to the event/item that generated this message
$message->reference = 'website.article.id=1';

//send
\gcgov\framework\services\bulkEmail\bulkEmail::messageToChannel( $message );

发送单个邮件

要发送单个邮件,请使用 bulkEmail::messageToEmail()

$message            = new \gcgov\framework\services\bulkEmail\models\messageToEmail();

//wrap $message->message with this template
$message->template  = \gcgov\framework\services\bulkEmail\models\template::countyTemplate2023; 

//if the brand heading should use department information, specify the id of the department to use. To use a generic leave null)
//$message->sendingDepartmentId  = '{departmentId}';

//send this message to these email addresses
$message->to = ['jdoe@garrettcounty.org'];

//email subject line
$message->subject   = 'Subject';

//email html body - do not use full 
$message->message   = '<div>HTML message body</div>';

//a reference to the event/item that generated this message
$message->reference = 'payments.receipt.id=1';

//send
\gcgov\framework\services\bulkEmail\bulkEmail::messageToEmail( $message );