altiria / sms-php-client
Altiria短信PHP客户端
1.0.2
2022-03-25 08:44 UTC
Requires
- php: ^7.0.0
- ext-json: *
- guzzlehttp/guzzle: 6.5.5
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-28 15:29:03 UTC
README
Altiria,PHP短信发送客户端
Altiria SMS PHP是一个简化的Altiria短信API PHP客户端。
- 短信发送
- 简单
- 连接
- 交付确认
- 自定义发送者
- 信用查询
这个库使用了 composer 并符合 PSR-4 规范。
使用方法
需要有一个Altiria发送账户。如果您还没有一个,
要求
- php: ^7.0.0
- composer
安装
推荐通过Composer安装Altiria PHP客户端。您可以通过两种方式完成
通过命令行
composer require altiria/sms-php-client
编辑composer.json文件并更新项目
在这种情况下,将以下片段添加到composer.json文件中。
"require": { "altiria/sms-php-client": "1.0.2" }
接下来,通过以下命令行指令更新项目。
composer install
使用示例
短信发送
以下将描述该库如何用于短信发送的各种可能性。
基本示例
这是发送短信的最简单选项。
use \AltiriaSmsPhpClient\AltiriaClient; use \AltiriaSmsPhpClient\AltiriaModelTextMessage; use \AltiriaSmsPhpClient\Exception\GeneralAltiriaException; try { //Personaliza las credenciales de acceso $client = new AltiriaClient('user@mydomain.com', 'mypassword'); $textMessage = new AltiriaModelTextMessage('346XXXXXXXX', 'Mensaje de prueba'); $client-> sendSms($textMessage); echo '¡Mensaje enviado!'; } catch (GeneralAltiriaException $exception) { echo 'Mensaje no aceptado:'.$exception->getMessage(); }
带有自定义超时的基本示例
允许设置响应时间(以毫秒为单位)。如果超过时间则抛出 ConnectionException。默认响应时间为10秒,但可以在1到30秒之间调整。
use \AltiriaSmsPhpClient\AltiriaClient; use \AltiriaSmsPhpClient\AltiriaModelTextMessage; try { //Personaliza las credenciales de acceso $client = new AltiriaClient('user@mydomain.com', 'mypassword', false, 5000); $textMessage = new AltiriaModelTextMessage('346XXXXXXXX', 'Mensaje de prueba'); $client-> sendSms($textMessage); echo '¡Mensaje enviado!'; } catch (\AltiriaSmsPhpClient\Exception\AltiriaGwException $exception) { echo 'Mensaje no aceptado:'.$exception->getMessage(); echo 'Código de error: '.$exception->getStatus(); } catch (\AltiriaSmsPhpClient\Exception\JsonException $exception) { echo 'Error en la petición:'.$exception->getMessage(); } catch (\AltiriaSmsPhpClient\Exception\ConnectionException $exception) { if ($exception->getMessage().strpos('RESPONSE_TIMEOUT', 0) != -1) { echo 'Tiempo de respuesta agotado: '.$exception->getMessage(); } else { echo 'Tiempo de conexión agotado: '.$exception->getMessage(); } }
带有发送者的基本示例
这是添加发送者发送短信的最简单选项。在此示例中,演示了如何通过APIKEY进行认证,其中"XXXXXXXXXX"是参数 apiKey,"YYYYYYYYYY"是参数 apiSecret。
use \AltiriaSmsPhpClient\AltiriaClient; use \AltiriaSmsPhpClient\AltiriaModelTextMessage; try { //Personaliza las credenciales de acceso $client = new AltiriaClient('XXXXXXXXXX', 'YYYYYYYYYY', true); $textMessage = new AltiriaModelTextMessage('346XXXXXXXX', 'Mensaje de prueba', 'miRemitente'); $client-> sendSms($textMessage); echo '¡Mensaje enviado!'; } catch (\AltiriaSmsPhpClient\Exception\AltiriaGwException $exception) { echo 'Mensaje no aceptado:'.$exception->getMessage(); echo 'Código de error: '.$exception->getStatus(); } catch (\AltiriaSmsPhpClient\Exception\JsonException $exception) { echo 'Error en la petición:'.$exception->getMessage(); } catch (\AltiriaSmsPhpClient\Exception\ConnectionException $exception) { if ($exception->getMessage().strpos('RESPONSE_TIMEOUT', 0) != -1) { echo 'Tiempo de respuesta agotado: '.$exception->getMessage(); } else { echo 'Tiempo de conexión agotado: '.$exception->getMessage(); } }
使用所有参数的示例
展示了使用setter设置所有参数的示例。
use \AltiriaSmsPhpClient\AltiriaClient; use \AltiriaSmsPhpClient\AltiriaModelTextMessage; try { //Personaliza las credenciales de acceso $client = new AltiriaClient('user@mydomain.com', 'mypassword'); $client->setConnectTimeout(1000); $client->setTimeout(5000); $client->setDebug(true); $textMessage = new AltiriaModelTextMessage('346XXXXXXXX', 'Mensaje de prueba'); $textMessage->setSenderId('miRemitente'); $textMessage->setAck(true); $textMessage->setIdAck('idAck'); $textMessage->setConcat(true); $textMessage->setEncoding('unicode'); $textMessage->setCertDelivery(true); $client-> sendSms($textMessage); echo '¡Mensaje enviado!'; } catch (\AltiriaSmsPhpClient\Exception\AltiriaGwException $exception) { echo 'Mensaje no aceptado:'.$exception->getMessage(); echo 'Código de error: '.$exception->getStatus(); } catch (\AltiriaSmsPhpClient\Exception\JsonException $exception) { echo 'Error en la petición:'.$exception->getMessage(); } catch (\AltiriaSmsPhpClient\Exception\ConnectionException $exception) { if ($exception->getMessage().strpos('RESPONSE_TIMEOUT', 0) != -1) { echo 'Tiempo de respuesta agotado: '.$exception->getMessage(); } else { echo 'Tiempo de conexión agotado: '.$exception->getMessage(); } }
信用查询
查询Altiria账户中短信信用的示例。
基本示例
use \AltiriaSmsPhpClient\AltiriaClient; try { //Personaliza las credenciales de acceso $client = new AltiriaClient('user@mydomain.com', 'mypassword'); $credit = $client-> getCredit(); echo 'Crédito disponible: '.$credit; } catch (\AltiriaSmsPhpClient\Exception\AltiriaGwException $exception) { echo 'Solicitud no aceptada:'.$exception->getMessage(); echo 'Código de error: '.$exception->getStatus(); } catch (\AltiriaSmsPhpClient\Exception\JsonException $exception) { echo 'Error en la petición:'.$exception->getMessage(); } catch (\AltiriaSmsPhpClient\Exception\ConnectionException $exception) { if ($exception->getMessage().strpos('RESPONSE_TIMEOUT', 0) != -1) { echo 'Tiempo de respuesta agotado: '.$exception->getMessage(); } else { echo 'Tiempo de conexión agotado: '.$exception->getMessage(); } }
许可证
此库的许可证为MIT类型。有关更多信息,请参阅许可证文件。
帮助
我们使用GitHub问题部分来处理错误和评估新功能。如果您在集成过程中遇到任何问题,请通过电子邮件 soporte@altiria.com 联系我们。