igorbunov / smsc-php-sdk
用于与 smsc.ru api 集成的 PHP SDK
1.0.4
2022-04-05 11:28 UTC
Requires
- php: ^7.1|^8.0
- guzzlehttp/guzzle: ^6.3|^7.0
README
smsc-php-sdk
用于与 sms中心 api 通信的 PHP SDK
注意
在此 sdk 中未实现所有消息发送功能
官方文档
https://smsc.ru/api/http/#menu
安装
composer require igorbunov/smsc-php-sdk
配置
require_once 'vendor/autoload.php';
入门指南
$api = new \igorbunov\Smsc\SmscJsonApi( new \igorbunov\Smsc\Config\Config('логин', 'пароль') );
检查余额
$result = $api->getBalance(): \igorbunov\Smsc\Response\Balance;
获取发送者名称(发送者 ID)
$result = $api->getSenderNames(): \igorbunov\Smsc\Response\Senders;
发送短信
// $phones - телефон или массив телефонов // $message - сообщение // $sender - имя отправителя (sender id) $result = $api->sendSms($phones, $message, $sender): \igorbunov\Smsc\Response\SendSmsResponse;
获取消息状态
$result = $api->getSmsStatus('id сообщения', 'номер телефона'): \igorbunov\Smsc\Status\SmsStatus;
发送电子邮件
// $emails - email или массив email'ов // $message - сообщение // $theme - тема // $sender - email отправителя $result = $api->sendEmail( $emails, $message, $theme, $sender ): \igorbunov\Smsc\Response\SendEmailResponse;
注册子账户
// $subLogin - логин субакаунта // $subPassword - пароль субакаунта (не допускаются простые пароли) // $subEmail - почта субакаунта // $subPhone - телефон субакаунта // $parentSender - имя отправителя родителя (sender id) (не обязательно) $result = $api->registerSubclient( $subLogin, $subPassword, $subEmail, $subPhone, $parentSender ): \igorbunov\Smsc\Response\NewSubclient;
更新子账户余额
$result = $api->updateSubclientBalance($subLogin, $balance): \igorbunov\Smsc\Response\UpdateBalance;
简单发送示例
use igorbunov\Smsc\SmscJsonApi; use igorbunov\Smsc\Config\Config; require_once 'vendor/autoload.php'; try { $api = new SmscJsonApi( new Config('логин', 'пароль') ); $sender = 'отправитель'; $phones = '380123456789'; $message = 'test'; $result = $api->sendSms($phones, $message, $sender); echo "id сообщения: {$result->id}, стоимость: {$result->cost}"; echo '<pre>'; var_dump($result); echo '</pre>'; } catch (\Exception $e) { echo '<pre>'; var_dump('Ошибка', $e->getMessage()); echo '</pre>'; }
对于贡献者
运行所有测试
make all
或连接到终端
make exec
或使用内置 PHP 服务器 https://:8080
# start server on 8080 port make serve # custom port 8081 make serve PORT=8081
默认 PHP 版本是 8.1。使用 PHP_VERSION= 使用自定义版本。
make all PHP_VERSION=8.1 # run both make all PHP_VERSION=7.4 && make all PHP_VERSION=8.1
所有命令
# security check make security # composer install make install # composer install with --no-dev make install-no-dev # check code style make style # run static analyze tools make static-analyze # run unit tests make unit
不使用 Docker
#validate composer json
composer check-composer
#static analyzes and codestyle
composer static
#run unit tests
composer unit-tests
#run all tests
composer all-tests