zeauw / ssc-api-v2
此包已被废弃且不再维护。没有建议的替代包。
此包的最新版本(v1.0.0)没有提供许可信息。
SMS服务中心API v2客户端
v1.0.0
2017-04-06 16:22 UTC
Requires
- guzzlehttp/guzzle: ^6.2
This package is auto-updated.
Last update: 2020-02-10 12:38:55 UTC
README
此仓库包含SMS服务中心API v2的PHP开源客户端。
要求
- 注册免费SMS服务中心账户
- 在API部分获取您的access_token
- SMS服务中心API v2客户端对PHP的要求是 >= 5.5.0。
- Composer
安装
我们目前仅支持使用Composer安装API客户端。
- 下载composer
- 运行
composer require zeauw/ssc-api-v2
。
用法
设置对象的新实例。将access_token作为第一个参数传递
// Include composers autoloader include "vendor/autoload.php"; // Create the object $client = new \Zeauw\SSCAPIv2\Client("ENTER_YOUR_ACCESS_TOKEN_HERE");
获取当前信用额度
$credits = $client->getCredits(); var_dump($credits); // int
获取当前发送名称
$sendname = $client->getSendname(); var_dump($sendname); // string
获取已发送的消息
$history = $client->getHistory(); var_dump($history); // array
向单个收件人发送消息
$messageinfo = $client->send( "0612345678", // Single recipient "Enter message to send here" // Message to send ); var_dump($messageinfo); // array var_dump($messageinfo["messageid"]); // int
注意:确保将收件人定义为字符串,因为PHP可能会将数字视为整数。
向多个收件人发送消息(最多50个)
$messageinfo = $client->send( ["0612345678","0687654321"], // Array of recipients "Enter message to send here" // Message to send ); var_dump($messageinfo); // array
使用不同于存储的默认发送名称发送消息
$messageinfo = $client->send( "0612345678", // Recipient "Enter message to send here", // Message "NewSendname" // Sendname to use for this message only. ); var_dump($messageinfo); // array
设置新的默认发送名称
$is_set = $client->setSendname("NewSendname"); var_dump($is_set); // bool
测试模式
客户端支持测试模式,可以通过使用isTestmode()
方法来测试功能而不发送消息
$messageinfo = $client->isTestmode()->send( "0612345678", // Single recipient "Enter message to send here" // Message to send ); var_dump($messageinfo); // array var_dump($messageinfo["messageid"]); // int (random)
测试模式请求返回的messageid是一个随机数,因此不应存储。这是因为API服务器实际上没有处理消息。
错误处理
当请求出现问题时,客户端会抛出Exception
。在调用send()
方法时,客户端还可能会抛出CreditsException
。这只会发生在账户没有足够的信用来执行send()
方法时。
// Include composers autoloader include "vendor/autoload.php"; // Setup try block try { // Create the object $client = new \Zeauw\SSCAPIv2\Client("ENTER_YOUR_ACCESS_TOKEN_HERE"); // Send a message $messageinfo = $client->send( "0612345678", "Message to send" ); var_dump($messageinfo); // array } catch (\Zeauw\SSCAPIv2\Exceptions\CreditsException $e) { // The user does not have enought credits. var_dump($e->getMessage()); // Readable message var_dump($e->getRemainingCredits()); // int. Remaining credits within the users account. var_dump($e->getRequiredCredits()); // int. Required amount of credits for the last request. } catch (\Exception $e) { // An error occurred var_dump($e->getMessage()); // Readable message }
限流
SMS服务中心API(v2)的使用不受限制。为了防止欺诈和滥用,并确保服务器性能,对API的请求会被限流。您可以在5分钟内最多发起150次请求。
当达到限制时,API将响应一个429 请求过多的错误。