dualse/smsc-ru

SmscRu 通知频道,适用于 Laravel 5.3。

dev-master 2024-05-26 14:36 UTC

This package is auto-updated.

Last update: 2024-09-26 15:25:50 UTC


README

Latest Version on Packagist Software License Build Status StyleCI SensioLabsInsight Quality Score Code Coverage Total Downloads

此包简化了使用 smsc.ru(又名 СМС–Центр)通过 Laravel 5.3+ 发送通知的过程。

内容

安装

使用 Composer 安装此包

composer require laravel-notification-channels/smsc-ru

如果你使用 Laravel 5.x,还需要指定版本约束

composer require laravel-notification-channels/smsc-ru -v 2.0.3

服务提供程序会自动加载。或者你也可以手动完成

// config/app.php
'providers' => [
    ...
    NotificationChannels\SmscRu\SmscRuServiceProvider::class,
],

配置 SmscRu 服务

将你的 SmscRu 登录、密钥(散列密码)和默认发送者名称(或电话号码)添加到你的 config/services.php

// config/services.php
...
'smscru' => [
    'login'  => env('SMSCRU_LOGIN'),
    'secret' => env('SMSCRU_SECRET'),
    'sender' => 'John_Doe',
    'extra'  => [
        // any other API parameters
        // 'tinyurl' => 1
    ],
],
...

如果你想使用除 smsc.ru 之外的其他主机,你必须设置带有尾斜杠的自定义主机。

// .env
...
SMSCRU_HOST=http://www1.smsc.kz/
...
// config/services.php
...
'smscru' => [
    ...
    'host' => env('SMSCRU_HOST'),
    ...
],
...

使用方法

你可以在通知的 via() 方法中使用该通道

use Illuminate\Notifications\Notification;
use NotificationChannels\SmscRu\SmscRuMessage;
use NotificationChannels\SmscRu\SmscRuChannel;

class AccountApproved extends Notification
{
    public function via($notifiable)
    {
        return [SmscRuChannel::class];
    }

    public function toSmscRu($notifiable)
    {
        return SmscRuMessage::create("Task #{$notifiable->id} is complete!");
    }
}

在你的通知模型中,确保包含一个 routeNotificationForSmscru() 方法,该方法返回一个电话号码或电话号码数组。

public function routeNotificationForSmscru()
{
    return $this->phone;
}

可用方法

from():设置发送者的名称或电话号码。

content():设置通知消息的内容。

sendAt():设置安排通知消息的时间。

更新日志

请参阅 CHANGELOG 了解最近更改的信息。

测试

$ composer test

安全性

如果你发现任何安全问题,请通过电子邮件 jhaoda@gmail.com 联系我们,而不是使用问题跟踪器。

贡献

请参阅 CONTRIBUTING 了解详情。

鸣谢

许可

MIT 许可证(MIT)。请参阅 许可文件 了解更多信息。