Laravel 5及以上版本的CMSMS通知通道

3.4.0 2024-03-22 08:49 UTC

This package is auto-updated.

Last update: 2024-09-22 09:54:10 UTC


README

Latest Version on Packagist run-tests Total Downloads

此包使您能够通过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)。有关更多信息,请参阅许可证文件