kheme / laravel-supertext-nigeria
Laravel包,用于SuperText Nigeria的短信API
Requires
- php: >=5.3.0
This package is auto-updated.
Last update: 2020-12-03 05:52:48 UTC
README
弃用
由于现在这里有一个框架无关的PHP版本,因此该项目目前已被弃用并归档:PHP包装器用于SuperText Nigeria短信网关
简介
这是一个简单的Laravel包装器,用于SuperText Nigeria的短信API网关。
安装
使用Composer
composer require kheme/laravel-supertext-nigeria
Laravel 5.5或更高版本上的安装
如果你使用的是Laravel 5.5或更高版本,则该包将自动注册supertext提供者和外观。
Laravel 5.4及以下版本上的安装
对于Laravel 5.4及以下版本,将Kheme\SuperTextNg\SuperTextNgServiceProvider添加到你的config/app.php文件中的providers列表中
'providers' => [ // Other service providers... Kheme\SuperTextNg\SuperTextNgServiceProvider::class, ],
如果你想使用外观接口,可以在需要时使用外观类
use Kheme\SuperTextNg\Facade\SMS;
或者按照以下方式添加到你的config/app.php文件中的别名列表中
'aliases' => [ ... 'SuperTextNg' => Kheme\SuperTextNg\Facade\SMS::class, ],
Lumen上的安装
Laravel SuperTextNg也与Lumen兼容!你需要手动做一些工作来使其运行。首先,使用Composer安装该包
composer require kheme/laravel-supertext-nigeria
接下来,我们需要告诉Lumen我们的库存在。更新bootstrap/app.php并按照以下方式注册SuperTextNgServiceProvider
$app->register(Kheme\SuperTextNg\SuperTextNgServiceProvider::class);
此时,在.env文件中设置SUPERTEXTNG_USERNAME、SUPERTEXTNG_PASSWORD、SUPERTEXTNG_SENDER和SUPERTEXTNG_IGNORE_DND,它应该对你有效。
配置
运行artisan vendor:publish将分发配置文件复制到你的应用配置目录。
php artisan vendor:publish --provider="Kheme\SuperTextNG\SuperTextNgServiceProvider"
Lumen上的配置
不幸的是,Lumen不支持发布文件,因此你需要自己创建配置文件。首先,创建配置目录(如果不存在),然后将配置文件从包中复制到你的项目中。在你的项目根目录中,在终端运行以下命令
mkdir config cp vendor/kheme/laravel-supertext-nigeria/config/supertextng.php config/supertextng.php
使用你的SuperText Nigeria凭据和设置更新config/supertextng.php。或者,你可以更新你的.env文件,将相应的值更新如下
SUPERTEXTNG_USERNAME=(your supertextng.com username)
SUPERTEXTNG_PASSWORD=(your supertextng.com password)
SUPERTEXTNG_SENDER=(you SMS sender ID)
SUPERTEXTNG_IGNORE_DND=('yes' or 'no' indicating whether to send to do-not-disturb numbers)
最后,将$app->configure('supertextng');添加到你的bootstrap/app.php中,在注册服务提供者之前某个位置。
用法
在使用之前不要忘记导入外观
use Kheme\SuperTextNg\Facades\SMS;
发送给单个收件人
SMS::from('Kheme') ->to('2348153332428') ->message('Using the facade to send a message.') ->send();
如果成功,这将返回true,否则将抛出异常。
向多个收件人发送
您可以通过在调用中包含多个 to() 来向多个收件人发送短信
SMS::from('Kheme') ->to('2348153332428') ->to('2348056511193') ->message('Using the facade to send a message.') ->send();
或者,通过向单个 to() 提供电话号码数组
SMS::from('Kheme') ->to( [ '2348153332428', '2348056512393', ] ), ->message('Using the facade to send a message.') ->send();
向已启用DND的电话号码发送
要向已启用“请勿打扰”(DND)的电话号码发送短信,请在调用中包含 ignoreDND()
SMS::from('Kheme') ->to('2348153332428') ->message('Using the facade to send a message.') ->ignoreDND() ->send();
发送后返回单元余额
如果您希望在发送后返回账户余额,请在调用中包含 returnBalance()
SMS::from('Kheme') ->to('2348153332428') ->message('Using the facade to send a message.') ->returnBalance() ->send();
返回发送所使用的单元数量
如果您希望在发送后返回所使用的单元总数,请在调用中包含 returnUnitsUsed()
SMS::from('Kheme') ->to('2348153332428') ->message('Using the facade to send a message.') ->returnUnitsUsed() ->send();
组合选项
上述方法选项,除下面的 balance() 外,可以像以下示例一样组合
SMS::from('Kheme') ->to('2348153332428') ->message('Using the facade to send a message.') ->returnBalance() ->returnUnitsUsed() ->ignoreDND() ->send();
检查账户余额
要检查SuperText Nigeria的信用余额,只需调用 balance()
return SMS::balance();
错误
如果发生错误,调用将返回以下错误
左侧的数字是SuperText Nigeria的相应错误代码,但不会包含在错误响应中
- 100: 缺少或拼写错误的一个或多个必需的URL参数
- 101: 用户名是空的
- 102: 密码是空的
- 103: 目的地是空的
- 104: 消息是空的
- 105: 发件人是空的
- 200: 用户名或密码错误
- 201: 账户尚未激活
- 202: 非活动账户
- 300: 信用不足
- 400: 发送失败(未扣除信用)