定制 oscar-team/spryngsms 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

oscar-team/spryngsms

最新稳定版本:1.0.3

Composer 安装命令:

composer require oscar-team/spryngsms

包简介

Spryng SMS Notification Channel for Laravel

README 文档

README

This repository provide the the laravel notification channel to send sms via Spryng sms.

Installtion

composer require oscar-team/spryngsms

You can also publish the config file with:

php artisan vendor:publish --tag=spryngsms-config

spryngsms.php You can find more info of config options here info https://docs.spryngsms.com/#9-simple-http-api

return [
    /*
    |----------------------------------------------------------------------
    | Authentication token
    |----------------------------------------------------------------------
    |
    | Here we need to define the token for api authentication
    |
    */
    'token' => env('SPRYNG_SMS_API_TOKEN'),

    /*
    |----------------------------------------------------------------------
    | From / Originator
    |----------------------------------------------------------------------
    |
    | The sender of the message. Can be alphanumeric string (max. 11 characters)
    | or phonenumber (max. 14 digits in E.164 format like 31612345678)
    |
    */
    'originator' => env('SPRYNG_SMS_FROM_NAME', 'Oscar'),

    /*
    |----------------------------------------------------------------------
    | Route
    |----------------------------------------------------------------------
    |
    | Your given route to send the message on. Can be a valid route
    | ID supplied by Spryng or the default business route.
    |
    */
    'route' => env('SPRYNG_SMS_ROUTE', 'business'),

    /*
    |----------------------------------------------------------------------
    | Route
    |----------------------------------------------------------------------
    |
    | Character encoding of the body. Value can be: plain, unicode or auto
    |
    */
    'encoding' => env('SPRYNG_SMS_ENCODING', 'auto'),

    /*
    |----------------------------------------------------------------------
    | Reference
    |----------------------------------------------------------------------
    |
    | A client reference.
    |
    */
    'reference' => env('SPRYNG_SMS_REFERENCE')
];

Usage?

You can use the channel in your via() method inside the notification:

use Oscar\Spryngsms\SpryngsmsChannel;
use Oscar\Spryngsms\SpryngsmsMessage;

class BookingNotification extends Notification
{
  public function via(object $notifiable): array
  {
      return [
        SpryngsmsMessage::class
      ];
  }

  public function toSpryngsms(mixed $notifiable): SpryngsmsMessage|string
  {
      return new SpryngsmsMessage($message, $recipients, $originator, $encoding, $route, $reference);
  }
}

Add a routeNotificationForSpryngsms method to your Notifiable model to return the phone number:

public function routeNotificationForSpryngsms(): string
{
    return $this->phone_number;
}

SpryngsmsMessage::class parameters

  • $message (required)
  • $recipients (optional)
  • $originator (optional)
  • $encoding (optional)
  • $reference (optional)

Tests

phpunit tests

License

The MIT License (MIT). Please see License File for more information.

统计信息

  • 总下载量: 4.18k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-03-02