numesia / all-my-sms
AllMySms 通知驱动程序
1.3.0
2024-07-29 13:22 UTC
Requires
- php: >=7.3
- guzzlehttp/guzzle: ^6.2 || ^7.0
- illuminate/notifications: ^5.5 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0 || ^11.0
- illuminate/support: ^5.5 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0 || ^11.0
Requires (Dev)
- mockery/mockery: ^1.4.4
- phpunit/phpunit: ^9.5
README
此包使用AllMySms在Laravel 5.5+、6.x、7.x、8.x和9.x中发送通知变得简单。
内容
安装
您可以通过composer安装此包
composer require laravel-notification-channels/all-my-sms
设置AllMySms服务
将以下代码添加到您的config/services.php
// config/services.php ... 'all_my_sms' => [ 'uri' => env('ALL_MY_SMS_URI', 'https://api.allmysms.com/http/9.0'), 'login' => env('ALL_MY_SMS_LOGIN'), 'api_key' => env('ALL_MY_SMS_API_KEY'), 'format' => env('ALL_MY_SMS_FORMAT', 'json'), 'sender' => env('ALL_MY_SMS_SENDER'), 'universal_to' => env('ALL_MY_SMS_UNIVERSAL_TO'), ], ...
用法
现在您可以在通知内的via()
方法中使用该频道
use NotificationChannels\AllMySms\AllMySmsChannel; use NotificationChannels\AllMySms\AllMySmsMessage; use Illuminate\Notifications\Notification; class ProjectCreated extends Notification { public function via($notifiable) { return [AllMySmsChannel::class]; // or 'all_my_sms' } public function toAllMySms($notifiable) { return new AllMySmsMessage('Content'); } }
为了使您的通知知道使用哪个电话号码,将routeNotificationForAllMySms
方法添加到您的可通知模型中。
此方法需要返回一个电话号码。
public function routeNotificationForAllMySms(Notification $notification) { return $this->phone_number; }
本地开发
当开发发送短信的应用程序时,您可能不想真的将短信发送到实际电话号码。您可以通过ALL_MY_SMS_UNIVERSAL_TO
环境变量或universal_to
选项设置所有短信的通用接收者。这可以通过ALL_MY_SMS_UNIVERSAL_TO
环境变量或universal_to
选项来完成。
可用消息方法
content(string $content)
:接受短信内容的字符串值。sender(string $sender)
:接受发送者名称的字符串值。campaign(string $campaign)
:接受短信活动名称的字符串值。sendAt(\DateTimeInterface|string $sendAt)
:接受用于短信到期日期的DateTimeInterface或字符串。parameters(array $parameters)
:接受用于短信参数的数组。
变更日志
有关最近更改的更多信息,请参阅CHANGELOG。
测试
$ composer test
安全性
如果您发现任何安全问题,请通过mikael.popowicz@gmail.com而不是使用问题跟踪器发送电子邮件。
贡献
有关详细信息,请参阅CONTRIBUTING。
致谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。