呼叫可用性查询接口

调用QueryCallStatus进行呼叫可用性查询,通过本文您可以了解调用呼叫可用性查询接口的操作流程。

前提条件

  1. 注册阿里云账号并完成企业实名认证。具体操作请参见注册阿里云账号企业实名认证

  2. 获取阿里云访问密钥。具体操作,请参见获取AccessKey

下载对应的SDK和DEMO样例程序编写代码

请到SDK&DEMO下载页面获取相应的SDK和DEMO程序,参照代码样例进行接口开发和调试。

参数

入参列表

参数名称

参数类型

必填与否

样例取值

参数说明

PoolKey

String

必须

FC12345

号池Key。

SubsId

String

必须

12345

创建绑定关系API接口所返回的订购关系ID。

callNo

String

可选

170****0000

主叫号码。

出参列表

出参名称

出参类型

样例取值

参数说明

RequestId

String

8906582E-6722

请求ID。

Code

String

OK

状态码。返回OK代表请求成功,其他错误码详见错误码列表。

Message

String

请求成功

状态码的描述。

SecretCallStatusDTO

Object

结构体

结构体包含字段说明:

  • status:当前的呼叫状态。取值:

    • status=1,表示呼叫正常。

    • status=2,表示当前绑定呼叫异常平台重新分配了一个临时可用的X号码用以接续呼叫。

    • status=3,表示当前绑定呼叫异常,且分配新的临时号码失败。

    • status=4,代表当前绑定关系已经过期。

  • calledNo。

    • status=1时,calledNo为原来的X号码。

    • status=2时,calledNo为新分配的临时X号码。

    • status=3时为null,表示用户需要自行降级到真实主号。

技术对接步骤

  1. 下载SDK工具包。

    • SDK工具包中一共包含了2个类库,一个aliyun-java-sdk-core包,另外一个是alicom-dypls-api包,将这两个包执行mvn package命令或者mvn deploy命令打包出相应的jar包,添加到工程类库中依赖使用。

    • SDK&DEMO下载地址,请参见SDK&DEMO下载

  2. 编写样例程序。

    //设置超时时间-可自行调整
    System.setProperty("sun.net.client.defaultConnectTimeout", "10000");
    System.setProperty("sun.net.client.defaultReadTimeout", "10000");
    //初始化ascClient需要的几个参数
    final String product = "Dyplsapi";//隐私号码产品名称(产品名称固定,无需修改)
    final String domain = "dyplsapi.aliyuncs.com";//隐私号码产品域名(产品域名固定,无需修改)
    //替换成你的AK
    final String accessKeyId = "yourAccessKeyId";//你的accessKeyId,参考本文档步骤2
    final String accessKeySecret = "yourAccessKeySecret";//你的accessKeySecret,参考本文档步骤2
    //初始化ascClient,暂时不支持多region
    IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId,
    accessKeySecret);
    DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);
    IAcsClient acsClient = new DefaultAcsClient(profile);
    //组装请求对象
    QueryCallStatusRequest request = new QueryCallStatusRequest();
    request.setPoolKey(poolKey);
    request.setSubsId(subsId);
    QueryCallStatusResponse response = acsClient.getAcsResponse(request);
     if(response.getCode() != null && response.getCode().equals("OK")) {
              //请求成功
      }
                            

错误码列表

Code

描述

OK

请求成功。

isp.RAM_PERMISSION_DENY

RAM权限DENY。

isv.OUT_OF_SERVICE

业务停机。

isv.PRODUCT_UN_SUBSCRIPT

未开通云通信产品的阿里云客户。

isv.PRODUCT_UNSUBSCRIBE

产品未开通。

isv.ACCOUNT_NOT_EXISTS

账户不存在。

isv.ACCOUNT_ABNORMAL

账户异常。

isp.SYSTEM_ERROR

系统错误。

isv.PARTNER_NOT_EXIST

未知合作伙伴。

isv.NO_NOT_EXIST

号码不存在。

isv.ILLEGAL_ARGUMENT

参数非法。

isp.DAO_EXCEPTION

数据库异常。

isv.NO_AVAILABLE_NUMBER

无可用号码。

isp.VENDOR_UNAVAILABLE

运营商降级。

isv.FLOW_LIMIT

业务流控。

isv.PARTNER_IS_CLOSED

partner被关停。

isv.FORBIDDEN_ACTION

无权操作。

isv.NO_USED_BY_OTHERS

码被其他业务方占用。

isv.EXPIRE_DATE_ILLEGAL

过期时间非法。

isv.MOBILE_NUMBER_ILLEGAL

号码格式非法。

isv.BIND_CONFLICT

绑定冲突。