Laravel 5及以上版本的CMSMS通知通道
3.4.0
2024-03-22 08:49 UTC
Requires
- php: ^8.2
- ext-simplexml: *
- guzzlehttp/guzzle: ^7.1
- illuminate/notifications: ^10.0||^11.0
- illuminate/support: ^10.0|^11.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.6
- mockery/mockery: ^1.5
- orchestra/testbench: ^8.0|^9.0
- phpunit/phpunit: ^10.5|^11.0
This package is auto-updated.
Last update: 2024-09-22 09:54:10 UTC
README
此包使您能够通过Laravel轻松发送CMSMS消息。
内容
需求
- 注册在线短信网关账户
- 在账户设置中找到您的API密钥
安装
您可以通过composer安装此包
composer require laravel-notification-channels/cmsms
此包将通过Package auto-discovery自动注册到Laravel 5.5及以上版本。
手动安装
您可以为Laravel 5.4及以下版本安装服务提供者
// config/app.php 'providers' => [ ... NotificationChannels\Cmsms\CmsmsServiceProvider::class, ],
设置您的CMSMS账户
将您的CMSMS产品令牌和默认发起者(发送者的名称或号码)添加到您的 config/services.php
// config/services.php ... 'cmsms' => [ 'product_token' => env('CMSMS_PRODUCT_TOKEN'), 'originator' => env('CMSMS_ORIGINATOR'), ], ...
注意:发起者可以包含最多11个字母数字字符。
使用方法
现在您可以在通知中的 via()
方法中使用此通道
use NotificationChannels\Cmsms\CmsmsMessage; use Illuminate\Notifications\Notification; class VpsServerOrdered extends Notification { public function via($notifiable) { return ['cmsms']; } public function toCmsms($notifiable) { return CmsmsMessage::create("Your {$notifiable->service} was ordered!"); } }
为了使通知知道您针对哪个电话号码,将 routeNotificationForCmsms
方法添加到您的可通知模型中。
重要提示:CMCMS要求收件人的电话号码为国际格式。例如:0031612345678
public function routeNotificationForCmsms() { return '0031612345678'; }
可用的消息方法
body('')
:接受消息内容的字符串值。originator('')
:接受1到11个字符的字符串值,用作消息发送者名称。reference('')
:接受消息引用的字符串值。此信息将在状态报告中返回,以便您可以匹配消息及其状态。限制:1-32个字母数字字符。引用对演示账户无效。tariff()
:接受消息资费的整数值。单位是欧分。需要设置originator
为特定值。请联系CM获取此资费值。CM还必须手动启用此功能。multipart($minimum, $maximum)
:接受0到8的整数范围,允许多部分消息。有关更多信息,请参阅CM文档。
变更日志
有关最近更改的更多信息,请参阅变更日志。
测试
$ composer test
安全
如果您发现任何安全问题,请通过电子邮件michel@enflow.nl联系,而不是使用问题跟踪器。
贡献
有关详细信息,请参阅贡献。
致谢
特别感谢Peter Steenbergen,他是从MessageBird模板中获取的大部分内容的来源。
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。