全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 更多
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 智能硬件
流量服务

流量充值API(Charge)---PHP

更新时间:2018-01-04 17:38:46

流量直冲接口(Charge)

步骤 1 创建阿里云账号

为了访问语音服务,您需要有一个阿里云账号。如果没有,可首先按照如下步骤创建阿里云账号:

  1. 访问阿里云 官方网站,单击页面上的 免费注册 按钮。
  2. 按照屏幕提示完成注册流程并进行企业实名认证语音服务只支持企业实名认证用户使用。为了更好地使用阿里云服务,建议尽快完成实名认证,否则部分阿里云服务将无法使用。具体实名认证流程,请参考 这里

步骤 2 获取阿里云访问密钥

为了使用语音文本单呼API-JAVA SDK,您必须申请阿里云的访问密钥。

阿里云访问秘钥是阿里云为用户使用 API(非控制台)来访问其云资源设计的“安全口令”。您可以用它来签名 API 请求内容以通过服务端的安全验证。

该访问秘钥成对(AccessKeyId 与 AccessKeySecret)生成和使用。每个阿里云用户可以创建多对访问秘钥,且可随时启用(Active)、禁用(Inactive)或者删除已经生成的访问秘钥对。

您可以通过阿里云控制台的 秘钥管理页面 创建、管理所有的访问秘钥对,且保证它处于“启用”状态。由于访问秘钥是阿里云对 API 请求进行安全验证的关键因子,请妥善保管你的访问秘钥。如果某些秘钥对出现泄漏风险,建议及时删除该秘钥对并生成新的替代秘钥对。

步骤 3 流量充值整体流程及操作步骤

流量充值整体流程及操作步骤

参数说明

入参列表
参数名称 参数类型 必填与否 样例取值 参数说明
PhoneNumber String 必须 13010112022 充值手机号
Grade String 必须 50 充值档位(可以通过档位查询接口查询当前手机号支持的档位)
IsProvince Boolean 必须 false 是否分省,默认为false
Reason String 可选 活动积分兑换 充值原因备注
OutId String 必须 abcdefgh 外部流水扩展字段,流量服务中会根据OutId做幂等,防止对同一流水的多次充值请求
scope String 可选 0 取值有0和1两种情况,0的代表是全国流量,1代表是省内流量 ,不填默认为0
出参列表
出参名称 出参类型 样例取值 参数说明
RequestId String 8906582E-6722 请求ID
Code String OK 状态码-返回OK代表请求成功,其他错误码详见错误码列表
Message String 请求成功 状态码的描述

技术对接步骤

1:下载SDK工具包

SDK工具包中一共包含了2个类库,一个aliyun-php-sdk-core包,另外一个是alicom-dycdp-api包,将这两个包添加到工程类库依赖中。

SDK&DEMO[下载地址]

2: 编写样例程序
  1. // 代码节选,详见aliyun-dycdp-php-sdk/api_demo/CdpDemo.php
  2. ...
  3. class CdpDemo
  4. {
  5. ...
  6. /**
  7. * 流量充值
  8. *
  9. * @return stdClass
  10. * @throws ClientException
  11. */
  12. public static function charge() {
  13. $request = new ChargeRequest();
  14. //必填-需要充值的手机号
  15. $request->setPhoneNumber("13000000000");
  16. //必填-充值档位
  17. $request->setGrade("50");
  18. //选填-是否分省
  19. $request->setIsProvince("false");
  20. //选填-充值原因
  21. $request->setReason("活动充值送流量");
  22. //必填-充值流水号
  23. $request->setOutId("1234");
  24. //hint 此处可能会抛出异常,注意catch
  25. $response = static::getAcsClient()->getAcsResponse($request);
  26. return $response;
  27. }
  28. }
  29. $response = CdpDemo::charge();
  30. echo "流量充值(charge)接口返回的结果\n";
  31. print_r($response);

错误码列表

Code 描述
OK 请求成功
isp.RAM_PERMISSION_DENY RAM权限DENY
isv.OUT_OF_SERVICE 业务停机
isv.PRODUCT_UN_SUBSCRIPT 未开通云通信产品的阿里云客户
isv.OUT_OF_SERVICE 业务停机
isv.PRODUCT_UNSUBSCRIBE 产品未开通
isv.ACCOUNT_NOT_EXISTS 账户不存在
isv.ACCOUNT_ABNORMAL 账户异常
isv.VOICE_FILE_ILLEGAL 语音文件不合法
isv.DISPLAY_NUMBER_ILLEGAL 号显不合法
isv.INVALID_PARAMETERS 参数异常
isp.SYSTEM_ERROR 系统错误
isv.MOBILE_NUMBER_ILLEGAL 号码格式非法
isv.BUSINESS_LIMIT_CONTROL 触发流控
isp.NO_AVAILABLE_CHANNEL 无可用渠道
isv.USER_NOT_PRIVILEGE_PROVINCE 用户无分省调用权限
isp.USER_NOT_EXIST 用户不存在
isv.GRADE_ILLEGAL 不支持的充值档位
isv.OPERATOR_UNKNOWN 号码归属运营商不支持
isp.OPERATOR_SHUTDOWN 运营商临时封停
isv.OPERATOR_DOWNTIME 运营商月末维护
isp.FLOW_PAYMENT_ERROR 账户扣款失败
isv.RECORD_HAS_EXISTS 已存在该流水号的充值记录
isv.RECORD_NO_FIND 不存在对应流水号的充值记录
本文导读目录