sykez/genusis-sms

Genusis Gensuite v10 API SMS Channel for Laravel.

v1.0.2 2021-07-12 05:31 UTC

This package is auto-updated.

Last update: 2024-09-13 15:02:57 UTC


README

Latest Version on Packagist Software License Total Downloads

此包通过 Gensuite API 使用 Laravel 通过 Genusis SMS 网关轻松发送通知。

内容

安装

通过 Composer 安装包

composer require sykez/genusis-sms

设置 Genusis SMS 服务

将服务配置添加到您的 config/services.php

'genusis-sms' => [
	'client_id' => env('GENUSIS_SMS_CLIENT_ID', null),
	'username' => env('GENUSIS_SMS_USERNAME', null),
	'private_key' => env('GENUSIS_SMS_PRIVATE_KEY', null),
	'url' => env('GENUSIS_SMS_URL', null),
	'debug_log' => env('GENUSIS_SMS_DEBUG_LOG', false),
],

将环境变量添加到您的 .env 并设置您的客户端 ID、用户名、私钥和 API URL。

GENUSIS_SMS_CLIENT_ID=
GENUSIS_SMS_USERNAME=
GENUSIS_SMS_PRIVATE_KEY=
GENUSIS_SMS_URL=

用法

现在您可以从通知发送 SMS

发送通知

use Sykez\GenusisSms\GenusisSmsChannel;
use Sykez\GenusisSms\GenusisSmsMessage;
use Illuminate\Notifications\Notification;

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

    public function toSms($notifiable)
    {
        return (new GenusisSmsMessage)->content("Hello there!");
    }
}

路由通知

您可以使用 to() 将通知路由到电话号码

public function toSms($notifiable)
{
	return (new GenusisSmsMessage)->content("Hello there!")->to(01234567891);
}

或者您可以在您的可通知模型中添加 routeNotificationForSms() 方法

public function routeNotificationForSms()
{
    return $this->phone_number;
}

您还可以进行即时通知

use Illuminate\Support\Facades\Notification;
Notification::route('sms', '01234567891')->notify(new App\Notifications\SendSms(['Hello again.']));

日志 & 调试

您可以在您的 .env 中设置 GENUSIS_SMS_DEBUG_LOG=true 以将所有请求和响应发送到您的 Laravel 日志

许可证

MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件