matperez / yii2-sms-sender
Yii2 SMS 发送器
1.3.0
2017-02-04 16:21 UTC
Requires
- php: >= 5.5.0
- guzzlehttp/guzzle: ^6.2
- yiisoft/yii2: ~2.0.4
Requires (Dev)
- mockery/mockery: ^0.9.5
- phpunit/phpunit: ^5.5
- satooshi/php-coveralls: ^1.0
README
Yii2 SMS 发送器
安装
安装此扩展的首选方式是通过 composer.
您可以选择运行
php composer.phar require --prefer-dist matperez/yii2-sms-sender
或者在您的 composer.json 文件的 require 部分添加
"matperez/yii2-sms-sender": "*"
。
开发环境
'components' = [
'sms' => [
'viewPath' => '@app/sms',
'class' => \matperez\yii2smssender\components\Sender::class,
'transportConfig' => [
'class' => \matperez\yii2smssender\transports\FileTransport::class,
],
],
],
生产环境
'components' = [
'sms' => [
'viewPath' => '@app/sms',
'class' => \matperez\yii2smssender\components\Sender::class,
'transportConfig' => [
'class' => \matperez\yii2smssender\transports\IntegrationApiTransport::class,
'login' => 'login',
'password' => 'password',
],
],
],
在启动文件中放置此内容
\Yii::$container->set(\GuzzleHttp\ClientInterface::class, function() {
return new \GuzzleHttp\Client();
});
使用方法
编写消息
消息可以由模板生成。模板名称可以是相对路径,也可以是视图的完整路径。Yii 别名也是可接受的。
$message = Yii::$app->sms->compose('template_name', $params);
$message = Yii::$app->sms->compose('@app/sms/template_name', $params);
如果没有提供视图名称,也可以编写一个空消息
$message = Yii::$app->sms->compose();
中间件
在发送之前可以预处理消息。例如记录或修改其内容。中间件应设置为可调用的数组。
'components' = [
'sms' => [
'class' => \matperez\yii2smssender\components\Sender::class,
'middleware' => [
function(\matperez\yii2smssender\interfaces\IMessage $message) {
$message->setMessage('new message content');
}
]
],
],
发送消息
$message = Yii::$app->sms->compose('some-view', $params);
$message->setTo('1234345456');
$message->setFrom('sender');
$message->send();
余额检查
if (Yii::$app->sms->canFetchBalance()) {
$balance = Yii::$app->sms->getBalance();
}