toneflix-code / kudisms-notification
KUDI SMS 通知驱动程序,适用于 Laravel。
1.0.1
2024-04-02 19:31 UTC
Requires
- php: >= 8.1
- guzzlehttp/guzzle: ^7.0
- illuminate/notifications: ^9.0|^10.0|^11.0
- illuminate/support: ^9.0|^10.0|^11.0
- toneflix-code/kudi-sms-php: ^1.0
Requires (Dev)
- fakerphp/faker: ^1.21
- illuminate/contracts: ^9.0|^10.0|^11.0
- laravel/pint: ^1.0
- orchestra/testbench: ^8.8
- pestphp/pest: ^2.33
- pestphp/pest-plugin-laravel: ^2.0
README
此包使您能够轻松使用 Laravel 8.x, 9.x & 10.x 发送 KudiSMS 通知。
内容
安装
您可以通过 composer 安装此包。
composer require toneflix-code/kudisms-notification
配置
将您的 KudiSMS 账户令牌、发送者 ID 和呼叫者 ID(可选)添加到您的 .env 文件中。
KUDISMS_GATEWAY= # optional KUDISMS_API_KEY=ZYX # always required KUDISMS_SENDER_ID=ABCD # always required KUDISMS_CALLER_ID=ABCD # optional when sender id is set KUDISMS_TEST_NUMBERS=23423423423,12312312312 # Comma separated list of numbers to send messages to when running tests
高级配置
运行 php artisan vendor:publish --provider="ToneflixCode\KudiSmsNotification\KudiSmsProvider"
/config/kudi-notification.php
使用
现在您可以在通知中的 via() 方法中使用该通道。
use ToneflixCode\KudiSmsNotification\KudiSmsChannel; use ToneflixCode\KudiSmsNotification\KudiSmsMessage; use Illuminate\Notifications\Notification; class AccountApproved extends Notification { public function via($notifiable) { return [KudiSmsChannel::class]; } public function toKudiSms($notifiable) { return (new KudiSmsMessage()) ->message("Your {$notifiable->service} account was approved!"); } }
您还可以创建 Kudi 语音呼叫。
use ToneflixCode\KudiSmsNotification\KudiSmsChannel; use ToneflixCode\KudiSmsNotification\KudiSmsVoiceMessage; use Illuminate\Notifications\Notification; class AccountApproved extends Notification { public function via($notifiable) { return [KudiSmsChannel::class]; } public function toTwilio($notifiable) { return (new KudiSmsVoiceMessage()) ->url("https://download.samplelib.com/mp3/sample-3s.mp3"); } }
或者创建 Kudi 文本到语音呼叫。
use ToneflixCode\KudiSmsNotification\KudiSmsChannel; use ToneflixCode\KudiSmsNotification\KudiSmsTTSMessage; use Illuminate\Notifications\Notification; class AccountApproved extends Notification { public function via($notifiable) { return [KudiSmsChannel::class]; } public function toTwilio($notifiable) { return (new KudiSmsTTSMessage()) ->message("Hello {$notifiable->name}, how are you today?"); } }
为了让您的通知知道您要发送/呼叫的电话号码,该通道将查找可通知模型中 phone_number 属性。如果您想覆盖此行为,请将 routeNotificationForKudiSms 方法添加到您的可通知模型中。
public function routeNotificationForKudiSms() { return '+2349034567890'; }
可用的消息方法
KudiSmsMessage
senderId(''):接受一个已注册的发送者 ID,用作通知的发送者。message(''):接受一个字符串值作为通知正文。
KudiSmsVoiceMessage
callerId(''):接受一个已注册的呼叫者 ID,用作通知的发送者。url(''):接受一个公开可用的音频文件的 URL。
KudiSmsTTSMessage
callerId(''):接受一个已注册的呼叫者 ID,用作通知的发送者。message(''):接受一个字符串值作为通知正文。
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
测试
$ composer test
安全
如果您发现任何安全相关的问题,请通过电子邮件发送至 gregoriohc@gmail.com,而不是使用问题跟踪器。
贡献
有关详细信息,请参阅 CONTRIBUTING。
致谢
许可
MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件。