mohamadtsn / kavenegar-laravel
laravel 4 和 5 的 kavenegar 集成
Requires
This package is auto-updated.
Last update: 2024-09-17 18:38:16 UTC
README
支持的 Laravel 版本
- V.4
- V.5
- V.6
- V.7
- V.8
- V.9
- V.10
我们强烈推荐您始终使用最新版本的 Laravel
安装
步骤 1 - 安装包
- 方法 1:您可以直接在项目中使用 Composer 安装 kavenegar/laravel
composer require kavenegar/laravel
- 方法 2:将以下行添加到您的项目中的 Composer.json 文件
"kavenegar/php": "*"
然后运行以下命令使用 composer 下载扩展
$ composer update
步骤 2
转到 config/app.php 并将此行添加到 providers 数组的末尾
Kavenegar\Laravel\ServiceProvider::class,
因此,数组应该是这样的
'providers' => [ /* * Laravel Framework Service Providers... */ . . . Kavenegar\Laravel\ServiceProvider::class ]
然后在 config/app.php 中,将此行添加到 aliases 数组的末尾
'Kavenegar' => Kavenegar\Laravel\Facade::class,
步骤 3 - 发布
在您的项目目录中运行此命令
php artisan vendor:publish
在出现的消息中,找到 Kavenegar 的编号,输入相关编号然后按 Enter。例如,在下面的情况下,您必须输入 9 然后按 Enter
Which provider or tag files would you like to publish?: [0 ] Publish files from all providers and tags listed below [1 ] Provider: Facade\Ignition\IgnitionServiceProvider [2 ] Provider: Fideloper\Proxy\TrustedProxyServiceProvider [3 ] Provider: Fruitcake\Cors\CorsServiceProvider [4 ] Provider: Illuminate\Foundation\Providers\FoundationServiceProvider [5 ] Provider: Illuminate\Mail\MailServiceProvider [6 ] Provider: Illuminate\Notifications\NotificationServiceProvider [7 ] Provider: Illuminate\Pagination\PaginationServiceProvider **_ [8 ] Provider: Kavenegar\Laravel\ServiceProviderLaravel9_** . . .
步骤 4 - Api-Key
现在您必须在项目中定义您的 API 密钥。为此,转到 config/kavenegar.php,然后在代码中放入您的 API 密钥
<?php
return [
'apikey' => ' ',
];
设置完成
用法
您可以在任何地方使用此包。
- 首先使用类
use Kavenegar;
然后使用此模式发送短信
try{ $sender = "10004346"; //This is the Sender number $message = "خدمات پیام کوتاه کاوه نگار"; //The body of SMS $receptor = array("09361234567","09191234567"); //Receptors numbers $result = Kavenegar::Send($sender,$receptor,$message); if($result){ foreach($result as $r){ echo "messageid = $r->messageid"; echo "message = $r->message"; echo "status = $r->status"; echo "statustext = $r->statustext"; echo "sender = $r->sender"; echo "receptor = $r->receptor"; echo "date = $r->date"; echo "cost = $r->cost"; } } } catch(\Kavenegar\Exceptions\ApiException $e){ // در صورتی که خروجی وب سرویس 200 نباشد این خطا رخ می دهد echo $e->errorMessage(); } catch(\Kavenegar\Exceptions\HttpException $e){ // در زمانی که مشکلی در برقرای ارتباط با وب سرویس وجود داشته باشد این خطا رخ می دهد echo $e->errorMessage(); }
使用此模式发送验证查找短信
try{ $receptor = "09123456789"; $token = "123"; $token2 = "456"; $token3 = "789"; $template="verify"; //Send null for tokens not defined in the template //Pass token10 and token20 as parameter 6th and 7th $result = Kavenegar::VerifyLookup($receptor, $token, $token2, $token3, $template, $type = null); if($result){ foreach($result as $r){ echo "messageid = $r->messageid"; echo "message = $r->message"; echo "status = $r->status"; echo "statustext = $r->statustext"; echo "sender = $r->sender"; echo "receptor = $r->receptor"; echo "date = $r->date"; echo "cost = $r->cost"; } } } catch(\Kavenegar\Exceptions\ApiException $e){ // در صورتی که خروجی وب سرویس 200 نباشد این خطا رخ می دهد echo $e->errorMessage(); } catch(\Kavenegar\Exceptions\HttpException $e){ // در زمانی که مشکلی در برقرای ارتباط با وب سرویس وجود داشته باشد این خطا رخ می دهد echo $e->errorMessage(); }
您可以在 KaveNegar 网站上找到所有 错误处理、API 参数 和 用法方法。
在通知中使用
您还可以为您的通知使用 KavengarChannel
创建您的通知
php artisan make:notification InvoicePaid
从 KavenegarBaseNotification 扩展您的通知
class InvoicePaid extends KavenegarBaseNotification { }
重写 toKavenegar 方法
class InvoicePaid extends KavenegarBaseNotification { public function __construct(Invoice $invoice) { $this->invoice = $invoice; } public function toKavenegar($notifiable) { return (new KavenegarMessage("فاکتور شما به شماره $invoice->id پرداخت شد."))->from('10004346'); } }
您应该在模型中添加 Notifiable 特性和 routeNotificationForKavenegar 方法
class User extends Authenticatable { use Notifiable; public function routeNotificationForKavenegar($driver, $notification = null) { return $this->mobile; } }
** 注意:如果您在可通知模型中未添加 routeNotificationForKavenegar,则应在通知中设置您的接收者: **
class InvoicePaid extends KavenegarBaseNotification { public function toKavenegar($notifiable) { return (new KavenegarMessage('فاکتور شما به شماره ۱۲۳۴ پرداخت شد.'))->from('10004346')->to('092100000'); } }
要发送验证查找消息,您应使用 verifyLookup 方法设置方法名称和令牌
class InvoicePaid extends KavenegarBaseNotification { public function toKavenegar($notifiable) { return (new KavenegarMessage()) ->verifyLookup('verify_first',['token1','token2']); } }
贡献
欢迎提交错误修复、文档和增强功能!请通过 support@kavenegar.com 通知我们
## 指南介绍 KaveNegar 服务
KaveNegar 是一个易于使用的短信和语音呼叫的 Web 服务。
创建账户
如果您尚未加入 KaveNegar Web 服务,您可以通过 注册链接 注册并获取用于测试 API 的测试账户。
文档
要查看完整的文档信息,请访问 短信 Web 服务 页面或 Web 服务文档 页面。
波斯语指南
如果您想阅读 KaveNegar SDK 的波斯语指南,请访问 发送短信代码 页面。
更多信息
欲了解更多信息,请访问Kavenegar短信服务介绍页面。
如果您在使用Kavenegar服务套件时遇到问题或有任何建议,请通过发送Pull Request或发送电子邮件至support@kavenegar.com与我们联系。