canerdogan / aws-laravel-notification
使用AWS SNS服务发送短信
1.0.4
2017-12-18 09:43 UTC
Requires
- php: >=5.6.4
- aws/aws-sdk-php: ^3.0
- illuminate/notifications: ^5.3
- illuminate/support: ^5.1|^5.2|^5.3
Requires (Dev)
- mockery/mockery: ^0.9.5
- phpunit/phpunit: 4.*
README
通过AWS SNS发送短信。
内容
安装
您可以通过composer安装此包
composer require peec/aws-laravel-notification
您必须安装服务提供者
// config/app.php 'providers' => [ ... NotificationChannels\AWS\AWSSMSServiceProvider::class, ],
设置AWSSMS服务
将以下内容添加到您的config/services.php
// config/services.php ... 'awssms' => [ 'key' => env('AWSSMS_KEY'), 'secret' => env('AWSSMS_SECRET'), 'region' => env('AWSSMS_REGION'), 'from' => env('AWSSMS_FROM'), // optional 'max_price_usd' => '0.50' // Max price, sms wont send if price of the sms is more then this. ], ...
用法
现在您可以在通知中的via()
方法内使用此通道
use NotificationChannels\AWS\AWSSMSChannel; use NotificationChannels\AWS\AWSSMSMessage; use Illuminate\Notifications\Notification; class AccountApproved extends Notification { public function via($notifiable) { return [AWSSMSChannel::class]; } public function toAwsSms($notifiable) { return (new AWSSMSMessage()) ->content("Your {$notifiable->service} account was approved!"); } }
为了使通知知道您要发送/呼叫的电话号码,该通道将查找可通知模型中的phone_number
属性。如果您想覆盖此行为,将routeNotificationForAws
方法添加到您的可通知模型中。
public function routeNotificationForAws() { return '+1234567890'; }
可用方法
from('')
:接受一个电话作为通知发送者。content('')
:接受一个字符串值作为通知正文。type('Transactional')
:交易型或促销型。请参阅AWS文档中的SNS短信。这些的价格不同。
变更日志
有关最近更改的更多信息,请参阅变更日志。
测试
$ composer test
安全
如果您发现任何安全相关的问题,请通过kjelkenes@gmail.com发送电子邮件,而不是使用问题跟踪器。
贡献
有关详细信息,请参阅贡献指南。
致谢
许可
MIT许可证(MIT)。有关更多信息,请参阅许可文件。