airtimerewards / ar-connect-sdk
AR Connect 的 PHP SDK。
3.1.0
2022-01-19 12:39 UTC
Requires
- php: ^7.4 || ^8.0
- guzzlehttp/guzzle: ^6.0 || ^7.0
- moneyphp/money: ^3.0 || ^4.0
- psr/log: ^1.0 || ^2.0 || ^3.0
Requires (Dev)
- alexeyshockov/guzzle-psalm-plugin: ^0.3.1
- friendsofphp/php-cs-fixer: ^2.15
- phpunit/phpunit: ^9.5
- vimeo/psalm: ^4
- dev-main
- 3.1.0
- 3.0.0
- 2.1.0
- v2.0.0
- v1.1.0
- v1.1.0-rc.1
- v1.1.0-beta.2
- v1.1.0-beta.1
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- v1.0.0-rc.1
- dev-feature/psr-logger
- dev-feature/php-8
- dev-feature/github-actions
- dev-feature/guzzle-7
- dev-fix/tests
- dev-refactor/client-interface
- dev-refactor/ar-connect-client-interface
- dev-feature/eligibility-check
- dev-hotfix/nullable-pin
- dev-feature/set-pin-related-values-in-credit-json
This package is auto-updated.
Last update: 2024-09-21 16:41:35 UTC
README
AR Connect SDK
此包提供与 AR Connect 交互的客户端。
1. 要求
此 SDK 需要 PHP 7.1 或更高版本。此外,您必须注册 AR Connect 以使用 API。最后,您需要一个环境和该环境的 API 密钥。
2. 安装
建议使用 composer,并运行以下命令
$ composer require airtimerewards/ar-connect-sdk
3. 使用方法
AR Connect 客户端提供了与 AR Connect API 交互的方法。
3.1 实例化客户端
要实例化客户端,请使用工厂方法并传入您的环境 ID 和 API 密钥。
重要:API 密钥必须是针对已指定的环境的。如果它们不匹配,将发生错误。
<?php use AirtimeRewards\ARConnect\ARConnectClient; $client = ARConnectClient::createClient('api-key', 'environment-id', $logger);
3.2 查询数据以创建信用
在创建信用之前,您需要找到有关要应用的信用账户的一些信息:移动电话网络以及它是预付费(预付费)还是月度合约(后付费)。可以通过调用 getNetworks()
方法来实现。此方法接受一个可选的 MSISDN(带有国家代码前缀的国际标准移动电话号码)getNetworks('447700900000')
,如果传入,将仅返回适用于该移动账户的网络。
<?php use AirtimeRewards\ARConnect\ARConnectClient; $client = ARConnectClient::createClient('api-key', 'environment-id', $logger); $networks = $client->getNetworks(); // returns a collection of networks $filteredNetworks = $client->getNetworks('447700900000'); // returns a collection of networks for UK mobile number 07700 900 000
一旦选择了网络,您可以获取有关此网络支持哪些信用类型的详细信息。信用类型包含有关可用信用值的最小值、最大值和增量信息。
<?php use AirtimeRewards\ARConnect\ARConnectClient; $client = ARConnectClient::createClient('api-key', 'environment-id', $logger); $creditTypes = $client->getCreditTypesForNetwork($network);
现在已收集了应用信用所需的所有信息。
3.3 应用信用
可以通过调用 createCredit()
方法并传入以下信息来应用信用
- MSISDN
- 网络
- 订阅类型(《Credit::SUBSCRIPTION_TYPE_POSTPAID》或《Credit::SUBSCRIPTION_TYPE_PREPAID》)
- 信用的值(
Money\Money
实例,见 PHP Money) - 是否在信用应用后向账户发送短信
- 可选的唯一引用。强烈建议使用,因为它将防止信用意外多次应用。
<?php use AirtimeRewards\ARConnect\ARConnectClient; use AirtimeRewards\ARConnect\Credit; use Money\Money; use Money\Currency; $client = ARConnectClient::createClient('api-key', 'environment-id', $logger); $creditValue = new Money(1000, new Currency('GBP')); // £10 of credit $credit = $client->createCredit( '447700900000', $network, Credit::SUBSCRIPTION_TYPE_POSTPAID, $creditValue, true, 'client-reference' );
将返回一个 AirtimeRewards\ARConnect\Credit
实例。建议存储信用的 ID,以便将来用作引用和检索(例如,用于检查信用的最新状态)。