muravinets/yii2-smsc

Smsc.ru 为 Yii 2 的包装器

安装次数: 3,822

依赖者: 0

建议者: 0

安全性: 0

星星: 0

关注者: 2

分支: 8

类型:yii2-extension

dev-master 2018-05-11 13:02 UTC

This package is not auto-updated.

Last update: 2024-09-26 16:37:54 UTC


README

Smsc.ru 为 Yii 2 的包装器

安装

安装此扩展的首选方式是通过 composer

运行以下命令之一

php composer.phar require --prefer-dist muravinets/yii2-smsc "*"

或者在您的 composer.json 文件的 require 部分添加

"muravinets/yii2-smsc": "*"

使用方法

要使用发送者,您应该在应用程序配置中进行配置,如下所示

'components' => [
	...
	'sms' => [
        'class'    => 'muravinets\smsc\Smsc',
        'login'     => '',  // login
        'password'   => '', // plain password or lowercase password MD5-hash
        'post' => true, // use http POST method
        'https' => true,    // use secure HTTPS connection
        'charset' => 'utf-8',   // charset: windows-1251, koi8-r or utf-8 (default)
        'debug' => false,    // debug mode
    ],
	...
],

示例

普通消息

list($sms_id, $sms_cnt, $cost, $balance)
    = Yii::$app->sms->send_sms('79999999999', 'Ваш код для получения скидки');
/*
    возвращает массив (<id>, <количество sms>, <стоимость>, <баланс>) в случае успешной отправки
    либо массив (<id>, -<код ошибки>) в случае ошибки
*/

检查发送结果

$sms = Yii::$app->sms;
$result = $sms->send_sms('79999999999', 'Ваш код для получения скидки');
if (!$sms->isSuccess($result)) {
    echo $sms->getError($result);
    die();
}

向一组号码发送

// в первом параметре передаем список телефонов через запятую или точку с запятой
list($sms_id, $sms_cnt, $cost, $balance)
    = Yii::$app->sms->send_sms('79999999999,79999999990', 'Ваш код для получения скидки');

将消息转换为转写

// в третьем параметре передаем 1
list($sms_id, $sms_cnt, $cost, $balance)
    = Yii::$app->sms->send_sms('79999999999', 'Вы сегодня неотразимы', 1);

以 Ivan 的名义发送,并带有延迟投递时间

// будет доставлено абоненту 01.01.2012 г. в 00:00
list($sms_id, $sms_cnt, $cost, $balance)
    = Yii::$app->sms->send_sms('79999999999', 'Вы сегодня неотразимы', 0, '0101120000', 0, 0, 'Ivan');

检查 SMS 交付状态

list($status, $time) = Yii::$app->sms->get_status($sms_id, '79999999999');
// возвращает массив [ <статус>, <время изменения>, <код ошибки доставки> ]

检查余额状态

$balance = Yii::$app->sms->get_balance();
// возвращает баланс в виде строки или false в случае ошибки

检查 SMS 成本

list($cost, $cnt)
    = Yii::$app->sms->get_sms_cost('79999999999', 'Вы сегодня неотразимы');
// возвращает массив [ <стоимость>, <количество sms> ]