ghasedaksms / php
用于PHP编程中使用ghasedaksms API服务的软件包
v1.0.4
2024-08-11 06:15 UTC
Requires
- php: >=8.2
- ext-curl: *
- ext-json: *
This package is not auto-updated.
Last update: 2024-09-24 07:55:53 UTC
README
Ghasedak PHP SDK
一个易于使用的SDK,用于在您的PHP项目中实现Ghasedak SMS API。
探索文档
网络服务文档 · REST API . 报告错误 · 请求功能
目录
安装
最简单的安装方法是通过使用Composer
composer require ghasedaksms/php
Composer是一个PHP依赖管理器,它允许您声明项目所依赖的库,并将为您管理(安装/更新)它们。如果您不熟悉Composer,您可以通过getcomposer.org阅读其文档并下载。
或者您可以从这里下载Ghasedak SDK并将其解压到您的项目中,然后按照下面的其他说明进行操作。包中还有一个Example
文件夹,您可以使用它来了解流程。
用法
要使用API,您需要一个API密钥。为此,您应该有一个Ghasedak账户。注册并获取您的API密钥。
然后,通过调用autoload.php文件来加载所有类和依赖关系。
require __DIR__ . '/vendor/autoload.php';
使用您的API密钥从Ghasedak类创建一个实例
$ghasedaksms = new GhasedaksmsApi('your_api_key');
别忘了将your_api_key
替换为您从Ghasedak账户获得的密钥。
发送单个短信
$sendDate = new DateTimeImmutable('now'); $lineNumber = '3000****'; $receptor = '0912*******'; $message = 'test'; try { $response = $ghasedaksms->sendSingle(new SingleMessageDTO( sendDate: $sendDate, lineNumber: $lineNumber, receptor: $receptor, message: $message )); var_dump($response); } catch (Exceptions\GhasedakSMSException $e) { var_dump($e->getMessage()); }
发送批量短信
$sendDate = new DateTimeImmutable('now'); $lineNumber = '3000****'; $receptor = ['0912*******','0919*******']; $message = 'test'; try { $response = $ghasedaksms->sendBulk(new BulkMessageDTO( sendDate: $sendDate, lineNumber: $lineNumber, receptors: $receptor, message: $message )); var_dump($response); } catch (Exceptions\GhasedakSMSException $e) { var_dump($e->getMessage()); }
对对发送
$sendDate = new DateTimeImmutable('now'); $lineNumber = '3000****'; $receptor1 = '0912*******'; $receptor2 = '0912*******'; $message1 = 'test1'; $message2 = 'test2'; try { $response = $ghasedaksms->sendPairToPair(new PairToPairMessageDTO( [ new SingleMessageDTO( sendDate: $sendDate, lineNumber: $lineNumber, receptor: $receptor1, message: $message1 ), new SingleMessageDTO( sendDate: $sendDate, lineNumber: $lineNumber, receptor: $receptor2, message: $message2 ) ] )); var_dump($response); } catch (Exceptions\GhasedakSMSException $e) { var_dump($e->getMessage()); }
发送OTP
$sendDate = new DateTimeImmutable('now'); try { $response = $ghasedaksms->sendOtp(new OtpMessageDTO( sendDate: $sendDate, receptors: [ new ReceptorDTO( mobile: '0912*******', clientReferenceId: '1' ) ], templateName: 'newOtp', inputs: [ new InputDTO( param: 'Code', value: 'value' ), new InputDTO( param: 'Name', value: 'value' ) ] )); var_dump($response); } catch (Exceptions\GhasedakSMSException $e) { var_dump($e->getMessage()); }
带有参数的OTP发送
$sendDate = new DateTimeImmutable('now'); try { $response = $ghasedaksms->sendOtpWithParams(new OtpMessageWithParamsDTO( sendDate: $sendDate, receptors: [ new ReceptorDTO( mobile: '0912*******', clientReferenceId: '1' ) ], templateName: 'newOtp', param1: 'param1', param2: 'param2' )); var_dump($response); } catch (Exceptions\GhasedakSMSException $e) { var_dump($e->getMessage()); }
检查短信状态
try { $response = $ghasedaksms->checkSmsStatus(new CheckSmsStatusDTO( ids: ['246*****'], type: 1 )); var_dump($response); } catch (Exceptions\GhasedakSMSException $e) { var_dump($e->getMessage()); }
获取账户信息
try { $response = $ghasedaksms->getAccountInformation(); var_dump($response); } catch (Exceptions\GhasedakSMSException $e) { var_dump($e->getMessage()); }
获取接收到的短信
try { $response = $ghasedaksms->getReceivedSMSes( new GetReceivedSMSesDTO( lineNumber: '3000****' ) ); var_dump($response); } catch (Exceptions\GhasedakSMSException $e) { var_dump($e->getMessage()); }
获取接收短信分页
$startDate = new DateTimeImmutable('now'); $endDate = $startDate->modify('+3 days'); try { $response = $ghasedaksms->getReceivedSMSesPaging( new GetReceivedSMSesPagingDTO( lineNumber: '3000****', startDate: $startDate, endDate: $endDate, pageIndex: 0, pageSize: 10 ) ); var_dump($response); } catch (Exceptions\GhasedakSMSException $e) { var_dump($e->getMessage()); }
获取OTP模板参数
try { $response = $ghasedaksms->getOtpTemplateParameters( new GetOtpTemplateParametersDTO( templateName: 'newOtp' ) ); var_dump($response); } catch (Exceptions\GhasedakSMSException $e) { var_dump($e->getMessage()); }
许可
在MIT许可条款下自由分发。